Shader Learn

08 Three.js 帮你做了什么

ShaderMaterial:自己写整个材质

左边的球完全由右侧代码着色。改代码,切换材质类型和 GLSL 版本。

每个像素运行一次拖动数字,或直接改代码

JS 这一侧material.uniforms.uTime.value = 0.00

ShaderMaterial 自动注入矩阵和属性声明;RawShaderMaterial 什么都不加。GLSL 3.00 用 in/out 和 texture()。

试一试

  • 改片元代码里的 12.0,条纹变多
  • 切到 RawShaderMaterial,读多出来的声明
  • 切到 GLSL 3.00,比较名字的变化
  • 点「完整代码」看 Three.js 真正编译的源码