Vulkan 后端
Vulkan 后端
Vulkan 后端的 FidelityFX SDK 原生后端实现。
函数
ffxGetScratchMemorySizeVK
FFX_API size_t ffxGetScratchMemorySizeVK(VkPhysicalDevice physicalDevice, size_t maxContexts)查询 Vulkan 后端所需的暂存(scratch)缓冲区内存量。
返回值: 所需的 VK 后端暂存内存缓冲区的尺寸(以字节为单位)。
参数
physicalDevice(VkPhysicalDevice)– [输入] 指向 VkPhysicalDevice 设备的指针。maxContexts(size_t)– [输入] 将共享后端的并发效果上下文的最大数量。(请注意,某些效果包含计入此最大值的内部上下文)
返回: FFX_API size_t
来源: sdk/include/FidelityFX/host/backends/vk/ffx_vk.h (第 86 行, 列 16)
ffxGetDeviceVK
FFX_API FfxDevice ffxGetDeviceVK(VkDeviceContext *vkDeviceContext)从 VkDevice 创建 FfxDevice。
返回:一个抽象的 FidelityFX 设备。
参数
vkDeviceContext(VkDeviceContext *)– [输入] 指向包含所有必要信息的 VKDeviceContext 的指针
返回: FFX_API FfxDevice
来源: sdk/include/FidelityFX/host/backends/vk/ffx_vk.h (第 103 行, 列 19)
ffxGetInterfaceVK
FFX_API FfxErrorCode ffxGetInterfaceVK(FfxInterface *backendInterface, FfxDevice device, void *scratchBuffer, size_t scratchBufferSize, size_t maxContexts)用 VK 后端的指针填充接口。
参数
backendInterface(FfxInterface *)– [输出] 指向要用指针填充的 FfxInterface 结构的指针。device(FfxDevice)– [输入] 指向 VkDevice 设备的指针。scratchBuffer(void *)– [输入] 指向可供 DirectX(R)12 后端使用的内存缓冲区的指针。scratchBufferSize(size_t)– [输入] scratchBuffer 指向的缓冲区的尺寸(以字节为单位)。maxContexts(size_t)– [输入] 将共享后端的并发效果上下文的最大数量。(请注意,某些效果包含计入此最大值的内部上下文)
返回: FFX_API FfxErrorCode
来源: sdk/include/FidelityFX/host/backends/vk/ffx_vk.h (第 120 行, 列 22)
ffxGetCommandListVK
FFX_API FfxCommandList ffxGetCommandListVK(VkCommandBuffer cmdBuf)从 VkCommandBuffer 创建 FfxCommandList。
返回:一个抽象的 FidelityFX 命令列表。
参数
cmdBuf(VkCommandBuffer)– [输入] 指向 Vulkan 命令缓冲区的指针。
返回: FFX_API FfxCommandList
来源: sdk/include/FidelityFX/host/backends/vk/ffx_vk.h (第 135 行, 列 24)
ffxGetPipelineVK
FFX_API FfxPipeline ffxGetPipelineVK(VkPipeline pipeline)从 VkPipeline 创建 FfxPipeline。
返回:一个抽象的 FidelityFX 管道。
参数
pipeline(VkPipeline)– [输入] 指向 Vulkan 管线的指针。
返回: FFX_API FfxPipeline
来源: sdk/include/FidelityFX/host/backends/vk/ffx_vk.h (第 145 行, 列 21)
ffxGetResourceVK
FFX_API FfxResource ffxGetResourceVK(void *vkResource, FfxResourceDescription ffxResDescription, const wchar_t *ffxResName, FfxResourceStates state=FFX_RESOURCE_STATE_COMPUTE_READ)从 GPUResource 获取 FfxResource。
返回:一个抽象的 FidelityFX 资源。
参数
vkResource(void *)– [输入] 指向(非特定格式的)VK 资源的指针。ffxResDescription(FfxResourceDescription)– [输入] 用于资源表示的 FfxResourceDescription。ffxResName(const wchar_t *)– [输入] (可选)用于在调试模式下标识资源的名称字符串。state(FfxResourceStates)– [输入] 资源当前所处的状态。
返回: FFX_API FfxResource
来源: sdk/include/FidelityFX/host/backends/vk/ffx_vk.h (第 158 行, 列 21)
ffxGetSurfaceFormatVK
FFX_API FfxSurfaceFormat ffxGetSurfaceFormatVK(VkFormat format)从 VkFormat 获取 FfxSurfaceFormat。
返回:一个 FfxSurfaceFormat。
参数
format(VkFormat)– [输入] 要转换为 FfxSurfaceFormat 的 VkFormat。
返回: FFX_API FfxSurfaceFormat
来源: sdk/include/FidelityFX/host/backends/vk/ffx_vk.h (第 171 行, 列 26)
ffxGetBufferResourceDescriptionVK
FFX_API FfxResourceDescription ffxGetBufferResourceDescriptionVK(const VkBuffer buffer, const VkBufferCreateInfo createInfo, FfxResourceUsage additionalUsages=FFX_RESOURCE_USAGE_READ_ONLY)从现有的 VkBuffer 获取 FfxResourceDescription。
返回:一个 FfxResourceDescription。
参数
buffer(const VkBuffer)– [输入] 用于创建 FfxResourceDescription 的 VkBuffer 资源。createInfo(const VkBufferCreateInfo)– [输入] 缓冲区的 VkBufferCreateInfo。additionalUsages(FfxResourceUsage)– [输入] 用于选择资源映射的可选 FfxResourceUsage 标志。
返回: FFX_API FfxResourceDescription
来源: sdk/include/FidelityFX/host/backends/vk/ffx_vk.h (第 183 行, 列 32)
ffxGetImageResourceDescriptionVK
FFX_API FfxResourceDescription ffxGetImageResourceDescriptionVK(const VkImage image, const VkImageCreateInfo createInfo, FfxResourceUsage additionalUsages=FFX_RESOURCE_USAGE_READ_ONLY)从现有的 VkImage 获取 FfxResourceDescription。
返回:一个 FfxResourceDescription。
参数
image(const VkImage)– [输入] 用于创建 FfxResourceDescription 的 VkImage 资源。createInfo(const VkImageCreateInfo)– [输入] 缓冲区的 VkImageCreateInfo。additionalUsages(FfxResourceUsage)– [输入] 用于选择资源映射的可选 FfxResourceUsage 标志。
返回: FFX_API FfxResourceDescription
来源: sdk/include/FidelityFX/host/backends/vk/ffx_vk.h (第 197 行, 列 32)
ffxGetCommandQueueVK
FFX_API FfxCommandQueue ffxGetCommandQueueVK(VkQueue commandQueue)从现有的 VkQueue 获取 FfxCommandQueue。
返回:一个 FfxCommandQueue。
参数
commandQueue(VkQueue)– [输入] 用于创建 FfxCommandQueue 的 VkQueue。
返回: FFX_API FfxCommandQueue
来源: sdk/include/FidelityFX/host/backends/vk/ffx_vk.h (第 209 行, 列 25)
ffxGetSwapchainVK
FFX_API FfxSwapchain ffxGetSwapchainVK(VkSwapchainKHR swapchain)从现有的 VkSwapchainKHR 获取 FfxSwapchain。
返回值: 一个 FfxSwapchain。
参数
| 名称 | 类型 | 默认 |
|---|---|---|
swapchain | VkSwapchainKHR | “ |
返回值: FFX_API FfxSwapchain
来源: sdk/include/FidelityFX/host/backends/vk/ffx_vk.h (第 219 行, 列 22)
ffxGetVKSwapchain
FFX_API VkSwapchainKHR ffxGetVKSwapchain(FfxSwapchain ffxSwapchain)从现有的 FfxSwapchain 获取 VkSwapchainKHR。
返回值: 一个 VkSwapchainKHR 对象。
参数
ffxSwapchain(FfxSwapchain)– [输入] 要从中获取 VkSwapchainKHR 的 FfxSwapchain。
返回值: FFX_API VkSwapchainKHR
来源: sdk/include/FidelityFX/host/backends/vk/ffx_vk.h (第 229 行, 列 24)
依赖项
此模块依赖于