aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Berry <[email protected]>2012-08-22 08:02:39 -0700
committerPaul Berry <[email protected]>2012-08-24 09:59:27 -0700
commit5133bd6585552a5708b294180fa9a561bf7564a6 (patch)
tree8d069d53873a23c4b00e3bc64e22bc11ec635115
parent4b8b6f385e855ecb6da0b7dea56e70e69d1517b9 (diff)
i965: don't clear resolve map when doing fast depth clears.
Previously, when performing a fast depth clear, we would also clear the miptree's resolve map. This destroyed important information, since the resolve map contains information about needed resolves for all levels and layers of the miptree, whereas a depth clear only applies to a single level/layer combination at a time. As a result, resolves would sometimes fail to occur, leading to incorrect rendering. Fixes rendering artifacts with shadow maps in Unigine Heaven and Unigine Sanctuary. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=50270 Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Chad Versace <[email protected]>
-rw-r--r--src/mesa/drivers/dri/i965/brw_clear.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_clear.c b/src/mesa/drivers/dri/i965/brw_clear.c
index e56a26ae1ec..ce40e52d461 100644
--- a/src/mesa/drivers/dri/i965/brw_clear.c
+++ b/src/mesa/drivers/dri/i965/brw_clear.c
@@ -193,11 +193,9 @@ brw_fast_clear_depth(struct gl_context *ctx)
intel_batchbuffer_emit_mi_flush(intel);
}
- /* Now, the entire HiZ buffer contains data that needs to be resolved to the
- * entire depth buffer (so any previous resolve records should get tossed
- * out).
+ /* Now, the HiZ buffer contains data that needs to be resolved to the depth
+ * buffer.
*/
- intel_resolve_map_clear(&mt->hiz_map);
intel_renderbuffer_set_needs_depth_resolve(depth_irb);
return true;