OpenGL exclusive fullscreen mode

Started by
14 comments, last by blanky 18 years, 6 months ago
Yeah I know what you mean, but again, you have to take it slowly. First, what you should know is how to get that exclusive clearance from the video card. What he means, guys, is that how can you make it so that when you run in fullscreen, to have it where only that program can access the video card. Unless this automatically happens, he claims that DirectX has this feature. I'm very interested in this feautre in OpenGL as well, although I dont think there's such thing since OpenGL is more cross platform.
Advertisement
Well, if you are trying to multi-task, as in letting the user alt-tab so he can do something else, then you shouldn't be trying to get exclusive control in the first place. Then, I really don't think anyone is going to want to run two CPU hungry fullscreen games at once. And if they do, I say let them. If they run out of memory, it is their own problem. But, I think you should allow them to run another program, even if it is another full screen application like yours. I don't even think you need to detect it, rather when your application is reactivated, recreate the fullscreen part, though the window just needs maximized. So, my opinion is just to be as compatible as possible and don't try to take over the computer.

Also, I think that unless your program itself starts another one, I don't think it will start by itself. If it does, like maybe internet popups or something like it, the screen will probably keep the same resolution etc... that you have it at and "tab out" of your application, just like if the user had done it, then giving focus to the "new" application, full-screen or not.


kburkhart84, first, I'd like to make it clear that I am not a game developer, instead, I am working on a gaming system that hosts existing OpenGL/D3D/DDraw games. So it is out of my control whether a game goes into fullscreen mode or not. Actually, in our system, we force a game to run in background mode and send the game video and audio to a remote machine through network. So there is possibility that a user on the host machine starts a new fullscreen application. In such a case, we found that the new application might cause the game running in background mode to fail and affected the experience of the remote game player. So we have to detect such a second fullscreen application and either stop it from running or force it to use the video card non-exclusively. We have found solutions to D3D/DDraw applications but we don't know how to deal with OpenGL. That is where my question comes from.
I see....... That changes things a little bit. I'm glad you explained that to me. The problem I see is that windows itself automatically gets out of an app or game when another window takes the focus. I think you might could somehow grab the "lost-focus" message, (don't remember what it's called), and somehow react to it. I have heard of message hooks as well that I think allow you to get other windows messages, but they might have to be your own windows. That is about all the help I think I have for this situation. I tried though. Post any results you get. I'd like to see.


Try the NeHe base code. Provides a function to open a window in fullscreen or windowed ;)
______________________________________________________________________________________________________
[AirBash.com]
tc, can you post the code you came up with for DX? Maybe that way people will be able to do the transition.

This topic is closed to new replies.

Advertisement