UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
IVulkanDynamicRHI Struct Referenceabstract

#include <IVulkanDynamicRHI.h>

+ Inheritance diagram for IVulkanDynamicRHI:

Public Member Functions

virtual ERHIInterfaceType GetInterfaceType () const override
 
virtual uint32 RHIGetVulkanVersion () const =0
 
virtual VkInstance RHIGetVkInstance () const =0
 
virtual VkDevice RHIGetVkDevice () const =0
 
virtual const uint8RHIGetVulkanDeviceUUID () const =0
 
virtual VkPhysicalDevice RHIGetVkPhysicalDevice () const =0
 
virtual const VkAllocationCallbacksRHIGetVkAllocationCallbacks ()=0
 
virtual VkQueue RHIGetGraphicsVkQueue () const =0
 
virtual uint32 RHIGetGraphicsQueueIndex () const =0
 
virtual uint32 RHIGetGraphicsQueueFamilyIndex () const =0
 
virtual VkCommandBuffer RHIGetActiveVkCommandBuffer ()=0
 
virtual uint64 RHIGetGraphicsAdapterLUID (VkPhysicalDevice InPhysicalDevice) const =0
 
virtual bool RHIDoesAdapterMatchDevice (const void *InAdapterId) const =0
 
virtual voidRHIGetVkDeviceProcAddr (const char *InName) const =0
 
virtual voidRHIGetVkInstanceProcAddr (const char *InName) const =0
 
virtual voidRHIGetVkInstanceGlobalProcAddr (const char *InName) const =0
 
virtual VkFormat RHIGetSwapChainVkFormat (EPixelFormat InFormat) const =0
 
virtual bool RHISupportsEXTFragmentDensityMap2 () const =0
 
virtual TArray< VkExtensionPropertiesRHIGetAllInstanceExtensions () const =0
 
virtual TArray< VkExtensionPropertiesRHIGetAllDeviceExtensions (VkPhysicalDevice InPhysicalDevice) const =0
 
virtual TArray< FAnsiStringRHIGetLoadedDeviceExtensions () const =0
 
virtual FTextureRHIRef RHICreateTexture2DFromResource (EPixelFormat Format, uint32 SizeX, uint32 SizeY, uint32 NumMips, uint32 NumSamples, VkImage Resource, ETextureCreateFlags Flags, const FClearValueBinding &ClearValueBinding=FClearValueBinding::Transparent, const FVulkanRHIExternalImageDeleteCallbackInfo &ExternalImageDeleteCallbackInfo={})=0
 
virtual FTextureRHIRef RHICreateTexture2DArrayFromResource (EPixelFormat Format, uint32 SizeX, uint32 SizeY, uint32 ArraySize, uint32 NumMips, uint32 NumSamples, VkImage Resource, ETextureCreateFlags Flags, const FClearValueBinding &ClearValueBinding=FClearValueBinding::Transparent)=0
 
virtual FTextureRHIRef RHICreateTextureCubeFromResource (EPixelFormat Format, uint32 Size, bool bArray, uint32 ArraySize, uint32 NumMips, VkImage Resource, ETextureCreateFlags Flags, const FClearValueBinding &ClearValueBinding=FClearValueBinding::Transparent)=0
 
virtual VkImage RHIGetVkImage (FRHITexture *InTexture) const =0
 
virtual VkFormat RHIGetViewVkFormat (FRHITexture *InTexture) const =0
 
virtual FVulkanRHIAllocationInfo RHIGetAllocationInfo (FRHITexture *InTexture) const =0
 
virtual FVulkanRHIImageViewInfo RHIGetImageViewInfo (FRHITexture *InTexture) const =0
 
virtual FVulkanRHIAllocationInfo RHIGetAllocationInfo (FRHIBuffer *InBuffer) const =0
 
virtual void RHISetImageLayout (VkImage Image, VkImageLayout OldLayout, VkImageLayout NewLayout, const VkImageSubresourceRange &SubresourceRange)=0
 
virtual void RHISetUploadImageLayout (VkImage Image, VkImageLayout OldLayout, VkImageLayout NewLayout, const VkImageSubresourceRange &SubresourceRange)=0
 
virtual void RHIFinishExternalComputeWork (VkCommandBuffer InCommandBuffer)=0
 
virtual void RHIRegisterWork (uint32 NumPrimitives)=0
 
virtual void RHISubmitUploadCommandBuffer ()=0
 
virtual void RHIVerifyResult (VkResult Result, const ANSICHAR *VkFuntion, const ANSICHAR *Filename, uint32 Line)=0
 
