DETROIT : UN VULKAN DANS LE MOTEUR
Lorsqu’il a été question de porter Detroit: Become Human de la PlayStation 4 vers le PC, nos équipes ont dû relever de nombreux défis techniques et technologiques. Notamment sur la gestion du moteur 3D, qui repose sur l’API Vulkan, développée par le consortium Khronos Group. Une expérience unique, que nos spécialistes maison ont tenu à partager, à travers un impressionnant dossier écrit en collaboration avec AMD.
Ronan, explique-nous d’où vient l’idée de transmettre le savoir acquis sur ce portage PC ?
RONAN MARCHALOT – DIRECTEUR MOTEUR 3D
On a commencé à travailler sur le portage PC de Detroit quelques semaines après la parution du jeu sur PS4. Le processus a duré environ 18 mois, et tout au long de ce développement, Lou Kramer, ingénieure chez AMD, nous a donné plein de bonnes idées pour optimiser les performances. Elle était toujours très pertinente, on lui envoyait nos versions à chaque étape. Suite à cette collaboration, elle nous a proposé de travailler sur un dossier pour un évènement public auquel on devait participer ensemble en mai dernier, à Cambridge, mais la situation sanitaire a évidemment mis un terme à cette idée. On a donc finalement opté pour un format écrit ; on a divisé le dossier en trois parties, parce que c’est assez conséquent, ça représentait une vingtaine de pages.
Alors justement, en dehors de toi, qui a participé à cette aventure ?
RONAN
Côté AMD, il y a donc Lou Kramer ; et côté Quantic Dream, on a Nicolas Vizerie et Jonathan Siret, qui sont des développeurs seniors dans l’équipe 3D Engine. Nicolas est chez nous depuis pas mal d’années, c’est un très bon programmeur. Pour Detroit il a travaillé sur l’anti-aliasing, le denoising, des sujets très pointus. Jonathan est quant à lui arrivé l’année dernière, il a apporté une aide précieuse sur ce portage, en particulier pour la gestion de la mémoire. Pour info, ce portage PC a mobilisé du monde dans mon équipe jusqu’en mars-avril, pour des patchs. En moyenne, on a été 5 sur l’ensemble du projet, pendant ces 18 mois, rien que pour cette partie 3D.
Avec ce dossier, vous avez voulu vous adresser à qui ?
RONAN
Ça s’adresse avant tout aux programmeurs graphiques, aux spécialistes en computer science… Si tu t’intéresses à Vulkan, il y a pas mal d’infos sur la gestion de la mémoire, l’utilisation des shaders, l’optimisation des performances… C’est un dossier qui parlera aux étudiants et apprentis programmeurs qui veulent se spécialiser dans la 3D, et qui travaillent déjà sur Vulkan, mais aussi aux développeurs confirmés, qui évoluent dans d’autres studios. C’est vraiment un partage d’expérience, avec une portée pédagogique.
Merci Ronan et encore bravo à toute l’équipe pour le travail accompli sur ce portage PC de Detroit: Become Human ! Si vous voulez en découvrir tous les détails techniques, côté moteur 3D, ça passe donc ici :
https://gpuopen.com/learn/porting-detroit-1/