问题描述:我在用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;
问题就解决了。
在网上搜都没搜到有人碰到我这种问题,特此记录一番。