virtual void RHIRunOnQueue (EVulkanRHIRunOnQueueType QueueType, TFunction< void(VkQueue)> &&CodeToRun, bool bWaitForSubmission)=0
 
- Public Member Functions inherited from FDynamicRHI
virtual RHI_API ~FDynamicRHI ()
 
virtual void Init ()=0
 
virtual void PostInit ()
 
virtual void Shutdown ()=0
 
virtual const TCHARGetName ()=0
 
virtual FDynamicRHIGetNonValidationRHI ()
 
void InitPixelFormatInfo (const TArray< uint32 > &PixelFormatBlockBytesIn)
 
virtual RHI_API void RHIEndFrame_RenderThread (FRHICommandListImmediate &RHICmdList)
 
virtual void RHIEndFrame (const FRHIEndFrameArgs &Args)=0
 
virtual FSamplerStateRHIRef RHICreateSamplerState (const FSamplerStateInitializerRHI &Initializer)=0
 
virtual FRasterizerStateRHIRef RHICreateRasterizerState (const FRasterizerStateInitializerRHI &Initializer)=0
 
virtual FDepthStencilStateRHIRef RHICreateDepthStencilState (const FDepthStencilStateInitializerRHI &Initializer)=0
 
virtual FBlendStateRHIRef RHICreateBlendState (const FBlendStateInitializerRHI &Initializer)=0
 
virtual FVertexDeclarationRHIRef RHICreateVertexDeclaration (const FVertexDeclarationElementList &Elements)=0
 
virtual FPixelShaderRHIRef RHICreatePixelShader (TArrayView< const uint8 > Code, const FSHAHash &Hash)=0
 
virtual FVertexShaderRHIRef RHICreateVertexShader (TArrayView< const uint8 > Code, const FSHAHash &Hash)=0
 
virtual FGeometryShaderRHIRef RHICreateGeometryShader (TArrayView< const uint8 > Code, const FSHAHash &Hash)=0
 
virtual FMeshShaderRHIRef RHICreateMeshShader (TArrayView< const uint8 > Code, const FSHAHash &Hash)
 
virtual FAmplificationShaderRHIRef RHICreateAmplificationShader (TArrayView< const uint8 > Code, const FSHAHash &Hash)
 
virtual void FlushPendingLogs ()
 
virtual FComputeShaderRHIRef RHICreateComputeShader (TArrayView< const uint8 > Code, const FSHAHash &Hash)=0
 
virtual FWorkGraphShaderRHIRef RHICreateWorkGraphShader (TArrayView< const uint8 > Code, const FSHAHash &Hash, EShaderFrequency ShaderFrequency)
 
virtual FRHIShaderLibraryRef RHICreateShaderLibrary (EShaderPlatform Platform, FString const &FilePath, FString const &Name)
 
virtual FGPUFenceRHIRef RHICreateGPUFence (const FName &Name)=0
 
virtual RHI_API void RHIWriteGPUFence_TopOfPipe (FRHICommandListBase &RHICmdList, FRHIGPUFence *FenceRHI)
 
virtual void RHICreateTransition (FRHITransition *Transition, const FRHITransitionCreateInfo &CreateInfo)
 
virtual void RHIReleaseTransition (FRHITransition *Transition)
 
virtual IRHITransientResourceAllocatorRHICreateTransientResourceAllocator ()
 
virtual FStagingBufferRHIRef RHICreateStagingBuffer ()
 
virtual RHI_API voidRHILockStagingBuffer (FRHIStagingBuffer *StagingBuffer, FRHIGPUFence *Fence, uint32 Offset, uint32 SizeRHI)
 
virtual RHI_API void RHIUnlockStagingBuffer (FRHIStagingBuffer *StagingBuffer)
 
virtual RHI_API voidLockStagingBuffer_RenderThread (class FRHICommandListImmediate &RHICmdList, FRHIStagingBuffer *StagingBuffer, FRHIGPUFence *Fence, uint32 Offset, uint32 SizeRHI)
 
virtual RHI_API void UnlockStagingBuffer_RenderThread (class FRHICommandListImmediate &RHICmdList, FRHIStagingBuffer *StagingBuffer)
 
virtual FBoundShaderStateRHIRef RHICreateBoundShaderState (FRHIVertexDeclaration *VertexDeclaration, FRHIVertexShader *VertexShader, FRHIPixelShader *PixelShader, FRHIGeometryShader *GeometryShader)=0
 
