swrast: add RGTC support

This commit is contained in:
Dave Airlie
2011-02-24 14:27:18 +10:00
parent 8d47c91985
commit 903726d285
2 changed files with 20 additions and 0 deletions

View File

@@ -428,6 +428,7 @@ _mesa_enable_sw_extensions(struct gl_context *ctx)
ctx->Extensions.ARB_texture_mirrored_repeat = GL_TRUE;
ctx->Extensions.ARB_texture_non_power_of_two = GL_TRUE;
ctx->Extensions.ARB_texture_rg = GL_TRUE;
ctx->Extensions.ARB_texture_compression_rgtc = GL_TRUE;
ctx->Extensions.ARB_vertex_array_object = GL_TRUE;
#if FEATURE_ARB_vertex_program
ctx->Extensions.ARB_vertex_program = GL_TRUE;

View File

@@ -602,6 +602,25 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat,
}
}
if (ctx->Extensions.ARB_texture_compression_rgtc) {
switch (internalFormat) {
case GL_COMPRESSED_RED_RGTC1:
RETURN_IF_SUPPORTED(MESA_FORMAT_RED_RGTC1);
break;
case GL_COMPRESSED_SIGNED_RED_RGTC1:
RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RED_RGTC1);
break;
case GL_COMPRESSED_RG_RGTC2:
RETURN_IF_SUPPORTED(MESA_FORMAT_RG_RGTC2);
break;
case GL_COMPRESSED_SIGNED_RG_RGTC2:
RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RG_RGTC2);
break;
default:
; /* fallthrough */
}
}
_mesa_problem(ctx, "unexpected format in _mesa_choose_tex_format()");
return MESA_FORMAT_NONE;
}