From 82be4e667fb950e0bb81c6f82a7f2a6216a33e25 Mon Sep 17 00:00:00 2001 From: SmileTheory Date: Fri, 20 Sep 2013 17:20:36 -0700 Subject: [PATCH] OpenGL2: Disable GL_ARB_seamless_cube_map by default, caused huge frame drops on some hardware --- code/renderergl2/tr_extensions.c | 6 ++++-- code/renderergl2/tr_init.c | 2 ++ code/renderergl2/tr_local.h | 1 + 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/code/renderergl2/tr_extensions.c b/code/renderergl2/tr_extensions.c index 41cd9164..5cd5c2a5 100644 --- a/code/renderergl2/tr_extensions.c +++ b/code/renderergl2/tr_extensions.c @@ -701,8 +701,10 @@ void GLimp_InitExtraExtensions() glRefConfig.seamlessCubeMap = qfalse; if( GLimp_HaveExtension( extension ) ) { - glRefConfig.seamlessCubeMap = qtrue; - ri.Printf(PRINT_ALL, result[1], extension); + if (r_arb_seamless_cube_map->integer) + glRefConfig.seamlessCubeMap = qtrue; + + ri.Printf(PRINT_ALL, result[glRefConfig.seamlessCubeMap], extension); } else { diff --git a/code/renderergl2/tr_init.c b/code/renderergl2/tr_init.c index b9e5fb58..b9b90a47 100644 --- a/code/renderergl2/tr_init.c +++ b/code/renderergl2/tr_init.c @@ -100,6 +100,7 @@ cvar_t *r_ext_framebuffer_object; cvar_t *r_ext_texture_float; cvar_t *r_arb_half_float_pixel; cvar_t *r_ext_framebuffer_multisample; +cvar_t *r_arb_seamless_cube_map; cvar_t *r_mergeMultidraws; cvar_t *r_mergeLeafSurfaces; @@ -1133,6 +1134,7 @@ void R_Register( void ) r_ext_texture_float = ri.Cvar_Get( "r_ext_texture_float", "1", CVAR_ARCHIVE | CVAR_LATCH); r_arb_half_float_pixel = ri.Cvar_Get( "r_arb_half_float_pixel", "1", CVAR_ARCHIVE | CVAR_LATCH); r_ext_framebuffer_multisample = ri.Cvar_Get( "r_ext_framebuffer_multisample", "0", CVAR_ARCHIVE | CVAR_LATCH); + r_arb_seamless_cube_map = ri.Cvar_Get( "r_arb_seamless_cube_map", "0", CVAR_ARCHIVE | CVAR_LATCH); r_ext_texture_filter_anisotropic = ri.Cvar_Get( "r_ext_texture_filter_anisotropic", "0", CVAR_ARCHIVE | CVAR_LATCH ); diff --git a/code/renderergl2/tr_local.h b/code/renderergl2/tr_local.h index 838845b4..74d216f2 100644 --- a/code/renderergl2/tr_local.h +++ b/code/renderergl2/tr_local.h @@ -1915,6 +1915,7 @@ extern cvar_t *r_ext_framebuffer_object; extern cvar_t *r_ext_texture_float; extern cvar_t *r_arb_half_float_pixel; extern cvar_t *r_ext_framebuffer_multisample; +extern cvar_t *r_arb_seamless_cube_map; extern cvar_t *r_nobind; // turns off binding to appropriate textures extern cvar_t *r_singleShader; // make most world faces use default shader