본문 바로가기
XR/Unreal Engine

[Unreal Engine] 쉐이더 Visual Scripting

by 여기는 정글 2024. 6. 20.

안녕하세요. 정글러입니다.

쉐이더 수식을 정리해보겠습니다.

1. Constants

상수, 고정수치

- Float

(0) ; 1채널 값의 강도 / Append로 연결해서 2채널, 3채널을 만들 수 있음

(0,0) ; UV, XY, RG 등 2채널 값의 강도

(0,0,0) ; XYZ, RGB, UVW 등 3채널 값의 강도

(0,0,0,0) ; RGBA

- Vertex Color

- Time ; 지속적으로 올라가는 시간

2. Coordinates

- Panner ; 횡/종 방향 이동 / Texcood-Panner-UVs로 연결

- Rotator ; 센터 기준 회전 / Texcoord-Rotator-UVs

- Texcoord ; UV 또는 0-1로 진행하는 2차원 벡터 생성

- PixelNomalWS ; 노멀맵 적용받은 픽셀 노멀

- VertexNormalWS ; 버텍스 쉐이더의 메시 노멀

3. Parameter

- Parameter(0) ; 1채널 숫자 입력 파라메터

- Static Bool Parameter ; On/Off 체크박스 파라메터. 스위치 인자로 사용 가능

- Switch Parameter ; 파라메터로 입력받아 2개 분기(T/F)를 스위치

- Parameter(0,0,0,0) ; 컬러 또는 2채널 이상의 벡터를 받는 파라메터

- Parameter Texture Object ; 텍스쳐를 받는 파라메터

4. Function

- Static Bool ; 쉐이더 내부에서 고정적으로 True/False

- Switch ; 쉐이더 내부에서 내부 또는 외부 입력으로 2개 분기 스위치

- Texture Object ; 쉐이더 내부에서 고정적인 텍스쳐 불러오기

5. Math

- Add(0,0) / Subtract(0,0) ; 더하기, 채널별 더하기 / 빼기, 채널별 빼기

- Multiply(0,0) / Divide(0,0) ; 곱하기, 채널별 곱하기 / 나누기*곱하기, 채널별 나누기

- Append ; 백터 합치기(누적)

- Dot ; 벡터간의 내적 구하기

- Mask(RGB) ; 벡터를 받아 선택 채널(RGB)만 따로 분리하기

- 1-x ; 반전 시키기

- Power ; 거듭제곱 구하기

- Normalize ; 수치 정규화 (0에서 1까지의 값으로)

- Sqrt ; 제곱근 구하기

- Clamp(Min=0)(Max=0) ; Min/Max로 수치 제한하기

- Saturate ; 0에서 1로 제한하기 = Clamp (0,1)

6. ETC

- Fresnel ; 프레넬(왜곡률) 계산하기

- DeriveNormalZ ; XY로 노멀Z 구하기 / Mask(RG)-DeriveNomalZ-Nomal

- Lerp(A,B,Alpha) ; 선형 보간법 / 선형으로 alpha값을 기준으로 A와 B를 섞음

- Camera Vector ; 보는 방향 가져오기

 

* 콜로소 테크니컬 아티스트 강의에서 참고하여 정리하였습니다.

감사합니다.