16 Couleurs

16 Couleurs – graphisme & jeu vidéo


5 Commentaires

Making of de Red Eyes sur Sega Mega Drive

Crédit photo : @marexpo

En janvier 2019, Remute, musicien électro basé à Hambourg, annonçait la sortie au mois de mars de Technoptimistic, un album pour la Mega Drive exclusivement disponible en édition physique, une bonne vieille cartouche donc. Outre les pistes de musique elles-mêmes, on y trouverait une interface de type music-disk et un clip vidéo pour le morceau Red Eyes qui tournerait en temps réel sur la console. Pour cela, un an auparavant il avait fait appel à Kabuto (le programmeur derrière la majorité du code de la très impressionnante démo de Titan pour la Mega Drive, Overdrive 2) et à moi-même pour la partie graphique. Difficile de refuser ce genre d’opportunité !

Graphismes 2D

Je commence par la partie la plus classique où il s’est surtout agit de garder en tête les capacités graphiques de la 16 bit de Sega, qui fête ses 30 ans cette année d’ailleurs : une résolution de 320×224 et jusqu’à 64 couleurs par plan (16 couleurs par tile) à choisir parmi une palette de seulement 512 couleurs (8 niveaux par composante RGB, comme ce bon vieil Atari STF). Pour produire les images j’ai utilisé Grafx2 qui est souvent la meilleure solution pour les plateformes old school grâce à ses fonctionnalités spécifiques.

Grafx2

Pour obtenir la trame assez originale du halo derrière le logo et d’autres éléments, j’ai eu recours à mon couteau suisse habituel, Imagemagick, ce dernier permettant en effet de générer des types de tramages sur mesure de bonne facture (voir à la fin du billet pour les instructions détaillées). À l’inverse, les résultats obtenus avec les algorithmes de Photoshop (diffusion, noise…) sont souvent décevants à cause du petit nombre de teintes disponible dans la palette de la Mega Drive.

Graphismes 3D

Le secret de cette partie c’est que la Mega Drive n’affiche pas réellement des scènes 3D comme on pourrait le croire à première vue, mais uniquement des polygones en 2D. Une technique similaire avait été utilisée par Oxygene pour leur démo STNICCC 2000 sur Atari ST. Tous les calculs de perspective, d’occlusion ou autres sont donc effectués auparavant. Pour autant, ça ne permet pas de s’affranchir des contraintes en matière de palette et surtout de complexité des scènes, puisque afficher des centaines de polygones, même 2D, à 25 images par seconde sur une machine qui n’a absolument pas été conçue pour afficher autre chose que des sprites et des tiles nécessite beaucoup de calculs et d’optimisation.

Nous avons discuté la possibilité d’utiliser un éclairage dynamique mais avons préféré y renoncer de peur que le résultat soit décevant au vu de la palette de couleurs limitée. Pour maintenir des performances correctes, je me suis efforcé de me limiter à quelques centaines de polygones généralement, qui est suffisamment léger mais permet néanmoins d’obtenir des scènes intéressantes. Au final le framerate des différentes séquences est bien meilleur qu’espéré initialement grâce aux talents d’optimisation de Kabuto. Pour plus de détails sur le fonctionnement du moteur de rendu des polygones, je ne peux que vous conseiller de vous référer aux explications très détaillés qu’il a écrites.

Blender

L’animation 3D a été entièrement modélisée et animée avec Blender avec l’objectif de générer une séquence d’images directement compatible avec les capacités de la Mega Drive : résolution et palette exactes, pas d’antialiasing, 16 couleurs par image maximum. Les valeurs RGB des matériaux ont été copié de Grafx2 pour s’assurer qu’elles étaient toutes compatibles avec la palette de 512 couleurs. Après avoir validé le workflow grâce à un petit test avec un vaisseau spatial relativement complexe, le temps était venu de se retrousser les manches et de commencer le travail sur les scènes 3D. J’avais une bonne idée du thème général, mais beaucoup d’idées sont apparues après avoir commencé à travailler sur les premières séquences, celles de la poursuite dans le désert. Remute m’a laissé carte blanche, ce qui est toujours un énorme avantage, avec comme seule requête la présence dans l’animation du robot qu’on aperçoit sur un des extraits vidéo au début du clip. Les sources d’inspiration ont été très variées, de WipeOut pour les vaisseaux évidemment, à Blade Runner et Total Recall pour l’ambiance générale, jusqu’au hangar à dirigeables d’Écausseville.

