ゲーム向けの環境光に関するメモ

この記事について

  • ゲームでの環境光に関するメモです. ( 思い出しながら書いているので, 間違っている可能性があります. )
  • 元情報は一番下に列挙してあるので, 詳しくはそちらを確認した下さい.

手法

  • ライトマップ, ライトプローブ
  • PRT プローブ
    • The Division
  • Precomputed Realtime GI
  • Cascaded VoxelGI
    • Tomorrow Children
  • SVOGI
  • Light Propagation Volume
    • CryEngine3
  • SSDO
    • Quantum Break

粒度

  • シーン全体で 1 個
  • 配置したエリアごと
  • (ライト)プローブ
  • 頂点カラー
  • テクスチャ(ライトマップ)

データの指向性

構造

  • 一様ボックス
    • Cars 2
  • 凸 Convex
    • Treyarch
  • 球や箱
    • Remember Me
  • 2.5D
  • Cascaded 3D グリッド
    • Tomorrow Children
  • Clipmap
    • FarCry4
  • オクトツリー
  • BrickMaps
    • Knack
  • BVH
  • 四面体

配置するタイプの場合の場所の決め方

  • 手動で配置, エリアを指定など
  • ポリゴンをボクセル化したその付近にプローブを分布させる
  • Delaunay 四面体
    • Unity
  • 敷き詰めて, 後で自動で減らす
    • Quantum Break

使用するシーンの情報

  • G-Buffer
  • ボクセル
  • ポリゴン

参照する単位

  • キャラクターで 1 個
  • 頂点シェーダ単位
  • フラグメントシェーダ単位

計算のタイミング

  • オフライン
  • シーン初期時
  • 複数フレームに分散
    • The Division
  • 毎フレーム

変化への対応

  • 静的
  • 静的に時間帯や天候ごとに作っておいて, ブレンド
  • 事前計算結果を使って, 動的に生成
    • Precomputed GI : Mirror's Edge Catalyst
    • PRT : The Division
    • キューブマップの G-Buffer でリライティング
  • 動的に生成

Reference

The Division
Remember me
FF15
inFAMOUS : Second Sun
Killzone Shadow Fall
Split / Second
Cars 2
Tomorrow Children
Quantum Break
The Order : 1886
Mirror's Edge: Catalyst

日本語の参考文献

Knack
Deep down
METAL GEAR SOLID V: THE PHANTOM PAIN
METAL GEAR SOLID 4 : 分離プリライティング
ソニック・ワールド・アドベンチャー