Pages traduites Pages à traduire Pages en cours de traduction
A propos
 

Ceci est une ancienne révision du document !


Fonctions et propriétés des Sprites Dynamiques

Create (dynamic sprite)

static DynamicSprite* DynamicSprite.Create(int largeur, int hauteur,
                                           optional bool possedeCanalAlpha)
Crée une nouvelle sprite dynamique vierge de la taille spécifiée. Sera totalement transparent au départ, et peut posséder un canal alpha. Cette commande est utile si vous voulez juste créer une nouvelle sprite puis utiliser les commandes DrawingSurface pour dessiner dessus.

Si la profondeur des couleurs du jeu est inférieure à 32-bit, alors le paramètres possedeCanalAlpha sera ignoré.

Utilisez la propriété Graphic de DynamicSprite avec les autres commandes et pour utiliser la nouvelle sprite dans le jeu.

IMPORTANT : Cette commande charge une sprite supplémentaire dans la mémoire, qui n'est pas contrôlée par le cache AGS normale, et qui ne sera pas automatiquement libérée. Ainsi, lorsque vous avez fini d'utiliser l'image, vous DEVEZ appeler Delete pour libérer la mémoire.

IMPORTANT : Si la variable DynamicSprite est libéré de la mémoire (c-à-di s'il n'y a plus de variable DynamicSprite* qui pointe dessus), alors la sprite elle-même sera aussi supprimée de la mémoire. Assurez-vous de garder une variable globale pointant sur la sprite jusqu'à ce que vous en ayez fini avec, puis appelez alors Delete.

Exemple :
DynamicSprite* sprite = DynamicSprite.Create(50, 30);
DrawingSurface *surface = sprite.GetDrawingSurface();
surface.DrawingColor = 14;
surface.DrawPixel(25, 15);
surface.Release();
sprite.Delete();

crée une sprite de taille 50×30, dessine un point blanc au milieu, puis supprime la sprite.

Voir aussi : DynamicSprite.Delete, DynamicSprite.Graphic, DynamicSprite.GetDrawingSurface


CreateFromBackground

static DynamicSprite* DynamicSprite.CreateFromBackground
(optional int frame, optional int x, optional int y,
optional int largeur, optional int hauteur)
Crée une nouvelle sprite dynamique, contenant une copie de l'image d'arrière-plan de la pièce.

L'utilisation la plus basique de cette fonction consiste à ne passer aucun paramètre, auquel cas la sprite contiendra une copie exacte de l'arrière-plan de la pièce actuelle.

Si vous voulez, vous pouvez entrer seulement frame, auquel cas vous obtiendrez une copie complète de l'image d'arrière-plan correspondant à ce numéro, dans la pièce actuelle.

Facultativement, vous pouvez spécifier une portion de l'arrière-plan à capturer. Vous devrez alors entrer les paramètres X, Y, LARGEUR et HAUTEUR (et aucun de ceux-là si vous voulez l'image entière) ; si vous les entrez, cela vous permet d'obtenir juste une petite portion de l'arrière-plan dans la nouvelle sprite. Toutes les coordonnées sont données en résolution 320×200, et sont les coordonnées de la pièce.

Utilisez la propriété DynamicSprite.Graphic pour utiliser l'image de la sprite dans les autres commandes et pouvoir la manipuler dans le jeu.

IMPORTANT : Cette commande charge une sprite supplémentaire en mémoire qui n'est pas contrôlée par le cache classique d'AGS et qui ne sera pas automatiquement supprimée. C'est pourquoi, lorsque vous avez fini d'utiliser l'image, vous DEVEZ appeler Delete dessus pour libérer la mémoire.

IMPORTANT : Si l'objet DynamicSprite est supprimé de la mémoire (c'est-à-dire s'il n'y a plus de variable DynamicSprite* pointant vers l'image), alors la sprite sera aussi supprimée de la mémoire. Assurez vous que vous gardez une variable pointant vers la sprite jusqu'à ce que vous ayez fini de l'utiliser (vous appellerez alors Delete).

Exemple :
DynamicSprite* sprite = DynamicSprite.CreateFromBackground(GetBackgroundFrame(), 130, 70, 60, 60);
DrawingSurface *surface = Room.GetDrawingSurfaceForBackground();
surface.DrawImage(0, 0, sprite.Graphic);
surface.Release();
sprite.Delete();

