75 lines
1.6 KiB
C#
75 lines
1.6 KiB
C#
using XCEngine;
|
|
|
|
namespace XCEngine.Rendering
|
|
{
|
|
public abstract class ScriptableRenderPipeline : Object
|
|
{
|
|
private bool m_disposed;
|
|
|
|
protected ScriptableRenderPipeline()
|
|
{
|
|
}
|
|
|
|
internal void DisposeInstance()
|
|
{
|
|
if (m_disposed)
|
|
{
|
|
return;
|
|
}
|
|
|
|
Dispose(true);
|
|
m_disposed = true;
|
|
}
|
|
|
|
internal void FinishCameraStackRenderingInstance(
|
|
int rendererIndex,
|
|
ulong framePlanId)
|
|
{
|
|
FinishCameraStackRendering(
|
|
rendererIndex,
|
|
framePlanId);
|
|
}
|
|
|
|
protected virtual bool SupportsStageRenderGraph(
|
|
CameraFrameStage stage)
|
|
{
|
|
return false;
|
|
}
|
|
|
|
protected virtual bool SupportsStageRenderGraphContextual(
|
|
CameraFrameStage stage,
|
|
int rendererIndex)
|
|
{
|
|
return SupportsStageRenderGraph(stage);
|
|
}
|
|
|
|
protected virtual bool SupportsStageRenderGraphContextual(
|
|
CameraFrameStage stage,
|
|
int rendererIndex,
|
|
ulong framePlanId)
|
|
{
|
|
return SupportsStageRenderGraphContextual(
|
|
stage,
|
|
rendererIndex);
|
|
}
|
|
|
|
protected virtual bool RecordStageRenderGraph(
|
|
ScriptableRenderContext context)
|
|
{
|
|
return false;
|
|
}
|
|
|
|
protected virtual void FinishCameraStackRendering(
|
|
int rendererIndex,
|
|
ulong framePlanId)
|
|
{
|
|
}
|
|
|
|
protected virtual void Dispose(
|
|
bool disposing)
|
|
{
|
|
}
|
|
}
|
|
}
|
|
|