Declaration of the Camera class for managing viewport and projection.
Canvas for 2D UI rendering with orthographic projection.
Class for loading 3D models using Assimp.
Definition model_loader.hpp:60
Manages loading and caching of textures.
Definition texture_library.hpp:34
A singleton class that manages the main application loop using GLFW.
Definition engine.hpp:153
Represents a shader program used in rendering.
Definition shader.hpp:34
Manages an OpenGL texture.
Definition texture.hpp:29
Represents a camera for viewing the 3D scene.
Definition camera.hpp:28
Class representing a light source in a 3D scene.
Definition light.hpp:40
Represents a material with various properties and textures for 3D rendering.
Definition material.hpp:36
Represents a 3D mesh with associated vertex array and shader.
Definition mesh.hpp:77
Represents a node in a scene graph.
Definition node.hpp:41
Represents a 3D scene graph with a root node.
Definition scene.hpp:39
Represents a skybox in a 3D scene.
Definition skybox.hpp:122
Declaration of the Engine class for managing the main application loop using GLFW.
Key
Input key codes.
Definition engine.hpp:43
Definition of the Light class and LightType enumeration.
Definition of the Material class for 3D rendering.
Defines the Mesh class for managing 3D mesh data.
Model loading utilities using Assimp library.
Forward declarations for Assimp Material structure.
Definition model_loader.cpp:12
Defines the Node class for managing scene graph nodes in a 3D environment.
Panel UI element for displaying colored rectangles.
Defines the Scene class for managing a 3D scene graph.
Declaration of the Shader class for managing shader programs in OpenGL.
Skybox rendering system with cubemap support.
Slider UI element for value selection.
Text UI element for rendering text strings.
Texture class for managing OpenGL textures.
Texture caching and management system.
Toggle (checkbox) UI element.
JSON-based UI loader for declarative UI creation.