Version: Unity 6.0 (6000.0)
언어 : 한국어
URP의 렌더 그래프 시스템의 프레임 데이터
URP의 이전 프레임에서 데이터 가져오기

URP의 현재 프레임에서 데이터 가져오기

URP(유니버설 렌더 파이프라인)이 현재 프레임에 대해 생성하는 텍스처(활성 컬러 버퍼 또는 G버퍼 텍스처 등)를 가져와 렌더 패스에서 사용할 수 있습니다.

이러한 텍스처를 프레임 데이터, 리소스 데이터 또는 프레임 리소스라고 합니다. 본 기술 자료에서는 이러한 텍스처를 프레임 데이터라고 지칭합니다.

커스텀 렌더 패스를 URP 프레임 렌더링 루프에 삽입하는 데 사용한 주입 지점에 따라 일부 텍스처가 프레임 데이터에 존재하지 않을 수 있습니다. 언제 어떤 텍스처가 존재하는지에 대한 상세 내용은 주입 지점 레퍼런스를 참조하십시오.

프레임 데이터 가져오기

프레임 데이터는 RecordRenderGraph 메서드를 오버라이드할 때 URP가 제공하는 ContextContainer 오브젝트에 있습니다.

다음 과정을 따라 프레임 데이터의 텍스처에 대한 핸들을 가져옵니다.

  1. ContextContainer 오브젝트의 Get 메서드를 사용하여 모든 프레임 데이터를 UniversalResourceData 오브젝트로서 가져옵니다.

    예시:

    public override void RecordRenderGraph(RenderGraph renderGraph, ContextContainer frameContext)
    {
        using (var builder = renderGraph.AddRasterRenderPass<PassData>("Get frame data", out var passData))
        {
            UniversalResourceData frameData = frameContext.Get<UniversalResourceData>();
        }
    }
    
  2. 프레임 데이터의 텍스처에 대한 핸들을 가져옵니다.

    예를 들어 다음은 활성 컬러 텍스처에 대한 핸들을 가져옵니다.

    TextureHandle activeColorTexture = frameData.activeColorTexture;
    

그러면 텍스처에서 대해 읽기와 쓰기를 수행할 수 있습니다. 렌더 패스에서 텍스처 사용을 참조하십시오.

텍스처 핸들은 현재 프레임의 현재 렌더 그래프에 대해서만 유효합니다.

ConfigureInput API를 사용하여 URP가 프레임 데이터에 필요한 텍스처를 생성하도록 할 수 있습니다.

예제

전체 예시는 TextureReference w라는 예시를 참조하십시오. URP(유니버설 렌더 파이프라인) 패키지 샘플의 FrameData

추가 리소스

URP의 렌더 그래프 시스템의 프레임 데이터
URP의 이전 프레임에서 데이터 가져오기
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961