Mesa (10.2): meta/blit: Use gl_FragColor also in the msaa blit shader
Ian Romanick
idr at kemper.freedesktop.org
Thu May 29 23:02:05 UTC 2014
Module: Mesa
Branch: 10.2
Commit: e8e48889e6fd10c64ce8319c2c765e66c446294b
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e8e48889e6fd10c64ce8319c2c765e66c446294b
Author: Topi Pohjolainen <topi.pohjolainen at intel.com>
Date: Tue May 27 15:39:06 2014 +0300
meta/blit: Use gl_FragColor also in the msaa blit shader
Fixes framebuffer_blit_functionality_multisampled_to_singlesampled_blit
es3 cts test on bdw. Also fixes this on ivb when ivb is forced to use
the meta path.
No piglit regressions on IVB.
Further input from Ken:
"Unfortunately, this doesn't fix MRT for integer data.
In the single-sampled case, since we're directly copying data, we were
read/copy/write data as "float" values, which actually contained the
integer bits. Here, we can't do that since we need to process the
actual integer data.
I do wonder if we could use intBitsToFloat/uintBitsToFloat to stuff the
integer bits in the float gl_FragColor output. Just a crazy idea.
In the long term (post 10.2), I think we should draft an extension that
allows you to do "layout(location = all)" on user-defined fragment
shader outputs. (Or some similar syntax.)"
Signed-off-by: Topi Pohjolainen <topi.pohjolainen at intel.com>
Cc: "10.2" <mesa-stable at lists.freedesktop.org>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>
(cherry picked from commit a6022e5405a11ef24e3870ca86ffbbb52929ad4f)
---
src/mesa/drivers/common/meta_blit.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/mesa/drivers/common/meta_blit.c b/src/mesa/drivers/common/meta_blit.c
index a352a49..7f0c384 100644
--- a/src/mesa/drivers/common/meta_blit.c
+++ b/src/mesa/drivers/common/meta_blit.c
@@ -273,7 +273,7 @@ setup_glsl_msaa_blit_shader(struct gl_context *ctx,
samples);
} else {
ralloc_asprintf_append(&sample_resolve,
- " out_color = sample_%d_0 / %f;\n",
+ " gl_FragColor = sample_%d_0 / %f;\n",
samples, (float)samples);
}
}
More information about the mesa-commit
mailing list