16#define NEBULA_WHOLE_BUFFER_SIZE (-1)
124 for (i = 0; i < components.
Size(); i++)
286#define SHADER_POSTEFFECT_DEFAULT_FEATURE_MASK "Alt0"
289#define NEBULA_GRAPHICS_DEBUG 1
290#define NEBULA_MARKER_BLUE Math::vec4(0.8f, 0.8f, 1.0f, 1.0f)
291#define NEBULA_MARKER_RED Math::vec4(1.0f, 0.8f, 0.8f, 1.0f)
292#define NEBULA_MARKER_GREEN Math::vec4(0.8f, 1.0f, 0.8f, 1.0f)
293#define NEBULA_MARKER_DARK_GREEN Math::vec4(0.6f, 0.8f, 0.6f, 1.0f)
294#define NEBULA_MARKER_DARK_DARK_GREEN Math::vec4(0.5f, 0.7f, 0.5f, 1.0f)
295#define NEBULA_MARKER_PINK Math::vec4(1.0f, 0.8f, 0.9f, 1.0f)
296#define NEBULA_MARKER_PURPLE Math::vec4(0.9f, 0.7f, 0.9f, 1.0f)
297#define NEBULA_MARKER_ORANGE Math::vec4(1.0f, 0.9f, 0.8f, 1.0f)
298#define NEBULA_MARKER_TURQOISE Math::vec4(0.8f, 0.9f, 1.0f, 1.0f)
299#define NEBULA_MARKER_GRAY Math::vec4(0.9f, 0.9f, 0.9f, 1.0f)
300#define NEBULA_MARKER_BLACK Math::vec4(0.001f)
301#define NEBULA_MARKER_WHITE Math::vec4(1)
303#define NEBULA_MARKER_COMPUTE NEBULA_MARKER_BLUE
304#define NEBULA_MARKER_GRAPHICS NEBULA_MARKER_GREEN
305#define NEBULA_MARKER_TRANSFER NEBULA_MARKER_RED
311 #define COREGRAPHICS_TRIANGLE_FRONT_FACE_CCW (1)
313 #define NEBULA_TICK_GROUP 0
314 #define NEBULA_FRAME_GROUP 1
315 #define NEBULA_PASS_GROUP 2
316 #define NEBULA_BATCH_GROUP 3
317 #define NEBULA_INSTANCE_GROUP 4
318 #define NEBULA_SYSTEM_GROUP 5
319 #define NEBULA_DYNAMIC_OFFSET_GROUP 6
320 #define NEBULA_NUM_GROUPS (NEBULA_DYNAMIC_OFFSET_GROUP + 1)
322 #define MAX_INPUT_ATTACHMENTS 32
324 #define SHADER_MODEL_5 (1)
326 #define NEBULA_VULKAN_DEBUG (1)
328 #define NEBULA_VULKAN_DEBUG (0)
330 #define PROJECTION_HANDEDNESS_LH (0)
332 #define VK_DEVICE_SIZE_CONV(x) uint64_t(x)
334 #define VK_DEVICE_SIZE_CONV(x) uint32_t(x)
A pass describe a set of textures used for rendering.
Nebula's dynamic array class.
Definition array.h:60
const SizeT Size() const
get number of elements in array
Definition array.h:878
void __cdecl n_error(const char *msg,...)
This function is called when a serious situation is encountered which requires abortion of the applic...
Definition debug.cc:138
Acceleration structures are used to enable ray tracing on the GPU by dividing the scene into a BVH.
Definition accelerationstructure.h:24
ImageLayout
Definition config.h:94
@ DepthStencilRenderTexture
QueryType
Definition config.h:50
@ TimestampsQueryType
Definition config.h:53
@ NumQueryTypes
Definition config.h:54
@ StatisticsQueryType
Definition config.h:52
@ OcclusionQueryType
Definition config.h:51
const char * QueueNameFromQueueType(const QueueType type)
Definition config.h:163
QueueType
Definition config.h:38
@ ComputeQueueType
Definition config.h:40
@ NumQueueTypes
Definition config.h:44
@ InvalidQueueType
Definition config.h:46
@ SparseQueueType
Definition config.h:42
@ GraphicsQueueType
Definition config.h:39
@ TransferQueueType
Definition config.h:41
ShaderVisibility
Definition config.h:58
@ AllGraphicsVisibility
Definition config.h:65
@ InvalidVisibility
Definition config.h:59
@ VertexShaderVisibility
Definition config.h:60
@ RayMissShaderVisibility
Definition config.h:72
@ RayGenerationShaderVisibility
Definition config.h:69
@ HullShaderVisibility
Definition config.h:61
@ ComputeShaderVisibility
Definition config.h:68
@ TaskShaderVisibility
Definition config.h:66
@ MeshShaderVisibility
Definition config.h:67
@ CallableShaderVisibility
Definition config.h:74
@ RayAnyHitShaderVisibility
Definition config.h:70
@ GeometryShaderVisibility
Definition config.h:63
@ RayIntersectionShaderVisibility
Definition config.h:73
@ DomainShaderVisibility
Definition config.h:62
@ RayClosestHitShaderVisibility
Definition config.h:71
@ AllVisibility
Definition config.h:75
@ PixelShaderVisibility
Definition config.h:64
uint ConstantBufferOffset
Definition config.h:19
PipelineStage PipelineStageFromString(const Util::String &str)
Definition config.h:243
ShaderPipeline
Definition config.h:108
@ ComputePipeline
Definition config.h:111
@ InvalidPipeline
Definition config.h:109
@ GraphicsPipeline
Definition config.h:110
@ RayTracingPipeline
Definition config.h:112
ImageBits
Definition config.h:80
BarrierDomain
Definition config.h:182
PipelineStage
Definition config.h:188
@ AccelerationStructureRead
@ AccelerationStructureWrite
QueueType QueueTypeFromString(const Util::String &str)
Definition config.h:150
ShaderVisibility ShaderVisibilityFromString(const Util::String &str)
Definition config.h:119
This defines the macros for Nebula's RTTI mechanism (__DeclareClass, __ImplementClass,...
#define __ImplementEnumComparisonOperators(type)
Definition rttimacros.h:392
#define __ImplementEnumBitOperators(type)
Neat macro to make enums act as bit flags, be able to check if bits are set, and convert to integers.
Definition rttimacros.h:376
Nebula's universal string class.
Definition String.cs:8
const char * AsCharPtr() const
return contents as character pointer
Definition string.h:539
SizeT Tokenize(const String &whiteSpace, Array< String > &outTokens) const
tokenize string into a provided String array (faster if tokens array can be reused)
Definition string.cc:203
unsigned int uint
Definition types.h:31
int IndexT
Definition types.h:48