From 552953540cbb8065160c6670e8655b8d4279c286 Mon Sep 17 00:00:00 2001 From: icculus Date: Fri, 13 Jun 2008 02:28:51 +0000 Subject: Added GL_EXT_texture_compression_s3tc support. GL_S3_s3tc, which Quake 3 previously supported, is legacy. This new codepath is the common, vendor-neutral extension to get the same results. git-svn-id: svn://svn.icculus.org/quake3/trunk@1387 edf5b092-35ff-0310-97b2-ce42778d08ea --- code/renderer/tr_image.c | 7 ++++++- code/renderer/tr_types.h | 3 ++- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'code/renderer') diff --git a/code/renderer/tr_image.c b/code/renderer/tr_image.c index 737370f..c3828cd 100644 --- a/code/renderer/tr_image.c +++ b/code/renderer/tr_image.c @@ -182,6 +182,7 @@ void R_ImageList_f( void ) { ri.Printf( PRINT_ALL, "RGB8" ); break; case GL_RGB4_S3TC: + case GL_COMPRESSED_RGBA_S3TC_DXT1_EXT: ri.Printf( PRINT_ALL, "S3TC " ); break; case GL_RGBA4: @@ -602,7 +603,11 @@ static void Upload32( unsigned *data, } else { - if ( glConfig.textureCompression == TC_S3TC ) + if ( glConfig.textureCompression == TC_S3TC_ARB ) + { + internalFormat = GL_COMPRESSED_RGBA_S3TC_DXT1_EXT; + } + else if ( glConfig.textureCompression == TC_S3TC ) { internalFormat = GL_RGB4_S3TC; } diff --git a/code/renderer/tr_types.h b/code/renderer/tr_types.h index 2a10342..50f9759 100644 --- a/code/renderer/tr_types.h +++ b/code/renderer/tr_types.h @@ -151,7 +151,8 @@ typedef enum { */ typedef enum { TC_NONE, - TC_S3TC + TC_S3TC, // this is for the GL_S3_s3tc extension. + TC_S3TC_ARB // this is for the GL_EXT_texture_compression_s3tc extension. } textureCompression_t; typedef enum { -- cgit v1.2.3