title: OpenGL ES 2.0 debugging
body: <p>So, I have an <strong>OpenGL ES 2.0</strong> 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. <strong>PVRVframe</strong>).</p>
  
  <p>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. </p>
  
  <p>What I'm after at this point is a <strong>Pix</strong> / <strong>GPAD</strong> - 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).</p>
  
  <p>Neither <strong>PVRTrace</strong> nor the <strong>OSX instruments</strong> 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).</p>
  
  <p><strong>gDEBugger</strong>, 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.</p>
  
  <p>Am I missing something obvious? What are my options? How do others debug their scenes?</p>