我已经从blender成功导入了一个足球模型(截短的正二十面体),通过JSON加载器。我想在点击时更改面的颜色,正确识别面并可以更改整个模型的颜色,但无法更改特定的面。我深入挖掘后发现,颜色确实被分配给soccerball.geometry.faces[i] ,但新的面颜色没有显示出来。
我已经阅读了所有相似的帖子并尝试了所有提出的解决方案(不同的材料,dirtyColors,dynamic,colorsNeedUpdate等),但都没有帮助。
这是我导入模型的方式:
我已经阅读了所有相似的帖子并尝试了所有提出的解决方案(不同的材料,dirtyColors,dynamic,colorsNeedUpdate等),但都没有帮助。
这是我导入模型的方式:
var loader = new THREE.JSONLoader( );
var onGeometry = function(geom) {
soccer = new THREE.Mesh( geom, new THREE.MeshLambertMaterial());
soccer.position.set( 0, 0, 0 );
soccer.scale.set( 2, 2, 2 );
soccer.geometry.dynamic = true;
soccer.geometry.dirty = true;
soccer.overdraw = true;
objects.push(soccer);
scene.add(soccer);
};
loader.load("models/model.js", onGeometry);
你能帮我吗?提前感谢你。