MAX GUI full screen gaming?

BlitzMax Forums/BlitzMax Programming/MAX GUI full screen gaming?

Robert Cummings(Posted 2006) [#1]
Hi,

Is there a good reason why I can't just make a window desktop sized and render the game to that by stretching the canvas?

- is it too slow?
- is it buggy?
- any other negatives?


Grey Alien(Posted 2006) [#2]
I'm keen to know the answers too, but maybe no one's done it before ...


Yan(Posted 2006) [#3]
Probably completely irrelevant, but it's something to play with.



ImaginaryHuman(Posted 2006) [#4]
Because it's a window, not fullscreen. On windblows you have the task bar to consider. On the mac you cannot have windows that overlap the title bar at the top of the screen. I don't think any apps can open that cover the title bar on the mac, be they BlitzMax or otherwise. You could have a full-screen-size window with maybe no border or something (if maxgui allows such a thing), but you'll still get the title bar. That's really down to the o/s not Max.

You also should consider that if you use window mode it will be slower because it has to physically copy the pixels from the backbuffer to the visible buffer in a blit operation, whereas in fullscreen mode it becomes possible for the hardware to do a hardware flip, whereby it just changes the address of the memory it wants to look at rather than moving any data. So window mode is slower. If your window covers the whole screen you might as well go with fullscreen mode.

The only benefit I can see is that on some systems like my ibook, where the OpenGL implementation does not support full-screen contexts (window only), it would then be nice to be able to have a window that fills the whole screen, without a title and overlapping the title bar. But alas. These things are o/s constrained I think.


Grey Alien(Posted 2006) [#5]
Yes the Flip implementation for full screen and windowed mode is different two, full-screen flips buffers, windowed mode does a Blit.


Robert Cummings(Posted 2006) [#6]
Ian, why did you take your post away?


Yan(Posted 2006) [#7]
It was just some crusty old code that didn't really have much to do with the topic. I don't really know why I posted it in the first place. 8o/

[edit]I've put it back[/edit]


WendellM(Posted 2006) [#8]
Is there a good reason why I can't just make a window desktop sized and render the game to that by stretching the canvas?

Isn't it possible to do that with manual scaling factors, by creating a window without a title bar, client-area-sized to match desktop calls? The menu and status bar can be eliminated (not sure about the Mac, which has a fetish for a full-width menu bar).


Robert Cummings(Posted 2006) [#9]
I cannot make an 800x600 window and stretch the canvas for some reason. I just can't get it to work.


TartanTangerine (was Indiepath)(Posted 2006) [#10]
I've got some customers using directX via ig and they rescale. Let me send a few emails and find out the score.


Robert Cummings(Posted 2006) [#11]
Thanks Tim. I think I prefer enabling a proper Graphics() fullscreen mode for this, however, found out blitzmax bombs when I do (see bug reports)