概要 アクセス タイムテーブル インタビュー 会場マップ 登壇者一覧 講演動画・スライド
チケット購入
unity
概要 アクセス タイムテーブル インタビュー 会場マップ 登壇者一覧 講演動画・スライド

Unite
Tokyo
2019

インタビュー

レイトレーシングで実現できる本物の世界

2019-08-22 update

パウロ・シルバ

エヌビディア合同会社/グラフィクスエンジニア

ポルトガル出身で、2007年に来日し、東京大学でコンピュータグラフィックスに関する研究に従事。卒業後、日本のゲーム会社でPC・モバイルゲームなどの開発経験を経て、NVIDIA Japanに合流する。現在はグラフィクスのパフォーマンス最適化を中心にデベロッパーサポートを行っている。

レイトレーシングがもたらすパラダイムシフト

日本に移住してからどれくらい経ちますか?

来日して12年になります。ただ、日本語はまだまだ勉強中ですね。

現在は東京に住んでおられるのですか?

最初の7年ほど東京の近くに住んでいて、そこから千葉の幕張に移りました。通勤時間は延びましたが、「東京ゲームショウ」が開催される際は会場が自宅から近いので、助かりますね。

すごく共感するお話ですね(笑)。では、簡単なご経歴を教えてください。

私はポルトガル出身で、子供の頃から日本のゲームにハマっていました。『スーパーマリオ』とか、『ソニック』とか、『ファンタシースター』とかですね。当時は日本のゲームが世界を席巻していましたから。それがきっかけで、いつか日本のゲーム業界で働きたいと考えるようになり、東京大学に留学してコンピュータグラフィックスの研究を行いました。卒業後は日本のゲーム会社に就職し、PC・モバイルゲームなどの開発を行いました。その後、NVIDIAに合流し、現在にいたります。

Unite Tokyo 2019ではレイトレーシングの技術講演を行われると伺いました。今年の「Game Developers Conference(以下、GDC)」も大きな話題を呼んでいましたね。

はい、そうですね。

ただ、日本のゲーム業界はモバイルゲームが中心ですし、特にUnityのデベロッパーの中には、まだまだレイトレーシングについて、よく知らない人も多いと思います。一口にレイトレーシングといっても、さまざまな切り口がありますが、どういった内容の講演になるのでしょうか?

レイトレーシングはコンピュータグラフィックスにとって非常に大きなパラダイムシフトの一つで、とても一度の講演内容に収まるものではありません。ユニティ・テクノロジーズ・ジャパンからもレイトレーシングに関する言及や技術講演があるかもしれませんが、弊社ではパフォーマンスの最適化に関する講演を行う予定です。

なるほど、それは実践的ですね。

他にコンピュータグラフィックスの歴史と、レイトレーシングの位置づけについても、簡単におさらいする予定です。おそらく聴講される方はエンジニアやCGアーティストで、初心者から中級者が多いと思うんですよ。そこで、この分野について詳しくない方に向けた情報も盛り込もうと思います。

すごく良いと思います。

また、Unityデベロッパーの中には、Unityは非常に優秀なゲームエンジンですが、優秀ゆえにローレベルでの最適化に向かないと考えられている人がいるかもしれません。実際、ゲーム体験の最適化には2つのレイヤーがあります。はじめに、ゲームエンジンレイヤーでの最適化ですね。ここはユニティ・テクノロジーズが担当するレイヤーです。もう一方が、シーンやデータの作り方など、コンテンツを作る側での最適化のレイヤーです。レンダリングの設定だとか、どれくらい複雑なシェーダーを使えば良いかとか、ジオメトリのデータ構造の工夫だとか、そういった話ですね。デベロッパーの方々にとって、直接役立つような内容にしたいと思っています。

実際、リアルタイムレイトレーシングは、まだまだ処理が重たいですからね。そのため、ゲームで実際に使う上でどのようなテクニックが有効なのか、といった情報は多くのデベロッパーに喜ばれると思います。

先ほどおっしゃっていた通り、日本のUnityデベロッパーはモバイルゲーム開発者が多いので、レイトレーシングという新しい技術に対して、まだまだ様子見で留まっている方が多いと思うんですよ。レイトレーシング自体はコンピュータグラフィックスの黎明期からアイディアがあったものの、コンピューティングパワーの不足などから、なかなか実用化に至りませんでした。なので、計算量が少なくて済む半面、それっぽいCGしか作れない「ラスタライズ法」に留まっていたんです。

最近はかなりフォトリアルな映像がゲームでも見られるようになりましたが、まだまだ簡略化せざるをえないんですね。

その一方で弊社はずっと、膨大な計算量を必要とするものの、現実のモノの見え方に即したCGをレンダリングできる「レイトレース法」に関する研究開発を進めてきました。それが、ようやく実を結んで、リアルタイムで利用できる時代になってきたんですよ。だからすごく嬉しいんです。これによってゲーム開発者の皆さんの創造力をもっと支援できるようになりますし、ゲームのレベルもぐっと高くなると思います。ものすごくエキサイティングです。

最適化技術にフォーカスした内容

