ezEngine Release 26.3
Loading...
Searching...
No Matches
ezVulkanInitInterface.h
1#pragma once
2
3#include <RendererVulkan/RendererVulkanDLL.h>
4
9{
10public:
11 virtual ~ezVulkanInitInterface() = default;
12
15 virtual vk::Instance CreateInstance(const vk::InstanceCreateInfo& createInfo) = 0;
16
19 virtual vk::PhysicalDevice GetPhysicalDevice(vk::Instance instance) = 0;
20
23 virtual vk::Device CreateDevice(const vk::DeviceCreateInfo& createInfo) = 0;
24
27 virtual void ExtendInstanceExtensions(const ezDynamicArray<vk::ExtensionProperties>& availableExtensions, ezDynamicArray<ezString>& ref_extensions) {}
28
31 virtual void ExtendDeviceExtensions(const ezDynamicArray<vk::ExtensionProperties>& availableExtensions, ezDynamicArray<ezString>& ref_extensions) {}
32};
Definition DynamicArray.h:81
Interface for customizing Vulkan instance and device creation.
Definition ezVulkanInitInterface.h:9
virtual void ExtendDeviceExtensions(const ezDynamicArray< vk::ExtensionProperties > &availableExtensions, ezDynamicArray< ezString > &ref_extensions)
Extends the device extensions required. Used by XR_KHR_vulkan_enable (v1) to add required device exte...
Definition ezVulkanInitInterface.h:31
virtual void ExtendInstanceExtensions(const ezDynamicArray< vk::ExtensionProperties > &availableExtensions, ezDynamicArray< ezString > &ref_extensions)
Extends the instance extensions required. Used by XR_KHR_vulkan_enable (v1) to add required instance ...
Definition ezVulkanInitInterface.h:27
virtual vk::Instance CreateInstance(const vk::InstanceCreateInfo &createInfo)=0
Creates the Vulkan instance using platform-specific requirements. Returns nullptr if the instance sho...
virtual vk::PhysicalDevice GetPhysicalDevice(vk::Instance instance)=0
Returns the physical device to use. Returns nullptr if the renderer should select the physical device...
virtual vk::Device CreateDevice(const vk::DeviceCreateInfo &createInfo)=0
Creates the Vulkan device using platform-specific requirements. Returns nullptr if the device should ...