Seite 1 von 1
Zwischen Vollbild und WindowMode "on the fly" wechseln
Verfasst: 13.01.2011 23:55
von aaronmueller
Hallo zusammen!
Ich möchte ein 2D Spielchen schreiben. Dazu will ich im Programm zwischen Vollbild und WindowMode wechseln (per Tastendruck). Ist dies möglich? Wenn ja, wie stell ich dies an?
Viele Grüße,
Aaron
Re: Zwischen Vollbild und WindowMode "on the fly" wechseln
Verfasst: 14.01.2011 00:02
von TomS
Kommt darauf an.
Wenn das Spiel relativ wenig Resourcen verbraucht, kannst du den WindowedScreen mit Autostretch-Flag erstellen und per Tastendruck die Größe des Fensters verändern.
Ansonsten hilft nur CloseScreen und Open(Windowed)Screen. Dadurch wird das Spiel einige Sekunden unterbrochen, da sämtliche Resourcen (Sprites, Sounds) erst wieder geladen werden müssen.
Re: Zwischen Vollbild und WindowMode "on the fly" wechseln
Verfasst: 14.01.2011 00:03
von RSBasic
Re: Zwischen Vollbild und WindowMode "on the fly" wechseln
Verfasst: 14.01.2011 00:42
von aaronmueller
Ich hab das mal ausprobiert, leider flackert das ganze ziemlich, wenn ich "f" drücke. Es scheint so als wolle er ständig zwischen Window und Fullscreen wechseln. Hab ich da was beim Input handling falsch verstanden?
Code: Alles auswählen
If OpenWindow(0, 0, 0, 800, 600, title, #PB_Window_ScreenCentered)
If OpenWindowedScreen(WindowID(0), 0, 0, 800, 600, 0, 0, 0)
EndIf
Repeat
; Event loop
Repeat
event = WindowEvent()
Until event = 0
; Handle input
ExamineKeyboard()
If KeyboardPushed(#PB_Key_F)
CloseScreen()
If fullscreen = 0
OpenScreen(800, 600, 32, title)
fullscreen = 1
Else
OpenWindowedScreen(WindowID(0), 0, 0, 800, 600, 0, 0, 0)
fullscreen = 0
EndIf
EndIf
; Draw the stuff on the screen
FlipBuffers()
ClearScreen(RGB(0, 200, 0))
DrawOnScreen()
Delay(1)
Until KeyboardPushed(#PB_Key_Escape)
EndIf
Re: Zwischen Vollbild und WindowMode "on the fly" wechseln
Verfasst: 14.01.2011 01:19
von TomS
Benutze anstatt
KeyboardPushed(#PB_Key_F) besser KeyboardReleased(#PB_Key_F).
KeyboardPushed() gibt solange True zurück, wie du den Finger auf der Taste hast. In der Zeit kann man schon mal etliche Operationen ausführen, die dann eben mehrfach ausgeführt werden.
Wenn's blöd läuft ist die Anzahl gerade und man landet beim gleichen ScreenModus wie vorher

Re: Zwischen Vollbild und WindowMode "on the fly" wechseln
Verfasst: 15.01.2011 16:42
von aaronmueller
Prima, daran hats gelegen. Danke!