I'm appealing to people's psychic debugging skills:
I have an OpenGL app that uses shaders and attributes in uploaded VBOs exclusively.
It runs fine on the desktop (Linux with integrated Intel card).
It compiles for and runs on Chrome NaCL, which is OpenGLES 2.0. It does not draw anything, however (Vista, an ATI card).
The glClearColorf()
and glClear()
are working, and by picking a random clear colour I can get a nice flicker going so I know I've got the whole draw and flush cycle going fine in Chrome NaCL.
However, as I said, my program doesn't draw any of its content.
I have liberal glGetError()
checks everywhere, and at first when porting they found lots of stuff such as needing to specify a float precision in shaders and not using full ints for element arrays and such. But now there are no errors reported anywhere.
I have printf debugging so I know my code-path is right and that everything I can think of is asserted.
The NaCL "tumbler" demo does run. Apart from their codebase being massively smaller, I can't spot what they are initializing that I aren't.
Anyone got any ideas what classic thing I've run into?