My Project
Loading...
Searching...
No Matches
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12]
 CEngine::ApplicationMain engine application class. Manages the window and Direct3D11 context
 CAssetBase class for all assets in the engine. Defines the interface for loading, unloading, creating GPU resources, and binding the asset to the graphics pipeline
 CMeshAssetAsset representing a 3D mesh. Handles CPU and GPU data, including vertex and index buffers
 CTextureAssetAsset representing a texture that can be used in the DirectX rendering pipeline. Handles CPU/GPU resources, including shader resource view and underlying texture resource
 CAssetManagerCentral manager responsible for loading, storing, and managing all engine assets. Supports meshes, textures, and materials. Ensures that assets are loaded only once and reused when requested again
 CRuntime::BridgeHigh-level runtime bridge that manages the application, engine, and input
 CEditor::ButtonsClass responsible for handling editor UI buttons and interactions. Manages project creation/loading, GameObject manipulation, component management, script handling, audio control, and project saving inside the editor
 CCameraBase camera class used to handle camera transformations, movement, and view/projection matrix generation. This class provides common camera functionality and must be inherited to implement specific camera behaviors
 CEditorCameraCamera used inside the editor environment. This camera allows free movement and rotation in the scene to inspect and manipulate objects during editing
 CEngine::ComponentBase class for all components in the engine. Components define behavior that can be attached to a GameObject
 CEngine::AssetComponentComponent responsible for attaching an asset to an entity. Can store meshes, textures, or any asset derived from Asset
 CEngine::MeshComponentComponent responsible for storing and managing a mesh for an entity. Used by the rendering system to draw geometry
 CEngine::RigidBodyComponentComponent responsible for basic physics simulation. Handles velocity, forces, gravity, and position updates
 CEngine::TextureComponentComponent responsible for storing a texture associated with a GameObject. This texture can later be used by the rendering system
 CEngine::TransformTransform component responsible for storing spatial data of a GameObject. Defines position, rotation, and scale in 3D space. Every GameObject should have exactly one Transform
 CEngine::CoreEngineCore class of the engine. Responsible for initializing systems, running the main loop, and shutting down the engine properly
 CEngine::D3D11Wrapper class responsible for initializing and managing Direct3D 11. Handles device creation, swap chain, rendering targets, and draw calls
 CEditor::EditorCoreClasse responsable de la gestion du cœur de l'éditeur. Coordonne l'initialisation, l'exécution et l'arrêt de l'éditeur, ainsi que la gestion des entrées utilisateur et du moteur graphique
 CEngine::GameObjectRepresents an object in the scene. A GameObject can contain multiple components and be part of a hierarchy
 CGuiLayerClass responsible for managing the GUI layer using ImGui. Handles initialization, frame management, and rendering of the graphical user interface with DirectX11 and GLFW
 CEditor::HubManagerMain hub manager for the El Motor editor. Manages overall editor state, UI rendering, and transitions between different editor modes. Coordinates between the GUI layer, the core editor, and the asset/script managers
 CEngine::IAudioSystemInterface representing the core audio system of the engine. Defines the API used to initialize the audio backend, manage sound resources, and control audio playback. Implementations can use different audio libraries (MiniAudio, FMOD, Wwise, etc.)
 CEngine::MiniAudioSystemAudio system implementation using MiniAudio. Handles loading, playing, and managing audio resources in the engine. Implements the IAudioSystem interface
 CRuntime::InputBridgeBridges input between GLFW and the Engine's InputManager
 CEngine::InputManagerHandles keyboard and mouse input. Tracks key states, mouse buttons, and mouse movement
 CEngine::IWindowAbstract interface for a window in the engine. Allows the engine to interact with different window implementations
 CEngine::WindowOpenerConcrete implementation of IWindow using GLFW. Manages window creation, events, and access to native handles
 CEngine::LoggerManagerSingleton class responsible for logging messages to console and file. Supports Info, Warning, and Error log types
 CMaths::Mat4< T >4x4 Matrix class template for 3D transformations Supports translation, rotation, scaling, multiplication, inversion, and more
 CMaterialSimple material class. Contains a diffuse color and an optional texture. Handles binding to the GPU pipeline
 CEngine::MatrixBufferConstant buffer used to store camera matrices. Sent to the GPU each frame
 CEngine::ObjectColorBufferConstant buffer used to send object color data to the pixel shader
 CEditor::ProjectManagerClass responsible for managing editor projects. Handles project creation, loading, saving, and scene serialization within a project directory
 CMaths::Quat< T >Quaternion class template for rotations in 3D space Supports Euler conversion, normalization, multiplication, slerp/lerp, and rotation helpers
 CEngine::SceneRepresents a scene containing multiple GameObjects. Manages creation, destruction, and updating of root GameObjects
 CScriptAbstract base class for all user scripts
 CUserScriptRepresents a user-defined script that can be attached to game objects
 CScriptManagerManages user scripts, including creation, deletion, initialization, starting, and updating
 CScriptRegistrySingleton registry that manages user script factories and can instantiate scripts on demand
 CEI::SoundDescDescription of a sound resource. Defines how the audio file should be loaded and used
 CEI::SoundManagerHigh-level sound manager that wraps around an IAudioSystem. Provides functionality for loading, playing, and stopping sounds
 CTextureManager
 CEngine::TimeManagerManages time tracking for the engine. Computes delta time between frames and the current FPS
 CMaths::Vec2< T >A 2D vector class template for mathematical operations
 CMaths::Vec3< T >A 3D vector class template for mathematical operations
 CVertexStructure representing a simple vertex. Contains position, normal, and texture coordinates
 CEI::VoiceParamsParameters used to control a playing sound instance