refactor(srp): align urp renderer slot semantics
This commit is contained in:
@@ -6,6 +6,7 @@ namespace XCEngine.Rendering.Universal
|
||||
{
|
||||
public abstract class ScriptableRendererData : Object
|
||||
{
|
||||
public ScriptableRendererFeature[] rendererFeatures;
|
||||
private ScriptableRendererFeature[] m_rendererFeatures;
|
||||
private ScriptableRenderer m_rendererInstance;
|
||||
private bool m_rendererInvalidated;
|
||||
@@ -13,6 +14,8 @@ namespace XCEngine.Rendering.Universal
|
||||
|
||||
protected ScriptableRendererData()
|
||||
{
|
||||
rendererFeatures =
|
||||
Array.Empty<ScriptableRendererFeature>();
|
||||
}
|
||||
|
||||
internal ScriptableRenderer CreateRendererInstance()
|
||||
@@ -196,13 +199,20 @@ namespace XCEngine.Rendering.Universal
|
||||
|
||||
protected virtual ScriptableRendererFeature[] CreateRendererFeatures()
|
||||
{
|
||||
return Array.Empty<ScriptableRendererFeature>();
|
||||
return rendererFeatures ??
|
||||
Array.Empty<ScriptableRendererFeature>();
|
||||
}
|
||||
|
||||
protected virtual void ReleaseRuntimeResources()
|
||||
{
|
||||
}
|
||||
|
||||
protected virtual ScriptableRendererFeature[]
|
||||
CreateDefaultRendererFeatures()
|
||||
{
|
||||
return Array.Empty<ScriptableRendererFeature>();
|
||||
}
|
||||
|
||||
protected bool isInvalidated
|
||||
{
|
||||
get
|
||||
@@ -279,6 +289,13 @@ namespace XCEngine.Rendering.Universal
|
||||
}
|
||||
}
|
||||
|
||||
protected void ResetRendererFeaturesToDefault()
|
||||
{
|
||||
rendererFeatures =
|
||||
CreateDefaultRendererFeatures() ??
|
||||
Array.Empty<ScriptableRendererFeature>();
|
||||
}
|
||||
|
||||
private ScriptableRendererFeature[] GetRendererFeatures()
|
||||
{
|
||||
if (m_rendererFeatures == null)
|
||||
|
||||
Reference in New Issue
Block a user