copie dans la sprite une zone de 60×60 pixels du centre de l'arrière-plan, et dessine l'image au coin haut gauche de l'image d'arrière-plan.

Voir Aussi : DynamicSprite.Delete


CreateFromDrawingSurface

static DynamicSprite* DynamicSprite.CreateFromDrawingSurface(
                        DrawingSurface* surface, int x, int y,
                        int largeur, int hauteur)
Crée une sprite dynamique contenant une copie de la portion spécifiée de la surface de dessin (drawing surface). Cela vous permet de créer facilement de nouvelle sprite à partir de portions d'autres sprites.

NOTE : Les paramètres x , y , largeur et hauteur respectent les réglages UseHighResCoordinates des Drawing Surface, donc assurez-vous que le type de coordonnées que vous utilisez correspond à ce que les surfaces de dessin requièrent.

Utilisez la propriété Graphic des DynamicSprite avec les autres commandes et pour utiliser la nouvelle sprite dans le jeu.

IMPORTANT : Cette commande charge une sprite supplémentaire dans la mémoire, qui n'est pas contrôlée par le cache AGS normale, et qui ne sera pas automatiquement libérée. Ainsi, lorsque vous avez fini d'utiliser l'image, vous DEVEZ appeler Delete pour libérer la mémoire.

IMPORTANT : Si la variable DynamicSprite est libéré de la mémoire (c-à-di s'il n'y a plus de variable DynamicSprite* qui pointe dessus), alors la sprite elle-même sera aussi supprimée de la mémoire. Assurez-vous de garder une variable globale pointant sur la sprite jusqu'à ce que vous en ayez fini avec, puis appelez alors Delete.

Exemple :
DynamicSprite* sprite = DynamicSprite.CreateFromExistingSprite(object[0].Graphic);
DrawingSurface *surface = sprite.GetDrawingSurface();
DynamicSprite *nouvelleSprite = DynamicSprite.CreateFromDrawingSurface(surface, 0, 0, 10, 10);
surface.Release();
sprite.Delete();
object[0].Graphic = nouvelleSprite.Graphic;

change l'image de l'objet 0 pour le simple coin haut-gauche (10×10) de l'ancienne image.

Compatibilité : Supporté par AGS 3.0.2 et les versions plus récentes.

Voir aussi : DynamicSprite.Delete


CreateFromExistingSprite

static DynamicSprite* DynamicSprite.CreateFromExistingSprite(int slot, optional bool preserverCanalAlpha)
Crée une nouvelle sprite dynamique contenant une copie de la sprite numéro slot spécifiée.

Retourne l'objet DynamicSprite représentant la nouvelle sprite. Cette fonction est utile puisqu'elle vous permet d'effectuer des modifications comme des redimensionnements sur toute sprite dans le jeu.

preserverCanalAlpha détermine si le canal Alpha de la sprite sera aussi copié. Vaut false par défaut, pour des raisons de rétro-compatibilité. Cette option est pratique puisqu'elle vous permet de gérer le canal alpha afin de rendre compte de toute la transparence de l'image. Ce paramètre n'a aucun effet si la sprite n'a pas de canal alpha.

Utilisez la propriété Graphic de la DynamicSprite pour utiliser l'image contenue dans les autres commandes et les manipuler dans le jeu.

IMPORTANT : Cette commande charge une sprite supplémentaire en mémoire qui n'est pas contrôlée par le cache classique d'AGS et qui ne sera pas automatiquement supprimée. C'est pourquoi, lorsque vous avez fini d'utiliser l'image, vous DEVEZ appeler Delete dessus pour libérer la mémoire.

IMPORTANT : Si l'objet DynamicSprite est supprimé de la mémoire (c'est-à-dire s'il n'y a plus de variable DynamicSprite* pointant vers l'image), alors la sprite sera aussi supprimée de la mémoire. Assurez vous que vous gardez une variable pointant vers la sprite jusqu'à ce que vous ayez fini de l'utiliser (vous appellerez alors Delete).

Exemple :
DynamicSprite* sprite = DynamicSprite.CreateFromExistingSprite(object[0].Graphic);
sprite.Resize(20, 20);
DrawingSurface *surface = Room.GetDrawingSurfaceForBackground();
surface.DrawImage(100, 80, sprite.Graphic);
surface.Release();
sprite.Delete();

