| Editor | |
| Headers | |
| EditCore | |
| EditCore.hpp | Editor core class — initializes, runs, and shuts down the editor loop |
| GuiToolBarPanel | |
| Buttons.hpp | Editor UI button panel — project/script/GameObject/component/sound controls |
| HubManager | |
| HubManager.hpp | Top-level editor hub managing state transitions between Hub, Editor, and Run modes |
| ImGuiLayer | |
| ImGuiLayer.hpp | ImGui rendering layer (DX11 + GLFW backends) — init, BeginFrame, EndFrame |
| ProjectManager | |
| ProjectManager.hpp | Singleton project manager — create, load, save projects and scenes |
| Engine | |
| Components | |
| UserComponents | |
| Headers | |
| Camera | |
| Camera.hpp | Base camera class — view/projection matrices, movement, and mouse-look |
| EditorCamera.hpp | Free-look editor camera derived from Camera |
| Core | |
| Headers | |
| API_Sound | |
| audio.h | Legacy audio stub — empty placeholder. The active audio implementation is MiniAudioSystem.hpp |
| AudioTypes.hpp | Fundamental audio type aliases and descriptors (SoundHandle, VoiceHandle, SoundDesc, VoiceParams) |
| IAudioSystem.hpp | Abstract audio system interface — backend-agnostic API for init, sound loading, and playback |
| MiniAudioSystem.hpp | MiniAudio-backed implementation of IAudioSystem |
| Application | |
| App.hpp | Top-level Application class owning the window and D3D11 context |
| Asset_Manager | |
| AssetManager.hpp | Central asset registry — singleton cache for meshes, textures, and materials |
| Assets | |
| MeshAsset | |
| MeshAsset.hpp | 3D mesh asset with CPU vertex/index data and D3D11 GPU buffers |
| TextureAsset | |
| Material.hpp | Simple material containing a diffuse color and an optional texture |
| TextureAsset.hpp | Texture asset backed by a D3D11 Shader Resource View |
| TextureManager | |
| TextureManager.hpp | Singleton texture cache — loads, stores, and reloads TextureAsset instances |
| Asset.hpp | Base class for all engine assets — defines the Load/Unload/CreateBuffers/Bind interface |
| CoreEngine | |
| CoreEngine.hpp | Central engine class — initializes subsystems, drives the main loop, and exposes system accessors |
| D3D11 | |
| D3D11.hpp | Direct3D 11 renderer wrapper — device, swap chain, shaders, and draw calls |
| Entity | |
| Component | |
| AssetComponent.hpp | Component that attaches any Asset-derived resource to a GameObject |
| MeshComponent.hpp | Component storing a MeshAsset for rendering |
| RigidBodyComponent.hpp | Basic physics component — mass, velocity, force accumulation, and gravity |
| TextureComponent.hpp | Component storing a TextureAsset for rendering |
| Component.hpp | Abstract base class for all components attachable to a GameObject |
| GameObject.hpp | Scene entity owning a collection of components and supporting a parent-child hierarchy |
| Transform.hpp | Transform component storing position, rotation, and scale of a GameObject |
| Input_Manager | |
| InputManager.hpp | Keyboard and mouse input manager — tracks pressed/held/released states per frame |
| InputState.hpp | Enum describing the per-frame state of a key or mouse button |
| MouseButton.hpp | Enum identifying trackable mouse buttons (Left, Right, Middle) |
| Scancode.hpp | Enum mapping GLFW key codes to named scancodes (physical key positions) |
| Logger | |
| Logger.hpp | Singleton logger with Info/Warning/Error levels, console and file output |
| Scene | |
| Scene.hpp | Scene class owning root GameObjects and driving their lifecycle |
| Sound_manager | |
| Sound_manager.hpp | High-level SoundManager wrapping IAudioSystem for easy load/play/stop operations |
| Time_Manager | |
| TimeManager.hpp | High-resolution frame timer computing delta time and FPS |
| Window | |
| IWindow.hpp | Abstract window interface — platform-agnostic API for native handle and event polling |
| Window.hpp | GLFW-backed concrete window implementation (WindowOpener) |
| Externals | |
| Maths | |
| Headers | |
| MMatrix4.hpp | Generic 4×4 matrix template for TRS transformations, projection, and inversion |
| MQuaternion.hpp | Generic quaternion template for 3D rotations — SLERP, LERP, Euler conversion |
| MVec2.hpp | Generic 2D vector template with arithmetic, interpolation, and utility operations |
| MVec3.hpp | Generic 3D vector template with cross/dot product, interpolation, and directional constants |
| Game | |
| includes | |
| MacroAutoRegister | |
| AutoRegister.hpp | REGISTER_SCRIPT macro for automatic compile-time script registration |
| ScriptManager | |
| ScriptManager.hpp | Manages user script instances — creation, deletion, initialization, and per-frame update |
| ScriptRegister | |
| ScriptRegister.hpp | Singleton factory registry for user scripts — stores and instantiates script types |
| ScriptRoot | |
| Script.hpp | Abstract script base class defining OnStart() and Update() lifecycle methods |
| UserScript | |
| UserScript.hpp | Named user script inheriting from Script |
| Runtime | |
| EngineBridge | |
| Headers | |
| InputBridge | |
| InputBridge.hpp | Bridges GLFW raw input events into the engine InputManager |
| MainBridge | |
| Bridge.hpp | High-level runtime bridge — owns Application, CoreEngine, and InputBridge |