如何仅将材质添加到Aframe几何对象(例如框)的一侧?我需要一个看起来像平面的盒子对象(缩放到平面)因为我有子几何对象,并且需要能够将它们保持在平面区域之外;但是,因为我一直把我的盒子看成是一个平面,所以它也会使孩子的物体变平。所以我想如果我可以让盒子看起来像只有一面有纹理的平面,它将解决问题
答案 0 :(得分:2)
您可以使用three.js MultiMaterial。
大多数手动方式是向实体添加几何图形,然后手动添加材质:
var materials = [
new THREE.MeshBasicMaterial( { color: 0xff0000 } ), // right
new THREE.MeshBasicMaterial( { color: 0x0000ff } ), // left
new THREE.MeshBasicMaterial( { color: 0x00ff00 } ), // top
new THREE.MeshBasicMaterial( { color: 0xffff00 } ), // bottom
new THREE.MeshBasicMaterial( { color: 0x00ffff } ), // back
new THREE.MeshBasicMaterial( { color: 0xff00ff } ) // front
];
el.getObject3D('mesh').material = new THREE.MultiMaterial(materials);
也许在稍后,有人可以制作一个多材料的A-Frame组件,而不必触及JS。