OGL Engine 1.2.0-dev
Loading...
Searching...
No Matches
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12]
 CEngine::Physics::AABBAxis Aligned Bounding Box
 CEngine::AppPoint d'entrée d'une application. Gère les différents systèmes associés au moteur de jeu
 CEngine::App::AppSettingsStructure de données qui contient des paramètres d'application
 CEngine::Audio::AudioManagerClasse statique qui gère tous les sons et la lecture audio dans le moteur Il faut juste appeler AudioManager::Init() une fois avant de pouvoir s'en servir (c'est fait dans la classe App)
 CEngine::Physics::CellStructure qui définit l'emplacement d'une cellule dans l'espace en 2D
 CEngine::Physics::CellHashLe hash d'une cellule donnée
 CEngine::Physics::ColliderRecordUne entrée qui permet de savoir quelles entités sont en collision avec un Collider On a des maps de ColliderRecords dans les composants de type Collider pour ça, on peut savoir à chaque instant qui est en collision avec le collider, et depuis combien de temps
 CEngine::Physics::CollisionManifoldDéfinition d'un manifeste de collision
 CEngine::ECS::ComponentClasse Component à dériver pour pouvoir être utilisée dans les systèmes ECS
 CEngine::ECS::ChildrenEquivalent de la structure parent mais pour gérer les enfants dans une entité
 CEngine::ECS::ParentStructure de données qui définit un composant "parent" poru stocker un id vers une entité parente dans la hiérarchie si besoin
 CEngine::Graphics::ParticleLa particule est l'élément atomique du système de particules du moteur. Les émetteurs de particules instancient des entités avec des components "Particle", ensuite, c'est l'émetteur qui gère le cycle de vie de l'entité particule et la paramètre
 CEngine::Graphics::ParticleEmitterL'emetteur est en quelques sortes le "moteur" qui génère et gère les particules à l'écran Peut être configuré de plein de manière différentes pour permettre des effets visuels customisés
 CEngine::Graphics::SpriteStructure de donnée contenant de quoi afficher un sprite à l'écran
 CEngine::Graphics::SpriteAnimatorComposant ECS qui stocke plusieurs animations, et permet de jouer l'une ou l'autre avec des appels simples
 CEngine::Physics::BoxColliderLe BoxCollider est le collider le plus "simple" qui soit. Il s'agit d'une "box" qui se positionne au centre de l'entité, et s'étend autour d'elle. Pas optimal pour les entités arrondies, mais en 2D, avec des sprites, fait amplement l'affaire
 CEngine::Physics::RigidbodyLa structure rigidbody contient de quoi simuler l'existance d'un corps physique dans le moteur de jeu
 CEngine::Scene::BehaviourComponent de "scripting" qui permet de profiter des fonctions de cycle de vie sur n'importe quelle entité
 CEngine::Scene::TransformCette structure de donnée permet la gestion d'une entité dans l'espace
 CEngine::UI::ActionStructure de donnée qui indique si l'élément cible est survolé par la souris
 CEngine::UI::ElementDéfinit un component "Element" à ajouter à une entité pour créer des interfaces
 CEngine::UI::TextDéfinit un component "Text" à ajouter à une entité pour créer des interfaces
 CEngine::ECS::EntityUne entité est l'élément "atomique" utilisé dans l'architecture ECS pour référencer les composants
 CEngine::Core::EventClasse Event dont tous les évènements devront hériter dans le système. Permet simplement de rendre le dispatcher d'évènements "générique" en passant par un type simple comme ça
 CEngine::Core::EventDispatcherEventDispatcher enregistre des listeners, émet des évènements, et appelle des callbacks
 CEngine::UI::FontCharge une police de caractère en utilisant la lib FreeType, et prépare les caractères
 CEngine::UI::FontCharFontChar est une structure qui stocke la data d'un caractère chargé par une font
 CEngine::Scene::ICamera
 CEngine::Scene::Camera2D
 CEngine::ECS::IComponentStorageInterface pour le système de stockage de composants
 CEngine::ECS::ComponentStorage< T >Stockage de composant typé selon template, basé sur l'interface générique
 CEngine::Utils::IniParserLa classe parse un fichier INI et stocke la donnée en proposant des helpers pour lire des valeurs
 CEngine::Input::InputManagerClasse Statique qui garde un oeil sur l'état de tous les inputs
 CEngine::Input::KeyStateStocke l'état d'une touche et la durée passée dans l'état
 CEngine::Core::LoggerClasse Singleton "Logger". Ne devrais jamais être appelée directement, puisqu'il existe des macros toutes prêtes
 CEngine::Graphics::MaterialLa classe Material définit un "material" graphique utilisé pour le rendu de meshes texturés
 CEngine::Utils::MemoryStreamRéplique le fonctionnement des "flux" pour fichiers de C++ sur un buffer mémoire
 CEngine::Physics::OBBOriented Bounding Box
 CEngine::Core::PakFileClasse qui charge un fichier PAK en mémoire. On peut ensuite accéder à ses contenus au format Binaire ou interpréter le texte
 CEngine::Core::PakHeaderStructure qui définit le header du type PAK. Utile pour avoir des infos sur ce que l'on va lire
 CEngine::Core::Profiler
 CEngine::RectangleDéfinition d'une structure rectangle qui est défini par la position de deux points : min et max
 CEngine::ECS::RegistryClasse Registre qui stocke des composants et gère l'attribution des IDs d'entités
 CEngine::Render::RenderTargetLa classe RenderTarget encapsule la gestion d'un framebuffer de taille custom pour le rendu de scène en deux temps
 CEngine::Utils::ResourceManagerLa classe resource manager permet la gestion de fichiers .pak de façon statique pour donner accès de manière globale aux assets
 CEngine::Scene::SceneClasse qui encapsule un registre de composants ECS, et des fonctions de lifcecycle
 CEngine::Render::ScreenRendererLa classe ScreenRenderer permet de dessiner une RenderTarget dans le contexte OpenGL courant
 CEngine::Graphics::ShaderClasse Shader qui porte un identifiant OpenGL pointant vers le shader compilé
 CEngine::Audio::SoundSound est un type de donnée qui contient ce qu'il faut pour jouer un son avec l'api OpenAl
 CEngine::Graphics::SpriteAnimationStructure de donnée contenant une liste de frames et des paramètres pour de l'animation
 CEngine::Utils::StateStore
 CEngine::ECS::SystemLa classe System implémente une logique spécifique à des composants
 CEngine::Graphics::ParticleSystemLa classe ParticleSystem gère le cycle de vie de tous les components de type "ParticleEmitter"
 CEngine::Graphics::SpriteAnimationSystem
 CEngine::Physics::PhysicSystemLe Système physique dans son ensemble définit ici
 CEngine::Render::DebugRendererLa classe DebugRenderer embarque un shader non customisable (hardcodé dans le constructeur) et un quad VAO pour faire des rendus
 CEngine::Render::SpriteRendererSystème sprite renderer
 CEngine::Render::UIRendererClasse UIRenderer qui s'occupe d'afficher textes et éléments
 CEngine::Scene::BehaviourSystemAppelle les callbacks de cycle de vie sur les components Behaviour actifs
 CEngine::Graphics::TextureTransporte un ID de texture OpenGL
 CEngine::Core::WindowWrapper pour le contexte openGL, ainsi que la statemachine openGL dans une certaine mesure