summaryrefslogtreecommitdiffstats
path: root/Graphics/GraphicsEngine
diff options
context:
space:
mode:
authorazhirnov <zh1dron@gmail.com>2021-02-26 19:03:12 +0000
committerassiduous <assiduous@diligentgraphics.com>2021-03-19 00:38:12 +0000
commit81eaec1f5f29c24999cdd56f42fa3fc57755ab17 (patch)
tree50308ffec0131c6909c8d36b5b91326447206fd2 /Graphics/GraphicsEngine
parentVulkan: added validation for DescriptorSetBaseInd, optimized field packing (diff)
downloadDiligentCore-81eaec1f5f29c24999cdd56f42fa3fc57755ab17.tar.gz
DiligentCore-81eaec1f5f29c24999cdd56f42fa3fc57755ab17.zip
Added PSO creation failure tests for mesh & ray tracing pipelines, fixed ray tracing pipeline validation.
Diffstat (limited to 'Graphics/GraphicsEngine')
-rw-r--r--Graphics/GraphicsEngine/include/PipelineStateBase.hpp3
-rw-r--r--Graphics/GraphicsEngine/src/PipelineStateBase.cpp2
2 files changed, 1 insertions, 4 deletions
diff --git a/Graphics/GraphicsEngine/include/PipelineStateBase.hpp b/Graphics/GraphicsEngine/include/PipelineStateBase.hpp
index 4ceb08a8..5d1e65e9 100644
--- a/Graphics/GraphicsEngine/include/PipelineStateBase.hpp
+++ b/Graphics/GraphicsEngine/include/PipelineStateBase.hpp
@@ -554,9 +554,6 @@ protected:
if (ShaderStages[GetShaderTypePipelineIndex(SHADER_TYPE_RAY_GEN, PIPELINE_TYPE_RAY_TRACING)].Count() == 0)
LOG_ERROR_AND_THROW("At least one shader with type SHADER_TYPE_RAY_GEN must be provided.");
- if (ShaderStages[GetShaderTypePipelineIndex(SHADER_TYPE_RAY_MISS, PIPELINE_TYPE_RAY_TRACING)].Count() == 0)
- LOG_ERROR_AND_THROW("At least one shader with type SHADER_TYPE_RAY_MISS must be provided.");
-
// Remove empty stages
for (auto iter = ShaderStages.begin(); iter != ShaderStages.end();)
{
diff --git a/Graphics/GraphicsEngine/src/PipelineStateBase.cpp b/Graphics/GraphicsEngine/src/PipelineStateBase.cpp
index 57fc1ae3..c1a314a6 100644
--- a/Graphics/GraphicsEngine/src/PipelineStateBase.cpp
+++ b/Graphics/GraphicsEngine/src/PipelineStateBase.cpp
@@ -449,7 +449,7 @@ void ValidateRayTracingPipelineCreateInfo(IRenderDevice* pDevice, Uint32 MaxRecu
{
case SHADER_TYPE_RAY_GEN:
case SHADER_TYPE_RAY_MISS:
- case SHADER_TYPE_RAY_CLOSEST_HIT: break;
+ case SHADER_TYPE_CALLABLE: break;
default:
LOG_PSO_ERROR_AND_THROW(GetShaderTypeLiteralName(Group.pShader->GetDesc().ShaderType), " is not a valid type for ray tracing general shader.");
}