 |
ERHIBindlessSupport |
BindlessSupport |
Whether dynamic (bindless) resources are supported |
 |
volatile uint64 |
BufferMemorySize |
Amount of memory allocated by buffers |
 |
volatile int32 |
CurrentRendertargetMemorySize |
Amount of memory allocated by rendertargets. In kilobytes. |
 |
volatile int32 |
CurrentTextureMemorySize |
Amount of memory allocated by textures. In kilobytes. |
 |
FVector2f[1+2+4+8+16] |
DefaultMSAASampleOffsets |
Tables of all MSAA sample offset for all MSAA supported. |
 |
uint64 |
DemotedLocalMemorySize |
Amount of local video memory demoted to system memory. In bytes. |
 |
bool |
DeviceIsIntegrated |
Whether or not the current GPU is integrated into to CPU |
 |
int32 |
DrawUPIndexCheckCount |
The size to check against for Draw*UP call index counts. |
 |
int32 |
DrawUPVertexCheckCount |
The size to check against for Draw*UP call vertex counts. |
 |
bool |
ForceNoDeletionLatencyForStreamingTextures |
Allow opt-out default RHI resource deletion latency for streaming textures |
 |
FRHIGlobals::FGpuInfo |
GpuInfo |
|
 |
FString |
GPUTraceFileName |
Non-empty if we are performing a gpu trace. Also says where to place trace file. |
 |
bool |
HardwareHiddenSurfaceRemoval |
True if the GPU supports hidden surface removal in hardware. |
 |
EPixelFormat |
HDRDisplayOutputFormat |
Format used for the backbuffer when outputting to a HDR display. |
 |
bool |
HDRNeedsVendorExtensions |
True if HDR requires vendor specific extensions |
 |
bool |
IsDebugLayerEnabled |
True if the RHI has initialized a device with the debug layer enabled. |
 |
bool |
IsHDREnabled |
Whether or not HDR is currently enabled |
 |
bool |
IsRHIInitialized |
True if the render hardware has been initialized. |
 |
bool |
LazyShaderCodeLoading |
If true, then avoiding loading shader code and instead force the "native" path, which sends a library and a hash instead. |
 |
TRHIGlobal< int64 > |
MaxBufferDimensions |
The maximum size allowed for 2D textures in both dimensions. |
 |
TRHIGlobal< int32 > |
MaxComputeDispatchDimension |
The maximum size allowed for a computeshader dispatch. |
 |
TRHIGlobal< int64 > |
MaxComputeSharedMemory |
The maximum size allowed for Shared Compute Memory. |
 |
TRHIGlobal< int64 > |
MaxConstantBufferByteSize |
The maximum size allowed for a contant buffer. |
 |
TRHIGlobal< int32 > |
MaxCubeTextureDimensions |
The maximum size allowed for cube textures. |
 |
FIntVector |
MaxDispatchThreadGroupsPerDimension |
The maximum number of groups that can be dispatched in each dimensions. |
 |
int32 |
MaximumReccommendedOustandingOcclusionQueries |
If an RHI cannot do an unlimited number of occlusion queries without stalling and waiting for the GPU, this can be used to tune hte occlusion culler to try not to do that. |
 |
int32 |
MaximumWaveSize |
|
 |
TRHIGlobal< int32 > |
MaxShadowDepthBufferSizeX |
The maximum size to allow for the shadow depth buffer in the X dimension. |
 |
TRHIGlobal< int32 > |
MaxShadowDepthBufferSizeY |
The maximum size to allow for the shadow depth buffer in the Y dimension. |
 |
int32 |
MaxTextureArrayLayers |
The Maximum number of layers in a 1D or 2D texture array. |
 |
TRHIGlobal< int32 > |
MaxTextureDimensions |
The maximum size allowed for 2D textures in both dimensions. |
 |
int32 |
MaxTextureMipCount |
The maximum number of mip-maps that a texture can contain. |
 |
int32 |
MaxTextureSamplers |
|
 |
TRHIGlobal< int32 > |
MaxVolumeTextureDimensions |
The maximum size allowed for 3D textures in all three dimensions. |
 |
TRHIGlobal< int32 > |
MaxWorkGroupInvocations |
The maximum work group invocations allowed for compute shader. |
 |
