모름

유니티 LWRP

 

*LWRP는 유니티에서 제공하는 SRP의 샘플입니다.

 

유니티에서 제공되는 LWRP(URP)는 오큘러스앱에서도 사용이 가능하도록 준비된 자산입니다. LWRP는 특히 기술적으로 넓은 범위의 하드웨어에 사용될 수 있지만, 무엇보다 오큘러스 퀘스트같은 독립형 해드셋에 특별히 더 적합합니다.

 

 

 


 

 

 

LWRP를 사용하는 것에 대한 장점

 

LWRP는 모든 수준의 개발자들이 전문가급의 그래픽 레벨에 접근하게합니다. 저처럼 경험이 적은 개발자에게 매우 유용합니다. 이 정도의 그래픽 수준을 뽑아낼 생각을 못할 개발자들에게 단순히 LWRP에 주어지는 몇몇 설정을 건듬으로서 훌륭한 수준의 그래픽 효과에 다다르게 해줍니다.

 

그리고 숙련자에게도 많은 장점이 있습니다. 숙련 (그래픽)개발자는 LWRP 패키지의 소스 코드를 마음껏 수정해서 원하는대로 커스텀한 프로젝트를 만들어낼수 있습니다.

 

 

 


 

 

 

LWRP로의 업그레이드

 

기본적으로 빌트 인 파이프라인 셰이더(기본 내장 셰이더)를 사용하신다면 LWRP 프로젝트에서 세이더 업그레이드를 지원합니다. 문서도 있구요. 하지만 커스텀 세이더를 사용중이시라면, LWRP 프로젝트에 맞게 다시 작성하셔야합니다.

 

 

 


 

 

 

LWRP의 그래픽 성능

 

LWRP는 싱글패스와 전방렌더러를 사용합니다. 그래서 조명은 싱글패스로 그려집니다. (즉 한번만). 이 말은 즉 오큘러스 디바이에서 드로우 콜을 절감할수 있음을 의미하고, 이는 CPU 비용을 상당히 낮춥니다. 멀티 패스에 비해서요.

 

 

 


 

 

 

오큘러스 퀘스트에 LWRP의 적용

 

LWRP의 다양한 후처리가 저사양 하드웨어를 타겟하여 나왔지만, 실제 후처리를 사용하기에는 문제가 하나 있습니다.

 

LWRP의 후처리를 오큘러스 퀘스트에서 사용하게 된다면 많은 양의 GPU 자원이 필요합니다. 후처리에는 임시 텍스처가 필요하기 때문입니다. 이러한 이유로 오큘러스 퀘스트 개발자들은 후처리 전에 목표한 기능 및 개발에 다가갔는지 확인해야하고. 다가기지 못했다면 후처리 기능을 사용하지 않는게 좋습니다. 아마도 대부분의 개발자들은 퀘스트 앱에서 전용 후처리를 사용한다면 원하는 프레임률을 맞추지 못할겁니다.

 

 

아래는 주의사항 요약하자면 임시텍스처를 발생시키는 효과들을 사용하지 말라는 듯 합니다.

 

Caution: Unity’s default LWRP template currently contains settings that will force the use of intermediate textures and reduce performance greatly as a result. Examples of techniques that could do so are: camera HDR, post-processing, a motion vector pass, and more. If you use this sample, you’ll have to make the appropriate modifications to turn these features off, if you want to hit adequate performance on the Oculus Quest. Using Renderdoc is a great way to verify that you’re not using these intermediates.

 

 

 


 

 

 

참고자료

Oculust blog : Getting Started with Unity’s Lightweight Render Pipeline (LWRP)

링크 : https://developer.oculus.com/blog/getting-started-with-unitys-lightweight-render-pipeline-lwrp/