L'orologio
Fa parte della sezione Il game loop del percorso Pygame di Coddy. Lezione 4 di 32.
Il tuo ciclo viene eseguito alla massima velocità possibile per il computer: migliaia di fotogrammi al secondo su una macchina veloce, meno su una lenta. Un gioco deve avere la stessa velocità ovunque.
Un pygame.time.Clock mantiene il ritmo. Creane uno prima del ciclo, poi chiama clock.tick(60) una volta alla fine di ogni iterazione. Attende il tempo necessario affinché il ciclo venga eseguito al massimo 60 volte al secondo.
clock = pygame.time.Clock()
running = True
while running:
# eventi, disegno, flip
clock.tick(60)60 fotogrammi al secondo è la frequenza abituale per ottenere un movimento fluido. D'ora in poi, qualcosa che si sposta di 4 pixel a ogni fotogramma si sposterà di 240 pixel al secondo.
Sfida
Facile- Sotto la riga
set_caption, crea un orologio:clock = pygame.time.Clock(). - Come ultima riga del ciclo, dopo il flip, chiama
clock.tick(60).
Provalo tu
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()
Tutte le lezioni di Il game loop
1Muovi un quadrato
Apri una finestraRiempi lo sfondoEsercitati da solo: Playground Pygame