When deciding if a clear color is suitable for fast clear,
take into account if a color channel is active in the
buffer format.

---
 src/mesa/drivers/dri/i965/brw_blorp_clear.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/brw_blorp_clear.cpp 
b/src/mesa/drivers/dri/i965/brw_blorp_clear.cpp
index fd18b45..d16da97 100644
--- a/src/mesa/drivers/dri/i965/brw_blorp_clear.cpp
+++ b/src/mesa/drivers/dri/i965/brw_blorp_clear.cpp
@@ -153,7 +153,8 @@ is_color_fast_clear_compatible(struct brw_context *brw,
       return false;
 
    for (int i = 0; i < 4; i++) {
-      if (color->f[i] != 0.0 && color->f[i] != 1.0) {
+      if (color->f[i] != 0.0 && color->f[i] != 1.0 &&
+          _mesa_format_has_color_component(format, i)) {
          perf_debug("Clear color unsupported by fast color clear.  "
                     "Falling back to slow clear.\n");
          return false;
-- 
1.8.1.2

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to