virtual FGraphicsPipelineStateRHIRef RHICreateGraphicsPipelineState (const FGraphicsPipelineStateInitializer &Initializer)=0
 
virtual FComputePipelineStateRHIRef RHICreateComputePipelineState (const FComputePipelineStateInitializer &Initializer)=0
 
virtual FWorkGraphPipelineStateRHIRef RHICreateWorkGraphPipelineState (const FWorkGraphPipelineStateInitializer &Initializer)
 
virtual FUniformBufferRHIRef RHICreateUniformBuffer (const void *Contents, const FRHIUniformBufferLayout *Layout, EUniformBufferUsage Usage, EUniformBufferValidation Validation)=0
 
virtual void RHIUpdateUniformBuffer (FRHICommandListBase &RHICmdList, FRHIUniformBuffer *UniformBufferRHI, const void *Contents)=0
 
virtual void RHIReplaceResources (FRHICommandListBase &RHICmdList, TArray< FRHIResourceReplaceInfo > &&ReplaceInfos)=0
 
virtual FRHIBufferInitializer RHICreateBufferInitializer (FRHICommandListBase &RHICmdList, const FRHIBufferCreateDesc &CreateDesc)=0
 
virtual RHI_API voidRHILockBuffer (FRHICommandListBase &RHICmdList, FRHIBuffer *Buffer, uint32 Offset, uint32 Size, EResourceLockMode LockMode)
 
virtual RHI_API voidRHILockBufferMGPU (FRHICommandListBase &RHICmdList, FRHIBuffer *Buffer, uint32 GPUIndex, uint32 Offset, uint32 Size, EResourceLockMode LockMode)
 
virtual RHI_API void RHIUnlockBuffer (FRHICommandListBase &RHICmdList, FRHIBuffer *Buffer)
 
virtual RHI_API void RHIUnlockBufferMGPU (FRHICommandListBase &RHICmdList, FRHIBuffer *Buffer, uint32 GPUIndex)
 
virtual RHI_API void RHIUpdateTextureReference (FRHICommandListBase &RHICmdList, FRHITextureReference *TextureRef, FRHITexture *NewTexture)
 
virtual FRHICalcTextureSizeResult RHICalcTexturePlatformSize (FRHITextureDesc const &Desc, uint32 FirstMipIndex)=0
 
virtual RHI_API uint64 RHIGetMinimumAlignmentForBufferBackedSRV (EPixelFormat Format)
 
virtual void RHIGetTextureMemoryStats (FTextureMemoryStats &OutStats)=0
 
virtual bool RHIGetTextureMemoryVisualizeData (FColor *TextureData, int32 SizeX, int32 SizeY, int32 Pitch, int32 PixelSize)=0
 
virtual FRHITextureInitializer RHICreateTextureInitializer (FRHICommandListBase &RHICmdList, const FRHITextureCreateDesc &CreateDesc)=0
 
virtual FTextureRHIRef RHIAsyncCreateTexture2D (uint32 SizeX, uint32 SizeY, uint8 Format, uint32 NumMips, ETextureCreateFlags Flags, ERHIAccess InResourceState, void **InitialMipData, uint32 NumInitialMips, const TCHAR *DebugName, FGraphEventRef &OutCompletionEvent)=0
 
virtual RHI_API FTextureReferenceRHIRef RHICreateTextureReference (FRHICommandListBase &RHICmdList, FRHITexture *InReferencedTexture)
 
virtual FShaderResourceViewRHIRef RHICreateShaderResourceView (class FRHICommandListBase &RHICmdList, FRHIViewableResource *Resource, FRHIViewDesc const &ViewDesc)=0
 
virtual FUnorderedAccessViewRHIRef RHICreateUnorderedAccessView (class FRHICommandListBase &RHICmdList, FRHIViewableResource *Resource, FRHIViewDesc const &ViewDesc)=0
 
virtual FRHIResourceCollectionRef RHICreateResourceCollection (FRHICommandListBase &RHICmdList, TConstArrayView< FRHIResourceCollectionMember > InMembers)
 
virtual void RHIUpdateResourceCollection (FRHICommandListBase &RHICmdList, FRHIResourceCollection *InResourceCollection, uint32 InStartIndex, TConstArrayView< FRHIResourceCollectionMember > InMemberUpdates)
 
virtual uint32 RHIComputeMemorySize (FRHITexture *TextureRHI)=0
 
virtual FTextureRHIRef RHIAsyncReallocateTexture2D (FRHITexture *Texture2D, int32 NewMipCount, int32 NewSizeX, int32 NewSizeY, FThreadSafeCounter *RequestStatus)=0
 