Le gros avantage quand on utilise une caméra fixe, à l’opposé d’une caméra repositionnable comme généralement dans les jeux 3D, c’est qu’on peut énormément tricher pour parvenir au résultat souhaité, avec à la clé des grosses économies en matière de polygones ou encore mieux, de temps. L’astuce la plus fréquente est l’utilisation de billboards, des formes 2D qui sont alignées avec la caméra, en lieu et place d’objets modélisés en 3D : la silhouette du personnage dans le hangar, les montagnes à l’extérieur, etc. Autre exemple, lors de la plupart des scènes où les véhicules semblent se déplacer, c’est généralement juste le décor qui défile en dessous, comme un tapis roulant, ce qui simplifie énormément la structure de ces séquences.

Storyboarder

À mesure que l’animation gagnait en complexité, il m’est rapidement apparu que j’allais avoir besoin d’un système pour maintenir une vue d’ensemble de toutes les scènes (21 initialement, chacune un fichier Blender différent – pas forcément l’organisation la plus efficace…) et de la durée totale de l’animation. J’ai pour cela utilisé Storyboarder, un logiciel gratuit de storyboard qui a parfaitement joué son rôle.

L’animation 3D devait durer exactement 85 secondes pour être en phase avec la musique. J’avais à peu près 10 secondes de rab après avoir animé toutes les scènes et il fallait donc en supprimer ou raccourcir certaines. J’ai pu économiser beaucoup de temps pour cette dernière étape en découvrant qu’on pouvait importer et exporter des séquences de PNG dans Adobe Premiere Pro, où réorganiser des séquences se fait de manière très visuelle.

Premiere Pro

Même si la masse de travail a été plus importante que prévue initialement, j’ai beaucoup apprécié travailler sur ce projet et suis fier du résultat obtenu. Nous avons réalisé quelque chose d’inédit sur Mega Drive tout en développant en 1 minute 30 une petite histoire que j’espère divertissante dans un univers cohérent.

La sortie d’une production sur support physique est rare aujourd’hui et le fait de voir la cartouche apparaître aux 4 coins du globe est un motif de satisfaction supplémentaire. Espérons que ces collectionneurs continueront d’apprécier l’album pour de nombreuses années.

crédit image : Remute

D’un point de vue plus personnel j’ai évidemment apprécié cet équilibre presque parfait entre contraintes techniques et liberté artistique. La mise en scène et le cadrage de séquences animées sont des domaines assez nouveaux pour moi et m’y frotter a été très intéressant. Enfin cela m’aura permis d’approfondir mes connaissances de Blender et de travailler dans des conditions inédites, comme pour la dernière scène avec le robot, réalisée sur une petite Surface Go lors d’un vol transcontinental.

Enfin si vous êtes à Londres le 22 juin, je ferai une petite présentation sur mon travail sur Red Eyes au London Blender Day.


Voici la ligne de commande Imagemagick que j’ai utilisé pour le tramage avec colorisation avec la palette Megadrive :

convert input.png -ordered-dither hlines2x2a,6 +remap md_pal.gif output.png

Il faut aussi éditer le fichier thresholds.xml dans le répertoire d’Imagemagick pour y ajouter les nouveaux effets de trame. Plus d’information ici.

<threshold map="hlines2x2a">
<description>Horizontal Lines 2x2 (bounds adjusted)</description>
<levels width="2" height="2" divisor="10">
3 3
9 9
</levels>
</threshold>


2 Commentaires

Revision 2019 : lutins musiciens et auto-mitrailleuses

J’ai cette année fait le déplacement pour la Revision, la grand-messe de la demoscene qui attire 700 ou 800 personnes à Sarrebruck chaque année pendant le week-end de Pâques.

Ne voulant pas venir les mains vides, j’avais  prévu de présenter un graph oldschool, un graph « moderne », et un GIF animé. Objectif un peu trop ambitieux puisque du fait du manque de temps le GIF animé a dû passer à la trappe.

Life and Death of a Gnome, 320×256 32 couleurs

Ma contribution à la compétition Oldskool Graphics fut Life and Death of a Gnome, petite scène bucolico-fantastico-aigre-douce, une sorte de The Den version mais plus sombre pour annoncer l’approche de l’été. Côté technique, c’est exactement les caractéristiques de l’Amiga 500 avec une résolution de 320×256 pixels en 32 couleurs choisies parmi une palette de 4096, le tout entièrement réalisé sous Grafx2 si on exclut le croquis de départ sous Photoshop. Le tout représente une quinzaine d’heure de travail dont le dernier tiers dans des conditions un peu chaotiques à la Revision. L’image a terminé 4ème dans la compétition Oldskool Graphics.

Can’t Stop, Won’t Stop

Toujours à la pointe du progrès, j’ai aussi présenté une image dans la compétition Modern Graphics (une catégorie un peu fourre-tout qui regroupe images 2D, 3D et dessins et peintures sur papier) : Can’t Stop, Won’t Stop. Le travail a ici été effectué avec Blender, Photoshop et Leonardo. L’image a souffert d’un manque de temps assez évident mais je pense que ce concept de la Chine des années 20 ou 30 (période à laquelle le pays a sombré dans la guerre civile entre de nombreuses factions aux alliances changeantes) et des blindés de cette période a du potentiel. Je compte bien persévérer dans cette direction.

Qui dit Revision, dit une tripotée de releases d’excellentes qualité, ainsi je ne peux que vous recommander de regarder en particulier les contributions aux compétitions Amiga Démo, excellente cette année, Amiga Intro et PC 64k, 8k et 4k. Il y a beaucoup d’autres releases dans d’autres compétitions qui valent aussi le coup d’œil. Il y en a trop de bonnes pour les lister, mais vous pouvez découvrir le tout sur Demozoo.

 


Quelques notes techniques sur la réalisation du timelapse : comme pour la vidéo pour The Den, j’ai utilisé Autoscreen, FFMPEG et Shotcut pour la réaliser, mais entre les deux premières étapes, j’ai aussi passé les images à la moulinette ImageMagick pour éviter des problèmes de proportions lors du redimensionnement des images par FFMPEG. Pour plus de détails, voir les notes à la fin de mes explications de la dernière fois.


9 Commentaires

The Den, pixel art pour Atari STE

Une fois la décision prise d’assister à la demoparty Silly Venture qui s’est tenue à Gdansk en Pologne du 8 au 10 décembre, je ne voulais pas arriver les mains vides (même si j’avais déjà une démo Atari 2600 sur le feu), en particulier pour la compétition de graphs Atari ST dans laquelle j’ai eu l’occasion de participer en 2014 et 2016. Cette année ma contribution a terminé deuxième derrière une image de Carrion que je trouve très réussie.

The Den, Atari STE pixel art

The Den, image Atari STE pour la Silly Venture 2017 (taille doublée)

En plus d’être de saison, le thème me trottait dans la tête depuis longtemps, au point où j’avais envisagé de préparer une image un peu similaire, même si plus champêtre et plus estivale, pour la précédente édition de la Silly Venture.

Comme d’habitude pour la machine, l’image est en 320×200 pixels en 16 couleurs grace à la palette étendue de l’Atari STE (16 niveaux par composante rouge, verte et bleue pour un total de 4096 couleurs, à comparer aux maigres 512 couleurs des ST et STF). Le travail a pris à peu près 20 heures des premières ébauches sur papier jusqu’à l’image finale.

Pour la première fois pour moi, j’ai enregistré la totalité du processus de création en faisant une capture d’écran de Grafx2 toutes les deux secondes. Après la conversion des quelques 29000 images en une petite vidéo de 17 minutes, vous pouvez maintenant avoir un aperçu ma façon de travailler en 50 fois plus rapide. La bande son provient elle des diskmags Imphobia que je lisais il y a une vingtaine d’années et dont les musiques m’ont marqué durablement (pas trop de séquelles à part ça, merci).

Pour compenser mes lacunes en perspective et m’assurer que l’agencement de la pièce était physiquement possible en trois dimensions, j’ai utilisé comme référence un rendu 3D des formes de base, d’où la présence de la grille en début de vidéo quand j’esquisse les meubles.

L’avantage de ce genre de vidéo je pense est de se rappeler que les premières étapes d’un processus créatif ressemblent rarement à grand chose et que ce n’est qu’avec de l’huile de coude et de la patience qu’on arrive petit à petit à obtenir un résultat correct. L’important est donc de persévérer, comme l’écrivait si bien Boileau :

Hâtez-vous lentement, et sans perdre courage,
Vingt fois sur le métier remettez votre ouvrage,
Polissez-le sans cesse, et le repolissez,
Ajoutez quelquefois, et souvent effacez.

J’en profite pour vous souhaiter une bonne année 2018 à tous ! Si j’avais un vœu à formuler pour cette nouvelle année, ce serait de pouvoir dessiner aussi vite que sur la vidéo ci-dessus 🙂


6 Commentaires

L’Ankou, pixel art Sega Mega Drive pour la Revision 2017

