Problems with vertex-arrays

One more question…

I have some strange crashes, that have to do with vertex-array-sizes, that do not find / understand, but it might have to do with my vertex-arrays. It drives me crazy…

The simplelest example: I have a cube-map which needs (if i’m not totally stupid) 24 vertices if single quads are used as primitives. So in my eyes, the following call should work, when MapSize=6 and DrawType=GL_QUADS.


glDrawArrays        ( DrawType,  0, MapSize  * 4 ); 

Unfortunately it crashes, when MapSize gets smaller then 65 - but not only at the cube-maps…

I’ve another function that morphes two vertex-arrays of the same size. So there are two functions that use transformfeedbmack (each with it’s own vertex-shader) to fill the arrays and a third one that morphes them and renders the result to screen. So i can i.e. simply morph a torus into a sphere, but if my ‘sphere’/‘torus’ has only 4 longs and 16 lats, it crasches (4x16=64 vertices, which is less then the upper mentioned 65), but with 3 longs 22 lats it work (3x22=66 vertices).

Especially in the case of the cube-map this seems to be strange. The array i create has 6 quads X 4 vertices. But it only works if i draw not less then 65 quads X 4 vertices.

Is there any known reason why this might be the case (like i.e. memory-/process-quantisation on nvidia gpus)???

Best,
Frank

UPDATE:

I’ve now defined a minimum-value of 260 for the 3rd parameter of glDrawArrays all over my program, even if the drawn vertex-array has less vertices. No it does not crash anymore.

… but still i’m interested why this is / was the case.

System: i7-7700HQ, Nvidia GTX1060 (6GB), MingW32 (current version), Win10

Thank you,
Frank