crée une copie de la sprite actuelle de l'objet 0, la redimensionne à 20×20, puis dessine l'image obtenue sur l'arrière-plan.

Voir Aussi : DynamicSprite.Delete, DynamicSprite.Resize


CreateFromFile

(Formerly known as LoadImageFile, désormais obsolète)

static DynamicSprite* DynamicSprite.CreateFromFile(string nomfichier)

Charge une image NOMFICHIER externe dans la mémoire en tant que sprite.

Retourne l'objet DynamicSprite représentant la sprite, ou null si l'image n'a pas pu être chargée (fichier non trouvé ou format non supporté).

Seuls les fichiers BMP et PCX peuvent être chargés avec cette commande.

Utilisez la propriété Graphic de la DynamicSprite pour utiliser l'image contenue dans les autres commandes et les manipuler dans le jeu.

IMPORTANT : Cette commande charge une sprite supplémentaire en mémoire qui n'est pas contrôlée par le cache classique d'AGS et qui ne sera pas automatiquement supprimée. C'est pourquoi, lorsque vous avez fini d'utiliser l'image, vous DEVEZ appeler Delete dessus pour libérer la mémoire.

IMPORTANT : Si l'objet DynamicSprite est supprimé de la mémoire (c'est-à-dire s'il n'y a plus de variable DynamicSprite* pointant vers l'image), alors la sprite sera aussi supprimée de la mémoire. Assurez vous que vous gardez une variable pointant vers la sprite jusqu'à ce que vous ayez fini de l'utiliser (vous appellerez alors Delete).

Exemple :

DynamicSprite* sprite = DynamicSprite.CreateFromFile("AvatarPerso.bmp");
if (sprite != null) {
DrawingSurface *surface = Room.GetDrawingSurfaceForBackground();
surface.DrawImage(100, 80, sprite.Graphic);
surface.Release();
sprite.Delete();
}

chargera le fichier “AvatarPerso.bmp” et si tout s'est bien passé, desinera l'image vers le milieu de l'écran.

Une fois qu'on a fini d'utiliser l'image, Delete est utilisée sur la sprite.

Voir Aussi : DynamicSprite.Delete, DynamicSprite.CreateFromSaveGame


CreateFromSaveGame

(Anciennement LoadSaveSlotScreenshot, désormais obsolète)

static DynamicSprite* DynamicSprite.CreateFromSaveGame
(int slotSauvegarde, int largeur, int hauteur)

Charge la capture d'écran de la partie sauvée à l'emplacement SLOTSAUVEGARDE en mémoire, en la redimensionnant à LARGEUR x HAUTEUR.

Retourne l'objet DynamicSprite correspondant à l'image si tout s'est bien passé, ou retourne null si la capture d'écran n'a pas pu être chargée (si la partie sauvée n'en contenait pas par exemple).

Pour que cela fonctionne, l'option “Sauver les captures d'écran dans les sauvegardes des parties” (“Save screenshots in save games”) doit être cochée dans le panneau principal Game Settings.

IMPORTANT : Cette commande charge une sprite supplémentaire en mémoire qui n'est pas contrôlée par le cache classique d'AGS et qui ne sera pas automatiquement supprimée. C'est pourquoi, lorsque vous avez fini d'utiliser l'image, vous DEVEZ appeler Delete dessus pour libérer la mémoire.

IMPORTANT : Si l'objet DynamicSprite est supprimé de la mémoire (c'est-à-dire s'il n'y a plus de variable DynamicSprite* pointant vers l'image), alors la sprite sera aussi supprimée de la mémoire. Assurez vous que vous gardez une variable pointant vers la sprite jusqu'à ce que vous ayez fini de l'utiliser (vous appellerez alors Delete).

Exemple :

// tout en haut du script, hors des interactions
DynamicSprite *boutonSprite;  

// dans une interaction
boutonSprite = DynamicSprite.CreateFromSaveGame(1, 50, 50);
if (boutonSprite != null) {
btnScrnshot.NormalGraphic = boutonSprite.Graphic;
}

chargera la capture d'écran de la première partie sauvegardée et la redimensionnera à 50×50. L'utilisera ensuite comme image pour le bouton de GUI btnScrnshot.

Ceci fait, Delete est appelée sur la sprite pour libérer la mémoire.

