DETROIT: A VULKAN IN THE ENGINE
When it came to porting Detroit: Become Human from PlayStation 4 to the PC, our teams faced many technical and technological challenges. In particular, the management of the 3D engine, which is based on the Vulkan API, developed by the Khronos Group consortium. A unique experience that our in-house specialists were keen to share, through an impressive document written in collaboration with AMD.
Ronan, can you tell us where the idea of passing on the knowledge acquired on this PC port came from?
RONAN MARCHALOT – 3D ENGINE DIRECTOR
We started working on the Detroit PC port a few weeks after the game was released on PS4. The process took about 18 months, and throughout the development, Lou Kramer, an engineer from AMD, gave us lots of good ideas for optimizing performance. Her ideas were always very relevant, we sent her our versions every step of the way. Following this collaboration, she offered to work on a presentation for a public event we were supposed to attend together last May in Cambridge, but the global pandemic obviously put an end to this idea. So we finally opted for a written format; we divided the initial document into a three-part series, because it’s quite substantial – it was about twenty pages.
Apart from you, who else got involved in this adventure?
On the AMD side, we have Lou Kramer; and on the Quantic Dream side, we have Nicolas Vizerie and Jonathan Siret, who are senior developers from the 3D Engine team. Nicolas has been with us for quite a few years now, he’s a very talented programmer. For Detroit, he worked on very technical subjects, such as anti-aliasing and denoising. Jonathan joined the team last year, and he brought a valuable expertise to this port, especially for the memory management. For your information, this PC port has implicated people from my team all the way until March-April 2020, for patches. In total, work on the 3D engine took an average of 5 developers, for 18 months.
With this series, who did you want to address?
It’s mainly aimed at graphic programmers, computer science specialists; if you’re interested in Vulkan, there’s a lot of information about memory management, shaders, performance optimization… This is a great series for students and junior programmers who want to specialize in 3D, and who are already working on Vulkan, but also for experienced developers from other studios. It’s really about sharing our experience, with a pedagogical scope [from a teaching angle].
Thank you Ronan and congratulations again to the whole team for the work accomplished on the Detroit: Become Human PC port! If you want to discover every technical aspect of the 3D engine used for the game, check out the three-part series: