Module: Mesa
Branch: master
Commit: b3569e74451e3b913a2f3b327db430edbcd8f42e
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=b3569e74451e3b913a2f3b327db430edbcd8f42e

Author: Jason Ekstrand <[email protected]>
Date:   Tue Jun  6 20:58:31 2017 -0700

i965: Disable the interleaved vertex optimization when instancing

Instance divisor is a property of the vertex buffer and not the vertex
element so if we ever see anything other than 0, bail.

Cc: "17.1" <[email protected]>
Reviewed-by: Samuel Iglesias Gonsálvez <[email protected]>

---

 src/mesa/drivers/dri/i965/brw_draw_upload.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_draw_upload.c 
b/src/mesa/drivers/dri/i965/brw_draw_upload.c
index 2ec9a013cd..cf66770916 100644
--- a/src/mesa/drivers/dri/i965/brw_draw_upload.c
+++ b/src/mesa/drivers/dri/i965/brw_draw_upload.c
@@ -584,15 +584,16 @@ brw_prepare_vertices(struct brw_context *brw)
            ptr = glarray->Ptr;
         }
         else if (interleaved != glarray->StrideB ||
+                  glarray->InstanceDivisor != 0 ||
                   glarray->Ptr < ptr ||
                   (uintptr_t)(glarray->Ptr - ptr) + glarray->_ElementSize > 
interleaved)
         {
             /* If our stride is different from the first attribute's stride,
-             * or if the first attribute's stride didn't cover our element,
-             * disable the interleaved upload optimization.  The second case
-             * can most commonly occur in cases where there is a single vertex
-             * and, for example, the data is stored on the application's
-             * stack.
+             * or if we are using an instance divisor or if the first
+             * attribute's stride didn't cover our element, disable the
+             * interleaved upload optimization.  The second case can most
+             * commonly occur in cases where there is a single vertex and, for
+             * example, the data is stored on the application's stack.
              *
              * NOTE: This will also disable the optimization in cases where
              * the data is in a different order than the array indices.

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to