radeonsi: set TRUNC_COORD=0 for Total War: WARHAMMER to fix it
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3233 Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6810>
This commit is contained in:
@@ -9,5 +9,6 @@ OPT_BOOL(vs_fetch_always_opencode, false,
|
||||
OPT_BOOL(prim_restart_tri_strips_only, false, "Only enable primitive restart for triangle strips")
|
||||
OPT_BOOL(no_infinite_interp, false, "Kill PS with infinite interp coeff")
|
||||
OPT_BOOL(clamp_div_by_zero, false, "Clamp div by zero (x / 0 becomes FLT_MAX instead of NaN)")
|
||||
OPT_BOOL(no_trunc_coord, false, "Always set TRUNC_COORD=0")
|
||||
|
||||
#undef OPT_BOOL
|
||||
|
@@ -4400,7 +4400,8 @@ static void *si_create_sampler_state(struct pipe_context *ctx,
|
||||
struct si_sampler_state *rstate = CALLOC_STRUCT(si_sampler_state);
|
||||
unsigned max_aniso = sscreen->force_aniso >= 0 ? sscreen->force_aniso : state->max_anisotropy;
|
||||
unsigned max_aniso_ratio = si_tex_aniso_filter(max_aniso);
|
||||
bool trunc_coord = state->min_img_filter == PIPE_TEX_FILTER_NEAREST &&
|
||||
bool trunc_coord = !sscreen->options.no_trunc_coord &&
|
||||
state->min_img_filter == PIPE_TEX_FILTER_NEAREST &&
|
||||
state->mag_img_filter == PIPE_TEX_FILTER_NEAREST &&
|
||||
state->compare_mode == PIPE_TEX_COMPARE_NONE;
|
||||
union pipe_color_union clamped_border_color;
|
||||
|
@@ -676,6 +676,10 @@ TODO: document the other workarounds.
|
||||
<application name="Road Redemption" executable="RoadRedemption.x86_64">
|
||||
<option name="radeonsi_clamp_div_by_zero" value="true" />
|
||||
</application>
|
||||
<!-- https://gitlab.freedesktop.org/mesa/mesa/-/issues/3233 -->
|
||||
<application name="Total War: WARHAMMER" executable="TotalWarhammer">
|
||||
<option name="radeonsi_no_trunc_coord" value="true" />
|
||||
</application>
|
||||
<application name="Wasteland 2" executable="WL2">
|
||||
<option name="radeonsi_clamp_div_by_zero" value="true" />
|
||||
</application>
|
||||
|
Reference in New Issue
Block a user