I just got stuck with texturing my cubes - i searched web and realized that the only way to give my cube 6 different textures (With glDrawElements) is to create about a 24 indices. It is still faster than just glDrawArrays, but it seems quite illogically and horribly slow. I understand that the purpose of glDrawElements is to deal with complex models where very few indices share different texture coords. But, i am still pretty confused, because glDrawElements gave me perfomance boost (Without any effects, just shader coloring) from about 50-67ms with 10,000 cubes (glDrawArrays), to 25-33ms with 100,000 cubes.
My question is: i just have to accept it, or there is still some way to come over this?