Javascript 在THREE.js face中反转顶点顺序
我需要反转几何体面的顶点顺序。 例如:Javascript 在THREE.js face中反转顶点顺序,javascript,three.js,Javascript,Three.js,我需要反转几何体面的顶点顺序。 例如: // create geometry var geometry = new THREE.Geometry(); // create vertices geometry.vertices.push( new THREE.Vector3( 0, 0, 0 ) ); geometry.vertices.push( new THREE.Vector3( 0, 100, 0 ) ); geometry.vertices.push( new THREE.V
// create geometry
var geometry = new THREE.Geometry();
// create vertices
geometry.vertices.push( new THREE.Vector3( 0, 0, 0 ) );
geometry.vertices.push( new THREE.Vector3( 0, 100, 0 ) );
geometry.vertices.push( new THREE.Vector3( 100, 0, 0 ) );
// create face
var face = new THREE.Face3( 0, 1, 2 );
geometry.faces.push ( face );
// compute normals
geometry.computeFaceNormals();
geometry.computeVertexNormals();
// add to scene
var mesh = new THREE.Mesh(
geometry,
new THREE.MeshBasicMaterial({color: 0x00ffff})
);
scene.add( mesh );
现在我需要将面上顶点的顺序从0,1,2更改为2,1,0。但当我手动执行此操作时,无论更新的哪个标志设置为true,它都不起作用
问题是,是否有可能在运行中反转顶点顺序?如果是,如何反转
重要-在这种情况下,最好避免对几何体使用负比例。而且最好避免重新创建对象
3.js:r73
delete mesh.geometry.__directGeometry;
这应该适用于您的更改。由于某些原因,在r72和r73中,directGeometry没有自动更新。您需要操作的是索引,而不是顶点。查看
geometry.attributes.index.array
了解三角形组成的顺序。attributes
是BufferGeometry
的一部分,但我使用的是普通几何体。我想里面没有指数。