リアルタイムレイトレーシングによって、ゲーム開発者はプレイヤーに対して、どのような新しい体験を提供することができるようになるでしょうか?

将来的には映画のようにフォトリアルなグラフィックのゲームが作れるようになります。ただ、レイトレーシングはまだまだ処理負荷が高いので、すぐにそうしたゲームを作ることは困難です。そのため、ラスタライズ法とレイトレース法のハイブリッドスタイルが中心になります。具体的にはreflectionやshadowなどを部分的に活用するやり方がお勧めです。これによってプレイヤーが、「このゲームは一見すると綺麗だけど、この部分の反射がおかしいぞ」「この影が変だぞ」と感じるようなことが減っていくと思います。

今年のGDCでも、EA DICEが『バトルフィールドV』におけるリアルタイムレイトレーシングの活用法について講演されていましたね。あの講演でも、グラフィックスをすべてリアルタイムレイトレーシングにすると処理負荷が高くなるので、ポイントを絞って活用されていた様子が印象的でした。ああいった実践的なテクニックは、日本でも多くのデベロッパーに喜ばれると思います。

そうですね。一番効果的な方法から順番に使っていくのが良いと思います。

Unite Tokyo 2019では、そうしたテクニックをどのように紹介されるのでしょうか?デモを見せたり、ムービーを流したり、といった予定はありますか?

まだハッキリと決めていませんが、できるだけデモをお見せしたいですね。その方が分かりやすいですし、個人的にUnityを使うのが好きなので。Unite Tokyo 2017で講演した時も、会場でUnityを使って、『NVIDIA Ansel』と『FLEX」プラグインのデモを行いました。聞いている方も、スライドを見るだけでなく、実際にデモを見る方が楽しいですよね。

正直なところ、Unityにおけるレイトレーシングの活用事例やTipsなどは、まだまだ日本語のドキュメントがWeb上では少ないんですよね。そのため、たいへん期待したいですね。

リアルタイムレイトレーシングの最適化は日進月歩で進んでいるので、日本語の資料が少ないのは事実です。弊社としても、現在日本語の資料を作成している最中です。Unite Tokyo 2017の講演資料は日本語で公開されていますので、Unite Tokyo 2019の資料もすぐに皆さんに日本語版を共有したいと思います。

ちなみに、Unityでリアルタイムレイトレーシングを試すには、どういった準備が必要ですか?

まずGeForce RTXシリーズのグラフィックカードが必要です。それからWindows 10 RS5(Build 1809) 以降のOSと、最新のグラフィックドライバーのインストールが必要です。Unity側では2019.2a5以降のUnityエディターが必要になります。

すでにデベロッパーが手軽にテストできる環境は整っているんですね。

ただ、技術検証は行っていただけますが、まだ商用ゲームを作ることはできないんですよ。

なるほど。ただ、エンジニアであれば、リアルタイムレイトレーシングに興味があると思うんです。そのため、何か講演を聴く前に試せるようなものがあれば、教えてください。

GitHubにUnity公式のサンプルプロジェクトがアップロードされています。ぜひそれをダウンロードして、触ってみて欲しいですね。そうすると、講演内容がより深く理解できると思います。

リアルタイムレイトレーシングの最適化テクニックについて、もう少し具体的に教えていただけますか?

いくつか参考になるユースケースやテクニックを紹介したいですね。仮にreflectionであれば、シェーダーの複雑さ度合いによって、roughnessの値によるパフォーマンスがどれくらい低下するか、などです。Translucency(半透明)も処理負荷の高い項目ですので、木々の木漏れ日や葉っぱの反射などの表現を行う場合は、カメラからの距離によって処理を切り分けるなどのテクニックが有効です。マテリアルについても同様で、複雑さの度合いによってパフォーマンスが変わります。こういった事柄を紹介していきたいですね。

そうしたテクニックは今後、GPUパワーが向上した時でも、役に立ちますか?

そうですね。前述の通りレイトレース法は従来のラスタライズ法に代わる、コンピュータグラフィックスの新しいパラダイムシフトです。そのため、全世界で研究開発が進んでいますし、GPUパワーだけでは置き換えられない、新しいアルゴリズムやテクニックが開発されています。そのため、今の段階からリアルタイムレイトレーシングについて技術開発をすることは、今後のゲーム開発においても必ず役に立っていくと思います。

AAAだけでなくインディゲーム開発でも重要になる

話を伺っていて、リアルタイムレイトレーシングが近い将来、コンピュータグラフィックスのエンジニアリングを塗り替えていく様が予測できました。シェーダー、GPGPU、PBR(物理ベースレンダリング)など、ここ十数年でもさまざまなCG技術が登場し、ゲーム開発に影響を与えてきましたが、それ以上の大波になりそうですね。

実際、ゲーム開発者はこの十数年、どうすればラスタライズ法をベースに、レイトレース法のような表現ができるか、さまざまな研究開発を進めてきたんですよ。スクリーンスペース・リフレクションなどの技術は、その一つです。しかし、リアルタイムレイトレーシングの実用化で、こうした技術が置き換わっていきます。

なるほど。

