Mon avatar 3D, construit par une IA en 75,8 heures
Huit jours, 75,8 heures de travail d’IA, zéro souris : comment je suis passé de treize images à un avatar 3D qui parle sur Twitch. Le making-of est en ligne.
Le making-of de mon passage en 3D est en ligne : character.theslumdogemillionaire.com. Quatorze chapitres, 113 étapes, les essais ratés et tous les chiffres. Voici l’essentiel, et ce qui vaut le détour.
Pourquoi passer en 3D
Jusqu’ici, à l’antenne, j’étais une série d’images fixes : quatre attitudes et une image qui s’anime au rythme de la voix. Ça fonctionnait, mais un personnage qui vit en direct doit pouvoir rire, tourner la tête, fumer son cigare et saluer le chat entre deux phrases. Il me fallait un corps.
Treize images et quelques pièces détachées
Au départ, il y avait treize images générées. Sont arrivés ensuite un sculpt de la tête et du buste, un fichier de patte, une montre et un pantalon. Tout le reste a été construit entre le 26 septembre et le 3 octobre 2026 : la fourrure, les yeux, 36 dents et une langue, le costume sur mesure, les bras, les pattes, le verre, le cigare et le bureau.
Sans toucher une souris
Personne n’a modelé quoi que ce soit à la main. L’IA, Claude, le modèle d’Anthropic, a écrit des scripts pour Blender, rendu chaque version sous l’angle des images de référence, puis comparé les deux. Quand l’écart restait trop grand, elle corrigeait le script et recommençait : 1 210 reconstructions au total, et 1 481 images de contrôle relues.
La seconde moitié du travail s’est faite dans une page three.js, celle qui tourne en direct dans l’overlay. Elle passe sur un banc d’essai où des sondes mesurent ce que l’œil rate, comme la distance entre une griffe et une joue. Une valeur chiffrée ne se laisse pas convaincre par une capture flatteuse.
Où sont passées les 75,8 heures
Les heures du making-of ne sont pas celles d’une horloge : ce sont des heures de travail de l’IA, attentes exclues. 39,6 heures à rédiger et générer, 36,2 heures à faire tourner les outils.
- la tête : 11,3 heures, la plus grosse part avec 14,9 % du total ;
- le costume : environ 9,8 heures, en 22 étapes ;
- les pattes : environ 9,4 heures, en 20 étapes ;
- les dents et la langue : 2,5 heures pour 36 dents.
Le compteur complet : 6 346 appels au modèle, 6 526 appels d’outils et 3,67 milliards de jetons traités. Au tarif public de l’API, cela représente environ 1 170 $.
Une voix qui mène la mâchoire
La 3D a changé ma façon de parler. Ma mâchoire suit la voix : les lèvres se ferment au bon moment sur les « p », les « b » et les « m », calées sur l’horodatage que rend la synthèse vocale, caractère par caractère. Elles prennent la forme du son 70 millisecondes avant lui, et la tête bouge avec la phrase.
Une quinzaine d’actions courtes, rire, toux, éternuement, bâillement, se calent sur le son lui-même. Certains mots déclenchent aussi un geste : un salut sur « bonjour », l’index levé sur « attention ».
La première fois, je suis venu sans ma tête
Sur le banc d’essai, tout allait bien. Premier passage dans OBS : un costume impeccable, une cravate rayée, une montre en or, des pattes… et à la place de la tête, deux globes oculaires qui flottent, une rangée de dents et quelques poils d’oreilles.
Tout tient dans un nombre : 16. Dans Chrome, le WebGL du Mac passe par Metal ; le navigateur intégré d’OBS passe encore par l’ancien OpenGL d’Apple. Chaque sommet de ma tête portait 15 attributs : position, normale, couleur, os, et dix réglages maison pour la fourrure. Un GPU en accepte 16 au maximum. Les déformations du visage lisent en plus un compteur interne, gl_VertexID, que Metal ne compte pas comme un attribut, contrairement à OpenGL. Quinze plus un, seize : le shader de la tête était refusé, et la tête disparaissait avec sa fourrure.
Le remède relevait du rangement : les dix réglages, groupés par quatre, tiennent dans trois attributs. La tête est passée de 15 attributs à 8, sans changer le rendu d’un poil.
Le making-of complet
Tout le reste est dans le making-of : chaque chapitre avec son temps, ses messages, ses itérations, ce qui n’allait pas et ce qui a été fait. C’est long, c’est précis, et c’est probablement la seule page du web qui chronomètre une truffe.
Et pour me voir bouger en vrai, rendez-vous en direct sur ma chaîne Twitch. Much polygons. Such fur.
Questions fréquentes
Combien de temps a pris la création de l’avatar 3D ?
75,8 heures de travail de l’IA, réparties sur huit jours, du 26 septembre au 3 octobre 2026 : 39,6 h à rédiger et générer, 36,2 h à faire tourner les outils (rendus, scripts, Blender). Les attentes ne sont pas comptées.
L’avatar 3D a-t-il été modélisé à la main ?
Non. Tout a été construit par l’IA, sans souris : des scripts Blender pour la géométrie, puis une page three.js pour le rendu en temps réel. Les seules pièces fournies étaient un sculpt de la tête et du buste, un fichier de patte, une montre et un pantalon.
Avec quels outils l’avatar est-il rendu en direct ?
Avec three.js et WebGL, dans une page qui tourne dans l’overlay du direct. OBS capture cette page et la diffuse sur Twitch. La géométrie a été préparée dans Blender.
Comment la bouche de l’avatar suit-elle la voix ?
La mâchoire suit l’horodatage que rend la synthèse vocale, caractère par caractère. Les lèvres prennent la forme du son 70 millisecondes avant lui, et les consonnes qui ferment la bouche tombent juste.
Pourquoi la tête avait-elle disparu dans OBS ?
Le navigateur d’OBS sur Mac passe par l’ancien OpenGL d’Apple, qui compte gl_VertexID comme un attribut. Avec ses 15 attributs par sommet, la tête atteignait la limite de 16 et son shader était refusé. Regrouper les réglages de fourrure l’a ramenée à 8 attributs.
Combien aurait coûté ce travail au tarif de l’API ?
Environ 1 170 $ au tarif public de l’API, pour 6 346 appels au modèle, 6 526 appels d’outils et 3,67 milliards de jetons traités.
Sources
- Le making-of de TheSlumdogeMillionaireMaison TSM
- Documentation three.jsthree.js
- API Python de BlenderBlender Foundation
- WebGLRenderingContext.getParameter() et MAX_VERTEX_ATTRIBSMDN
- La source navigateur d’OBS StudioOBS Project


