URP (유니티 렌더링 파이프라인) 내용 정리하기

Yeons·2023년 3월 9일
0

Unity개발과정이야기

목록 보기
10/10

출처 : https://youtu.be/wNFjsi6MjAQ

URP 등장배경

RP -> SRP -> URP
원래 유니티는 렌더링 파이프라인에 접근하기 어려운 구조로 되어있으나,
유니티에서는 SRP의 템플릿으로서 URP와 HDRP를 제공하여 이를 해결하였다.

URP 장점

  1. 특정 상황에서 비약적인 성능향상 가능
  2. 세이더 그래프 기능 추가
  3. 지속적인 업데이트
  4. 최신 기능 탑재
  5. 유니티 공식 튜토리얼이 많음

URP 적용 처음하면 나타나는 것

  1. 오브젝트들이 마젠타(인쇄용 자주색)으로 변한다.
    -> 기존의 내장 세이더들이 URP와 호환되지 않기 때문에 발생하는 것이다.

  2. Standard 셰이더도 호환되지 않기에, Material URP/Lit으로 변경한다.

  3. 커스텀 쉐이더는 제대로 변환되지 않아서 다시 짜야함

URP 장점(자세히)

  1. 다수의 실시간 광원
  2. SRP Batcher
  3. 포스트 프로세싱
  4. 업스케일 샘플링

1. 다수의 실시간 광원

관련 개념 : Draw Call
: CPU가 GPU에게 보내는 '화면에 무언가를 그려달라'는 일체의 명령들
: CPU의 성능에 영향을 미침
: 최적화를 위해서는 횟수 자체를 줄여야함

URP는 다수의 광원, 한 번의 드로우 콜을 한다. Multi light Single pass
light 연산은 기본적으로 무겁다.

2. SRP Batcher

  1. 기본적으로 유니티엣 Material이 다른 오브젝트는 따로 렌더링 해야함
  2. 하나의 Material을 공유하는 메시들을 한 번에 그리는 것이 Batching
  3. Batching을 통해 한 번에 그리면 드로우콜 감소, 성능 향상 -> 메모리 필요

2D게임에서는 스트라이트들을 한 장의 텍스처에 눌러 담기도 함.
그러면 하나의 Material로 처리해서 한 번에 렌더링(배칭) 할 수 있다.
3D게임도 텍스처를 눌러담아서 최적화 함

같은 세이더를 사용한다면 한 번에 세이더들을 그릴 수 있다. SRP 세이더에서만 지원

3. Post processing

  1. 렌더링을 끝낸 화면에 후처리 효과를 주는 것
  2. 단순한 색 보정에서 특수효과, 안티 앨리어싱가지 가능
  3. Bloom은 퍼져 보이는 효과
  4. 다수의 효과에서 기준대비 성능향상 존재
  5. 특히 bloom에서 상당히 유의미한 성능 향상이 있음.
  6. Boken DoF의 경우 어쩔 수 없이 무거운 효과라 Gaussian Dof 효과 추가
    Dof는 초점의 거리가 맞는것. 피사.
    Boken : 특유의 초점이 나가게 보이는 것
    Gaussian : 단순하게 흐려지게 함.
profile
공부중

0개의 댓글