using UnityEngine.Experimental.Rendering;
using UnityEngine.Experimental.Rendering.LightweightPipeline;
using UnityEngine.Experimental.Rendering.LWRP;
namespace UnityEngine.XR.ARFoundation.LWRPSupport
{
public class LWRPBeforeCameraRender : MonoBehaviour, IBeforeRender
{
const string k_ARBlitTag = "ARBackground Blit Pass";
public Material blitMaterial { get; set; }
///
/// Create, setup and return a ScriptableRenderPass that will blit the pass-thru video when this GameObject is rendered.
///
/// RenderTextureDescriptor for this pass.
/// RenderTargetHandle for color buffer.
/// RenderTargetHandle for depth buffer.
/// ClearFlag used for rendering.
///
public ScriptableRenderPass GetPassToEnqueue(RenderTextureDescriptor baseDescriptor, RenderTargetHandle colorHandle,
RenderTargetHandle depthHandle, ClearFlag clearFlag)
{
LWRPBackgroundRenderPass lwrpBackgroundRenderPass = new LWRPBackgroundRenderPass();
lwrpBackgroundRenderPass.Setup(blitMaterial, colorHandle.Identifier(), depthHandle.Identifier(),
baseDescriptor);
return lwrpBackgroundRenderPass;
}
}
}