Skip to content

somozadev/Graphics

Repository files navigation

Somine Engine 🎮🚀


Somine Engine is a lightweight renderer engine built using OpenGL and C++, designed to provide hands-on experience in real-time graphics programming. This project is a part of my learning journey with OpenGL, focusing on creating a flexible and performant engine for rendering 3D graphics. Once the renderer is in a good state, will mutate into a game engine.

🛠 Features


Real-Time 3D Rendering: Built on top of OpenGL for high-performance graphics. Custom Shader Support: Load and manage custom vertex, fragment, and geometry shaders. Lighting & Shadows: Supports directional, point, and spotlights, currenty implementing shadows. Model Loading: Uses Assimp for importing models in various formats (e.g., .obj, .fbx). Camera System: Easy-to-use camera controls (FPS & free-look modes). Materials & Textures: Supports diffuse, specular, and normal mapping.

🚀 Getting Started


Prerequisites
C++17 or higher
OpenGL 3.3
GLFW & GLAD for window management and OpenGL functions
Assimp for model loading
CMake for project building


Installation
git clone https://github.com/somozadev/Graphics.git
cd Somine Engine/Somine/Somine.sln


🎮 Controls


WASD: Move camera
Mouse 2: Look around


🖼 TODO List


Implement deferred rendering
Mutate from renderer to game engine
Implement particle systems

📄 License

This project is licensed under the MIT License

About

A lightweight renderer engine built using OpenGL and C++

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published