virtual FRHILockTextureResult RHILockTexture (FRHICommandListImmediate &RHICmdList, const FRHILockTextureArgs &Arguments)=0
 
virtual void RHIUnlockTexture (FRHICommandListImmediate &RHICmdList, const FRHILockTextureArgs &Arguments)=0
 
virtual void RHIUpdateTexture2D (FRHICommandListBase &RHICmdList, FRHITexture *Texture, uint32 MipIndex, const struct FUpdateTextureRegion2D &UpdateRegion, uint32 SourcePitch, const uint8 *SourceData)=0
 
virtual void RHIUpdateFromBufferTexture2D (FRHICommandListBase &RHICmdList, FRHITexture *Texture, uint32 MipIndex, const struct FUpdateTextureRegion2D &UpdateRegion, uint32 SourcePitch, FRHIBuffer *Buffer, uint32 BufferOffset)
 
virtual void RHIUpdateTexture3D (FRHICommandListBase &RHICmdList, FRHITexture *Texture, uint32 MipIndex, const struct FUpdateTextureRegion3D &UpdateRegion, uint32 SourceRowPitch, uint32 SourceDepthPitch, const uint8 *SourceData)=0
 
virtual RHI_API void RHIBindDebugLabelName (FRHICommandListBase &RHICmdList, FRHITexture *Texture, const TCHAR *Name)
 
virtual RHI_API void RHIBindDebugLabelName (FRHICommandListBase &RHICmdList, FRHIBuffer *Buffer, const TCHAR *Name)
 
virtual RHI_API void RHIBindDebugLabelName (FRHICommandListBase &RHICmdList, FRHIUnorderedAccessView *UnorderedAccessViewRHI, const TCHAR *Name)
 
virtual void RHIReadSurfaceData (FRHITexture *Texture, FIntRect Rect, TArray< FColor > &OutData, FReadSurfaceDataFlags InFlags)=0
 
virtual RHI_API void RHIReadSurfaceData (FRHITexture *Texture, FIntRect Rect, TArray< FLinearColor > &OutData, FReadSurfaceDataFlags InFlags)
 
virtual void RHIMapStagingSurface (FRHITexture *Texture, FRHIGPUFence *Fence, void *&OutData, int32 &OutWidth, int32 &OutHeight, uint32 GPUIndex=0)=0
 
virtual void RHIUnmapStagingSurface (FRHITexture *Texture, uint32 GPUIndex=0)=0
 
virtual void RHIReadSurfaceFloatData (FRHITexture *Texture, FIntRect Rect, TArray< FFloat16Color > &OutData, ECubeFace CubeFace, int32 ArrayIndex, int32 MipIndex)=0
 
virtual RHI_API void RHIReadSurfaceFloatData (FRHITexture *Texture, FIntRect Rect, TArray< FFloat16Color > &OutData, FReadSurfaceDataFlags InFlags)
 
virtual void RHIRead3DSurfaceFloatData (FRHITexture *Texture, FIntRect Rect, FIntPoint ZMinMax, TArray< FFloat16Color > &OutData)=0
 
virtual RHI_API void RHIRead3DSurfaceFloatData (FRHITexture *Texture, FIntRect Rect, FIntPoint ZMinMax, TArray< FFloat16Color > &OutData, FReadSurfaceDataFlags InFlags)
 
virtual FRenderQueryRHIRef RHICreateRenderQuery (ERenderQueryType QueryType)=0
 
virtual void RHIBeginRenderQueryBatch_TopOfPipe (FRHICommandListBase &RHICmdList, ERenderQueryType QueryType)
 
virtual void RHIEndRenderQueryBatch_TopOfPipe (FRHICommandListBase &RHICmdList, ERenderQueryType QueryType)
 
virtual RHI_API void RHIBeginRenderQuery_TopOfPipe (FRHICommandListBase &RHICmdList, FRHIRenderQuery *RenderQuery)
 
virtual RHI_API void RHIEndRenderQuery_TopOfPipe (FRHICommandListBase &RHICmdList, FRHIRenderQuery *RenderQuery)
 
virtual bool RHIGetRenderQueryResult (FRHIRenderQuery *RenderQuery, uint64 &OutResult, bool bWait, uint32 GPUIndex=INDEX_NONE)=0
 
virtual uint32 RHIGetViewportNextPresentGPUIndex (FRHIViewport *Viewport)
 
virtual FTextureRHIRef RHIGetViewportBackBuffer (FRHIViewport *Viewport)=0
 
