LWRP, Shader Graph에 Custom Master Node 추가하기

2019. 6. 5. 13:22Unity Engine/Work

LWRP와 셰이더 그래프를 사용할때 불편한 점 중 하나가 Lighting이였다.

LWRP는 기본적으로 UnLit과 PBS 두가지 마스터 노드만 지원하고 있으며, 라이팅 정보를 지원하지 않는다.
프로퍼티의 레퍼런스를 통해 Built In Variable 값을 가져올수 있다 하는데 패키지 버전마다 다른건지 값이 안들어 오던...

이 때문에 기존의 Lambert나 HalfLambert 같은 커스텀 셰이딩을 만들기가 어렵다.
BRDF가 기본이기 때문에 Lambert나 HalfLambert같은 물리기반의 표현은 지원하지 않아도 크게 문제 되지 않을거라 생각 되지만(아티스트 입장은 다를지도...?) 셀 셰이딩 형식의 툰 렌더를 Shader Graph만을 사용해 만드는 건 PBS만 제공하는 현재의 상황에서는 꽤 불편하다.

그래서 테스트 삼아 LWRP Shader와 Shader Graph 코드를 가져와 간단하게 Legacy Shader 용 마스터 노드를 추가해보았다.

 

왼쪽부터 차례되로 PBS, Lambert, HalfLambert, BlinnPhong이다.

 

아래는 사용 영상.

 

나중에 ToonShading용 마스터 노드와 Light 정보가 담긴 노드도 추가해야 겠다.

'Unity Engine > Work' 카테고리의 다른 글

ShaderGraph ToonShader & Vertex OutLine  (0) 2019.06.16
CustomLit Node 추가 및 LightInfoNode 추가  (0) 2019.06.11
Hair Jiggle Bone  (0) 2019.05.12
모델 Rigging & Skin  (0) 2019.05.08
Unity LWRP Mobile Performance Test  (0) 2019.04.22