Posts: 91 from 2020/12/24
Do you mean Disabling VBO rendering due to incompatible parameters? If so, that happens if the array format is not GL_FLOAT, or if a misaligned offset/stride has been given. It's only disabled for that specific array, and only for as long as it has incompatible data assigned to it.
It explains game still works after that. Could be that misaligment screws all what is going after that. Who knows.Quote:
Have you confirmed that the second long lock-ups are due to VBOs? Or is it just a hunch?
Yep. At the time buffers are "enlarged" I had output telling that: It's is done from time to time where is needed but newer allocations increase the time spent doing it.
Check out inside idVertexCache::Alloc function on github.https://github.com/Cowcat5150/dhewm3/blob/master/neo/renderer/VertexCache.cpp
The OpenGL VBO example you tested is the one. Weird: In my Linux box works. Whatever.