Making of : réalisation de panoramiques à partir du jeu Assassin’s Creed II
par Benoît Rogez aka shadows44
Outre la 3D, je suis également un passionné de photo, plus particulièrement de thèmes « techniques » comme la photo panoramique ou la macro. Depuis quelques années, j’ai commencé à lier ces deux passions en créant des panoramiques à partir de jeux vidéos. L’idée est toute simple : à partir d’un jeu à la première personne, prendre des captures d’écran et assembler le tout. |
Je ne suis bien entendu pas le premier à avoir eu cette idée ; panogames.com, par exemple, a exploré cette voie à partir de 2005. Le but de cet article ne sera pas forcément d’entrer dans lesdétail de l’assemblage, mais plutôt d’expliquer le workflow que j’utilise, et, dans ce cas précis, quellles sont les difficultés rencontrées. |
Assassin’s Creed II : à l’extérieur de la petite ville familliale…
Venise, le Rialto (pont visible sur la partie droite de l’image).
Parallaxe
Tout d’abord, il faut rappeler qu’Assassin’s Creed II est un jeu à la troisième personne : il est donc a priori totalement inadapté pour créer des panoramiques, puisque la caméra tourne autour du personnage, et non pas sur elle-même. Comme on le voit sur l’image qui suit, la vue à la troisième personne crée un décalage (effet de parallaxe) lorsque l’on regarde autour du persoonnage : le lampadaire et le monument du fond (basilique Saint-Marc) ont des positions relatives différentes sur les deux captures. |
Il sera donc impossible de superposer (et à fortiori assembler) les deux images. Heureusement, les développeurs ont prévu une vue à la première personne : elle se désactive si le joueur se déplace après l’avoir enclenchée, mais dans le cadre d’un panorama, ça n’est pas un problème puisque l’on ne se déplacera pas ! |
Vue à la troisième personne : l’effet de parallaxe est bien visible.
La même scène, vue à la première personne.
Les deux captures qui précèdent montrent le résultat : cette fois, le lampadaire ne bouge pas par rapport au monument, et les images pourront être superposées. Petit bémol toutefois : la caméra en vue à la première personne bouge légèrement, elle se « balance », pour simuler le fait que le joueur n’est jamais statique à 100%, surtout s’il est en équilibre en haut d’une tour. |
En pratique, ce mouvement reste léger et n’a pas posé de problème à l’assemblage. Autopano Pro, le logiciel que j’ai utilisé, gère très bien ce genre de petit décalage, que l’on rencontre en panoramique photographique lorsque les images sont prises à main levée. |
Venise vue de l’extrémité de la place St-Marc : le palais des doges est le grand bâtiment sur la droite.
Capture des images
Pour prendre les quelques dizaines de captures d’écran (une cinquantaine) nécessaires à la réalisation d’un seul panorama, j’ai utilisé l’outil Fraps, bien connu des amateurs de capture d’images et de vidéos dans les jeux. La version gratuite propose des options limitées et impose une sauvegarde des captures en bmp uniquement, mais cela ne posera pas un gros problème pour la suite, en dehors du fait que l’espace disque nécessaire gonfle rapidement : avec 5 Mo la capture d’écran, multipliée par quelques dizaines de captures puis par le nombre de panoramiques, on dépasse rapidement les quelques Go de données. Le jeu utilisant un système de gestion jour-nuit avec un temps accéléré (des journées de 24h dans le jeu seraient imperceptibles), les astres (soleil/lune) et les ombres évoluent rapidement. En une dizaine de secondes, le déplacement des ombres est déjà très perceptible, comme le montre la capture qui suit. |
Seule solution pour contrer ce problème, qui risque de se voir à l’assemblage : aller aussi vite que possible. Concrètement, une fois l’emplacement de la prise de vue décidé, je commençais à prendre une première rangée (celle du haut du panorama ou celle du bas), je pivotais entre chaque photo pour avoir la vue à 360°, puis arrivé à la fin de la rangée (il est évidemment recommandé de prendre un repère…) je me décalais verticalement pour la rangée suivante. Avec les flèches du clavier et un peu d’habitude, il est possible de prendre les captures d’écran en un temps record. |
Décalage des ombres dans le jeu, à 10 secondes d’intervalle.
Lors de la capture, il est nécessaire de veiller à avoir un recouvrement suffisant entre les images successives, pour que l’assemblage se fasse correctement : 25 à 30% suffisent. Une valeur supérieure serait contre-productive : plus d’images à traiter par le logiciel d’assemblage, c’est surtout un temps de calcul plus élevé… Comme, en plus d’avoir intégré une vue à la première personne, les développeurs ont aussi eu l’excellente -et trop rare- idée de permettre de désactiver le HUD (santé, état du personnage, carte, etc), les images capturées sont quasiment vierges de tout défaut. |
Quasiment, car il reste un petit détail gênant : deux bandes noires sont présentes en haut et en bas sur les captures. ceci vient du fait que le jeu offre le même champ de vision quelque soit la résolution ; des bandes noires seront donc parfois présentes selon le ratio (4/3, 16/10, 16/9, etc) de l’écran. Ce n’est cependant pas un problème insurmontable, comme nous allons le voir à l’étape suivante. |
Venise : le marché aux poissons.
Venise, durant le carnaval.