【问题标题】:Getting a Maya Model into the iPhone将 Maya 模型导入 iPhone
【发布时间】:2011-01-13 00:07:31
【问题描述】:

最好的方法是什么?谷歌搜索向我展示了很多方法,但目前最好的方法是什么?我很高兴能从 Maya 导出模型并在 iPhone 屏幕上渲染,但如果有办法渲染它,然后支持捏缩放等,我会很兴奋。

非常感谢,今天刚完成我的第一个 3D 建模课程,我很兴奋!

【问题讨论】:

    标签: iphone opengl-es 3d maya


    【解决方案1】:

    我刚刚为 iPhone 和 iPad 编写了一个功能齐全的模型查看器和操纵器。基本上,我只是编写了自己的文件解析器来存储顶点数组,然后在我的渲染循环中我只渲染数组。尽管二进制文件的读取速度比 .obj 文件快得多,但这样做相当简单。这样,您可以打开任何文件,而不仅仅是您“处理”的文件。互联网上也有很多例子。

    编辑:

    只需将您的顶点放入一个紧密排列的数组中:

    vertexX, vertexY, vertexZ, normalX, normalY, normalZ
    

    这样你就有了一个浮点数的一维数组,但是像上面那样映射出来。有了浮点数组后,渲染就很简单了。

    glEnableClientState(GL_VERTEX_ARRAY);
    glEnableClientState(GL_NORMAL_ARRAY);
            
    glVertexPointer(3, GL_FLOAT, sizeof(vertices[0])*6, &vertices[0]);
    glNormalPointer(GL_FLOAT, sizeof(vertices[0])*6, &vertices[3]);
            
    glColor4f(R, G, B, 1); //range 0-1
    glDrawArrays(GL_TRIANGLES, 0, numVertices); //number of floats in array divided by 6
            
    glDisableClientState(GL_VERTEX_ARRAY);
    glDisableClientState(GL_NORMAL_ARRAY);
    

    然后将其放入您的 OpenGL-ES 1.1 渲染循环中。让我知道这是否适合您。

    编辑2:

    为您澄清一下,如果您在文本编辑器中打开 OBJ 文件,它的布局如下:

    list of vertices
    list of texture coordinates
    list of normals
    list of faces
    

    并且面列表以相同的顺序引用其他三个列表中的索引。例如,一行可能如下所示:

    f 16/4/1  4/4/4  1/1/1
    

    表示面的第一个顶点引用顶点索引16,纹理索引4,法线索引1。第二个索引引用顶点索引 4、纹理索引 4 和法线索引 4 等。然后您只需要解析面并将不同数组中的正确值提取到包含顶点和法线的单个浮点数组中人脸索引。

    【讨论】:

      【解决方案2】:

      查看 Pangea 人的书。链接here。我不记得他 [Brain] 是否显示了读取 Maya 或 Alias 的代码。总之,必读。

      [edit] 他在第 13 章中展示了如何读取 Maya 文件

      【讨论】:

        【解决方案3】:

        好吧,除非有人有更好的方法,否则我关注了这篇文章:http://heikobehrens.net/2009/08/27/obj2opengl/。它涉及将模型导出为 .obj,然后通过 Perl 脚本运行它以将其转换为 C 结构的 .h。

        【讨论】:

          【解决方案4】:

          您也可以使用unity3d 和cocos3d

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2016-09-29
            • 2017-08-27
            • 2014-09-05
            • 2011-12-12
            • 2013-05-04
            相关资源
            最近更新 更多