如何从使用 OBJLoader 创建的 Object3D 创建 BufferGeometry?我这样做是因为几何图形可以作为 OBJ 文件使用,但我希望能够一张一张地更新面孔。
我试过
console.log(Object.getPrototypeOf(geometry))
// Object3D
var bgeometry = new THREE.BufferGeometry().fromGeometry( geometry )
// throws: Cannot read property '0' of undefined
和
var bgeometry = new THREE.BufferGeometry();
bgeometry.setFromObject(geometry);
console.log(bgeometry.faces);
// bgeometry.faces is undefined
我从图片中遗漏了什么?
最佳答案
好像有点误会。 BufferGeometry
没有 faces
属性。也许您想将 BufferGeometry
转换为 Geometry
? OBJLoader
确实将几何数据解析为 BufferGeometry
的实例。尝试像这样转换生成的几何图形:
var geometry = new THREE.Geometry().fromBufferGeometry( bufferGeometry );
您现在可以访问 geometry.faces ;
关于javascript - 如何从 Object3D 创建 BufferGeometry?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55075955/