我正在使用 glut
库学习 OpenGL
。问题是当程序变得复杂时,要处理的 全局变量
太多了。正如许多人所说,在程序中使用过多的 全局变量
是不好的。然而,我无法通过将用户定义参数传递给 glut 定义的回调函数来替换 全局变量
。例如:
void display (void)
{
// How to pass user defined parameters here?
// some more code
}
int
main(void)
{
glutDisplayFunc(display);
// some more code
}
我的问题是:
- 写OpenGL和glut时如何处理全局变量?
- 除了向函数传递参数,还有什么其他方法可以替代全局变量?
- 其他库(而非glut)如何处理OpenGL的输入/输出以处理全局变量?