5

我正在寻找一种将大型多边形网格(最多 1M 个三角形)加载到 Three.js 的最有效方法。我正在考虑使用THREE.BufferGeometry对象或加载THREE.BinaryLoader. 我的问题是:

  • BinaryLoader.js在下面创建一个THREE.BufferGeometry对象吗?或者它是否创造了同样有效的东西?
  • 如果没有,有没有人推荐使用哪一个?

一些附加信息:

  • 我的模型在服务器上是专有格式,所以无论如何我都需要对它们进行转换/编码。
  • 我还没有找到一个可以创建THREE.BufferGeometry. 看来我需要自己写。但我可以准备服务器端的数据以与THREE.BufferGeometry结构对齐。
  • BinaryLoader.js为加载数据提供了所有必要的基础设施,但需要在服务器端以特殊方式准备数据。
4

1 回答 1

2

看看 Three.js 的 glTF 格式和 glTFLoader。它使用 BufferGeometry。性能要好得多;但是,它实现了自己的动画(不使用 THREE.Animation),并且我遇到了一些与 Three.js 相关的问题,例如克隆模型不起作用(至少开箱即用)

glTF:https ://github.com/KhronosGroup/glTF

glTFLoader:https ://github.com/mrdoob/three.js/blob/54a1e789c3a84557d6b05782f5cbd9f1064f5e4f/examples/js/loaders/GLTFLoader.js

于 2014-06-24T17:37:45.063 回答