silikone wrote:According to the source code, Quake 3 uploads the textures to a format called GL_RGB4_S3TC, but all documentation available online points to GL_COMPRESSED_RGB_S3TC_DXT1_EXT being the standard. I wonder if this has any implications for the image quality...
GL_RGB4_S3TC and GL_COMPRESSED_RGB_S3TC_DXT1_EXT are one and the same. The RGB4 doesn't mean RGB + Alpha. It means it's aligned 4 bytes, so its 32-bit RGB (there is a GL_RGBA4_S3TC enum too for RGBA). Since its 32-bit per pixel, the actual layout of the data that GL needs to know (not the format) is still GL_RGBA, GL_UNSIGNED_BYTE.
silikone wrote:...when texture compression is not disabled (but why wouldn't you)
It does have implications for the image quality, it's a lossy compression at the end of the day. S3TC is a compressed format that can be decompressed on the fly (since unlike png and jpg, which need to be decompressed in their entirety before upload), it is effectivly 'tiled' and so only small regions are required to be decompressed at run time and not the entire image. Faster and more effieicent, unless you have the VRAM and get adaquate FPS anyhows, in which case no point.
Solution: Don't turn it on in the first place.