OpenGL ES 2.0调试 [英] OpenGL ES 2.0 debugging

查看:235
本文介绍了OpenGL ES 2.0调试的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

所以,我有一个 OpenGL ES 2.0 应用程序。它在iPhone / iPad模拟器,真实的iPhone / iPad和Windows下使用Imgtec的模拟器库(即 PVRVframe )进行编译和运行。



<在所述应用程序中,我有一个特定的绘图调用,导致没有像素写入目标,即使我可以查询的所有状态看起来都很明智(视口,深度测试/模板测试/剔除/混合,帧缓冲区完成等)和AFAICT我正在提交明智的顶点数据。



此时我之后是一个 Pix / GPAD - 就像让工具通过现场和审查状态,我无法从所涉及的绘图调用点(例如,实际顶点/索引缓冲区内容)直接从OpenGL中查询。



PVRTrace 或 OSX乐器似乎捕获足够的状态来调试此类问题。特别是,它们不捕获顶点/索引缓冲区或纹理数据(OSX工具也不捕获着色器源)。



gDEBugger 以前在Stack Overflow上的这个问题的答案现在在5.8版本 - 它是免费的,这是很好的,但不再支持OpenGL ES 2(在Windows下,没有ES2-renderable配置可通过EGL使用;在OSX下,没有办法将调试器附加到在模拟器或真实设备上运行的应用程序) - 这不是很好。



我是否缺少一些明显的东西?我有什么选择?他们如何调试他们的场景?

解决方案

可以在版本4.2,c.f.
https://developer.apple.com/library/ios/documentation/DeveloperTools/Conceptual/WhatsNewXcode/Articles/xcode_4_2.html#//apple_ref/doc/uid/00200-SW5


So, I have an OpenGL ES 2.0 app. It compiles and runs in the iPhone/iPad simulators, on a real iPhone/iPad, and under Windows using Imgtec's emulator libraries (i.e. PVRVframe).

In said app, I have one particular draw call that results in no pixels written to the target, even though all the state I can query looks sensible (viewport, depth test/stencil test/cull/blend off, framebuffer complete etc), and AFAICT I am submitting sensible vertex data.

What I'm after at this point is a Pix / GPAD - like tool that will let me step through the scene and review state I cannot directly query from OpenGL at the point of the draw call in question (e.g. actual vertex/index buffer content).

Neither PVRTrace nor the OSX instruments appear to capture enough state for debugging this kind of problem. In particular, they do not capture vertex/index buffer or texture data (OSX instruments doesn't capture shader source either).

gDEBugger, previously the answer to this sort of question on Stack Overflow, is now at version 5.8 - it's gone free, which is nice, but no longer supports OpenGL ES 2 (under Windows, no ES2-renderable config is available through EGL; under OSX, there is no way to attach the debugger to an app running either in the simulator or on the real device) - which is not as nice.

Am I missing something obvious? What are my options? How do others debug their scenes?

解决方案

It's possible in Xcode since version 4.2, c.f. https://developer.apple.com/library/ios/documentation/DeveloperTools/Conceptual/WhatsNewXcode/Articles/xcode_4_2.html#//apple_ref/doc/uid/00200-SW5

这篇关于OpenGL ES 2.0调试的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