[ 게임 개발 ] 유니티 URP

2024. 4. 7. 02:53게임개발

Universal Rendering Pipeline.

줄여서 URP라고 한다

 

현재 유니티에서 지원하는 렌더 파이프라인은

Built In,

SRP (URP, HDRP)

가 있다.

이번에 설명할 URP는 

주로 빛과 볼륨효과와 쉐이더를 통해 게임의 때깔을 올려주기 위해 사용한다고 생각하면 된다

(사실 HDRP도 비슷한데 성능차이가 날뿐이다)


URP를 사용하는 이유 중 큰 이유중 하나가

광원효과와 쉐이더를 이용한 게임 때깔을 올리는 것인데

이는 말로 설명하는 것보다 보여주는 것이 제일 효과가 좋다

이게 URP 볼륨과 광원 효과가 있는 화면
이게 URP가 없는 화면

차이가 굉장하다

볼륨 껐을때
볼륨 켰을때

배치수가 좀 오르기는 하지만

그냥 입 다물고 URP를 쓸 수밖에 없는 이유가 이것이다..

안 쓰면 게임 때깔이 나오기가 힘듦

 


 

또한 URP에서 지원하는 Shader Gragh

간단하게 노드만 깔짝대며 이쁜 이펙트를 뽑을 수 있어져서

개발자들도 조금만 공부하면 아트처럼 구를 수 있다!

보통 게임 개발에서 쉐이더는 아트들이 도맡아 하는것이 맞지만

사실 심화적인 쉐이더를 만들기 위해서는

HLSL 코드로 쉐이더를 만들어야 한다

 

역설적이게도 이건 또 아트입장에서는 힘들어서 개발자들이 다 해야한다

 


TMI

URP를 적용하지 않고 기본으로 프로젝트를 만들어 실행하면

Build In이라는 렌더 파이프라인이 적용되어 있는데

 

쉐이더그래프 사용이 불가능하고 SRP만큼 확장성이 좋지 않으며,

성능도 이상하게 URP보다 안 좋아서 (진짜임)

사실 Built In을 사용할 바에는 URP를 쓰는 게 더 나은 것이 낫다

 

URP는 이전에 LWRP(LightWeight Rendering Pipeline)이라는 

이름을 가진 렌더 파이프라인이었는데 이름부터가 뭔가

 

Lightweihgt? 가벼워? 되게 구린가 보다

싶어서 인기가 없자

이름을 바로 냅다 Univeral을 갖다 박아 오늘날의 URP가 된 것이다