본문 바로가기
Programming/Unity Light

[Unity] URP 최적의 조명 설정으로 성능을 향상하자! 1편

by 타임박스 2023. 12. 8.
반응형


✔  URP 설정 어떻게 해야할까?



프로젝트를 진행하면서 URP를 사용하는 이유는 이쁘게 렌더링 되니까 사용합니다 ㅎㅎㅎ

하지만 이쁜 이유가 다 있겟죠 ㅎㅎ 그만큼 CPU, GPU를 많이 사용하니까 이쁘게 됩니다 ㅎㅎ

URP 자체가 그리 무거운 편은 아니지만 모델이 무겁고 연산을 많이하게되면 URP도 버벅입니다.

특히나 제일 많이 연산되는게 바로 조명부분입니다.

URP로 프로젝트를 생성하면 일반적으로 그냥 설정되있는대로 사용하는 경우가 많습니다.

기능이 많지 않고 보여주는 컨텐츠용이라면 상관없겠지만 적당히 이쁘고 적당히 빨라야하면 이야기는 달라집니다

서두가 너무 길었네요 ^-^;;

적당히 이쁘고 적당히 빨라야한다면 어떻게 설정할까?

 

● 유니버셜 렌더 파이프라인 에셋 설정하기

  URP 프로젝트를 생성했다면 Project 폴더에 있는 파일 Universal Render Pipeline Asset이 있을겁니다.

  하지만 이건 사용하지 않을겁니다. 직접 생성해서 셋팅합시다

 ◆  렌더 파이프라인 에셋 생성 및 설정

 Project > Create > rendering > URP Asset 을 선택해서 생성합니다.

URP Asset 생성
설정화면

위 그림처럼 설정합니다.

이렇게 설정하면 너무 안이쁜데!!!? 이럴 수 있습니다. 왜냐면 성능 위주로 했으니까요.

이렇게 설정한 상태에서 필요한 부분만 성능을 올려주는겁니다. (저정도로 설정해도 나름 이쁩니다 ^^)

뭐가 필요한지 모를수 있죠.. 다른건 몰라도됩니다(?) 몇개만 알아도 됩니다 ㅎㅎ


 ▶ Quality 부분 설정

   Anti Aliasing (MSAA) >> Disable

  - 이렇게 설정했을때 계단 현상이 나타날 수 있어요. 계단 현상이 너무 심하다면 x2,x4.. 조금씩 증가시키면서 확인해보세요. x8은 성능이 너무 심하게 떨어지니 최대한 피하시고..

 ▶ Lighting 부분 설정

  1. Main Light 

    - Cast Shadows : 메인 빛 (딕셔너리 라이트)으로 그림자를 그릴건지 여부 >> 체크 (이건 해야죠 아님 넘 안이쁨 )

    - Shadow Resolution : 그림자 해상도 조정 >>  너무 높지않게 설정  (2048 이하로 설정)

  2. Additional Lights >> 메인 빛 말고 다른 빛(스폿, 포인트라이트 등)을 사용한다면 체크

    - Cast Shadows, Shadow Resolution 위와 같은 기능 >> 너무 높지않게 설정 (1024 이하)

3. Advanced (버전 마다 다를수 있어요 이부분이 없으면 패스하면 됩니다)

  - Mixed Lighting 활성화

 ▶ Shadows 부분 설정

  1. Max Distance : 거리에 따라 분산하여 그림자를 드리움(위에 라이트에서 해상도기준에 따라 분산됨) >> 낮게 잡아야됨 (100이하)

  2. Cascades (Cascade Count): 쉐도우맵 개수 설정 (거리에 따라 그림자 양을 다르게 설정하는것. 개수가 많으면 많을수록 가까이 있는게 더 진하고 멀수록 연해집니다)  >> NoCascades 선택 혹은 1개 (거리에 상관없이 그림자 진하기가 동일합니다. 퀄리티가 중요하다면 개수를 조금씩 늘려보세요)

  3. Depth Bias : 쉐도우 애크니를 없애기위한 설정 >> 지오메트리가 선으로 보이고 깨질때 Distance 값과 해당값을 적절히 조정

  4. Noal Bias : 위와 설명 동일 


자 이제 설정이 완료되었으니 적용해야겠죠?

Edit > Project Settings 누르고 Graphics에서 교체합니다.

자 이제 설정이 완료되었어요~

이제 1단계가 끝났어요.. 아직 갈길이 멉니다. 다음편은 Lighting Setting 부분입니다.

모두 고생하셨어요~ 

반응형

댓글