itsraining
itsraining

Reputation: 203

Finding screen width and height dynamically in OpenGL GLUT program

In my OpenGL program, in order to run it in fullscreen mode, I'm using the GLUT function glutGameModeString(const char *string).
(where 'string' specifies the screen width,height,pixelDepth and refresh rate)

To make it working in any system,i need to dynamically determine the screen width and screen height of the host system, prior to making the call to 'glutGameModeString' function.
How do I do that?

Upvotes: 4

Views: 10853

Answers (2)

StackAttack
StackAttack

Reputation: 1219

Just tested on 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;

outputs:

glut screen width(DEFAULT): 200
glut screen height(DEFAULT): 201
glut screen width: 1366
glut screen height: 768

setting your window size to glutGet(GLUT_SCREEN_WIDTH/HEIGHT); will maximize your window, still has top bar and border.

Just calling glutFullScreen(); after initializing your window will make it full screen with no borders or anything, no need for the above stuff of getting your screen size.

Upvotes: 1

Samuel Allan
Samuel Allan

Reputation: 392

I think you are wrong, there are the following constants:

GLUT_SCREEN_HEIGHT
GLUT_SCREEN_WIDTH

I've tested it, it works.

Upvotes: 4

Related Questions