![]() |
Rendering Engine 0.2.9
Modular Graphics Rendering Engine | v0.2.9
|
Namespaces | |
| namespace | axes |
| Commonly used 3D axis and direction vectors. | |
Classes | |
| class | Actor |
| Base class representing a 3D entity within a Scene. More... | |
| class | Actor2D |
| Base class representing a 2D entity within a Scene. More... | |
| class | AppClock |
| Provides high-resolution timing for frame updates. More... | |
| struct | AppConfig |
| Basic application settings loaded from a configuration file. More... | |
| class | AppTime |
| Manages current, total, and elapsed time for the application. More... | |
| class | Camera |
| Represents a 3D perspective camera with world transform and projection settings. More... | |
| class | Camera2D |
| Represents a 2D camera with position, rotation, and zoom control. More... | |
| struct | Color |
| Represents a color with red, green, blue, and alpha channels. More... | |
| class | ColorSpace |
| Color space conversion utilities (sRGB <-> linear). More... | |
| class | CoreApplication |
| Default implementation of the IApplication interface. More... | |
| struct | DeferredItem |
| class | Drawable2D |
| 2D drawable component for rendering objects in 2D space. More... | |
| class | Drawable3D |
| 3D drawable component for rendering objects in 3D space. More... | |
| class | DrawableComponent |
| Abstract base for all drawable (renderable) objects in the engine. More... | |
| class | Enum |
| struct | FontMetrics |
| Global metrics describing font vertical layout. More... | |
| class | FontResources |
| Manages glyph data, font atlases, and font-level metrics. More... | |
| struct | FrameMetrics |
| Stores CPU timing statistics for a rendered frame. More... | |
| struct | GlyphIndex |
| Opaque glyph identifier within a font. More... | |
| struct | GlyphMetrics |
| Metrics describing a single glyph and its atlas placement. More... | |
| class | IApplication |
| Defines a generic application interface for rendering-based programs. More... | |
| class | ImageData |
| Represents raw 2D image data stored in memory. More... | |
| class | ImageDataGpu |
| Combines CPU-side and GPU-side texture representations, managing both lifetimes and transitions. More... | |
| class | IMaterialRenderResources |
| Interface for backend-specific material GPU resources. More... | |
| class | IMeshRenderResources |
| Interface for GPU mesh resource management. More... | |
| class | IRenderer |
| Defines an abstract interface for rendering backends. More... | |
| class | IRendererObserver |
| Interface for observing renderer resource lifecycle events. More... | |
| class | IRenderResources |
| Interface for rendering backend resource aggregation and submission. More... | |
| class | ITextureRenderResources |
| Interface for backend-specific GPU texture resource management. More... | |
| class | IWindowSystem |
| Abstract interface for platform-specific window management. More... | |
| class | Logger |
| Singleton engine-wide logging system. More... | |
| class | Material |
| Represents a material instance with parameter values, texture bindings, and rendering configuration. More... | |
| class | MaterialCache |
| Manages creation, storage, and lifecycle of Material objects within the rendering engine. More... | |
| struct | MaterialParameterLayoutEntry |
| Describes the layout of a single packed parameter inside a uniform buffer. More... | |
| struct | MaterialSettings |
| Settings required to define a material instance. More... | |
| class | Mesh |
| Represents a single geometric mesh imported from a model file. More... | |
| class | MeshDataGpu |
| Manages mesh data in RAM and GPU, including upload and release operations. More... | |
| class | Model |
| Represents a 3D model composed of multiple meshes and materials. More... | |
| class | ModelCache |
| Manages loading, caching, and GPU residency of all model/mesh resources. More... | |
| class | ModelMaterial |
| Represents a single material imported from a 3D model file. More... | |
| struct | PackedMaterialData |
| Contains the raw buffer data and layout metadata of packed material parameters. More... | |
| struct | PackEntry |
| Metadata describing one file stored inside a packed asset archive. More... | |
| class | Quad2D |
| 2D drawable component for rendering rectangular primitives. More... | |
| struct | QueueFamilyIndices |
| Holds indices of Vulkan queue families supporting required operations. More... | |
| class | Rectangle2D |
| 2D drawable component for rendering rectangle. More... | |
| struct | RenderBatch |
| struct | RenderResourceContext |
| Aggregates pointers to global rendering resource managers. More... | |
| class | Scene |
| Base class representing a renderable scene. More... | |
| struct | SceneAutoRegistrar |
| Template-based auto-registrar for scenes. More... | |
| class | SceneComponent |
| Represents a 3D transformable scene component with position, rotation, and scale. More... | |
| class | SceneComponent2D |
| Represents a hierarchical 2D transform component. More... | |
| class | SceneManager |
| Manages scenes, resource caches, and scene transitions within the rendering engine. More... | |
| struct | ScreenSettings |
| Describes window and display configuration for the application. More... | |
| class | Sprite2D |
| 2D drawable component for rendering textured quad. More... | |
| class | StandaloneDesktopWindow |
| Desktop implementation of the IWindowSystem interface using GLFW. More... | |
| struct | StartSceneAutoSetter |
| Helper struct for automatically setting the start scene name. More... | |
| class | StaticMesh |
| 3D drawable component for rendering static (non-animated) meshes. More... | |
| struct | StaticMeshParams |
| class | StatsOverlay |
| Displays real-time frame statistics as a 2D overlay. More... | |
| struct | SwapChainSupportDetails |
| Describes capabilities and available configurations for a physical device's swap chain. More... | |
| class | TextBlock2D |
| 2D drawable representing a block of rendered text. More... | |
| class | TextRenderer |
| Central text system manager and font resource registry. More... | |
| class | TextureAtlasMaker |
| Builds texture atlases from collections of images. More... | |
| class | TextureCache |
| Manages texture loading, GPU uploading, and caching for reuse. More... | |
| struct | Transformations2D |
| Contains transformation matrices for 2D rendering. More... | |
| struct | Transformations3D |
| Contains model, view, and projection matrices for 3D rendering. More... | |
| class | Utility |
| Provides static helper methods for file I/O and path management. More... | |
| struct | Vertex2D |
| Vertex format for 2D UI/Overlay elements. More... | |
| struct | VertexPositionColorTexture |
| Vertex format for unlit 3D geometry. More... | |
| struct | VertexPositionColorTextureNormalTangent |
| Vertex format for lit 3D geometry (normal and tangent support). More... | |
| struct | VertexSkinnedPositionTextureNormalTangent |
| Vertex format for skinned meshes (skeletal animation). More... | |
| class | VulkanMaterialResources |
| Vulkan-specific implementation of material render resources. More... | |
| class | VulkanMeshResources |
| Vulkan implementation of the mesh GPU resource interface. More... | |
| class | VulkanRenderer |
| Vulkan-based implementation of the IRenderer interface. More... | |
| class | VulkanRenderResources |
| Vulkan implementation of IRenderResources for the Rendering Engine. More... | |
| class | VulkanTextureResources |
| Vulkan-specific implementation of ITextureRenderResources. More... | |
| struct | WindowResolution |
| Represents the pixel resolution of a window or display. More... | |
Typedefs | |
| using | PackEntries = std::unordered_map< std::string, PackEntry > |
Enumerations | |
| enum class | LogLevel { Debug , Info , Warning , Error } |
| Defines severity levels for log messages. More... | |
| enum class | MaterialDomain { Surface3D , Sprite2D } |
| Specifies the rendering domain where the material is used. More... | |
| enum class | BlendMode { Opaque , Translucent } |
| Specifies how the material handles transparency. More... | |
| enum class | ShadingModel { Lit , Unlit } |
| Specifies the shading model used by the material. More... | |
| enum class | MeshType { None , Sprite2D , Billboard , Surface } |
| Types of supported mesh layouts for GPU upload and rendering. More... | |
| enum | TextureType { Difffuse = 0 , SpecularMap , Ambient , Emissive , Heightmap , NormalMap , SpecularPowerMap , DisplacementMap , LightMap , Begin = Difffuse , End = LightMap } |
| Enumerates supported texture map types for imported materials. More... | |
| enum class | TextAlign { Left = 0 , Center , Right } |
| Horizontal alignment mode for text layout. More... | |
| enum class | DeferredType { Buffer , Memory , DescriptorPool , Image , ImageView , Sampler , Pipeline , PipelineLayout } |
Functions | |
| template<> | |
| Sprite2D * | Scene::Spawn< Sprite2D, std::string > (std::string textureName) |
| template<> | |
| TextBlock2D * | Scene::Spawn< TextBlock2D, TextBlock2D::Properties > (TextBlock2D::Properties prop) |
| template<> | |
| Sprite2D * | Scene::Spawn< Sprite2D, std::string > (std::string textureName) |
| template<> | |
| TextBlock2D * | Scene::Spawn< TextBlock2D, TextBlock2D::Properties > (TextBlock2D::Properties prop) |
| template<> | |
| Rectangle2D * | Scene::Spawn< Rectangle2D, Rectangle2D::Properties > (Rectangle2D::Properties prop) |
Variables | |
| class RE_API | Camera2D |
| static const std::vector< MaterialParameterLayoutEntry > | Font2DLayout |
| static const std::vector< MaterialParameterLayoutEntry > | Rectangle2DLayout |
| const int | MAX_FRAMES_IN_FLIGHT = 2 |
| Number of frames that can be processed simultaneously (double buffering). More... | |
| static PackEntries | sPackEntries |
| static bool | sPackEntriesLoaded = false |
| const bool | enableValidationLayers = true |
| using rendering_engine::PackEntries = typedef std::unordered_map<std::string, PackEntry> |
Definition at line 60 of file utility.hpp.
|
strong |
Specifies how the material handles transparency.
| Enumerator | |
|---|---|
| Opaque | |
| Translucent | |
Definition at line 35 of file material_types.hpp.
|
strong |
| Enumerator | |
|---|---|
| Buffer | |
| Memory | |
| DescriptorPool | |
| Image | |
| ImageView | |
| Sampler | |
| Pipeline | |
| PipelineLayout | |
Definition at line 48 of file vulkan_renderer.hpp.
|
strong |
Defines severity levels for log messages.
Levels are ordered by increasing severity: Debug < Info < Warning < Error
Log filtering is performed by comparing message level against the configured runtime level.
| Enumerator | |
|---|---|
| Debug | Detailed diagnostic information. |
| Info | General informational messages. |
| Warning | Non-critical issues or unexpected states. |
| Error | Critical errors affecting functionality. |
Definition at line 55 of file logger.hpp.
|
strong |
Specifies the rendering domain where the material is used.
| Enumerator | |
|---|---|
| Surface3D | |
| Sprite2D | |
Definition at line 26 of file material_types.hpp.
|
strong |
Types of supported mesh layouts for GPU upload and rendering.
Definition at line 22 of file mesh_data_gpu.hpp.
|
strong |
Specifies the shading model used by the material.
| Enumerator | |
|---|---|
| Lit | |
| Unlit | |
Definition at line 44 of file material_types.hpp.
|
strong |
Horizontal alignment mode for text layout.
| Enumerator | |
|---|---|
| Left | |
| Center | |
| Right | |
Definition at line 36 of file text_block_2d.hpp.
Enumerates supported texture map types for imported materials.
These correspond to common texture slots used in 3D rendering pipelines and align with Assimp's material texture types. The range [Begin, End] allows easy iteration through all supported types.
| Enumerator | |
|---|---|
| Difffuse | |
| SpecularMap | |
| Ambient | |
| Emissive | |
| Heightmap | |
| NormalMap | |
| SpecularPowerMap | |
| DisplacementMap | |
| LightMap | |
| Begin | |
| End | |
Definition at line 25 of file model_material.hpp.
| Rectangle2D * rendering_engine::Scene::Spawn< Rectangle2D, Rectangle2D::Properties > | ( | Rectangle2D::Properties | prop | ) |
Definition at line 66 of file spawn_drawables.hpp.
| Sprite2D * rendering_engine::Scene::Spawn< Sprite2D, std::string > | ( | std::string | textureName | ) |
Definition at line 50 of file spawn_drawables.hpp.
| Sprite2D * rendering_engine::Scene::Spawn< Sprite2D, std::string > | ( | std::string | textureName | ) |
Definition at line 50 of file spawn_drawables.hpp.
| TextBlock2D * rendering_engine::Scene::Spawn< TextBlock2D, TextBlock2D::Properties > | ( | TextBlock2D::Properties | prop | ) |
Definition at line 58 of file spawn_drawables.hpp.
| TextBlock2D * rendering_engine::Scene::Spawn< TextBlock2D, TextBlock2D::Properties > | ( | TextBlock2D::Properties | prop | ) |
Definition at line 58 of file spawn_drawables.hpp.
Definition at line 14 of file drawable_2d.hpp.
| const bool rendering_engine::enableValidationLayers = true |
Definition at line 24 of file vulkan_renderer.cpp.
|
static |
Definition at line 153 of file material_types.hpp.
| const int rendering_engine::MAX_FRAMES_IN_FLIGHT = 2 |
Number of frames that can be processed simultaneously (double buffering).
Definition at line 22 of file vulkan_renderer.hpp.
|
static |
Definition at line 162 of file material_types.hpp.
|
static |
Definition at line 21 of file utility.cpp.
|
static |
Definition at line 22 of file utility.cpp.