Hola, como dice el título, cada vez que cargo un archivo obj con obj loader junto con geometría indexada, se agregan vértices adicionales a mi objeto y no puedo entender por qué.
Por ejemplo, cuando cargo mi obj sin geometría indexada, los vértices son los mismos que las caras del objeto (por lo que leí, esto se debe a la sopa de triángulos) después de usar BufferGeometryUtils.mergeVertices y luego Computing Vertex Normals, el recuento de vértices se redujo casi a el original pero no del todo.
Así es como uso obj loader
loader= new OBJLoader() var textureLoader = new THREE.TextureLoader(loadingManager); var map = textureLoader.load('Castle.jpg'); var material = new THREE.MeshPhysicalMaterial({map: map, vertexColors: true}); loader.load( 'Castle.obj', function ( obj ) { obj.children[0].geometry = BufferGeometryUtils.mergeVertices(obj.children[0].geometry); obj.children[0].computeVertexNormals(); obj.traverse( function ( node ) { if ( node.isMesh ) { node.material = material; } } ); scene.add(obj) } );Mis 2 archivos obj con los que trabajo tienen estas estadísticas Castle.obj Vértices: 220.153 En tres.js 270.532
Ball.obj Vértices: 95.213 en three.js 123.357
El recuento de caras sigue siendo el mismo. ¿Estoy haciendo algo mal? Si uso la Geometría en desuso, todo funciona correctamente, sin embargo, dado que está en desuso, no sé si es lo correcto. Estoy en la versión 0.136
Saludos