別記事でお伝えしているとおり,AMDは新世代のローエンドGPU「ATI Radeon HD 4550/4350」を発表したが,それと合わせて,ATI RadeonのマスコットキャラクターであるRubyが活躍する新作ムービー,
「Ruby Verite」のロングバージョンを公開した。
Ruby Veriteは,
2008年6月17日の記事が4Gamerでは初出となるが,このときは非常に短いものだった。とにもかくにも,最新のムービーをご覧いただきたい。
映像自体をぱっと見て,リアルタイム3D映像だと思う人はほとんどいないのではないだろうか。ついにレンダリングもここまで来たかと,感慨を抱く人だっているかもしれない。自動車のボディはもちろん,建物のガラスも単なる平面ではなく,歪みのあるものになっており,全体として
映り込みはリアルである。このあたりはレイトレーシングの得意分野だ。
初出時,いつもの赤い服を着ていたRubyだったが,ロングバージョンでは黒い服に着替えている
 |
全面的にレイトレーシングが使われていると,従来の技術によるリアリティ強化のためのさまざまなギミックを飛び越して映像を作るので,技術的な側面から見たトピックはあまり多くない。レイトレーシングで必ず問題になる光源の数はかなり多く設定されているようで,曇天気味の空から,ほとんどの空一面の大域光源が使われている感じだ。分散レイトレーシングなどが導入されている可能性もある。
光源自体はトップライトとアンビエントのみと思われるが,ロボットメカの細い脚のほうは,薄くぼけていて,地面に近い部分の影は濃くなっている。レイトレーシングでは光源数は演算負荷と直接関連しており,単一の光源だとハードエッジの影しかできない。ソフトシャドウは苦手分野といえるわけだが,この
ぼけ具合は見事である。
ガラス面への映り込みが非常にリアル。メカに見える影の濃淡が自然に出ている点にも注目したい
 |
一方,映像制作部分に目を向けると,「これはひどい」と思わせる部分もある。基礎的なレンダリング部分でリアルな画像を作ってあるのだが,ポストエフェクトはえらく稚拙だ。
 明らかにフォーカスを失っているが,遠景から近景までのどこにもフォーカスが移動した形跡がなく,ボケ方も均一。この時点でカメラのフォーカスをいじるのも不自然なら,絵も非常に不自然 |
 ピンが合ってないカメラの映像にあえて切り換える“マヌケなディレクター”を見事にシミュレート |
まず,見ていて気になるのはデフォーカス処理(カメラの焦点が合わなくなる状態をシミュレートする処理)である。オートフォーカスの動作ではありえない挙動なので,マニュアルフォーカスなのだろうが,カメラマンが下手すぎる。
画面全体にフォーカスを失っている場面が多々あるが,これは情景からして,フォーカスを最近景に合せないとほぼありえない絵だ。近景になにもない場所で,突然そんな馬鹿げた操作を行うカメラマンをわざわざ再現していることになる。
このところ,少なくないGPUコストを使って,チープなビデオカメラや下手なカメラマンをシミュレートするような絵作りが流行ではある。「より高度な技術を駆使して,より稚拙な映像を作り出した」という意味では,まさに最先端といえるかもしれない。
カメラの移動でフォーカスを失っているが,遠景にも近景にも焦点は移動していない
 |
 |
実際のところ,デプスオブフィールドによるフォーカス処理と全体のデフォーカスが別処理になっているようなのだが,これは別処理にする必要がないものであるのみならず,全体的なデフォーカス処理は全体への均一なガウスフィルタ処理が行われているようで,きわめて不自然な映像になっている。
川瀬正樹氏のデモより。詳細は記事をチェックしてほしい
 |
個人的には「なにもしない」が正解だと思うのだが,あえてやるなら「ちゃんとやれ」という感じだ。昨年,
CEDEC 2007で川瀬正樹氏がデモしていたフォーカス処理は,ビデオカメラのレンズを忠実に再現していただけあって,見ていて気持ちのよいフォーカス変化が実現されていた。技術の概要は公開されているのだから,カメラの動作を再現しようとするなら,ジオメトリシェーダを使ったフォーカス処理くらいは必須であろう。
Rubyの脚周りなど,背景が歪んでいるのが見て取れる。一方,ガラスに映り込んだRubyにはモーションブラーがかかっていない
 |
モーションブラーはレンダリング済み画像に対するポストエフェクトで行われているようで,動きベクトルを持った部分の周囲を変形させていると思われる。そのため,動き回るキャラクターの周囲では背景が歪むなどの影響が出ているのだが,動きが速い場面ではさほど気にならない範囲かもしれない。
下手なカメラマンがよい影響を出している部分もある。パンやチルトなどの単純なカメラ移動でも軸が少しブレたりといった挙動が組み込まれており,アクションシーンではさらに大きくブレている。この部分に関しては,映像のリアリティを損なわず,わりとよい感じの仕上がりになっているといえるだろう。
監視カメラ画面を直撮りしたような映像。モノクロCRTなのか,文字が丸く歪んでいるが,走査線は真っ直ぐのまま。これは走査線も合せて歪めるべき部分
 |
……とまあ,演出部分が空振りしている印象は拭えないものの,逆にいうと,
演出部分にしかツッコミようがないほど,レンダリング技術が素晴らしいということでもある。こういうのが当たり前にできるようになれば,ゲームのリアリティも格段に上がってくる。この解像度でこのクオリティのレイトレーシングが,リアルタイムで処理されるというのは信じがたい気もするが,Intelなどが実現していたリアルタイムレイトレーシングがCPUベースのものだったことを考えるに,OpenRTなりをGPUベースで運用すれば,ここまでのことができるのも不思議ではないのかもしれない。
ただ,レイトレーシングという手法は,これまでのGPUの進化経路から大きく外れたもので,「GPUで想定された機能のほとんどを使わず,演算器とエフェクトでのみ使う」という用法となっている。もちろん,こういった使い方もあり得る方向性ではあるのだが,昨今のGPUは演算力強化がトレンドなのも事実で,今後,どちらが主流になるのか,ちょっと興味深いところだ。