Vulkan Schnee 0.0.1 (22840dc8)
High-performance rendering engine
Loading...
Searching...
No Matches
Engine::Ecs Namespace Reference

EnTT component data used by engine systems. More...

Namespaces

namespace  AssetPipeline

Classes

struct  ActiveCamera
 Tag for the active camera in the scene. More...
struct  AnimationState
 Animation playback state for an entity with a skeletal mesh. More...
class  AssetImportPipeline
 Master asset import pipeline that dispatches asset submissions to the texture, model and audio sub-pipelines and advances them in a fixed order. More...
struct  AssetLoadingImage
 Async glTF image load request tracked by the ECS asset pipeline. More...
struct  AssetLoadingStatus
 Status information for asset loading pipeline. More...
struct  AssetRequested
 Tag applied while an asset request is queued but the runtime asset is not loaded. More...
class  AudioAssetPipeline
 Async pipeline for loading audio assets (WAV, FLAC, MP3) More...
struct  BoneTransformsDirty
 Tag component indicating bone transforms need GPU upload. Analogous to TransformDirty for world transforms. More...
struct  BoundingSphere
 Bounding sphere used for culling and bounds aggregation. More...
struct  CameraProperties
 Camera properties for projection matrix calculation. More...
struct  CompletedMeshletGeneration
 Complete result of meshlet generation for all primitives of a mesh. This is returned from the background meshlet generation task and queued for processing on the main thread at a safe point. More...
struct  ComputedBoneTransforms
 Stores computed bone matrices for GPU upload. More...
struct  DirectionalLightData
 Runtime directional light data mirrored from Components::DirectionalLight. sceneNodeEntity points to the transform used to derive the light direction unless hasDirectionOverride is set. More...
struct  ExrHeaderData
 Loaded EXR header data used before full texture payload loading. More...
struct  ExrHeaderFuture
 Async EXR header load request tracked by the ECS asset pipeline. More...
struct  GltfModelFuture
 Async glTF model load request tracked by the ECS asset pipeline. More...
struct  ImageData
 ECS wrapper for loaded tinygltf image data. More...
struct  Ktx2LoadFuture
 Async KTX2 texture load request tracked by the ECS asset pipeline. More...
struct  LightData
 Tag for ECS entities that provide renderer light data. More...
struct  LodHierarchyResult
 Result of LOD hierarchy generation for a mesh primitive. Contains per-cluster and per-group data for all LOD levels. More...
struct  MaterialDiffuseFlatColor
 Flat diffuse color material payload. More...
struct  MaterialLoadingData
 Material payload waiting to be registered as a material asset. More...
struct  MaterialNormals
 Material state for normal visualization. More...
struct  Mesh
 ECS wrapper for one glTF mesh object. More...
struct  MeshComponentRef
 References to MeshComponents for ECS-based iteration. Multiple mesh components can share one SceneNode entity. More...
struct  MeshIndex
 Mesh index inside a glTF scene. More...
struct  MeshletData
 Meshlet descriptors and index streams for one primitive. More...
struct  MeshPrimitive
 Runtime mesh primitive data consumed by the renderer. More...
struct  MeshPrimitiveData
 Renderer-facing primitive collection for one mesh asset. More...
struct  Model
 ECS wrapper for a loaded tinygltf model. More...
class  ModelAssetPipeline
 The model asset pipeline loads a gltf scene and loads and loads the mesh and material data. The material data requests the textures it needs. More...
struct  ModelFuture
 Async glTF model load future without a path. More...
struct  ModelNode
 ECS wrapper for one glTF node object. More...
struct  PackedTriangle
 GPU-ready packed triangle data (matches shader layout). Stores 3 x 8-bit local indices packed into a single uint32_t. Packing: [unused:8][i2:8][i1:8][i0:8] - bits 31-24, 23-16, 15-8, 7-0 Reduces triangle-index bandwidth by 4x versus unpacked format. More...
struct  Parent
 Parent entity link for component-owned ECS entities. More...
