Accueil | Personnaliser | Blog | Extras | Log In | Information
Manuel | D&D icons | GML Parser | Archives | Ville Iso
Username: Password:  
à propos | Caractéristiques | Directory | Bannières | Contacter

Création de jeux avec Game Maker
Création de jeux avec Game Maker

Sprites et Images

Chaque objet dispose d'un sprite qui lui est associé. Celui-ci peut être une simple image ou constitué de plusieurs images. Pour chacune des instances de l'objet, le programme dessine l'image correspondante sur l'écran, à son origine (comme définie dans les propriétés du sprite) et à la position (x,y) de l'instance. En présence d'images multiples, le programme effectue un affichage en boucle de ces images afin de créer un effet d'animation. Il existe quelques variables qui influencent la façon dont l'image est dessinée. Cela pourra être utilisé pour modifier les effets. Chaque instance possède les variables suivantes :

visible Si visible a la valeur true (1), l'image sera affichée sinon elle ne le sera pas. Les instances invisibles restent cependant actives et créent toujours des événements de collision mais vous ne les verrez pas. Paramétrer la visibilité à false peut être utile par exemple pour les objets contrôleurs (donnez leur le type non-solid pour éviter l'apparition d'événements de collision) ou encore pour des interrupteurs cachés dans votre jeu.
sprite_index C'est l'index du sprite courant de l'instance. Vous pouvez le changer en donnant un sprite différent à l'instance. Vous pouvez utiliser comme valeur le nom des sprites que vous aurez définis. Changer le sprite ne changera pas l'index de la sous-image actuellement visible.
sprite_width* Indique la largeur du sprite. Cette valeur ne peut être modifiée mais il vous est possible de l'utiliser.
sprite_height* Indique la hauteur du sprite. Cette valeur ne peut être modifiée mais il vous est possible de l'utiliser.
sprite_xoffset* Indique l'offset horizontal du sprite comme défini dans ses propriétés. Cette valeur ne peut être modifiée mais il vous est possible de l'utiliser.
sprite_yoffset* Indique l'offset vertical du sprite comme défini dans ses propriétés. Cette valeur ne peut être modifiée mais il vous est possible de l'utiliser.
image_number* Le nombre de sous-images de l'actuel sprite de l'instance (ne peut être changé).
image_index Lorsque l'image posséde plusieurs sous-images, le programme effectue un affichage en boucle de ces images. Cette variable indique la sous-image actuellement affichée (elles sont numérotées en partant de 0). Vous pouvez modifier l'image courante en changeant cette variable. Le programme poursuivra l'affichage en boucle des images mais en commençant à ce nouvel index (la valeur peut comprendre une partie fractionnaire. Dans ce cas, l'index sera toujours arrondi à la valeur entière inférieure afin d'obtenir la sous-image pouvant être correctement affichée).
image_speed La vitesse à laquelle le programme affiche les sous-images. Une valeur de 1 indique que lors de chaque step, le programme n'affichera qu'une seule image. De plus petites valeurs rendront plus lent l'affichage des sous-images, en affichant plusieurs fois chaque même sous-image à chaque step. Une valeur plus grande sautera des sous-images rendant l'animation plus rapide. Parfois, vous souhaiterez rendre visible une sous-image particulière et ne voudrez pas que le programme effectue un affichage en boucle des autres images. On peut réaliser cela en paramétrant la vitesse à 0 et en choisissant la sous-image souhaitée. Par exemple, supposons que vous ayez un objet en rotation et que vous vouliez créer un sprite qui dispose de sous-images pour effectuer un certain nombre d'orientations (dans le sens contraire des aiguilles d'une montre). Aussi, dans l'événement step de l'objet, vous pourrez écrire ceci :
{
  image_index = direction * image_number/360;
  image_speed = 0;
}
depth Habituellement, les images sont affichées selon l'ordre de création des instances. Vous pouvez modifier cela en réglant la profondeur de l'image (image depth). Par défaut, cette valeur est de 0 à moins que vous n'ayez indiqué une autre valeur dans les propriétés de l'objet. Plus cette valeur sera grande et plus l'instance sera éloignée (il est possible d'utiliser des valeurs négatives). Les instances de profondeur très grande seront situées derrière les instances de profondeur plus faible. Le paramétrage de la profondeur vous garantira que les instances seront affichées dans l'ordre souhaité (ex: un avion devant des nuages). Les instances d'arrière-plan devront avoir une très grande profondeur (donc positive) alors que celles de premier plan auront une profondeur très faible (soit négative).
image_xscale Ceci est un facteur d'échelle pour rendre les images plus grandes ou plus petites. Une valeur de 1 indique une taille normale. Vous devrez paramétrer séparément l'échelle horizontale xscale et celle verticale yscale. La modification de l'échelle aura une incidence sur les valeurs de largeur et de hauteur de l'image et influencera aussi les événements de collision comme on pouvait s'y attendre. On peut utiliser le changement d'échelle pour obtenir un effet 3D. Une valeur de -1 donnera au sprite un effet de miroir horizontal.
image_yscale Correspond à l'échelle verticale yscale. La valeur 1 indique aucune mise à l'échelle. Une valeur de -1 effectuera un retournement du sprite dans le sens vertical.
image_angle Correspond à l'angle de rotation du sprite. Vous devrez spécifier cette valeur en degrés et en suivant le sens contraire des aiguilles d'une montre. Une valeur de 0 signifie aucune rotation. Cette variable n'est disponible que dans la version enregistrée !
image_alpha La valeur de transparence (alpha) à utiliser lors de l'affichage de l'image. Une valeur de 1 correspond à un réglage normal de l'opacité alors qu'une valeur de 0 signifie une transparence totale.
image_blend La couleur de mélange de couleur (Blending color) utilisée lors de l'affichage du sprite. La valeur c_white est celle utilisée par défaut. Si vous indiquez une autre valeur, l'image sera mélangée avec cette couleur. Cela peut être utilisé pour colorier le sprite à la volée. Cette variable n'est disponible que dans la version enregistrée !
bbox_left* Côté gauche de la boîte des bords utilisée par l'image de l'instance (tient compte de l'échelle).
bbox_right* Côté droit de la boîte des bords de l'image de l'instance.
bbox_top* Côté supérieur de la boîte des bords de l'image de l'instance.
bbox_bottom* Côté inférieur de la boîte des bords de l'image de l'instance.

























<< Traduction française par Philippe Ragni - (2005) >>

Search Search


Alternative versions Alternative versions

You can also read this manual on one single long page (± 1.5 mb)

Also available in: Dutch English German

ZIP Download helpfile

Annonces Annonces

GameMaker Manual