2016-02-26 2 views
0

J'ai créé un cube très basique en utilisant Three.js et Physijs. Je cartographie une texture qui a de la transparence, et j'aimerais voir la texture de l'autre côté du cube à travers la transparence. En ce moment, je vois l'arrière-plan à travers la transparence, mais pas la texture à l'arrière du cube.Voir l'arrière du matériel cartographié avec Three.js et Physijs

var cube = new Physijs.BoxMesh( 
    new THREE.BoxGeometry(2, 2, 2), 
    new THREE.MeshPhongMaterial({ map: THREE.ImageUtils.loadTexture('border.png') }), 
    1); 

La texture utilisée:

enter image description here

Le résultat:

enter image description here

Comme vous pouvez le voir, l'arrière-plan montre à travers le cube, mais pas la texture sur la visages arrière. Je devine que le dos d'une texture 2d ne peut pas être vu, mais il y en a d'ailleurs pour moi d'appliquer la texture des deux côtés de chaque face alors?

Ceci est mon premier aller avec Threejs, et il semble être beaucoup de choses à prendre, donc j'espère que je ne l'ai pas manqué quelque chose évidente :)

Répondre

1

Réglage du side-THREE.DoubleSide peut le fait pour vous:

var material = new THREE.MeshPhongMaterial({ 
    map: new THREE.TextureLoader().load("image.png"), 
    transparent: true, 
    side: THREE.DoubleSide // apply to both sides of the faces 
}); 

Mais l'illusion est pas parfait comme vous pouvez le voir ici:

enter image description here

+0

C'est exactement ce que je cherchais, Merci! Je tripotais le paramètre 'side', mais je ne pensais pas avoir besoin de mettre de la transparence parce que je pouvais déjà voir la carte en arrière-plan :) – shauno