Me voici de retour d’un week-end productif à Sarrebruck en Allemagne où se tenait la Revision, grosse demoparty traditionnellement tenue à Pâques et qui a pris le relais des mythiques Mekka & Symposium et Breakpoint (série qui dure depuis vingt ans quand même !).

L'Ankou (Sega Mega Drive pixel art)

Première release de ma part : une image au format Sega Mega Drive : 320×224 en 25 couleurs choisies dans une palette de 512, similaire à celle de l’Atari STF donc. Je n’avais jamais réalisé que le choix de couleurs sur la console de Sega était si limité (pour rappel, l’Amiga 500 ou l’Atari STE disposaient d’une palette de 4096 couleurs, et la Super Nintendo de 32 768), la preuve que les graphistes des jeux phares ont fait du bon boulot !

J’avais commencé à travailler sur cette image pour une démo Mega Drive qui est toujours en développement. C’est du domaine du secret défense donc je n’en dirai pas plus pour l’instant 😉

Le thème fait évidemment allusion à « l’ouvrier de la mort » dans le folklore breton (accessoirement c’est également l’un des personnages d’un album de Spirou et Fantasio). Son apparence précise varie considérablement selon les sources, ce qui laisse une place importante à la licence artistique.

Une fois de plus, j’ai utilisé uniquement Grafx2. Côté références, comme mes connaissances de la morphologie crânienne sont limitées, j’ai utilisé en plus des traditionnels ouvrages d’anatomie une petite application du nom de Handy qui permet d’observer des représentations 3D de visages et de mains sous tous les angles. C’est disponible sur Android, iOS et Windows 10 et je la recommande vu le prix modique.

L’image termine 2e dans la catégorie Oldskool Graphics ce qui fut une excellente surprise pour une image terminée sur place.

Étapes pour L'Ankou (pixel art Sega Mega Drive)

Quelques étapes de la réalisation


9 Commentaires

Forever 2017 : 8 bits et pas un de plus

Le week-end dernier se tenait la Forever 2017, traditionnelle demoparty exclusivement 8 bit qui se tient tous les ans depuis l’an 2000 en Slovaquie. Emplacement géographique oblige, l’événement est plutôt axé ZX Spectrum et Atari XL/XE avec une pincée de C64. Depuis quelques années on y découvre aussi généralement quelques productions Thomson. Cette année j’ai été plutôt productif puisque j’ai trouvé le temps de travailler sur 3 productions.

TO8 deMODed?

TO8 deMODed?

Commençons par le plus intéressant : un music-disk pour Thomson TO8/TO9, le premier depuis la sortie des machines il y a 30 ans ! L’absence de puce dédiée pour le son sur les Thomson rend très difficile la production de la moindre musique correcte, mais le group Puls a non seulement relevé le défi, mais en a profité pour trouver le moyen de jouer des fichiers MOD en provenance de l’Amiga ! Évidemment la qualité sonore est inférieure à celle d’un Amiga puisqu’on passe de samples en 8 bit et 28 kHz joué sur quatre canaux à du 4 bit et 5 kHz combiné sur une seule voie. Le résultat reste tout à fait écoutable et l’exploit technique est bien réel puisqu’on se retrouve avec un ordinateur 8 bit qui peut jouer plus d’une heure des meilleures musiques de l’Amiga à partir d’une seule disquette. Je vous conseille d’ailleurs de lire le compte-rendu plus en détail sur le site de Puls. Je me suis pour ma part chargé des visuels de l’interface en mode 320×200 avec les contraintes de bloc habituelles sur Thomson (deux couleurs maximum par bloc de 8×1 pixels). Par manque de temps j’ai utilisé des polices existantes : la très sympa 04b_11 par Yuji Oshimoto pour la liste des morceaux et une légère modification de Hand of Sean par Sean Johnson pour le titre.

Côté émulateurs, DCMOTO et Teo donnent de bons résultats. Il existe même un exécutable Windows qui permet de lancer le music-disk sans avoir à configurer l’émulateur.

 

Gone Fishin’

Gone Fishin' (Thomson TO8/TO9)

Une image réalisée pour la compétition « Other 8 bit GFX » dans le mode 160×200 avec 16 couleurs choisies parmi une palette de 4096. J’étais parti sur quelque chose de beaucoup plus complexe initialement, mais le manque de temps m’a fait changer de direction, sûrement pour le mieux.

 

Mad Deuche

