summaryrefslogtreecommitdiffstats
path: root/Graphics/GraphicsEngine
diff options
context:
space:
mode:
authorassiduous <assiduous@diligentgraphics.com>2021-01-25 21:42:02 +0000
committerassiduous <assiduous@diligentgraphics.com>2021-01-25 21:43:08 +0000
commit52dcae5ec7a176e343950b531be92187d3a5d591 (patch)
tree00cb67940d08371e684f31402311c3038c7625e3 /Graphics/GraphicsEngine
parentPipeline resource signature: added static sampler test (diff)
downloadDiligentCore-52dcae5ec7a176e343950b531be92187d3a5d591.tar.gz
DiligentCore-52dcae5ec7a176e343950b531be92187d3a5d591.zip
GraphicsAccessories: added PipelineTypeFromShaderStages function
Diffstat (limited to 'Graphics/GraphicsEngine')
-rw-r--r--Graphics/GraphicsEngine/interface/PipelineState.h4
-rw-r--r--Graphics/GraphicsEngine/interface/Shader.h22
2 files changed, 23 insertions, 3 deletions
diff --git a/Graphics/GraphicsEngine/interface/PipelineState.h b/Graphics/GraphicsEngine/interface/PipelineState.h
index 5e2aa72b..90f54ebc 100644
--- a/Graphics/GraphicsEngine/interface/PipelineState.h
+++ b/Graphics/GraphicsEngine/interface/PipelineState.h
@@ -302,7 +302,9 @@ DILIGENT_TYPED_ENUM(PIPELINE_TYPE, Uint8)
/// Ray tracing pipeline, which is used by IDeviceContext::TraceRays().
PIPELINE_TYPE_RAY_TRACING,
- PIPELINE_TYPE_LAST = PIPELINE_TYPE_RAY_TRACING
+ PIPELINE_TYPE_LAST = PIPELINE_TYPE_RAY_TRACING,
+
+ PIPELINE_TYPE_INVALID = 0xFF
};
diff --git a/Graphics/GraphicsEngine/interface/Shader.h b/Graphics/GraphicsEngine/interface/Shader.h
index e7694ca4..28207960 100644
--- a/Graphics/GraphicsEngine/interface/Shader.h
+++ b/Graphics/GraphicsEngine/interface/Shader.h
@@ -60,11 +60,29 @@ DILIGENT_TYPED_ENUM(SHADER_TYPE, Uint32)
SHADER_TYPE_RAY_ANY_HIT = 0x0800, ///< Ray any hit shader
SHADER_TYPE_RAY_INTERSECTION = 0x1000, ///< Ray intersection shader
SHADER_TYPE_CALLABLE = 0x2000, ///< Callable shader
- SHADER_TYPE_LAST = SHADER_TYPE_CALLABLE
+ SHADER_TYPE_LAST = SHADER_TYPE_CALLABLE,
+
+ /// All graphics pipeline shader stages
+ SHADER_TYPE_ALL_GRAPHICS = SHADER_TYPE_VERTEX |
+ SHADER_TYPE_PIXEL |
+ SHADER_TYPE_GEOMETRY |
+ SHADER_TYPE_HULL |
+ SHADER_TYPE_DOMAIN,
+
+ /// All mesh shading pipeline stages
+ SHADER_TYPE_ALL_MESH = SHADER_TYPE_AMPLIFICATION |
+ SHADER_TYPE_MESH,
+
+ /// All ray-tracing pipeline shader stages
+ SHADER_TYPE_ALL_RAY_TRACING = SHADER_TYPE_RAY_GEN |
+ SHADER_TYPE_RAY_MISS |
+ SHADER_TYPE_RAY_CLOSEST_HIT |
+ SHADER_TYPE_RAY_ANY_HIT |
+ SHADER_TYPE_RAY_INTERSECTION |
+ SHADER_TYPE_CALLABLE
};
DEFINE_FLAG_ENUM_OPERATORS(SHADER_TYPE);
-
/// Describes the shader source code language
DILIGENT_TYPED_ENUM(SHADER_SOURCE_LANGUAGE, Uint32)
{