Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

Journeyman III

Transform Feedback Objects and AMD Radeon HD 7900 series

I seem to be having problems with Transform Feedback Objects work with an AMD Radeon HD 7900 series GPU. Basically I'm using the OpenGL Super Bible Chapter 7 example on spring mass systems and transform feedback. In fact, I'm running the source code directly from the website here. The sample by itself works perfectly. I wanted to try and use TFO's  and so instead of using the calls to glBindBufferBase in the render function, I created two TFO objects in the startup function and just bind the opposite TFO to VAO in the render function (where the original glBindBufferBase calls were). The problem that I'm seeing is that, if all I change in the sample is create the TFOs and replace the bind inside the render, the buffers don't seem to update anymore. However, 1) if I change the number of iterations per frame to an odd number, 2) if I query NUM_PRIMITIVES_WRITTEN and immediately get the result of the query after glEndTransformFeedback, or 3) if I call glFlush after glEndTransformFeedback, then the sample works as I expect it to, storing the transformed vertices to the correctly bound buffer of the TFO. I've tried this exact code on an NVidia card, on a Mac Pro with AMD Fire Pro cards and multiple Macbook Pro's and all work as expected without any need for the above 3 changes to the render function. Any help would be very much appreciated!