[pygame] problème mouvement saccadé
Bonjour,
j'ai réalisé un petit programme pour simuler le déplacement d'un bateau avec les touches fléchés.
Le programme semble fonctionner mais je trouve que le déplacement est parfois saccadé (le "bateau" vibre légèrement).
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| import pygame
from pygame.locals import *
from math import *
pygame.init()
fenetre = pygame.display.set_mode((1280, 800))
Clk=pygame.time.Clock()
sprite_origine=pygame.Surface((32,160))
sprite_origine.fill((255,0,0))
AngleB=0
speed=0
rspeed=0
Xb=300
Yb=300
while True:
event=pygame.event.poll()
Clk.tick(30)
#gestion event
if event.type == KEYDOWN :
if event.key==K_UP:
speed-=2
elif event.key==K_DOWN:
speed+=1
elif event.key==K_LEFT:
rspeed+=0.5
elif event.key==K_RIGHT:
rspeed-=0.5
AngleB+=rspeed
AngleB_rad=((AngleB*pi)/180)
Vx=speed*sin(AngleB_rad)
Vy=speed*cos(AngleB_rad)
Xb+=Vx
Yb+=Vy
round(Xb)
round(Yb)
Rotationboat=pygame.transform.rotozoom(sprite_origine,AngleB,1)
RectBoat=Rotationboat.get_rect(center=(Xb,Yb))
fenetre.fill((0,0,0))
fenetre.blit(Rotationboat,RectBoat)
pygame.display.flip() |
J'aimerai savoir si il est possible d’améliorer ce mouvement ou si ces imperfection sont due à une limite de la SDL.
Merci