Journal de développement – #1 : Character Creator 3
En début d'année, alors que certaines personnes prennent la résolution de manger plus sainement ou de faire du sport, j'ai décidé de me lancer un défi de taille : créer un jeu vidéo ! Cette envie n'est pas née sur un coup de tête entre deux petits fours de nouvel an. J'avais déjà fait quelques tests en 2017, ce qui avait donné un petit jeu sur navigateur dédié à mon fils alors âgé de 6 ans (jeu que j'ai d'ailleurs mis à disposition gratuitement ici). De plus, comme vous le savez peut-être, j'écris des fictions, deux de mes romans sont disponibles sur Amazon n'ayant pas trouvé d'éditeurs tandis que d'autres attendent bien sagement dans mon tiroir. Grâce à ça, j'ai eu l'occasion d'écrire pour deux jeux, un MMORPG et un serious game, faisant une brève incursion du côté du métier de Narrative Designer. Mais ce n'est que fin 2019 que j'ai soudainement réalisé que je pouvais combiner mes deux passions, l'écriture et les jeux grâce à ce métier ! Développer un jeu, si possible narratif, me paraissait donc logique, l'occasion de gagner l'expérience qui me manque encore cruellement tout en développant de nouvelles compétences qui pourraient m'être utiles.
Il est encore trop tôt pour vous présenter un concept précis mais attendez-vous dans les mois qui viennent à des posts réguliers (1 par mois si j'arrive à suivre le rythme). Je partagerai mon expérience de développeuse débutante. Au début, cela parlera surtout des logiciels que j'ai choisis (je compte vous parler de Character Creator 3, d'iClone 7, d'Unreal Engine 4 et de Megascan, mais d'autres se rajouteront probablement à la liste...). D'ici là, je serai, je l'espère, suffisamment avancée pour vous présenter des éléments plus concrets. En tout cas, j'espère que vous trouverez cette rubrique intéressante. Et n'hésitez pas si vous avez des questions ou si vous désirez partager avec moi vos retours d'expérience dans la création de jeux.
L'un des premiers problèmes que j'ai rencontré, c'est mon inexpérience dans le graphisme. Je ne parle même pas encore des décors mais, pour tout jeu narratif qui se respecte, il faut avoir au minimum un personnage principal intéressant, voire beaucoup plus si je me prends à rêver à l'un de mes modèles, Detroit Become Human du génial studio parisien Quantic Dream. Sans même espérer aller aussi loin, cette question m'a longtemps bloquée car je ne me voyais pas développer un scénario qui demanderait des moyens techniques que j'étais incapable de fournir.
Comme je n'ai pas des années devant moi pour apprendre la modélisation 3D et le rigging sous Blender, je me suis intéressée à des logiciels dédiés à la création d'avatars 3D. Adobe avait lancé un projet gratuit, Adobe Fuse, mais qui a malheureusement été abandonné et, même s'il fonctionne encore, les résultats ne sont pas bien satisfaisants. Il existe Make Human, un logiciel libre, qui a le gros avantage d'être gratuit et supporté par une grosse communauté. Je n'ai personnellement pas été très convaincue par le résultat, trop rigide pour ce que j'envisageais (vous pouvez trouver dans cette galerie DeviantArt quelques créations). Je désespérais, en me disant que je devrais peut-être me rabattre sur un pack de personnages modulaires comme il en existe dans toutes les boutiques des moteurs de jeu, quand j'ai découvert Character Creator 3, développé par la société Reallusion. Comme il propose une démo, je l'ai installé et, immédiatement, j'ai été convaincue. Ci-dessus, j'ai mis une capture d'écran d'une jeune femme qui pourrait être le personnage principal de mon histoire. Il reste des ajustements à faire, notamment du côté des lèvres, et les cheveux ne sont pas parfaits.
Mais voilà l'une des créations de l'éditeur, ce qui vous montre le niveau de détails pouvant être atteint :
Character Creator 3 (CC3) s'adresse aux non-graphistes comme moi car, à aucun moment, il n'est nécessaire de réellement toucher aux formes 3D, tout fonctionnant avec des éléments modulaires. Il existe des projets complets, mais ils sont surtout proposés par Reallusion à titre d'exemple, pour montrer ce que cela donne quand les choses sont parfaites en terme de lumière et de modélisation.
Pour créer son personnage, tout débute par le choix d'un corps et d'une teinte de peau, certains étant des imports de CC1, proposant toutes les morphologies : bébé, maigre, musclé, fort, fin, obèse... Il est difficile de vous dire exactement combien de corps sont proposés par défaut, car j'ai acheté quelques packs dans la boutique, mais j'ai maintenant plus d'une vingtaine de possibilités. En sachant qu'il est possible de prendre la texture de peau de l'un des modèles pour l'appliquer à l'autre.
Même si les corps sont complets, rien n'empêche d'en changer la tête. Là encore, j'ai une vingtaine de modèles, sans que je ne me rappelle exactement combien j'en avais de base. Si vous aimez les maths, vous êtes sans doute déjà en train de calculer les possibilités. Vous devriez attendre car ce n'est que le début, il reste encore à appliquer des cheveux, des yeux, des dents, le tout étant bien entendu personnalisable en terme de teintes. Comme vous pourrez en juger ci-dessous, j'ai utilisé la même base, n'ayant modifié que les yeux et la coiffure et cela change tout ! J'ai une vampire flippante à gauche et une garçonne à droite.
Le nombre de coupes de cheveux est par contre ce qui manque cruellement dans le logiciel de base, là je m'en rappelle très clairement car c'est l'un des premiers trucs que j'ai racheté. Pour les yeux, l'offre était plutôt généreuse et je n'ai jamais senti le besoin d'en acquérir davantage. La dentition est un élément relativement accessoire vu ce que je veux faire, et je me contente d'utiliser le modèle le plus optimisé pour les jeux car sinon cela impacte les performances (en utilisant un grand nombre de triangles pour quelque chose qui est la plupart du temps caché).
J'en arrive à l'habillage du personnage, en lui offrant au minimum un haut et un bas. Il existe aussi des tenues complètes, des chaussettes, des chaussures, des vestes, des accessoires... D'une façon générale, les éléments essaient de s'adapter au modèle, mais c'est la partie qui demande le plus d'intervention pour que la chemise ne traverse pas une veste, ou que le pantalon n'apparaisse pas par-dessus le haut des chaussures. Character Creator mâche quand même bien le boulot en proposant un outil pour ordonner les pièces de vêtements (ainsi, tu lui expliques que la veste est au-dessus de la chemise). Pour chaque élément, il est ensuite possible de lui faire vérifier les collisions ainsi que de légèrement augmenter la taille pour éviter les superpositions malheureuses.
Mettre des chaussures était une vraie galère sur les autres logiciels que j'ai testés, notamment s'il y avait un talon car cela impacte l'angle du pied (et ça chamboule potentiellement tout le reste sur le squelette et les animations). Ici, cela se fait en un clic !
Si les choses sont vraiment trop difficiles à régler, il faut alors manipuler le poids de chaque triangle dans l'outil Skin Weights qui donne accès aux contraintes qui lient les triangles entre eux en fonction des os du squelette du personnage. Cela est nécessaire aussi pour certaines animations, afin que la jupe se plie bien au bon endroit et ne se mette pas à se retrousser bêtement dans certaines situations.
Même si le logiciel n'est pas prévu pour l'animation (mais il est relié à iClone 7, de la même société Reallusion, dont je parlerai dans un prochain article), il intègre des poses, très utiles pour tester ce à quoi ressemble le personnage dans quelque chose d'autre qu'une T-Pose (ou A-Pose). C'est ce que j'ai fait plus haut, en la plaçant dans une pose plus réaliste. Et voilà ce que donne le rendu final, en ajoutant un peu de décor et une pose glamour. Cela m'a pris moins de cinq minutes à lui donner vie :
Les exports sont nativement prévus vers iClone, ainsi que l'upload vers Sketchfab. Sinon, le modèle s'enregistre au format 3D, FBX & OBJ, avec des paramètres permettant d'optimiser le format pour Maya, Unreal Engine, Unity 3D, 3ds Max, Blender, Motion Builder, Cinema 4D R18 and Before et Cinema 4D R19. Pour les moteurs de jeu, le logiciel génère notamment automatiquement les LOD nécessaires (ces versions moins gourmandes en terme de performances qui sont utilisées quand le personnage est en arrière-plan).
Headshot
Ce plugin permet de générer des têtes 3D basées sur des photos, si la photo est bien cadrée (le sujet doit être de face) et que son expression est neutre (éviter les sourires et la bouche ouverte... qui va fausser le logiciel sur la pose neutre). En le combinant avec des bases de données d'acteurs ou, encore mieux, avec des générateurs de photos artificielles comme This Person Does Not Exist, une tête originale se génère en trois minutes. Tout n'est pas parfait, les cheveux notamment amènent des ombres sur la peau du visage ou les lèvres ont tendance à ne pas tomber exactement au bon endroit. Mais avec un peu de polissage, voilà le résultat, avec à droite la photo que j'ai utilisée, et à gauche son modèle 3D (et deux minutes pour quelques ajustements mineurs) :
Conclusion
Le prix, enfin, il faut en parler car cela représente un budget à ne pas prendre à la légère. Le logiciel est vendu seul à $199, ce qui le rend très attractif. Je vous conseille plutôt de le prendre avec le bundle qui contient Headshot et iClone 7 à $399. Dans tous les cas, ne passez pas à côté du plugin Headshot, génial pour accélérer le processus de création de personnages originaux. À mon humble avis, il est toujours utile d'avoir iClone 7, même si vous prévoyez d'utiliser principalement les animations de base que vous pouvez gérer dans votre moteur de jeu. Vous serez bien content d'avoir iClone 7 pour tous ces petits gestes spécifiques qui deviennent très vite embêtants.
Mais, ce qui peut être trompeur, c'est que même avec le gros pack, vous n'aurez pas beaucoup d'éléments dans votre librairie (cheveux, accessoires, tenues...). Si vous cherchez plus de variété ou que vous avez un style précis en tête sans être capable de le concrétiser, prenez en compte le fait que vous devrez acheter des packs supplémentaires dans leur version Export (la plus chère, mais nécessaire pour avoir la possibilité d'effectuer un export pour un moteur de jeu). Pour mes besoins, j'ai par exemple dû prendre en plus :
- CC Essential Complete Bundle à $199 qui contient des morphologies, des couleurs de peau et des vêtements.
- Professional Outfits-Cloth Bases for Character Creator à $199 qui contient des tenues professionnelles réutilisables aussi dans la vie de tous les jours.
- Des coupes de cheveux vendues $7.50 l'unité.
Il faut par contre savoir que si le temps n'est pas un souci, Reallusion sacrifie un pack toutes les semaines, descendant le prix à 5$, ce qui fait que j'ai, en plus, récupéré des éléments pour une bouchée de pain. Il y a aussi des promotions ponctuelles intéressantes, avec des rabais de 30 ou 40%, même si ce n'est pas toujours cumulable avec la réduction membre. Prenez malgré tout le temps de vérifier par vous-même ce qu'il vous faudra acheter afin de ne pas être surpris par la facture finale.
Pour conclure, si vous avez un jeu qui aura de nombreux personnages 3D et que vous recherchez à affirmer votre propre style, sans avoir les connaissances nécessaires pour le faire par vous-même, alors Character Creator de Reallusion est la bonne alternative. Oui, le logiciel n'est pas gratuit. Oui, il a ses dysfonctionnements. J'ai par exemple acheté un plugin pour ajouter des tatouages et du bronzage, mais cela ne fonctionne pour le moment que sur certains corps. J'ai également eu divers plantages sauvages, et j'ai été incapable de faire s'adapter certaines tenues à des animations trop complexes. Enfin, j'ai pas mal galéré avec les LOD pour les importer correctement dans UE4. Mais cela ouvre une possibilité créative monstrueuse que je n'aurais jamais pu avoir sans cela et il est supporté par un studio qui essaie de répondre au mieux à une communauté de développeurs exigeants.