20using AssetId = uint64_t;
21constexpr auto NullAssetId = std::numeric_limits<AssetId>::max();
22constexpr auto NullAssetIndex = std::numeric_limits<uint32_t>::max();
26 AssetId
id = NullAssetId;
27 std::span<const double> leftChannel = {};
28 std::span<const double> rightChannel = {};
29 size_t samplesPerChannel = 0ull;
34 AssetId
id = NullAssetId;
37enum class CubeMapUsage
45 AssetId
id = NullAssetId;
46 CubeMapUsage usage = CubeMapUsage::Skybox;
47 uint32_t index = NullAssetIndex;
52 AssetId
id = NullAssetId;
53 uint32_t firstVertex = NullAssetIndex;
54 uint32_t vertexCount = NullAssetIndex;
55 uint32_t firstIndex = NullAssetIndex;
56 uint32_t indexCount = NullAssetIndex;
57 float maxExtent = 0.0f;
62 AssetId
id = NullAssetId;
67 AssetId
id = NullAssetId;
68 uint32_t index = NullAssetIndex;
71enum class DescriptorType : uint8_t
79enum class ShaderStages : uint8_t
86struct DescriptorManifest
88 uint32_t setIndex = NullAssetIndex;
89 uint32_t slotIndex = NullAssetIndex;
90 DescriptorType descriptorType = DescriptorType::None;
91 ShaderStages shaderStages = ShaderStages::None;
97 std::span<const uint32_t> vertexByteCode;
98 std::span<const uint32_t> fragmentByteCode;
99 std::span<const DescriptorManifest> descriptors;
104 AssetId
id = NullAssetId;
105 uint32_t index = NullAssetIndex;
116 ImFont* font =
nullptr;
124 std::same_as<T, ConvexHullView> ||
125 std::same_as<T, CubeMapView> ||
126 std::same_as<T, FontView> ||
127 std::same_as<T, MeshColliderView> ||
128 std::same_as<T, MeshView> ||
129 std::same_as<T, ShaderView> ||
130 std::same_as<T, SkeletalAnimationView> ||
131 std::same_as<T, TextureView>;
#define DEFINE_BITWISE_OPERATORS(type)
Definition: EnumUtilities.h:23
Definition: AssetViews.h:123
Definition: AssetViews.h:25
Definition: AssetViews.h:33
Definition: AssetViews.h:44
Definition: AssetViews.h:109
Definition: AssetViews.h:115
Definition: AssetViews.h:61
Definition: AssetViews.h:51
Definition: AssetViews.h:95
Definition: AssetViews.h:103
Definition: AssetViews.h:66