feat(srp): add drawing settings override material seam

- add a managed DrawingSettings seam for scene draw authoring
- let builtin forward scene draws use an override material when provided
- wire DrawObjectsPass and RenderObjectsRendererFeature through the new settings
This commit is contained in:
2026-04-20 22:46:19 +08:00
parent fece3a84ad
commit 0319680954
12 changed files with 158 additions and 18 deletions

View File

@@ -67,22 +67,47 @@ namespace XCEngine.Rendering
public bool DrawRenderers(
SceneRenderPhase scenePhase,
RendererListType rendererListType)
{
return DrawRenderers(
scenePhase,
rendererListType,
DrawingSettings.CreateDefault());
}
public bool DrawRenderers(
SceneRenderPhase scenePhase,
RendererListType rendererListType,
DrawingSettings drawingSettings)
{
return DrawRenderers(
scenePhase,
RendererListDesc.CreateDefault(
rendererListType));
rendererListType),
drawingSettings);
}
public bool DrawRenderers(
SceneRenderPhase scenePhase,
RendererListDesc rendererListDesc)
{
return DrawRenderers(
scenePhase,
rendererListDesc,
DrawingSettings.CreateDefault());
}
public bool DrawRenderers(
SceneRenderPhase scenePhase,
RendererListDesc rendererListDesc,
DrawingSettings drawingSettings)
{
return InternalCalls
.Rendering_ScriptableRenderContext_DrawRenderersByDesc(
m_nativeHandle,
(int)scenePhase,
ref rendererListDesc);
ref rendererListDesc,
drawingSettings.overrideMaterialPath ??
string.Empty);
}
public bool RecordOpaqueScenePhase()