Você está aqui: Python ::: Pygame ::: Animação, Animações, Técnicas de Animação |
Introdução à animação de objetos no Pygame - Como mover uma imagem na superfície da tela do jogoQuantidade de visualizações: 1082 vezes |
Nesta dica eu mostrarei uma das técnicas mais básicas de animação no Pygame do Python. Trata-de de um exemplo simples que você poderá usar como base para desenvolver seus jogos. Aqui eu mostro como criar um timer pygame.time.Clock(), como definir a quantidade de frames por segundo FPS, assim como carregar e exibir a imagem a ser usada na animação. Outras técnicas muito úteis que mostro é como definir a cor da tela do jogo, como definir o título, o tamanho da tela, o loop do jogo e o uso da função blit() para redesenhar a imagem na nova posição. Veja o código Pygame completo para o exemplo: # vamos importar as bibliotecas necessárias import pygame, sys from pygame.locals import * # inicializa a biblioteca pygame.init() # quantidade de frames por segundo FPS = 30 # construímos o timer timer = pygame.time.Clock() # obtém a superfície do jogo e define o tamanho da tela DISPLAYSURF = pygame.display.set_mode((500, 400), 0, 32) # vamos definir o título da janela do jogo pygame.display.set_caption('Animações no Pygame') # vamos criar a cor branca BRANCO = (255, 255, 255) # a imagem que será usada na animação moto = pygame.image.load('moto.png') moto_x = 10 moto_y = 10 direcao = 'direita' # e aqui nós entramos no loop do game while True: # vamos pintar a tela toda de branco DISPLAYSURF.fill(BRANCO) # ajustamos a posição da imagem de acordo com a direção if direcao == 'direita': moto_x = moto_x + 5 if moto_x >= 400: direcao = 'baixo' elif direcao == 'baixo': moto_y = moto_y + 5 if moto_y >= 300: direcao = 'esquerda' elif direcao == 'esquerda': moto_x = moto_x - 5 if moto_x == 20: direcao = 'cima' elif direcao == 'cima': moto_y = moto_y - 5 if moto_y == 10: direcao = 'direita' # redesenha a imagem da moto na posição especificada DISPLAYSURF.blit(moto, (moto_x, moto_y)) # monitoramos os eventos for evento in pygame.event.get(): # se o evento foi um pedido para sair if evento.type == QUIT: # fechamos a tela do jogo pygame.quit() # e saimos do programa sys.exit() # redesenha a tela continuamente pygame.display.update() # aciona o disparo do timer timer.tick(FPS) |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
JavaScript - JavaScript Avançado - Como usar o operador de bits & (E/AND sobre bits) da linguagem JavaScript |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |