- add managed RenderStateBlock authoring types and wire them through DrawingSettings - let RenderObjectsRendererFeature author depth and stencil overrides for scene draws - apply scene draw render state overrides inside builtin forward pipeline and document the stage plan
32 lines
861 B
C#
32 lines
861 B
C#
namespace XCEngine.Rendering
|
|
{
|
|
public struct DrawingSettings
|
|
{
|
|
public string overrideMaterialPath;
|
|
public string shaderPassName;
|
|
public RenderStateBlock renderStateBlock;
|
|
|
|
public bool hasOverrideMaterial =>
|
|
!string.IsNullOrEmpty(
|
|
overrideMaterialPath);
|
|
|
|
public bool hasShaderPassName =>
|
|
!string.IsNullOrEmpty(
|
|
shaderPassName);
|
|
|
|
public bool hasRenderStateOverrides =>
|
|
renderStateBlock.hasOverrides;
|
|
|
|
public static DrawingSettings CreateDefault()
|
|
{
|
|
return new DrawingSettings
|
|
{
|
|
overrideMaterialPath = string.Empty,
|
|
shaderPassName = string.Empty,
|
|
renderStateBlock =
|
|
RenderStateBlock.CreateDefault()
|
|
};
|
|
}
|
|
}
|
|
}
|