Reloj de Pygame y bucles de eventos.
Soy nuevo en pygame y me preguntaba qué es un bucle de eventos y qué hace el reloj en esta situación, ¿qué es clock.tick(60)
? No entiendo ninguna explicación en línea.
clock = pygame.time.Clock()
run = True
while run:
clock.tick(60)
# event loop
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
El método tick()
de un pygame.time.Clock
objeto retrasa el juego de tal manera que cada iteración del bucle consume el mismo período de tiempo.
Eso significa que el bucle:
clock = pygame.time.Clock()
run = True
while run:
clock.tick(60)
corre 60 veces por segundo.
for event in pygame.event.get()
maneja los eventos internos y recupera una lista de eventos externos (los eventos se eliminan de la cola de eventos interna).
Si presiona el botón de cerrar de la ventana, provocará el QUIT
evento y obtendrá el evento for event in pygame.event.get()
. Consulte pygame.event
los diferentes tipos de eventos. por ejemplo, KEYDOWN
ocurre una vez cuando se presiona una tecla.
Por ejemplo, el siguiente bucle imprime los nombres de una tecla una vez que se presiona:
run = True
while run:
# event loop
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
if event.type == pygame.KEYDOWN:
print(pygame.key.name(event.key))