1
我在C++中創建的交錯頂點數組:glNormalPointer與交織排列緩衝器
struct vertex
{
GLfloat position[3];
GLbyte normal[3];
};
std::vector<vertex> vertices;
// fill in vertices...
我陣列複製到GL緩衝液:
GLuint vertsBuffer;
glBindBuffer (GL_ARRAY_BUFFER, vertsBuffer);
glBufferData (GL_ARRAY_BUFFER, vertices.size() * sizeof (vertex), vertices.data(), GL_STATIC_DRAW);
是否有可能使用glNormalPointer與像交織數據這個,例如?
glBindBuffer (GL_ARRAY_BUFFER, vertsBuffer);
glEnableClientState (GL_NORMAL_ARRAY);
glNormalPointer (GL_BYTE, sizeof (vertex), (GLvoid*) offsetof (vertex, normal));
還是我必須使用glVertexAttribPointer呢?
如果你有一個VBO綁定,它將指針的值解釋爲一個偏移量:**「如果一個非零的已命名緩衝區對象綁定到GL_ARRAY_BUFFER目標(參見glBindBuffer),而指定了一個頂點數組,指針是將緩衝區對象綁定(GL_ARRAY_BUFFER_BINDING)保存爲頂點數組客戶端狀態(GL_VERTEX_ARRAY_BUFFER_BINDING)。「** – genpfault
這是** Description **塊的第二段,方式。 – genpfault
是的,我想我應該刪除這個問題。抱歉! – atb