GLSL - 长度函数

The*_*Cat 2 shader glsl webgl

从 GLSL 文档(https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/length.xhtml)中,长度函数“计算向量的长度”。

但我不明白,这里的“长度”是什么意思?

例如:

length(.5); // returns .5
length(1.); // returns 1.
Run Code Online (Sandbox Code Playgroud)

那么你应该如何以及为什么要使用这个功能呢?

Rab*_*d76 5

请参阅OpenGL ES 着色语言

8 内置功能,第 63 页

当内置函数在下面指定时,其中输入参数(和相应的输出)可以是floatvec2vec3、 或vec4genType用作参数。

8.4 几何函数,第 68 页

float length (genType x)
Run Code Online (Sandbox Code Playgroud)

返回向量 x 的长度,即
在此处输入图片说明


这意味着结果length(.5)是:

sqrt(0.5 * 0.5) = 0.5
Run Code Online (Sandbox Code Playgroud)

结果length(1.)

sqrt(1.0 * 1.0) = 1.0
Run Code Online (Sandbox Code Playgroud)