On Sun, Apr 11, 2010 at 9:27 AM, Zack Rusin <za...@vmware.com> wrote: > On Saturday 10 April 2010 18:44:27 Luca Barbieri wrote: >> > r300g: hack around issue with doom3 and 0 stride >> > >> > This is most likely a bug in the mesa state tracker, but do the quick >> > hack for now to avoid the divide by 0. >> >> This is not a bug: stride 0 means that the vertex attribute is >> constant for all vertices. > > Right, it's how our vbo code handles cases like > glBegin(primitive); > glColor4f(...); > glVertex(...); > glVertex(...); > glVertex(...); > glEnd(); > >> Thus, the patch is not likely to be correct: you should instead either >> program stride 0 to the hardware if supported, or fetch the vertex >> attribute with the CPU > > Dave, jfyi, i implemented this a long time ago in svga, just search for > zero_stride in there (svga_hw_update_zero_stride in particular), you should be > able to almost simply copy&paste that code.
Wierdly we've never hit this divide by zero with any piglit test or any games except doom3, I know some of our tests use the above code, so I suspect this stride 0 vbo isn't one of the above. I could be wrong of course. Dave. > > z > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev