我已经从六个平面实体创建了一个骰子实体。但是,当我单击并拖动骰子实体时,不会移动该骰子,只会拖动单面。 这可以在链接http://shrouded-chamber-73425.herokuapp.com/
上试用答案 0 :(得分:0)
不是从六个平面创建一个盒子,而是应该创建一个盒子并使用一种材料来为你渲染骰子面。您可以使用isAsciiUpper :: Char -> Bool
:
AFRAME.registerComponent('dice-texture', {
init: function () {
var box = this.el.getOrCreateObject3D('mesh');
var loader = new THREE.CubeTextureLoader();
loader.setPath('/images/diceTextures/');
var textureCube = loader.load([
'1.png', '2.png',
'3.png', '4.png',
'5.png', '6.png'
]);
box.material = new THREE.MeshStandardMaterial({envMap: textureCube);
}
});
<a-entity geometry="primitive: box" dice-texture></a-entity>
然后你可以进一步优化,以便每个盒子共享相同的材料,这样你每次都不会创建一个新材料。