webgl GLSL 内置函数

webgl GLSL 内置函数

float abs(float x)
此函数会返回x的无符号绝对值,即如果x大于0则返回x,否则返回-x。

img

float sign(float x)
此函数又称为符号函数,如果x>0返回1.0,如果x=0返回0.0,否则返回-1.0

img

float floor(float x)
向下取整。

float ceil(float x)
向上取整。

float fract(float x)
此函数会返回x的小数部分

float mod(float x, float y)
此函数会返回x除以y的余数。

float min(float x, float y)
此函数会返回x和y两个值中的最小值。

float max(float x, float y)
此函数会返回x和y两个值中的最大值。

float clamp(float x, float minVal, float maxVal)
此函数会将x限制在minVal和maxVal之间。

img

上面的图像中我将minVal的值调节为0.0,将maxVal的值调节为1.0,那么x的值比0.0小的时候,就会返回0.0,在0.0到1.0之间就会返回x值本身,而大于1.0的时候就会返回1.0。

float mix(float x, float y, float a)
此函数会返回x和y的线性混合,即x*(1-a)+ya
下面我们看一下y = mix(0.0,1.0,x);这个函数的图像。

img

float step(float edge, float)
此函数会根据两个数值生成阶梯函数,如果x<edge则返回0.0,否则返回1.0

在这里插入图片描述

float smoothstep(float edge0, float edge1, float x)

参数 edge1 必须大于edge0

a< edge0 返回 0

a> edge1 返回1

edge0 ≥ a ≤ edge1 返回 3a^2-2a^3

在这里插入图片描述


webgl GLSL 内置函数
http://example.com/2024/05/23/webgl/webgl GLSL 内置函数/
Author
John Doe
Posted on
May 23, 2024
Licensed under