UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FVulkanWindowsPlatform Class Reference

#include <VulkanWindowsPlatform.h>

+ Inheritance diagram for FVulkanWindowsPlatform:

Static Public Member Functions

static bool LoadVulkanLibrary ()
 
static bool LoadVulkanInstanceFunctions (VkInstance inInstance)
 
static void FreeVulkanLibrary ()
 
static void GetInstanceExtensions (FVulkanInstanceExtensionArray &OutExtensions)
 
static void GetInstanceLayers (TArray< const ANSICHAR * > &OutLayers)
 
static void GetDeviceExtensions (FVulkanDevice *Device, FVulkanDeviceExtensionArray &OutExtensions)
 
static void GetDeviceLayers (TArray< const ANSICHAR * > &OutLayers)
 
static void CreateSurface (FVulkanPlatformWindowContext &WindowContext, VkInstance Instance, VkSurfaceKHR *OutSurface)
 
static bool SupportsDeviceLocalHostVisibleWithNoPenalty (EGpuVendorId VendorId)
 
static VkTimeDomainKHR GetTimeDomain ()
 
- Static Public Member Functions inherited from FVulkanGenericPlatform
static bool IsSupported ()
 
static bool LoadVulkanLibrary ()
 
static bool LoadVulkanInstanceFunctions (VkInstance inInstance)
 
static void ClearVulkanInstanceFunctions ()
 
static void FreeVulkanLibrary ()
 
static void InitDevice (FVulkanDevice *InDevice)
 
static void PostInitGPU (const FVulkanDevice &InDevice)
 
static void NotifyFoundInstanceLayersAndExtensions (const TArray< const ANSICHAR * > &Layers, const TArray< const ANSICHAR * > &Extensions)
 
static void NotifyFoundDeviceLayersAndExtensions (VkPhysicalDevice PhysicalDevice, const TArray< const ANSICHAR * > &Layers, const TArray< const ANSICHAR * > &Extensions)
 
static void GetInstanceExtensions (FVulkanInstanceExtensionArray &OutExtensions)
 
static void GetInstanceLayers (TArray< const ANSICHAR * > &OutLayers)
 
static void GetDeviceExtensions (FVulkanDevice *Device, FVulkanDeviceExtensionArray &OutExtensions)
 
static void GetDeviceLayers (TArray< const ANSICHAR * > &OutLayers)
 
static void OnGPUCrash (const TCHAR *Message)
 
static void CreateSurface (VkSurfaceKHR *OutSurface)
 
static bool SupportsBCTextureFormats ()
 
static bool SupportsASTCTextureFormats ()
 
static bool SupportsETC2TextureFormats ()
 
static bool SupportsR16UnormTextureFormat ()
 
static bool SupportsQuerySurfaceProperties ()
 
static void SetupFeatureLevels (TArrayView< EShaderPlatform > ShaderPlatformForFeatureLevel)
 
static bool SupportsTimestampRenderQueries ()
 
static bool HasCustomFrameTiming ()
 
static bool RequiresMobileRenderer ()
 
static ERHIFeatureLevel::Type GetFeatureLevel (ERHIFeatureLevel::Type RequestedFeatureLevel)
 
static void OverridePlatformHandlers (bool bInit)
 
static bool RequiresPresentLayoutFix ()
 
static bool SupportsDeviceLocalHostVisibleWithNoPenalty (EGpuVendorId VendorId)
 
static bool HasUnifiedMemory ()
 
static bool RegisterGPUWork ()
 
static void RestrictEnabledPhysicalDeviceFeatures (FVulkanPhysicalDeviceFeatures *InOutFeaturesToEnable)
 
static bool SupportParallelRenderingTasks ()
 
static bool SupportsDynamicResolution ()
 
static bool SupportsVolumeTextureRendering ()
 
static bool RequiresSwapchainGeneralInitialLayout ()
 
static bool FramePace (FVulkanDevice &Device, void *WindowHandle, VkSwapchainKHR Swapchain, uint32 PresentID, VkPresentInfoKHR &Info)
 
static VkResult Present (VkQueue Queue, VkPresentInfoKHR &PresentInfo)
 
