VulkanRHI

Classes

Name

Description

Public class

FBufferAllocation

Manages/maintains sub-allocations of a VkBuffer; assumes it was created elsewhere, but it does destroy it.

Public class

FBufferSuballocation

Suballocation of a VkBuffer.

Public class

FDeferredDeletionQueue

Public class

FDeviceChild

Public class

FDeviceMemoryAllocation

An Allocation of a Device Heap. Lowest level of allocations and bounded by VkPhysicalDeviceLimits::maxMemoryAllocationCount.

Public class

FDeviceMemoryManager

Manager of Device Heap Allocations. Calling Alloc/Free is expensive!

Public class

FFence

Public class

FFenceManager

Public class

FGPUEvent

Public class

FNEWVulkanShaderDescriptorInfo

Public class

FOldResourceAllocation

A sub allocation for a specific memory type.

Public class

FOldResourceHeap

A set of Device Allocations (Heap Pages) for a specific memory type.

Public class

FOldResourceHeapPage

One device allocation that is shared amongst different resources.

Public class

FPackedUniformBuffers

This class holds the staging area for packed global uniform buffers for a given shader.

Public struct

FRange

Public class

FRefCount

Custom ref counting.

Public class

FResourceHeapManager

Manages heaps and their interactions.

Public class

FResourceSuballocation

This holds the information for a SubAllocation (a range); does NOT hold any information about what the object type is.

Public class

FStagingBuffer

Public class

FStagingManager

Public class

FSubresourceAllocator

Generically mantains/manages sub-allocations; doesn't know what the object type is.

Public class

FTempFrameAllocationBuffer

Simple tape allocation per frame for a VkBuffer, used for Volatile allocations.

Public class

FVulkanBackBuffer

Public class

FVulkanBaseShaderResource

The base class of resources that may be bound as shader resources.

Public class

FVulkanBlendState

Public class

FVulkanBuffer

Public struct

FVulkanBufferView

Public struct

FVulkanCodeHeader

Public class

FVulkanCommandListContext

Public class

FVulkanComputeFence

Public class

FVulkanDepthStencilState

Public class

FVulkanDynamicRHI

The interface which is implemented by the dynamically bound RHI.

Public class

FVulkanDynamicRHIModule

Implements the Vulkan module as a dynamic RHI providing module.

Public class

FVulkanEventNode

A single perf event node, which tracks information about a appBeginDrawEvent/appEndDrawEvent range.

Public class

FVulkanEventNodeFrame

An entire frame of perf event nodes, including ancillary timers.

Public struct

FVulkanGPUProfiler

Encapsulates GPU profiling logic and data.

Public class

FVulkanGPUTiming

============================================================================= VulkanUtil.h: Vulkan Utility definitions.

Public class

FVulkanIndexBuffer

Public class

FVulkanOcclusionQueryPool

Public struct

FVulkanPipelineGraphicsKey

Public class

FVulkanQueryPool

Public class

FVulkanRasterizerState

Public class

FVulkanRenderQuery

Public class

FVulkanResourceMultiBuffer

Public struct

FVulkanRingBuffer

Public class

FVulkanSamplerState

Public class

FVulkanShader

Public class

FVulkanShaderResourceView

Public class

FVulkanShaderSerializedBindings

============================================================================= VulkanResources.h: Vulkan resource RHI definitions.

Public class

FVulkanStructuredBuffer

Public class

FVulkanSurface

Texture/RT wrapper.

Public class

FVulkanTexture2D

Public class

FVulkanTexture2DArray

Public class

FVulkanTexture3D

Public struct

FVulkanTextureBase

Public class

FVulkanTextureCube

Public class

FVulkanTextureReference

Public struct

FVulkanTextureView

Public class

FVulkanTimestampPool

Public class

FVulkanUniformBuffer

Public struct

FVulkanUniformBufferUploader

Public class

FVulkanUnorderedAccessView

Public class

FVulkanVertexBuffer

Public class

FVulkanVertexDeclaration

This represents a vertex declaration that hasn't been combined with a specific shader to create a bound shader.

Public class

FVulkanVertexInputStateInfo

Public class

FVulkanViewport

Public class

TVulkanBaseShader

This represents a vertex shader that hasn't been combined with a specific declaration to create a bound shader.

Public struct

TVulkanResourceTraits

Constants

Name

Description

NUM_OCCLUSION_QUERIES_PER_POOL

NUM_RENDER_BUFFERS

How many back buffers to cycle through

NUM_TIMESTAMP_QUERIES_PER_POOL

Typedefs

Enums

Name

Description

Public enum

EDescriptorSetStage

Public enum

EVulkanBindingType::EType

Public enum

VulkanRHI::

DECLARE_CYCLE_STAT_EXTERN(TEXT("Create Pipeline"), STAT_VulkanCreatePipeline, STATGROUP_VulkanRHI, );.

Functions

Name Description

Public function Static

VkDescriptor...

 

BindingToDescriptorType

(
    EVulkanBindingType::EType Type
)

Public function Static

char

 

EVulkanBindingType::GetBindingTypeChar

(
    EType Type
)

Public function

EDescriptorS ...

 

GetDescriptorSetForStage

(
    EShaderFrequency Stage
)

Public function

uint32

 

GetTypeHash

(
    const FVulkanPipelineGraphicsKey & ...
)

Public function

FVulkanTextu ...

 

GetVulkanTextureFromRHITexture

(
    FRHITexture * Texture
)

Given a pointer to a RHI texture that was created by the Vulkan RHI, returns a pointer to the FVulkanTextureBase it encapsulates.

Public function Static

TVulkanResou ...

 

ResourceCast

(
    TRHIType* Resource
)