Page 1 sur 2

Animator V0.91

Publié : jeu. 27/mars/2014 23:39
par majikeyric
Yop!

Je ne sais pas si cela interessera quelqu'un...

Animator est une petite application qui se met en avant plan et vous permet
d'animer les différentes zones d'une image tout en dessinant en parallèle sur
cette image dans votre logiciel de dessin favori. Très utile si vous dessinez
une animation de sprites pour un jeu par exemple et que votre logiciel de dessin
n'a pas de fonction d'animation


Image

Pour charger l'image dans l'application, vous devez faire un Drag and Drop du
fichier dans le fenêtre (formats d'image acceptés: BMP, PNG et JPG).

Puis vous modifier les différents paramètres à l'écran:

Sprite width : Largeur de votre sprite en pixels
Sprite height: Hauteur de votre sprite en pixels
#Frames : Nombre de sprites composant votre animation
#Frames/sec : Vitesse de l'animation (en nombre d'images par seconde)
XPos of 1st frame : Coordonnées horizontale du coin haut gauche du premier sprite de l'animation
YPos of 1st frame : Coordonnées verticale du coin haut gauche du premier sprite de l'animation
Outlined frame : Si chaque sprite est entouré par un "rectangle" de 1 pixel, cocher la case

Le programme en déduit automatiquement toutes les zones à capturer pour créer l'animation.
Vous devez créer vos sprites en "planche", les uns à la suite des autres, délimités par des
rectangles de 1 pixel ou pas.
Arrivé en bout de ligne, vous devez recommencer en début de ligne suivante.
Les largeurs et hauteurs maximum des sprites sont de 128 pixels.

Vous avez à dispo, 4 boutons:

Play (raccourci touche : 'Entrée'): Joue l'animation
Stop (raccourci touche : 'Echap') : Arrête l'animation
+ (raccourci touche : '+' ) : Avance l'animation d'une image
- (raccourci touche : '-' ) : Recule l'animation d'une image

Le programme détecte quand l'image a été modifiée dans un autre application et recharge
automatiquement toute l'animation (même pendant qu'une animation est en cours).

Les images avec canal alpha (32 bit) sont prises en charge.

Lorsque vous sortez du programme tous les paramètres sont sauvegardés.

N'hésitez pas à me faire vos suggestions et retour de bugs...

lien:
http://majikeyric.free.fr/wordpress/?wp ... 5ob3RsaW5r

Re: Animator V0.90

Publié : ven. 28/mars/2014 0:00
par venom
Excellent, fonctionne très bien chez moi, rien a dire 8)
Simple mais efficace comme idée.






@++

Re: Animator V0.90

Publié : ven. 28/mars/2014 0:05
par majikeyric
Merci venom :)

Re: Animator V0.90

Publié : ven. 28/mars/2014 8:51
par Backup
Excellent :)

mes procedures ici :
http://www.purebasic.fr/french/viewtopi ... =6&t=14289

iront bien de concert avec ton prg :)
(tu peux meme les distribuer avec.... si tu veux ;) )

Bravo pour ce travail :)

Re: Animator V0.90

Publié : ven. 28/mars/2014 10:30
par falsam
Pas mal du tout. Une suggestion : Calculer automatiquement la largeur hauteur d'un sprite en fonction de la largeur hauteur et nombres de frame :)

Re: Animator V0.90

Publié : ven. 28/mars/2014 10:48
par kelebrindae
Bonne idée, ça peut être super-pratique!

Une suggestion d'amélioration éventuelle: mettre un slider sous l'animation pour zoomer sur cette dernière (pour les cas où on travaille sur des sprites de petite taille).

Re: Animator V0.90

Publié : ven. 28/mars/2014 18:00
par majikeyric
Merci Dobro, falsam et kelebrindae pour vos retour positifs :)

