使用顶点属性(调用完glEnableVertexAttribArray函数)之后一定要记得释放(在glDraw*命令后要调用glDisableVertexAttribArray释放对应的属性),否则的话绘制别的顶点时,如果后面绘制的数据量很大,会出现前后数据的内存交叠导致访问越界而崩溃。
这有可能是opengl内部机制,猜测是前面顶点和后续顶点是在GPU的同一个位置,如果前面顶点占据的缓存如果不disable,后面顶点还是在相同位置进行访问,当后面顶点数远大于前面顶点数时,相同位置没有开辟足够的缓存,导致越界。