重新new 一个就可以了。
代码:
if (this.building) {
this.building.traverse((child) => {
if (child.isMesh && child.name) {
if (child.name.includes("住宅")) {
// 对“住宅”进行特殊处理
} else if (child.name.includes("底图")) {
// 对“底图”进行特殊处理,不改变材质
} else {
// 对其他建筑物进行处理
child.material = new THREE.MeshBasicMaterial({
color: new THREE.Color(0xffffff), // 设置为白色
transparent: true, // 设置材质为透明
opacity: 0.1, // 设置为半透明
});
}
}
});
}