cogl-material: Layers are not equal if the filters aren't equal
authorNeil Roberts <neil@linux.intel.com>
Wed, 10 Feb 2010 12:41:09 +0000 (12:41 +0000)
committerNeil Roberts <neil@linux.intel.com>
Wed, 10 Feb 2010 12:41:09 +0000 (12:41 +0000)
A material layer can not be considered equal if it is using different
texture filtering modes. This was causing problems where rectangles
with different filters would end up batched together and then rendered
with the wrong filter mode.

clutter/cogl/cogl/cogl-material.c

index 8f12fc8..60e037b 100644 (file)
@@ -1750,6 +1750,11 @@ _cogl_material_layer_equal (CoglMaterialLayer *material0_layer,
     return FALSE;
 #endif
 
+  if (material0_layer->mag_filter != material1_layer->mag_filter)
+    return FALSE;
+  if (material0_layer->min_filter != material1_layer->min_filter)
+    return FALSE;
+
   return TRUE;
 }