2017-07-18 1 views

Répondre

0

Plutôt que de créer une boîte à partir de six plans, vous devez créer une boîte et utiliser un matériau qui rendra les faces de dés pour vous. Vous pouvez utiliser three.js CubeTexture:

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> 

Ensuite, vous pouvez optimiser de sorte que chaque boîte partage les mêmes matériels que vous n'êtes pas en train de créer un nouveau à chaque fois.

+0

Les textures n'apparaissent pas. Le code source est à https://github.com/prakashsinhab/falling_dices/blob/master/app/views/index.html –