abs(x) | 返回标量和向量x的绝对值 如果x是向量,则返回每一个成员的绝对值 |
acos(x) | 返回标量和向量x的反余弦 x的范围是[-1,1],返回值的范围是[0,π], 如果x是向量,则返回每一个成员的反余弦 |
all(x) | 如果一个布尔标量为真,或者布尔向量的所有成员为真,则返回真 |
any(x) | 如果一个布尔标量为真,或者布尔向量成员存在真值,则返回真 |
asin(x) | 返回标量和向量x的反正弦 x的范围是[-1,1],返回值的范围是[-π/2,π/2], 如果x是向量,则返回每一个成员的反正弦 |
atan(x) | 返回标量和向量x的反正切 x的范围不限,返回值的范围是[-π/2,π/2], 如果x是向量,则返回每一个成员的反正切· |
atan2(y, x) | 返回标量和向量y/x的反正切 返回值的范围是[-π,π], |
ceil(x) | 返回不小于x的下一个整数 |
clamp(x, a, b) | 返回一个[a, b]范围内的数 如果x<a则返回a 如果x>b则返回b 否则返回x |
cos(x) | 返回x的cos值 |
cosh(x) | 返回一个x的双曲线cos值 |
cross(a, b) | 返回a, b的叉积 a, b一定含有3个成员 |
degrees(x) | 弧度转化为角度 |
determinant(M) | 返回的正方形矩阵m的行列式 |
dot(a, b) | 返回a与b的点积 |
exp(x) | 返回以e为底的x次幂 |
exp2(x) | 返回以2为底的x次幂 |
floor(x) | 返回不大于x的上一个整数 |
fmod(x, y) | 返回一个x/y的余数, y如果为0,结果不可预料 |
frac(x) | 返回x的小数部分 |
frexp(x, out exp) | 将浮点数x分解为尾数(在[0.5, 1]范围内)和指数(输出为e) 如果x为0,结果的所有部分都为0 |
isfinite(x) | 如果x是有限的则返回true |
isinf(x) | 如果x是无限的则返回true |
isnan(x) | NaN(not-a-number) 如果x NaN(not-a-number) 则返回true |
ldexp(x, n) | x * 2的n次方 |
lerp(a, b, w) | w是比重 当w= 0时返回a,当w= 1时返回b 根据w返回一个[a, b]的值 p.s. w可以为任意值,不用限制在[0, 1]之内 w can be any value (so is not restricted to be between zero and one); |
lit(ndotl, ndoth, m) | 计算环境、漫反射、和高光的光照系数 返回一个4维向量 x,环境光系数,经常值为1.0 y,漫反射系数 如果 dot(n, l) < 0返回0,否则返回dot(n, l) z,高光系数 如果 dot(n, l) < 0或dot(n, h) < 0返回0,否则返回dot(n, h)的m次方 w 固定值为1.0 |
log(x) | ln(x) |
log2(x) | 以2为底x的对数 |
log10(x) | 以10为底x的对数 |
max(a, b) | 返回a,b中的最大值 |
min(a, b) | 返回a,b中的最小值 |
modf(x, out ip) | 把x分离成整数和小数部分,把x的整数值存在输出参数ip处,并返回x的小数部分 |
mul(M, N) | 矩阵M和N的乘积
如果M是一个AxB的矩阵,N是一个BxC的矩阵,就返回一个AxC的矩阵 |
mul(M, v) | 矩阵M和列矢量v的乘积
如果M是一个AxB的矩阵,v是一个Bx1的矢量,就返回一个Ax1的矢量 |
mul(v, M) | 行矢量v和矩阵M的乘积
如果v是一个1xA的矢量,M是一个AxB的矩阵,就返回一个1xB的矢量 |
noise(x) | 任意一个1维2维或3维的噪波函数取决于x的类型。 返回一个[0, 1]范围内的,总是和输入相同的值 |
pow(x, y) | 返回x的y次方值 |
radians(x) | 角度转化为弧度的值 |
round(x) | 采用四舍五入法,返回把x化为整数值 |
rsqrt(x) | 返回x的平方根的倒数 x必须大于0 |
saturate(x) | 返回一个[0, 1]范围内的数 如果x<0则返回0 如果x>1则返回1 否则返回x |
sign(x) | 如果 x>0返回1 如果 x<0返回-1 否则返回0 |
sin(x) | 返回x的sin值 |
sincos(float x, out s, out c) | 输出参数s 为x的sin值,c为s的cos值 这个函数比分别计算x的sin和cos有效率 此函数无返回值 |
sinh(x) | 返回一个x的双曲线sin值 |
smoothstep(min, max, x) | x是一个[min, max]范围内的数 如果x=min返回0,如果x=max返回1 否则返回如下公式的计算结果:
|
step(a, x) | 如果 x<a返回0 如果 x≥a返回1 |
sqrt(x) | 返回x的平方根 x必须大于0 |
tan(x) | 返回x的tan值 |
tanh(x) | 返回一个x的双曲线tan值 |
transpose(M) | 返回M的转置矩阵 |
CG语言的数学函数
最新推荐文章于 2022-05-13 17:32:00 发布