숙련된 Unity 개발자와 테크니컬 아티스트를 위한 유니버설 렌더 파이프라인(URP) 무료 전자책이 출간되었습니다.
유니티는 최대한 많은 플레이어에게 도달할 수 있도록 20개 이상의 플랫폼을 지원하고 있으며, 빌트인 렌더 파이프라인을 통해 여러 하드웨어에서 강력한 조합의 그래픽 기능을 제공하고자 노력합니다. 하지만 Unity에서 지원하는 플랫폼의 수가 크게 늘어나자 일부 한계가 드러났습니다.
Unity의 두 가지 스크립터블 렌더 파이프라인(SRP)인 고해상도 렌더 파이프라인(HDRP) 그리고 유니버설 렌더 파이프라인(URP)은 멀티플랫폼 개발 환경에서 높아져만 가는 렌더링 요구 사항을 충족하는 강력하고도 장기적인 솔루션입니다. SRP를 사용하면 C++ 등의 로우레벨 프로그래밍 언어를 사용하지 않고도 오브젝트 드로잉과 컬링, 프레임의 포스트 프로세싱을 효율적으로 커스터마이징할 수 있습니다. 또한 VFX 그래프 및 셰이더 그래프와 같은 저작 툴도 지원합니다.
전자책 Unity 크리에이터를 위한 유니버설 렌더 파이프라인 소개 고급편에는 125페이지에 걸쳐 URP 설정과 기능에 대한 심층적인 지식이 실려 있습니다. 이를 참고하여 Unity 프로젝트를 빌트인 렌더 파이프라인에서 URP로 업그레이드하는 방법을 익힐 수 있습니다. 이 가이드는 Unity 기술 자료를 보완하기 위해 제작되었으며 다른 교육 리소스와 함께 사용할 수 있습니다. 고도로 숙련된 내외부 Unity 개발자와 테크니컬 아티스트가 Unity 2021 LTS에서 제공하는 최신 기능을 반영하여 작성했습니다.
URP 가이드는 신규 사용자를 비롯한 모든 개발자에게 도움이 되는 책자로, 처음부터 차례로 읽거나 관심이 가는 특정 섹션에 집중해 읽을 수 있습니다. 책자에 담긴 주요 내용 몇 가지만 살펴보도록 하겠습니다.
포스트 하단에 가이드와 함께 보면 유용한 동영상 튜토리얼 링크도 있으니 끝까지 읽어주세요.
기존 프로젝트를 빌트인 렌더 파이프라인에서 URP로 전환하는 경우 URP 에셋 세트가 생성되어 빌트인 렌더 파이프라인 Quality 옵션과의 매칭을 시도합니다. 경우에 따라 URP 설정이 빌트인 렌더 파이프라인보다 더 높은 정확도를 제공하기도 합니다.
이로 인해 URP의 성능이 우수하지 않다고 여길 수도 있겠지만, 설정의 작동 방식을 이해하면 빌트인과 URP에서 향상된 성능과 시각적 결과물을 얻을 수 있습니다. 이 가이드에는 두 파이프라인 간의 Low 및 High 설정을 비교한 구체적인 표와, URP에서 각 Quality 설정을 찾을 수 있는 표도 포함하여 프로젝트를 전환하는 방법이 완벽하게 설명되어 있습니다.
빌트인 렌더 파이프라인에서 URP로 프로젝트를 전환하는 경우 조명에서 차이점을 발견할 수 있습니다. 이는 빌트인 렌더 파이프라인에서는 기본적으로 감마 조명 모델이 사용되고 URP에서는 선형 모델이 사용되기 때문입니다. 또한 에디터 내 Settings 관리 위치도 다르며, 여러 하드웨어 사양에 맞도록 설정하는 방식에도 차이가 있습니다.
전자책에서는 그래픽 정확도와 성능 사이에서 균형을 이루기 위한 팁을 포함하여 URP의 조명 설정에 관한 모든 측면을 자세히 살펴보며, 두 렌더링 파이프라인의 워크플로 간의 차이점을 설명합니다. 다음과 같은 내용을 다룹니다.
셰이더를 URP로 포팅하는 작업도 간단해졌습니다. 빌트인 렌더 파이프라인에서 URP로 기본 셰이더와 고급 셰이더를 포팅하는 방법뿐 아니라 빌트인과 URP 셰이더 간의 상세한 매핑이 제공됩니다. URP에서 작동하도록 기존의 커스텀 셰이더를 전환하고, 셰이더 그래프 없이 커스텀 셰이더를 코드로 작성하는 방법을 알아보세요.
셰이더 섹션에 포함된 표에는 사용 가능한 HLSL 셰이더 기능, 매크로 등이 나와 있으며 기타 유용한 기능이 포함된 관련 #include에 대한 링크도 제공됩니다.
해당 섹션에서는 URP 프레임워크 설정에 대한 단계별 지침을 안내합니다.
참고로 Built-in Post-Processing Stack v2 패키지는 URP와 호환되지 않습니다. URP는 포스트 프로세싱 이펙트를 위한 추가 패키지가 필요하지 않으며 볼륨(Volume) 프레임워크가 사용됩니다. 씬에 볼륨을 추가할 때 볼륨에 적용할 포스트 프로세싱 이펙트를 선택할 수 있습니다.
볼륨 모드에는 글로벌(Global)과 로컬(Local)이 있으며, 글로벌로 설정한 경우 볼륨은 씬의 모든 곳에서 카메라에 영향을 미칩니다. 모드를 로컬로 설정하면 콜라이더 경계 내에 있을 때만 볼륨이 카메라에 영향을 미칩니다.
렌더 오브젝트(Render Object)와 렌더러 기능(Renderer Feature), 카메라 스태킹(Camera Stacking), 최적화 기술을 사용하는 방법도 알아볼 수 있습니다. 무료 가이드를 다운로드하여 모든 팁을 확인하세요.
아래 소개하는 동영상 튜토리얼에서는 Unity 프로젝트를 단계별로 따라가며 전자책과 동일한 설명을 제공합니다.
커스텀 셰이더의 URP 전환에서는 업그레이드 과정에서 레거시 셰이더를 활용하는 방법을 살펴봅니다. 실제 Unity 프로젝트 내에서 커스텀 언릿 빌트인 셰이더를 URP로 전환하는 방법을 확인해보세요.
URP 렌더러 기능을 사용하는 세 가지 방법에서는 URP의 렌더러 기능을 사용한 세 가지 실습을 통해 커스텀 포스트 프로세싱 이펙트와 스텐실 이펙트, 환경에 가려진 캐릭터를 만드는 방법을 알아봅니다.