본문 바로가기
기본 쉐이더

쉐이더에 사용되는 기본 계산식

by Raypop 2010. 9. 13.

log(x) : in(x)를 리턴한다.

log10(x) : log10(x)를 리턴한다.

log2(x) : log2(x)를 리턴한다.

max(x,y) : x≥y 일 경우 x를 리턴하고 그렇지 않으면 y를 리턴한다.

min(x,y) : x≤y 일 경우 x를 리턴하고 그렇지 않으면 y를 리턴한다.

mul(M,N) : 행렬 곱 MN을 리턴한다. 행렬 곱 MN이 반드시 정의될 수 있어야 한다는데 주의하자.

                만약 M이 벡터이면 벡터-행렬 곱을 정의하도록 행 벡터로 취급된다.

                마찬가지로 N이 벡터인 경우 행렬-벡터 곱을 정의하도록 열 벡터로 취급된다.

normalize(v) : v/│v│ 을 리턴한다.

pow(b,n) : bⁿ을 리턴한다.

radians(x) : 각도에서 라이단으로 x를 변환한다.

reflect(v,n) : 주어진 입사 벡터 v와 표면 법선 n으로 반사 벡터를 계산한다.

rsqrt(x) : 1√x 를 리턴한다.

saturate(x) : clamp(x, 0.0, 1.0)을 리턴한다.

sin(x) : x의 사인값을 리턴한다.

sincos(in x, out s, out c) : x의 사인값과 코사인 값을 리턴한다.

sqrt(x) : √x 를 리턴한다.

tan(x) : x 의 탄젠트 값을 리턴한다.

transpose(M) : 전치 M을 리턴한다.

lerp(a,b,c) : 최소 최대값 사이에 값을 출력해주는 함수로 c의값이 0에 가까울수록 a에 가까운값을 출력하고,

                  c의 값이 1에 가까울수록 b에 가까운 값을 출력한다.

abs(x) : x 의 절대값을 구해준다( ex : 1.234 -> 1.234, -1.234 -> 1.234)

'기본 쉐이더' 카테고리의 다른 글

Half Lambert 의 원리와 공식  (0) 2010.12.09
스터디 - Fx(UV맵을 활용한 효과)  (0) 2010.12.04
스터디 - 스페큘러맵  (0) 2010.11.28
스터디 - 기본 노멀맵  (0) 2010.11.16
빛에 관한 공식  (0) 2010.09.16