グローバルイルミネーションとは
グローバルイルミネーション(GI:Global Illumination)は、
3次元コンピュータグラフィックスにおいて、光エネルギーの大域的な
輸送を、
光学的・
物理学的に正確に扱うレンダリング技法です。この技術の主な目的は、より写実的な出力、つまり物理的に正しい出力を得ることにあります。従来の局所照明(ローカルイルミネーション)とは異なり、GIは光の直接的な照射だけでなく、物体間の相互反射による間接光も考慮に入れます。
局所照明との比較
局所照明では、光源からの直接光のみが考慮されます。一方、グローバルイルミネーションでは、壁や物体からの相互反射光も計算され、より複雑な光の相互作用が表現できます。
例えば、赤と緑の壁があるシーンを考えてみましょう。局所照明では、直接光が当たる部分しか明るくなりませんが、GIでは、緑の壁で反射した光が他の物体を照らし、それによって色が移り込む現象も再現されます。
初期のGI技法であるラジオシティ法は拡散反射しか扱えませんでしたが、フォトンマッピングなどの技術によって、光の屈折や集光も表現可能になりました。これにより、透明な球体を通った光が地面に模様を作るコースティクスも再現できます。
グローバルイルミネーションの意義と適用範囲
従来の手法では、アーティストが複数の光源を手作業で配置し、反射光を再現する必要がありました。GIは、このような手間を大幅に削減し、より現実的な光の表現を可能にします。
以前は、レンダリングに多くの計算資源と時間を必要としたため、動画での使用は限られていました。しかし、近年のコンピュータの高速化、
マルチコア化、メモリの大容量化により、GIの処理速度は大幅に向上しました。HDRIやイラディアンスキャッシュ、フォトンマップの計算方法の進歩も、処理速度向上に貢献しています。さらに、動画では、一度光源を計算しシーン内に照度データを保存すれば、2フレーム目からは光の計算が不要になるため、従来の方法よりも効率的にレンダリングできます。
現在では、
映画産業で使用されるレンダリングソフトウェアの代表格であるPIXAR
RenderManをはじめ、多くの統合型3DCGソフトウェア(Autodesk
3ds Max、Autodesk
Maya、NewTek
LightWaveなど)に、グローバルイルミネーション機能が標準搭載されています。
グローバルイルミネーションの主な実現方法
GIを実現するための主な手法には、以下のようなものがあります。
ラジオシティ
フォトンマッピング
モンテカルロ・レイトレーシング
メトロポリス光
輸送 (MLT)
エネルギー再分布パストレーシング (ERPT)
リアルタイム・グローバルイルミネーション
ゲームやシミュレーション分野では、リアルタイム性が求められるため、従来のローカルイルミネーションが主流でした。しかし、高性能なグラフィックスカードやゲーム機の登場により、擬似的な手法ではありますが、リアルタイムでもGIが利用されるようになりました。
現在では、多くのハイエンドゲーム(AAAタイトル)で、GIが採用されており、グラフィックスの写実性や現実感を高めています。ただし、計算資源や処理時間の制約があるため、アルゴリズムを簡略化した疑似手法が用いられることが多いです。
リアルタイム処理系向けの主な手法は以下の通りです。
Precomputed Radiance Transfer (事前計算済み
放射輝度伝播、PRT)
Image Space Photon Mapping (ISPM)
Cascaded Light Propagation Volumes (Cascaded LPV)
Sparse Voxel Octree GI (SVO-GI, SVOGI)
採用事例
GIは、映画やゲームなど、さまざまな分野で採用されています。
映画
シュレック2
トイ・ストーリー3
ターミネーター4
ゲーム
ソニック ワールドアドベンチャー (HD版)
ソニック ジェネレーションズ (白の時空)
ソニック フォース
KILLZONE 2
Halo 3
Battlefield 3 (Frostbite 2)
Crysis 2 (CryENGINE 3)
グローバルイルミネーションは、よりリアルな3DCG表現を可能にする重要な技術であり、今後もその応用範囲は広がっていくと予想されます。
関連項目
3次元コンピュータグラフィックス
* レンダリング方程式