supported PhysicalDevice features2/properties2.

This commit is contained in:
2021-12-16 18:26:02 +08:00
parent 51ac3e73c8
commit d4e3149af2
3 changed files with 69 additions and 2 deletions

View File

@@ -9,8 +9,14 @@ class GPUPhysicalDevice
{
VkInstance instance=nullptr;
VkPhysicalDevice physical_device=nullptr;
VkPhysicalDeviceFeatures features;
VkPhysicalDeviceVulkan11Features features11;
VkPhysicalDeviceVulkan12Features features12;
VkPhysicalDeviceProperties properties;
VkPhysicalDeviceVulkan11Properties properties11;
VkPhysicalDeviceVulkan12Properties properties12;
VkPhysicalDeviceMemoryProperties memory_properties;
List<VkLayerProperties> layer_properties;
@@ -134,6 +140,9 @@ public:
const float GetMaxSamplerAnisotropy ()const{return properties.limits.maxSamplerAnisotropy;}
const float GetMaxSamplerLodBias ()const{return properties.limits.maxSamplerLodBias;}
const VkBool32 SupportYcbcrConversion ()const{return features11.samplerYcbcrConversion;}
const VkBool32 SupportClampMirrorToEdge ()const{return features12.samplerMirrorClampToEdge;}
const void GetPointSize(float &granularity,float &min_size,float &max_size)
{
granularity =properties.limits.pointSizeGranularity;