Voir Aussi : DynamicSprite.Delete, Game.GetSaveSlotDescription, DynamicSprite.CreateFromFile, DynamicSprite.CreateFromScreenShot


CreateFromScreenShot

static DynamicSprite* DynamicSprite.CreateFromScreenShot
(optional int largeur, optional int hauteur)
Crée un nouvel objet DynamicSprite contenant une copie de la capture d'écran actuelle, en la redimensionnant à LARGEUR x HAUTEUR. Si vous n'entrez pas la largeur et la hauteur, alors une sprite de plein écran sera créée.

Cette commande peut être utilie si vous créez un GUI affichant des captures d'écran de parties sauvées, dans l'intention d'afficher la position dans la partie corresondant aux emplacements de sauvegarde.

IMPORTANT : Cette commande charge une sprite supplémentaire en mémoire qui n'est pas contrôlée par le cache classique d'AGS et qui ne sera pas automatiquement supprimée. C'est pourquoi, lorsque vous avez fini d'utiliser l'image, vous DEVEZ appeler Delete dessus pour libérer la mémoire.

NOTE : Cette commande peut être lente si vous utilisez le pilote graphique Direct3D.

IMPORTANT : Si l'objet DynamicSprite est supprimé de la mémoire (c'est-à-dire s'il n'y a plus de variable DynamicSprite* pointant vers l'image), alors la sprite sera aussi supprimée de la mémoire. Assurez vous que vous gardez une variable pointant vers la sprite jusqu'à ce que vous ayez fini de l'utiliser (vous appellerez alors Delete).

Exemple :
// tout en haut du script, hors des interactions
DynamicSprite *boutonSprite;  

// dans une interaction
boutonSprite = DynamicSprite.CreateFromScreenShot(80, 50);
if (boutonSprite != null) {
btnScrnshot.NormalGraphic = boutonSprite.Graphic;
}

utilise la capture d'écran de la partie actuelle comme image du bouton btnScrnshot.

Ceci fait, Delete est appelée sur la sprite pour libérer la mémoire.

Voir Aussi : DynamicSprite.Delete, Game.GetSaveSlotDescription, DynamicSprite.CreateFromFile, DynamicSprite.CreateFromSaveGame


ChangeCanvasSize

DynamicSprite.ChangeCanvasSize(int largeur, int hauteur, int x, int y);
Change la taille de la sprite pour largeur x hauteur , et décale l'image actuelle vers (x, y) dans le nouveau cadre. Contrairement à la commande Resize, l'image obtenue par cette commande garde sa taille originale.

Cette fonction vous permet d'élargir l'arrière-plan de la sprite pour avoir plus de surface sur laquelle dessiner par rapport à son ancien cadre. C'est en fait l'opposé de la commande Crop. La surface additionnelle sera transparente.

La largeur et la hauteur sont spécifiées en résolution 320×200.

Exemple :
DynamicSprite* sprite = DynamicSprite.CreateFromExistingSprite(10);
sprite.ChangeCanvasSize(sprite.Width + 10, sprite.Height, 5, 0);
DrawingSurface *surface = sprite.GetDrawingSurface();
surface.DrawingColor = 14;
surface.DrawLine(0, 0, 5, surface.Height);
surface.Release();
sprite.Delete();

crée une sprite dynamique qui est une copie de la sprite 10, l'élargie de 5 pixels à gauche et à droite, puis dessine une ligne dans la nouvelle zone sur la gauche.

Voir aussi : DynamicSprite.Crop, DynamicSprite.Resize, DynamicSprite.Height, DynamicSprite.Width


CopyTransparencyMask

DynamicSprite.CopyTransparencyMask(int depuisSprite)
Copie le masque de transparence depuis le numéro de sprite spécifié vers la sprite dynamique. La transparence de la sprite dynamique et/ou son canal alpha seront remplacés par celle de l'autre sprite.

Cette commande est conçue pour les effets spéciaux. C'est assez lent puisqu'elle implique de scruter chaque pixel de l'image, il n'est donc pas recommander de l'utiliser souvent.

La sprite source doit être de la même dimension et de la même profondeur de couleur que la sprite dynamique.

