refactor(srp): move renderer request helpers out of core

This commit is contained in:
2026-04-19 05:34:43 +08:00
parent 9da85e9ad8
commit fe7e6dddf3
11 changed files with 240 additions and 24 deletions

View File

@@ -26,8 +26,10 @@ namespace XCEngine.Rendering.Renderer
ResolveRendererData();
if (rendererData != null)
{
RendererCameraRequestContext rendererContext =
new RendererCameraRequestContext(context);
rendererData.ConfigureCameraRenderRequestInstance(
context);
rendererContext);
}
}

View File

@@ -0,0 +1,39 @@
using XCEngine;
using XCEngine.Rendering;
namespace XCEngine.Rendering.Renderer
{
public sealed class RendererCameraRequestContext
{
private readonly ScriptableRenderPipelineCameraRequestContext
m_requestContext;
internal RendererCameraRequestContext(
ScriptableRenderPipelineCameraRequestContext requestContext)
{
m_requestContext = requestContext;
}
public int renderedBaseCameraCount =>
m_requestContext != null
? m_requestContext.renderedBaseCameraCount
: 0;
public int renderedRequestCount =>
m_requestContext != null
? m_requestContext.renderedRequestCount
: 0;
public bool hasDirectionalShadow =>
m_requestContext != null &&
m_requestContext.hasDirectionalShadow;
public void ClearDirectionalShadow()
{
if (m_requestContext != null)
{
m_requestContext.ClearDirectionalShadow();
}
}
}
}

View File

@@ -23,7 +23,7 @@ namespace XCEngine.Rendering.Renderer
}
internal void ConfigureCameraRenderRequestInstance(
ScriptableRenderPipelineCameraRequestContext context)
RendererCameraRequestContext context)
{
ConfigureCameraRenderRequest(context);
@@ -72,7 +72,7 @@ namespace XCEngine.Rendering.Renderer
}
protected virtual void ConfigureCameraRenderRequest(
ScriptableRenderPipelineCameraRequestContext context)
RendererCameraRequestContext context)
{
}

View File

@@ -16,7 +16,7 @@ namespace XCEngine.Rendering.Renderer
}
public virtual void ConfigureCameraRenderRequest(
ScriptableRenderPipelineCameraRequestContext context)
RendererCameraRequestContext context)
{
}