【问题标题】:Three.js MeshNormalMaterial default color三.js MeshNormalMaterial 默认颜色
【发布时间】:2013-11-02 04:01:59
【问题描述】:

我正在处理这个 three.js 示例 - http://www.html5canvastutorials.com/three/html5-canvas-webgl-rotating-cube/

在这里,立方体的颜色每帧都会改变。但是,在示例代码中没有指定颜色。另外,我尝试为 MeshNormalMaterial 指定颜色,但没有任何效果。那么,颜色是如何被操纵的呢?

谢谢!

【问题讨论】:

    标签: three.js


    【解决方案1】:

    MeshNormalMaterial 使用 THREE.ShaderLib[ 'normal' ] 作为材质的着色器。

    您可以在WebGLShaders.js找到源代码。

    在片段着色器中设置颜色,如下所示:

    gl_FragColor = vec4( 0.5 * normalize( vNormal ) + 0.5, opacity );
    

    您可以看到片段的颜色是法线向量的函数。

    three.js r.62

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-03
      • 1970-01-01
      • 2018-11-26
      • 1970-01-01
      • 2011-07-27
      • 2021-08-02
      相关资源
      最近更新 更多