Go to the documentation of this file.
46 VkPhysicalDeviceAccelerationStructureFeaturesKHR
AccelStruct = {};
48 VkPhysicalDeviceRayQueryFeaturesKHR
RayQuery = {};
61 VkPhysicalDeviceAccelerationStructurePropertiesKHR
AccelStruct = {};
65 VkPhysicalDeviceSubgroupProperties
Subgroup = {};
76 static std::unique_ptr<VulkanPhysicalDevice>
Create(VkPhysicalDevice vkDevice,
88 uint32_t
GetMemoryTypeIndex(uint32_t typeBits, VkMemoryPropertyFlags properties)
const;
90 const VkPhysicalDeviceProperties&
GetProperties()
const {
return m_Properties; }
91 const VkPhysicalDeviceFeatures&
GetFeatures()
const {
return m_Features; }
101 const VkPhysicalDevice m_VkDevice;
102 VkPhysicalDeviceProperties m_Properties = {};
103 VkPhysicalDeviceFeatures m_Features = {};
104 VkPhysicalDeviceMemoryProperties m_MemoryProperties = {};
105 ExtensionFeatures m_ExtFeatures = {};
106 ExtensionProperties m_ExtProperties = {};
107 std::vector<VkQueueFamilyProperties> m_QueueFamilyProperties;
108 std::vector<VkExtensionProperties> m_SupportedExtensions;
VkPhysicalDeviceRayTracingPipelinePropertiesKHR RayTracingPipeline
Definition: VulkanPhysicalDevice.hpp:62
static std::unique_ptr< VulkanPhysicalDevice > Create(VkPhysicalDevice vkDevice, const VulkanInstance &Instance)
Definition: VulkanPhysicalDevice.cpp:36
bool HasPortabilitySubset
Definition: VulkanPhysicalDevice.hpp:54
bool IsExtensionSupported(const char *ExtensionName) const
Definition: VulkanPhysicalDevice.cpp:300
VkPhysicalDeviceDescriptorIndexingFeaturesEXT DescriptorIndexing
Definition: VulkanPhysicalDevice.hpp:53
const VkPhysicalDeviceFeatures & GetFeatures() const
Definition: VulkanPhysicalDevice.hpp:91
VkPhysicalDeviceRayQueryFeaturesKHR RayQuery
Definition: VulkanPhysicalDevice.hpp:48
VkPhysicalDeviceAccelerationStructureFeaturesKHR AccelStruct
Definition: VulkanPhysicalDevice.hpp:46
VkPhysicalDeviceSubgroupProperties Subgroup
Definition: VulkanPhysicalDevice.hpp:65
VulkanPhysicalDevice(const VulkanPhysicalDevice &)=delete
Definition: VulkanPhysicalDevice.hpp:58
bool Spirv14
Definition: VulkanPhysicalDevice.hpp:49
const VkPhysicalDeviceProperties & GetProperties() const
Definition: VulkanPhysicalDevice.hpp:90
uint32_t FindQueueFamily(VkQueueFlags QueueFlags) const
Definition: VulkanPhysicalDevice.cpp:232
uint32_t GetMemoryTypeIndex(uint32_t typeBits, VkMemoryPropertyFlags properties) const
Definition: VulkanPhysicalDevice.cpp:324
VkPhysicalDeviceBufferDeviceAddressFeaturesKHR BufferDeviceAddress
Definition: VulkanPhysicalDevice.hpp:52
VkPhysicalDeviceMeshShaderPropertiesNV MeshShader
Definition: VulkanPhysicalDevice.hpp:60
VkPhysicalDeviceShaderFloat16Int8FeaturesKHR ShaderFloat16Int8
Definition: VulkanPhysicalDevice.hpp:45
VkPhysicalDeviceAccelerationStructurePropertiesKHR AccelStruct
Definition: VulkanPhysicalDevice.hpp:61
const ExtensionFeatures & GetExtFeatures() const
Definition: VulkanPhysicalDevice.hpp:92
static constexpr uint32_t InvalidMemoryTypeIndex
Definition: VulkanPhysicalDevice.hpp:86
VkPhysicalDeviceDescriptorIndexingPropertiesEXT DescriptorIndexing
Definition: VulkanPhysicalDevice.hpp:63
VkPhysicalDeviceRayTracingPipelineFeaturesKHR RayTracingPipeline
Definition: VulkanPhysicalDevice.hpp:47
VkPhysicalDevicePortabilitySubsetPropertiesKHR PortabilitySubset
Definition: VulkanPhysicalDevice.hpp:64
VkPhysicalDevicePortabilitySubsetFeaturesKHR PortabilitySubset
Definition: VulkanPhysicalDevice.hpp:55
VkPhysicalDevice8BitStorageFeaturesKHR Storage8Bit
Definition: VulkanPhysicalDevice.hpp:44
VkPhysicalDeviceMeshShaderFeaturesNV MeshShader
Definition: VulkanPhysicalDevice.hpp:42
Definition: VulkanPhysicalDevice.hpp:37
Definition: VulkanPhysicalDevice.hpp:40
bool SubgroupOps
Definition: VulkanPhysicalDevice.hpp:51
VkPhysicalDevice GetVkDeviceHandle() const
Definition: VulkanPhysicalDevice.hpp:81
const ExtensionProperties & GetExtProperties() const
Definition: VulkanPhysicalDevice.hpp:93
Definition: VulkanCommandBuffer.hpp:33
VulkanPhysicalDevice & operator=(const VulkanPhysicalDevice &)=delete
const VkPhysicalDeviceMemoryProperties & GetMemoryProperties() const
Definition: VulkanPhysicalDevice.hpp:94
VkPhysicalDevice16BitStorageFeaturesKHR Storage16Bit
Definition: VulkanPhysicalDevice.hpp:43
Definition: VulkanInstance.hpp:37
bool CheckPresentSupport(uint32_t queueFamilyIndex, VkSurfaceKHR VkSurface) const
Definition: VulkanPhysicalDevice.cpp:309
bool Spirv15
Definition: VulkanPhysicalDevice.hpp:50
VkFormatProperties GetPhysicalDeviceFormatProperties(VkFormat imageFormat) const
Definition: VulkanPhysicalDevice.cpp:363