summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r200/r200_context.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/drivers/dri/r200/r200_context.c')
-rw-r--r--src/mesa/drivers/dri/r200/r200_context.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/r200/r200_context.c b/src/mesa/drivers/dri/r200/r200_context.c
index 25f9d2cb96..bc50f3de68 100644
--- a/src/mesa/drivers/dri/r200/r200_context.c
+++ b/src/mesa/drivers/dri/r200/r200_context.c
@@ -365,6 +365,13 @@ GLboolean r200CreateContext( const __GLcontextModes *glVisual,
12,
GL_FALSE );
+ /* adjust max texture size a bit. Hack, but I really want to use larger textures
+ which will work just fine in 99.999999% of all cases, especially with texture compression... */
+ if (driQueryOptionb( &rmesa->optionCache, "texture_level_hack" ))
+ {
+ if (ctx->Const.MaxTextureLevels < 12) ctx->Const.MaxTextureLevels += 1;
+ }
+
ctx->Const.MaxTextureMaxAnisotropy = 16.0;
/* No wide points.
@@ -415,9 +422,9 @@ GLboolean r200CreateContext( const __GLcontextModes *glVisual,
_math_matrix_set_identity( &rmesa->tmpmat );
driInitExtensions( ctx, card_extensions, GL_TRUE );
- if (rmesa->r200Screen->chipset & R200_CHIPSET_REAL_R200) {
- /* yuv textures only work with r200 chips for unknown reasons, the
- others get the bit ordering right but don't actually do YUV-RGB conversion */
+ if (!rmesa->r200Screen->chipset & R200_CHIPSET_YCBCR_BROKEN) {
+ /* yuv textures don't work with some chips - R200 / rv280 okay so far
+ others get the bit ordering right but don't actually do YUV-RGB conversion */
_mesa_enable_extension( ctx, "GL_MESA_ycbcr_texture" );
}
if (rmesa->glCtx->Mesa_DXTn) {