diff options
| author | assiduous <assiduous@diligentgraphics.com> | 2021-02-26 06:34:36 +0000 |
|---|---|---|
| committer | assiduous <assiduous@diligentgraphics.com> | 2021-03-19 00:38:11 +0000 |
| commit | f6afada5ec4ece09b2056b540dac70ee5be5a332 (patch) | |
| tree | 17aff3486e51a07e1020d681f7d38d355e2d65be /Graphics/GraphicsEngine | |
| parent | Reworked PSO intialization to allow shader resources be combined when defined... (diff) | |
| download | DiligentCore-f6afada5ec4ece09b2056b540dac70ee5be5a332.tar.gz DiligentCore-f6afada5ec4ece09b2056b540dac70ee5be5a332.zip | |
Added PSO creation failure tests
Diffstat (limited to 'Graphics/GraphicsEngine')
| -rw-r--r-- | Graphics/GraphicsEngine/src/PipelineStateBase.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Graphics/GraphicsEngine/src/PipelineStateBase.cpp b/Graphics/GraphicsEngine/src/PipelineStateBase.cpp index 85b7da0a..57fc1ae3 100644 --- a/Graphics/GraphicsEngine/src/PipelineStateBase.cpp +++ b/Graphics/GraphicsEngine/src/PipelineStateBase.cpp @@ -268,7 +268,8 @@ void ValidatePipelineResourceLayoutDesc(const PipelineStateDesc& PSODesc) noexce if ((it->second & Var.ShaderStages) != 0) { LOG_PSO_ERROR_AND_THROW("Shader variable '", Var.Name, "' is defined in overlapping shader stages (", GetShaderStagesString(Var.ShaderStages), - " and ", GetShaderStagesString(it->second), "), which is not allowed."); + " and ", GetShaderStagesString(it->second), + "). Multiple variables with the same name are allowed, but shader stages they use must not overlap."); } } UniqueVariables.emplace(Var.Name, Var.ShaderStages); @@ -286,7 +287,8 @@ void ValidatePipelineResourceLayoutDesc(const PipelineStateDesc& PSODesc) noexce if ((it->second & Sam.ShaderStages) != 0) { LOG_PSO_ERROR_AND_THROW("Immutable sampler '", Sam.SamplerOrTextureName, "' is defined in overlapping shader stages (", GetShaderStagesString(Sam.ShaderStages), - " and ", GetShaderStagesString(it->second), "), which is not allowed."); + " and ", GetShaderStagesString(it->second), + "). Multiple immutable samplers with the same name are allowed, but shader stages they use must not overlap."); } } UniqueSamplers.emplace(Sam.SamplerOrTextureName, Sam.ShaderStages); |
