|
Vulkan Schnee 0.0.1
High-performance rendering engine
|
Namespaces | |
| namespace | Authored |
| namespace | Loaders |
| namespace | Materials |
| namespace | Textures |
Classes | |
| class | Animation |
| Animation clip loaded from glTF animation data. More... | |
| class | AnimationAssetManager |
| struct | AssetHandle |
| struct | AssetHandleHash |
| class | Audio |
| Holds decoded PCM audio data as an engine asset. More... | |
| class | AudioAssetManager |
| Manages audio assets by filesystem path, providing dedup and lookup. More... | |
| struct | AudioData |
| Decoded audio data ready for playback. More... | |
| class | CubemapTexture |
| Owns Vulkan resources for a sampled cubemap texture. More... | |
| struct | CubemapTextureData |
| CPU-side RGBA cubemap image data. More... | |
| class | CubemapTextureLoader |
| Loads cubemap face images from a directory. More... | |
| class | ExrTextureAsset |
| Extension of TextureAsset and stores the Exr header information as well as the texture data. More... | |
| class | GltfTextureAsset |
| Extension of TextureAsset for images loaded from glTF files (PNG/JPG) More... | |
| struct | Joint |
| A single joint in a skeleton hierarchy. More... | |
| class | Material |
| the material asset is another wrapper for asset data which is stored in entt. It has the EngineCore::MaterialAsset::type member variable which corresponds to the component used to store the material data More... | |
| class | MaterialAssetManager |
| Asset manager for materials keyed by source file path and material name. More... | |
| class | Mesh |
| The mesh asset stores geometry data and. More... | |
| class | MeshAssetManager |
| Stores mesh data with their primitives. More... | |
| class | RuntimeTexture |
| Runtime-owned Vulkan texture resource. More... | |
| class | Skin |
| Skeleton definition loaded from glTF skin data. More... | |
| class | SkinAssetManager |
| class | Texture |
| Wrapper for texture data. More... | |
| class | TextureAssetManager |
| Asset manager for texture assets keyed by filesystem path. More... | |
| class | TextureHandle |
| Type-erased texture handle for runtime storage. More... | |
| class | TypedTextureHandle |
| Type-safe texture handle wrapper providing compile-time type safety. More... | |
Enumerations | |
| enum class | TextureType : uint8_t { BaseColor , Normal , MetallicRoughness , Emissive , Lightmap , Unknown } |
| Represents the semantic type of a texture, determining its Vulkan format. More... | |
Functions | |
| constexpr VkFormat | getVkFormat (TextureType type, int bits, int components) |
| Get the correct VkFormat based on texture type and image properties. | |
| constexpr bool | requiresLinearFormat (TextureType type) |
| Check if a texture type requires linear (non-SRGB) format. | |
Definition at line 121 of file TextureHandle.h.
Definition at line 10 of file AnimationAssetRef.h.
| using Engine::Assets::AnimationClipHandle = AssetHandle<AnimationClipHandleTag> |
Definition at line 63 of file AssetHandles.h.
Definition at line 12 of file AudioAssetRef.h.
| using Engine::Assets::AudioClipHandle = AssetHandle<AudioClipHandleTag> |
Definition at line 61 of file AssetHandles.h.
| using Engine::Assets::CubemapTextureHandle = AssetHandle<CubemapTextureHandleTag> |
Definition at line 58 of file AssetHandles.h.
Definition at line 124 of file TextureHandle.h.
| using Engine::Assets::FontAtlasTextureHandle = AssetHandle<FontAtlasTextureHandleTag> |
Definition at line 60 of file AssetHandles.h.
| using Engine::Assets::FontHandle = AssetHandle<FontHandleTag> |
Definition at line 66 of file AssetHandles.h.
| using Engine::Assets::GeometryMeshHandle = AssetHandle<GeometryMeshHandleTag> |
Definition at line 55 of file AssetHandles.h.
| using Engine::Assets::GltfHandle = AssetHandle<GltfHandleTag> |
Definition at line 53 of file AssetHandles.h.
| using Engine::Assets::GltfRenderableHandle = AssetHandle<GltfRenderableHandleTag> |
Definition at line 54 of file AssetHandles.h.
Definition at line 125 of file TextureHandle.h.
Definition at line 10 of file MaterialAssetRef.h.
| using Engine::Assets::MaterialHandle = AssetHandle<MaterialHandleTag> |
Definition at line 56 of file AssetHandles.h.
Definition at line 10 of file MeshAssetRef.h.
| using Engine::Assets::MetallicRoughnessTextureHandle = TypedTextureHandle<TextureType::MetallicRoughness> |
Definition at line 123 of file TextureHandle.h.
Definition at line 122 of file TextureHandle.h.
| using Engine::Assets::RenderTargetTextureHandle = AssetHandle<RenderTargetTextureHandleTag> |
Definition at line 59 of file AssetHandles.h.
| using Engine::Assets::SkeletalMeshHandle = AssetHandle<SkeletalMeshHandleTag> |
Definition at line 62 of file AssetHandles.h.
| using Engine::Assets::SkeletonHandle = AssetHandle<SkeletonHandleTag> |
Definition at line 65 of file AssetHandles.h.
Definition at line 10 of file SkinAssetRef.h.
| using Engine::Assets::SkinHandle = AssetHandle<SkinHandleTag> |
Definition at line 64 of file AssetHandles.h.
| using Engine::Assets::Texture2DHandle = AssetHandle<Texture2DHandleTag> |
Definition at line 57 of file AssetHandles.h.
Definition at line 12 of file TextureAssetRef.h.
|
strong |
Represents the semantic type of a texture, determining its Vulkan format.
Different texture types require different VkFormats for correct rendering:
Definition at line 15 of file TextureType.h.
|
constexpr |
Get the correct VkFormat based on texture type and image properties.
This function centralizes format selection logic, ensuring that:
| type | The semantic type of the texture |
| bits | Bits per component (8, 16, or 32) |
| components | Number of color components (1-4) |
Definition at line 37 of file TextureType.h.
References BaseColor, Emissive, Lightmap, MetallicRoughness, Normal, and Unknown.
|
constexpr |
Check if a texture type requires linear (non-SRGB) format.
| type | The texture type to check |
Definition at line 129 of file TextureType.h.
References BaseColor, Emissive, Lightmap, MetallicRoughness, Normal, and Unknown.