feat(srp): add renderer-driven pipeline backbone
Introduce renderer-driven and renderer-backed managed pipeline base types in the Universal package. Move shared renderer-data/default-renderer ownership out of UniversalRenderPipelineAsset, migrate probe assets onto the generic seam, and expose renderer recording/request context types for future SRP expansion. Update scripting API-surface expectations and validate with build, unit tests, scripting tests, and old editor smoke.
This commit is contained in:
@@ -4,37 +4,12 @@ using XCEngine.Rendering;
|
||||
namespace XCEngine.Rendering.Universal
|
||||
{
|
||||
internal sealed class UniversalRenderPipeline
|
||||
: ScriptableRenderPipeline
|
||||
: RendererBackedRenderPipeline
|
||||
{
|
||||
private readonly UniversalRenderPipelineAsset m_asset;
|
||||
|
||||
public UniversalRenderPipeline(
|
||||
UniversalRenderPipelineAsset asset)
|
||||
: base(asset)
|
||||
{
|
||||
m_asset = asset;
|
||||
}
|
||||
|
||||
protected override bool SupportsStageRenderGraph(
|
||||
CameraFrameStage stage)
|
||||
{
|
||||
ScriptableRenderer renderer = GetDefaultRenderer();
|
||||
return renderer != null &&
|
||||
renderer.SupportsStageRenderGraph(stage);
|
||||
}
|
||||
|
||||
protected override bool RecordStageRenderGraph(
|
||||
ScriptableRenderContext context)
|
||||
{
|
||||
ScriptableRenderer renderer = GetDefaultRenderer();
|
||||
return renderer != null &&
|
||||
renderer.RecordStageRenderGraph(context);
|
||||
}
|
||||
|
||||
private ScriptableRenderer GetDefaultRenderer()
|
||||
{
|
||||
return m_asset != null
|
||||
? m_asset.GetDefaultRenderer()
|
||||
: null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user