Vulkan Schnee 0.0.1
High-performance rendering engine
Loading...
Searching...
No Matches
Ecs Namespace Reference

Data structs for the Entity Component System. More...

Namespaces

namespace  AssetPipeline

Classes

struct  ActiveCamera
 Tag for the active camera in the scene. More...
struct  AssetLoadingImage
struct  AssetLoadingStatus
 Status information for asset loading pipeline. More...
struct  AssetRequested
 Is a tag for asset loading. When an asset has been rquested for loading but isnt yet created this tag is applied to the entity which will possess the Ecs::StaticMeshData. More...
struct  BoundingSphere
 A bounding sphere for an entity. Used for frustum culling. 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...
class  EntityNullError
struct  ExrHeaderData
struct  ExrHeaderFuture
struct  GltfModelFuture
struct  ImageData
struct  LightingProperties
struct  LocalTransform
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
struct  MaterialLoadingData
struct  MaterialNormals
struct  Mesh
struct  MeshComponentRef
 Reference to a MeshComponent for ECS-based iteration. Allows efficient querying of all mesh components without iterating all actors. More...
struct  MeshIndex
 The index of the mesh inside the scene. Used to query the mesh index of a scene. More...
struct  MeshletData
struct  MeshPrimitive
struct  MeshPrimitiveData
struct  MeshProperties
struct  Model
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
struct  ModelNode
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 This provides 4x bandwidth reduction vs unpacked format. More...
struct  Parent
 Stores parent relationships. More...
struct  PipelineGeometryData
 Temporary holder for raw geometry data during pipeline execution This is used to pass data between pipeline stages. More...
struct  PrimitiveData
struct  PrimitiveDataLoading
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  PrimitiveUvData
struct  RawMeshData
 Raw mesh geometry data extracted from gltf file Contains unprocessed vertices and indices. More...
class  RegistryManager
 Singleton which holds the entt registry. More...
class  RenderingAsset
class  RenderingAssetManager
struct  SceneNodeRef
 A struct which allows the engine to find out which SceneNode needs to propagate a dirty flag down the hierarchy. More...
struct  SimulatesPhysics
 Tag for EnTT which tags entities which should simulate physics. More...
struct  StaticMeshData
struct  StaticMeshes
class  TextureAssetPipeline
 Infrastructure to load images into the ecs. More...
struct  Tick
 Tag for everything which wants to receive tick events. More...
struct  TransformDepth
struct  TransformDirty
 Tag for dirty transforms (used by scene graph synchronization) More...
struct  TransformDirtyRenderer
 Tag for transforms that need GPU upload. Separate from TransformDirty because the renderer clears this after upload, while TransformDirty is cleared during scene graph sync. This allows transforms changed in tick/events to be properly uploaded. More...
class  TransformOperators
struct  UnpackedMeshletData
 Pre-packed GPU-ready data for a primitive's meshlets. Generated on background thread during meshlet generation. More...
struct  VertexData
struct  VulkanSchneeExtension
struct  WorldTransform

Typedefs

using Meshlet = meshopt_Meshlet
 information about the vertex and index data of a single meshlet
using UnpackedTriangle = PackedTriangle

Enumerations

enum class  AssetLoadingStage : uint8_t {
  Pending = 0 ,
  MetadataExtracted = 1 ,
  MaterialLoaded = 2 ,
  GeometryValidated = 3 ,
  GeometryExtracted = 4 ,
  VerticesAssembled = 5 ,
  Complete = 6 ,
  Failed = 7
}
 Tracks the current stage of asset loading in the pipeline. More...

Detailed Description

Data structs for the Entity Component System.

Typedef Documentation

◆ Meshlet

using Ecs::Meshlet = meshopt_Meshlet

information about the vertex and index data of a single meshlet

Definition at line 176 of file EcsData.h.

◆ UnpackedTriangle

Definition at line 216 of file EcsData.h.

Enumeration Type Documentation

◆ AssetLoadingStage

enum class Ecs::AssetLoadingStage : uint8_t
strong

Tracks the current stage of asset loading in the pipeline.

Enumerator
Pending 
MetadataExtracted 
MaterialLoaded 
GeometryValidated 
GeometryExtracted 
VerticesAssembled 
Complete 
Failed 

Definition at line 354 of file EcsData.h.