12#ifndef VULKAN_SUPPORTS_GEOMETRY_SHADERS
13 #define VULKAN_SUPPORTS_GEOMETRY_SHADERS PLATFORM_SUPPORTS_GEOMETRY_SHADERS
19#define VULKAN_ENABLE_BINDING_DEBUG_NAMES 0
26#define VULKAN_REDUCE_BINDLESS_DESCRIPTOR_SET_COUNT 0
104 static constexpr uint32 MaxUniformBuffersPerStage = 16;
110#if VULKAN_REDUCE_BINDLESS_DESCRIPTOR_SET_COUNT
149 static_assert(
STRUCT_OFFSET(T,
sType) == 0,
"Assumes sType is the first member in the Vulkan type!");
150 static_assert(
sizeof(T::sType) ==
sizeof(
int32),
"Assumed sType is compatible with int32!");
#define checkf(expr, format,...)
Definition AssertionMacros.h:315
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
DIRECTLINK_API Display
Definition DirectLinkLog.h:8
#define DECLARE_LOG_CATEGORY_EXTERN(CategoryName, DefaultVerbosity, CompileTimeVerbosity)
Definition LogMacros.h:361
EShaderFrequency
Definition RHIDefinitions.h:202
@ SF_Compute
Definition RHIDefinitions.h:208
@ SF_NumFrequencies
Definition RHIDefinitions.h:216
@ SF_Amplification
Definition RHIDefinitions.h:205
@ SF_Vertex
Definition RHIDefinitions.h:203
@ SF_Mesh
Definition RHIDefinitions.h:204
@ SF_Geometry
Definition RHIDefinitions.h:207
@ SF_RayGen
Definition RHIDefinitions.h:209
@ SF_RayCallable
Definition RHIDefinitions.h:212
@ SF_RayMiss
Definition RHIDefinitions.h:210
@ SF_RayHitGroup
Definition RHIDefinitions.h:211
@ SF_Pixel
Definition RHIDefinitions.h:206
#define STRUCT_OFFSET(struc, member)
Definition UnrealTemplate.h:218
Definition VulkanCommon.h:29
EShaderFrequency GetFrequencyForGfxStage(EStage Stage)
Definition VulkanCommon.h:84
EStage
Definition VulkanCommon.h:35
@ Compute
Definition VulkanCommon.h:51
@ Invalid
Definition VulkanCommon.h:57
@ NumRayTracingStages
Definition VulkanCommon.h:49
@ Geometry
Definition VulkanCommon.h:38
@ NumGraphicsStages
Definition VulkanCommon.h:42
@ Mesh
Definition VulkanCommon.h:39
@ RayGen
Definition VulkanCommon.h:44
@ RayHitGroup
Definition VulkanCommon.h:46
@ NumComputeStages
Definition VulkanCommon.h:53
@ RayCallable
Definition VulkanCommon.h:47
@ Pixel
Definition VulkanCommon.h:37
@ RayMiss
Definition VulkanCommon.h:45
@ Vertex
Definition VulkanCommon.h:36
@ MaxNumStages
Definition VulkanCommon.h:55
@ Task
Definition VulkanCommon.h:40
EStage GetStageForFrequency(EShaderFrequency Stage)
Definition VulkanCommon.h:62
Definition VulkanCommon.h:103
EDescriptorSets
Definition VulkanCommon.h:107
@ BindlessSingleUseUniformBufferSet
Definition VulkanCommon.h:136
@ BindlessUniformTexelBufferSet
Definition VulkanCommon.h:127
@ BindlessAccelerationStructureSet
Definition VulkanCommon.h:130
@ NumBindlessSets
Definition VulkanCommon.h:133
@ BindlessUniformBufferSet
Definition VulkanCommon.h:121
@ MaxNumSets
Definition VulkanCommon.h:139
@ BindlessStorageImageSet
Definition VulkanCommon.h:123
@ BindlessSamplerSet
Definition VulkanCommon.h:108
@ BindlessStorageBufferSet
Definition VulkanCommon.h:120
@ BindlessSampledImageSet
Definition VulkanCommon.h:124
@ BindlessStorageTexelBufferSet
Definition VulkanCommon.h:126
static UE_FORCEINLINE_HINT void * Memzero(void *Dest, SIZE_T Count)
Definition UnrealMemory.h:131
Definition IsPointer.h:12