mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-02 15:20:26 +01:00
radeonsi: fix incorrect PS shader key with sample shading
discovered when writing a sample shading test Fixes:65398d571b- radeonsi: ignore pipe_rasterizer_state::force_persample_interp Reviewed-by: Qiang Yu <yuq825@gmail.com> Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> (cherry picked from commitcf333ae9a2) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39462>
This commit is contained in:
parent
c1b4d9740c
commit
31424748ed
2 changed files with 3 additions and 6 deletions
|
|
@ -314,7 +314,7 @@
|
|||
"description": "radeonsi: fix incorrect PS shader key with sample shading",
|
||||
"nominated": true,
|
||||
"nomination_type": 2,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"main_sha": null,
|
||||
"because_sha": "65398d571be888bfb6dc1b1db674279e33b30c32",
|
||||
"notes": null
|
||||
|
|
|
|||
|
|
@ -2763,8 +2763,8 @@ void si_ps_key_update_framebuffer_rasterizer_sample_shading(struct si_context *s
|
|||
bool uses_persp_sample = sel->info.uses_persp_sample ||
|
||||
(!rs->flatshade && sel->info.uses_persp_sample_color);
|
||||
|
||||
if (!sel->info.base.fs.uses_sample_shading && rs->multisample_enable &&
|
||||
sctx->framebuffer.nr_samples > 1 && sctx->ps_iter_samples > 1) {
|
||||
if (rs->multisample_enable && sctx->framebuffer.nr_samples > 1 &&
|
||||
(sel->info.base.fs.uses_sample_shading || sctx->ps_iter_samples > 1)) {
|
||||
key->ps.part.prolog.force_persp_sample_interp =
|
||||
uses_persp_center || uses_persp_centroid;
|
||||
|
||||
|
|
@ -2783,9 +2783,6 @@ void si_ps_key_update_framebuffer_rasterizer_sample_shading(struct si_context *s
|
|||
key->ps.mono.force_mono = sel->info.uses_interp_at_offset || sel->info.uses_interp_at_sample;
|
||||
key->ps.mono.interpolate_at_sample_force_center = 0;
|
||||
} else if (rs->multisample_enable && sctx->framebuffer.nr_samples > 1) {
|
||||
/* Note that sample shading is possible here. If it's enabled, all barycentrics are
|
||||
* already set to "sample" except at_offset/at_sample.
|
||||
*/
|
||||
key->ps.part.prolog.force_persp_sample_interp = 0;
|
||||
key->ps.part.prolog.force_linear_sample_interp = 0;
|
||||
key->ps.part.prolog.force_persp_center_interp = 0;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue