数学函数
函数 | 描述 |
---|---|
abs(x) | 返回输入参数的绝对值 |
acos(x) | 反余切函数,输入参数范围为[-1,1], 返回[0,π]区间的角度值 |
all(x) | 如果输入参数均不为0,则返回ture; 否则返回flase。&&运算 |
any(x) | 输入参数只要有其中一个不为0,则返回true |
asin(x) | 反正弦函数,输入参数取值区间为,返回角度值范围为[−π/2,π/2] |
atan(x) | 反正切函数,返回角度值范围为[−π/2,π/2] |
atan2(y,x) | 计算y/x的反正切值。实际上和atan(x)函数功能完全一样,至少输入参数不同。atan(x) = atan2(x, float(1)) |
ceil(x) | 对输入参数向上取整。例如: ceil(float(1.3)) ,其返回值为2.0 |
clamp(x,a,b) | 如果x值小于a,则返回a;如果x值大于b,返回b;否则,返回x |
clip(x) | 将x小于0的像素点直接丢弃掉 |
cos(x) | 返回弧度x的余弦值。返回值范围为[-1,+1] |
cosh(x) | 双曲余弦(hyperbolic cosine)函数,计算x的双曲余弦值 |
cross(A,B) | 返回两个三元向量的叉积(cross product)。注意,输入参数必须是三元向量 |
ddx(a) | 返回a值关于屏幕空间x轴的偏导数 |
ddx(a) | 返回a值关于屏幕空间y轴的偏导数 |
degrees(x) | 输入参数为弧度值(radians),函数将其转换为角度值(degrees) |
determinant(m) | 计算矩阵的行列式因子 |
distance(pt1, pt2) | 两点之间的欧几里德距离(Euclidean distance) |
dot(A,B) | 返回A和B的点积。参数A和B可以是标量,也可以是向量(输入参数方面,点积和叉积函数有很大不同) |
exp(x) | 计算 e x e^x ex的值,e=2.7182818284590 |
exp2(x) | 计算 2 x 2^x 2x的值 |
faceforward(N,I,Ng) | 如果Ng•I < 0,返回N;否则返回-N |
floor(x) | 对输入参数向下取整。例如floor(float(1.3))返回的值为1.0;但是 |