vendredi 28 septembre 2018

Bataille pour la carotte - Modélisation

Maintenant que nous avons un scénario, commençons à créer les différents éléments dont nous avons besoin. Parlons plus particulièrement des personnages, qui sont nettement plus compliqués que le décor.

Tout d'abord, j'ai pris des photos de face et de profil, que je charge dans Blender. Ensuite, partant généralement d'un cube subdivisé au niveau de la tête ou du ventre, j'extrude le long de l'image pour obtenir une forme grossière. L'on applique ensuite 2 ou 3 niveaux de subdivision rendent généralement très bien. Il faut alors réveiller son âme d'artiste, et déplacer / subdiviser les sommets pour obtenir l'aspect désiré. Regardez par exemple ce tutoriel de CG Cookie.

Maintenant, il est temps de s'occuper du matériau. Là, le nouveau "Principled Shader" fait l'essentiel du boulot. On choisit sa couleur, éventuellement une texture pour bousculer les normales, et c'est fini. Mais afin d'améliorer le rendu, il est intéressant de rajouter une fourrure avec le système de particules. Là, j'avoue, c'est pour moi un peu au pif, et je bidouille les paramètres jusqu'à obtenir quelque chose d'acceptable. Ça a très bien marché pour le nounours, un peu moins pour la girafe, mais c'est comme ça qu'on apprend.

Enfin, je rajoute une armature. Là, c'est quitte ou double : soit les poids automatiques qui attachent le modèle à l'armature fonctionnent bien du premier coup, et c'est trivial, soit ça fait n'importe quoi, et bon courage pour corriger tout ça. J'utilise ensuite la fonctionalité de cinématique inverse, pour contrôler plus facilement chaque membre.

Parlons vêtements. Blender se débrouille plutôt bien avec la physique des tissus, et propose une manière plutôt amusante de faire des vêtements: placer les différents éléments du vêtement autour du personnage, les relier par des arêtes qui vont agir comme des ressorts, et lancer la simulation. Spoing ! Les éléments du vêtement se cousent les uns aux autres, et l'on peut créer ainsi robes, chemises et manteaux. En revanche, cela marche moins bien pour les pantalons, qui ont tendance à tomber.

Et voilà, l'on a un personnage prêt à être intégré dans une scène !

Se pose rapidement la question de la solution dans son ensemble. Un seul fichier ? Un fichier par modèle, suivi d'un import, ou d'un lien dans un fichier principal ? Autant les tutoriels de modélisation ou d'animation abondent, autant sur ces questions de gestion de projet, l'on se sent un peu seul.

Finalement, une solution qui a plutôt bien fonctionné pour moi est d'avoir un modèle par fichier .blend, et d'intégrer ensuite chaque fichier à un fichier principal qui contiendra chaque scène. Avoir un lien du fichier principal vers le fichier de modèle fonctionne à peu près, mais peut donner de drôles de choses lorsque le modèle a une fourrure ou des vêtements, et dans ce cas, l'import, qui copie le modèle dans le fichier principal, peut mieux fonctionner.

Enfin, j'ai trouvé que l'utilisation d'un système de contrôle de version m'aide beaucoup d'une part à bien dormir en sachant que mes heures de boulot sont sauvegardées quelque part, et d'autre part à revenir en arrière si j'ai cassé mon fichier. De plus, cela me permet de partager mes modèles avec le reste du monde.

Et la license ?

J'ai décidé de fournir tous les éléments de mon court métrage en CC0, et le film complet en CC-BY.

Dans les faits, je me rends bien compte que mes modèles seront probablement difficiles à exploiter, avec de fortes contraintes sur la version de Blender, et peut-être des chemins absolus ou des dépendances que j'aurais manqués. J'espère cependant qu'ils seront utiles, et tenterai de corriger ce qui peut l'être.

lundi 24 septembre 2018

Bataille pour la carotte - Le storyboard

