/GLEngine

C++ Game engine made with OpenGL

Primary LanguageC++GNU General Public License v3.0GPL-3.0

GLEngine

This is and abandonned project | don't use it for game development

GLEngine was my first C++ project and my first attempt to create my own 3D game engine using OpenGL.

Features

  • Basic lighting
  • Advanced physics using Bullet3D
  • Separated render and game threads
  • Multithreaded data loading
  • Custom asset binary format
  • Render targets
  • Content browser with dynamic thumbnails
  • Frustrum culling
  • Max display screen size
  • ImGui user interface
  • Easy to use CPU profiler
  • Procedural landscapes
  • Generated project vs files with a custom tool (C#)
  • Raycasting

Dependencies

  • assimp
  • glfw
  • glad
  • stbi
  • glm

Videos

Async data loading

Lighting

Last build review

Screenshots

Scene primitive bounding boxes (used for line traces and culling)

Dynamically generated thumbnails + object preview

Large model loading (Imported from google maps data)

Procedural infinite landscape (async mesh generation)

Generated foliages (Quick implementation of my landscape library, no instancing)