Pygame-Tutorial
Aus Spieleprogrammierer-Wiki
(Unterschied zwischen Versionen)
[gesichtete Version] | [gesichtete Version] |
(→Testen: Kommentare) |
(→Testen) |
||
Zeile 19: | Zeile 19: | ||
=== Testen === | === Testen === | ||
Ein einfaches Skript zum Testen der Installation: | Ein einfaches Skript zum Testen der Installation: | ||
+ | |||
<sourcecode lang=python line> | <sourcecode lang=python line> | ||
# -*- coding: UTF-8 -*- | # -*- coding: UTF-8 -*- | ||
− | # Pygame Modul importieren | + | # Pygame-Modul importieren. |
import pygame | import pygame | ||
− | # Überprüfen, ob die optionalen Text- und Sound-Module geladen werden konnten | + | # Überprüfen, ob die optionalen Text- und Sound-Module geladen werden konnten. |
if not pygame.font: print('Fehler pygame.font Modul konnte nicht geladen werden!') | if not pygame.font: print('Fehler pygame.font Modul konnte nicht geladen werden!') | ||
if not pygame.mixer: print('Fehler pygame.mixer Modul konnte nicht geladen werden!') | if not pygame.mixer: print('Fehler pygame.mixer Modul konnte nicht geladen werden!') | ||
def main(): | def main(): | ||
− | # Initialisieren | + | # Initialisieren aller Pygame-Module und |
− | # Fenster erstellen | + | # Fenster erstellen (wir bekommen eine Surface, die den Bildschirm repräsentiert). |
pygame.init() | pygame.init() | ||
screen = pygame.display.set_mode((800, 600)) | screen = pygame.display.set_mode((800, 600)) | ||
− | # Titel des Fensters setzen, Mauszeiger nicht verstecken und Tastendrücke wiederholt senden | + | # Titel des Fensters setzen, Mauszeiger nicht verstecken und Tastendrücke wiederholt senden. |
pygame.display.set_caption("Pygame-Tutorial: Grundlagen") | pygame.display.set_caption("Pygame-Tutorial: Grundlagen") | ||
pygame.mouse.set_visible(1) | pygame.mouse.set_visible(1) | ||
pygame.key.set_repeat(1, 30) | pygame.key.set_repeat(1, 30) | ||
− | # Clock Objekt erstellen, das | + | # Clock-Objekt erstellen, das wir benötigen, um die Framerate zu begrenzen. |
clock = pygame.time.Clock() | clock = pygame.time.Clock() | ||
− | # Die Schleife, und damit unser Spiel, läuft solange running == True | + | # Die Schleife, und damit unser Spiel, läuft solange running == True. |
running = True | running = True | ||
while running: | while running: | ||
− | # Framerate auf 30 Frames pro Sekunde beschränken | + | # Framerate auf 30 Frames pro Sekunde beschränken. |
− | # Pygame wartet, falls das Programm schneller läuft | + | # Pygame wartet, falls das Programm schneller läuft. |
clock.tick(30) | clock.tick(30) | ||
− | # screen Surface mit Schwarz (RGB = 0, 0, 0) füllen | + | # screen-Surface mit Schwarz (RGB = 0, 0, 0) füllen. |
screen.fill((0, 0, 0)) | screen.fill((0, 0, 0)) | ||
− | # Alle aufgelaufenen Events holen und abarbeiten | + | # Alle aufgelaufenen Events holen und abarbeiten. |
for event in pygame.event.get(): | for event in pygame.event.get(): | ||
− | # Spiel beenden, wenn wir ein QUIT Event finden | + | # Spiel beenden, wenn wir ein QUIT-Event finden. |
if event.type == pygame.QUIT: | if event.type == pygame.QUIT: | ||
running = False | running = False | ||
− | # Wir interessieren uns auch für "Taste gedrückt" Events | + | # Wir interessieren uns auch für "Taste gedrückt"-Events. |
if event.type == pygame.KEYDOWN: | if event.type == pygame.KEYDOWN: | ||
− | # Wenn Escape gedrückt wird posten wir ein QUIT Event in Pygames Event | + | # Wenn Escape gedrückt wird, posten wir ein QUIT-Event in Pygames Event-Warteschlange. |
if event.key == pygame.K_ESCAPE: | if event.key == pygame.K_ESCAPE: | ||
pygame.event.post(pygame.event.Event(pygame.QUIT)) | pygame.event.post(pygame.event.Event(pygame.QUIT)) | ||
− | # Inhalt von screen anzeigen | + | # Inhalt von screen anzeigen. |
pygame.display.flip() | pygame.display.flip() | ||
− | # Überprüfen, ob dieses Modul als | + | # Überprüfen, ob dieses Modul als Programm läuft und nicht in einem anderen Modul importiert wird. |
if __name__ == '__main__': | if __name__ == '__main__': | ||
− | # Unsere Main Funktion aufrufen | + | # Unsere Main-Funktion aufrufen. |
main() | main() | ||
</sourcecode> | </sourcecode> |
Version vom 28. Oktober 2011, 15:53 Uhr
Klicke hier, um diese Version anzusehen.