Kung Fu Panda : Donner vie à des tuiles
Suite à l’intérêt pour mes billets techniques sur Blastcode et la destruction de mur, je me suis décidé à poursuivre l’expérience avec un nouveau effet que je suis en train de réaliser. Comme d’habitude, je dois rester très général pour des raisons évidentes.
Il m’a été confie la création du setup pour animer des tuiles pour la séquence du dernier combat. La problématique est intéressante : trouver une méthode pour animer plus de 2000 tuiles sur un toit durant des combats ou des destructions tout en évitant les pénétrations visuelle des dites tuiles…
Un petit toit de Chinatown à Los Angeles pour illustre mon billet
(à défaut de capture d’écran)
La première voie que j’ai écarté est une simulation de rigidbody, inutilisable avec le nombre d’objets et surtout avec des objets qui sont déjà en contact.
Une autre voie serait d’utiliser Blastcode, mais dans la majorité des plans, les tuiles ne sont pas dissociés du toit, donc ce plugin n’aidera pas beaucoup. En effet, il ne calcule pas les collisions entre les pièces non dissociés de la surface.
Donc, j’ai donc construit un rig qui contrôle les tuiles par des expressions durant la partie ou elles se trouvent sur le toit et avec un système de particules quand les tuiles s’envolent. Ce Rig est construit par un script Mel de manière automatique. C’est de cette méthode que je solutionne création de setup qui sont massif. Étant sous Maya 8.5, j’aurai peu utiliser Python à la place du Mel mais j’ai bêtement oublié de le faire… Me voila donc avec plusieurs scripts et expressions pour un total de 2000 lignes de code pour animer les tuiles.
Pour retrouver une plus grande rapidité dans Maya et effectuer quelques animations à la main, j’ai réalisé un “bake” de l’animation de mes tuiles. Je suis en train de finaliser la partie particule : Poussières, débris, morceaux de bois,.. sur un des mes 5 plans. Quel plaisir d’animer autre chose que des tuiles !!!! Cela faisait 2 mois que je mangeais de la terre cuite :-). Montage “à la mode” oblige, le plan fait seulement 19 images soit moins d’une seconde… C’est court ! Quand celui-ci sera approuvé, j’appliquerai mes systèmes de particules aux autres plans. Normalement,je devrai finaliser avant les fêtes de Noël si je suis dans les temps.
Avec un peu de chance un de ces plans se retrouvera sur un trailer avant la sortie du film, sinon il faudra attendre pour en savoir plus.
12 Comments
Leave a Reply
C’est dingue… j’ai des copains qui sont graphistes, mais le seul mot “code” leur donne des boutons… pourtant, dans un boulot comme le tiens, ça semble indispensable !
En outre, 19 images, c’est peu… quel est ton sentiment après avoir passé plusieurs semaines sur une animation pour voir qu’au final ça ne représente qu’une infime partie du projet tel qu’affiché à l’écran ? Bon, dans le cas d’un script Python/MEL, l’intérêt est que ce sur quoi tu as travaillé peut être réutilisé par la suite !
Tiens, une dernière question : est-ce que les boîtes (d’inforgpahie et/ou américaines) proposent des stages de formation, ou bien est-ce que tu t’es dit un jour “Tiens, et si j’apprenais Python ?” ?
Bonne continuation, et à plus !
Hello, je viens de regarder le trailer sur le site http://www.kungfupanda.com et je me demandais si ce n’était pas toi qui avait fait l’explosion de l’objet en bois par le tigre… non ? ;)
J’ai bien hâte de voir tout cela !
Ne lâche surtout pas
Pierre,
Oui dans mon département (Effet) avoir code est plus que ce nécessaire, surtout a Dreamwokrs. Il y a des “training” d’effets a PDI mais a par cette exception non pas de stage. Par contre l’avantage de Python est que c’est un langage non propriétaire et libre. Facile de se forme a la maison. C’est pas le cas de ADB (le format de scène de Dreamworks).
Boum,
Merci de me signaler que le site était en ligne :-). Non ce n’est pas moi qui est réaliser cette effet. Par contre tu peu voir dans ce trailer mon premier effets a Dreamworks. : Les cookies autour de la bouche du panda. Certes rien de bien gros mais il faut bien se former au pipeline :-)
Très intéressant… même si je n’ai tout compris (rigidbody, rig, bake?) :-)
Petite question : c’est toi seul qui décide de la méthode qui sera utilisée pour telle ou telle animation que l’on t’a confiée ? Ou bien y a-t’il une “concertation entre vous” avant de commencer à coder/animer… ?
En tout cas continue à nous donner des nouvelles et bon courage !
Salut Lucas,
je ne sais pas quel version de BlastCode vous utilisez à DW, mais effectivement les dernieres versions officielles (megaton) ne permettent pas de calculer de la dynamique sur des morceaux attachés entre eux ou contenant d’autre morceaux (ex : tuile sur des morceaux de pan de toit :p). Cependant il existe une version qui avait été developpée de façon bcp plus poussé notement pour King Kong qui permet cela (et beaucouuup plus encore). le “digital destruction supervisor” de King Kong, Gray Horsfield sera susceptible de fournir beaucoup plus de détail à ce sujet si ça t’interesse.
Nims. :)
JKS,
Oui je décide généralement seul de la méthode pour réaliser un effet. Si le développement est long, j’explique a mon superviseur mon approche pour le mettre en confiance.. Plus mon experience dans le studio grandi, moins j’ai besoins d’expliquer mes choix.
Nims,
Nous avons effectivement pas la version utilise sur King Kong, je te remercie des tes informations. Je parlerai de tout cela au superviseur de Monster VS Alien (le “master” Blastcode de Dreamworks).
Je suis bien content d’avoir passé mon BTS en développement logiciel. C’est clair que ça va m’aider aussi à faire mes propres plugin. Très bientot je bosse chez Action Synthèse sur “Le magicien d’Oz” de John Boorman. Et je vais me taper tout le Syflex et les softbodies du film ! Je vais pas bosser sans faire une pointe d’optimisation en développant un petit plugin. On dirait pas comme ça, mais j’ai hâte de commencer ! My first job oblige dans ce boulot.
Xzof,
Sympas comme premier travail d’être à Action Synthèse. J’ai beaucoup d’amis qui ont travaillé dans cette entreprise durant le projet du Manège enchanté. Je te souhaite bonne chance pour ton premier travail.
Héhé Merci. :-)
C’est marrant, parceque y a 2 mois je postait ici et aujourdhui ça fait un mois et demi que je suis sur Blastcode et à devoir créer plein d’outil histoire de le “stabiliser” et de le “compléter” :D afin de voir tout ça in-game :).
Xzof,
Action Synthese!! ben bonne chance et un ptit bonjour de ma part à Fred Merle ^^ (et j’ai vu y a pas longtemps qu’il a plus les cheveux long :p).
Nims.
Bon courage pour la création des outils pour Blastcode. Je ne sais pas encore si je vais l’utilise sur le nouveau film que je commance dans un mois.