int32 |
MinimumWaveSize |
Specifies the minimum and maximum number of lanes in the SIMD wave that this GPU can support. |
 |
bool |
NeedsExtraDeletionLatency |
Does this RHI need to wait for deletion of resources due to ref counting. |
 |
bool |
NeedsShaderUnbinds |
True if the RHI needs shader unbinds (SetShaderUnbinds). |
 |
bool |
NeedsUnatlasedCSMDepthsWorkaround |
True if the RHI has artifacts with atlased CSM depths. |
 |
volatile uint64 |
NonStreamingTextureMemorySizeInKB |
Amount of memory allocated by non streaming textures. In kilobytes. |
 |
int32 |
PersistentThreadGroupCount |
Optimal number of persistent thread groups to fill the GPU. |
 |
int32 |
PoolSizeVRAMPercentage |
In percent. If non-zero, the texture pool size is a percentage of TotalGraphicsMemory. |
 |
uint64 |
PresentCounter |
Counter incremented once on each frame present. |
 |
FRHIGlobals::FRayTracing |
RayTracing |
|
 |
bool |
RequiresRenderTargetForPixelShaderUAVs |
True if the RHI requires a valid RT bound during UAV scatter operation inside the pixel shader |
 |
FRHIGlobals::FReservedResources |
ReservedResources |
|
 |
bool |
RHIThreadNeedsKicking |
If an RHI is so slow, that it is the limiting factor for the entire frame, we can kick early to try to give it as much as possible. |
 |
EShaderPlatform[ERHIFeatureLevel::Num] |
ShaderPlatformForFeatureLevel |
Table for finding out which shader platform corresponds to a given feature level for this RHI. |
 |
volatile uint64 |
StreamingTextureMemorySizeInKB |
Amount of memory allocated by streaming textures. In kilobytes. |
 |
bool |
SupportsArrayIndexFromAnyShader |
True if the RHI supports setting the render target array index from any shader stage |
 |
bool |
SupportsAsyncGetRenderQueryResult |
Whether RHIGetRenderQueryResult can be safely called off the render thread. |
 |
bool |
SupportsAsyncPipelinePrecompile |
True if the RHI supports pipeline precompiling from any thread. |
 |
bool |
SupportsAsyncTextureCreation |
True if the RHI supports asynchronous creation of texture resources |
 |
bool |
SupportsAsyncTextureStreamOut |
Support using async thread for texture stream out operations |
 |
bool |
SupportsAtomicUInt64 |
True if the RHI supports 64 bit uint atomics. |
 |
bool |
SupportsBackBufferWithCustomDepthStencil |
Whether or not the RHI can render to the backbuffer with a custom depth/stencil surface bound. |
 |
bool |
SupportsBarycentricsSemantic |
True if the RHI supports shaders with barycentrics |
 |
bool |
SupportsBaseVertexIndex |
Whether or not the RHI can handle a non-zero BaseVertexIndex - extra SetStreamSource calls will be needed if this is false |
 |
bool |
SupportsConservativeRasterization |
Whether current RHI supports overestimated conservative rasterization. |
 |
bool |
SupportsDepthBoundsTest |
True if the RHI and current hardware supports supports depth bounds testing |
 |
bool |
SupportsDepthUAV |
True if the RHI supports depth target unordered access views. |
 |
bool |
SupportsDirectGPUMemoryLock |
True if the pointer returned by Lock is a persistent direct pointer to gpu memory |
 |
bool |
SupportsDrawIndirect |
True if the RHI supports Draw Indirect |
 |
bool |
SupportsDualSrcBlending |
True if the RHI supports dual src blending. |
 |
bool |
SupportsDX12AtomicUInt64 |
True if the RHI supports 64 bit uint atomics using DX12 SM6.6 - TEMP / DEPRECATED - DO NOT USE |
 |
bool |
SupportsDynamicResolution |
Whether or not the RHI can handle dynamic resolution or not. |
 |
bool |
SupportsEfficientAsyncCompute |
True if the RHI and current hardware supports efficient AsyncCompute (by default we assume false and later we can enable this for more hardware) |
 |
bool |
SupportsEfficientUploadOnResourceCreation |
|
 |
