询问函数与属性组

用于获得当前状态机的一些参数设置

询问函数

获得任意状态参数的当前值

glGetBooleanv(pname, params);
glGetFloatv(pname, params);
glGetIntegerv(pname, params);
glGetDoublev(pname, params);

字面意思,第一个参数为想要知道的状态量,如GL_POINT_SIZE,将这个状态量的参数存入第二个数组之中。

属性组

属性组可以获得一组参数。如点属性组、线属性组等等。
对属性组的操作方法有

// glPushAttrib(GL_POINT_BIT | GL_LINE_BIT | GL_POLYGON_BIT);
glPushAttrib(attrGroup);
glPopAttrib();

第一个函数用来存储一些参数。第二个函数用来对属性栈中最后存储的所有参数进行重建。
这样可以方便做到 保存——改变——恢复