goku
goku game engine_de
goku game engine_de
  • Kapitel 1: Einführung in SDL2, Rust und Goku
  • Kapitel 2: Die Grundstruktur: SpriteSheet
  • Kapitel 3: Animierte Texturen
  • Kapitel 4: Umgang mit Texturen: TextureManager
  • Kapitel 5: Textur zum Leben erwecken: GameObject
  • Kapitel 6: Die Grundlage: Tile-System
  • Kapitel 7: Die Ansicht bewegen: Kamera
  • Kapitel 8: Partikelsystem
  • Kapitel 9: Die Benutzeroberflächenschicht
  • Kapitel 10: Das Button-Element
  • Kapitel 11: Das Textfeld-Element
  • Kapitel 12: Das Kontrollkästchen-Element
  • Kapitel 13: Das Schieberegler-Element
  • Kapitel 14: Das Audiosystem
  • Kapitel 15: Das KI-System
  • Kapitel 16: Das Fenstersystem
  • Kapitel 17: Benutzereingabe-Verarbeitung
  • Kapitel 18: Rendern eines Parallax-Hintergrunds
  • Kapitel 19: Zeit- und Bildratenverwaltung
  • Kapitel 20: Fazit
Powered by GitBook
On this page

Kapitel 16: Das Fenstersystem

Die Window-Struktur repräsentiert ein Fenster auf dem Bildschirm, in dem das Spiel angezeigt wird. Dieses System verwendet das Modul sdl2::video aus der SDL2-Bibliothek in Rust.

Die Window-Struktur enthält drei Felder: sdl_context, video_subsystem und canvas. Der sdl_context ist der Hauptkontext der SDL-Bibliothek. Der video_subsystem ist ein Subsystem, das die Video-Funktionalitäten verwaltet. Die canvas ist eine Struktur, die den Bereich repräsentiert, in dem wir Dinge zeichnen können.

Ein Window wird mit einem spezifischen Titel, einer Breite und einer Höhe erstellt. Die Funktion new initialisiert SDL2, erstellt ein Fenster mit dem angegebenen Titel, der Breite und der Höhe und gibt ein Result zurück, das entweder eine neue Instanz von Window oder eine Fehlermeldung enthält.

Das Fenster wird in der Mitte des Bildschirms erstellt und verwendet den OpenGL-Kontext. Die Leinwand wird im Softwaremodus erstellt, was bedeutet, dass die CPU für das Rendering verwendet wird. Dies ist typischerweise langsamer als die Verwendung der GPU, aber es wird breiter unterstützt.

PreviousKapitel 15: Das KI-SystemNextKapitel 17: Benutzereingabe-Verarbeitung

Last updated 1 year ago