bool |
SupportsExactOcclusionQueries |
Some RHIs can only do visible or not occlusion queries. |
 |
bool |
SupportsExplicitFMask |
True if the RHI supports explicit access to MSAA target FMask meta data. |
 |
bool |
SupportsExplicitHTile |
True if the RHI supports explicit access to depth target HTile meta data. |
 |
bool |
SupportsFirstInstance |
Whether or not the RHI can handle a non-zero FirstInstance to DrawIndexedPrimitive and friends - extra SetStreamSource calls will be needed if this is false |
 |
bool |
SupportsFrameCyclesBubblesRemoval |
True if RHIGetGPUFrameCycles removes CPu generated bubbles. |
 |
bool |
SupportsGPUTimestampBubblesRemoval |
True if RQT_AbsoluteTime is supported by RHICreateRenderQuery |
 |
bool |
SupportsGPUUsage |
True if RHIGetGPUUsage() is supported. |
 |
bool |
SupportsHDROutput |
Whether the present adapter/display offers HDR output capabilities. |
 |
bool |
SupportsImageExternal |
True if the RHI supports image external |
 |
bool |
SupportsLazyShaderCodeLoading |
If true, then it is possible to turn on LazyShaderCodeLoading. |
 |
bool |
SupportsMapWriteNoOverwrite |
True if the RHI supports RLM_WriteOnly_NoOverwrite |
 |
bool |
SupportsMeshShadersTier0 |
True if the RHI supports Mesh and Amplification shaders with tier0 capability |
 |
bool |
SupportsMeshShadersTier1 |
True if the RHI supports Mesh and Amplification shaders with tier1 capability |
 |
bool |
SupportsMobileMultiView |
True if the RHI supports mobile multi-view |
 |
bool |
SupportsMSAADepthSampleAccess |
Whether or not the RHI can perform MSAA sample load. |
 |
bool |
SupportsMSAAShaderResolve |
True if RHI supports MSAA resolve with a custom shader |
 |
bool |
SupportsMultiDrawIndirect |
True if the RHI supports Multi Draw Indirect, a variant of Draw Indirect with variable number of sub-commands generated by GPU |
 |
bool |
SupportsMultithreadedResources |
Does the RHI support parallel resource commands (i.e. create / lock / unlock) on non-immediate command list APIs, recorded off the render thread. |
 |
bool |
SupportsMultithreadedShaderCreation |
True if the multi-threaded shader creation is supported by (or desirable for) the RHI. |
 |
bool |
SupportsMultithreading |
Whether the RHI can send commands to the device context from multiple threads. |
 |
bool |
SupportsNative16BitOps |
Whether or not the RHI supports 16bit VALU and resource loads (HLSL shader model 6.2). |
 |
bool |
SupportsParallelOcclusionQueries |
True if the RHI supports getting the result of occlusion queries when on a thread other than the render thread |
 |
bool |
SupportsParallelRenderingTasksWithSeparateRHIThread |
Temporary. |
 |
bool |
SupportsParallelRHIExecute |
Whether or not the RHI supports parallel RHIThread executes / translates Requirements: RHICreateBoundShaderState & RHICreateGraphicsPipelineState is threadsafe and GetCachedBoundShaderState must not be used. |
 |
bool |
SupportsPipelineFileCache |
True if the pipeline file cache can be used with this RHI |
 |
bool |
SupportsPipelineStateSortKey |
True if the RHI supports optimal low level pipeline state sort keys. |
 |
bool |
SupportsPixelLocalStorage |
True if mobile pixel local storage is supported |
 |
bool |
SupportsPixelShaderUAVs |
True if the RHI supports Pixel Shader UAV |
 |
bool |
SupportsPrimitiveShaders |
True if the RHI supports primitive shaders. |
 |
bool |
SupportsPSOPrecaching |
True if the RHI support PSO precaching |
 |
bool |
SupportsQuadBufferStereo |
True if this platform has quad buffer stereo support. |
 |
bool |
SupportsQuadTopology |
True if the RHI supports quad topology (PT_QuadList). |
 |
bool |
SupportsRasterOrderViews |
True if the RHI supports raster order views. |
 |
bool |
SupportsRawViewsForAnyBuffer |
Whether a raw (ByteAddress) buffer view can be created for any buffer, regardless of its EBufferUsageFlags::ByteAddressBuffer flag. |
 |
