Skip to content

Commit a247f5d

Browse files
committed
Fix material system GLSL compile error on Intel
Not that it's a good idea to use on my Intel iGPU - I get like 30 FPS. Fixes #1260.
1 parent 4d3bf7b commit a247f5d

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

src/engine/sys/sdl_glimp.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,8 @@ static Cvar::Cvar<bool> r_arb_map_buffer_range( "r_arb_map_buffer_range",
8888
"Use GL_ARB_map_buffer_range if available", Cvar::NONE, true );
8989
static Cvar::Cvar<bool> r_arb_multi_draw_indirect( "r_arb_multi_draw_indirect",
9090
"Use GL_ARB_multi_draw_indirect if available", Cvar::NONE, true );
91+
static Cvar::Cvar<bool> r_arb_program_interface_query( "r_arb_program_interface_query",
92+
"Load GL_ARB_program_interface_query if available", Cvar::NONE, true );
9193
static Cvar::Cvar<bool> r_arb_shader_draw_parameters( "r_arb_shader_draw_parameters",
9294
"Use GL_ARB_shader_draw_parameters if available", Cvar::NONE, true );
9395
static Cvar::Cvar<bool> r_arb_shader_atomic_counters( "r_arb_shader_atomic_counters",
@@ -2509,6 +2511,12 @@ static void GLimp_InitExtensions()
25092511
// made required in OpenGL 4.6
25102512
glConfig.shaderDrawParametersAvailable = LOAD_EXTENSION_WITH_TEST( ExtFlag_NONE, ARB_shader_draw_parameters, shaderDrawParametersEnabled );
25112513

2514+
// made required in OpenGL 4.3
2515+
// We don't use it but the ARB_shader_storage_buffer_object spec says "OpenGL 4.3 or ARB_program_interface_query is required" and
2516+
// Intel's driver interprets that as meaning we must explicitly load the extension for SSBOs to work?
2517+
// But don't stop ourselves from using SSBOs if this fails.
2518+
LOAD_EXTENSION_WITH_TEST( ExtFlag_NONE, ARB_program_interface_query, r_arb_program_interface_query.Get() );
2519+
25122520
// made required in OpenGL 4.3
25132521
glConfig.SSBOAvailable = LOAD_EXTENSION_WITH_TEST( ExtFlag_NONE, ARB_shader_storage_buffer_object, r_arb_shader_storage_buffer_object.Get() );
25142522

0 commit comments

Comments
 (0)