ioquake/ioq3 — pull request #9 by zippers (2013-07-19 02:33:17+00:00)
Title: GLSL animation glitch fix.

I was trying to render animated models at fixed frames when I encountered a strange bug. The models would undesirably change frames depending upon how many of them were on screen. I noticed this bug only occurred while using the opengl2 renderer.

Here is a video of the bug: http://www.youtube.com/watch?v=pJXsXtCoh2o

You'll notice as models get culled the visible ones change frames. This is because the renderer does not update vertex attributes if it believes no animation occurs. It determines an animation occurred by checking the last frame with the current frame. This is flawed in the sense that if the models previous and current frame are the same, it will leave things as is.

Here is a video after the fix: http://www.youtube.com/watch?v=aiIhFt_LSAE

This glitch only occurs with the opengl2 renderer. The opengl1 renderer works correctly.