2015-10-21 40 views

回答

1

要使用的基本类型是GLfloat。这与函数原型中的类型相匹配。这是一个32位浮点值,大多数与float类型匹配,但不能保证。

对于glGetFloatv()返回单个值的情况,您可以简单地使用GLfloat变量的地址。例如:

GLfloat val; 
glGetFloatv(GL_DEPTH_CLEAR_VALUE, &val); 

对于返回多个值的情况下,你可以使用数组:

GLfloat vals[4]; 
glGetFloatv(GL_COLOR_CLEAR_VALUE, vals); 

或者,以使其更加C++中,vector

std::vector<GLfloat> vals(4); 
glGetFloatv(GL_COLOR_CLEAR_VALUE, &vals[0]); 

或者,甚至在C++ 11中更好:

std::vector<GLfloat> vals(4); 
glGetFloatv(GL_COLOR_CLEAR_VALUE, vals.data());