MCPcopy Create free account
hub / github.com/SaschaWillems/VulkanCapsViewer / readPhysicalFeatures_EXT

Method readPhysicalFeatures_EXT

vulkanDeviceInfoExtensions.cpp:1713–2741  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1711 }
1712}
1713void VulkanDeviceInfoExtensions::readPhysicalFeatures_EXT() {
1714 VkPhysicalDeviceFeatures2 deviceFeatures2{};
1715 if (extensionSupported("VK_EXT_transform_feedback")) {
1716 const char* extension("VK_EXT_transform_feedback");
1717 VkPhysicalDeviceTransformFeedbackFeaturesEXT* extFeatures = new VkPhysicalDeviceTransformFeedbackFeaturesEXT{};
1718 extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT;
1719 deviceFeatures2 = initDeviceFeatures2(extFeatures);
1720 vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
1721 pushFeature2(extension, "transformFeedback", extFeatures->transformFeedback);
1722 pushFeature2(extension, "geometryStreams", extFeatures->geometryStreams);
1723 delete extFeatures;
1724 }
1725 if (extensionSupported("VK_EXT_texture_compression_astc_hdr")) {
1726 const char* extension("VK_EXT_texture_compression_astc_hdr");
1727 VkPhysicalDeviceTextureCompressionASTCHDRFeatures* extFeatures = new VkPhysicalDeviceTextureCompressionASTCHDRFeatures{};
1728 extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES;
1729 deviceFeatures2 = initDeviceFeatures2(extFeatures);
1730 vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
1731 pushFeature2(extension, "textureCompressionASTC_HDR", extFeatures->textureCompressionASTC_HDR);
1732 delete extFeatures;
1733 }
1734 if (extensionSupported("VK_EXT_astc_decode_mode")) {
1735 const char* extension("VK_EXT_astc_decode_mode");
1736 VkPhysicalDeviceASTCDecodeFeaturesEXT* extFeatures = new VkPhysicalDeviceASTCDecodeFeaturesEXT{};
1737 extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT;
1738 deviceFeatures2 = initDeviceFeatures2(extFeatures);
1739 vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
1740 pushFeature2(extension, "decodeModeSharedExponent", extFeatures->decodeModeSharedExponent);
1741 delete extFeatures;
1742 }
1743 if (extensionSupported("VK_EXT_pipeline_robustness")) {
1744 const char* extension("VK_EXT_pipeline_robustness");
1745 VkPhysicalDevicePipelineRobustnessFeaturesEXT* extFeatures = new VkPhysicalDevicePipelineRobustnessFeaturesEXT{};
1746 extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT;
1747 deviceFeatures2 = initDeviceFeatures2(extFeatures);
1748 vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
1749 pushFeature2(extension, "pipelineRobustness", extFeatures->pipelineRobustness);
1750 delete extFeatures;
1751 }
1752 if (extensionSupported("VK_EXT_conditional_rendering")) {
1753 const char* extension("VK_EXT_conditional_rendering");
1754 VkPhysicalDeviceConditionalRenderingFeaturesEXT* extFeatures = new VkPhysicalDeviceConditionalRenderingFeaturesEXT{};
1755 extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT;
1756 deviceFeatures2 = initDeviceFeatures2(extFeatures);
1757 vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
1758 pushFeature2(extension, "conditionalRendering", extFeatures->conditionalRendering);
1759 pushFeature2(extension, "inheritedConditionalRendering", extFeatures->inheritedConditionalRendering);
1760 delete extFeatures;
1761 }
1762 if (extensionSupported("VK_EXT_depth_clip_enable")) {
1763 const char* extension("VK_EXT_depth_clip_enable");
1764 VkPhysicalDeviceDepthClipEnableFeaturesEXT* extFeatures = new VkPhysicalDeviceDepthClipEnableFeaturesEXT{};
1765 extFeatures->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT;
1766 deviceFeatures2 = initDeviceFeatures2(extFeatures);
1767 vulkanContext.vkGetPhysicalDeviceFeatures2KHR(device, &deviceFeatures2);
1768 pushFeature2(extension, "depthClipEnable", extFeatures->depthClipEnable);
1769 delete extFeatures;
1770 }

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected