4

我是opengl-es 的新手,我想知道人们如何能够绘制这些非常详细的OpenGL ES 图形,例如在Android OS 上。绘制一个正方形已经很困难了,因为它是由三角形组成的,因为 OpenGL ES 显然不能绘制三角形以外的任何东西。我想到了这种方法:

  • 在 Blender 中绘制和渲染对象。
  • 以某种方式将其导出为顶点数组和颜色数组
  • 将此顶点数组复制到 Java 代码中
  • 运行代码

或者有没有办法以更好的方式解决这些问题?我不认为人们只是将他们的图形“绘制”为代码中的顶点数组。我确定他们会在其他任何地方绘制它们并将其导入代码中。如果 Blender 有这样的解决方案,我很高兴知道这是如何解决的。

问候。

4

2 回答 2

4

您可以将模型从 Blender 中保存为 Wavefront OBJ 文件。在 Blender 中,您还可以选择为您的模型进行三角测量,这将产生一个仅包含三角形的列表,可供绘制。OBJ 是一种非常简单的格式,它只是以 ASCII 格式列出每个顶点的位置,然后列出哪些顶点属于每个三角形。要么将 OBJ 转换为特定于您的应用程序的格式(例如,您可以直接加载到 OpenGL 的二进制缓冲区),要么找到众多 OBJ 加载器之一,或者编写您自己的阅读器。

还有很多其他常用格式,您应该看看它们,看看是否有可用的 Android 导入器。

于 2010-06-08T15:07:54.367 回答
3

我发现您可以使用以下方法将带有 min3D 的 3D 模型直接加载到您的程序中:

min3d

我希望这有帮助。

于 2010-06-09T13:05:23.747 回答