I have a very strange problem in my geometry shader and transform feedback buffer. I am creating a simple particle system, and everything works fine, until I test to create more particles and so I change the max_vertices from 40 to 200. Then, the system only create few particles, less than it should, and when I query to the particles generated it seems that the last particles override the first, so particles never progress.
Note, when I set 40 in max_vertices it works fine with about 1200 particles (max, the buffer is 2000), which is expected. Per iteration I create only 10 particles in both case. I not reached the limits, I mean, GL_MAX_GEOMETRY_OUTPUT_VERTICES, GL_MAX_GEOMETRY_OUTPUT_COMPONENTS, or GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS, or the buffer size bound to the tranform feedback. There no error output. This is crazy how it get distorted just for change max_vertices, is like it change the way data is store in transform feedback buffer.
did someone see this before? I card is Radeon 7700
My shader look like this: