티스토리 뷰

 

Part5. Shader Graph 기본 조작하기 1: 색상 출력

 

1. Shader Graph 기본 사용법

1_1. Shader Graph 기본 사용법

이번 파트에서는 셰이더 그래프 기본 조작으로 색상 출력에 대해 공부한다.

저번과 똑같이 셰이더 그래프를 적용한 머티리얼을 아무 오브젝트에 넣어 주었다.

 

Unlit 을 사용하는 이유는 조명의 영향을 받지 않는 순수한 색을 보기 위해서... 라고 한다.

더보기
ㅇㅇ

출처: 구글 검색 AI 개요

 

자, 셰이더 그래프를 열고 Master Stack 을 보자

Master Stack

 

Master Stack은 실제로 셰이더에 값을 넣게 되는 최종 결과 노드이다.

셰이더 종류에 따라 이 입력값 종류는 달라진다.

 

Vertex Shader에 위치, 노말, 접선을 넣을 수 있고, 

Unlit 이라서 Fragment 부분에는 Base Color 출력만 넣을 수 있다.

 

궁금해서 다른 셰이더들도 확인해봄

 

Lit 셰이더 그래프 / Decal 셰이더 프래프의 Master Stack

 

1_2. 노드를 만들고 연결하고 끊기

Color 노드를 생성해서

color노드 위치

 

Fragment에 연결해준다.

Color 노드를 Base Color에 연결

 

*Fragment는 Pixel Shader라고도 하는데, 모니터에 최종 출력하는 픽셀의 색을 담당하고 있다. 

 

이제 민트색 구가 되었다.

 

 

1_3. Property와 연결하기/ 승격시키기

color 값을 외부에서 쉽게 바꾸기 위해 Property를 추가하여 연결해 보았다.

 

이제 인스펙터에서 컬러값을 조정할 수 있게 되었다!

 

Color 노드를 프로퍼티로 바로 변환할 수도 있다.

 

변환하면 프로퍼티가 자동 생성된다

 

2. 색상 출력하기

2_1. Float과 Vector2, Vector3의 출력으로 색상 이해하기

Fragment의 Base Color는 Vector3 형태이기 때문에 Float, Vector2, Vector3, Vector4 값을 입력하면 형변환이 되어 적용된다.

 

다양한 자료형의 인풋이 어떻게 출력되는지 관찰해보았다.

 

Float(0.5f) => Vector3(0.5f, 0.5f)

 

Vector2(0.5f, 0.5f) => Vector3(0.5f,0.5f,0f)

 

Vector3(0.5f, 0.5f, 0.5f) => Vector3(0.5f,0.5f,0.5f)

 

Vector4(0.5f, 0.5f, 0.5f, 0.5f) => Vector3(0.5f,0.5f,0.5f)