Unity Shader 内置函数 Intrinsic Functions (DirectX HLSL)
官网链接
Name | Syntax | Description | 描述 |
abs | abs(x) | Absolute value (per component). | 计算输入值的绝对值。 |
acos | acos(x) | Returns the arccosine of each component of x. | 返回输入值反余弦值。 |
all | all(x) | Test if all components of x are nonzero. | 测试非0值。 |
any | any(x) | Test if any component of x is nonzero. | 测试输入值中的任何非零值。 |
asfloat | asfloat(x) | Convert the input type to a float. | |
asin | asin(x) | Returns the arcsine of each component of x. | 返回输入值的反正弦值。 |
asint | asint(x) | Convert the input type to an integer. | |
asuint | asuint(x) | Convert the input type to an unsigned integer. | |
atan | atan(x) | Returns the arctangent of x. | 返回输入值的反正切值。 |
atan2 | atan2(y, x) | Returns the arctangent of of two values (x,y). | 返回y/x的反正切值。 |
ceil | ceil(x) | Returns the smallest integer which is greater than or equal to x. | 返回大于或等于输入值的最小整数。 |
clamp | clamp(x, min, max) | Clamps x to the range [min, max]. | 把输入值限制在[min, max]范围内。 |
clip | clip(x) | Discards the current pixel, if any component of x is less than zero. | 如果输入向量中的任何元素小于0,则丢弃当前像素。 |
cos | cos(x) | Returns the cosine of x. | 返回输入值的余弦。 |
cosh | cosh(x) | Returns the hyperbolic cosine of x. | 返回输入值的双曲余弦。 |
cross | cross(x, y) | Returns the cross product of two 3D vectors. | 返回两个3D向量的叉积。 |
ddx | ddx(x) | Returns the partial derivative of x with respect to the screen-space x-coordinate. | 返回关于屏幕坐标x轴的偏导数。 |
ddy | ddy(x) | Returns the partial derivative of x with respect to the screen-space y-coordinate. | 返回关于屏幕坐标y轴的偏导数。 |
degrees | degrees(x) | Converts x from radians to degrees. | 弧度到角度的转换 |
determinant | determinant(m) | Returns the determinant of the square matrix m. | 返回输入矩阵的值。 |
distance | distance(x, y) | Returns the distance between two points. | 返回两个输入点间的距离。 |
dot | dot(x, y) | Returns the dot product of two vectors. | 返回两个向量的点积。 |
exp | exp(x) | Returns the base-e exponent. | 返回以e为底数,输入值为指数的指数函数值。 |
exp2 | exp2(x) | Base 2 exponent (per component). | 返回以2为底数,输入值为指数的指数函数值。 |
faceforward | faceforward(n, i, ng) | Returns -n * sign(•(i, ng)). | 检测多边形是否位于正面。 |
floor | floor(x) | Returns the greatest integer which is less than or equal to x. | 返回小于等于x的最大整数。 |
fmod | fmod(x, y) | Returns the floating point remainder of x/y. | 返回a / b的浮点余数。 |
frac | frac(x) | Returns the fractional part of x. | 返回输入值的小数部分。 |
frexp | frexp(x, exp) | Returns the mantissa and exponent of x. | 返回输入值的尾数和指数 |
fwidth | fwidth(x) | Returns abs(ddx(x)) + abs(ddy(x)) | 返回 abs ( ddx (x) + abs ( ddy(x))。 |
isfinite | isfinite(x) | Returns true if x is finite, false otherwise. | 如果输入值为有限值则返回true,否则返回false。 |
isinf | isinf(x) | Returns true if x is +INF or -INF, false otherwise. | 如何输入值为无限的则返回true。 |
isnan | isnan(x) | Returns true if x is NAN or QNAN, false otherwise. | 如果输入值为NAN或QNAN则返回true。 |
ldexp | ldexp(x, exp) | Returns x * 2exp | frexp的逆运算,返回 x * 2 ^ exp。 |
length | length(v) | Returns the length of the vector v. | |
lerp | lerp(x, y, s) | Returns x + s(y - x). | 对输入值进行插值计算。 |
lit | lit(n • l, n • h, m) | Returns a lighting vector (ambient, diffuse, specular, 1) | 返回光照向量(环境光,漫反射光,镜面高光,1)。 |
log | log(x) | Returns the base-e logarithm of x. | 返回以e为底的对数。 |
log10 | log10(x) | Returns the base-10 logarithm of x. | 返回以10为底的对数。 |
log2 | log2(x) | Returns the base-2 logarithm of x. | 返回以2为底的对数。 |
max | max(x, y) | Selects the greater of x and y. | 返回两个输入值中较大的一个。 |
min | min(x, y) | Selects the lesser of x and y. | 返回两个输入值中较小的一个。 |
modf | modf(x, out ip) | Splits the value x into fractional and integer parts. | 把输入值分解为整数和小数部分。 |
mul | mul(x, y) | Performs matrix multiplication using x and y. | 返回输入矩阵相乘的积。 |
noise | noise(x) | Generates a random value using the Perlin-noise algorithm. | |
normalize | normalize(x) | Returns a normalized vector. | 返回规范化的向量,定义为 x / length(x)。 |
pow | pow(x, y) | Returns xy. | 返回输入值的指定次幂。 |
radians | radians(x) | Converts x from degrees to radians. | 角度到弧度的转换。 |
reflect | reflect(i, n) | Returns a reflection vector. | 返回入射光线i对表面法线n的反射光线。 |
refract | refract(i, n, R) | Returns the refraction vector. | 返回在入射光线i,表面法线n,折射率为eta下的折射光线v。 |
round | round(x) | Rounds x to the nearest integer | 返回最接近于输入值的整数。 |
rsqrt | rsqrt(x) | Returns 1 / sqrt(x) | 返回输入值平方根的倒数。 |
saturate | saturate(x) | Clamps x to the range [0, 1] | 把输入值限制到[0, 1]之间。 |
sign | sign(x) | Computes the sign of x. | 计算输入值的符号。 |
sin | sin(x) | Returns the sine of x | 计算输入值的正弦值。 |
sincos | sincos(x, out s, out c) | Returns the sine and cosine of x. | 返回输入值的正弦和余弦值。 |
sinh | sinh(x) | Returns the hyperbolic sine of x | 返回x的双曲正弦。 |
smoothstep | smoothstep(min, max, x) | Returns a smooth Hermite interpolation between 0 and 1. | 返回一个在输入值之间平稳变化的插值。 |
sqrt | sqrt(x) | Square root (per component) | 返回输入值的平方根。 |
step | step(a, x) | Returns (x >= a) ? 1 : 0 | 返回(x >= a)? 1 : 0。 |
tan | tan(x) | Returns the tangent of x | 返回输入值的正切值。 |
tanh | tanh(x) | Returns the hyperbolic tangent of x | |
tex1D | tex1D(s, t) | 1D texture lookup. | 1D纹理查询。 |
tex1Dbias | tex1Dbias(s, t) | 1D texture lookup with bias. | |
tex1Dgrad | tex1Dgrad(s, t, ddx, ddy) | 1D texture lookup with a gradient. | |
tex1Dlod | tex1Dlod(s, t) | 1D texture lookup with LOD. | |
tex1Dproj | tex1Dproj(s, t) | 1D texture lookup with projective divide. | |
tex2D | tex2D(s, t) | 2D texture lookup. | 2D纹理查询。 |
tex2Dbias | tex2Dbias(s, t) | 2D texture lookup with bias. | |
tex2Dgrad | tex2Dgrad(s, t, ddx, ddy) | 2D texture lookup with a gradient. | |
tex2Dlod | tex2Dlod(s, t) | 2D texture lookup with LOD. | |
tex2Dproj | tex2Dproj(s, t) | 2D texture lookup with projective divide. | |
tex3D | tex3D(s, t) | 3D texture lookup. | 3D纹理查询。 |
tex3Dbias | tex3Dbias(s, t) | 3D texture lookup with bias. | |
tex3Dgrad | tex3Dgrad(s, t, ddx, ddy) | 3D texture lookup with a gradient. | |
tex3Dlod | tex3Dlod(s, t) | 3D texture lookup with LOD. | |
tex3Dproj | tex3Dproj(s, t) | 3D texture lookup with projective divide. | |
texCUBE | texCUBE(s, t) | Cube texture lookup. | 立方纹理查询。 |
texCUBEbias | texCUBEbias(s, t) | Cube texture lookup with bias. | |
texCUBEgrad | texCUBEgrad(s, t, ddx, ddy) | Cube texture lookup with a gradient. | |
texCUBElod | tex3Dlod(s, t) | Cube texture lookup with LOD. | |
texCUBEproj | texCUBEproj(s, t) | Cube texture lookup with projective divide. | |
transpose | transpose(m) | Returns the transpose of the matrix m. | 返回输入矩阵的转置。 |
trunc | trunc(x) | Truncates floating-point value(s) to integer value(s) |