Die Uhr
Teil des Abschnitts Die Spielschleife der Pygame-Journey von Coddy. Lektion 4 von 32.
Deine Schleife läuft so schnell, wie der Computer kann: auf einem schnellen Rechner Tausende Frames pro Sekunde, auf einem langsamen weniger. Ein Spiel braucht überall dieselbe Geschwindigkeit.
Eine pygame.time.Clock sorgt für das richtige Tempo. Erzeuge eine vor der Schleife und rufe dann clock.tick(60) einmal am Ende jedes Durchlaufs auf. Sie wartet so lange wie nötig, damit die Schleife höchstens 60 Mal pro Sekunde läuft.
clock = pygame.time.Clock()
running = True
while running:
# Ereignisse, Zeichnen, Bildwechsel
clock.tick(60)60 Frames pro Sekunde sind die übliche Rate für flüssige Bewegungen. Von jetzt an bewegt sich etwas, das sich pro Frame um 4 Pixel bewegt, pro Sekunde um 240 Pixel.
Aufgabe
Einfach- Erstelle unterhalb der Zeile
set_captioneine Uhr:clock = pygame.time.Clock(). - Rufe als letzte Zeile der Schleife, nach dem Flip,
clock.tick(60)auf.
Probier es selbst
import pygame
pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Move the Square")
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
screen.fill((30, 30, 46))
pygame.draw.rect(screen, (255, 196, 0), (220, 160, 40, 40))
pygame.display.flip()
pygame.quit()
Alle Lektionen in Die Spielschleife
Übe selbstständig: Pygame-Playground