2018-07-31 16:03:44 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "dxvk_include.h"
|
|
|
|
|
|
|
|
namespace dxvk {
|
|
|
|
|
|
|
|
/**
|
|
|
|
* \brief Device info
|
|
|
|
*
|
|
|
|
* Stores core properties and a bunch of extension-specific
|
|
|
|
* properties, if the respective extensions are available.
|
|
|
|
* Structures for unsupported extensions will be undefined,
|
|
|
|
* so before using them, check whether they are supported.
|
|
|
|
*/
|
|
|
|
struct DxvkDeviceInfo {
|
2020-01-16 19:59:56 +01:00
|
|
|
VkPhysicalDeviceProperties2 core;
|
2018-12-03 21:17:59 +01:00
|
|
|
VkPhysicalDeviceIDProperties coreDeviceId;
|
2018-11-07 10:36:34 +01:00
|
|
|
VkPhysicalDeviceSubgroupProperties coreSubgroup;
|
2020-05-04 13:27:19 +02:00
|
|
|
VkPhysicalDeviceCustomBorderColorPropertiesEXT extCustomBorderColor;
|
2020-04-27 09:46:35 +02:00
|
|
|
VkPhysicalDeviceRobustness2PropertiesEXT extRobustness2;
|
2018-08-01 01:11:00 +02:00
|
|
|
VkPhysicalDeviceTransformFeedbackPropertiesEXT extTransformFeedback;
|
2018-07-31 16:03:44 +02:00
|
|
|
VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT extVertexAttributeDivisor;
|
2019-08-13 10:38:44 +02:00
|
|
|
VkPhysicalDeviceDepthStencilResolvePropertiesKHR khrDepthStencilResolve;
|
2018-12-12 15:43:39 +01:00
|
|
|
VkPhysicalDeviceDriverPropertiesKHR khrDeviceDriverProperties;
|
2018-07-31 16:03:44 +02:00
|
|
|
};
|
|
|
|
|
2018-07-31 16:58:25 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* \brief Device features
|
|
|
|
*
|
|
|
|
* Stores core features and extension-specific features.
|
|
|
|
* If the respective extensions are not available, the
|
|
|
|
* extended features will be marked as unsupported.
|
|
|
|
*/
|
|
|
|
struct DxvkDeviceFeatures {
|
2020-01-16 19:59:56 +01:00
|
|
|
VkPhysicalDeviceFeatures2 core;
|
2020-01-16 20:37:41 +01:00
|
|
|
VkPhysicalDeviceShaderDrawParametersFeatures shaderDrawParameters;
|
2020-08-07 16:32:59 +02:00
|
|
|
VkPhysicalDevice4444FormatsFeaturesEXT ext4444Formats;
|
2019-07-02 20:25:06 +02:00
|
|
|
VkPhysicalDeviceConditionalRenderingFeaturesEXT extConditionalRendering;
|
2020-05-04 13:27:19 +02:00
|
|
|
VkPhysicalDeviceCustomBorderColorFeaturesEXT extCustomBorderColor;
|
2019-07-02 20:25:06 +02:00
|
|
|
VkPhysicalDeviceDepthClipEnableFeaturesEXT extDepthClipEnable;
|
2020-06-22 13:04:00 +02:00
|
|
|
VkPhysicalDeviceExtendedDynamicStateFeaturesEXT extExtendedDynamicState;
|
2019-07-02 20:25:06 +02:00
|
|
|
VkPhysicalDeviceHostQueryResetFeaturesEXT extHostQueryReset;
|
|
|
|
VkPhysicalDeviceMemoryPriorityFeaturesEXT extMemoryPriority;
|
2020-04-27 09:46:35 +02:00
|
|
|
VkPhysicalDeviceRobustness2FeaturesEXT extRobustness2;
|
2019-07-02 20:25:06 +02:00
|
|
|
VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT extShaderDemoteToHelperInvocation;
|
|
|
|
VkPhysicalDeviceTransformFeedbackFeaturesEXT extTransformFeedback;
|
|
|
|
VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT extVertexAttributeDivisor;
|
2018-07-31 16:58:25 +02:00
|
|
|
};
|
|
|
|
|
2018-07-31 16:03:44 +02:00
|
|
|
}
|