virtual FUnorderedAccessViewRHIRef RHIGetViewportBackBufferUAV (FRHIViewport *ViewportRHI)
 
virtual uint32 RHIGetHTilePlatformConfig (uint32 DepthWidth, uint32 DepthHeight) const
 
virtual uint32 RHIGetHTilePlatformConfig (const FRHITextureDesc &DepthDesc) const
 
virtual void RHIAliasTextureResources (FTextureRHIRef &DestTexture, FTextureRHIRef &SrcTexture)
 
virtual FTextureRHIRef RHICreateAliasedTexture (FTextureRHIRef &SourceTexture)
 
virtual void RHIGetDisplaysInformation (FDisplayInformationArray &OutDisplayInformation)
 
virtual RHI_API uint64 RHIComputeStatePrecachePSOHash (const FGraphicsPipelineStateInitializer &Initializer)
 
virtual RHI_API uint64 RHIComputePrecachePSOHash (const FGraphicsPipelineStateInitializer &Initializer)
 
virtual RHI_API bool RHIMatchPrecachePSOInitializers (const FGraphicsPipelineStateInitializer &LHS, const FGraphicsPipelineStateInitializer &RHS)
 
virtual void RHIAdvanceFrameForGetViewportBackBuffer (FRHIViewport *Viewport, bool bPresent)=0
 
virtual void RHIAcquireThreadOwnership ()
 
virtual void RHIReleaseThreadOwnership ()
 
virtual void RHIFlushResources ()=0
 
virtual FViewportRHIRef RHICreateViewport (void *WindowHandle, uint32 SizeX, uint32 SizeY, bool bIsFullscreen, EPixelFormat PreferredPixelFormat)=0
 
virtual void RHIResizeViewport (FRHIViewport *Viewport, uint32 SizeX, uint32 SizeY, bool bIsFullscreen)=0
 
virtual void RHIResizeViewport (FRHIViewport *Viewport, uint32 SizeX, uint32 SizeY, bool bIsFullscreen, EPixelFormat PreferredPixelFormat)
 
virtual EPixelFormat RHIPreferredPixelFormatHint (EPixelFormat PreferredPixelFormat)
 
virtual RHI_API void RHICheckViewportHDRStatus (FRHIViewport *Viewport)
 
virtual void RHIHandleDisplayChange ()
 
virtual void RHITick (float DeltaTime)=0
 
virtual void RHIBlockUntilGPUIdle ()=0
 
virtual void RHIBeginSuspendRendering ()
 
virtual void RHISuspendRendering ()
 
virtual void RHIResumeRendering ()
 
virtual bool RHIIsRenderingSuspended ()
 
virtual bool RHIGetAvailableResolutions (FScreenResolutionArray &Resolutions, bool bIgnoreRefreshRate)=0
 
virtual void RHIGetSupportedResolution (uint32 &Width, uint32 &Height)=0
 
virtual RHI_API void RHIVirtualTextureSetFirstMipInMemory (class FRHICommandListImmediate &RHICmdList, FRHITexture *Texture, uint32 FirstMip)
 
virtual RHI_API void RHIVirtualTextureSetFirstMipVisible (class FRHICommandListImmediate &RHICmdList, FRHITexture *Texture, uint32 FirstMip)
 
virtual voidRHIGetNativeDevice ()=0
 
virtual voidRHIGetNativePhysicalDevice ()
 
virtual voidRHIGetNativeGraphicsQueue ()
 
virtual voidRHIGetNativeComputeQueue ()
 
virtual voidRHIGetNativeInstance ()=0
 
virtual voidRHIGetNativeCommandBuffer ()
 
virtual IRHICommandContextRHIGetDefaultContext ()=0
 
virtual IRHIComputeContextRHIGetCommandContext (ERHIPipeline Pipeline, FRHIGPUMask GPUMask)=0
 
virtual IRHIComputeContextRHIGetParallelCommandContext (FRHIParallelRenderPassInfo const &ParallelRenderPass, FRHIGPUMask GPUMask)
 
virtual IRHIUploadContextRHIGetUploadContext ()
 
void RHICloseTranslateChain (FRHIFinalizeContextArgs &&Args, TRHIPipelineArray< IRHIPlatformCommandList * > &Output, bool bShouldFinalize)
 
virtual void RHIFinalizeContext (FRHIFinalizeContextArgs &&Args, TRHIPipelineArray< IRHIPlatformCommandList * > &Output)=0
 
virtual IRHIPlatformCommandListRHIFinalizeParallelContext (IRHIComputeContext *Context)
 
virtual void RHISubmitCommandLists (FRHISubmitCommandListsArgs &&Args)=0
 
virtual void RHIProcessDeleteQueue ()
 
virtual RHI_API FTextureRHIRef AsyncReallocateTexture2D_RenderThread (class FRHICommandListImmediate &RHICmdList, FRHITexture *Texture2D, int32 NewMipCount, int32 NewSizeX, int32 NewSizeY, FThreadSafeCounter *RequestStatus)
 
virtual RHI_API FUpdateTexture3DData RHIBeginUpdateTexture3D (FRHICommandListBase &RHICmdList, FRHITexture *Texture, uint32 MipIndex, const struct FUpdateTextureRegion3D &UpdateRegion)
 
virtual RHI_API void RHIEndUpdateTexture3D (FRHICommandListBase &RHICmdList, FUpdateTexture3DData &UpdateData)
 
virtual RHI_API void RHIEndMultiUpdateTexture3D (FRHICommandListBase &RHICmdList, TArray< FUpdateTexture3DData > &UpdateDataArray)
 
virtual RHI_API FRHIShaderLibraryRef RHICreateShaderLibrary_RenderThread (class FRHICommandListImmediate &RHICmdList, EShaderPlatform Platform, FString FilePath, FString Name)
 
virtual RHI_API void RHIMapStagingSurface_RenderThread (class FRHICommandListImmediate &RHICmdList, FRHITexture *Texture, uint32 GPUIndex, FRHIGPUFence *Fence, void *&OutData, int32 &OutWidth, int32 &OutHeight)
 
virtual RHI_API void RHIUnmapStagingSurface_RenderThread (class FRHICommandListImmediate &RHICmdList, FRHITexture *Texture, uint32 GPUIndex)
 
virtual RHI_API void RHIReadSurfaceFloatData_RenderThread (class FRHICommandListImmediate &RHICmdList, FRHITexture *Texture, FIntRect Rect, TArray< FFloat16Color > &OutData, ECubeFace CubeFace, int32 ArrayIndex, int32 MipIndex)
 
virtual RHI_API void RHIReadSurfaceFloatData_RenderThread (class FRHICommandListImmediate &RHICmdList, FRHITexture *Texture, FIntRect Rect, TArray< FFloat16Color > &OutData, FReadSurfaceDataFlags Flags)
 
virtual voidLockBuffer_BottomOfPipe (class FRHICommandListBase &RHICmdList, FRHIBuffer *Buffer, uint32 Offset, uint32 SizeRHI, EResourceLockMode LockMode)
 
virtual void UnlockBuffer_BottomOfPipe (class FRHICommandListBase &RHICmdList, FRHIBuffer *Buffer)
 
virtual FRHIFlipDetails RHIWaitForFlip (double TimeoutInSeconds)
 
virtual void RHISignalFlipEvent ()
 
virtual uint16 RHIGetPlatformTextureMaxSampleCount ()
 
virtual FRayTracingAccelerationStructureSize RHICalcRayTracingSceneSize (const FRayTracingSceneInitializer &Initializer)
 
virtual FRayTracingAccelerationStructureSize RHICalcRayTracingGeometrySize (const FRayTracingGeometryInitializer &Initializer)
 
virtual FRayTracingClusterOperationSize RHICalcRayTracingClusterOperationSize (const FRayTracingClusterOperationInitializer &Initializer)
 
virtual FRayTracingAccelerationStructureOfflineMetadata RHIGetRayTracingGeometryOfflineMetadata (const FRayTracingGeometryOfflineDataHeader &OfflineDataHeader)
 
virtual FRayTracingGeometryRHIRef RHICreateRayTracingGeometry (FRHICommandListBase &RHICmdList, const FRayTracingGeometryInitializer &Initializer)
 
virtual FRayTracingSceneRHIRef RHICreateRayTracingScene (FRayTracingSceneInitializer Initializer)
 
virtual FRayTracingShaderRHIRef RHICreateRayTracingShader (TArrayView< const uint8 > Code, const FSHAHash &Hash, EShaderFrequency ShaderFrequency)
 
virtual FRayTracingPipelineStateRHIRef RHICreateRayTracingPipelineState (const FRayTracingPipelineStateInitializer &Initializer)
 
virtual FShaderBindingTableRHIRef RHICreateShaderBindingTable (FRHICommandListBase &RHICmdList, const FRayTracingShaderBindingTableInitializer &Initializer)
 
virtual void RHISerializeAccelerationStructure (FRHICommandListImmediate &RHICmdList, FRHIRayTracingScene *Scene, const TCHAR *Path)
 
