Blender 导出 obj 不导出双面对象。如何以双面模式渲染对象。我尝试过但没有成功:
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);
});
在您的情况下,您可以将以下内容添加到回调函数中:
objects.traverse( function( node ) {
if( node.material ) {
node.material.side = THREE.DoubleSide;
}
});
doubleSided
的 Mesh
属性已弃用。它被替换为 side
的 Material
属性。
此外,最好学习适用于当前版本库的 Three.js 示例。
三.js r.57
未来的读者!只需将
side
选项添加到材质构造函数即可:
const material = new THREE.MeshLambertMaterial({
color: 0xff0000,
side: THREE.DoubleSide
// ^ this line here
});