유니티 쉐이더 그래프 1

vfx 장인·2026년 3월 10일

블랙보드 명명

쉐이더를 여러개 만들고 이것저것 바꿔가며 실험해야하는 경우가 있을거임

이때 A라는 쉐이더의 Color변수의 이름 : BaseColor
이때 B라는 쉐이더의 Color변수의 이름 : NormalColor

이 경우, A -> B 혹은 B -> A로 쉐이더를 변경할때,
값이 초기화 되는 문제가 있음

이걸 해결하기 위해선
사용하는 변수의 이름을 똑같이 하여 수고로움을 덜어낼 수 잇음

쉐이더 모듈화

Sub graph를 만들면 됨

그럼 쉐이더에 sub graph를 노드로 사용가능

Color의 default value는 white


블랙보드에서 color를 생성하고,
노드 설정에서 default를 255기준 (255,255,255,255)로 해줘야함.

  1. 색은 기본적으로 픽셀당 base map(texture)의 색상임
  2. 우리가 새로운 색을 원하면 default value에 지정한 원본색상을 기준으로 색 블렌딩을 하게 됨
  3. 이를 하는 방법은 새로운 색상을 원본 색에 multiply를 하는것임

즉, 원본색을 RGB255나 HSV가 아니라 RGB(0-1)이라고 가정해보자

흰색은 (1, 1, 1, 1)이 됨
이게 base color가 되고,
blend color가 (0.8, 1, 0, 1)이라고 했을때
base color * blend color = (1, 1, 1, 1) * (0.8, 1, 0, 1)을 하여
새로운 색상 RGB(0-1) (0.8, 1, 0, 1)이 되게 됨

만약 base color가 (0.6, 0.234, 0.7, 1)이었다면
다른 색상으로 출력되게 됨

Tiling, Offset

Tiling

타일링은 예를들어 기본 텍스쳐가 1*1의 사이즈 라고 할때,
타일링을 4*4로 설정하게 되면, 기본 텍스쳐가 가로/세로 4칸씩 타일링되는것을 의미함

이게 1*1의 타일링이라면

이게 4*4의 타일링임

Offset

오프셋은 오차를 의미하는데,
0,0일때는 원본 텍스쳐의 위치이지만,
0.5,-0.5일때는 가로로 0.5, 세로로 -0.5씩 텍스쳐가 밀리게 됨


이게 0,0의 오프셋이라면

이게 0.5, -0.5의 오프셋임

설정법

매우 쉬움

texture2D변수의 노드셋팅에서
밑줄친 부분을 클릭해주기만 하면 됨

Scrolling

Scrolling은 말 그대로 스크롤하는거임

텍스쳐를 스크롤링 시킬수도 있고
뭐 응용은 여러가지 방법으로 할 수 있음ㅇㅇ

위에 설명한 Tiling, Offset을 스크롤링 해보자
안타깝게도 tiling, offset은 직접적으로 건드릴 수 없음

먼저 texture를 split해준다

그럼 위 사진처럼 tiling, offset, texture only로 분리된다.

여기서 tiling, offset은 아래 사진처럼 Tiling And Offset이라는 노드로 연결시켜주면 된다.

스크롤링

Time노드를 이용해서
ScrollSpeed, ScrollDirection을 곱하면 된다.

profile
인디게임개발을 하는 기획자이자 프로그래머이자 VFX디자이너입니다

0개의 댓글