Access violation with glDrawArrays

Yes, since I’m limited to OGL3 I haven’t looked into SSBOs very much.

Each skeleton animated instance needs a skeleton. Our player model has around 70 bones. Each of these need to be available in the vertex shader for random access (up to 4 per vertex), so I dump each bone into a TBO as a 4x3 matrix and can easily get whatever bone I need that way.

aah, yes of course. GL limitations.

they’re pretty much the same. was just wondering what your experience on performance might be.

Performance is excellent. I used to simply draw each instance by itself and upload the skeleton data into a uniform matrix array. The random access of the texture buffer is at least as fast as uniform array access it seems, and in addition I can randomly access any amount of data in the shader which allows for instancing and more bones per instance. The maximum number of uniform variables quickly becomes a limit in my case, but with texture buffers I’m only limited by the precision of my bone ID vertex attribute, which is currently 1 byte. 256 bones per model ought to be enough for anyone ™.

8 bytes or 8 bits?

Fixed…