Hi, thank you for your answer,
aren't indices made for that purpose?
byte[] indices = {
0, 1, 2,
2, 3, 0
};
like first triangle = left-top, left-bottom, right-bottom and second triangle = right-bottom, right-top, left-top, appearing as a rectangle?
Therefore, when i don't render colors, the two triangles with vertices used twice render correctly (white but at the correct position), so i'm pretty sure my positions and indices are correct.
The most weird of all is that when i buffer color data into vertice vbo, and buffer vertice data into color vbo, this renders correctly, position and colors (without changind anything in my float[].