Hello Everyone,
I'm writing a game using OpenGL in which you play as a tank that can shoot shells. The shells are drawn via instanced rendering, and the instanced vertex array is simply a tightly-packed buffer of Vector3<f32> that gets updated every frame with a call to glBufferSubData().
The strange thing is that while my game's actual output is wrong, RenderDoc's frame capture shows me the output I would expect. The following screenshots were taken right after firing a couple of shells (sorry if they're a bit hard to see).
As you can see, the game output is showing all of the shell's at their origin, as if the instanced vertex array's contents were all 0.0 . RenderDoc's output is actually correct, showing each tank shell at its proper position.
So like, what the hell. How do I even begin to understand what's going on here?I'm not even sure how those images could ever be different.