Menu
CoddyTech

Des couleurs qui changent

Fait partie de la section La boucle de jeu du Journey Pygame de Coddy. Leçon 12 sur 32.

Une couleur est composée de trois nombres, donc une variable peut en représenter un. Modifiez la variable à chaque image et la couleur change à l’écran.

glow = 0

while running:
    # événements
    glow = (glow + 3) % 256
    pygame.draw.circle(screen, (255, glow, 0), (240, 180), 60)

À chaque image, on ajoute 3 à la composante verte : le cercle passe du rouge à l’orange, puis au jaune.

Chaque composante d’une couleur doit rester entre 0 et 255. À 256, pygame s’arrête avec ValueError: invalid color. L’opérateur % donne le reste d’une division : 256 % 256 vaut 0 et 258 % 256 vaut 2. Ainsi, (glow + 3) % 256 repart près de 0 au lieu de dépasser 255, et le cercle passe du rouge au jaune encore et encore.

challenge icon

Défi

Facile
  1. Avant la boucle, définissez glow = 0.
  2. Dans la boucle, avant de dessiner, ajoutez 3 à glow et maintenez sa valeur entre 0 et 255 avec % 256.
  3. Dessinez le cercle en (255, glow, 0).

Essayez vous-même

import pygame

pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Glow")
clock = pygame.time.Clock()

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    screen.fill((30, 30, 46))
    pygame.draw.circle(screen, (255, 120, 0), (240, 180), 60)
    pygame.display.flip()
    clock.tick(60)

pygame.quit()
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de La boucle de jeu

Entraînez-vous par vous-même : Playground Pygame