Files
ichni_Creator_Studio/Assets/Shaders/ClearRTAfterTransparent.cs
SoulliesOfficial 1a3d37d9b5 一些特效
2025-06-28 03:01:03 -04:00

35 lines
1021 B
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Rendering;
using UnityEngine.Rendering.Universal;
public class ClearRTAfterTransparent : ScriptableRendererFeature
{
class ClearPass : ScriptableRenderPass
{
public override void Execute(ScriptableRenderContext context, ref RenderingData renderingData)
{
CommandBuffer cmd = CommandBufferPool.Get("Clear RT After Transparent");
cmd.ClearRenderTarget(true, true, Color.clear); // 清颜色 & 深度
context.ExecuteCommandBuffer(cmd);
CommandBufferPool.Release(cmd);
}
}
ClearPass pass;
public override void Create()
{
pass = new ClearPass
{
renderPassEvent = RenderPassEvent.AfterRenderingTransparents // 在透明物体之后
};
}
public override void AddRenderPasses(ScriptableRenderer renderer, ref RenderingData renderingData)
{
renderer.EnqueuePass(pass);
}
}