virtual FShaderBundleRHIRef RHICreateShaderBundle (const FShaderBundleCreateInfo &CreateInfo)
 

Static Public Member Functions

static VULKANRHI_API void AddEnabledInstanceExtensionsAndLayers (TArrayView< const ANSICHAR *const > InInstanceExtensions, TArrayView< const ANSICHAR *const > InInstanceLayers)
 
static VULKANRHI_API void AddEnabledDeviceExtensionsAndLayers (TArrayView< const ANSICHAR *const > InDeviceExtensions, TArrayView< const ANSICHAR *const > InDeviceLayers)
 
- Static Public Member Functions inherited from FDynamicRHI
static RHI_API void EnableIdealGPUCaptureOptions (bool bEnable)
 

Additional Inherited Members

- Public Types inherited from FDynamicRHI
using FRHICalcTextureSizeResult = ::FRHICalcTextureSizeResult
 
- Protected Attributes inherited from FDynamicRHI
TArray< uint32PixelFormatBlockBytes
 

Member Function Documentation

◆ AddEnabledDeviceExtensionsAndLayers()

void IVulkanDynamicRHI::AddEnabledDeviceExtensionsAndLayers ( TArrayView< const ANSICHAR *const >  InDeviceExtensions,
TArrayView< const ANSICHAR *const >  InDeviceLayers 
)
static

◆ AddEnabledInstanceExtensionsAndLayers()

void IVulkanDynamicRHI::AddEnabledInstanceExtensionsAndLayers ( TArrayView< const ANSICHAR *const >  InInstanceExtensions,
TArrayView< const ANSICHAR *const >  InInstanceLayers 
)
static

◆ GetInterfaceType()

virtual ERHIInterfaceType IVulkanDynamicRHI::GetInterfaceType ( ) const
inlineoverridevirtual

Reimplemented from FDynamicRHI.

◆ RHICreateTexture2DArrayFromResource()

virtual FTextureRHIRef IVulkanDynamicRHI::RHICreateTexture2DArrayFromResource ( EPixelFormat  Format,
uint32  SizeX,
uint32  SizeY,
uint32  ArraySize,
uint32  NumMips,
uint32  NumSamples,
VkImage  Resource,
ETextureCreateFlags  Flags,
const FClearValueBinding ClearValueBinding = FClearValueBinding::Transparent 
)
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHICreateTexture2DFromResource()

virtual FTextureRHIRef IVulkanDynamicRHI::RHICreateTexture2DFromResource ( EPixelFormat  Format,
uint32  SizeX,
uint32  SizeY,
uint32  NumMips,
uint32  NumSamples,
VkImage  Resource,
ETextureCreateFlags  Flags,
const FClearValueBinding ClearValueBinding = FClearValueBinding::Transparent,
const FVulkanRHIExternalImageDeleteCallbackInfo ExternalImageDeleteCallbackInfo = {} 
)
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHICreateTextureCubeFromResource()

virtual FTextureRHIRef IVulkanDynamicRHI::RHICreateTextureCubeFromResource ( EPixelFormat  Format,
uint32  Size,
bool  bArray,
uint32  ArraySize,
uint32  NumMips,
VkImage  Resource,
ETextureCreateFlags  Flags,
const FClearValueBinding ClearValueBinding = FClearValueBinding::Transparent 
)
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIDoesAdapterMatchDevice()

virtual bool IVulkanDynamicRHI::RHIDoesAdapterMatchDevice ( const void InAdapterId) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIFinishExternalComputeWork()

virtual void IVulkanDynamicRHI::RHIFinishExternalComputeWork ( VkCommandBuffer  InCommandBuffer)
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetActiveVkCommandBuffer()

virtual VkCommandBuffer IVulkanDynamicRHI::RHIGetActiveVkCommandBuffer ( )
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetAllDeviceExtensions()

virtual TArray< VkExtensionProperties > IVulkanDynamicRHI::RHIGetAllDeviceExtensions ( VkPhysicalDevice  InPhysicalDevice) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetAllInstanceExtensions()

virtual TArray< VkExtensionProperties > IVulkanDynamicRHI::RHIGetAllInstanceExtensions ( ) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetAllocationInfo() [1/2]

virtual FVulkanRHIAllocationInfo IVulkanDynamicRHI::RHIGetAllocationInfo ( FRHIBuffer InBuffer) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetAllocationInfo() [2/2]

