WinCNT

URP로 Toon Shader 만들기 -카툰 렌더링에 대해서- 본문

Unity/URP or Shader 관련

URP로 Toon Shader 만들기 -카툰 렌더링에 대해서-

WinCNT_SSS 2023. 1. 30. 17:31

서론

회사에서 내려온 첫번째 과제는 URP로 툰 쉐이더를 만들어 보라는 것이었다!

그런데 필자는 URP는 커녕 유니티로 쉐이더를 만들어 본 적도 없었고
툰 쉐이더도 우마무스메를 리버스 엔지니어링(을 한 어떤 사람의 블로그를 대부분 참조)하면서 만든 거라
툰 쉐이더에 대해서 사실 깊은 이해가 없는 상태……

URP는 개인적으로 사온 교재로 어떻게든 쓸 수 있게는 되었지만,
툰 쉐이더는 딱히 교재가 없었기 때문에 유니티짱 툰 쉐이더(UnityChanToonShader, UTS)를 참고 삼아 만들어 봤다

그 때 알게 된 내용을 정리해 가려고 한다

따라서 사실 URP와 직접적인 상관은 크게 없습니다…

카툰 렌더링에 대해서 간략히

카툰 렌더링이란
3D 그래픽을 이용하여 만화와 같은 느낌을 주는 화면을 만드는 것.
셀 쉐이딩(Cel Shading), 툰 쉐이딩(Toon Shading), 셀 쉐이디드 렌더링(Cel Shaded Rendering), 셀 룩(Cell Look) 등으로 부르기도 한다.
또한, 이를 위한 처리를 실현하기 위해 사용되는 쉐이더를 툰 쉐이더 (Toon Shader) 또는 셀 쉐이더 (Cell Shader)라고 부른다.
By 위키피디아, 나무위키

카툰 렌더링은 일단 명칭 조금 다양하며 필자도 혼용해서 사용할 것이다

또한 카툰 렌더링에도 다양한 종류가 있는데 여기서는 셀 애니메이션에 가까운 렌더링을 다루는 것을 목표로 하고자 한다

Toon Shader Tutorial

사실 간단한 툰 쉐이더를 만드는 것(Tutorial) 자체는 아래를 참고하니 그다지 어렵지 않았다

Unity Toon Shader Tutorial at Roystan

 

Unity Toon Shader Tutorial at Roystan

Learn to write a toon shader for Unity engine with specular reflections, rim lighting and shadow casting.

roystan.net

튜토리얼에서는 툰 쉐이더의 중요 3대 요소인 Two Tone Shading, Specular Reflection, Rim Lighting를 어떻게 구현하면 되는지에 대해서 설명하고 있었다

(그림자 부분은 우선 생략해도 될 듯)

 

하지만 과제의 요구 사항은 Two Tone이 아니라 Three Tone이었고,
우마무스메의 쉐이더와 UTS의 쉐이더와 차이가 있었기 때문에
URP에 익숙해지기 + 카툰 렌더링의 튜토리얼로 만들어보고 넘어가기로 했다

 

다음으로는 Three(Two) Tone Shading에 대해서 정리해보고자 한다