http://chulin28ho.egloos.com/5106486
명령어 모음
원문 : http://blog.stnzone.com/darkman/entry/HLSL-함수
원문 : http://blog.stnzone.com/darkman/entry/HLSL-함수
abs | value abs(value a) | 절대치 (성분마다). |
acos | acos(x) | x 의 각 성분의 역코사인을 돌려준다. 각 성분은,[-1, 1] 의 범위로 한다. |
all | all(x) | x 의 모든 성분이 0 이외의 값인지 아닌지를 테스트한다. |
any | any(x) | x 의 몇개의 성분이 0 이외의 값인지 아닌지를 테스트한다. |
asin | asin(x) | x 의 각 성분의 역정현을 돌려준다. 각 성분은,[-pi/2, pi/2] 의 범위로 한다. |
atan | atan(x) | x 의 각 성분의 역탄젠트를 돌려준다. 반환값은,[-pi/2, pi/2] 의 범위이다. |
atan2 | atan2(y, x) | y/x 의 역탄젠트를 돌려준다. y 와 x 의 부호를 사용해 [-pi, pi] 의 범위에 있는 반환값의 상한을 판단한다. atan2 는, x 가 0 으로 동일하고, y 가 0 으로 동일하지 않은 경우에서도, 원점 이외의 각 점에 대해서 충분히 정의되고 있다. |
ceil | ceil(x) | x 이상의 최소의 정수를 돌려준다. |
clamp | clamp(x, min, max) | x 를 [min, max] 의 범위에 제한한다. |
clip | clip(x) | x 의 몇개의 성분이 0 보다 작은 경우, 현재의 픽셀을 파기한다. x 의 각 성분이 면으로부터의 거리를 나타내는 경우, 이 함수를 사용해, 클립면을 시뮬레이션 한다. |
cos | cos(x) | x 의 코사인을 돌려준다. |
cosh | cosh(x) | x 의 쌍곡코사인을 돌려준다. |
cross | cross(a, b) | 2 개의 3D 벡터 a 와 b 의 외적을 돌려준다. |
D3DCOLORtoUBYTE4 | D3DCOLORtoUBYTE4(x) | 4D 벡터 x 의 성분을 교체 및 스케일링 해, 일부 하드웨어에 있는 UBYTE4 지원의 부족을 보정한다. |
ddx | ddx(x) | 스크린 공간의 x 좌표에 대해, x 의 편미분을 돌려준다. |
ddy | ddy(x) | 스크린 공간의 y 좌표에 대해, x 의 편미분을 돌려준다. |
degrees | degrees(x) | x 를 라디안 단위로부터 도수로 변환한다. |
determinant | determinant(m) | 서방 행렬 m 의 행렬식을 돌려준다. |
distance | distance(a, b) | 2 개의 점 a 와 b 간의 거리를 돌려준다. |
dot | dot(a, b) | 2 개의 벡터 a 와 b 의 내적을 돌려준다. |
exp | exp(x) | e 를 바닥으로 하는 지수 ex 를 돌려준다. |
exp2 | value exp2(value a) | 2 를 바닥으로 하는 지수 (성분마다). |
faceforward | faceforward(n, i, ng) | -n * sign(dot(i, ng))를 돌려준다. |
floor | floor(x) | x 이하의 최대의 정수를 돌려준다. |
fmod | fmod(a, b) | a = i * b + f 가 되는 것 같은, a / b 의 부동 소수점수(실수)의 잉여 f 를 돌려준다. 여기서, i 는 정수, f 는 x 와 부호가 같아, 그 절대치는 b 의 절대치보다 작다. |
frac | frac(x) | f 가 0 보다 크고, 1 보다 작은 값이 되는 것 같은, x 의 소수부 f 를 돌려준다. |
frc | value frc(value a) | 소수부 (성분마다). |
frexp | frexp(x, out exp) | x 의 가수와 지수를 돌려준다. frexp 는 가수를 돌려주어, 지수는 출력 인수 exp 에 저장 된다. x 가 0 의 경우, 함수는 가수와 지수의 양쪽 모두에 0 을 돌려준다. |
fwidth | fwidth(x) | abs(ddx(x)) +abs(ddy(x))를 돌려준다. |
isfinite | isfinite(x) | x 가 유한의 경우는 TRUE 를 돌려준다. 그 이외의 경우는 FALSE 를 돌려준다. |
isinf | isinf(x) | x 가 +INF 나 -INF 의 경우는 TRUE 를 돌려준다. 그 이외의 경우는 FALSE 를 돌려준다. |
isnan | isnan(x) | x 가 NAN 나 QNAN 의 경우는 TRUE 를 돌려준다. 그 이외의 경우는 FALSE 를 돌려준다. |
ldexp | ldexp(x, exp) | x * 2exp 를 돌려준다. |
len | float len(value a) | 벡터의 길이. |
length | length(v) | 벡터 v 의 길이를 돌려준다. |
lerp | lerp(a, b, s) | a + s(b - a)를 돌려준다. 이 함수는, s 가 0 의 경우는 a 를 돌려주어, 1 의 경우는 b 를 돌려주도록, a 와 b 의 사이를 선형 보간 한다. |
lit | lit(ndotl, ndoth, m) | 조명의 벡터 (앰비언트, 디퓨즈, 스펙큐러, 1)를 돌려준다. 앰비언트 = 1; 디퓨즈 = (ndotl < 0) ? 0 : ndotl; 스펙큐러 = (ndotl < 0) || (ndoth < 0) ? 0 : (ndoth * m); |
log | log(x) | x 의, 바닥이 e 의 자연대수를 돌려준다. x 가 부의 경우, 이 함수는 무한을 돌려준다. x 가 0 의 경우, +INF 를 돌려준다. |
log10 | log10(x) | x 의, 바닥이 10 의 자연대수를 돌려준다. x 가 부의 경우, 이 함수는 무한을 돌려준다. x 가 0 의 경우, +INF 를 돌려준다. |
log2 | log2(x) | x 의, 바닥이 2 의 자연대수를 돌려준다. x 가 부의 경우, 이 함수는 무한을 돌려준다. x 가 0 의 경우, +INF 를 돌려준다. |
max | max(a, b) | a 와 b 의 큰 (분)편을 선택한다. |
min | min(a, b) | a 와 b 가 작은 (분)편을 선택한다. |
modf | modf(x, out ip) | 값 x 를, 각각이 x 와 같은 부호를 가진 소수부와 정수부로 나눈다. x 의 부호 첨부 소수부가 반환된다. 정수부는 출력 인수 ip 에 저장 된다. |
mul | mul(a, b) | a 와 b 의 사이의 행렬 곱셈을 실행한다. a 가 벡터의 경우, 행 벡터로서 처리한다. b 가 벡터의 경우, 열로서 처리한다. 내부 넓이의 a 열과 b 행은 동일해야 한다. a 행 x b 열의 넓이를 얻을 수 있다. |
noise | noise(x) | 처리되지 않다. |
normalize | normalize(v) | 정규화된 벡터 v / length(v)를 돌려준다. v 의 길이가 0 의 경우, 결과는 무한이 된다. |
pow | pow(x, y) | xy 를 돌려준다. |
radians | radians(x) | x 를 도수로부터 라디안 단위로 변환한다. |
reflect | reflect(i, n) | 입사 방향 i, 표면 법선 n 로 했을 경우의, v = i - 2 * dot(i, n) * n 에 의해 구할 수 있는, 반사 벡터 v 를 돌려준다. |
refract | refract(i, n, eta) | 입사 방향 i, 표면 법선 n, 굴절 eta 의 상대 인덱스가 주어졌을 경우의, 굴절 벡터 v 를 돌려준다. i 와 n 의 사이의 입사각이 지정된 eta 보다 너무 크면 (0,0,0)를 돌려준다. |
round | round(x) | x 를 가장 가까운 정수에 말다. |
rsqrt | rsqrt(x) | 1 / sqrt(x)를 돌려준다. |
saturate | saturate(x) | x 를 [0, 1] 의 범위에 제한한다. |
sign | sign(x) | x 의 부호를 요구한다. x 가 0 보다 작은 경우는 -1, 0 으로 동일한 경우는 0, 0 보다 큰 경우는 1 을 돌려준다. |
sin | sin(x) | x 의 정현을 돌려준다. |
sincos | sincos(x, out s, out c) | x 의 정현과 코사인을 돌려준다. sin(x)는 출력 인수 s 에 저장 되어 cos(x)는 출력 인수 c 에 저장 된다. |
sinh | sinh(x) | x 의 쌍곡정현을 돌려준다. |
smoothstep | smoothstep(min, max, x) | x < min 의 경우는 0 을 돌려준다. x > max 의 경우는 1 을 돌려준다. x 가 [min, max] 의 범위내이면, 0 으로 1 의 사이의 매끄러운 에르미트 보간을 돌려준다. |
sqrt | value sqrt(value a) | 제곱근 (성분마다). |
step | step(a, x) | (x >= a) ? 1 : 0 을 돌려준다. |
tan | tan(x) | x 의 탄젠트를 돌려준다. |
tanh | tanh(x) | x 의 쌍곡탄젠트를 돌려준다. |
tex1D | tex1D(s, t) | 1D 의 텍스처 참조. s 는 샘플러 또는 sampler1D 개체. t 는 스칼라-. |
tex1D | tex1D(s, t, ddx, ddy) | 미분을 지정한, 1D 의 텍스처 참조. s 는 샘플러 또는 sampler1D 개체. t, ddx, ddy 는 스칼라-. |
tex1Dproj | tex1Dproj(s, t) | 1D 의 투영 텍스처 참조. s 는 샘플러 또는 sampler1D 개체. t 는 4D 벡터. t 는, 참조가 실행되기 직전의 성분으로 나눗셈 된다. |
tex1Dbias | tex1Dbias(s, t) | 1D 의 바이어스 텍스처 참조. s 는 샘플러 또는 sampler1D 개체. t 는 4D 벡터. 참조를 실행하기 전에, 밉레벨에 t.w 의 바이어스를 걸칠 수 있다. |
tex2D | tex2D(s, t) | 2D 의 텍스처 참조. s 는 샘플러 또는 sampler2D 개체. t 는 2D 텍스처 좌표. |
tex2D | tex2D(s, t, ddx, ddy) | 미분을 지정한, 2D 의 텍스처 참조. s 는 샘플러 또는 sampler2D 개체. t, ddx, ddy 는 2D 벡터. |
tex2Dproj | tex2Dproj(s, t) | 2D 의 투영 텍스처 참조. s 는 샘플러 또는 sampler2D 개체. t 는 4D 벡터. t 는, 참조가 실행되기 직전의 성분으로 나눗셈 된다. |
tex2Dbias | tex2Dbias(s, t) | 2D 의 바이어스 텍스처 참조. s 는 샘플러 또는 sampler2D 개체. t 는 4D 벡터. 참조를 실행하기 전에, 밉레벨에 t.w 의 바이어스를 걸칠 수 있다. |
tex3D | tex3D(s, t) | 3D 의 볼륨 텍스처 참조. s 는 샘플러 또는 sampler3D 개체. t 는 3D 텍스처 좌표. |
tex3D | tex3D(s, t, ddx, ddy) | 미분을 지정한, 3D 의 볼륨 텍스처 참조. s 는 샘플러 또는 sampler3D 개체. t, ddx, ddy 는 3D 벡터. |
tex3Dproj | tex3Dproj(s, t) | 3D 의 투영 볼륨 텍스처 참조. s 는 샘플러 또는 sampler3D 개체. t 는 4D 벡터. t 는, 참조가 실행되기 직전의 성분으로 나눗셈 된다. |
tex3Dbias | tex3Dbias(s, t) | 3D 의 바이어스 텍스처 참조. s 는 샘플러 또는 sampler3D 개체. t 는 4D 벡터. 참조를 실행하기 전에, 밉레벨에 t.w 의 바이어스를 걸칠 수 있다. |
texCUBE | texCUBE(s, t) | 3D 의 큐브 텍스처 참조. s 는 샘플러 또는 samplerCUBE 개체. t 는 3D 텍스처 좌표. |
texCUBE | texCUBE(s, t, ddx, ddy) | 미분을 지정한, 3D 의 큐브 텍스처 참조. s 는 샘플러 또는 samplerCUBE 개체. t, ddx, ddy 는 3D 벡터. |
texCUBEproj | texCUBEproj(s, t) | 3D 투영의 큐브 텍스처 참조. s 는 샘플러 또는 samplerCUBE 개체. t 는 4D 벡터. t 는, 참조가 실행되기 직전의 성분으로 나눗셈 된다. |
texCUBEbias | texCUBEbias(s, t) | 3D 의 바이어스 큐브 텍스처 참조. s 는 샘플러 또는 samplerCUBE 개체. t 는 4D 벡터. 참조를 실행하기 전에, 밉레벨에 t.w 의 바이어스를 걸칠 수 있다. |
transpose | transpose(m) | 행렬 m 의 전치행렬을 돌려준다. 입력의 넓이가 m 행 x m 열의 경우, 결과는 넓이 m 열 x m 행이 된다. |
'TA > Unity' 카테고리의 다른 글
유니티 C# 공부 모음 (0) | 2013.05.07 |
---|---|
Texture Matrix in Fixed Function (0) | 2012.07.18 |
Blending modes..참고 자료 (0) | 2012.06.08 |
기초적인 조명쉐이더 (0) | 2012.06.08 |
정 반사광 (0) | 2012.06.08 |