bool |
SupportsRectTopology |
True if the RHI supports rectangular topology (PT_RectList). |
 |
bool |
SupportsRenderDepthTargetableShaderResources |
True if the RHI supports textures that may be bound as both a render target and a shader resource. |
 |
TRHIGlobal< bool > |
SupportsRenderTargetFormat_PF_FloatRGBA |
True if PF_FloatRGBA render targets are supported |
 |
TRHIGlobal< bool > |
SupportsRenderTargetFormat_PF_G8 |
True if PF_G8 render targets are supported |
 |
bool |
SupportsResummarizeHTile |
True if the RHI supports resummarizing depth target HTile meta data. |
 |
bool |
SupportsRHIOnTaskThread |
As above, but we run the commands on arbitrary task threads |
 |
bool |
SupportsRHIThread |
Whether or not the RHI supports an RHI thread. |
 |
bool |
SupportsRWTextureBuffers |
Whether RW texture buffers are supported |
 |
bool |
SupportsSeparateDepthStencilCopyAccess |
Whether depth or stencil can individually be set to CopySrc/Dest access. |
 |
bool |
SupportsSeparateRenderTargetBlendState |
True if the RHI supports separate blend states per render target. |
 |
bool |
SupportsShaderBundleDispatch |
Whether current RHI supports shader bundle dispatch. |
 |
bool |
SupportsShaderDepthStencilFetch |
True if mobile depth & stencil fetch is supported |
 |
bool |
SupportsShaderFramebufferFetch |
True if mobile framebuffer fetch is supported |
 |
bool |
SupportsShaderFramebufferFetchProgrammableBlending |
True if mobile framebuffer fetch can be used for programmable blending, does not imply that framebuffer fetch is supported |
 |
bool |
SupportsShaderMRTFramebufferFetch |
True if mobile framebuffer fetch is supported from MRT's |
 |
bool |
SupportsShaderRootConstants |
Whether current RHI supports shader root constants. |
 |
bool |
SupportsShaderTimestamp |
True if the RHI supports reading system timer in shaders via GetShaderTimestamp(). |
 |
bool |
SupportsStencilRefFromPixelShader |
True if the RHI supports setting the stencil ref at pixel granularity from the pixel shader |
 |
bool |
SupportsTexture3D |
Whether to initialize 3D textures using a bulk data (or through a mip update if false). |
 |
bool |
SupportsTextureStreaming |
True if the RHI supports texture streaming |
 |
bool |
SupportsTextureViews |
True if the RHI supports texture views (data aliasing) |
 |
bool |
SupportsTimestampRenderQueries |
True if RQT_AbsoluteTime is supported by RHICreateRenderQuery |
 |
bool |
SupportsUAVFormatAliasing |
True if the RHI supports unordered access view format aliasing |
 |
bool |
SupportsUpdateFromBufferTexture |
True if the RHI supports UpdateFromBufferTexture method |
 |
bool |
SupportsVolumeTextureRendering |
True if and only if the GPU support rendering to volume textures (2D Array, 3D). |
 |
bool |
SupportsWaveOperations |
Whether or not the RHI supports shader wave operations (shader model 6.0). |
 |
bool |
SupportsWideMRT |
True if the RHI supports 256bit MRT |
 |
int64 |
TexturePoolSize |
Current texture streaming pool size, in bytes. 0 means unlimited. |
 |
ERequestedGPUCrash |
TriggerGPUCrash |
Whether an intentional GPU crash has been scheduled. |
 |
bool |
TriggerGPUHitchProfile |
Whether we are profiling GPU hitches. |
 |
bool |
TriggerGPUProfile |
Whether the next frame should profile the GPU. |
 |
volatile uint64 |
UniformBufferMemorySize |
Amount of memory allocated by uniform buffers |
 |
bool |
UseTexture3DBulkData |
True if bulk data should be used with 3d textures |
 |
bool |
UsingNullRHI |
True if we are running with the NULL RHI |
 |
FRHIGlobals::FVariableRateShading |
VariableRateShading |
|
 |
FVertexElementTypeSupportInfo |
VertexElementTypeSupport |
True for each VET that is supported. One-to-one mapping with EVertexElementType |