Ce chapitre explique la theorie du systeme AMOS Professional pour la mise a jour et l affichage des objets en mouvement. En plus d une gamme complete de commandes, un systeme entierement automatique est fourni pour vous.
Deplacement de plusieurs objets
Par defaut, AMOS Professional gere automatiquement la position de chaque objet a l ecran. Des que les coordonnees de ces objets changent, ils sont redessines presque instantanement. Mais dans un jeu d arcade complexe, ce "presque instantane" peut poser probleme !
Les deux programmes suivants montrent un exemple classique, d abord avec des Sprites, puis avec des Bobs. Vous verrez que les objets bougent de maniere un peu irreguliere, car meme si AMOS Professional met a jour les positions a intervalles reguliers, il ne suit pas exactement le rythme de la boucle FOR ... NEXT.
Pour eviter les sprites et bobs tremblants, tous les objets doivent etre redessines au meme instant dans votre programme. AMOS Professional fournit trois commandes pour cela : SPRITE UPDATE pour les Sprites, BOB UPDATE pour les Bobs, et UPDATE pour les deux en meme temps.
Avant d utiliser ces commandes, il faut d abord desactiver le systeme automatique de mise a jour avec SPRITE UPDATE OFF, BOB UPDATE OFF ou UPDATE OFF, selon le cas. Voici deux exemples fonctionnels a taper vous-meme :
E> Load "AMOSPro_Tutorial:Objects/Sprites.Abk"
Curs Off : Flash Off : Cls 0
Set Sprite Buffer 256
Hide On
Get Sprite Palette
Sprite Update Off
For X=X Hard(0) To X Hard(330)
For S=0 To 8
Sprite S+8,X,S*25+50,2
Next S
Sprite Update : Wait Vbl
Next X
E> Load "AMOSPro Tutorial:Objects/Bobs.Abk"
Curs Off : Flash Off : Cls 0
Double Buffer
Get Bob Palette
Bob Update Off
For X=0 To 330
For B=0 To 1
Bob B,X,B*90,2
Next B
Bob Update
Wait Vbl
Next X