O Relógio
Parte da seção O loop do jogo do Journey de Pygame da Coddy. Lição 4 de 32.
Seu loop é executado tão rápido quanto o computador consegue: milhares de quadros por segundo em uma máquina rápida, menos em uma máquina lenta. Um jogo precisa ter a mesma velocidade em todos os lugares.
Um pygame.time.Clock mantém o ritmo. Crie um antes do loop e, em seguida, chame clock.tick(60) uma vez no final de cada iteração. Ele espera o tempo necessário para que o loop seja executado no máximo 60 vezes por segundo.
clock = pygame.time.Clock()
running = True
while running:
# eventos, desenho, flip
clock.tick(60)60 quadros por segundo é a taxa usual para um movimento suave. A partir de agora, algo que se move 4 pixels a cada quadro percorre 240 pixels por segundo.
Desafio
Fácil- Abaixo da linha
set_caption, crie um relógio:clock = pygame.time.Clock(). - Como última linha do loop, após a inversão, chame
clock.tick(60).
Experimente você mesmo
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()
Todas as lições de O loop do jogo
1Mova um Quadrado
Abra uma JanelaPreencha o FundoPratique por conta própria: Playground de Pygame