Introduction
LMGL is a modern C++ graphics library built on OpenGL, providing:
- PBR rendering with shadow mapping
- Scene graph with frustum culling
- Asset loading (models, textures)
- 2D UI system with JSON-based loading
- Easy-to-use API
Quick Start
int main() {
if (!engine.init(1280, 720, "My Game")) {
return -1;
}
auto scene = std::make_shared<Scene>();
auto camera = std::make_shared<Camera>();
engine.run([&](float dt) {
});
engine.free();
return 0;
}
static Engine & get_instance()
Get the singleton instance of the Engine.
Definition engine.cpp:10
Master include header for LMGL - Include this for most common functionality.
Namespace for scene-related classes and functions.
Definition camera.cpp:7
Forward declarations for Assimp Material structure.
Definition model_loader.cpp:12
Modules
- Core - Engine and lifecycle management
- Scene - 3D scene graph and rendering
- Assets - Model and texture loading
- UI - 2D user interface system
- Renderer - Low-level rendering primitives