我使用本教程底部的代碼使用assimp加載網格。 Mesh Loading將網格加載到opengl的vbo中
所以我加載網格,然後將第一個加載到vbo中,然後將它們鏈接到vao。
glGenVertexArrays(1, &_vertexArray1); //Bind to first VAO
glBindVertexArray(_vertexArray1);
glGenBuffers(1, &_vertexBufferCube1);
glBindBuffer(GL_ARRAY_BUFFER, _vertexBufferCube1);
glBufferData(GL_ARRAY_BUFFER, g_point_count * 3 * sizeof (float), &g_vp[0], GL_STATIC_DRAW);
glEnableVertexAttribArray(loc1);
glVertexAttribPointer(loc1, 3, GL_FLOAT, GL_FALSE, 0, NULL);
glEnableVertexAttribArray(loc2);
glVertexAttribPointer(loc2, 3, GL_FLOAT, GL_FALSE, 0, NULL);
但是,我怎樣才能加載第二個網格到vbo? 因爲在第二個網格應包含在g_vp[g_point_count * 3 * sizeof (float)]
? 因爲我已經嘗試過了,它不起作用,但可能還有其他的錯誤。
通常情況下,你會產生另一個VBO下一個網格的一個例子。如果你真的想把它放到第一個VBO中,你需要使VBO足夠大。 –