Uma notinha ao renderizar objetos usando shaders
void renderFunction(){ glClear( GL_COLOR_BUFFER_BIT ); glDrawArrays(GL_LINE_LOOP, 0, 4); glfwSwapBuffers(); }
Não importa quantos pontos você define lá na funçãozinha de CreateVBO; ele só vai renderizar os arrays que você definiu de acordo com essa função.
O primeiro argumento se refere a que tipo de geometria você vai desenhar, que podem ser:
GL_POINTS,
GL_LINE_STRIP,
GL_LINE_LOOP,
GL_LINES,
GL_LINE_STRIP_ADJACENCY,
GL_LINES_ADJACENCY,
GL_TRIANGLE_STRIP,
GL_TRIANGLE_FAN,
GL_TRIANGLES,
GL_TRIANGLE_STRIP_ADJACENCY,
GL_TRIANGLES_ADJACENCY
GL_PATCHES
Ainda vou descobrir o que esse GL_PATCHES faz, o resto é bem intuitivo.
O segundo argumento é qual índice do array ele vai começar a pegar as coisas [?????]. Em geral... 0???? Parece tão óbvio que parece errado.
E o terceiro argumento é quantos índices serão gerados a cada loop. São 3 eixos + transformação, então, por enquanto, pra mim só vai 4 ali.
Ainda tenho que estudar direitinho o que este glDrawArray faz. E ver como funciona as transformações.












