如何进行OpenGL ES 2.0调试?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (4)
  • 关注 (0)
  • 查看 (413)

我有一个OpenGL ES 2.0应用程序。它编译并运行在iPhone/iPad模拟器上,在真正的iPhone/iPad上,并在Windows下使用Imgtec的模拟器库(即PVRV帧)。

在上述应用程序中,我有一个特定的绘图调用,它不会导致任何像素写入目标,即使我可以查询的所有状态看起来都是合理的(视图、深度测试/模板测试/筛选/混合、帧缓冲区完成等),以及我提交的合理的顶点数据。

我现在想要的是Pix/GPAD-类似的工具,它将让我跨过场景并回顾状态,我不能在所涉及的抽签调用(例如,实际顶点/索引缓冲区内容)点直接从OpenGL查询。

PVRTraceOSX仪器都没有捕获足够的状态来调试此类问题。特别是,它们不捕获顶点/索引缓冲区或纹理数据(OSX仪器也不捕获着色器源)。

gDEBugger不再支持OpenGLES 2(在Windows下,没有ES2-可呈现的配置可以通过EGL;OSX提供)。没有办法将调试器附加到运行在模拟器或实际设备上的应用程序上--这并不好。

我错过了什么明显的东西吗?我有什么选择?其他人如何调试他们的场景?

提问于
用户回答回答于

GNUDebugger(GDB)是Xcode的后端之一(因为GCC是后端编译器,所以后端调试器也将是一个GNU工具;我还假设是在Mac上开发的,如果不是,Google GDB或mingw)。虽然“很难使用”,但gdb是强大。它可以遍历整个应用程序,我相信它可以接受当前运行的应用程序的核心转储。

用户回答回答于
用户回答回答于

在PVRVFrame中使用PVRTrace

所属标签

可能回答问题的人

  • 西风

    renzha.net · 站长 (已认证)

    9 粉丝1 提问5 回答
  • uncle_light

    5 粉丝518 提问3 回答
  • 学生

    2 粉丝477 提问3 回答
  • 军哥

    重庆雷驰信息技术有限公司 · 经理 (已认证)

    5 粉丝1 提问3 回答

扫码关注云+社区

领取腾讯云代金券