Singularity/Library/PackageCache/com.unity.render-pipelines..../Runtime/Passes/XROcclusionMeshPass.cs
2024-05-06 11:45:45 -07:00

33 lines
926 B
C#

#if ENABLE_VR && ENABLE_XR_MODULE
namespace UnityEngine.Rendering.Universal
{
/// <summary>
/// Draw the XR occlusion mesh into the current depth buffer when XR is enabled.
/// </summary>
public class XROcclusionMeshPass : ScriptableRenderPass
{
public XROcclusionMeshPass(RenderPassEvent evt)
{
base.profilingSampler = new ProfilingSampler(nameof(XROcclusionMeshPass));
renderPassEvent = evt;
}
/// <inheritdoc/>
public override void Execute(ScriptableRenderContext context, ref RenderingData renderingData)
{
if (!renderingData.cameraData.xr.enabled)
return;
CommandBuffer cmd = CommandBufferPool.Get();
renderingData.cameraData.xr.RenderOcclusionMesh(cmd);
context.ExecuteCommandBuffer(cmd);
CommandBufferPool.Release(cmd);
}
}
}
#endif