summaryrefslogtreecommitdiff
path: root/src/mbgl/gl/segment.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mbgl/gl/segment.hpp')
-rw-r--r--src/mbgl/gl/segment.hpp15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/mbgl/gl/segment.hpp b/src/mbgl/gl/segment.hpp
index bb9f2f1ee8..7ce90e53a6 100644
--- a/src/mbgl/gl/segment.hpp
+++ b/src/mbgl/gl/segment.hpp
@@ -37,12 +37,17 @@ public:
context.vertexBuffer.setDirty();
}
- context.vertexArrayObject = *vao;
-
- if (indexBuffer != indexBuffer_) {
- indexBuffer = indexBuffer_;
- context.elementBuffer.setDirty();
+ if (*vao) {
+ context.vertexArrayObject = *vao;
+ if (indexBuffer != indexBuffer_) {
+ indexBuffer = indexBuffer_;
+ context.elementBuffer.setDirty();
+ context.elementBuffer = indexBuffer_;
+ }
+ } else {
+ // No VAO support. Force attributes to be rebound.
context.elementBuffer = indexBuffer_;
+ variableBindings = {};
}
Attributes::bind(context,