問題描述:我在用glReadPixels讀取深度信息的時候,最後得到的結果是一個極小的一個趨於0的數。
glReadPixels((int)10, (int)10, 1, 1, GL_DEPTH_COMPONENT, GL_FLOAT, &winZ);
winZ結果圖:
解決:
這是因爲winZ定義有問題。我錯誤的定義成了:GLdouble winZ = 0;
這樣就與glReadPixels裏面的GL_FLOAT參數不匹配了。
正確的應該定義爲:GLfloat winZ = 0;
問題就解決了。
在網上搜都沒搜到有人碰到我這種問題,特此記錄一番。