L'eau a un peu coulé sous les ponts depuis la publication de mon animation La bataille pour la carotte. Je suis plutôt content du résultat, et je me suis dit qu'il pourrait être intéressant de partager ici mon expérience. Je vous propose donc une série d'articles pour parler :

    • Du scénario et du story-board
      De la modélisation des personnages et des décors avec Blender
      De l'animation des personnages et du rendu des scènes
      De la musique et des sons
      Du montage
  • Parlons donc d'abord du scénario et du story-board.

    Même s'il est agréable d’enchaîner les démos techniques pour s'entraîner sur un sujet en particulier, comme la modélisation, les effets d'eau, les systèmes de particules et de fourrures, j'aime bien régulièrement combiner toutes ces techniques pour construire un vrai petit court métrage, avec scénario, effets sonores et musique.

    La première difficulté est de trouver un bon scénario. Les contraintes sont nombreuses : limité par mes capacités, je dois rester modeste et me contenter de personnages, de lieux et d'objets que je vais réussir à modéliser et à animer. Et limité par la puissance de ma machine, je ne peux créer une histoire trop longue. C'est cette limite matérielle qui sera une contrainte constante. En effet, le temps de rendu d'une simple image augmente très vite avec sa taille et la complexité de la scène. En me donnant un budget de 1 minute par image HD, ce qui n'est vraiment pas beaucoup même avec un GPU pour le rendu OpenCL, une minute de film à 60 images par seconde prendra 60 heures. Dans les faits, mon court métrage a probablement mis le double, avec de nombreuses nuits et de nombreux week-ends à faire chauffer la machine.

    Mes histoires suivent donc un schéma très classique : situation initiale, élément perturbateur, chute attendue ou pas. Dans ma toute première vidéo, Léon, personnage simplissime fait avec 3 sphères, voit apparaître un nuage, qui s'arrête juste au dessus de lui. Le nuage crève et la pluie tombe. Dans une autre vidéo faite un peu plus tard, sans aucun personnage, un sas s'ouvre tandis qu'une conversation radio permet d'entrevoir ce qui se passe.

    Pour ma nouvelle histoire, j'ai décidé de complexifier les choses et de modéliser 3 personnages à partir de jouets, essentiellement parce que c'est plus facile (pensez au tout premier Toy Story) que des humains ou des animaux. Ces trois personnages, introduits à tour de rôle, se disputent un objet. J'ai donc créé trois jouets, d'abord une girafe, ensuite un nounours, et enfin une fée, qui s'arrachent un MacGuffin sous la forme d'une carotte.

    C'est là que j'ai compris l'intérêt du story-board. Dans le cinéma, le langage de la mise en scène est une manière, souvent inconsciente pour le spectateur, de renforcer une idée ou une action. Ainsi, la plongée ou la contre-plongée, la mise au point, le cadrage, la composition ou encore les mouvements de caméra vont influer sur le ressenti. Pour en savoir plus sur le sujet, je vous recommande les chaînes Youtube Every frame a painting, en Anglais, et le Cinéma de Durendal qui fait des revues de film avec des mises en lumière très pertinentes du travail de réalisation et de photographie.

    Le story-board est donc la manière de préparer les scènes et de travailler sa mise en scène, de composer chaque image et les mouvements de caméra.

    Mon scénario arrêté, j'ai donc imaginé mes plans, et j'ai fait quelques croquis et notes sur un carnet.

    Dans ma première scène, je fais l'exposition, avec la carotte située en plein milieu d'une sorte de temple. La girafe apparaît, mais la mise au point ne se fait pas tout de suite, afin de renforcer le côté inattendu de cette arrivée. Ensuite, j'effectue un mouvement de caméra afin de se mettre du point de vue de la girafe, avec la mise au point sur la carotte: c'est ce qu'elle convoite.

    Dans ma deuxième scène, la girafe s'approche de la carotte, mais est stoppée nette par l'arrivée du nounours. Le mouvement de caméra fait que le spectateur est surpris au même moment par l'apparition du nounours, et le zoom vers le visage en renforce l'aspect inquiétant (toutes proportions gardées, ça reste un nounours, hein).

    Ensuite, une série de courtes scènes font des gros plans sur les visages, en référence aux westerns spaghetti. Les personnages se jaugent, la tension monte.

    Soudain, c'est une transition vers une scène à la Matrix : au ralenti, les personnages sautent vers la carotte pour être le premier à s'en saisir. La caméra se retourne soudain pour laisser le spectateur apercevoir la fée, que personne n'avait vue, et qui pique vers la carotte, s'en saisit, et s'enfuit. Les têtes de la girafe et du nounours remontent doucement, côte à côte, ils ne sont plus adversaires et même plutôt solidaires dans leur déception, dans une chute très cartoonesque.

    Rendez-vous pour la deuxième partie, où l'on parlera de modélisation de personnages avec Blender !

    mercredi 15 août 2018

    Kerbal - Spatioport Antarès

    Comme je pense vous l'avoir déjà dit, j'adore le mode carrière dans Kerbal, qui renouvelle et complète le jeu en profondeur par rapport au mode bac à sable ou science. Et lorsque j'ai reçu la mission d'installer une station spatiale en orbite autour de Kerbin, je me suis un peu lâché (heureusement, j'étais en fonds). Je vous présente donc le spatioport Antarès. C'est un spatioport / station de ravitaillement tournant à 120km au dessus de Kerbin, composé d'une tour de commande centrale, prolongée de 2 couloirs permettant d'y arrimer tout un tas de trucs, de deux gros réservoirs, et de deux remorqueurs, installés aux deux bouts du couloir du bas, qui permettent de déplacer les éléments de la station si l'on en a besoin.

    J'étais en train d'en repartir avec un de mes ravitailleurs lorsque la caméra m'a calé la station pile sur le soleil, et j'en ai profité pour prendre ce cliché.

    Prochaine étape, y envoyer un petit vaisseau spatial dont la station sera la base permanente, qui me permettra de promener les touristes et d'aller chercher les astronautes en perdition.

    mardi 14 août 2018

    Où l'on parle de singleton

    Allez-donc jeter un coup d'oeil à mon journal sur LinuxFR, où je présente une implémentation de singleton. Il en ressort qu'implémenter ce patron de manière non-foireuse est possible dans certains cas particuliers. Mais souvenez-vous : singleton rime avec cochon !

    jeudi 26 juillet 2018

    X-Plane 11

    Je redécouvre les plaisirs de la simulation de vol avec X-Plane 11, qui fonctionne sous Linux, oui madame ! Alors, c'est rudement beau, mais il faut une config de dingue pour en profiter au maximum. Entre la RAM, la carte vidéo et le CPU, tout est au max !

    Le terrain est généré automatiquement via des images satellites et des données géographiques, et l'on atteint donc des niveaux de détail plutôt bons partout dans le monde. Par exemple, voici ma rue, avec la voie ferrée qui passe juste à côté.

    Alors bien sûr, lorsque l'on passe par des endroits connus, l'on trouve quelques points d'intérêt. Voici Londres et Tower Bridge, et c'est encore plus rigolo lorsque l'on peut piloter au travers!

    Un peu plus loin, un effort notable sur Canary Wharf. Il devrait y avoir beaucoup plus de gratte ciels, mais ceux présents sont bien. Et l'on a la ligne du DLR qui passe en dessous.

    Bon, et puis il y a aussi les différents avions, dont il faudra que je parle, et de ceux, faits par les passionnés, que l'on peut télécharger gratuitement. Me voici par exemple aux commandes d'un Rafale, en pleine nuit, à Mont-de-Marsan.

    La prochaine fois, j'irai faire un petit tour de Paris pour voir un peu ce que je reconnais.

    jeudi 19 juillet 2018

    Plus de Kerbal

    Je refais du Kerbal, et je m'éclate comme une bête. J'ai en effet tenté le mode carrière, alors que jusqu'à présent je me contentais du mode science, et c'est une toute autre façon de jouer. Alors qu'en sciences et en bac à sable, il faut soi-même décider quoi faire, le mode carrière propose une série de missions bien foutues, comme de mettre en orbite des satellites, tester des pièces à divers endroits, sauver des Kerbal coincés en divers lieux distants, emmener des touristes un peu partout, ou encore construire station spatiale ou base lunaire.

    La gestion de l'argent et de l’expérience est un défi supplémentaire, et c'est un plaisir pour un minimaxeur de mon accabit. En effet, il est possible d'optimiser ses contrats très agressivement en tentant d'en remplir plusieurs à la fois. Ainsi, j'ai réussi avec un seul lancement à orbiter la lune (€€!), trimballer 3 touristes (€€€!), et sauver un Kerbal perdu en orbite dans le coin (€€€!). Chacun de ces contrats me payait ma fusée, donc tous ensemble, sacré bénéfice, qui sera utilisé pour construire une gigantesque station spatiale à la hauteur de ma mégalomanie.

    Il faut également utiliser certaines missions pour en remplir d'autres : Ainsi, il m'a fallu installer un dépôt de carburant autour de la lune. À la mission suivante, je m'en suis servi pour ravitailler 3 fois mon aterrisseur lunaire, à l’arrivée, en milieu de mission, et au départ, m'assurant ainsi le plein de sciences en à seul voyage.

    Dans quel autre jeu est-on à la fois directeur de la NASA, chef de mission, ingenieur, et astronaute ?

    jeudi 5 juillet 2018

    Blender Code Quest : Ma dépêche sur LinuxFr

    Coucou ! J'ai publié sur LinuxFr une dépêche qui présente le Blender Code Quest et quelques nouveautés prévues dans Blender 2.8. C'est par ici !