三个.s ShaderLib中的着色器是什么?

时间:2013-07-15 19:10:15

标签: three.js glsl webgl shader

我在各种演示中都看到你可以使用这样的着色器:

shader = THREE.ShaderLib[ "normalmap" ];

ShaderLib中有哪些其他着色器,ShaderLib在哪里记录?它似乎甚至没有出现在github回购中。

1 个答案:

答案 0 :(得分:4)

r.59开始,ShaderLib提供的three.js着色器为:

  • 基本
  • 兰伯特
  • particle_basic
  • 虚线
  • 深度
  • 正常
  • 法线
  • 立方体
  • depthRGBA

ShaderLib中的着色器在此处列出并定义:https://github.com/mrdoob/three.js/blob/r59/src/renderers/WebGLShaders.js#L1936 - 这包括它们的链接制服,以及包含的着色器shunk,以及少数情况下的片段和顶点着色器定义。

到目前为止,它们在the documentation中没有被提及,并且出于某种原因,在回购中搜索ShaderLib变得空洞,显然是因为github搜索存在无法解释的缺陷。