J'ai pas mal de projets PB en cours et c'est le premier que je termine vraiment (sans doute parce que c'est le plus petit).

@Dobro, oui merci je vais intégrer tes procédures dans l'archive.

@falsam, le problème c'est que dans une image, tu peux avoir les animations de plusieurs objects différents et de tailles différentes.
Une image ne correspond pas forcément à une seule animation.

@kelebrindae, c'est une bonne idée, je vais voir ça.

Re: Animator V0.90

Publié : ven. 28/mars/2014 19:23
par Huitbit
Bonne idée !

ça fonctionne très bien.
Jusqu'à maintenant, j'utilisais l'aperçu de windows et les flèches :mrgreen: (je sais, je suis une brute :lol: )

Si tu as d'autres projets comme ça, surtout, ne te retiens pas !

Hasta la vista !

Re: Animator V0.90

Publié : sam. 29/mars/2014 10:23
par Lemaquis
majikeyric, Bravo j'aime beaucoup ton programme

Re: Animator V0.90

Publié : sam. 29/mars/2014 17:37
par majikeyric
Merci Huitbit et Lemaquis :)

Re: Animator V0.91

Publié : sam. 29/mars/2014 20:47
par majikeyric
Fonction zoom ajoutée.

Re: Animator V0.91

Publié : lun. 31/mars/2014 9:09
par kelebrindae
Merci!

Je rencontre encore deux petits problèmes (cf. image ci-dessous):
- Si (à l'inverse de ma première demande) le sprite dépasse 128 pixels dans une dimension ou une autre, on ne peut plus utiliser l'outil; Penses-tu qu'il soit possible de redimensionner la zone de dessin ? (en laissant l'utilisateur redimensionner la fenêtre, par exemple => la zone de dessin s'adapterait dynamiquement à la place disponible).
- Les gadgets ne semblent pas aimer mon thème Windows...

Image

Re: Animator V0.91

Publié : mar. 01/avr./2014 17:13
par majikeyric
Permettre le redimensionnement de la fenêtre, je ne sais pas trop, faut que je vois.
Ou alors je crée un canvas plus grand que 128 pixels de coté...

Concernant l'affichage, n'aillant spécifié aucune fonte et taille par défaut pour les gadgets j'imagine que cela varie en fonction de l'OS. (c'est XP ?)

Re: Animator V0.91

Publié : mar. 01/avr./2014 22:02
par graph100
Il y a aussi le problème du zoom de la police sur window, pour les personnes à "mobilité réduite" : taille = 125% ou autre.
Il y a des topic qui traitent le soucis sur le fofo. Mais c'est un peu complexe pour une petite appli toute simple :D

Sinon, faire un canvas qui se redimensionne lors que la fenetre change de taille, c'est vraiment simple.

Code : Tout sélectionner

OpenWindow(0, 0, 0, 400, 400, "test", #PB_Window_ScreenCentered | #PB_Window_SizeGadget | #PB_Window_MaximizeGadget)

CanvasGadget(0, 10, 10, 380, 380)


Repeat
	event = WaitWindowEvent()
	
	
	If event = #PB_Event_SizeWindow
		ResizeGadget(0, #PB_Ignore, #PB_Ignore, WindowWidth(0) - 20, WindowHeight(0) - 20)
	EndIf
	
	
	If StartDrawing(CanvasOutput(0))
		w = OutputWidth()
		h = OutputHeight()
		Box(0, 0, w, h)
		
		If w > 15 And h > 15
			max = 1 + w * h / 8000
			
			For i = 1 To max
				Circle(Random(w - 10, 5), Random(h - 10, 5), 5, #Red)
			Next
		EndIf
		
		StopDrawing()
	EndIf
	
Until event = #PB_Event_CloseWindow

End

Re: Animator V0.91

Publié : mar. 01/avr./2014 23:37
par majikeyric
Merci graph100 :)
je ne pensais pas à la difficulté de redimensionner le canvas mais à tous les controls supplémentaires que cela impliquait, notamment avec le zoom (mais merci en tous cas).