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 Modus
Der 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

<- NextScreenMode() - Sprite Inhaltsverzeichnis - OpenWindowedScreen() ->