Less special cases for non-rotated and non-flipped particles,
but since these are rare and the rest of the quad rendering code
has already gotten improvements there's not really any reason to keep
the specialized modes around.
The gains in GL calls were negligible and the new quad render code avoids
glVertex3f() entirely, which is a much better gain imho.
Apparently there was an interpolation scheme in place to spawn
quickly-spawning (ie more than 1 per frame) particles along a line
interpolated between the previous and current position,
but the math was incorrect and it always ended up spawning all
particles on the same spot.
Don't allocate interpolation data for RandomRotationRange when not needed
Hope this commit doesn't break some visuals; i'm not 100% sure.
Some particle files may rely on this behavior to look as intended.
This untangles some of the gigantic kitchen sink headers
in an attempt to split things into smaller files.
Also don't include gl.h, glext.h, windows.h,
and other such nonsense *everywhere*.
Lots of cleanups on the way too. More dead/unused code removal.
Remove incrFlag(), decrFlag() Lua functions.
GL_CULL_FACE is effectively always disabled, except for quad strip
rendering, and keeping GL_CULL_FACE disabled there does not seem
to cause any visual artifacts.
Instead, it enhances skeletal animation possibilities
(e.g. flipping bone strips over without it disappearing)