ios - 使用 OpenGL-ES 的 3D CAD 模型

标签 ios opengl-es 3d cad

我正在努力将 3D CAD 模型导入我的 iOS 应用程序,但我很难弄清楚限制在哪里,谈到顶点和曲面的数量。

我有一个模型有:

  • 表面:41525
  • 顶点数:21504

基本上没有限制,但实际上加载到我的 iOS 应用程序中需要 2 小时。

我一直没能找到一个好的方法来减少这个模型而不会造成太大的破坏,所以我非常想知道这是怎么可能的。

我有 AC3D 和 STEP 格式的模型。

我尝试通过 AC3D 减少多边形,但最终看起来很糟糕。

最佳答案

没有正式的限制,您实际获得的吞吐量将取决于您选择绘制内容的智能程度、您想要应用的表面效果类型等。

综上所述,查看 STEP 文件会发现它是一种用于交换的纯 ASCII 格式。两个小时太多了,以至于表明除了解析内容之外还有一些相当重要的潜在性能问题,但您绝对应该考虑至少在将文件包含在应用程序之前对其进行标记化。

OBJ 是另一种 ASCII 格式,我发现只需在 Mac 上标记文件,然后在应用程序中加载标记化版本,即可将 20 秒的模型加载时间减少到不到 1 秒。切换到没有 OBJ 兼容性要求的二进制格式(以便我可以预先剥离等)进一步缩短加载时间。

关于ios - 使用 OpenGL-ES 的 3D CAD 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9626581/

相关文章:

iphone - 如何从以下方法获取新位置

java - 视差 XY 和旋转 - 平铺计算

iphone - 当用户滚动表格并突出显示单元格时,取消突出显示行在索引路径上返回最大整数

ios - 如何在 ios 中通过 http get 请求在控制台中显示数据

ios - 如何更改 CCTexture2D 颜色

android - 在 Android 上运行的 OpenGL ES 2.0 中无法获取纹理渲染到四边形

python - Matplotlib:3D trisurf 图中的 ax.format_coord() - 返回 (x,y,z) 而不是(方位角,仰角)?

c++ - 从任意原点求出两个 vector 之间的夹角

java - 如何将相机固定在玩家身上,以便当玩家移动时相机也会跟随

iphone - 来自 Web url 的 IOS 应用程序上的 SWF