https://bugs.winehq.org/show_bug.cgi?id=39057
--- Comment #50 from swswine@gmail.com --- (In reply to gamiljydcome from comment #49)
So is there anyway change glsl code to make "uniform ffp_modelview_matrix[256]" could communicate with vao/vbo or it's not possible?
It is clearly not possible. "V" in VAO/VBO stands for Vertex. OpenGL < 3.1 can use buffers for per vertex data and not for uniforms (which stand for the values used by shaders which are common for all vertexes). The meaning of ARB_UNIFORM_BUFFER_OBJECT extension is to allow buffers to be used for uniforms. No such extension, no buffers for uniforms: just plain uniforms with accompanying limits. Those limits are not as bad as 256 though, even for your rather old card it is 4096 as we found out.