我正在开发一个需要在iOS设备上渲染3D人体的项目。 3D对象是在Adobe LightWave中构建的,为7.4MB。我在Blender中打开它并将其导出为OBJ / MTL对,分别为5.5MB和4KB。使用Jeff LaMarche的Wavefront Loader(下面链接)作为起点来计算OpenGL ES并获得检查性能等等,我把对象放在那里(代替他一直在使用的OBJ / MTL对)然后运行它在模拟器中。当然,启动时崩溃,所以我决定执行SelectorInBackground吧。半小时后,它仍在装载。
我只是猜测该文件过于细致,无法在具有600MHz处理器的设备上进行任何性能预期。有没有办法在一定程度上降低这些文件的质量?或者,如果这个特定的加载器出现性能问题,有人可以启发我吗?
谢谢, 将
http://iphonedevelopment.blogspot.com/2009/03/wavefront-obj-loader-open-sourced-to.html
答案 0 :(得分:0)
威尔
我不知道我是否可以解决您的问题,但我可以指出您正确的方向。我做了一个项目,用于加载使用SIO2 3D引擎从Blender导出的3D模型的客户端。
无论如何,当时我在使用3D引擎时需要很长时间来加载模型。我发现减少多边形的数量非常重要 - 如果它是一个高质量的模型,你肯定需要这样做。
Blender有一个函数 - 多边形减少或类似的东西。 Blender还应该向您报告正在使用多少多边形和曲面,因此如果它超过20,000,则可能会出现性能问题。