29

Blender export obj don't export double sided objects. How can I render objects in double sided mode. I tried this without succes:

var loader = new THREE.OBJMTLLoader();
    loader.load('models/test.obj');
    loader.addEventListener( 'load', function ( event ) {
        objects = event.content;
        objects.position.set(0,5,0);
        objects.scale.set(1.5,1.5,1.5);
        objects.mesh.doubleSided = true;
        scene.add(objects);
    });
user2244365
  • 577
  • 2
  • 5
  • 10

2 Answers2

76

In your case, you add the following to your callback function:

objects.traverse( function( node ) {
    if( node.material ) {
        node.material.side = THREE.DoubleSide;
    }
});

The doubleSided property of Mesh is deprecated. It was replaced with the side property of Material

Also, it is best to learn from three.js examples that work with the current version of the library.

three.js r.57

WestLangley
  • 102,557
  • 10
  • 276
  • 276
4

2022

Future readers! Just add the side option to the material constructor:

const material = new THREE.MeshLambertMaterial({
  color: 0xff0000,
  side: THREE.DoubleSide
  //           ^ this line here
});

Ben Winding
  • 10,208
  • 4
  • 80
  • 67