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