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>


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


3 Commentaires

Livre : Service Games: The Rise and Fall of Sega

Un petit billet consacré à un ouvrage de plus dans la section geek de la bibliothèque : Service Games: The Rise and Fall of Sega (Enhanced Edition), de Sam Pethus et David Munoz. Le livre est sans surprise consacré à l’histoire du « vrai » Sega, celui  qui faisait du hardware, de la fin des années 60 à l’arrêt de la production de la Dreamcast en 2001.

Service Games - The rise and Fall of Sega

L’ouvrage est en fait basé sur une histoire de Sega rédigée par Sam Pethus pour son site web personnel, disponible en ligne gratuitement jusqu’à récemment. Avec l’aide de Kickstarter, David Munoz a pu réunir les fonds nécessaires à la rédaction d’une version enrichie, actualisée et corrigée, puis à la production d’éditions papier et électronique. C’est cette dernière que j’ai eu sous les yeux.

La majeure partie de l’ouvrage est consacrée à la Dreamcast, la Saturn et dans une moindre mesure à la Mega Drive, mais toutes les machines antérieures sont traitées trop rapidement. La division arcade est elle aussi évoquée superficiellement, alors que l’ADN de Sega provient en grande partie de là. Les auteurs étant américains, le livre se concentre logiquement beaucoup sur la maison mère japonaise et Sega of America, même si on a la bonne surprise de découvrir un chapitre sur Sega Europe à la fin, malheureusement peu documenté et complètement déconnecté du reste de l’ouvrage. Un des thèmes récurrents du livre dépeint Sega of America comme une petite structure aux moyens limités qui fait des pieds et des mains pour satisfaire le public américain alors que Sega Japan accumule les bourdes puis, moitié par incompétence, moitié par jalousie, torpille sa filiale américaine et se fait hara-kiri par la même occasion. Polémique et discutable.

La demoscène a droit à une mention dans l’un des chapitres consacrés à la Dreamcast puisque la démo A.G.E de Hitmen (appelée par erreur « A.E.G » par les auteurs), sortie en avril 2000, est présentée comme le premier programme non-officiel tournant sur Dreamcast.

Le dernier chapitre comprend de rapides entretiens avec trois membres de WaterMelon, un groupe de développeurs qui réalise encore aujourd’hui des jeux commerciaux pour Mega Drive et Super Nintendo ! Les interviews arrivent un peu comme un cheveu sur la soupe, le pourquoi du comment de leur présence dans le livre n’étant jamais expliqué, mais elles m’auront permis de découvrir ce studio assez improbable.

Si l’ouvrage convainc sur la forme (l’emploi d’un correcteur professionnel se faisant sentir ici), le fond est beaucoup plus décevant. On réalise rapidement que l’ouvrage est avant tout une compilation d’informations glanées ici et là, sans contenu inédit mais avec beaucoup d’opinions personnelles et de conclusions approximatives, parfois à la limite du « fanboyisme ». En outre les deux auteurs semblent peu à l’aise sur les sujets techniques ce qui laisse planer un gros doute sur la validité du contenu dans ce domaine. On nous explique par exemple que la Saturn a une limite théorique de 500 000 polygones par seconde mais qu’en pratique cette limite est plutôt de 3000 polygones par seconde. Évidemment ça ne tient pas trop debout puisque ça équivaudrait à un maximum de 100 polygones en 30 images par seconde. Après vérification le véritable chiffre est plutôt 20 fois plus !

Que dire en conclusion ? Service Games relate une grande quantité d’informations intéressantes, malheureusement souvent peu étayées et mélangées à une bouillie de on-dit et de ressentis confus, avec à la clé l’impression fréquente de lire un fan de Sega lambda plutôt qu’un auteur pro tentant de relater de manière à peu près objective l’histoire d’un des acteurs clés du jeu vidéo. La lecture laisse un goût tenace d’amateurisme qui empêche à mon avis de prendre l’ouvrage vraiment au sérieux, alors que revenir sur la vie et la mort du Sega des grandes années aurait mérité de prendre un peu de hauteur. En comparaison, le livre sur Atari dont j’avais parlé auparavant, est lui desservi par des erreurs sur la forme (style pataud, fautes d’orthographe, longueurs inutiles…) mais est à peu près inattaquable sur le fond avec ses nombreuses interviews inédites et l’appui de nombreux faits documentés.

Service Games: The Rise and Fall of Sega est disponible chez Amazon et d’autres vendeurs en ligne. On peut trouver la version électronique à petit prix avec un peu de chance.

Darxide de Frontier, un des rares jeux à exploiter correctement la 32X