공부 기록/유니티 Unity

[Unity/TIL] 렌더링 파이프라인과 URP에 대하여 | 에셋이 분홍색으로 보이는 현상

톰마토 2025. 3. 21. 19:18
728x90

렌더링 파이프라인 

쉽게 말하자면 오브젝트를 화면에 그리는 과정을 담은 시스템이다. 공장의 파이프라인처럼 앞 단계가 잘 완료되면 다음 단계를 실행하는. 그런 구조가 담긴 시스템이다. 

아래는 DirectX의 렌더링 파이프라인 과정이다. 점의 정보를 가져오는 것부터 시작해서 행렬 계산을 이리저리 해서 눈에 보이게 하는 과정이다 보니, 세부적으로 많은 과정이 존재한다. 하지만 유니티를 쓰면 유니티가 알아서 해주죵? 🍯🐝

DirectX의 렌더링 파이프라인...

크게 세가지로 보자!! 

렌더링 파이프라인 과정

1. Culling

절두체에 걸리는 것만 그려주고, 절두체 밖에 있는 것들은 그려지 않는다. 설정에 따라 다 그리거나 안 그릴 수 있다. 

2. Rendering 

카메라 절두체가 찍은 오브젝트들을 평면 화면에 그려주는 작업이다. 

3. Post-processing

일종의 필터라고 생각하면 된다. 전에 데미지 입은 화면을 표현할 때 붉은 이미지로 화면을 덮었는데, Post-processing으로 구현하는 방법도 있다. 

 

그리고 Rendering 과정에서 아래 세 가지 작업을 거치게 된다.

  1. Shader
    중간중간 어쩌구 Shader 과정이 많이 보이는데 Shader는 점들에 대한 수학적 계산 및 알고리즘을 통해 특정 효과를 주는 역할을 한다. 예를 들면 색상을 계산하거나 빛이 반사되는 부분의 색은 다르게 처리하는 등의 작업이다. 
  2. Mesh
    개체의 모양을 정의한다.
  3. Texture 
    본격적으로 비트맵 이미지로서 그려주는 작업.
    a. Material 작업 : Texture에 대한 좀 더 구체적인 정보들이 들어간다. 타일링 정보, 색상, 표면을 어떻게 표현할건지 등등을 정해줌. Shader에 따라 다르게 보임. 
Shader 계산 > Mesh 정의 > Texture로 만듦 

유니티의 렌더링 파이프라인

  • Built-in : default 렌더링 파이프라인. 커스텀 확장이 제한적이라고 함. 
  • SRP(Scriptable Rendering Pipeline) : 스크립트로 렌더링을 제어하고 커스터마이징 할 수 있다. 
    • URP(Universal Render Pipeline)
    • HDRP : 굉장히 고품질에 적합.

URP에 대하여

 

  • Cross-Platform Compatibility : URP는 Universal Render Pipeline의 약자로, 플랫폼의 관점에서 Universal하다. 모바일 PC, 콘솔 게임 뿐만 아니라 AR, VR 애플리케이션에도 적합하다. 
  • Performance and Scalability : 성능 및 확장성을 목표로 설계되어서 성능이 좋다고 함! Built-in 과 비교했을 때 저사양 장치에서도 뛰어난 성능을 제공하도록 최적화되어 있다고 한다.!! 
  • Simplicity : 사용하기 쉽다고 함. 스크립트로만 제어하는 것이 아니라 쉽게 제어가능한 툴들도 지원해줌! ex) 셰이더 그래프, VFX 그래프
  • Modern Rendering Features :현대적인 렌더링 기술을 제공. ex) 주요 라이트 유형, 표준 쉐이딩 모델, 환경 리플렉션 등
  • Customizability: 사용자 정의 렌더링 파이프라인을 생성할 수 있도록 해주는 유연성을 제공한다. 이를 통해 특정 게임 또는 프로젝트에 필요한 고유한 렌더링 기능을 추가 가능하다.
  • Graphics Quality : 높은 품질의 그래픽을 제공한다. by using 향상된 라이트 모델, 표면 쉐이딩, 포스트 프로세싱 효과 등.

Material이 분홍색으로 보이는 현상

에셋을 다운받았을 때 Material이 분홍색으로만 보이는 현상이다. 이전에도 HDRP만 호환가능한 에셋을 받았을 때 경험한 적 있다. 이는 URP는 URP에만 사용할 수 있는 셰이더가 정해져있기 때문이다. Material의 Shader가 Standard로 되어있음. 

현상 원인

한 번에 Shader 다시 설정해주는 방법 

'Window > Rendering > Render Pipeline Converter' 탭에서 Built-in to URP 선택

모든 요소 체크하고 Initialize Converters, Initialize And Convert 순서대로 클릭.

 

해주면 Shader 설정이 URP로 바뀌어있다. 

이제 제대로 보임

 

728x90