【问题标题】:Display a new render object in Qualcomm's Vuforia for iOS在 Qualcomm 的 Vuforia for iOS 中显示新的渲染对象
【发布时间】:2012-02-11 18:48:25
【问题描述】:

我从 Qualcomm 的增强现实下载中获取了“ImageTargets”示例,我正在尝试显示我自己的 3D 渲染,它已经是 .h 这是我的代码:

 // Draw object
            glBindTexture(GL_TEXTURE_2D, [thisTexture textureID]);
            glTexCoordPointer(2, GL_FLOAT, 0, (const GLvoid*)&santtandersupermanTexCoords[0]);
            glVertexPointer(3, GL_FLOAT, 0, (const GLvoid*) &santtandersupermanVerts[0]);
            glNormalPointer(GL_FLOAT, 0, (const GLvoid*)&santtandersupermanNormals[0]);
            //glDrawElements(GL_TRIANGLES, NUM_TEAPOT_OBJECT_INDEX, GL_UNSIGNED_SHORT, (const GLvoid*)&teapotIndices[0]);
            glDrawElements(GL_TRIANGLES, 0, GL_FLOAT, (const GLfloat*)&santtandersupermanVerts[0]);

问题是,即使它没有崩溃,也没有显示我收到以下错误:

EAGLView renderFrameQCAR() 后的glError (0x500)

知道我能做什么吗?

【问题讨论】:

    标签: ios opengl-es augmented-reality


    【解决方案1】:

    您遇到的错误是因为您在“santtandersuperman”中的数据与您在代码中设置的期望不符。

    特别是您已将 verts 传递给 glDrawElements ,它需要一个索引数组(并且您指定的数量为零)。

    你应该使用:

    glDrawArrays(GL_TRIANGLES, 0, vertexCount);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-21
      • 2021-10-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-03
      • 1970-01-01
      • 2015-03-09
      相关资源
      最近更新 更多