これにより開発コストの低下も期待できます。GI(大域照明)などが好例で、これまではイルミネーションの細部を照らすために、専用のライトを配置するなどの必要がありました。しかし、今後はこうした配慮が不要になっていきます。現実世界と同じように、物体が照らされることになるからです。テクスチャに対する意識がPBR(物理ベースレンダリング)の登場で大きく変わったように、リアルタイムレイトレーシングで大きな変化が訪れると思います。

ちょっと話はずれますが、すでに海外のAAAタイトルではリアルタイムレイトレーシングの実装が進んでいるのでしょうか?

どんどん進んでいますね。弊社のRTXテクノロジーでいえば、すでに10タイトル以上が対応していますし、どんどん数が増えています。弊社から6月に無償提供された、『Quake II』のリアルタイムレイトーレシング対応版『Quake II RTX』のように、かつての名作タイトルをレイトレース法でリメイクするといった事例もあります。こちらはハイブリッドスタイルではなく、すべてリアルタイムレイトレーシングでレンダリングされたタイトルになっていますね。昔のタイトルなので内容がシンプルな分、レイトレーシングに置き換えやすいのです。

「Quake II RTX」ダウンロードページ
それはおもしろいですね。レンダリングが次世代になるだけで、ゲーム体験がぐっと向上しそうです。家庭用ゲームも次世代機に向けて、各社で研究開発が進んでいます。この波はモバイルゲームにもシフトしていくのでしょうか?

そうですね。ただ、その前にクラウドゲームが実用化されます。弊社の『GeForce Now』のように、クラウドゲームの技術を使うと、端末スペックに頼る必要なくゲーム体験を得ることが可能です。そのためスマートフォンでレイトレーシング対応のゲームが普通に遊べる時代が到来しそうですね。

そうか、そういう時代になってしまうんだ……。じゃあ、作らなきゃ(笑)

なので、本当にレイトレーシング時代は始まったばかりなんですよ。これまで日本のAAAゲームは家庭用ゲーム機を対象としたものが中心でしたが、最近はPC版を同時開発して、Steamで配信する例も増えてきています。そうなると、こうした新しい技術を積極的に取り入れていくのではないでしょうか。それがクラウドゲームで直接、スマートフォンでも楽しめるようになると、モバイルゲームの開発者も影響を受けざるを得ないと思います。それによって、日本のゲーム開発における可能性がさらに拡がっていくのではないでしょうか。そのためにも、我々は技術開発を進めています。

AAAゲームだけでなく、インディゲーム開発者にとって、リアルタイムレイトレーシングはどのような意味を持つでしょうか?

AAAゲームと同じように、インディゲームでもリアルタイムレイトレーシングが使われるようになるのは、時間の問題です。特にUnityでは、インディゲームクリエイターのコミュニティが分厚いですよね。彼らはAAAゲームほどのリッチな体験やボリュームは提示できないかもしれないけれど、すごく尖った、良いゲームをたくさん出しています。個人的にもインディゲームが大好きです。彼らはエクスペリメンタルなゲームをどんどん出しています。そして、その多くがUnityを使っています。

ちなみに、どんなインディゲームがお好きですか?

すごく難しい質問ですね。たとえばモバイルゲームなら『モニュメントバレー』だとか、PCゲームなら『INSIDE』だとか……。

ああ、『INSIDE』はおもしろいですね。ああいった芸術的なアートスタイルが、レイトレーシングでどのように進化していくのか、がぜん興味がわいてきました。フォトリアルなアートスタイルだけでなく、ノンフォトリアルなアートスタイルがレイトレーシングでどのように進化していくのか……それが期待できるのはインディゲームならではですね。

実際、『INSIDE』のアートスタイルは他に例がない、ユニークなものですよね。本当にエクスペリメンタルなゲームになっています。ああいったアートスタイルのゲームが好きなんですよ。

他にUnityを使ったインタラクティブな教材開発なども、おもしろいかもしれませんね。月と太陽と地球の位置関係で日食や月食が起きる、などといった教材は、レイトレーシングで簡単に実装できそうです。

確かにそうですね。私も学生時代にUnityを使ってグラフィックスの研究をしていました。プロトタイプが非常に作りやすいですからね。アイディアから簡単にプロトタイプができて、全世界に向けてパブリッシュすることもできて。良い時代になりました。

いろいろとお話を伺っていると、この講演が最初に考えていたよりも、ずっと多くのオーディエンスを対象にしていることが分かってきました。「Unity」「NVIDIA」「リアルタイムレイトレーシング」と聞くと、どうしても一握りの開発者向けという印象を受けてしまいますが、実際にはAAAからインディまで、ゲーム開発に携わるすべての人に関心を持ってもらいたい内容になりそうですね。

ありがとうございます。エンジニアやテクニカルデザイナー向けに、最適化のテクニックについて話をする部分が厚めになるかと思いますが、初心者の方向けに歴史的な話をしたり、デモで楽しんでもらえるような内容にもしたいと思っています。それぞれ半々といったところでしょうか。その上でリアルタイムレイトレーシングについて、もっと多くの人に関心を持ってもらって、AAAからインディゲームまで、どんどん活用してもらえればありがたいですね。

NVIDIA RTX Ray Tracing