【问题标题】:Java convert .obj to OpenGL for AndroidJava 将 .obj 转换为 Android 的 OpenGL
【发布时间】:2012-05-21 06:34:09
【问题描述】:

我有一个 Blender .obj 文件,它被上传到一个 tomcat 网络服务器。

现在我需要将此文件转换并存储到 Oracle 数据库中。

转换后的数据应该可以被 Android OpenGL Viewer 使用(我没有实现那个 Android 应用,所以我不能改变它获取数据的方式),它以某种方式从数据库中获取数据。

我的问题是:如何将 .obj 文件转换为 OpenGL 查看器可以理解的内容并将其存储到数据库中?

【问题讨论】:

    标签: java android opengl-es


    【解决方案1】:

    我之前曾推荐 Pixel Nerve 的 ObjImport 进行此类工作。请注意,这个工具实际上只是一个解析,你仍然需要编写大量代码才能让它做一些有用的事情。

    还有一个我没有使用过的选项,但我听说了一些好消息——JMonkeyEngine 实际上与 OpenGL 集成。您仍然需要编写大量代码,但可以这么说,它更接近目标。

    【讨论】:

      【解决方案2】:

      好吧,只需将 OBJ 文件转储到可以表示顶点、面和面列表的 SQL 模式中。例如

      CREATE TABLE vertices (object_ID KEY, vert_ID INTEGER, x DOUBLE, y DOUBLE, z DOUBLE);
      CREATE TABLE faces(object_ID KEY, vertex_A INTEGER, vertex_B INTEGER, vertex_C INTEGER);
      

      然后将您的对象加载到 OpenGL

      SELECT x,y,z FROM vertices WHERE objectID = ... ORDER BY vert_ID;
      

      并将结果放入顶点数组。面部相似

      SELECT vertex_A, vertex_B, vertex_C FROM faces WHERE objectID = ...;
      

      并使用结果数组调用glDrawElements

      如果你不知道如何使用顶点数组和glDrawElements,那么首先学习它们的使用,这样你就知道如何使用SQL转储的结果进行绘图。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-20
        • 2014-02-05
        • 2014-08-04
        • 1970-01-01
        • 1970-01-01
        • 2017-06-27
        相关资源
        最近更新 更多