virtual FVulkanRHIAllocationInfo IVulkanDynamicRHI::RHIGetAllocationInfo ( FRHITexture InTexture) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetGraphicsAdapterLUID()

virtual uint64 IVulkanDynamicRHI::RHIGetGraphicsAdapterLUID ( VkPhysicalDevice  InPhysicalDevice) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetGraphicsQueueFamilyIndex()

virtual uint32 IVulkanDynamicRHI::RHIGetGraphicsQueueFamilyIndex ( ) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetGraphicsQueueIndex()

virtual uint32 IVulkanDynamicRHI::RHIGetGraphicsQueueIndex ( ) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetGraphicsVkQueue()

virtual VkQueue IVulkanDynamicRHI::RHIGetGraphicsVkQueue ( ) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetImageViewInfo()

virtual FVulkanRHIImageViewInfo IVulkanDynamicRHI::RHIGetImageViewInfo ( FRHITexture InTexture) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetLoadedDeviceExtensions()

virtual TArray< FAnsiString > IVulkanDynamicRHI::RHIGetLoadedDeviceExtensions ( ) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetSwapChainVkFormat()

virtual VkFormat IVulkanDynamicRHI::RHIGetSwapChainVkFormat ( EPixelFormat  InFormat) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetViewVkFormat()

virtual VkFormat IVulkanDynamicRHI::RHIGetViewVkFormat ( FRHITexture InTexture) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetVkAllocationCallbacks()

virtual const VkAllocationCallbacks * IVulkanDynamicRHI::RHIGetVkAllocationCallbacks ( )
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetVkDevice()

virtual VkDevice IVulkanDynamicRHI::RHIGetVkDevice ( ) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetVkDeviceProcAddr()

virtual void * IVulkanDynamicRHI::RHIGetVkDeviceProcAddr ( const char InName) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetVkImage()

virtual VkImage IVulkanDynamicRHI::RHIGetVkImage ( FRHITexture InTexture) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetVkInstance()

virtual VkInstance IVulkanDynamicRHI::RHIGetVkInstance ( ) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetVkInstanceGlobalProcAddr()

virtual void * IVulkanDynamicRHI::RHIGetVkInstanceGlobalProcAddr ( const char InName) const
pure virtual

Version of RHIGetVkInstanceProcAddr that uses nullptr as the instance argument. See vkGetInstanceProcAddr manpage for distinction between "global" and non-global commands.

Implemented in FVulkanDynamicRHI.

◆ RHIGetVkInstanceProcAddr()

virtual void * IVulkanDynamicRHI::RHIGetVkInstanceProcAddr ( const char InName) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetVkPhysicalDevice()

virtual VkPhysicalDevice IVulkanDynamicRHI::RHIGetVkPhysicalDevice ( ) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetVulkanDeviceUUID()

virtual const uint8 * IVulkanDynamicRHI::RHIGetVulkanDeviceUUID ( ) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIGetVulkanVersion()

virtual uint32 IVulkanDynamicRHI::RHIGetVulkanVersion ( ) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIRegisterWork()

virtual void IVulkanDynamicRHI::RHIRegisterWork ( uint32  NumPrimitives)
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIRunOnQueue()

virtual void IVulkanDynamicRHI::RHIRunOnQueue ( EVulkanRHIRunOnQueueType  QueueType,
TFunction< void(VkQueue)> &&  CodeToRun,
bool  bWaitForSubmission 
)
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHISetImageLayout()

virtual void IVulkanDynamicRHI::RHISetImageLayout ( VkImage  Image,
VkImageLayout  OldLayout,
VkImageLayout  NewLayout,
const VkImageSubresourceRange SubresourceRange 
)
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHISetUploadImageLayout()

virtual void IVulkanDynamicRHI::RHISetUploadImageLayout ( VkImage  Image,
VkImageLayout  OldLayout,
VkImageLayout  NewLayout,
const VkImageSubresourceRange SubresourceRange 
)
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHISubmitUploadCommandBuffer()

virtual void IVulkanDynamicRHI::RHISubmitUploadCommandBuffer ( )
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHISupportsEXTFragmentDensityMap2()

virtual bool IVulkanDynamicRHI::RHISupportsEXTFragmentDensityMap2 ( ) const
pure virtual

Implemented in FVulkanDynamicRHI.

◆ RHIVerifyResult()

virtual void IVulkanDynamicRHI::RHIVerifyResult ( VkResult  Result,
const ANSICHAR VkFuntion,
const ANSICHAR Filename,
uint32  Line 
)
pure virtual

Implemented in FVulkanDynamicRHI.


The documentation for this struct was generated from the following files: