driconf: add force_integer_tex_nearest option

And enable it for "GRID Autosport" and "DIRT: Showdown" games.

CC: 20.1 <mesa-stable@lists.freedesktop.org>
Closes: #1258Reviewed-by: Timothy Arceri's avatarTimothy Arceri <tarceri@itsqueeze.com>
Reviewed-by: default avatarMarek Olšák <marek.olsak@amd.com>
Part-of: <!4647>
parent 12fb7d70
Pipeline #142042 passed with stages
in 29 minutes and 19 seconds
......@@ -42,4 +42,5 @@ DRI_CONF_SECTION_MISCELLANEOUS
DRI_CONF_VS_POSITION_ALWAYS_INVARIANT("false")
DRI_CONF_ALLOW_RGB10_CONFIGS("true")
DRI_CONF_ALLOW_FP16_CONFIGS("false")
DRI_CONF_FORCE_INTEGER_TEX_NEAREST("false")
DRI_CONF_SECTION_END
......@@ -235,6 +235,7 @@ struct st_config_options
bool allow_glsl_cross_stage_interpolation_mismatch;
bool allow_glsl_layout_qualifier_on_function_parameters;
bool allow_draw_out_of_order;
bool force_integer_tex_nearest;
char *force_gl_vendor;
unsigned char config_options_sha1[20];
};
......
......@@ -84,6 +84,8 @@ dri_fill_st_options(struct dri_screen *screen)
options->allow_higher_compat_version =
driQueryOptionb(optionCache, "allow_higher_compat_version");
options->glsl_zero_init = driQueryOptionb(optionCache, "glsl_zero_init");
options->force_integer_tex_nearest =
driQueryOptionb(optionCache, "force_integer_tex_nearest");
options->vs_position_always_invariant =
driQueryOptionb(optionCache, "vs_position_always_invariant");
options->force_glsl_abs_sqrt =
......
......@@ -1205,6 +1205,8 @@ void st_init_extensions(struct pipe_screen *screen,
consts->GLSLZeroInit = options->glsl_zero_init;
consts->ForceIntegerTexNearest = options->force_integer_tex_nearest;
consts->VendorOverride = options->force_gl_vendor;
consts->UniformBooleanTrue = consts->NativeIntegers ? ~0U : fui(1.0f);
......
......@@ -268,6 +268,16 @@ TODO: document the other workarounds.
<option name="glsl_zero_init" value="true" />
</application>
<application name="GRID Autosport" executable="GridAutosport">
<!-- https://gitlab.freedesktop.org/mesa/mesa/issues/1258 -->
<option name="force_integer_tex_nearest" value="true" />
</application>
<application name="DIRT: Showdown" executable="dirt.i386">
<!-- https://gitlab.freedesktop.org/mesa/mesa/issues/1258 -->
<option name="force_integer_tex_nearest" value="true" />
</application>
<!-- The GL thread whitelist is below, workarounds are above.
Keep it that way. -->
......
......@@ -309,6 +309,11 @@ DRI_CONF_OPT_BEGIN_B(allow_fp16_configs, def) \
DRI_CONF_DESC(en,gettext("Allow exposure of visuals and fbconfigs with fp16 formats")) \
DRI_CONF_OPT_END
#define DRI_CONF_FORCE_INTEGER_TEX_NEAREST(def) \
DRI_CONF_OPT_BEGIN_B(force_integer_tex_nearest, def) \
DRI_CONF_DESC(en,gettext("Force integer textures to use nearest filtering")) \
DRI_CONF_OPT_END
/**
* \brief Initialization configuration options
*/
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment