{}!Google Tag Manager end}} 스크립팅을 통해 URP 프레임 렌더링에 커스텀 렌더 패스를 삽입하는 방법 | Universal RP | 14.0.9
docs.unity3d.com
    목차 표시/숨기기

    스크립팅을 통해 URP 프레임 렌더링에 커스텀 렌더 패스를 삽입하는 방법

    이 페이지에서는 커스텀 렌더러 기능을 구현하지 않고 스크립팅을 통해 커스텀 렌더 패스를 URP 프레임 렌더링에 삽입하는 방법을 설명합니다.

    1. RenderPipelineManager 클래스의 이벤트 중 하나에 메서드를 구독합니다.

    2. 구독된 메서드에서 ScriptableRenderer 인스턴스의 EnqueuePass 메서드를 사용하여 커스텀 렌더 패스를 URP 프레임 렌더링에 삽입합니다.

    예제 코드:

    public class EnqueuePass : MonoBehaviour
    {
        [SerializeField] private BlurSettings settings;    
        private BlurRenderPass blurRenderPass;
    
        private void OnEnable()
        {
            ...
            blurRenderPass = new BlurRenderPass(settings);
            // Subscribe the OnBeginCamera method to the beginCameraRendering event.
            RenderPipelineManager.beginCameraRendering += OnBeginCamera;
        }
    
        private void OnDisable()
        {
            RenderPipelineManager.beginCameraRendering -= OnBeginCamera;
            blurRenderPass.Dispose();
            ...
        }
    
        private void OnBeginCamera(ScriptableRenderContext context, Camera cam)
        {
            ...
            // Use the EnqueuePass method to inject a custom render pass
            cam.GetUniversalAdditionalCameraData()
                .scriptableRenderer.EnqueuePass(blurRenderPass);
        }
    }
    
    맨 위로
    Copyright © 2023 Unity Technologies —
    • Your Privacy Choices (Cookie Settings)