https://bugs.freedesktop.org/show_bug.cgi?id=30002 --- Comment #8 from Marek Olšák <maraeo@xxxxxxxxx> 2010-09-04 14:44:20 PDT --- (In reply to comment #7) > (In reply to comment #1) > > The handling of textures with a 0 width, height, or depth is an odd corner case > > in the spec, so it's not too surprising that it's not handled correctly. > > > > "where ws, hs, and ds are the specified image width, depth, and depth, > > and wt, ht, and dt are the dimensions of the texture image internal to > > the border. If wt, ht, or dt are less than zero, then the error INVALID > > VALUE is generated. > > > > An image with zero width, height, or depth indicates the null texture. > > If the null texture is specified for the level-of-detail specified by > > texture parameter TEXTURE BASE LEVEL (see section 3.8.4), it is as if > > texturing were disabled." > > > > The last bit is the tricky part. You have to create the texture but disable > > texturing on any unit where it is bound. We could use a piglit test for this > > corner case. > > Interesting. Should this be part of Gallium's API as well, or should we handle > it one level up and make these textures illegal in Gallium? Does anybody know > what Dx does? Look at R5xx docs and that's pretty much what D3D9 does. If we had to implement a D3D9 driver, we'd be finished loooong ago. There is a set of samplers and you bind textures to those samplers. This is the low level function to create a texture: http://msdn.microsoft.com/en-us/library/bb174363%28v=VS.85%29.aspx It doesn't seem 0x0 textures are allowed, or meaningful. However if I had a choice, I would use this high level function: http://msdn.microsoft.com/en-us/library/bb172800%28v=VS.85%29.aspx Which explicitly states that if you request a 0x0 texture, you get a texture of size 1x1. Anyway, I was looking into this issue and I am almost sure this is a bug in st/mesa and that the game doesn't actually create a zero-sized texture. IIRC, the mipmap setup is broken. In Tiny and Big, I get this failure: state_tracker/st_texture.c:68:st_texture_create: Assertion `width0 > 0' failed. -- Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel