Version: Unity 6.0 (6000.0)
언어 : 한국어
URP에서 셰이더와 디퍼드 렌더링 경로의 호환성 확보
URP 설치 및 업그레이드

URP의 포워드+ 렌더링 경로 문제 해결

빌드 시간 단축

프로젝트에서 사용되는 활용 사례, 타겟 플랫폼, 렌더러, 기능은 매우 다양하므로 특정한 URP 설정으로 인해 수많은 셰이더 배리언트가 발생할 수 있습니다. 이 경우 컴파일 시간이 길어질 수 있습니다.

셰이더 컴파일 시간이 길어지면 플레이어 빌드 시간과 에디터에서 씬을 렌더링하는 시간 모두가 영향을 받습니다.

카메라당 가시광선 제한 값은 각 LitComplex Lit 셰이더 배리언트의 컴파일 시간에 영향을 미칩니다. 데스크톱 플랫폼에서 포워드+ 렌더링 경로의 해당 한도는 256입니다.

이 섹션에서는 기본 카메라당 최대 가시광선 수를 변경하여 셰이더 컴파일 시간을 단축하는 방법을 설명합니다.

가시광원 최대 개수 변경

참고: 이 지침은 URP 설계의 한계를 해결하는 방법을 설명합니다. 해당 제한 사항은 향후 출시할 Unity 버전에서 완화될 예정입니다.

Universal Render Pipeline Config 패키지에는 최대 가시광선 수를 정의하는 설정이 포함되어 있습니다. 다음 지침은 해당 설정을 수정하는 법을 설명합니다.

참고: 프로젝트의 Unity 버전을 업그레이드하는 경우 이 절차를 반복하십시오.

  1. 프로젝트 폴더에서 URP Config Package 폴더를 /Library/PackageCache/com.unity.render-pipelines.universal-config에서 /Packages/com.unity.render-pipelines.universal-config로 복사합니다.

  2. 파일 /com.unity.render-pipelines.universal-config/Runtime/ShaderConfig.cs.hlsl을 엽니다.

    해당 파일에는 MAX_VISIBLE_LIGHT_COUNT로 시작하며 타겟 플랫폼 이름으로 끝나는 여러 가지 정의가 포함되어 있습니다. 괄호 안에 있는 값을 프로젝트의 절두체 내 카메라당 최대 광원 수에 적합한 값(예: MAX_VISIBLE_LIGHT_COUNT_DESKTOP (32))으로 변경합니다.

    포워드+ 렌더링 경로의 경우 이 값에 메인 광원이 포함됩니다. 포워드 렌더링 경로의 경우 이 값에 메인 광원이 포함되지 않습니다.

  3. 파일 /com.unity.render-pipelines.universal-config/Runtime/ShaderConfig.cs를 엽니다.

    해당 파일에는 k_MaxVisibleLightCount로 시작하며 플랫폼 이름으로 끝나는 여러 가지 정의가 포함되어 있습니다. ShaderConfig.cs.hlsl 파일에 설정된 값과 일치하도록 값을 변경합니다(예: k_MaxVisibleLightCountDesktop = 32;).

  4. 편집한 파일을 저장하고 Unity 에디터를 다시 시작합니다. Unity는 새로운 설정을 사용할 수 있도록 자동으로 프로젝트와 셰이더를 설정합니다.

이제 각 셰이더 배리언트의 컴파일 시간이 줄었기 때문에 플레이어 빌드 시간도 단축되었습니다.

URP에서 셰이더와 디퍼드 렌더링 경로의 호환성 확보
URP 설치 및 업그레이드
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961