array->BufferBindingIndex = bindingIndex;
vao->NewArrays |= vao->_Enabled & array_bit;
- ctx->NewState |= _NEW_ARRAY;
+ if (vao == ctx->Array.VAO)
+ ctx->NewState |= _NEW_ARRAY;
}
}
vao->VertexAttribBufferMask |= binding->_BoundArrays;
vao->NewArrays |= vao->_Enabled & binding->_BoundArrays;
- ctx->NewState |= _NEW_ARRAY;
+ if (vao == ctx->Array.VAO)
+ ctx->NewState |= _NEW_ARRAY;
}
}
if (binding->InstanceDivisor != divisor) {
binding->InstanceDivisor = divisor;
vao->NewArrays |= vao->_Enabled & binding->_BoundArrays;
- ctx->NewState |= _NEW_ARRAY;
+ if (vao == ctx->Array.VAO)
+ ctx->NewState |= _NEW_ARRAY;
}
}
array->_ElementSize = elementSize;
vao->NewArrays |= vao->_Enabled & VERT_BIT(attrib);
- ctx->NewState |= _NEW_ARRAY;
+ if (vao == ctx->Array.VAO)
+ ctx->NewState |= _NEW_ARRAY;
}
/**
const GLbitfield array_bit = VERT_BIT(attrib);
vao->_Enabled |= array_bit;
vao->NewArrays |= array_bit;
- ctx->NewState |= _NEW_ARRAY;
+
+ if (vao == ctx->Array.VAO)
+ ctx->NewState |= _NEW_ARRAY;
/* Update the map mode if needed */
if (array_bit & (VERT_BIT_POS|VERT_BIT_GENERIC0))
const GLbitfield array_bit = VERT_BIT(attrib);
vao->_Enabled &= ~array_bit;
vao->NewArrays |= array_bit;
- ctx->NewState |= _NEW_ARRAY;
+
+ if (vao == ctx->Array.VAO)
+ ctx->NewState |= _NEW_ARRAY;
/* Update the map mode if needed */
if (array_bit & (VERT_BIT_POS|VERT_BIT_GENERIC0))