Files
XCEngine/managed/XCEngine.RenderPipelines.Universal/Rendering/Universal/BuiltinGaussianSplatRendererFeature.cs

49 lines
1.2 KiB
C#

using XCEngine;
using XCEngine.Rendering;
namespace XCEngine.Rendering.Universal
{
public sealed class BuiltinGaussianSplatRendererFeature
: ScriptableRendererFeature
{
public RenderPassEvent passEvent =
RenderPassEvent.BeforeRenderingTransparents;
private NativeSceneFeaturePass m_pass;
protected override int ComputeRuntimeStateHash()
{
int hash =
base.ComputeRuntimeStateHash();
hash =
RuntimeStateHashUtility.Combine(
hash,
(int)passEvent);
return hash;
}
public override void Create()
{
m_pass = new NativeSceneFeaturePass(
NativeSceneFeaturePassId
.BuiltinGaussianSplat,
passEvent);
}
public override void AddRenderPasses(
ScriptableRenderer renderer,
RenderingData renderingData)
{
if (renderer == null)
{
return;
}
CreateInstance();
m_pass.Configure(passEvent);
renderer.EnqueuePass(m_pass);
}
}
}