
Flag Engine is a high-performance 3D rendering engine built from the ground up using C++ and OpenGL 4.x. This project focuses on implementing a modern, physically-based graphics pipeline and providing a robust testing ground for technical art and shader development.
- Metallic/Roughness Workflow: Implements the Cook-Torrance BRDF for realistic material interaction.
- Lighting: Supports dynamic Directional and Point lights with real-time intensity and color modulation.
- Shadows: Cascaded Shadow Mapping (CSM) for optimized high-resolution shadows across large view distances.
- Procedural Dissolve: An alpha-discard shader with dynamic emissive borders, driven by noise-map sampling.
- Tech Art Integration: Ability to hot-swap shaders and manipulate material properties in real-time.
- Vertex Attribute Layouts: Optimized buffer management for high-speed mesh data transfer to the GPU.
- ImGui Debug Suite: Real-time GUI for tweaking light positions, shader parameters, and engine performance metrics.
- Modular Asset Loading: Clean abstraction for loading OBJ/FBX models with associated PBR texture maps.
- Language: C++17
- API: OpenGL 4.x (Glad/GLFW)
- Math: GLM
- UI: Dear ImGui
- Models/Assets: Blender, Photoshop
(Insert your screenshots here)
This demo showcases the discard logic and the emissive edge calculation.
Showcasing accurate reflections and light distribution on hard-surface models.
- Implement Forward+ Lighting
- Add SSAO (Screen Space Ambient Occlusion)
- Integration of a custom Physics Solver
Developed by a 16-year-old Technical Artist & Engine Developer passionate about graphics programming.