お気に入りタイトル/ワード

タイトル/ワード名(記事数)

最近記事を読んだタイトル/ワード

タイトル/ワード名(記事数)

LINEで4Gamerアカウントを登録
[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向
特集記事一覧
注目のレビュー
注目のムービー

メディアパートナー

印刷2008/09/10 10:30

イベント

[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向

画像集#004のサムネイル/[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向
 昨年のCEDECから日本のシェーダ使いが集まった「IMAGIRE DAY」というシリーズの講演が行われている。今年もCEDEC初日は「IMAGIRE DAY」ということで,グラフィックス処理の最先端に関連した一連の講演が行われた。最初の時間に行われた「レンダリスト養成講座2.0」として,シリコンスタジオの田村尚希氏と川瀬正樹氏による講演を順に紹介しよう。
 まずは,田村氏。氏は,当時学生ながらCEDEC 2006で驚異的に説得力のあるプレゼンによって,難解なSphere Hermonicsによる大域照明を聴衆に分かった気にさせたという実力の持ち主だ。
 今回のテーマも大域照明的な柔らかい影の表現に関するものだが,SHもWaveletも使わない手法が紹介された。これは,キューブマップ上の複数の面光源からのソフトシャドウ処理を繰り返し加算していくという,考え方自体はシンプルな処理手法である。

デモ映像より。環境マッピングの状態が変わると質感も変わってくる
画像集#002のサムネイル/[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向 画像集#003のサムネイル/[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向

画像集#005のサムネイル/[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向
 まず,環境マップのいちばん明るい点を取り出して,その点を一定の式に従って拡大していき,エネルギーが減衰しきると停止して,そこで作った面光源を画像から抜いていく。同様に残りの画像から,もっとも明るい点で同様の処理を繰り返して,複数の面光源を取り出していくという手順で,繰り返し回数だけの個数の面光源を特定していく。
 あとは,それらの光源ごとのソフトシャドウをひたすら重ねるだけなのだが,ソフトシャドウを処理する部分で,Convolution Shadow Mapという手法を参考にした手法が紹介された。
 通常のシャドウマップでは,シャドウテスト関数は影のあるなししか返さないので,出てくる影はエッジのくっきりしたハードシャドウとなる。同様の手法で,複数点のサンプリングからある程度エッジのぼやけた影を作るのが,Percentage Closer Filtering(PCF)だが,Convolutionマッピングは,影のエッジを滑らかにする手法のようだ。
 ここで,シャドウテストとフィルタリングの関係について解説された。
 フィルタリング,この場合はバイリニアフィルタやトライリニアフィルタのことで,これらは画像を滑らかに見せる技法である。これでシャドウマップの影が滑らかになってくれると非常に嬉しいわけだ。シャドウのエッジを滑らかにする手法として一般的なPCFでは,シャドウテストをしてからフィルタリングというのは可能だが,フィルタリングをしてからシャドウテストというのはできないというのが常識だという。シャドウテストというものが,0か1かを返す非連続関数なので,滑らかな変化になるフィルタリングの効果を期待してもうまくいかないらしい。しかし,Convolution Shadow Mapは,フィルタリング後のシャドウテストを破綻なく行える手法なのだそうだ。
 Convolution Shadow Mapの考え方は,影の存在を示す0と1の非連続な関数をサイン波の合成で近似して連続関数に置き換えておき,それを使ってフィルタリングを行うというものである。フーリエさんも非連続関数についてはサイン波による近似は保証してないとは思うのだが,あえて強引に行うのがミソのようだ。FM音源で矩形波(ぽい音)を出すのと似た感じだろうか(と書いても分からない人のほうが多そうだが)。

画像集#006のサムネイル/[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向 画像集#007のサムネイル/[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向

画像集#008のサムネイル/[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向
 ということで,本来はありえないフィルタリング後にシャドウテストを行うという手順で,ハードウェアが持っているフィルタ機能をフルに使い(MipMapも利用できる。アニソトロピックフィルタも使えるはずだ),影のエッジを高品質で滑らかにすることができるというのが特徴のようだ。
 実装に当たっての数式の処理なども紹介されたが,ここでは省略する。とにかく,今回のソフトシャドウの方式でもConvolution Shadow Mapと同じく,このような手法を取っているという。

 ライティングを実際に行う場合には,フィルタリングをどの程度のサイズでかけるか(例えば5×5と7×7ではボケ方が異なる)について,最適なサイズを場所ごとに計算していく方法なども示された。

 結局のところ,このような手法をもってソフトシャドウを重ねるとかなり自然な陰影ができるのだが,負荷が高いのでリアルタイム処理では現実的ではないというのが結論のようだ。光源を限定すれば使える可能性もあるとのことだが,考え方自体は面白いので,今後ほかのアルゴリズムとの併用などで日の目を見ることに期待したい。

画像集#009のサムネイル/[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向 画像集#010のサムネイル/[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向

画像集#011のサムネイル/[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向
 続いて,シリコンスタジオの川瀬正樹氏による講演が行われた。川瀬氏は,HDR処理やエフェクト処理などシェーダ関連で世界的に高名な開発者でもある。今回は,昨年行われたカメラレンズシミュレーションの続編といった雰囲気の講演が行われた。前回は,ありとあらゆる項目を考慮に入れてレンズシミュレーションを行っていたのだが,今回はもっと現実的な実装法に取り組んでいるようだ。

一般的なダブレットレンズによる球面収差の補正の様子
画像集#012のサムネイル/[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向
 まず,カメラのレンズの特徴と効果についての概略が駆け足で行われたが,ほとんどは昨年と同じだったので詳細は割愛する。
 今回は,ボケ形状をテーブル化し,それを2Dテクスチャの範囲に収めるため,丸絞りだけに限定するなど,前回ほどこだわりまくった実装ではないものの,ボケ画像が事前計算のテクスチャとして実装されるため,おそらく負荷はかなり減った実用的なものになっていると思われる。前ボケと後ボケでの特徴や色収差などはしっかり確保したまま,テクスチャを変えるだけで各種レンズでの特性の違いなどもシミュレートできるなど手軽さが目についた。

左:ダブレットレンズのボケテクスチャ例。左半分が球面収差によるボケの形,右半分が色収差による色ムラをテーブルにしたもの 右:ダブレットレンズ用テーブルでのボケ画像の例
画像集#013のサムネイル/[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向 画像集#014のサムネイル/[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向

 今回はジオメトリシェーダでの実装が間に合わず,サンプルはCPUによる処理のものとなっており,CPUでは全ピクセルでのボケの反映は無理なので,個数を限定した光点によるボケ具合の検証が行われていた。全画面処理でないだけに,同様なことは現状の多くのハードウェアで実現できそうだ。実際,別に用意した背景画像に一部光源処理としてこのレベルの処理を組み合わせて使うというテレビアニメ的な手法も示された。昨年の発表が「ここまでやるのか」と驚かされるようなハイブローな提案の連続だっただけに,今回は,前回のクオリティは受け継ぎつつも全体にかなり現実的な実装が印象に残った。
 
実際の写真との比較(後ボケ)
画像集#015のサムネイル/[CEDEC 2008#03]IMAGIRE DAY開幕,トップレンダリストによる最新グラフィックス処理動向
 ある程度本格的にカメラを触ったことのある人なら,被写界深度やレンズの違いをシミュレートしてみたいと誰しも思うものだろうが,実際にそれをかなりのところまで実現しており,カメラ風の「味」を画像に加えることに成功している。すでにシリコンスタジオのミドルウェアにはカメラシミュレーションも実装されているようだ。基本となるのがスキャッターベースの処理ということで,ジオメトリシェーダを持つDirectX 10以降のハードウェア,ゲーム機でいえば次世代機以降をターゲットとした実験的なものと思われるが,今回の発表は,現世代でも応用できる部分も語られている。

 いろいろな処理で画像をレンダリングして,最終段で出力にひと工夫を加えることで,見る人に馴染みのある映像を作り出す。とことんカメラぽくすることがリアルさにつながるかは議論の残るところだが,光点のボケ具合の変化などは,かなりよい感じで日頃テレビなどで見慣れたカメラの効果を生み出していたようだ。
 まとめの部分では,補正効果の優れたレンズをシミュレートすると,きちんと計算していても効果に気付きにくいという欠点が挙げられていた。理想的なカメラレンズをシミュレートすると(するまでもないのかもしれないが),CG的には面白みのない絵になるので,エフェクトとして使う場合はレンズ性能の劣るものを選んだほうが都合がよい……というのは,カメラ好きにとっては一つのジレンマではないだろうか。
  • この記事のURL:
4Gamer.net最新情報
プラットフォーム別新着記事
総合新着記事
企画記事
スペシャルコンテンツ
注目記事ランキング
集計:11月04日〜11月05日