1
我有這種方法(InvertPolygonMesh),它基本上需要一個數組(我的VBO)並沿Z軸反轉所有頂點。這個方法直接通過點擊一個按鈕(IBAction)來調用。現在由於某種奇怪的原因,VBO在第一次點擊時沒有改變,但是在第一次點擊之後的每一次點擊都會顛倒過來。爲什麼我的VBO在第二次點擊時更新?
爲什麼第一次點擊沒有更新?
方法如下:
-(void)InvertPolygonMesh
{
NSLog(@"Invert mesh data.");
glBindBuffer(GL_ARRAY_BUFFER, _vertexBufferPhoto);
glBufferData(GL_ARRAY_BUFFER, sizeof(g_meshVertexData), g_meshVertexData, GL_DYNAMIC_DRAW);
int index = 0;
bool edgeCase = false;
for (int row = 0; row < MAP_SIZE; row += STEP_SIZE)
{
for (int col = 0; col < MAP_SIZE; col += STEP_SIZE)
{
g_meshVertexData[index].vertex.z = 255 - g_meshVertexData[index].vertex.z;
++index;
}
}
}
已解決。見下面的答案。 – AlvinfromDiaspar
你爲什麼發佈一個問題,然後立即刪除它? – Doorknob