struct  PipelineGeometryData
 Temporary holder for raw geometry data during pipeline execution. More...
struct  PointLightData
 Runtime point light data mirrored from Components::PointLight. sceneNodeEntity points to the transform used as the light position. More...
struct  PrimitiveData
 CPU geometry for one mesh primitive before renderer upload. More...
struct  PrimitiveDataLoading
 Result of primitive extraction before meshlet generation. More...
struct  PrimitiveMeshletResult
 Result of meshlet generation for a single primitive. Used to transfer data from background thread to main thread safely. More...
 Metadata about a primitive being loaded from gltf file. More...
struct  RawMeshData
 Raw mesh geometry data extracted from a glTF file. More...
class  RegistryManager
 Singleton which holds the entt registry. More...
struct  RendererDirtyList
 Global dirty entity collector for renderer transform uploads. More...
struct  SceneNodeRef
 Scene node reference used to propagate transform dirty flags through children. More...
struct  SimulatesPhysics
 Physics body state for entities synchronized with Bullet. More...
struct  SkeletalMeshData
 Skeletal mesh data component. Similar to StaticMeshData but references skin/animation. More...
struct  StaticMeshData
 Mesh component state for one static mesh reference. More...
struct  StaticMeshes
 Collection of static mesh references attached to one entity. More...
class  TextureAssetPipeline
 Infrastructure to load images into the ecs. More...
struct  Tick
 Tick registration for objects that receive engine tick callbacks. More...
struct  Transform
 Local transform matrix and helpers for translation, rotation, and scale. More...
struct  TransformDepth
 Depth of an entity in the transform hierarchy. More...
struct  TransformDirty
 Tag for dirty transforms (used by scene graph synchronization) More...
struct  TransformDirtyRenderer
 Legacy tag for transforms that need GPU upload. More...
class  TransformOperators
 Static helpers for reading and mutating Transform matrices. More...
struct  UnpackedMeshletData
 Pre-packed GPU-ready data for a primitive's meshlets. Generated on background thread during meshlet generation. More...
struct  VRTrackingInput
 VR tracking input populated from OpenXR each frame. Used by the IK system to drive skeletal animation from controller poses. More...
struct  WorldTransform
 Cached world transform matrix written by the scene graph. More...

Typedefs

using Meshlet = meshopt_Meshlet
 Meshoptimizer meshlet descriptor type.
using UnpackedTriangle = PackedTriangle

Enumerations

enum class  AssetLoadingStage : uint8_t {
  PENDING = 0 ,
  METADATA_EXTRACTED = 1 ,
  MATERIAL_LOADED = 2 ,
  GEOMETRY_VALIDATED = 3 ,
  GEOMETRY_EXTRACTED = 4 ,
  VERTICES_ASSEMBLED = 5 ,
  COMPLETE = 6 ,
  FAILED = 7
}
 Tracks the current stage of asset loading in the pipeline. More...

Detailed Description

EnTT component data used by engine systems.

Typedef Documentation

◆ Meshlet

using Engine::Ecs::Meshlet = meshopt_Meshlet

Meshoptimizer meshlet descriptor type.

Definition at line 326 of file EcsData.h.

◆ UnpackedTriangle

Definition at line 379 of file EcsData.h.

Enumeration Type Documentation

◆ AssetLoadingStage

enum class Engine::Ecs::AssetLoadingStage : uint8_t
strong

Tracks the current stage of asset loading in the pipeline.

Enumerator
PENDING 

Load request is queued and no work has completed.

METADATA_EXTRACTED 

Source metadata has been extracted.

MATERIAL_LOADED 

Material data has been loaded.

GEOMETRY_VALIDATED 

Geometry validation has completed.

GEOMETRY_EXTRACTED 

Geometry data has been extracted from the source asset.

VERTICES_ASSEMBLED 

Vertex buffers have been assembled.

COMPLETE 

Asset load completed successfully.

FAILED 

Asset load failed. See AssetLoadingStatus::lastError.

Definition at line 648 of file EcsData.h.