On Jan 12, 2004, at 12:48 PM, ben@ekran.org wrote:
I still don't understand pix_texture "mode 0" though, since I also can't get live video to texture on OSX without it. (geforce cards perhaps?)
"mode 0" is power-of-two texturing where the texcoords are in the range 0..1. "mode 1" is for rectangle textures with texcoords from 0..height and 0..width. that's why using 'mode 1' results in the 'One Big Pixel Syndrome'. only a few objects accept the rectangle coords like square, rectangle and cube, and because pix_texture doesn't know which Geos come after it, there is no way to automagically set this flag. a name change might clarify what the flag does. 'texture type ?' 'texture mode ?' ????
the only way to fix this is to rewrite all of the glu based objects like sphere and cylinder to accept whatever coordinate range defined by pix_texture and not assume that it will always be 0..1. i plan to do this in the near term, and will roll it into the vertex array stuff as well. a nice thing about using arbitrary texcoord ranges is that the entire surface is covered by _any_ size texture and there are no more black gaps caused by subtexturing.
cgc
Thanks for the compliment.
B.