25 janvier 2023

Création d’un petit outil

Dans mon usage de Unity, il m’arrive parfois de vouloir produire une sprite depuis une animation réalisée depuis After Effect. Une sprite est une image contentant une série d’images pour la réalisation d’une animation. La sprite est utilisée dans les moteurs de jeu pour produire des animations de personnages ou de décor en 2D. Or After Effect ne permet pas de faire des exports en sprite mais en chutier d’images ( dossier contenant chaque frame d’animation). Il existe un outil pour passer de chutier à sprite nommer GlueIT mais qui ne fonctionne que sur PC.

exemple de sprite (extrait de Braid)

J’ai donc cherché à reproduire cet outil dans un environnement mac. J’ai donc produit un petit outil en python utilisant tkinter pour l’interface et pillow pour la création d’image. J’avais déjà réalisé un petit outil de ce genre pour trammer des image avec une tramme de bayer il y a deux ans, en python aussi … ça m’avait permis de comprendre que c’est un enfer pour produire des interfaces en python !

L’interface est donc minimal et pas très ergonomique, mais ça fonctionne et l’utilitaire pèse dans les 10mo (La construction d’une interface avec Electron par exemple aurait été beaucoup plus longue et fastidieuse et aurait produit un executable beaucoup plus lourd). Le code source est disponible sur github (J’ai aussi ajouté le système de création de sprite sans interface, réutilisable par des tiers) et l’application est aussi téléchargeable depuis github à cette adresse.