Vulkan Schnee 0.0.1
High-performance rendering engine
Loading...
Searching...
No Matches
GpuDataLayouts.hpp
Go to the documentation of this file.
1#pragma once
3#include <cstdint>
4
8
10{
11 #define BINDING_ENUM_ENTRY(name, value) name = value,
12
20
22 {
27 }
28
36
38 {
43 }
44
46 {
51 }
52
60
62 {
67 }
68
70 {
75 }
76
77 namespace PrepareDraw
78 {
83 }
84
85 namespace VSBinning
86 {
91 }
92
100
101 namespace VSPrefixSum
102 {
107 }
108
110 {
115 }
116
118 {
123 }
124
132
133 namespace Graphics
134 {
135 enum Binding : uint32_t
136 {
138 };
139 }
140
141 #undef BINDING_ENUM_ENTRY
142}
143
144
145
146
147
148
149
150
151
#define BINDING_ENUM_ENTRY(name, value)
#define PREPARE_DRAW_BINDINGS(X)
#define PRIMITIVE_BINNING_BINDINGS(X)
#define MESHLET_UNPACKING_V2_BINDINGS(X)
#define VS_BINNING_BINDINGS(X)
VS Binning Stage 1: Count visible instances per geometry type, allocate write offsets.
#define DISPATCHER_BINDINGS(X)
Single source of truth for shader binding indices. These are expanded into C++ enums and GLSL defines...
#define CLUSTER_LOD_SELECTION_BINDINGS(X)
#define CLUSTER_PREFIX_SUM_BINDINGS(X)
#define MESHLET_UNPACKING_BINDINGS(X)
Legacy meshlet unpacking bindings (deprecated)
#define GRAPHICS_BINDINGS(X)
#define MESHLET_CULLING_DISPATCH_BINDINGS(X)
#define MESHLET_CULLING_BINDINGS(X)
#define VS_INSTANCE_UNPACKING_BINDINGS(X)
VS Instance Unpacking Stage 2: Write primitive IDs to per-geometry bins.
#define PRIMITIVE_CULLING_BINDINGS(X)
#define VS_PREPARE_DRAW_BINDINGS(X)
VS Prepare Draw Stage 3: Generate one draw command per geometry type.
#define VS_PREFIX_SUM_BINDINGS(X)
VS Prefix Sum: Compute geometry offsets from instance counts.
#define MESHLET_UNPACKING_DISPATCH_BINDINGS(X)
C++ side enum definitions for shader bindings, generated from X-macros.