1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2024-12-02 01:24:11 +01:00

[dxvk] Implement DxvkDevice::getShaderPipelineStages

This commit is contained in:
Philip Rebohle 2019-03-02 09:02:55 +01:00
parent d01110259c
commit 2a6d4fa2ba
No known key found for this signature in database
GPG Key ID: C8CC613427A31C99
2 changed files with 23 additions and 0 deletions

View File

@ -46,6 +46,23 @@ namespace dxvk {
}
VkPipelineStageFlags DxvkDevice::getShaderPipelineStages() const {
VkPipelineStageFlags result = VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT
| VK_PIPELINE_STAGE_VERTEX_SHADER_BIT
| VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT;
if (m_features.core.features.geometryShader)
result |= VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT;
if (m_features.core.features.tessellationShader) {
result |= VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT
| VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT;
}
return result;
}
DxvkDeviceOptions DxvkDevice::options() const {
DxvkDeviceOptions options;
options.maxNumDynamicUniformBuffers = m_properties.limits.maxDescriptorSetUniformBuffersDynamic;

View File

@ -141,6 +141,12 @@ namespace dxvk {
const DxvkDeviceFeatures& features() const {
return m_features;
}
/**
* \brief Queries supported shader stages
* \returns Supported shader pipeline stages
*/
VkPipelineStageFlags getShaderPipelineStages() const;
/**
* \brief Retrieves device options