CreateSprite()
Syntaxe
Resultat = CreateSprite(#Sprite, Largeur, Hauteur [, Options])Description
Crée un nouveau Sprite.
Arguments
#Sprite Le numéro d'identifiant du nouveau sprite.
#PB_Any peut être utilisé pour générer automatiquement ce numéro.Largeur, Hauteur Les dimensions du nouveau sprite, en pixels. Options (optionnel) Peut être une combinaison de (utiliser '|') #PB_Sprite_PixelCollision: Ajoute des informations spéciales pour gérer les collisions de pixels à travers SpritePixelCollision(). #PB_Sprite_AlphaBlending : Le sprite est créé avec un canal alpha (transparence), nécessaire pour utiliser DisplayTransparentSprite(). #PB_Sprite_Transparent : Le sprite est créé de manière totalement transparente (valeur du canal alpha définie sur 0). Si vous utilisez DrawingMode(), définissez #PB_DrawingMode_AllChannels sur SpriteOutput().
Valeur de retour
Renvoie une valeur non nulle si le sprite a été créé avec succès, zéro sinon.
Remarques
CreateSprite() doit être appelée dans le même thread où OpenScreen() a été appelé.
Exemple: CreateSprite et l'option de transparence
InitSprite() OpenWindow(0, 0, 0, 640, 480, "Sprite...", #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_ScreenCentered) If OpenWindowedScreen(WindowID(0), 0, 0, 640, 480, #True, 0, 0) CreateSprite(0, 64, 64, #PB_Sprite_AlphaBlending | #PB_Sprite_Transparent) If StartDrawing(SpriteOutput(0)) DrawingMode(#PB_2DDrawing_AllChannels) Circle(16, 16, 8, RGBA(255, 0, 0, 255)) ; cercle rouge opaque Circle(32, 32, 8, RGBA(0, 255, 0, 128)) ; cercle vert semi-transparent StopDrawing() EndIf Repeat Repeat ; Il est très important de traiter tous les événements restants dans la file d'attente à chaque image Event = WindowEvent() If Event = #PB_Event_CloseWindow End EndIf Until Event = 0 ClearScreen(RGB(0, 0, 0)) ; Un fond noir DisplayTransparentSprite(0, 300, 200) FlipBuffers() ForEver Else Debug "Impossible d'ouvrir l'écran fenêtré !" EndIf
Voir aussi
GrabSprite(), SpriteOutput()
OS Supportés
Tous