I can't find a direct answer to this anywhere...so hopefully I can get one here...
I've implemented a relatively simple transform feedback shader that reads elements from one VBO, and writes them to another. Then I do a glGetBufferSubData() to read results back to client memory.
Now, I don't seem to have any trouble just executing my transform feedback draw, then reading back the VBO without an explicit glFinish in between, but I'm worried that I'm just getting lucky timing-wise. I dont want to run into issues with reading partially populated feedback buffers, etc.
Does anyone know for certain if I should require a glFinish between the transform feedback draw call and a glGetBufferSubData() to read the output of the transform back to client mem?