Polyphony Digital, a subsidiary of Sony Interactive Entertainment Inc and the creators of Gran Turismo, has exceeded 90M copies of cumulative sell-through sales of PlayStation software titles over three decades. Gran Turisimo 7, released in 2022, marked the 25th anniversary of the series’ beginning, and included implementation of Universal Scene Description (USD). USD is an open-scene description with APIs for describing, composing, simulating, and collaborating within 3D worlds.
Tools Pipeline Engineering Lead Megumi Ando sat down with NVIDIA to discuss the integration process in the company’s latest release as well as their adoption plans in Polyphony’s game development pipeline.
Why did you choose USD for your game development pipeline?
USD technology supports large-scale, multi-user, diverse asset pipelines for video production. Although it is a library designed for video production, USD’s mechanism for supporting large and complex pipelines could be used for in-game production. As USD already provides the functions needed for building pipelines, such as compositions, asset resolvers, file format plug-ins, and custom schemas, we adapted it to fit our pipeline.
What does switching to USD enable you to do that you could not do before?
USD is different from our previous format in that it can be edited in different tools, such as Houdini. Unlike previous formats, USD compositions can be used to edit data in a non-destructive manner. Even data containing unique specifications for games can be transferred back and forth between various tools without losing data.
In Gran Turismo, we have been creating assets such as cars and courses mainly in Autodesk Maya and the data is extremely complex. There are many tools for setting up various plug-ins and specifications and re-implementing those tools for Houdini was expensive.
In particular, shaders are complex and developing a new environment for previewing and editing shaders in Houdini is expensive and difficult to implement quickly. However, USD makes it possible to create material settings in Autodesk Maya during modeling, while material assignments can be done in Houdini.
Why did you choose USD over other file formats?
The ability to handle scene graphs non-destructively and procedurally across multiple tools. In the case of games, various exclusive specifications are set up in digital content creation (DCC) tools. In the conventional format, when editing with different tools, you couldn’t handle the parameters correctly unless they were handled by each tool.
In game production, as in video production, many people can produce many assets and shots simultaneously, while adding various game specifications. USD solves these problems as compositions can be used for nondestructive editing, so that you can smoothly move between multiple tools.
What challenges did you face in the process of integrating USD?
The current pipeline is huge, and it was impossible to convert it to USD all at one time.
We had to maintain the pipeline in operation and proceed with the migration in parts.
What are some recommended small steps to take first?
First, you need an independent project (preferably separate from the existing system) to understand how USD works before implementing it in a real project.
When using USD as an asset for a game, it is important to understand that, unlike video production, there is no established schema or editing tools specialized for game production. It is necessary to understand the USD specifications, data structure, API specifications, and so on. Before we introduced it into our asset production, we had to learn the file formats such as XML and JSON. It’s necessary to develop your own software according to the game’s specifications.
We introduced USD as a format to manage parameters for the conversion pipeline. Unlike asset data, everything is in small ASCII files. The structure of the data is easy to understand, and concepts such as layers, stages, and schemas are easy to grasp. The advantages of this system provided the foundation for introducing the system in asset creation.
Do you plan to continue using USD in your future game development?
Of course we do. Even with Gran Turismo 7, which used USD, implementation was still limited. We have been working on building a structure and publishing environment for assets that assume USD. We plan to take on challenges where we can, like improving the iteration of production.
What do you think is needed to make USD more widely adopted in the game industry?
In game production, there is no established schema, as there is for video production. There is no environment like KATANA or Houdini SOLARIS where you can lay out the USD, light it, render it, and so on. To be able to use the renderer in a game engine, you must either prepare a conversion pipeline instead of a renderer or use a game engine.
How have artists, technical artists, art directors, and studio executives reacted to the move to USD?
With the progress of USD support in DCC tools such as Maya and SOLARIS, and so on, artists and tech artists are happy with the increased flexibility, stability, and efficiency of data compatibility. The proactive use of open-source libraries has been a great benefit from a management perspective, as development resources can be focused on production-specific issues.
What do you think was the most compelling argument that convinced everyone to adopt USD?
With USD, you can test in a common environment that supports it immediately. As NVIDIA Omniverse, a real-time design collaboration and simulation platform for building and operating metaverse applications, and various other tools become more compatible, it will become even more of an advantage to adopt USD in the future.
For those attending GDC, see our sessions for game developers.