三.js / WebGL / GLSL - "#include <common>"是什么意思?



在这个 Three.js 着色器示例中,一个名为 rand()(将vec2作为参数(的函数用于生成随机数。

但是,着色器代码中未定义该函数。相反,它似乎使用 #include <common>(片段着色器的第一行(包含在内。

我想#include的工作方式有点像在 C/C++ 中,但<common>到底指的是什么?它是外部文件吗?它是特定于Three的东西.js还是它也可以与WebGL/GLSL一起使用?

这与

三个.js如何尝试通过"shaderChunks"使着色器模块化有关.
包含的三个.js着色器的示例可以在这里看到。

#include <common>的特定部分指的是这个"shaderChunk",它似乎包含在三个着色器中的大多数.js以提供常见的实用程序类型函数和变量。

最新更新