提示コードですが構造体の頂点属性構造体を用意してそこから頂点、UV座標というように属性を取り出して設定したいのですがストライドというのはどのように設定したらいいのでしょうか?glVertexAtrribPointer();関数
公式リファレンス: https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/glVertexAttribPointer.xhtml
cpp
1 2 3 4//頂点属性 5 struct VertexAttribute { 6 7 8 GLfloat Position[3]; //頂点座標 9 GLfloat uv[2]; //UV座標 10 11 }; 12 13 14 //VAO 15 glGenVertexArrays(1, &vao); 16 glBindVertexArray(vao); 17 18 //VBO 19 glGenBuffers(1, &vbo); 20 glBindBuffer(GL_ARRAY_BUFFER, vbo); 21 glBufferData(GL_ARRAY_BUFFER, std::size(vertex) * sizeof(Game::VertexAttribute), std::data(vertex) ,GL_STATIC_DRAW); 22 23 //頂点座標 24 glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, sizeof(Game::VertexAttribute), std::data(vertex.at(0).Position)); 25 glEnableVertexAttribArray(0); 26 27 //UV座標 28 glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, sizeof(Game::VertexAttribute), std::data(vertex.at(0).uv)); 29 glEnableVertexAttribArray(1); 30 31 //IBO 32 glGenBuffers(1, &ibo); 33 glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, ibo); 34 glBufferData(GL_ELEMENT_ARRAY_BUFFER, std::size(index) * sizeof(unsigned int),std::data(index),GL_STATIC_DRAW); 35 36 37 38 39 40
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/10/01 10:15
2020/10/01 10:34