44 #define INTC_IGDEXT_D3D11 1
50#define DX_MAX_MSAA_COUNT 8
105#if (RHI_NEW_GPU_PROFILER == 0)
154 static void PlatformStaticInitialize(
void* UserData);
161 int32 CurrentTimestamp;
163 int32 NumIssuedTimestamps;
206 FGPUProfilerEventNode(InName,
InParent),
244 FGPUProfilerEventNodeFrame(),
389 template<
typename TRHIType>
408 template<EShaderFrequency ShaderFrequency>
411 template <
typename TRHIShader>
414 template<EShaderFrequency ShaderFrequency>
417 template<EShaderFrequency ShaderFrequency>
452#if ENABLE_LOW_LEVEL_MEM_TRACKER || UE_MEMORY_TRACE_ENABLED
572 EnableDepthBoundsTest(bEnable, 0.0f, 1.0f);
579 EnableDepthBoundsTest(
true, MinDepth, MaxDepth);
582#if WITH_RHI_BREADCRUMBS
656 D3D11RHI_API void EnableDepthBoundsTest(
bool bEnable,
float MinDepth,
float MaxDepth);
660 enum class EForceFullScreenClear
668 template <EShaderFrequency ShaderFrequency>
671 template <EShaderFrequency ShaderFrequency>
672 void ClearAllShaderResourcesForFrequency();
674 template <EShaderFrequency ShaderFrequency>
692 template <EShaderFrequency ShaderFrequency>
724 UE::RHICore::Nvidia::Aftermath::D3D11::FCommandList
AftermathHandle =
nullptr;
816 #if RHI_NEW_GPU_PROFILER
820 #if WITH_RHI_BREADCRUMBS
825 #if RHI_NEW_GPU_PROFILER
839#if RHI_NEW_GPU_PROFILER
908#if (RHI_NEW_GPU_PROFILER == 0)
916#if (RHI_NEW_GPU_PROFILER == 0)
972 template<
typename TPixelShader>
1115 FRange& ref = Entries[i];
1159 Entries[i] = InRange;
1173 FRange& ref = Entries[i];
1228 const FRange& ref = Entries[i];
1243 void Compacten(
uint32 StartIndex)
1245 check(!Entries[StartIndex].IsOccupied());
1247 if(StartIndex && !Entries[StartIndex-1].IsOccupied())
1259 FRange& ref = Entries[i];
1261 if(!ref.IsOccupied())
1275 Entries[StartIndex].ExtendUnoccupied(
SizeGained);
1283#if !UE_BUILD_SHIPPING
1287 check(
A.GetNumEntries() == 1);
1288 check(
A.ComputeUnoccupiedSize() == 10);
1295 check(
A.GetNumEntries() == 2);
1296 check(
A.ComputeUnoccupiedSize() == 7);
1303 check(
A.GetNumEntries() == 3);
1304 check(
A.ComputeUnoccupiedSize() == 3);
1310 check(
A.GetNumEntries() == 3);
1311 check(
A.ComputeUnoccupiedSize() == 3);
1318 check(
A.GetNumEntries() == 3);
1319 check(
A.ComputeUnoccupiedSize() == 0);
1322 check(
A.GetNumEntries() == 3);
1323 check(
A.ComputeUnoccupiedSize() == 4);
1326 check(
A.GetNumEntries() == 2);
1327 check(
A.ComputeUnoccupiedSize() == 7);
1330 check(
A.GetNumEntries() == 1);
1331 check(
A.ComputeUnoccupiedSize() == 10);
1339 check(
A.GetNumEntries() == 1);
1340 check(
A.ComputeUnoccupiedSize() == 0);
1343 check(
A.GetNumEntries() == 1);
1344 check(
A.ComputeUnoccupiedSize() == 10);
1352 check(
A.GetNumEntries() == 3);
1353 check(
A.ComputeUnoccupiedSize() == 6);
1359 check(
A.GetNumEntries() == 3);
1360 check(
A.ComputeUnoccupiedSize() == 4);
1366 check(
A.GetNumEntries() == 3);
1367 check(
A.ComputeUnoccupiedSize() == 0);
#define check(expr)
Definition AssertionMacros.h:314
RENDERCORE_API void ClearUAV(FRHICommandList &RHICmdList, FRHIUnorderedAccessView *Buffer, uint32 NumBytes, uint32 Value, bool bBarriers=true)
@ INDEX_NONE
Definition CoreMiscDefines.h:150
#define DECLARE_CYCLE_STAT_EXTERN(CounterName, StatId, GroupId, API)
Definition Stats.h:679
#define DECLARE_DWORD_COUNTER_STAT_EXTERN(CounterName, StatId, GroupId, API)
Definition Stats.h:682
#define DECLARE_DWORD_ACCUMULATOR_STAT_EXTERN(CounterName, StatId, GroupId, API)
Definition Stats.h:684
#define DECLARE_MEMORY_STAT_EXTERN(CounterName, StatId, GroupId, API)
Definition Stats.h:687
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::FPlatformRecursiveMutex FCriticalSection
Definition CriticalSection.h:53
#define DX_MAX_MSAA_COUNT
Definition D3D11RHIPrivate.h:50
D3D11RHI_API FD3D11DynamicRHI * GD3D11RHI
Definition WindowsD3D11Device.cpp:33
TAutoConsoleVariable< int32 > GD3D11DebugCvar
TAutoConsoleVariable< int32 > GCVarUseSharedKeyedMutex
ID3D11DeviceContext FD3D11DeviceContext
Definition D3D11Resources.h:14
#define VERIFYD3D11RESULT(x)
Definition D3D11Util.h:89
#define DECLARE_LOG_CATEGORY_EXTERN(CategoryName, DefaultVerbosity, CompileTimeVerbosity)
Definition LogMacros.h:361
ERHIAccess
Definition RHIAccess.h:11
@ SF_NumStandardFrequencies
Definition RHIDefinitions.h:222
EUniformBufferUsage
Definition RHIDefinitions.h:536
ECubeFace
Definition RHIDefinitions.h:525
EResourceLockMode
Definition RHIDefinitions.h:785
uint8 FUniformBufferStaticSlot
Definition RHIDefinitions.h:722
EUniformBufferValidation
Definition RHIDefinitions.h:546
ETextureCreateFlags
Definition RHIDefinitions.h:1091
ERenderQueryType
Definition RHIDefinitions.h:258
EPrimitiveType
Definition RHIDefinitions.h:822
#define GSupportsDepthBoundsTest
Definition RHIGlobals.h:807
ERHIPipeline
Definition RHIPipeline.h:13
FRWLock Lock
Definition UnversionedPropertySerialization.cpp:921
uint32 Offset
Definition VulkanMemory.cpp:4033
uint32 Size
Definition VulkanMemory.cpp:4034
Definition D3D11RHI.Build.cs:8
Definition D3D11Resources.h:421
Definition D3D11RHIPrivate.h:109
void StartTiming()
Definition D3D11Query.cpp:713
virtual void InitRHI(FRHICommandListBase &RHICmdList) override
Definition D3D11Query.cpp:660
static void CalibrateTimers(FD3D11DynamicRHI *InD3DRHI)
Definition D3D11Query.cpp:645
void EndTiming()
Definition D3D11Query.cpp:729
uint64 GetTiming(bool bGetCurrentResultsAndBlock=false)
Definition D3D11Query.cpp:747
virtual void ReleaseRHI() override
Definition D3D11Query.cpp:694
Definition D3D11Resources.h:85
Definition D3D11ConstantBuffer.h:33
Definition D3D11RHIPrivate.h:174
bool IsResultValid()
Definition D3D11Query.cpp:845
virtual void ReleaseRHI() override
Definition D3D11Query.cpp:876
void StartTracking()
Definition D3D11Query.cpp:833
virtual void InitRHI(FRHICommandListBase &RHICmdList) override
Definition D3D11Query.cpp:867
void EndTracking()
Definition D3D11Query.cpp:839
D3D11_QUERY_DATA_TIMESTAMP_DISJOINT GetResult()
Definition D3D11Query.cpp:850
Definition D3D11RHIPrivate.h:1020
virtual bool IsSupported() override
Definition WindowsD3D11Device.cpp:651
virtual bool SupportsDynamicReloading() override
Definition D3D11RHIPrivate.h:1023
virtual FDynamicRHI * CreateRHI(ERHIFeatureLevel::Type RequestedFeatureLevel=ERHIFeatureLevel::Num) override
Definition WindowsD3D11Device.cpp:934
Definition D3D11RHIPrivate.h:366
TRefCountPtr< ID3DUserDefinedAnnotation > Direct3DDeviceIMAnnotation
Definition D3D11RHIPrivate.h:720
virtual D3D11RHI_API void RHISubmitCommandLists(FRHISubmitCommandListsArgs &&Args) final override
Definition D3D11Commands.cpp:1453
virtual D3D11RHI_API void RHIMapStagingSurface(FRHITexture *Texture, FRHIGPUFence *Fence, void *&OutData, int32 &OutWidth, int32 &OutHeight, uint32 GPUIndex=0) final override
Definition D3D11RenderTarget.cpp:594
virtual D3D11RHI_API void RHIAliasTextureResources(FTextureRHIRef &DestTexture, FTextureRHIRef &SrcTexture) final override
Definition D3D11Texture.cpp:1659
virtual D3D11RHI_API FRasterizerStateRHIRef RHICreateRasterizerState(const FRasterizerStateInitializerRHI &Initializer) final override
Definition D3D11State.cpp:203
virtual D3D11RHI_API FTextureRHIRef RHIGetViewportBackBuffer(FRHIViewport *Viewport) final override
Definition D3D11Viewport.cpp:834
D3D11RHI_API void SetupAfterDeviceCreation()
Definition D3D11Device.cpp:478
virtual D3D11RHI_API bool RHIGetTextureMemoryVisualizeData(FColor *TextureData, int32 SizeX, int32 SizeY, int32 Pitch, int32 PixelSize) final override
Definition D3D11Texture.cpp:115
virtual D3D11RHI_API void RHISetBlendFactor(const FLinearColor &BlendFactor) final override
Definition D3D11Commands.cpp:590
D3D11RHI_API void ResolveTexture(UE::RHICore::FResolveTextureInfo Info)
Definition D3D11RenderTarget.cpp:879
virtual D3D11RHI_API void * RHIGetNativeDevice() final override
Definition D3D11Device.cpp:787
D3D11RHI_API void UpdateMSAASettings()
Definition D3D11Device.cpp:616
virtual D3D11RHI_API void CommitNonComputeShaderConstants()
Definition D3D11Commands.cpp:989
virtual D3D11RHI_API FTextureRHIRef RHICreateTexture2DArrayFromResource(EPixelFormat Format, ETextureCreateFlags TexCreateFlags, const FClearValueBinding &, ID3D11Texture2D *Resource) final override
Definition D3D11Texture.cpp:1584
virtual D3D11RHI_API void RHIBeginRenderPass(const FRHIRenderPassInfo &InInfo, const TCHAR *InName) final override
Definition D3D11RenderTarget.cpp:858
FD3D11StateCache & GetStateCache()
Definition D3D11RHIPrivate.h:704
virtual D3D11RHI_API void RHIEndRenderQuery_TopOfPipe(FRHICommandListBase &RHICmdList, FRHIRenderQuery *RenderQuery) override final
Definition D3D11Query.cpp:84
virtual D3D11RHI_API void RHIAdvanceFrameForGetViewportBackBuffer(FRHIViewport *Viewport, bool bPresent) final override
Definition D3D11Viewport.cpp:830
virtual D3D11RHI_API FBoundShaderStateRHIRef RHICreateBoundShaderState(FRHIVertexDeclaration *VertexDeclaration, FRHIVertexShader *VertexShader, FRHIPixelShader *PixelShader, FRHIGeometryShader *GeometryShader) final override
Definition D3D11Shaders.cpp:313
virtual D3D11RHI_API void RHIReadSurfaceFloatData(FRHITexture *Texture, FIntRect Rect, TArray< FFloat16Color > &OutData, ECubeFace CubeFace, int32 ArrayIndex, int32 MipIndex) final override
Definition D3D11RenderTarget.cpp:617
D3D11RHI_API void ClearAllShaderResources()
Definition D3D11RHI.cpp:318
D3D11RHI_API TRefCountPtr< ID3D11Texture2D > GetStagingTexture(FRHITexture *TextureRHI, FIntRect InRect, FIntRect &OutRect, FReadSurfaceDataFlags InFlags)
Definition D3D11RenderTarget.cpp:296
TRefCountPtr< FD3D11UnorderedAccessView > CurrentUAVs[D3D11_PS_CS_UAV_REGISTER_COUNT]
Definition D3D11RHIPrivate.h:770
D3D11RHI_API void GetBestSupportedMSAASetting(DXGI_FORMAT PlatformFormat, uint32 MSAACount, uint32 &OutBestMSAACount, uint32 &OutMSAAQualityLevels)
Definition D3D11Device.cpp:415
uint32 NumUAVs
Definition D3D11RHIPrivate.h:786
virtual D3D11RHI_API void RHIGetTextureMemoryStats(FTextureMemoryStats &OutStats) final override
Definition D3D11Texture.cpp:103
virtual D3D11RHI_API bool RHIGetRenderQueryResult(FRHIRenderQuery *RenderQuery, uint64 &OutResult, bool bWait, uint32 GPUIndex=INDEX_NONE) final override
Definition D3D11Query.cpp:103
AGSContext * AmdAgsContext
Definition D3D11RHIPrivate.h:747
bool bDXGISupportsHDR
Definition D3D11RHIPrivate.h:714
virtual D3D11RHI_API void RHISetStreamSource(uint32 StreamIndex, FRHIBuffer *VertexBuffer, uint32 Offset) final override
Definition D3D11Commands.cpp:89
HANDLE ExceptionHandlerHandle
Definition D3D11RHIPrivate.h:903
virtual D3D11RHI_API void CommitComputeShaderConstants()
Definition D3D11Commands.cpp:1017
virtual D3D11RHI_API void RHIEndUpdateTexture3D(FRHICommandListBase &RHICmdList, FUpdateTexture3DData &UpdateData) final override
Definition D3D11Texture.cpp:1313
virtual D3D11RHI_API void RHIUpdateUniformBuffer(FRHICommandListBase &RHICmdList, FRHIUniformBuffer *UniformBufferRHI, const void *Contents) final override
Definition D3D11UniformBuffer.cpp:296
virtual D3D11RHI_API IDXGISwapChain * RHIGetSwapChain(FRHIViewport *InViewport) const final override
Definition D3D11RHI.cpp:642
virtual D3D11RHI_API void CleanupD3DDevice()
Definition D3D11Device.cpp:647
virtual D3D11RHI_API FRHILockTextureResult RHILockTexture(FRHICommandListImmediate &RHICmdList, const FRHILockTextureArgs &Arguments) final override
Definition D3D11Texture.cpp:1186
D3D11RHI_API FD3D11Texture * CreateTextureFromResource(bool bTextureArray, bool bCubeTexture, EPixelFormat Format, ETextureCreateFlags TexCreateFlags, const FClearValueBinding &ClearValueBinding, ID3D11Texture2D *TextureResource)
Definition D3D11Texture.cpp:1329
D3D11RHI_API void ReadSurfaceDataNoMSAARaw(FRHITexture *TextureRHI, FIntRect Rect, TArray< uint8 > &OutData, FReadSurfaceDataFlags InFlags)
Definition D3D11RenderTarget.cpp:371
D3D11RHI_API FD3D11Texture * FinalizeCreateTextureInternal(FD3D11Texture *Texture, const FRHITextureDesc &InDesc, TConstArrayView< uint8 > InitialData)
Definition D3D11Texture.cpp:809
virtual D3D11RHI_API void RHIFinalizeContext(FRHIFinalizeContextArgs &&Args, TRHIPipelineArray< IRHIPlatformCommandList * > &Output) final override
Definition D3D11Commands.cpp:1423
void BeginRecursiveCommand()
Definition D3D11RHIPrivate.h:650
FD3D11ViewableResource * CurrentResourceBoundAsIB
Definition D3D11RHIPrivate.h:782
virtual D3D11RHI_API void RHIBlockUntilGPUIdle() final override
Definition D3D11Commands.cpp:1298
D3D11RHI_API void InternalSetUAVVSPS(uint32 BindIndex, FD3D11UnorderedAccessView *UnorderedAccessViewRHI)
Definition D3D11Commands.cpp:647
virtual D3D11RHI_API void RHISetStaticUniformBuffer(FUniformBufferStaticSlot Slot, FRHIUniformBuffer *Buffer) final override
Definition D3D11Commands.cpp:349
virtual D3D11RHI_API FRHICalcTextureSizeResult RHICalcTexturePlatformSize(FRHITextureDesc const &Desc, uint32 FirstMipIndex) final override
Definition D3D11Texture.cpp:93
D3D11RHI_API bool IsQuadBufferStereoEnabled()
Definition WindowsD3D11Device.cpp:984
virtual D3D11RHI_API FTextureRHIRef AsyncReallocateTexture2D_RenderThread(class FRHICommandListImmediate &RHICmdList, FRHITexture *Texture2D, int32 NewMipCount, int32 NewSizeX, int32 NewSizeY, FThreadSafeCounter *RequestStatus) final override
Definition D3D11Texture.cpp:999
virtual D3D11RHI_API FShaderResourceViewRHIRef RHICreateShaderResourceView(class FRHICommandListBase &RHICmdList, FRHIViewableResource *Resource, FRHIViewDesc const &ViewDesc) final override
Definition D3D11SRV.cpp:159
TArray< FRHIUniformBuffer * > StaticUniformBuffers
Definition D3D11RHIPrivate.h:883
virtual D3D11RHI_API void RHIEndRenderPass() final override
Definition D3D11RenderTarget.cpp:867
virtual void RHIEnableDepthBoundsTest(bool bEnable) final override
Definition D3D11RHIPrivate.h:568
D3D11RHI_API void EnableUAVOverlap()
Definition D3D11Commands.cpp:1476
TOptional< FTimestampCalibration > TimestampCalibration
Definition D3D11RHIPrivate.h:872
virtual D3D11RHI_API FVertexDeclarationRHIRef RHICreateVertexDeclaration(const FVertexDeclarationElementList &Elements) final override
Definition D3D11VertexDeclaration.cpp:109
virtual D3D11RHI_API void RHISetDepthStencilState(FRHIDepthStencilState *NewState, uint32 StencilRef) final override
Definition D3D11Commands.cpp:570
TMap< FD3D11LockedKey, FD3D11LockedData > FD3D11LockTracker
Definition D3D11RHIPrivate.h:368
virtual D3D11RHI_API FGeometryShaderRHIRef RHICreateGeometryShader(TArrayView< const uint8 > Code, const FSHAHash &Hash) final override
Definition D3D11Shaders.cpp:153
D3D11RHI_API bool SetupDisplayHDRMetaData()
Definition WindowsD3D11Device.cpp:471
static FD3D11Texture * ResourceCast(FRHITexture *Texture)
Definition D3D11RHIPrivate.h:395
virtual D3D11RHI_API void * RHIGetNativeCommandBuffer() final override
Definition D3D11Device.cpp:797
D3D11RHI_API void ReleasePooledUniformBuffers()
Definition D3D11UniformBuffer.cpp:395
virtual D3D11RHI_API void RHIHandleDisplayChange() final override
Definition WindowsD3D11Device.cpp:566
D3D11RHI_API void ValidateExclusiveDepthStencilAccess(FExclusiveDepthStencil Src) const
Definition D3D11Commands.cpp:540
virtual D3D11RHI_API FRenderQueryRHIRef RHICreateRenderQuery(ERenderQueryType QueryType) final override
Definition D3D11Query.cpp:71
FD3D11RenderQuery * First
Definition D3D11RHIPrivate.h:794
FComputeShaderRHIRef CurrentComputeShader
Definition D3D11RHIPrivate.h:899
virtual D3D11RHI_API FPixelShaderRHIRef RHICreatePixelShader(TArrayView< const uint8 > Code, const FSHAHash &Hash) final override
Definition D3D11Shaders.cpp:180
virtual D3D11RHI_API void RHICopyBufferRegion(FRHIBuffer *DestBuffer, uint64 DstOffset, FRHIBuffer *SourceBuffer, uint64 SrcOffset, uint64 NumBytes) final override
Definition D3D11Texture.cpp:1747
TRefCountPtr< FD3D11Texture > CurrentDepthTexture
Definition D3D11RHIPrivate.h:779
static FD3D11DynamicRHI & Get()
Definition D3D11RHIPrivate.h:387
virtual D3D11RHI_API ID3D11ShaderResourceView * RHIGetShaderResourceView(FRHITexture *InTexture) const final override
Definition D3D11RHI.cpp:678
virtual D3D11RHI_API void RHISetRasterizerState(FRHIRasterizerState *NewState) final override
Definition D3D11Commands.cpp:99
TRefCountPtr< FD3D11ConstantBuffer > GSConstantBuffer
Definition D3D11RHIPrivate.h:894
TRefCountPtr< FD3D11DeviceContext > Direct3DDeviceIMContext
Definition D3D11RHIPrivate.h:717
struct FD3D11DynamicRHI::FProfiler Profiler
virtual D3D11RHI_API void RHISetBlendState(FRHIBlendState *NewState, const FLinearColor &BlendFactor) final override
Definition D3D11Commands.cpp:584
virtual D3D11RHI_API void RHIUnmapStagingSurface(FRHITexture *Texture, uint32 GPUIndex=0) final override
Definition D3D11RenderTarget.cpp:611
void BindUniformBuffer(uint32 BufferIndex, FRHIUniformBuffer *BufferRHI)
Definition D3D11Commands.cpp:106
virtual D3D11RHI_API void RHIUpdateTexture3D(FRHICommandListBase &RHICmdList, FRHITexture *Texture, uint32 MipIndex, const struct FUpdateTextureRegion3D &UpdateRegion, uint32 SourceRowPitch, uint32 SourceDepthPitch, const uint8 *SourceData) final override
Definition D3D11Texture.cpp:1284
virtual D3D11RHI_API void RHIWriteGPUFence_TopOfPipe(FRHICommandListBase &RHICmdList, FRHIGPUFence *FenceRHI) final override
Definition D3D11Commands.cpp:1849
void ApplyStaticUniformBuffers(TRHIShader *Shader)
Definition D3D11Commands.cpp:120
bool bDiscardSharedConstants
Definition D3D11RHIPrivate.h:889
int32 MaxBoundVertexBufferIndex
Definition D3D11RHIPrivate.h:784
virtual D3D11RHI_API FTextureRHIRef RHICreateTexture2DFromResource(EPixelFormat Format, ETextureCreateFlags TexCreateFlags, const FClearValueBinding &ClearValueBinding, ID3D11Texture2D *Resource) final override
Definition D3D11Texture.cpp:1579
D3D11RHI_API void InitConstantBuffers()
Definition WindowsD3D11ConstantBuffer.cpp:106
D3D11RHI_API bool GetQueryData(ID3D11Query *Query, void *Data, SIZE_T DataSize, bool bTimestamp, bool bWait, bool bStallRHIThread)
Definition D3D11Query.cpp:336
virtual D3D11RHI_API void RHIRegisterWork(uint32 NumPrimitives) final override
Definition D3D11RHI.cpp:684
virtual D3D11RHI_API void RHISetStencilRef(uint32 StencilRef) final override
Definition D3D11Commands.cpp:579
uint32 UAVSChanged
Definition D3D11RHIPrivate.h:774
virtual D3D11RHI_API FGPUFenceRHIRef RHICreateGPUFence(const FName &Name) final override
Definition D3D11Commands.cpp:1859
virtual D3D11RHI_API void RHIReleaseTransition(FRHITransition *Transition) final override
Definition D3D11Commands.cpp:1564
virtual D3D11RHI_API void RHIEndTransitions(TArrayView< const FRHITransition * > Transitions) override final
Definition D3D11Commands.cpp:1573
virtual D3D11RHI_API void * LockBuffer_BottomOfPipe(FRHICommandListBase &RHICmdList, FRHIBuffer *Buffer, uint32 Offset, uint32 Size, EResourceLockMode LockMode) final override
Definition D3D11Buffer.cpp:217
virtual D3D11RHI_API void Init() override
Definition WindowsD3D11Device.cpp:979
FD3D11DeviceContext * GetDeviceContext() const
Definition D3D11RHIPrivate.h:625
TArray< FD3D11Viewport * > Viewports
Definition D3D11RHIPrivate.h:737
uint32 UAVBindCount
Definition D3D11RHIPrivate.h:773
void SetResourcesFromTables(const ShaderType *RESTRICT)
virtual D3D11RHI_API void RHIDispatchIndirectComputeShader(FRHIBuffer *ArgumentBuffer, uint32 ArgumentOffset) final override
Definition D3D11Commands.cpp:186
virtual D3D11RHI_API class IRHICommandContext * RHIGetDefaultContext() final override
Definition D3D11Commands.cpp:1407
D3D11RHI_API bool PollQueryResultsForEndFrame(FD3D11RenderQuery *Query)
Definition D3D11Query.cpp:314
virtual D3D11RHI_API void RHITick(float DeltaTime) final override
Definition D3D11Viewport.cpp:741
virtual D3D11RHI_API void RHIUnlockStagingBuffer(FRHIStagingBuffer *StagingBuffer) final override
Definition D3D11Commands.cpp:1695
virtual D3D11RHI_API FBlendStateRHIRef RHICreateBlendState(const FBlendStateInitializerRHI &Initializer) final override
Definition D3D11State.cpp:269
virtual D3D11RHI_API void RHICopyToStagingBuffer(FRHIBuffer *SourceBuffer, FRHIStagingBuffer *DestinationStagingBuffer, uint32 Offset, uint32 NumBytes) final override
Definition D3D11Commands.cpp:1645
virtual D3D11RHI_API void RHISetShaderUnbinds(FRHIComputeShader *Shader, TConstArrayView< FRHIShaderParameterUnbind > InUnbinds) final override
Definition D3D11Commands.cpp:514
virtual D3D11RHI_API void RHIDrawIndexedPrimitiveIndirect(FRHIBuffer *IndexBuffer, FRHIBuffer *ArgumentBuffer, uint32 ArgumentOffset) final override
Definition D3D11Commands.cpp:1219
D3D11RHI_API void FinalizeCreateTexture2DInternal(FD3D11Texture *Texture, TConstArrayView< D3D11_SUBRESOURCE_DATA > InitialData)
Definition D3D11Texture.cpp:532
virtual D3D11RHI_API FUniformBufferRHIRef RHICreateUniformBuffer(const void *Contents, const FRHIUniformBufferLayout *Layout, EUniformBufferUsage Usage, EUniformBufferValidation Validation) final override
Definition D3D11UniformBuffer.cpp:170
virtual D3D11RHI_API FRHITextureInitializer RHICreateTextureInitializer(FRHICommandListBase &RHICmdList, const FRHITextureCreateDesc &CreateDesc) final override
Definition D3D11Texture.cpp:835
TRefCountPtr< FD3D11ConstantBuffer > VSConstantBuffer
Definition D3D11RHIPrivate.h:892
virtual D3D11RHI_API uint32 RHIComputeMemorySize(FRHITexture *TextureRHI) final override
Definition D3D11Texture.cpp:937
TRefCountPtr< IDXGIFactory1 > DXGIFactory1
Definition D3D11RHIPrivate.h:708
D3D11RHI_API void CommitGraphicsResourceTables()
Definition D3D11Commands.cpp:1040
FD3D11RenderQuery * Last
Definition D3D11RHIPrivate.h:795
virtual D3D11RHI_API FUnorderedAccessViewRHIRef RHICreateUnorderedAccessView(class FRHICommandListBase &RHICmdList, FRHIViewableResource *Resource, FRHIViewDesc const &ViewDesc) final override
Definition D3D11UAV.cpp:129
D3D11RHI_API FD3D11Buffer * BeginCreateBufferInternal(const FRHIBufferCreateDesc &CreateDesc)
Definition D3D11Buffer.cpp:99
virtual D3D11RHI_API FTextureRHIRef RHIAsyncReallocateTexture2D(FRHITexture *Texture2D, int32 NewMipCount, int32 NewSizeX, int32 NewSizeY, FThreadSafeCounter *RequestStatus) final override
Definition D3D11Texture.cpp:978
D3D11RHI_API void SetRenderTargets(uint32 NumSimultaneousRenderTargets, const FRHIRenderTargetView *NewRenderTargets, const FRHIDepthRenderTargetView *NewDepthStencilTarget)
Definition D3D11Commands.cpp:794
virtual void RHISetDepthBounds(float MinDepth, float MaxDepth) final override
Definition D3D11RHIPrivate.h:575
virtual D3D11RHI_API void RHIDrawIndexedPrimitive(FRHIBuffer *IndexBuffer, int32 BaseVertexIndex, uint32 FirstInstance, uint32 NumVertices, uint32 StartIndex, uint32 NumPrimitives, uint32 NumInstances) final override
Definition D3D11Commands.cpp:1175
D3D11RHI_API uint32 GetMaxMSAAQuality(uint32 SampleCount)
Definition D3D11Device.cpp:430
virtual D3D11RHI_API void RHIReadSurfaceData(FRHITexture *Texture, FIntRect Rect, TArray< FColor > &OutData, FReadSurfaceDataFlags InFlags) final override
Definition D3D11RenderTarget.cpp:412
virtual D3D11RHI_API void RHISetComputeShader(FRHIComputeShader *ComputeShader) final override
Definition D3D11Commands.cpp:149
ID3D11UnorderedAccessView * UAVBound[D3D11_PS_CS_UAV_REGISTER_COUNT]
Definition D3D11RHIPrivate.h:771
TRefCountPtr< FD3D11Device > Direct3DDevice
Definition D3D11RHIPrivate.h:728
FDisplayInformationArray DisplayList
Definition D3D11RHIPrivate.h:901
FExclusiveDepthStencil CurrentDSVAccessType
Definition D3D11RHIPrivate.h:886
virtual const TCHAR * GetName() override
Definition D3D11RHIPrivate.h:383
TRefCountPtr< ID3D11DepthStencilView > CurrentDepthStencilTarget
Definition D3D11RHIPrivate.h:778
virtual D3D11RHI_API FTextureRHIRef RHIAsyncCreateTexture2D(uint32 SizeX, uint32 SizeY, uint8 Format, uint32 NumMips, ETextureCreateFlags Flags, ERHIAccess InResourceState, void **InitialMipData, uint32 NumInitialMips, const TCHAR *DebugName, FGraphEventRef &OutCompletionEvent) final override
Definition D3D11Texture.cpp:877
ID3D11Device * GetDevice() const
Definition D3D11RHIPrivate.h:621
uint32 CurrentRTVOverlapMask
Definition D3D11RHIPrivate.h:775
static FORCEINLINE TD3D11ResourceTraits< TRHIType >::TConcreteType * ResourceCast(TRHIType *Resource)
Definition D3D11RHIPrivate.h:390
virtual D3D11RHI_API void RHIAsyncCopyTexture2DCopy(FRHITexture *NewTexture2DRHI, FRHITexture *Texture2DRHI, int32 NewMipCount, int32 NewSizeX, int32 NewSizeY, FThreadSafeCounter *RequestStatus)
Definition D3D11Texture.cpp:948
bool RemoveLockedData(const FD3D11LockedKey &Key, FD3D11LockedData &OutLockedData)
Definition D3D11RHIPrivate.h:641
virtual D3D11RHI_API DXGI_FORMAT RHIGetSwapChainFormat(EPixelFormat InFormat) const final override
Definition D3D11RHI.cpp:648
virtual D3D11RHI_API void RHIBeginUAVOverlap() final override
Definition D3D11Commands.cpp:1592
D3D11RHI_API TOptional< FTimestampCalibration > CalibrateTimers()
Definition D3D11Query.cpp:437
virtual D3D11RHI_API void RHICreateTransition(FRHITransition *Transition, const FRHITransitionCreateInfo &CreateInfo) final override
Definition D3D11Commands.cpp:1546
int32 MaxBoundShaderResourcesIndex[SF_NumStandardFrequencies]
Definition D3D11RHIPrivate.h:783
FD3D11Adapter Adapter
Definition D3D11RHIPrivate.h:920
virtual D3D11RHI_API ID3D11DeviceContext * RHIGetDeviceContext() const final override
Definition D3D11RHI.cpp:632
virtual D3D11RHI_API ~FD3D11DynamicRHI()
Definition D3D11Device.cpp:241
uint16 DirtyUniformBuffers[SF_NumStandardFrequencies]
Definition D3D11RHIPrivate.h:881
virtual D3D11RHI_API void RHISetGraphicsPipelineState(FRHIGraphicsPipelineState *GraphicsState, uint32 StencilRef, bool bApplyAdditionalState) final override
Definition D3D11Commands.cpp:132
virtual D3D11RHI_API void RHIEndUAVOverlap() final override
Definition D3D11Commands.cpp:1597
virtual D3D11RHI_API void Shutdown() override
Definition D3D11Device.cpp:251
virtual D3D11RHI_API FComputeShaderRHIRef RHICreateComputeShader(TArrayView< const uint8 > Code, const FSHAHash &Hash) final override
Definition D3D11Shaders.cpp:207
virtual D3D11RHI_API void RHIWriteGPUFence(FRHIGPUFence *Fence) final override
Definition D3D11Commands.cpp:1854
virtual D3D11RHI_API FVertexShaderRHIRef RHICreateVertexShader(TArrayView< const uint8 > Code, const FSHAHash &Hash) final override
Definition D3D11Shaders.cpp:122
virtual D3D11RHI_API ID3D11RenderTargetView * RHIGetRenderTargetView(FRHITexture *InTexture, int32 InMipIndex=0, int32 InArraySliceIndex=-1) const final override
Definition D3D11RHI.cpp:672
TRefCountPtr< FD3D11ConstantBuffer > CSConstantBuffer
Definition D3D11RHIPrivate.h:895
D3D_FEATURE_LEVEL FeatureLevel
Definition D3D11RHIPrivate.h:740
D3D11RHI_API void CommitRenderTargetsAndUAVs()
Definition D3D11Commands.cpp:594
TRefCountPtr< ID3D11RenderTargetView > CurrentRenderTargets[D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT]
Definition D3D11RHIPrivate.h:769
virtual D3D11RHI_API FStagingBufferRHIRef RHICreateStagingBuffer() final override
Definition D3D11Commands.cpp:1604
D3D11RHI_API void DisableUAVOverlap()
Definition D3D11Commands.cpp:1512
virtual D3D11RHI_API void RHICopyTexture(FRHITexture *SourceTexture, FRHITexture *DestTexture, const FRHICopyTextureInfo &CopyInfo) final override
Definition D3D11Texture.cpp:1677
virtual D3D11RHI_API ID3D11Device * RHIGetDevice() const final override
Definition D3D11RHI.cpp:627
@ MAX_UNIFORM_BUFFERS_PER_SHADER_STAGE
Definition D3D11RHIPrivate.h:875
virtual D3D11RHI_API void RHIClearUAVFloat(FRHIUnorderedAccessView *UnorderedAccessViewRHI, const FVector4f &Values) final override
Definition D3D11UAV.cpp:257
virtual D3D11RHI_API void RHIEndDrawingViewport(FRHIViewport *Viewport, bool bPresent, bool bLockToVsync) final override
Definition D3D11Viewport.cpp:756
D3D11RHI_API EPixelFormat GetDisplayFormat(EPixelFormat InPixelFormat) const
Definition D3D11Device.cpp:819
uint32 ZeroBufferSize
Definition D3D11RHIPrivate.h:761
virtual D3D11RHI_API void RHISetShaderParameters(FRHIComputeShader *Shader, TConstArrayView< uint8 > InParametersData, TConstArrayView< FRHIShaderParameter > InParameters, TConstArrayView< FRHIShaderParameterResource > InResourceParameters, TConstArrayView< FRHIShaderParameterResource > InBindlessParameters) final override
Definition D3D11Commands.cpp:466
virtual D3D11RHI_API FTextureRHIRef RHICreateTextureCubeFromResource(EPixelFormat Format, ETextureCreateFlags TexCreateFlags, const FClearValueBinding &ClearValueBinding, ID3D11Texture2D *Resource) final override
Definition D3D11Texture.cpp:1589
virtual D3D11RHI_API void RHIBeginTransitions(TArrayView< const FRHITransition * > Transitions) override final
Definition D3D11Commands.cpp:1569
uint32 NumSimultaneousRenderTargets
Definition D3D11RHIPrivate.h:785
virtual D3D11RHI_API void RHIDrawPrimitive(uint32 BaseVertexIndex, uint32 NumPrimitives, uint32 NumInstances) final override
Definition D3D11Commands.cpp:1104
void * ZeroBuffer
Definition D3D11RHIPrivate.h:760
D3D11RHI_API void ClearState()
Definition D3D11RHI.cpp:98
FD3DGPUProfiler GPUProfilingData
Definition D3D11RHIPrivate.h:917
virtual D3D11RHI_API void FlushPendingLogs() override
Definition WindowsD3D11Device.cpp:994
bool bRenderDoc
Definition D3D11RHIPrivate.h:905
D3D11RHI_API FD3D11Buffer * CreateBufferInternal(const FRHIBufferCreateDesc &CreateDesc, TConstArrayView< uint8 > InitialData)
Definition D3D11Buffer.cpp:152
D3D11RHI_API void ReadSurfaceDataMSAARaw(FRHITexture *TextureRHI, FIntRect Rect, TArray< uint8 > &OutData, FReadSurfaceDataFlags InFlags)
Definition D3D11RenderTarget.cpp:465
D3D11RHI_API FD3D11Texture * CreateTextureInternal(const FRHITextureCreateDesc &CreateDesc, TConstArrayView< uint8 > InitialData)
Definition D3D11Texture.cpp:826
void SetShaderUnbindsCommon(TConstArrayView< FRHIShaderParameterUnbind > InUnbinds)
Definition D3D11Commands.cpp:493
virtual D3D11RHI_API void RHIReplaceResources(FRHICommandListBase &RHICmdList, TArray< FRHIResourceReplaceInfo > &&ReplaceInfos) final override
Definition D3D11Buffer.cpp:328
bool bUAVOverlapEnabled
Definition D3D11RHIPrivate.h:1004
D3D11RHI_API void UpdateMemoryStats()
Definition D3D11RHI.cpp:600
FCriticalSection LockTrackerCS
Definition D3D11RHIPrivate.h:734
virtual D3D11RHI_API void UnlockBuffer_BottomOfPipe(FRHICommandListBase &RHICmdList, FRHIBuffer *Buffer) final override
Definition D3D11Buffer.cpp:290
virtual D3D11RHI_API void RHISetBoundShaderState(FRHIBoundShaderState *BoundShaderState) final override
Definition D3D11Commands.cpp:299
virtual D3D11RHI_API ID3D11Buffer * RHIGetResource(FRHIBuffer *InBuffer) const final override
Definition D3D11RHI.cpp:654
uint32 UAVBindFirst
Definition D3D11RHIPrivate.h:772
virtual D3D11RHI_API void * RHIGetNativeInstance() final override
Definition D3D11Device.cpp:792
virtual D3D11RHI_API void RHIVerifyResult(ID3D11Device *Device, HRESULT Result, const ANSICHAR *Code, const ANSICHAR *Filename, uint32 Line) const final override
Definition D3D11RHI.cpp:691
D3D11RHI_API void ConditionalClearShaderResource(FD3D11ViewableResource *Resource, bool bCheckBoundInputAssembler)
Definition D3D11RHI.cpp:274
D3D11RHI_API void InternalSetUAVCS(uint32 BindIndex, FD3D11UnorderedAccessView *UnorderedAccessViewRHI)
Definition D3D11Commands.cpp:634
virtual D3D11RHI_API void RHIGetDisplaysInformation(FDisplayInformationArray &OutDisplayInformation) final override
Definition WindowsD3D11Viewport.cpp:450
virtual D3D11RHI_API void RHIDrawPrimitiveIndirect(FRHIBuffer *ArgumentBuffer, uint32 ArgumentOffset) final override
Definition D3D11Commands.cpp:1130
virtual D3D11RHI_API bool RHIGetAvailableResolutions(FScreenResolutionArray &Resolutions, bool bIgnoreRefreshRate) final override
Definition WindowsD3D11Device.cpp:1694
uint32 PresentCounter
Definition D3D11RHIPrivate.h:789
struct FD3D11DynamicRHI::@2464 ActiveQueries
virtual D3D11RHI_API IDXGIAdapter * RHIGetAdapter() const final override
Definition D3D11RHI.cpp:637
TRefCountPtr< FD3D11ConstantBuffer > PSConstantBuffer
Definition D3D11RHIPrivate.h:893
virtual D3D11RHI_API void RHISetScissorRect(bool bEnable, uint32 MinX, uint32 MinY, uint32 MaxX, uint32 MaxY) final override
Definition D3D11Commands.cpp:270
D3D11RHI_API void DisableQuadBufferStereo()
Definition WindowsD3D11Device.cpp:989
virtual D3D11RHI_API int64 RHIGetResourceMemorySize(FRHITexture *InTexture) const final override
Definition D3D11RHI.cpp:666
void SetShaderParametersCommon(FD3D11ConstantBuffer *StageConstantBuffer, TConstArrayView< uint8 > InParametersData, TConstArrayView< FRHIShaderParameter > InParameters, TConstArrayView< FRHIShaderParameterResource > InResourceParameters)
Definition D3D11Commands.cpp:419
virtual D3D11RHI_API FViewportRHIRef RHICreateViewport(void *WindowHandle, uint32 SizeX, uint32 SizeY, bool bIsFullscreen, EPixelFormat PreferredPixelFormat) override
Definition D3D11Viewport.cpp:704
D3D11RHI_API void CommitComputeResourceTables(FD3D11ComputeShader *ComputeShader)
Definition D3D11Commands.cpp:1097
virtual D3D11RHI_API void RHIEndRenderQuery(FRHIRenderQuery *RenderQuery) final override
Definition D3D11Query.cpp:97
virtual D3D11RHI_API void RHIClearUAVUint(FRHIUnorderedAccessView *UnorderedAccessViewRHI, const FUintVector4 &Values) final override
Definition D3D11UAV.cpp:263
virtual D3D11RHI_API void RHIDrawIndexedIndirect(FRHIBuffer *IndexBufferRHI, FRHIBuffer *ArgumentsBufferRHI, int32 DrawArgumentsIndex, uint32 NumInstances) final override
Definition D3D11Commands.cpp:1149
virtual D3D11RHI_API void InitD3DDevice()
Definition WindowsD3D11Device.cpp:1157
TGlobalResource< TBoundShaderStateHistory< 10000 > > BoundShaderStateHistory
Definition D3D11RHIPrivate.h:898
FD3D11LockTracker LockTracker
Definition D3D11RHIPrivate.h:733
D3D11RHI_API FD3D11Texture * BeginCreateTextureInternal(const FRHITextureCreateDesc &CreateDesc)
Definition D3D11Texture.cpp:245
virtual D3D11RHI_API void RHISetViewport(float MinX, float MinY, float MinZ, float MaxX, float MaxY, float MaxZ) final override
Definition D3D11Commands.cpp:211
virtual D3D11RHI_API void * RHILockStagingBuffer(FRHIStagingBuffer *StagingBuffer, FRHIGPUFence *Fence, uint32 Offset, uint32 SizeRHI) final override
Definition D3D11Commands.cpp:1688
FD3D11ViewableResource * CurrentResourcesBoundAsVBs[D3D11_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT]
Definition D3D11RHIPrivate.h:781
D3D11RHI_API void CommitRenderTargets(bool bClearUAVS)
Definition D3D11Commands.cpp:602
virtual D3D11RHI_API FTextureRHIRef RHICreateAliasedTexture(FTextureRHIRef &SourceTexture) final override
Definition D3D11Texture.cpp:1668
D3D11RHI_API void FinalizeCreateTexture3DInternal(FD3D11Texture *Texture, TConstArrayView< D3D11_SUBRESOURCE_DATA > InitialData)
Definition D3D11Texture.cpp:698
uint32 AvailableMSAAQualities[DX_MAX_MSAA_COUNT+1]
Definition D3D11RHIPrivate.h:757
virtual D3D11RHI_API void RHISetMultipleViewports(uint32 Count, const FViewportBounds *Data) final override
Definition D3D11Shaders.cpp:234
virtual D3D11RHI_API void RHIEndFrame(const FRHIEndFrameArgs &Args) final override
Definition D3D11RHI.cpp:26
virtual D3D11RHI_API void RHIBeginRenderQuery(FRHIRenderQuery *RenderQuery) final override
Definition D3D11Query.cpp:92
virtual D3D11RHI_API void RHIDispatchComputeShader(uint32 ThreadGroupCountX, uint32 ThreadGroupCountY, uint32 ThreadGroupCountZ) final override
Definition D3D11Commands.cpp:162
void AddLockedData(const FD3D11LockedKey &Key, const FD3D11LockedData &LockedData)
Definition D3D11RHIPrivate.h:635
FD3D11StateCache StateCache
Definition D3D11RHIPrivate.h:730
static void ResolveTextureUsingShader(FD3D11DynamicRHI *const This, FD3D11Texture *const SourceTexture, FD3D11Texture *const DestTexture, ID3D11RenderTargetView *const DestTextureRTV, ID3D11DepthStencilView *const DestTextureDSV, D3D11_TEXTURE2D_DESC const &ResolveTargetDesc, FResolveRect const &SourceRect, FResolveRect const &DestRect, typename TPixelShader::FParameter const PixelShaderParameter)
Definition D3D11RenderTarget.cpp:51
virtual D3D11RHI_API FDepthStencilStateRHIRef RHICreateDepthStencilState(const FDepthStencilStateInitializerRHI &Initializer) final override
Definition D3D11State.cpp:222
uint32 CurrentUAVMask
Definition D3D11RHIPrivate.h:776
virtual D3D11RHI_API void RHISetStereoViewport(float LeftMinX, float RightMinX, float LeftMinY, float RightMinY, float MinZ, float LeftMaxX, float RightMaxX, float LeftMaxY, float RightMaxY, float MaxZ) override
Definition D3D11Commands.cpp:237
virtual D3D11RHI_API void RHIResizeViewport(FRHIViewport *Viewport, uint32 SizeX, uint32 SizeY, bool bIsFullscreen) final override
Definition D3D11Viewport.cpp:718
EPrimitiveType PrimitiveType
Definition D3D11RHIPrivate.h:767
virtual D3D11RHI_API void RHIUpdateTexture2D(FRHICommandListBase &RHICmdList, FRHITexture *Texture, uint32 MipIndex, const struct FUpdateTextureRegion2D &UpdateRegion, uint32 SourcePitch, const uint8 *SourceData) final override
Definition D3D11Texture.cpp:1224
virtual D3D11RHI_API void RHISetStaticUniformBuffers(const FUniformBufferStaticBindings &InUniformBuffers) final override
Definition D3D11Commands.cpp:339
virtual D3D11RHI_API void RHIGetSupportedResolution(uint32 &Width, uint32 &Height) final override
Definition D3D11Device.cpp:347
virtual D3D11RHI_API void RHIRead3DSurfaceFloatData(FRHITexture *Texture, FIntRect Rect, FIntPoint ZMinMax, TArray< FFloat16Color > &OutData) final override
Definition D3D11RenderTarget.cpp:741
virtual D3D11RHI_API IRHIComputeContext * RHIGetCommandContext(ERHIPipeline Pipeline, FRHIGPUMask GPUMask) final override
Definition D3D11Commands.cpp:1412
IDXGIFactory1 * GetFactory() const
Definition D3D11RHIPrivate.h:630
const FD3D11Adapter & GetAdapter() const
Definition D3D11RHIPrivate.h:913
void RegisterGPUWork(uint32 NumPrimitives=0, uint32 NumVertices=0)
Definition D3D11RHIPrivate.h:909
virtual D3D11RHI_API FSamplerStateRHIRef RHICreateSamplerState(const FSamplerStateInitializerRHI &Initializer) final override
Definition D3D11State.cpp:137
virtual D3D11RHI_API FRHIBufferInitializer RHICreateBufferInitializer(FRHICommandListBase &RHICmdList, const FRHIBufferCreateDesc &CreateDesc) final override
Definition D3D11Buffer.cpp:159
FRHIUniformBuffer * BoundUniformBuffers[SF_NumStandardFrequencies][MAX_UNIFORM_BUFFERS_PER_SHADER_STAGE]
Definition D3D11RHIPrivate.h:878
D3D11RHI_API void SetRenderTargetsAndClear(const FRHISetRenderTargetsInfo &RenderTargetsInfo)
Definition D3D11Commands.cpp:919
FD3D11ViewableResource * CurrentResourcesBoundAsSRVs[SF_NumStandardFrequencies][D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT]
Definition D3D11RHIPrivate.h:780
D3D11RHI_API void PollQueryResults()
Definition D3D11Query.cpp:305
D3D11RHI_API void CommitUAVs()
Definition D3D11Commands.cpp:668
void RegisterGPUDispatch(FIntVector GroupCount)
Definition D3D11RHIPrivate.h:910
virtual D3D11RHI_API void RHIBindDebugLabelName(FRHICommandListBase &RHICmdList, FRHITexture *Texture, const TCHAR *Name) final override
Definition D3D11Texture.cpp:1320
D3D11RHI_API void FinalizeCreateBufferInternal(FD3D11Buffer *Buffer, TConstArrayView< uint8 > InitialData)
Definition D3D11Buffer.cpp:107
virtual D3D11RHI_API void RHIUnlockTexture(FRHICommandListImmediate &RHICmdList, const FRHILockTextureArgs &Arguments) final override
Definition D3D11Texture.cpp:1207
void SetShaderResourceView(FD3D11ViewableResource *Resource, ID3D11ShaderResourceView *SRV, int32 ResourceIndex)
Definition D3D11RHIPrivate.h:693
virtual D3D11RHI_API void RHIFlushResources() final override
Definition D3D11Device.cpp:782
bool bCurrentDepthStencilStateIsReadOnly
Definition D3D11RHIPrivate.h:764
Definition D3D11RHIPrivate.h:240
~FD3D11EventNodeFrame()
Definition D3D11RHIPrivate.h:253
virtual void LogDisjointQuery() override
Definition D3D11RHI.cpp:545
FD3D11EventNodeFrame(class FD3D11DynamicRHI *InRHI)
Definition D3D11RHIPrivate.h:243
virtual float GetRootTimingResults() override
Definition D3D11RHI.cpp:531
virtual void StartFrame() override
Definition D3D11RHI.cpp:517
virtual void EndFrame() override
Definition D3D11RHI.cpp:525
FD3D11BufferedGPUTiming RootEventTiming
Definition D3D11RHIPrivate.h:271
FD3D11DisjointTimeStampQuery DisjointQuery
Definition D3D11RHIPrivate.h:274
Definition D3D11RHIPrivate.h:203
virtual void StopTiming() override
Definition D3D11RHIPrivate.h:230
virtual ~FD3D11EventNode()
Definition D3D11RHIPrivate.h:213
FD3D11BufferedGPUTiming Timing
Definition D3D11RHIPrivate.h:235
FD3D11EventNode(const TCHAR *InName, FGPUProfilerEventNode *InParent, class FD3D11DynamicRHI *InRHI)
Definition D3D11RHIPrivate.h:205
virtual void StartTiming() override
Definition D3D11RHIPrivate.h:225
virtual float GetTiming() override
Definition D3D11RHI.cpp:479
Definition D3D11Util.h:135
Definition D3D11Resources.h:323
Definition D3D11StateCachePrivate.h:59
float DepthBoundsMax
Definition D3D11StateCachePrivate.h:63
float DepthBoundsMin
Definition D3D11StateCachePrivate.h:62
bool bDepthBoundsEnabled
Definition D3D11StateCachePrivate.h:61
Definition D3D11Resources.h:154
Definition D3D11Resources.h:557
Definition D3D11Resources.h:132
Definition D3D11Viewport.h:36
Definition DynamicRHI.h:206
Definition RHIResources.h:409
Definition Float16Color.h:13
Definition NameTypes.h:617
Definition RHIResources.h:696
Definition RHIResources.h:733
Definition RHIResources.h:1581
Definition RHICommandList.h:455
static FRHICommandListImmediate & GetImmediateCommandList()
Definition RHICommandList.h:5528
Definition RHIResources.h:1018
Definition RHIResources.h:4073
Definition RHIResources.h:686
Definition RHIResources.h:2387
Definition RHIResources.h:978
Definition RHIResources.h:1058
Definition RHIResources.h:947
Definition RHIResources.h:972
Definition RHIResources.h:679
Definition RHIResources.h:2444
Definition RHIResources.h:4018
Definition RHIResources.h:4167
Definition RHIResources.h:3981
Definition RHIResources.h:2153
Definition RHIResources.h:3294
Definition RHIResources.h:725
Definition RHIResources.h:954
Definition RHIResources.h:1265
Definition RHIResources.h:2515
Definition D3D11RHIPrivate.h:1040
uint32 GetNumEntries() const
Definition D3D11RHIPrivate.h:1219
FRange AllocRange(uint32 InSize)
Definition D3D11RHIPrivate.h:1167
void ReleaseRange(FRange In)
Definition D3D11RHIPrivate.h:1205
void OccupyRange(FRange InRange)
Definition D3D11RHIPrivate.h:1108
FRangeAllocator(uint32 TotalSize)
Definition D3D11RHIPrivate.h:1098
uint32 ComputeUnoccupiedSize() const
Definition D3D11RHIPrivate.h:1222
static void Test()
Definition D3D11RHIPrivate.h:1280
Definition RenderResource.h:37
Definition SecureHash.h:226
Definition ScopeLock.h:141
Definition ThreadSafeCounter.h:14
Definition DynamicRHI.h:1472
Definition RHIContext.h:903
Definition RHIContext.h:693
Definition RHIContext.h:257
UE::RHI::GPUProfiler::FEvent::FStats StatEvent
Definition RHIContext.h:567
Definition RHICore.Build.cs:7
Definition ArrayView.h:139
UE_REWRITE SizeType Num() const
Definition Array.h:1144
void RemoveAt(SizeType Index, EAllowShrinking AllowShrinking=UE::Core::Private::AllowShrinkingByDefault< AllocatorType >())
Definition Array.h:2083
UE_NODEBUG UE_FORCEINLINE_HINT SizeType Add(ElementType &&Item)
Definition Array.h:2696
UE_NODEBUG UE_FORCEINLINE_HINT bool Find(const ElementType &Item, SizeType &Index) const
Definition Array.h:1302
SizeType Insert(std::initializer_list< ElementType > InitList, const SizeType InIndex)
Definition Array.h:1875
Definition IConsoleManager.h:1792
Definition RenderResource.h:543
Definition IndirectArray.h:20
Definition UnrealString.h.inl:34
Definition RHICommandList.h:5170
Definition RHIPipeline.h:55
Definition RefCounting.h:454
UE_FORCEINLINE_HINT bool IsValid() const
Definition RefCounting.h:594
Definition GPUProfiler.h:310
Type
Definition RHIFeatureLevel.h:20
@ Num
Definition RHIFeatureLevel.h:54
Definition Voronoi.cpp:10
Definition AdvancedWidgetsModule.cpp:13
U16 Index
Definition radfft.cpp:71
Definition RHIResources.h:246
Definition D3D11RHIPrivate.h:324
bool bSoftwareAdapter
Definition D3D11RHIPrivate.h:334
FD3D11Adapter()
Definition D3D11RHIPrivate.h:340
D3D_FEATURE_LEVEL MaxSupportedFeatureLevel
Definition D3D11RHIPrivate.h:331
bool IsValid() const
Definition D3D11RHIPrivate.h:356
DXGI_ADAPTER_DESC DXGIAdapterDesc
Definition D3D11RHIPrivate.h:328
FD3D11Adapter(TRefCountPtr< IDXGIAdapter > InDXGIAdapter, bool bInSoftwareAdatper, const FD3D11DeviceBasicInfo &DeviceInfo)
Definition D3D11RHIPrivate.h:344
bool bUMA
Definition D3D11RHIPrivate.h:337
TRefCountPtr< IDXGIAdapter > DXGIAdapter
Definition D3D11RHIPrivate.h:326
Definition D3D11RHIPrivate.h:318
D3D_FEATURE_LEVEL MaxFeatureLevel
Definition D3D11RHIPrivate.h:319
bool bUMA
Definition D3D11RHIPrivate.h:320
Definition D3D11RHIPrivate.h:804
FD3D11RenderQuery * Ptr
Definition D3D11RHIPrivate.h:805
FEndFrameQuery(FEndFrameQuery &&Other)
Definition D3D11RHIPrivate.h:808
Definition D3D11RHIPrivate.h:802
struct FD3D11DynamicRHI::FProfiler::FFrame::FEndFrameQuery EndFrameQuery
FFrame()
Definition D3D11RHIPrivate.h:824
Definition D3D11RHIPrivate.h:800
TArray< FD3D11RenderQuery * > TimestampPool
Definition D3D11RHIPrivate.h:834
FFrame Current
Definition D3D11RHIPrivate.h:831
TQueue< TUniquePtr< FFrame > > Pending
Definition D3D11RHIPrivate.h:832
TArray< FD3D11RenderQuery * > TimestampPoolEndFrame
Definition D3D11RHIPrivate.h:835
Definition D3D11RHIPrivate.h:861
uint64 CPUFrequency
Definition D3D11RHIPrivate.h:863
uint64 GPUTimestamp
Definition D3D11RHIPrivate.h:865
uint64 GPUFrequency
Definition D3D11RHIPrivate.h:866
uint64 CPUTimestamp
Definition D3D11RHIPrivate.h:862
Definition D3D11RHIPrivate.h:91
static int64 GDedicatedVideoMemory
Definition D3D11RHIPrivate.h:93
static int64 GDedicatedSystemMemory
Definition D3D11RHIPrivate.h:96
static int64 GTotalGraphicsMemory
Definition D3D11RHIPrivate.h:102
static int64 GSharedSystemMemory
Definition D3D11RHIPrivate.h:99
Definition D3D11Util.h:171
Definition D3D11RHIPrivate.h:309
bool bUAVBarrier
Definition D3D11RHIPrivate.h:310
Definition D3D11RHIPrivate.h:282
TIndirectArray< FD3D11EventNodeFrame > GPUHitchEventNodeFrames
Definition D3D11RHIPrivate.h:289
virtual FGPUProfilerEventNode * CreateEventNode(const TCHAR *InName, FGPUProfilerEventNode *InParent) override
Definition D3D11RHIPrivate.h:293
class FD3D11DynamicRHI * D3D11RHI
Definition D3D11RHIPrivate.h:286
virtual void PopEvent() override
Definition D3D11RHI.cpp:511
FD3D11BufferedGPUTiming FrameTiming
Definition D3D11RHIPrivate.h:284
virtual void PushEvent(const TCHAR *Name, FColor Color) override
Definition D3D11RHI.cpp:506
void EndFrame()
Definition D3D11RHI.cpp:375
Definition RHIResources.h:1417
Definition RHIBufferInitializer.h:12
Definition DynamicRHI.h:120
Definition RHICommandList.h:183
Definition DynamicRHI.h:149
Definition DynamicRHI.h:198
Definition RHIResources.h:5248
Definition RHIShaderParameters.h:32
Definition RHIShaderParameters.h:354
Definition RHIShaderParameters.h:16
Definition RHIResources.h:1938
Definition RHIResources.h:1689
Definition RHITextureInitializer.h:50
Definition RHITransition.h:382
Definition RHITransition.h:475
Definition RHIResources.h:2648
Definition D3D11RHIPrivate.h:1044
bool operator==(const FRange &rhs) const
Definition D3D11RHIPrivate.h:1084
int32 GetStart()
Definition D3D11RHIPrivate.h:1086
uint32 ComputeSize() const
Definition D3D11RHIPrivate.h:1076
bool IsOccupied() const
Definition D3D11RHIPrivate.h:1075
void SetUnOccupied(int32 InStart, int32 InSize)
Definition D3D11RHIPrivate.h:1063
void SetOccupied(int32 InStart, int32 InSize)
Definition D3D11RHIPrivate.h:1053
FRange()
Definition D3D11RHIPrivate.h:1046
int32 GetEnd()
Definition D3D11RHIPrivate.h:1087
bool IsValid()
Definition D3D11RHIPrivate.h:1073
void MakeOccupied(int32 InSize)
Definition D3D11RHIPrivate.h:1081
void ExtendUnoccupied(int32 InSize)
Definition D3D11RHIPrivate.h:1079
void MakeUnOccupied()
Definition D3D11RHIPrivate.h:1082
Definition RHIResources.h:5209
Definition RHICommandList.h:220
Definition RHITypes.h:127
Definition RHITypes.h:155
Definition ID3D11DynamicRHI.h:16
Definition LinuxPlatformSplash.cpp:43
Definition D3D11Resources.h:569
Definition Optional.h:131
Definition GPUProfiler.h:25