diff options
-rw-r--r-- | src/compiler/glsl/builtin_variables.cpp | 9 | ||||
-rw-r--r-- | src/compiler/glsl/glsl_parser_extras.h | 2 |
2 files changed, 8 insertions, 3 deletions
diff --git a/src/compiler/glsl/builtin_variables.cpp b/src/compiler/glsl/builtin_variables.cpp index b66ad00d7ad..36a8667e2af 100644 --- a/src/compiler/glsl/builtin_variables.cpp +++ b/src/compiler/glsl/builtin_variables.cpp @@ -876,7 +876,8 @@ builtin_variable_generator::generate_constants() } if (state->is_version(410, 0) || - state->ARB_viewport_array_enable) + state->ARB_viewport_array_enable || + state->OES_viewport_array_enable) add_const("gl_MaxViewports", state->Const.MaxViewports); if (state->has_tessellation_shader()) { @@ -1096,7 +1097,8 @@ builtin_variable_generator::generate_gs_special_vars() var = add_output(VARYING_SLOT_LAYER, int_t, "gl_Layer"); var->data.interpolation = INTERP_MODE_FLAT; - if (state->is_version(410, 0) || state->ARB_viewport_array_enable) { + if (state->is_version(410, 0) || state->ARB_viewport_array_enable || + state->OES_viewport_array_enable) { var = add_output(VARYING_SLOT_VIEWPORT, int_t, "gl_ViewportIndex"); var->data.interpolation = INTERP_MODE_FLAT; } @@ -1226,7 +1228,8 @@ builtin_variable_generator::generate_fs_special_vars() } if (state->is_version(430, 0) || - state->ARB_fragment_layer_viewport_enable) { + state->ARB_fragment_layer_viewport_enable || + state->OES_viewport_array_enable) { var = add_input(VARYING_SLOT_VIEWPORT, int_t, "gl_ViewportIndex"); var->data.interpolation = INTERP_MODE_FLAT; } diff --git a/src/compiler/glsl/glsl_parser_extras.h b/src/compiler/glsl/glsl_parser_extras.h index e19f6ade59a..f4050e37de1 100644 --- a/src/compiler/glsl/glsl_parser_extras.h +++ b/src/compiler/glsl/glsl_parser_extras.h @@ -698,6 +698,8 @@ struct _mesa_glsl_parse_state { bool OES_texture_cube_map_array_warn; bool OES_texture_storage_multisample_2d_array_enable; bool OES_texture_storage_multisample_2d_array_warn; + bool OES_viewport_array_enable; + bool OES_viewport_array_warn; /* All other extensions go here, sorted alphabetically. */ |