[Unity] URP 셰이더 Normal Vector 정리
2023. 7. 18. 16:03ㆍUnity
728x90
반응형
[Normal Vector] 노드에는 아래 사진과 같이 여러 종류의 Space를 설정할 수 있다. 책에 나온 예제 오브젝트로 그 차이를 정리하려고 한다.
Object Space
오브젝트가 스스로 가지고 있는 공간이며 피봇점의 좌표이다. 오브젝트를 회전하면 좌표도 같이 회전한다. 오브젝트 기준으로 무언가를 해야 할 때 쓰인다. 두개골 윗부분이 녹색인 건 어느 방향으로 회전시켜도 계속 녹색을 유지한다.
View Space
카메라 기준의 좌표이며 오브젝트를 회전시키더라도 카메라 기준으로 좌표가 만들어진다. 카메라 방향을 바라보는 면은 언제나 파란색(Z축)이다. 내가 바라보는 방향을 기준으로 어떤 것을 할 때 쓰인다.
World Space
월드 기준으로 좌표가 결정되기 때문에 화면을 회전시켜도 월드 좌표의 방향대로 값이 나온다. 기즈모와 같은 방향이다. 월드 기준이기 때문에 월드에 있는 다른 물체와 상호관계가 있어야 할 때 사용한다. 라이트 계산에서는 월드에 있는 조명과 계산을 해야하기 때문에 자주 쓰인다. 월드 기준의 위쪽 Y부분은 아무리 돌려도 녹색이다.
Tangent Space
각 면이 가지고 있는 좌표계라고 생각할 수 있다. 각 면 기준으로 면은 언제나 위쪽을 바라보고 있으므로 (0, 0, 1)인 파란색이 나온다. 3D를 2D처럼 생각할 수 있는 좌표계이기 때문에 노말맵에서 주로 사용된다.
참고자료
728x90
반응형
'Unity' 카테고리의 다른 글
[Unity] URP 셰이더 그래프로 Lambert Light 만들기 (+Half Lambert) (0) | 2023.07.18 |
---|---|
[Unity] URP 셰이더 커스텀 노드로 Light Vector 노드 만들기 (0) | 2023.07.18 |
[Unity] URP 셰이더 돌이 물에 젖고 마르는 셰이더 만들기 (0) | 2023.07.17 |
[Unity] URP 셰이더 Detail Map (0) | 2023.07.17 |
[Unity] URP 셰이더 Height Map(Parallax Mapping) (0) | 2023.07.17 |