|
Flint Engine
Modular C++20 2D game engine powered by SDL3
|
| ▼NFlint | |
| CAppEvent | A tagged union representing a single application input or window event |
| CApplication | Entry-point base class for a Flint application |
| CApplicationConfig | User-facing metadata and window defaults for a Flint-powered application |
| ▼CAssetManager | Central resource cache and hot-reload coordinator |
| CWatchHandle | RAII handle returned by watch() |
| CAudio | Manages audio playback via SDL3_mixer |
| CBatchPipeline | Graphics pipeline for primary 2D batched quad geometry and procedural shapes |
| CBatchVertex | Vertex structure for the primary geometry quad pipeline |
| CCamera | |
| CCircleShape | A 2D circle rendered as a textured quad with a circle SDF shader |
| CClock | A pausable, restartable elapsed-time clock |
| CColor | RGBA color with 8-bit unsigned components |
| CContext | |
| CDrawable | Interface for objects that contribute ordered work to a rendered frame |
| CDrawCommand | Associates a submitted drawable with its render layer |
| CEngineConfig | Engine initialization toggles that control runtime systems and GPU behavior |
| CFileSystem | Disk-backed implementation of IAssetLoader |
| CFlintConfig | Aggregate configuration passed to the engine bootstrap code |
| CFontKey | Internal tracking key used to map a physical font asset instance in memory |
| CFontKeyHash | Custom hashing mechanism to facilitate constant-time O(1) font lookups inside associative arrays |
| CGPULineVertex | Internal vertex structure sent directly to line/point primitive shaders |
| CGPURenderer | High-level SDL GPU renderer managing pipeline state, batching, and frame presentation |
| CGPUTexture | Owns an SDL GPU texture and its associated sampler |
| CGPUWindowCast | Helper that extracts SDL GPU objects from an IWindow via dynamic_cast |
| CIAssetLoader | Abstract interface for loading raw asset data by path |
| CIGPUContext | Interface that exposes low-level SDL GPU objects from a window implementation |
| CInputSnapshot | Immutable snapshot of all input device states at a single point in time |
| CIWindow | Abstract interface for a platform window |
| CLog | |
| CLoggingConfig | |
| CNode | |
| CParticleEffect | Abstract interface for a self-contained particle effect |
| CPipeline | Base class for GPU graphics pipelines |
| CPipelineConfig | Configuration parameters for Pipeline::initialize() |
| CPrimitiveArray | A CPU-side collection of colored 2-D vertices that can be drawn as primitives |
| CPrimitivePipeline | |
| CPrimitiveVertex | Public user-facing vertex representation for point and line primitives |
| CProperty | |
| CRect | Generic axis-aligned rectangle defined by a position and size |
| CRectangleShape | A 2D axis-aligned rectangle rendered as a textured quad |
| CRenderQueue | Batches drawables into sorted geometry, primitive, and custom execution passes for GPURenderer |
| CSdlWindow | SDL3 window implementation that also exposes the SDL GPU context |
| CShader | Owns a pair of SDL GPU shaders (vertex + fragment) tied to one SDL_GPUDevice |
| CShape | Abstract base class for 2-D geometric shapes |
| CSprite | A 2-D textured quad that references a GPUTexture |
| CState | Abstract base for a single game state (scene / screen) |
| ▼CStateManager | Manages a stack of States and applies queued transitions |
| CPendingTransition | Transition description queued for later application |
| CTextCacheKey | Compound lookup key combining text copy with style states to handle discrete GPU text caching |
| CTextCacheKeyHash | 64-bit golden ratio hash combiner designed to prevent lookup collisions across active text strings |
| CTexture | Owns an SDL_Texture loaded from memory or created as a render target |
| CTime | Utility for converting time values to milliseconds |
| CTransform | Holds the 2-D transform components for a game object |
| CUIBuilder | |
| CUIButton | A clickable interactive text button widget supporting custom sprite icons |
| CUICanvas | Dynamic 2D batching engine processing shape vector geometry and hardware-accelerated text strings. *UICanvas acts as the graphics compositor for the UI layer. It intercepts layout draw commands, pools transient vertex lists into unified buffers to optimize pipeline state swaps, and coordinates a sliding frame cache system that automatically tracks and flushes unreferenced font textures from VRAM |
| CUIConstraints | Represents the boundary budget passed down the node tree during layout allocation |
| CUIContext | Manages an isolated user interface canvas workspace sandbox, hosting its own independent node tree and interaction state trackers |
| CUIEvent | A normalized data packet containing translated input data routed down the UI node tree |
| CUIFragmentUniforms | Fragment uniforms for the UI pipeline |
| CUILabel | A non-interactive text rendering widget |
| CUIMargin | Defines the exterior boundaries (in pixels) surrounding a UI element |
| CUINode | Abstract base class for all UI widgets, managing hierarchy tracking, layout passes, and input routing |
| CUIPadding | Defines the internal spacing boundaries (in pixels) for UI layout containers |
| CUIPanel | A container widget that arranges child nodes into sequential layout distributions |
| CUIParser | |
| CUIPipeline | Alpha-blended pipeline for rendering UI elements (text, panels, icons) |
| ▼CUISlider | An interactive value-selector bar supporting mouse dragging and gamepad focus adjustments |
| CSliderProperties | Architectural constraints governing value clamping and stepping metrics |
| CSliderStyle | Visual properties defining the slider track, fill area, and thumb indicator |
| CUISprite | A static texture rendering frame component wrapper |
| CUISystem | Central gateway subsystem managing UI multi-context lifetimes, resolution scaling, and input filtering |
| CUIVertexUniforms | Vertex uniforms for the UI pipeline |
| CVec2 | Generic 2-D vector with arithmetic operators |
| CUIVertexPushConstants |