Philipp Klaus Krause wrote: > In _mesa_compressed_texture_size(), texcompress.c there's lots of code > similar to the following: > > case MESA_FORMAT_RGBA_DXT1: > /* round up width, height to next multiple of 4 */ > width = (width + 3) & ~3; > height = (height + 3) & ~3; > /* 8 bytes per 4x4 tile of RGB[A] texels */ > size = width * height / 2; > /* Textures smaller than 4x4 will effectively be made into 4x4 and > * take 8 bytes. > */ > if (size < 8) > size = 8; > return size; > > What's the purpose of the if (size < 8) size = 8;? It seems redundant to me.
IIRC, all DTX blocks are 4x4 texels in size and each such block is represented by 8 bytes. Images smaller than 4x4 pixels are still stored in 8-byte 4x4 blocks so we need to allocate that minimum amount of memory. -Brian ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mesa3d-dev