OpenGL GLUT程序中动态查找屏幕宽度和高度

OpenGL GLUT程序中动态查找屏幕宽度和高度,opengl,glut,Opengl,Glut,在我的OpenGL程序中,为了在全屏模式下运行它,我使用GLUT函数GLUTGAMESTRING(const char*string)。(其中“string”指定屏幕宽度、高度、像素深度和刷新率)要使它在任何系统中工作,我需要动态确定主机系统的屏幕宽度和屏幕高度,在调用“GLUTGAMEDRING”函数之前。我该怎么做?我认为你错了,有以下常量: GLUT_SCREEN_HEIGHT GLUT_SCREEN_WIDTH 我已经测试过了,它可以工作。刚刚在Linux Mint 18上测试过 st

在我的OpenGL程序中,为了在全屏模式下运行它,我使用GLUT函数GLUTGAMESTRING(const char*string)。
(其中“string”指定屏幕宽度、高度、像素深度和刷新率)

要使它在任何系统中工作,我需要动态确定主机系统的屏幕宽度和屏幕高度,在调用“GLUTGAMEDRING”函数之前。
我该怎么做?

我认为你错了,有以下常量:

GLUT_SCREEN_HEIGHT
GLUT_SCREEN_WIDTH

我已经测试过了,它可以工作。

刚刚在Linux Mint 18上测试过

std::cout << "glut screen width(DEFUALT): " << GLUT_SCREEN_WIDTH << std::endl;
std::cout << "glut screen height(DEFAULT): " << GLUT_SCREEN_HEIGHT << std::endl;
std::cout << "glut screen width: " << glutGet(GLUT_SCREEN_WIDTH) << std::endl;
std::cout << "glut screen height: " << glutGet(GLUT_SCREEN_HEIGHT) << std::endl;
将窗口大小设置为
glutGet(GLUT\u屏幕\u宽度/高度)将最大化您的窗口,仍然有顶部栏和边框


只需调用
glutFullScreen()初始化窗口后,将使其全屏显示,没有边框或任何东西,无需上述获取屏幕大小的内容。

但使用glutFullScreen()后,这些功能不起作用:(我不确定,但我认为glutGet(GLUT\U screen\U with/HEIGHT)应该修复它
glut screen width(DEFAULT): 200
glut screen height(DEFAULT): 201
glut screen width: 1366
glut screen height: 768