将几何转换为 BufferGeometry

Posted

技术标签:

【中文标题】将几何转换为 BufferGeometry【英文标题】:Transforming Geometry to BufferGeometry 【发布时间】:2013-08-18 05:50:35 【问题描述】:

据我了解,Geometry 存储顶点和面的 javascript 对象结构,而 BufferGeometry 仅通过 Float32Arrays 等存储原始 gl 数据。

有什么方法可以将标准几何体转换为 BufferGeometry,即内存更紧凑,对象更少?例如,如果我创建一个新的 SphereGeometry,有没有办法轻松地将其转换为 BufferGeometry?

【问题讨论】:

【参考方案1】:

你很幸运。

var bufferGeometry = new THREE.BufferGeometry().fromGeometry( geometry );

编辑:更新到 three.js r.76

【讨论】:

我刚尝试过使用这个(全新的,呵呵),但脸部没有移植过来。我尝试将缓冲区几何上不存在的 faces 属性设置为旧几何上的属性,但没有骰子。 为我工作。 r.60 不支持四边形面,仅支持 tris。使用调试器单步执行代码。您大概可以找出问题所在。 啊,是的,我看到了,并根据该代码制作了一些东西。谢谢!将我的球体移植到 BufferGeometry:i.imgur.com/UCB1f61.png 将几何图形转换为缓冲几何图形后,有没有办法保存它并稍后从文件中加载它?目前我正在从 .ply 加载一个大型模型,并且正在寻找性能改进。 @foobarbecue 如果你有问题,你需要发一个新帖子。

以上是关于将几何转换为 BufferGeometry的主要内容,如果未能解决你的问题,请参考以下文章

将几何图形转换为 wpf 中的路径(使用混合?)

将 SQL 地理转换为 SQL 几何或以其他方式提高查找速度

如何将 kml 多边形几何数据转换为谷歌多边形坐标

MySQL数据类型 - 空间数据类型

渲染管道几何阶段四“几何着色器”

渲染管道几何阶段四“几何着色器”