Une autre image réalisée en vitesse, plutôt dans une optique « compo filler ». Là c’est du 320×200 16 couleurs, avec les contraintes de bloc habituelles mais avec la palette fixe du MO5. Il est probablement utile de préciser à ce stade que le thème de la party était « Mad Max the 8 bit road ». Bizarrement c’est cette image complétée en deux heures et demie qui aura eu les faveurs du public et qui termine première de la catégorie. Personnellement je préfère de loin celle du dessus mais les votes lors des demoparties révèlent souvent des surprises.

 


2 Commentaires

No Cigar

Voici ma deuxième contribution aux compétitions de la Silly Venture 2016 (mon image Atari ST Borregas Avenue étant la première). En l’occurrence il s’agit plus d’un délire que d’autre chose, un compofiller réalisé sur place dans des conditions pas vraiment optimales pour étayer la compétition de graphs Falcon qui reçoit généralement peu d’attention. L’image est en 320×240 et 256 couleurs.

No Cigar (pixel art 320x240, 256 couleurs)

No Cigar (pixel art 320×240, 256 couleurs)

Étant donné le peu de temps à ma disposition (deux heures), j’ai opté pour une technique que je qualifierais de « semi pixel art ». Après un croquis affreux (pas de tablette graphique) dans Photoshop, j’ai construit les silhouettes des formes de base avec Inkscape, un logiciel de dessin vectoriel gratuit et open source. J’ai ensuite exporté le résultat sous forme de bitmap puis réalisé tout l’ombrage et les détails à la main sous Grafx 2. De cette manière j’ai pu éviter d’avoir à faire manuellement l’anti-aliasing à l’extérieur du personnage qui prend toujours beaucoup de temps. L’effet de fumée aurait également été beaucoup plus long à réaliser en pur pixel art.

Étapes No Cigar

Différentes étapes : croquis, vectoriel, pixel art

No Cigar sur Demozoo

 


7 Commentaires

Borregas Avenue (image Atari STE)

Me voilà de retour la plus grosse demoparty consacrée aux machines Atari, la Silly Venture à Gdansk en Pologne. J’y ai présenté une image appelée Borregas Avenue qui a remporté la deuxième place dans la compétition Atari ST Graphics. C’est un assemblage de personnalités, jeux et consoles en rapport avec l’univers d’Atari, sorte d’hommage nostalgique à l’entreprise à travers les âges. De gauche à droite, j’espère que vous reconnaîtrez Tempest (arcade, 1981), Asteroids (arcade, 1979), Nolan Bushnell (co-fondateur et président d’Atari jusqu’en 1978), Midi Maze (Atari ST, 1987), Yars’ Revenge (Atari 2600, 1981), Jack Tramiel (président d’Atari de 1984 à 1996), la Lynx (version 2 ici, 1991) et les yeux du marketing de la Jaguar (1993). Le bâtiment en bas est l’ancien siège d’Atari au 1265 Borregas Avenue à Sunnyvale en Californie, que j’avais eu l’occasion d’apercevoir l’an dernier.

Borregas Avenue (Atari ST pixel art)

Borregas Avenue, version avec l’aspect ratio corrigé. Image originale (320×200) ici : https://16couleurs.files.wordpress.com/2016/11/borregasavenue1.png

Pour ce qui est de l’inspiration, je voulais réaliser une image dans le style de ces posters de films des années 80 qui combinaient plusieurs éléments (Blade Runner ou Moonwalker par exemple) avec un thème qui m’est cher et m’a semblé bien adapté à la philosophie de la Silly Venture 🙂

borregasavenuemockupL’image a été conçue pour être vue avec une résolution de 320×200 sur un écran 4/3 avec des pixels non pas carrés, mais légèrement étirés dans le sens de la hauteur, d’où un aspect un peu écrasé sur les écrans modernes. J’ai corrigé le ratio sur l’image affiché ci-dessus, mais la version originale est disponible ici. Atari ST oblige, l’image utilise 16 couleurs mais a recours à la palette étendue de l’Atari STE qui permet de choisir les teintes parmi un plus large éventail (4096 au lieu de 512, le luxe !).

Étant donné le style pour lequel j’avais opté, la première étape de la conception a été un peu différente de mes images habituelles puisque j’ai réalisé dans Photoshop un collage des visuels d’origine pour décider de la composition. Une fois cette étape validée, le reste du travail a été du pixel art plutôt classique avec quelques dizaines de milliers de clics de souris. J’ai veillé à sauvegarder beaucoup d’étapes lors de la réalisation de l’image pour pouvoir faire une petite animation du processus, visible ci-dessous.