Align URP scene drawing with RenderGraph renderer lists

This commit is contained in:
2026-04-28 00:03:24 +08:00
parent 6b488d5eac
commit 03967b152d
13 changed files with 908 additions and 48 deletions

View File

@@ -28,6 +28,11 @@ namespace XCEngine.Rendering
.Rendering_ScriptableRenderContext_GetFramePlanId(
m_nativeHandle);
internal string passName =>
InternalCalls
.Rendering_ScriptableRenderContext_GetPassName(
m_nativeHandle) ?? string.Empty;
public RenderGraphTextureHandle sourceColorTexture =>
RenderGraphTextureHandle.FromNativeIndex(
InternalCalls
@@ -171,6 +176,23 @@ namespace XCEngine.Rendering
name));
}
internal RendererListHandle CreateRendererList(
RendererListDesc rendererListDesc,
DrawingSettings drawingSettings)
{
RenderStateBlock renderStateBlock =
drawingSettings.renderStateBlock;
return RendererListHandle.FromNativeIndex(
InternalCalls
.Rendering_ScriptableRenderContext_CreateRendererList(
m_nativeHandle,
ref rendererListDesc,
drawingSettings.overrideMaterialPath ??
string.Empty,
drawingSettings.shaderPassName ?? string.Empty,
ref renderStateBlock));
}
// Public RenderGraph raster authoring entry point. Built-in fullscreen
// kernels are internal URP implementation details, not public context
// shortcuts.