OpenScreen()
Syntax
Ergebnis = OpenScreen(Breite, Höhe, Tiefe, Titel$ [, FlipModus [, RefreshRate])Beschreibung
Öffnet einen neuen Bildschirm entsprechend der angegebenen 'Breite', 'Höhe' und 'Tiefe'.
Der geöffnete Bildschirm wird mit 2 Videobuffern erstellt, um das 'Double-Buffering' zu ermöglichen, welches speziell für Spiele entwickelt wurde. Die Buffer können mittels dem FlipBuffers() Befehl manipuliert werden.
Wenn das Öffnen des Bildschirms fehlschlägt, ist 'Ergebnis' gleich 0.
Breite und Höhe sollten Standard-Kombinationen sein: 640*480, 800*600, 1024*768...
Tiefe kann die folgenden Werte annehmen:4 : 16 Farben, unabhängige Palette möglich 8 : 256 Farben, unabhängige Palette möglich 16: 65.000 Farben, feste Palette 24: 16 Mio. Farben, feste Palette 32: 16 Mio. Farben, schneller als der 24 Bit ModusDer optionale Parameter 'FlipModus' ermöglicht auf die Synchronisation des Bildschirms zu warten oder nicht zu warten, bevor die Buffer vertauscht werden (auch bekannt als 'Vertikal-Blank-Synchronisation').
Er kann einen der folgenden Werte annehmen:#PB_Screen_NoSynchronization : Synchronisation ausschalten #PB_Screen_WaitSynchronization : Synchronisation einschalten (Standard-Wert) #PB_Screen_SmartSynchronization : Synchronisation einschalten, mit einer CPU-schonenderen Routine, wenn das Programm nicht die gesamte CPU-Rechenzeit benötigt (nur bei Vollbildschirm)Das Warten auf die Bildschirm-Synchronisation ermöglicht einen perfekten Buffer-"Tausch" (Flip ohne "Ausreißer" oder andere sichtbare Artefakte), da der Flip erst nach dem vollständigen Zeichnen des Bildschirms (und wenn sich der "Screen-Spot" außerhalb des sichtbaren Bildschirmbereichs befindet) ausgeführt wird. Dies verknüpft auch die Flip-Frequenz (Häufigkeit des Buffer-Tauschs) mit dem aktuellen Bildschirm-Refresh ("Auffrischung"), z.B. bei einem 60 Hz Bildschirm sind maximal 60 Flips pro Sekunde möglich.
Eine optionale 'RefreshRate' (in Hz) kann für den neuen Bildschirm festgelegt werden. Wenn diese Refresh-Rate nicht verarbeitet werden kann, dann wird OpenScreen() fehlschlagen.
Hinweis: Auf Windows kann die Refresh-Rate von den Grafikkarten-Treibern gesperrt oder erzwungen werden, so dass diese Funktion ungenau sein kann.
Weitere Hinweise:
Unter Windows wird der als Parameter angegebene 'Titel$' in der Taskleiste angezeigt. Es ist daher empfehlenswert, einen Titel entsprechend dem Programmnamen zu verwenden.
Auch die Requester-Befehle können auf mittels OpenScreen() geöffneten Bildschirmen nicht verwendet werden.
Wenn Sie einen Bildschirm-Bereich auf einem regulären Fenster öffnen möchten, dann werfen Sie einen Blick auf den OpenWindowedScreen() Befehl.
Unterstützte OS
Windows, Linux (OpenGl), MacOS X