【问题标题】:Three js animate blender model with material colors三个带有材质颜色的 js 动画搅拌机模型
【发布时间】:2012-11-20 00:57:19
【问题描述】:

我有一个导出的(三个 js json 格式)搅拌机模型。该模型有一些颜色的材料。如果我使用 THREE.MorphAnimMesh 和 THREE.MeshPhongMaterial 动画效果很好,但没有材质颜色。如果我使用 THREE.MeshFaceMaterial 它有颜色但动画不起作用。 问题是,如何使用模型 js 文件中的材质颜色进行动画处理?

动画工作但没有颜色。模特是白色的:

var material = new THREE.MeshPhongMaterial({ morphTargets: true, morphNormals: true, vertexColors: THREE.FaceColors, shading: THREE.SmoothShading, perPixel: true }  );
var meshAnim = new THREE.MorphAnimMesh( geometry, material );

模型有材质颜色但动画不起作用:

var material  = new THREE.MeshFaceMaterial({ morphTargets: true, morphNormals: true, vertexColors: THREE.FaceColors });
var meshAnim = new THREE.MorphAnimMesh( geometry, material );

这里是模型js文件:http://speedy.sh/rs39u/skeleton-0.js

顺便说一句,我从示例中看到了 flamingo.js 文件。它有一个 morphColors 对象,但如果我知道正确,我不能从搅拌机中导出它。

【问题讨论】:

    标签: three.js blender


    【解决方案1】:

    知道了。也许有人可以使用它:

    for (var i=0; i<geometry.materials.length; i++) {
        geometry.materials[i].morphTargets = true;
    }
    var material  = new THREE.MeshFaceMaterial({ morphTargets: true, morphNormals: true, vertexColors: THREE.FaceColors });
    var meshAnim = new THREE.MorphAnimMesh( geometry, material );
    

    【讨论】:

      猜你喜欢
      • 2017-08-17
      • 2012-11-11
      • 2022-07-15
      • 1970-01-01
      • 2017-12-06
      • 1970-01-01
      • 2013-05-15
      • 2018-10-25
      • 2012-11-20
      相关资源
      最近更新 更多