|
||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Voici un article présentant les meilleurs utilitaires du DP spécialement destinés à créer des programmes sources C à partir d'images IFF. Le programme illustrant l'article sur les BOB utilise la sortie produite par un tel utilitaire pour inclure directement dans le source, la définition du BOB. Il en existe plusieurs, dont voici illico presto ceux que nous pensons être les meilleurs. Sans oublier bien entendu le convertisseur de Denis Genot, promu utilitaire du mois dernier. ILBM2Image Sous ce répertoire de la disquette Fish 190 se cachent trois petits utilitaires, créés par Denis Green, d'un emploi fort aisé, permettant de créer et d'afficher des structures Image, au sens Intuition du terme. Pour vous en servir, rien de plus simple. Vous dessinez d'abord l'image voulue avec votre programme de dessin favori et vous la sauvegardez au format IFF (le fait que ce soit une page entière ou une simple brosse n'a aucune importance). Vous êtes dès lors prêt à traiter votre fichier IFF suivant trois méthodes différentes. Imaginons pour commencer que vous désiriez créer une bitmap correspondante à votre dessin, pour créer par exemple un BOB. Vous utiliserez dans ce cas ILBM2Image en utilisant la syntaxe suivante :
L'utilitaire générera alors un fichier toto.c qui n'est autre que la déclaration du tableau de UWORD correspondant à la bitmap :
Si maintenant vous désirez afficher sous Intuition une structure Image, vous aurez recours au programme ILBM2func, qui non seulement générera la bitmap associée, mais également la structure Image correspondante et la fonction d'affichage dans une fenêtre dont le nom est Window. La fonction système utilisée pour l'affichage est bien sûr DrawImage().
Ce qui donnera par exemple : ![]() ![]()
Le logiciel vous demande alors le nom du fichier ILBM (IFF) :
Saisissez "toto". GetCMap demande alors le nom du fichier à générer :
Par exemple :
Finalement, le résultat obtenu sera de la forme :
Comme vous pouvez le voir, l'utilisation de ces programmes est enfantine, pour un résultat nécessitant des heures d'un travail fastidieux lorsque accompli manuellement. Spright 1.2 Spright est un éditeur de sprites, créé par Todd Neumiller, qui permet de sauvegarder vos oeuvres sous forme de fichiers sources. Il s'agit d'un programme partagiciel que vous pourrez trouver sur la disquette Fish 484. ![]() Spright L'interface, très orientée Intuition, comporte deux boîtes : la première au centre de l'écran, permet de dessiner un sprite grossi quatre fois (pour faciliter de dessin). La deuxième boîte, sur le côté, affiche en permanence l'image taille réelle. Les fonctionnalités d'édition sont nombreuses.
Après avoir dessiné un sprite dans l'éditeur, il faut utiliser la fonction SAVE qui va générer le source en C dont voici un exemple.
Comme l'indique le commentaire, la hauteur du sprite est de 16 pixels. Spright sauvegarde à la fois la table des couleurs et l'image associée, qui je vous le rappelle, ne possède pas du tout la même organisation que celle d'une image bitmap. Image Editor 2.4 Ce programme, comme son nom l'indique, permet d'éditer directement des images afin de les sauvegarder sous forme de fichier source, en vue d'une inclusion dans un programme quelconque. ![]() Image Editor 2.4 L'utilisation d'Image Editor est des plus simples puisqu'une fois l'image dessinée, il suffit de sélectionner le gadget Disk pour sauvegarder votre travail sous la forme d'un source C ou, c'est là sa grande originalité, sous la forme d'un source assembleur. Au niveau de l'interface utilisateur, l'accès aux différentes fonctions peut se faire, soit grâce à la souris, soit par des raccourcis clavier, indiqués directement sur chaque gadget (exemple : "d" pour le gadget Disk). Il possède une ergonomie correcte. Au niveau des fonctionnalités, Image Editor, permet de dessiner des images d'une taille maxi de 166*58 en haute résolution ou 83*58 en basse. Le nombre de couleurs possible est de 16 au maximum. Outre les possibilités classiques que nous sommes en droit d'attendre d'un tel programme (tracé, gomme, remplissage de surface, choix des couleurs...), Image Editor permet également de charger une Image IFF ILBM ou simplement la palette de couleurs qui lui est associée. Petite déception toutefois, il faudra indiquer au pixel près la largeur et la hauteur de l'image que vous allez charger, ainsi que son nombre de plans de bits. Cette complication inutile est vraiment dommage, d'autant que toutes ces informations sont codées, bien évidemment, dans l'en-tête du fichier IFF. On se demande où voulait en venir le programmeur... Un examen rapide du source, montre la qualité et le soin apportés à la programmation. Aucune astuce n'est en effet utilisée et le programme se sort sans plantage de tous les problèmes qu'il peut rencontrer (comme un manque de mémoire par exemple). Je vous conseille de l'étudier, il en vaut la peine. Ce programme est disponible dans le domaine public, et plus précisément sur la disquette Fish 355. Il s'agit d'un logiciel partagiciel créé par Robert Junghans. Et les autres... Il existe bien entendu d'autres programme qui réalisent, avec plus ou moins de bonheur, ce travail. Je citerai, à titre informatif, les programmes suivants : CITAS 2.0 (Fish 475) Ce programme de Max Bithead convertit une image IFF en source assembleur ou C en vue de son pilotage par le Blitter. IFF2Src (Fish 420) IFF2src, de Jorrit Tyberghein, convertit des images IFF en source C ou assembleur, avec génération des plans de bits, masques Blitter, tables des couleurs. Il ne fonctionne que sous AmigaOS 2.0. BI (Fish 375) Ce petit programme de Terry Gintz convertit une brosse IFF ILBM en source C, tout simplement. IFF2C (Fish 316) Ce convertisseur d'image IFF en source C, créé par le duo français Gauthier Groult et Jean-Michel Forgeas, possède deux fonctionnalités intéressantes, la génération de commentaires associés à l'image et un calcul automatique des champs PlanePick et PlaneOnOff, nécessaires à l'utilisation de l'image par le GELS.
|