グランツーリスモにUSD採用のインタビューが公開されています。CEDEC 2022の方が詳細な話だった気がするけど、とりあえずメモ。
どうしてNVIDIA?と思ったらOmniverse関連なのか。
株式会社ソニー・インタラクティブエンタテインメントの子会社で、『グランツーリスモ』を開発したポリフォニー・デジタルは、30年にわたるプレイステーション用ソフトウェアタイトルの累計セルスルー売上が90M本を突破しました。2022年に発売された『グランツーリスモ7』は、シリーズ開始から25周年を迎え、「Universal Scene Description(USD)」の実装が行われました。USDは、3Dワールド内の描写、合成、シミュレーション、コラボレーションを行うためのAPIを備えたオープンシーン記述です。
Tools Pipeline Engineering Leadの安藤 恵美は、NVIDIAの最新リリースにおける統合プロセス、およびポリフォニーのゲーム開発パイプラインにおける採用計画について、NVIDIAと対談しました。
ゲーム開発のパイプラインにUSDを採用した理由は?
USDの技術は、映像制作のための大規模でマルチユーザー、多様なアセットパイプラインをサポートしています。映像制作用に設計されたライブラリですが、大規模で複雑なパイプラインをサポートするUSDの仕組みは、ゲーム内制作にも活用できると考えています。USDには、コンポジション、アセットリゾルバー、ファイルフォーマットプラグイン、カスタムスキーマなど、パイプライン構築に必要な機能がすでに用意されているため、私たちのパイプラインに合うように対応しました。
USDに変更することで、これまでできなかったことができるようになったのでしょうか?
USDは、Houdiniなどの異なるツールで編集できるという点で、以前のフォーマットとは異なります。USDのコンポジションはこれまでのフォーマットとは異なり、非破壊でデータを編集することが可能です。ゲーム独自の仕様が書かれたデータでも、データを失うことなく、さまざまなツール間で行き来することができます。
「グランツーリスモ」では車やコースなどのアセットを主にAutodesk Mayaで制作していますが、そのデータは非常に複雑です。様々なプラグインや仕様を設定するためのツールも多く、それらをHoudini用に再実装するのはコストがかかりました。
特にシェーダーは複雑でHoudiniでシェーダーのプレビューや編集を行う環境を新たに開発するのはコストがかかり、すぐに実装するのは難しい。しかし、USDでは、モデリング中にAutodesk Mayaでマテリアル設定を行い、マテリアルの割り付けはHoudiniで行うことが可能になりました。
他のファイルフォーマットではなく、USDを選んだ理由は何ですか?
複数のツールで非破壊かつプロシージャルにシーングラフを扱えることです。ゲームの場合、DCC(Digital Content Creation)ツールで様々な専用仕様が設定されています。従来のフォーマットでは、異なるツールで編集する場合、それぞれのツールでパラメータを扱わないと正しく扱えませんでした。
ゲーム制作においても映像制作と同様に、多くの人が同時に多くのアセットやショットを制作しながら、様々なゲーム仕様を追加していくことが可能です。USDはコンポジションが非破壊編集に使えるので、複数のツール間をスムーズに行き来することができ、こうした問題を解決しています。
USDを統合する過程で、どのような課題に直面したのでしょうか?
現在のパイプラインは巨大で、それを一度にUSD化するのは不可能でした。パイプラインの運用を維持しながら、部分的に移行を進めていく必要がありました。
最初に取るべき推奨される小さなステップは何でしょうか?
まず、実際のプロジェクトに導入する前に、独立したプロジェクト(できれば既存のシステムとは別に)を立ち上げて、USDの仕組みを理解する必要があります。
USDをゲームのアセットとして使用する場合、映像制作とは異なり、ゲーム制作に特化したスキーマや編集ツールが確立されていないことを理解することが重要です。USDの仕様やデータ構造、API仕様などを理解する必要があります。アセット制作に導入する前に、XMLやJSONなどのファイル形式を覚える必要があります。ゲームの仕様に合わせて自社で開発することが必要です。
変換パイプラインのパラメータを管理するフォーマットとして、USDを導入しました。アセットデータと違って、すべてが小さなASCIIファイルになっています。データの構造がわかりやすく、レイヤー、ステージ、スキーマといった概念も理解しやすい。この利点が、アセット制作におけるシステム導入の土台となりました。
今後のゲーム開発でも、USDを使い続ける予定ですか?
もちろん、そうしています。USDを採用した「グランツーリスモ7」でも、まだ実装は限定的でした。USDを前提としたアセットの仕組みや公開環境の構築に取り組んでいます。制作の反復性を高めるなど、チャレンジできるところはチャレンジしていく予定です。
ゲーム業界でUSDを普及させるために必要なことは何だと思われますか?
ゲーム制作では、映像制作のように確立されたスキーマが存在しません。KATANAやHoudini SOLARISのように、USDをレイアウトして、ライティングして、レンダリングして......という環境は存在しません。ゲームエンジンでレンダラーを使えるようにするには、レンダラーの代わりに変換パイプラインを用意するか、ゲームエンジンを使うしかない。
アーティスト、テクニカルアーティスト、アートディレクター、スタジオ幹部は、USDへの移行にどのような反応をしているのでしょうか?
MayaやSOLARISなどのDCCツールでUSD対応が進むなど、アーティストやテクニカルアーティストは、データ互換の柔軟性や安定性、効率性が向上したことに満足しています。また、オープンソースライブラリを積極的に活用することで、開発リソースを制作固有の課題に集中させることができ、経営面でも大きなメリットがあります。
USDの導入を皆に納得させた、最も説得力のある主張は何だったと思いますか?
USDであれば、すぐに対応した共通環境でテストができます。メタバースアプリケーションを構築・運用するためのリアルタイム設計連携・シミュレーションプラットフォーム「NVIDIA Omniverse」をはじめ、さまざまなツールの対応が進めば、今後さらにUSDを採用するメリットは大きくなると思います。