From d13d06424e5a8f0cf1ce68c939397e55bd5cdca7 Mon Sep 17 00:00:00 2001 From: Zack Middleton Date: Tue, 16 Apr 2019 11:46:18 -0500 Subject: [PATCH] OpenGL2: Disable r_cubeMapping if not OpenGL 3.0+ r_cubeMapping requires textureCubeLod() which is only in OpenGL 3.0 (GLSL 1.30) and later. It's not in OpenGL ES 3.0 / GLSL ES 3.00. This needs to be checked before R_InitImages() so can't just check in GLSL_InitGPUShaders(). --- code/renderergl2/tr_init.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/code/renderergl2/tr_init.c b/code/renderergl2/tr_init.c index 06b78173..bd34cc61 100644 --- a/code/renderergl2/tr_init.c +++ b/code/renderergl2/tr_init.c @@ -285,6 +285,12 @@ static void InitOpenGL( void ) } } + // check for GLSL function textureCubeLod() + if ( r_cubeMapping->integer && !QGL_VERSION_ATLEAST( 3, 0 ) ) { + ri.Printf( PRINT_WARNING, "WARNING: Disabled r_cubeMapping because it requires OpenGL 3.0\n" ); + ri.Cvar_Set( "r_cubeMapping", "0" ); + } + // set default state GL_SetDefaultState(); }