static VkResult CreateSwapchainKHR (FVulkanGenericPlatformWindowContext &WindowContext, VkPhysicalDevice PhysicalDevice, VkDevice Device, const VkSwapchainCreateInfoKHR *CreateInfo, const VkAllocationCallbacks *Allocator, VkSwapchainKHR *Swapchain)
 
static void DestroySwapchainKHR (VkDevice Device, VkSwapchainKHR Swapchain, const VkAllocationCallbacks *Allocator)
 
static bool RecreateSwapchainOnFail ()
 
static bool RequiresWaitingForFrameCompletionEvent ()
 
static bool SupportsNullPixelShader ()
 
static bool RequiresDepthStencilFullWrite ()
 
static bool RequiresMergedDepthStencilLayout ()
 
static bool PSOBinaryCacheMatches (FVulkanDevice *Device, const TArray< uint8 > &DeviceCache)
 
static FString CreatePSOBinaryCacheFilename (FVulkanDevice *Device, FString CacheFilename)
 
static FString GetCompiledPSOCacheTopFolderPath ()
 
static TArray< FString > GetPSOCacheFilenames ()
 
static VkPipelineCache PrecompilePSO (FVulkanDevice *Device, const uint8 *OptionalPSOCacheData, VkGraphicsPipelineCreateInfo *PipelineInfo, const FGfxPipelineDesc *GfxEntry, const FVulkanRenderTargetLayout *RTLayout, TArrayView< uint32_t > VS, TArrayView< uint32_t > PS, size_t &AfterSize, FString *FailureMessageOUT=nullptr)
 
static VkBool32 DebugReportFunction (VkDebugReportFlagsEXT MsgFlags, VkDebugReportObjectTypeEXT ObjType, uint64_t SrcObject, size_t Location, int32 MsgCode, const ANSICHAR *LayerPrefix, const ANSICHAR *Msg, void *UserData)
 
static void SetImageMemoryRequirementWorkaround (VkImageCreateInfo &ImageCreateInfo)
 
static bool SupportsProfileChecks ()
 
static FString GetVulkanProfileNameForFeatureLevel (ERHIFeatureLevel::Type FeatureLevel, bool bRaytracing)
 
static VkShaderStageFlags RequiredWaveOpsShaderStageFlags (VkShaderStageFlags VulkanDeviceShaderStageFlags)
 
static VkTimeDomainKHR GetTimeDomain ()
 

Member Function Documentation

◆ CreateSurface()

void FVulkanWindowsPlatform::CreateSurface ( FVulkanPlatformWindowContext WindowContext,
VkInstance  Instance,
VkSurfaceKHR OutSurface 
)
static

◆ FreeVulkanLibrary()

void FVulkanWindowsPlatform::FreeVulkanLibrary ( )
static

◆ GetDeviceExtensions()

void FVulkanWindowsPlatform::GetDeviceExtensions ( FVulkanDevice Device,
FVulkanDeviceExtensionArray OutExtensions 
)
static

◆ GetDeviceLayers()

static void FVulkanWindowsPlatform::GetDeviceLayers ( TArray< const ANSICHAR * > &  OutLayers)
inlinestatic

◆ GetInstanceExtensions()

void FVulkanWindowsPlatform::GetInstanceExtensions ( FVulkanInstanceExtensionArray OutExtensions)
static

◆ GetInstanceLayers()

static void FVulkanWindowsPlatform::GetInstanceLayers ( TArray< const ANSICHAR * > &  OutLayers)
inlinestatic

◆ GetTimeDomain()

static VkTimeDomainKHR FVulkanWindowsPlatform::GetTimeDomain ( )
inlinestatic

◆ LoadVulkanInstanceFunctions()

bool FVulkanWindowsPlatform::LoadVulkanInstanceFunctions ( VkInstance  inInstance)
static

◆ LoadVulkanLibrary()

bool FVulkanWindowsPlatform::LoadVulkanLibrary ( )
static

◆ SupportsDeviceLocalHostVisibleWithNoPenalty()

bool FVulkanWindowsPlatform::SupportsDeviceLocalHostVisibleWithNoPenalty ( EGpuVendorId  VendorId)
static

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