{}!Google Tag Manager end}} 유니버설 렌더 파이프라인 12 버전으로 업그레이드 | Universal RP | 14.0.9
docs.unity3d.com
    목차 표시/숨기기

    유니버설 렌더 파이프라인 12 버전으로 업그레이드

    이 페이지는 예전 버전의 유니버설 렌더 파이프라인(URP)에서 12.0.x 버전으로 업그레이드하는 방법을 소개합니다.

    빌트인 렌더 파이프라인 프로젝트용으로 제작된 에셋을 URP와 호환되는 에셋으로 전환하는 방법에 대한 자세한 내용은 렌더 파이프라인 컨버터 페이지를 참조하십시오.

    URP 11.x.x에서 업그레이드

    • 포워드 렌더러 에셋의 이름을 유니버설 렌더러 에셋으로 변경했습니다. URP 12가 포함된 기존 프로젝트를 Unity 에디터에서 열면 Unity는 기존 포워드 렌더러 에셋을 유니버설 렌더러 에셋으로 업데이트합니다.

    • 유니버설 렌더러 에셋에는 포워드 또는 디퍼드 렌더링 경로를 선택할 수 있는 Rendering Path 프로퍼티가 포함되어 있습니다.

    • 이제 ClearFlag.Depth 메서드는 스텐실 버퍼를 암시적으로 지우지 않습니다. 새 메서드인 ClearFlag.Stencil을 사용하십시오.

    • URP 12는 렌더 파이프라인 컨버터 기능을 구현합니다. 이 기능은 이전에 Edit > Render Pipeline > Universal Render Pipeline > Upgrade...에서 제공되던 에셋 업그레이드 기능을 대체합니다.

    URP 10.0.x-10.2.x에서 업그레이드

    1. 다음 셰이더 그래프 셰이더의 파일 이름이 변경되었습니다. 새 파일 이름에는 공백이 없습니다.
      Autodesk Interactive
      Autodesk Interactive Masked
      Autodesk Interactive Transparent

      Shader.Find() 메서드를 사용하여 셰이더를 찾는 경우 셰이더 이름에서 공백을 제거하십시오(예: Shader.Find("AutodeskInteractive)).

    URP 7.2.x 이상 릴리스에서 업그레이드

    1. URP 12.x.x는 패키지 포스트 프로세싱 스택 v2를 지원하지 않습니다. 프로젝트가 패키지 포스트 프로세싱 스택 v2를 사용하는 경우 먼저 해당 패키지를 사용하는 효과를 마이그레이션하십시오.

    DepthNormals 패스

    버전 10.0.x부터 URP는 _CameraNormalsTexture라는 노멀 텍스처를 생성할 수 있습니다. 커스텀 셰이더에서 이 텍스처로 렌더링하려면 DepthNormals라는 이름의 패스를 추가하십시오. 예제는 Lit.shader 구현을 참조하십시오.

    스크린 공간 앰비언트 오클루전(SSAO)

    URP 10.0.x는 스크린 공간 앰비언트 오클루전(SSAO) 효과를 구현합니다.

    커스텀 셰이더에 SSAO 효과를 사용하려는 경우 SSAO와 관련된 다음 엔터티를 고려하십시오.

    • _SCREEN_SPACE_OCCLUSION 키워드.

    • Input.hlsl의 InputData 구조체에는 float2 normalizedScreenSpaceUV라는 새로운 선언이 들어 있습니다.

    • Lighting.hlsl에는 간접 및 직접 오클루전 계산을 위한 변수가 포함된 AmbientOcclusionFactor 구조체가 들어 있습니다.

      struct AmbientOcclusionFactor
      {
          half indirectAmbientOcclusion;
          half directAmbientOcclusion;
      };
      
    • Lighting.hlsl에는 SSAO 텍스처를 샘플링하기 위한 다음 함수가 들어 있습니다.

      half SampleAmbientOcclusion(float2 normalizedScreenSpaceUV)
      
    • Lighting.hlsl에는 다음 함수가 들어 있습니다.

      AmbientOcclusionFactor GetScreenSpaceAmbientOcclusion(float2
      normalizedScreenSpaceUV)
      

    커스텀 셰이더에서 SSAO를 지원하려면 DepthNormals 패스와 _SCREEN_SPACE_OCCLUSION 키워드를 셰이더에 추가하십시오. 예제는 Lit.shader를 참조하십시오.

    커스텀 셰이더가 커스텀 함수를 구현하는 경우 GetScreenSpaceAmbientOcclusion(float2 normalizedScreenSpaceUV) 함수를 사용하여 조명 계산을 위한 AmbientOcclusionFactor 값을 가져오십시오.

    그림자 노멀 바이어스

    11.0.x에서는 그림자 노멀 바이어스를 적용하는 데 사용되는 수식이 펑추얼 광원에서 더욱 잘 작동하도록 약간 수정되었습니다. 따라서 이전 버전의 그림자 윤곽선과 정확히 일치하려면 일부 씬에서 파라미터를 조정해야 할 수 있습니다. 일반적으로 방향 광원의 경우 1.0 대신 1.4를 사용하면 충분합니다.

    임시 텍스처

    이전 URP 버전에서는 렌더러에 활성 렌더러 기능이 있는 경우 URP가 임시 렌더러를 통해 렌더링을 수행했습니다. 이는 일부 플랫폼에서 성능에 상당한 영향을 미쳤습니다. 이 릴리스에서 URP는 다음과 같은 방식으로 이 문제를 완화했습니다. URP는 렌더러 기능이 ScriptableRenderPass.ConfigureInput 메서드를 사용하여 입력을 선언한다고 예상합니다. 이 메서드는 URP가 임시 텍스처를 통한 렌더링이 필요한지 자동으로 결정하는 데 사용하는 정보를 제공합니다.

    호환성 목적으로 유니버설 렌더러에 Intermediate Texture 프로퍼티가 새로 추가되었습니다. 이 프로퍼티에서 Always를 선택하면 URP가 임시 텍스처를 사용합니다. Auto를 선택하면 새 동작이 활성화됩니다. Always 옵션은 렌더러 기능이 ScriptableRenderPass.ConfigureInput 메서드를 사용하여 입력을 선언하지 않는 경우에만 사용하십시오.

    기존 프로젝트가 올바르게 동작하도록 하려면 렌더러 기능을 사용하던 모든 기존 유니버설 렌더러 에셋(URP에 포함된 에셋은 제외)의 Intermediate Texture 프로퍼티에서 Always 옵션을 선택해야 합니다. 새로 생성된 모든 유니버설 렌더러 에셋은 Auto 옵션을 자동으로 선택합니다.

    URP 7.0.x-7.1.x에서 업그레이드

    1. 먼저 URP 7.2.0으로 업그레이드합니다. 유니버설 렌더 파이프라인 7.2.0 버전으로 업그레이드를 참조합니다.

    2. URP 8.x.x는 포스트 프로세싱 스택 V2 패키지를 지원하지 않습니다. 프로젝트가 포스트 프로세싱 스택 V2 패키지를 사용하는 경우 해당 패키지를 사용하는 효과를 먼저 마이그레이션해야 합니다.

    LWRP에서 12.x.x로 업그레이드

    • LWRP에서 URP 12.x.x로 직접 업그레이드할 수 있는 경로는 없습니다. 먼저 LWRP를 URP 11.x.x로 업그레이드한 후 URP 11.x.x에서 URP 12.x.x로 업그레이드하는 단계를 따르십시오.
    맨 위로
    Copyright © 2023 Unity Technologies —
    • Your Privacy Choices (Cookie Settings)