Animation de Sprite avec LayeredWindow

Description

Cette fois je vous propose un code qui permet l'animation de Sprite
mais d'une manière un peu différente des méthodes présentées ailleurs.

En effet dans cet exemple j'utilise les LayeredWindow ou couche ou calque selon ...
pour afficher et animer un Sprite:
Un sprite, ou lutin, est dans le jeu vidéo un élément graphique qui peut se déplacer sur l'écran. En principe, un sprite est en partie transparent, et il peut être animé (en étant formé de plusieurs images matricielles qui s'affichent les uns après les autres).
Sprite (jeu vidéo)source — Wikipédia

le code fonctionne sur toutes les versions de Delphi à partir de D7.
(pour les versions de Delphi qui ne possèdent pas la pngLib (avant D2009) une version est présente dans le Zip)

Alpha.exe lance un des 3 Sprites au hasard
Alpha.exe 0 lance le premier Sprite
Alpha.exe all lance les 3
pour quitter appuyez sur échappe
d'autres touches de contrôle sont disponibles (voir le code)

les images sont des png (à la base) converti en bitmap32 bits (avec canal Alpha)
ce qui permet une transparence totale du fond (avec le canal Alpha) mais permet aussi
de varier sur la transparence du Sprite lui même
cette dernière est assignée aléatoirement pour l'exemple ...

Si vous lancez plusieurs instances d'Alpha.exe vous n'aurez pas la même vitesse
d'animation ni le même niveau de transparence.

Contrairement à ce que l'on pourrait croire ça ne consomme pas tant de ressources que cela ;)


Et vous pouvez même les tester avec une vidéo en guise de fond

Comme toujours si vous avez des bugs, des suggestions, ou autres avis
laissez un message ... Merci



--
    
@+ Cirec

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.