NOTE : Cette commande rend tous les pixels qui sont transparents dans la sprite source également transparents dans la sprite dynamique. Elle ne rend pas opaques les pixels de la sprite dynamique qui sont opaques dans la sprite source (il n'y aurait pas moyen de savoir quelle couleur leur donner).

Si l'image source a un canal alpha, alors la sprite dynamique se verra créer un canal alpha qui sera un copie de la sprite source.

Exemple :
DynamicSprite* sprite = DynamicSprite.CreateFromExistingSprite(10);
sprite.CopyTransparencyMask(11);
object[0].Graphic = sprite.Graphic;
Wait(80);
sprite.Delete();

crée une sprite dynamique qui sera une copie de la sprite 10, change son masque de transparence pour utiliser celle de la sprite 11, et l'affiche sur l'objet 0.

Voir aussi : DynamicSprite.CreateFromExistingSprite


Crop (dynamic sprite)

DynamicSprite.Crop(int x, int y, int largeur, int hauteur);
Rogne l'image à largeur x hauteur, en commençant aux coordonnées (X,Y) de l'image. La largeur et la hauteur sont spécifiées dans la résolution 320×200, comme d'habitude.

Ceci vous permet d'équilibrer les bords de la sprite, et d'effectuer des tâches correspondantes. Seule la zone allant de (X,Y) (coin haut gauche) et d'une largeur de LARGEUR ainsi que d'une hauteur de HAUTEUR sera conservée.

Exemple :
DynamicSprite* sprite = DynamicSprite.CreateFromFile("AvatarPerso.bmp");
sprite.Crop(10, 10, sprite.Width - 10, sprite.Height - 10);
DrawingSurface *surface = Room.GetDrawingSurfaceForBackground();
surface.DrawImage(100, 100, sprite.Graphic);
surface.Release();
sprite.Delete();

chargera l'image AvatarPerso.bmp, en coupera les 10 premiers pixels des bords haut et gauche, puis dessinera l'image résultant aux coordonnées (100,100) de l'arrière-plan.

Voir Aussi : DynamicSprite.Flip, DynamicSprite.Height, DynamicSprite.Width


Delete (dynamic sprite)

(Anciennement DeleteSprite, désormais obsolète)

DynamicSprite.Delete();

Supprime la sprite dynamique spécifiée de la mémoire. Utilisez ceci lorsque vous n'affichez plus la sprite et qu'elle peut être supprimée en toute sûreté.

En temps normal, vous ne devriez pas avoir à supprimer les sprites, puisque le Cache de Sprite d'AGS se charge lui-même de charger et de supprimer automatiquement les sprites.

Cependant, lorsque d'une sprite externe a été chargée dans le jeu (par exemple, avec les commandes CreateFromFile ou CreateFromScreenShot), AGS ne la supprimera pas automatiquement, et vous devrez alors appeler cette commande.

Exemple :

DynamicSprite* sprite = DynamicSprite.CreateFromFile("AvatarPerso.bmp");
object[1].Graphic = sprite.Graphic;
Wait(200);
object[1].Graphic = 22;
sprite.Delete();

chargera le fichier “AvatarPerso.bmp”, utilisera cette image pour l'objet 1, attendra 5 secondes, puis réutilisera l'ancienne sprite 22 pour l'objet 1 et libérera la sprite.

Voir Aussi : DynamicSprite.CreateFromScreenShot, DynamicSprite.Graphic


Flip (dynamic sprite)

DynamicSprite.Flip(eFlipDirection);
Retourne la sprite dynamique selon les paramètres :

eFlipLeftToRight pivote l'image de gauche à droite

eFlipUpsideDown pivote l'image de haut en bas

eFlipBoth pivote l'image de haut en bas et de gauche à droite

Exemple :

DynamicSprite* sprite = DynamicSprite.CreateFromFile("AvatarPerso.bmp");
sprite.Flip(eFlipUpsideDown);
DrawingSurface *surface = Room.GetDrawingSurfaceForBackground();
surface.DrawImage(100, 100, sprite.Graphic);
surface.Release();
sprite.Delete();

chargera l'image AvatarPerso.bmp, la retournera de haut en bas, puis la dessinera aux coordonnées (100,100) de l'arrière-plan.

Voir Aussi : DynamicSprite.Crop, DynamicSprite.Resize, DynamicSprite.Rotate


GetDrawingSurface (dynamic sprite)

DrawingSurface* DynamicSprite.GetDrawingSurface();
Retourne la surface de dessin de la sprite dynamique, ce qui vous permet de modifier la sprite en dessinant dessus de diverses façons.

Après avoir appelé cette méthoe, utilisez les différentes fonctions DrawingSurface pour modifier la sprite, puis appelez Release sur la surface lorsque vous en avez terminé.

Exemple :
DynamicSprite *sprite = DynamicSprite.CreateFromExistingSprite(object[0].Graphic);
DrawingSurface *surface = sprite.GetDrawingSurface();
surface.DrawingColor = 13;
surface.DrawLine(0, 0, 20, 20);
surface.Release();
object[0].Graphic = sprite.Graphic;
Wait(40);
sprite.Delete();

ceci crée une sprite dynamique qui sera une copie de la sprite de l'objet 0, dessine une ligne diagonale rose dessus, place cette nouvelle sprite sur l'objet pour une seconde puis la supprime.

Voir aussi : DynamicSprite.CreateFromExistingSprite, DrawingSurface.DrawLine, DrawingSurface.Release


Resize (dynamic sprite)

DynamicSprite.Resize(int largeur, int hauteur);
Redimensionne une sprite dynamique existante à LARGEUR x HAUTEUR pixels.

La largeur et la hauteur sont spécifiées selon la résolution 320×200, comme d'habitude.

NOTE : Le redimensionnement est une opération relativement lente, donc n'essayer pas de redimensionner des sprites à chaque cycle de jeu, mais seulement lorsque c'est nécessaire.

Exemple :
DynamicSprite* sprite = DynamicSprite.CreateFromFile("AvatarPerso.bmp");
sprite.Resize(sprite.Width * 2, sprite.Height * 2);
DrawingSurface *surface = Room.GetDrawingSurfaceForBackground();
surface.DrawImage(100, 100, sprite.Graphic);
surface.Release();
sprite.Delete();

chargera l'image AvatarPerso.bmp, doublera sa taille, puis la dessinera sur l'arrière-plan aux coordonnées (100,100) de la pièce.

Voir Aussi : DynamicSprite.Crop, DynamicSprite.Flip, DynamicSprite.Rotate, DynamicSprite.Height, DynamicSprite.Width


Rotate (dynamic sprite)

DynamicSprite.Rotate(int angle, optional int largeur, optional int hauteur)
Effectue une rotation sur l'image de la sprite avec l'angle spécifié. L'angle est en degrés, et doit être entre 1 et 359. La rotation se fera dans le sens horaire avec l'angle spécifié.

Facultativement, vous pouvez spécifier la largeur et la hauteur pour l'image résultat. Par défaut, AGS caclulera automatiquement la nouvelle taille nécessaire pour contenir l'image, mais vous pouvez le faire vous-même en entrant ces paramètres.

Notez que spécifier largeur et hauteur ne redimensionne pas l'image, cela permet juste de définir la zone qu'utilisera l'image une fois la rotation effectuée.

NOTE : La rotation est une opération relativement lente, essayez donc de ne pas l'appeler à chaque cycle de jeu ; mais seulement lorsque c'est nécessaire.

Exemple :
DynamicSprite* sprite = DynamicSprite.CreateFromFile("AvatarPerso.bmp");
sprite.Rotate(90);
DrawingSurface *surface = Room.GetDrawingSurfaceForBackground();
surface.DrawImage(100, 100, sprite.Graphic);
surface.Release();
sprite.Delete();

chargera l'image AvatarPerso.bmp, effectuera une rotation de 90 degrés dans le sens horaire dessus, dessinera le résultat à l'écran, puis supprimera la sprite.

Voir Aussi : DynamicSprite.Flip, DynamicSprite.Resize, DynamicSprite.Height, DynamicSprite.Width


SaveToFile (dynamic sprite)

DynamicSprite.SaveToFile(string nomfichier)
Sauvegardera la sprite dynamique dans le fichier spécifié.

L'extension du nom de fichier que vous spécifiez doit être .PCX ou .BMP ; ce sont les deux seuls types de fichier que la machine supporte.

Retourne 1 si la sprite a bien été sauvegardée, ou 0 si l'opération a été un échec.

Exemple :
DynamicSprite* sprite = DynamicSprite.CreateFromFile("AvatarPerso.bmp");
sprite.Rotate(90);
sprite.SaveToFile("AvatarPivote.bmp");
sprite.Delete();

chargera l'image AvatarPerso.bmp, effectuera une rotation de 90 degrés dans le sens des aiguilles d'une montre, puis sauvera le résultat en créant le fichier AvatarPivote.bmp sur le disque.

Voir Aussi : DynamicSprite.CreateFromFile, SaveScreenShot


Tint (dynamic sprite)

DynamicSprite.Tint(int rouge, int vert, int bleu, int saturation, int luminosite)
Teinte la sprite dynamique pour (ROUGE, VERT, BLEU) avec une saturation de SATURATION pour-cents. Pour la signification des paramètres, voir SetAmbientTint.

La teinte définie par cette fonction est permanente pour les sprite dynamique – une fois que la teinte a été définie, il n'est pas possible de l'annuler. Si vous appelez à nouveau Tint avec des paramètres différents, la nouvelle teinte sera appliquée sur la sprite déjà teinte par le premier appel.

NOTE : Cette fonction ne fonctionne que sur les sprites en hautes couleurs.

Exemple :
DynamicSprite* sprite = DynamicSprite.CreateFromExistingSprite(object[0].Graphic);
sprite.Tint(255, 0, 0, 100, 100);
DrawingSurface *surface = Room.GetDrawingSurfaceForBackground();
surface.DrawImage(100, 80, sprite.Graphic);
surface.Release();
sprite.Delete();

crée une copie de la sprite de l'objet 0, la teint en rouge puis la dessine sur l'arrière-plan de la pièce.

Voir aussi : DynamicSprite.Flip, DynamicSprite.Height, DynamicSprite.Width, SetAmbientTint


ColorDepth propriété (dynamic sprite)

readonly int DynamicSprite.ColorDepth;
Retourne la profondeur des couleurs de la sprite dynamique. Elle peut valoir 8, 16 ou 32 et n'est pas nécessairement la même que celle du jeu (bien que ce soit usuellement le cas).

Exemple :
DynamicSprite* sprite = DynamicSprite.CreateFromFile("AvatarPerso.bmp");
if (sprite != null) {
Display("L'image est d'une taille de %d x %d pixels et d'une profondeur de %d-bit.", sprite.Width, sprite.Height, sprite.ColorDepth);
sprite.Delete();
}

affiche la profondeur des couleurs de l'image AvatarPerso.bmp ainsi que sa taille.

Voir Aussi : DynamicSprite.Height, DynamicSprite.Width


Graphic propriété (dynamic sprite)

readonly int DynamicSprite.Graphic;
Retourne le numéro de l'emplacement de sprite dans lequel la sprite dynamique est contenue. Cette valeur peut être passée aux autres fonctions et propriétés, comme par exemple Button.NormalGraphic.

Exemple :
DynamicSprite* ds = DynamicSprite.CreateFromScreenShot(50, 50);
DrawingSurface *surface = Room.GetDrawingSurfaceForBackground();
surface.DrawImage(100, 100, sprite.Graphic);
surface.Release();
ds.Delete();

charge la capture d'écran, puis la dessine aux coordonnées (100,100) de la pièce, sur l'arrière-plan.

Voir Aussi : DynamicSprite.CreateFromScreenShot, DynamicSprite.Delete


Height propriété (dynamic sprite)

readonly int DynamicSprite.Height;
Retourne la hauteur de la sprite dynamique. La hauteur est toujours retournée en résolution 320×200.

Exemple :
DynamicSprite* sprite = DynamicSprite.CreateFromFile("AvatarPerso.bmp");
if (sprite != null) {
Display("L'image est d'une taille de %d x %d pixels.", sprite.Width, sprite.Height);
sprite.Delete();
}

affiche la taille de l'image AvatarPerso.bmp.

Voir Aussi : DynamicSprite.Resize, DynamicSprite.Width


Width propriété (dynamic sprite)

readonly int DynamicSprite.Width;
Retourne la largeur de la sprite dynamique. La largeur est toujours retournée en résolution 320×200.

Exemple :
DynamicSprite* sprite = DynamicSprite.CreateFromFile("AvatarPerso.bmp");
if (sprite != null) {
Display("L'image est d'une taille de %d x %d pixels.", sprite.Width, sprite.Height);
sprite.Delete();
}

affiche la taille de l'image AvatarPerso.bmp.

Voir Aussi : DynamicSprite.Height, DynamicSprite.Resize

 
ags51.1304069149.txt.gz · Dernière modification: 29/04/2011 11:25 par kitai
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki