ctx->Extensions.ARB_texture_env_dot3 = true;
ctx->Extensions.NV_fog_distance = true;
ctx->Extensions.NV_texture_rectangle = true;
+ if (ctx->Mesa_DXTn) {
+ ctx->Extensions.EXT_texture_compression_s3tc = true;
+ ctx->Extensions.S3_s3tc = true;
+ }
/* GL constants. */
ctx->Const.MaxTextureLevels = 12;
case MESA_FORMAT_L8:
return NV10_3D_TEX_FORMAT_FORMAT_L8;
+ case MESA_FORMAT_RGB_DXT1:
+ case MESA_FORMAT_RGBA_DXT1:
+ return NV10_3D_TEX_FORMAT_FORMAT_DXT1;
+
+ case MESA_FORMAT_RGBA_DXT3:
+ return NV10_3D_TEX_FORMAT_FORMAT_DXT3;
+
+ case MESA_FORMAT_RGBA_DXT5:
+ return NV10_3D_TEX_FORMAT_FORMAT_DXT5;
+
default:
assert(0);
}
ctx->Extensions.ARB_texture_env_dot3 = true;
ctx->Extensions.NV_fog_distance = true;
ctx->Extensions.NV_texture_rectangle = true;
+ if (ctx->Mesa_DXTn) {
+ ctx->Extensions.EXT_texture_compression_s3tc = true;
+ ctx->Extensions.S3_s3tc = true;
+ }
/* GL constants. */
ctx->Const.MaxTextureCoordUnits = NV20_TEXTURE_UNITS;
case MESA_FORMAT_L8:
return NV20_3D_TEX_FORMAT_FORMAT_L8;
+ case MESA_FORMAT_RGB_DXT1:
+ case MESA_FORMAT_RGBA_DXT1:
+ return NV20_3D_TEX_FORMAT_FORMAT_DXT1;
+
+ case MESA_FORMAT_RGBA_DXT3:
+ return NV20_3D_TEX_FORMAT_FORMAT_DXT3;
+
+ case MESA_FORMAT_RGBA_DXT5:
+ return NV20_3D_TEX_FORMAT_FORMAT_DXT5;
+
default:
assert(0);
}