我正在尝试在不同的面上创建具有不同材质的网格(以便可以解构和“干扰”某些加载的几何图形)。
由于某种原因,我什么都看不到任何变化,我想知道Three.js中是否发生了变化。我敢肯定这曾经有用,但是已经有一段时间了,现在我没有收到任何错误,但是没有任何更新。
我正在看这样的示例:https://dustinpfister.github.io/2018/05/14/threejs-mesh-material-index/
类似:
function makeTestShape() {
// An array of Materials
var materialArray = [
new THREE.MeshBasicMaterial({
color: 0xff0000
}),
new THREE.MeshBasicMaterial({
color: 0x00ff00
}),
new THREE.MeshBasicMaterial({
color: 0x0000ff
})
];
// Sphere
var geometry = new THREE.SphereGeometry(1, 15, 15);
// looping over all faces and setting the material index property
geometry.faces.forEach(function (face, i) {
face.materialIndex = Math.floor(i % materialArray.length);
});
var sphere = new THREE.Mesh(geometry,materialArray);
scene.add(sphere);
}
运行此代码时,没有可见的几何体,也没有错误。什么都没发生。这仍然是正确的方法吗?我想念什么?我还尝试了needsUpdate的每种配置,这似乎也不起作用...
谢谢!