[Barré-Brisebois 2017Barré-Brisebois, C. 2017. A Certain Slant of Light: Past, Present and Future Challenges of Global Illumination in Games. Open Problems in Real-Time Rendering course. ACM SIGGRAPH. https://openproblems.realtimerendering.com/s2017/index.html.]
自己紹介#
アジェンダ#
- この分野の現状
- 現在の課題
- 今後のこと
- 質疑応答
あなたのために何が入っているか?#
以下のことに関して知りたいので…
- 研究者向け
- 学術研究におけるGIをゲームにおける最新技術と比較する方法
- ゲームにおける最新のアート、エンジニアリング、パイプライン、プロダクション上の課題
- アーティストおよびプログラマが現在のアプローチに持っている根本的な問題
- ゲーム業界における未解決のGI問題、および、将来の研究を適応させる方法
- ゲーム開発者向け
- あなたの分野におけるGIの現状!
- 学術研究を目標達成のために役立てる方法
- 共同研究の機会 を改善&生成するためにできること
- GIが今後のゲームで向かう先
始める前に#
- 連絡をくれたり、コンテンツを収集するのを手伝ってくれた全員に感謝
- 発売済みのゲームでのGIの最新技術をまとめるためのベストを尽くした
- あれやこれやを見逃しているみたい?教えてください!
- すべての参考文献はトークの終わりに
免責 --- ストレージ対データ#
ストレージはフォーマットやエンコーディングから非依存にできる
しばしば取り合わせは様々となり得る
ゲームの大域照明(GI)とは?#
[Ritschel et al. 2012Ritschel, T., Dachsbacher, C., Grosch, T. and Kautz, J. 2012. The state of the art in interactive global illumination. Computer Graphics Forum 31, 1, 160–188. 10.1111/j.1467-8659.2012.02093.x. https://jankautz.com/publications/GISTAR_CGF12.pdf.]
この分野の現状#
Surface Caching#
Quake [Abrash 2000Abrash, M. 2000. Quake's Lighting Model: Surface Caching. Ramblings in Realtime. https://www.bluesnews.com/abrash/chap68.shtml.]
- ゲームにおける大域照明の始まり…
- 事前計算済み放射照度 を格納する最初のゲームのひとつ
- 空間、ボリューム、張りの感じがより良い
- 頂点かテクセルに影響を与えるすべてのライトに対してひとつの8ビット値
- 後に色付けされる(Quake2)
画像はBush15から
Radiosity Normal Mapping#
Mirror’s Edge [Larsson and Halén 2009Larsson, D. and Halén, H. 2009. The Unique Lighting of Mirror's Edge. Game Developers Conference. https://www.slideshare.net/slideshow/henrikgdc09-compat/3128065.]
- Half-Life2で見られるヤツ [McTaggart 2004McTaggart, G. 2004. Half-Life® 2 / Valve Source™ Shading. Game Developers Conference. https://cdn.fastly.steamstatic.com/apps/valve/2004/GDC2004_Half-Life2_Shading.pdf.]
- 平坦なアンビエントを回避する
- TS1における3つの方向に、3つの完全なRGBのライティング値
- cos(NormalMap, BasisDirections) に基づいたブレンディング
- スペキュラを近似できる
- ビューベクトルが基底に並行であるとき
- 粗いスペキュラだと”OK”、低いラフネスだと駄目
- 多くのゲームやエンジンで使われている!
Spherical Harmonics Lightmaps#
Halo 3 [Chen and Liu 2008Chen, H. and Liu, X. 2008. Lighting and material of halo 3. ACM SIGGRAPH 2008 games 1–22. 10.1145/1404435.1404437. https://advances.realtimerendering.com/s2008/.]
[Sloan 2008Sloan, P.-P. 2008. Stupid Spherical Harmonics (SH) Tricks. Game Developers Conference. https://www.ppsloan.org/publications/StupidSH36.pdf.]
- “大局的”な改良された忠実性へのもうひとつの一歩
- オフラインのフォトンマッパーに由来する球面調和関数
- テクセルは、球面上の連続関数として、表面点に放射照度を持つ
- 動的オブジェクトのためのプロブもまたSHとして格納される
- SHはディフューズには素晴らしいが、スペキュラには…
Spherical Gaussians Lightmaps#
The Order: 1886 [@Neubelt2014CraftingNextGenMaterial]
[Pettineo 2016Pettineo, M. 2016. SG Series Part 6: Step Into The Baking Lab. The Danger Zone. https://therealmjp.github.io/posts/sg-series-part-6-step-into-the-baking-lab/.]
- 球面ガウス関数を用いて入射する放射輝度を近似する
- ディフューズとスペキュラに対する直観的かつコンパクトな表現
- 動的オブジェクトのためのプロブもまたSGとして格納される
- 広範囲に渡る実装がMattのブログで詳しく述べられている[Pettineo 2016Pettineo, M. 2016. SG Series Part 6: Step Into The Baking Lab. The Danger Zone. https://therealmjp.github.io/posts/sg-series-part-6-step-into-the-baking-lab/.]
Heightfield GI#
UE4 Kite Demo --- 高さフィールドGIなし(左)とあり(右) [Seymour 2015Seymour, M. 2015. EPIC’s Unreal Engine Open World: behind the scenes. fxguide. https://www.fxguide.com/fxfeatured/epics-unreal-engine-open-world-behind-the-scenes/.]
MotoGPにおけるStatic Terrain Radiosity Maps [Hargreaves 2003Hargreaves, S. 2003. Hemisphere Lighting With Radiosity Maps. https://shawnhargreaves.com/radiosity_lighting.pdf.]
- 高さフィールド上の広いエリアや環境光用。動的にできる[Nowrouzezahrai and Snyder 2009Nowrouzezahrai, D. and Snyder, J. 2009. Fast Global Illumination on Dynamic Height Fields. Computer Graphics Forum 28, 4, 1131–1139. 10.1111/j.1467-8659.2009.01490.x.]
- MotoGPの事前計算済みラジオシティマップ(2003)以来の多くの改善[Hargreaves 2003Hargreaves, S. 2003. Hemisphere Lighting With Radiosity Maps. https://shawnhargreaves.com/radiosity_lighting.pdf.; Oat and Sander 2007Oat, C. and Sander, P. V. 2007. Ambient aperture lighting. Proceedings of the 2007 symposium on interactive 3D graphics and games 61–64. 10.1145/1230100.1230111.]
- 利点: 高さベースのワールドに対する巧みな解法
- 欠点: 高さフィールドのみ。屋内では機能しない
Precomputed Form Factors#
[Geomerics 20162016. Demystifying the Enlighten Precompute Process. Geomerics. https://web.archive.org/web/20171103232508/http://www.geomerics.com/blogs/demystifying-the-enlighten-precompute/.]
- 有限要素にシーンを 細分化 する
- 要素間の可視性を事前計算する
- 大量の動的ライトに対する、ディフューズGIに対する実行時に使われるtransfer関数
- ライトマップやプロブに格納される
- ジオメトリ(可視性)が変化すると再計算しなければならない
Probe-only* Approaches#
Tom Clancy’s The Division [Stefanov 2016Stefanov, N. 2016. Global Illumination in Tom Clancy's The Division. Game Developers Conference. https://mrakobes.com/Nikolay.Stefanov.GDC.2016.pdf.]
Quantum Break [Silvennoinen and Timonen 2015Silvennoinen, A. and Timonen, V. 2015. Multi-Scale Global Illumination in Quantum Break. Advances in Real-Time Rendering in Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2015/.]
- プロブにおけるPRT(FarcryやDivision)、放射照度ボリューム([Tatarchuk 2005Tatarchuk, N. 2005. Irradiance Volumes for Games. Game Developers Conference Europe.]やQuantum Break)
- 様々に統一化されたCPUまたはGPUのコンソールで使いやすい大域照明の近似
- FarCry4: GPUページテーブルへのプロブセルのストリーミング(radiance tranfer、clipmap injection and sampling) [McAuley 2015McAuley, S. 2015. Rendering the World of Far Cry 4. Game Developers Conference. https://www.gdcvault.com/play/1022235/Rendering-the-World-of-Far.]
- The Division: surfels-to-probe、surfel共有付き (Gバッファのキューブマップ) [Stefanov 2016Stefanov, N. 2016. Global Illumination in Tom Clancy's The Division. Game Developers Conference. https://mrakobes.com/Nikolay.Stefanov.GDC.2016.pdf.]
- Quantum Break: 八分木を介する適応的放射照度ボリューム[Silvennoinen and Timonen 2015Silvennoinen, A. and Timonen, V. 2015. Multi-Scale Global Illumination in Quantum Break. Advances in Real-Time Rendering in Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2015/.]
- *ライトマップとの組み合わせで用いることもできる。後に、ライティングと可視性を分ける[Iwanicki and Sloan 2017Iwanicki, M. and Sloan, P.-P. 2017. Precomputed lighting in Call of Duty: Infinite Warfare. Advances in Real-Time Rendering in Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2017/.]
- 利点: 同じデータで動的および静的オブジェクトが照らされる。ボリューメトリック!
- 欠点: 間接スペキュラの品質が高くない。ので、スペキュラはIBLやSSRから
Virtual Point Lights#
Gears of War 3 [Malmros 2017Malmros, J. 2017. Gears of War 4: custom high-end graphics features and performance techniques. ACM SIGGRAPH 2017 talks. 10.1145/3084363.3085162.]
The Last of Us
- Reflective Shadow Maps(RSMs)からVirtual Point Lights(VPLs)を生成する[Dachsbacher and Stamminger 2005Dachsbacher, C. and Stamminger, M. 2005. Reflective shadow maps. Proceedings of the 2005 symposium on interactive 3D graphics and games 203–231. 10.1145/1053427.1053460.]
- プレイヤーのフラッシュライト用だが、他のスポットライト用にも
- 利点: バウンスを近似する安価なポイントライト。かなり説得力を強くできる!
- 欠点: 不安定になり得る(VPLの選択)。局所化された解法。精度が気になるかも。
Light Propagation Volumes#
FableにおけるCascaded Light Propagation Volumes [Woodhouse 2014Woodhouse, B. 2014. Dynamic Global Illumination in Fable Legends. Lionhead Studios. https://web.archive.org/web/20160415111936/http://www.lionhead.com/blog/2014/april/17/dynamic-global-illumination-in-fable-legends/.]
Clipmap
CrytekのLight Propagation Volumes [Kaplanyan 2009Kaplanyan, A. 2009. Light Propagation Volumes in CryEngine 3. Advances in Real-Time Rendering in Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2009/.]
- RSMsにシーンをレンダリングして、ボリュームにVPLsを注入して、伝播して、適用する[Kaplanyan 2009Kaplanyan, A. 2009. Light Propagation Volumes in CryEngine 3. Advances in Real-Time Rendering in Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2009/.]
- clipmapでカスケードする: 近くが細かくなり、距離に一致する
- 利点: 事前処理なし。コンソールハードウェアで使いやすく、ボリューメトリック!
- 欠点: グリッドの不整合がbleedingを引き起こし得る。VPLエイリアシングに起因する安定性の問題
Voxel Cone Tracing#
Sparse Voxel Octree Cone Tracing [Crassin et al. 2011Crassin, C., Neyret, F., Sainz, M., Green, S. and Eisemann, E. 2011. Interactive indirect illumination using voxel-based cone tracing: an insight. ACM SIGGRAPH 2011 talks. 10.1145/2037826.2037853. https://research.nvidia.com/sites/default/files/publications/GIVoxels-pg2011-authors.pdf.]
The Tomorrow Children’s Cascaded Voxel Cone Tracing [McLaren 2015McLaren, J. 2015. The Technology of The Tomorrow Children. Game Developers Conference. https://www.gdcvault.com/play/1022428/The-Technology-of-The-Tomorrow.]
- 元々のアイデアは[Crassin et al. 2011Crassin, C., Neyret, F., Sainz, M., Green, S. and Eisemann, E. 2011. Interactive indirect illumination using voxel-based cone tracing: an insight. ACM SIGGRAPH 2011 talks. 10.1145/2037826.2037853. https://research.nvidia.com/sites/default/files/publications/GIVoxels-pg2011-authors.pdf.]に由来、Sparse Voxel Treeを用いる
- clipmapを使う[McLaren 2015McLaren, J. 2015. The Technology of The Tomorrow Children. Game Developers Conference. https://www.gdcvault.com/play/1022428/The-Technology-of-The-Tomorrow.; Panteleev 2015Panteleev, A. 2015. Practical Real-Time Voxel-Based Global Illumination for Current GPUs. GPU Technology Conference. https://cgvr.cs.uni-bremen.de/theses/finishedtheses/VoxelConeTracing/S4552-rt-voxel-based-global-illumination-gpus.pdf.]、八分木と比べてよりGPUフレンドリー[Mittring 2012Mittring, M. 2012. The Technology Behind the "Unreal Engine 4 Elemental demo". Advances in Real-Time Rendering in Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2012/index.html.]
- 利点: ディフューズおよびスペキュラのGI、ボクセルによる中から大縮尺のAO[Crytek 20162016. Voxel-Based Global Illumination. https://www.cryengine.com/docs/static/engines/cryengine-3/categories/1114113/pages/19377157.]
- 欠点: いくらかのGIのリーク、低ラフネスのスペキュラコーンのコストが重大、clipmapの遷移
Ambient Occlusion?#
- 複数の周波数
- 近距離場: 頂点やライトマップ、空洞、スクリーンスペース(SSAO) [Mittring 2007Mittring, M. 2007. Finding Next Gen CryEngine2. Advances in Real-Time Rendering in 3D Graphics and Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2007/.]
- 中距離場: 頂点やライトマップ、SSAO、ボリューム、カプセル [Hill 2010Hill, S. 2010. Rendering with Conviction. Game Developers Conference. https://www.selfshadow.com/talks/rwc_gdc2010_v1.pdf.]
- 遠距離場: [Sloan et al. 2013Sloan, P.-P., Tranchida, J., Chen, H. and Kavan, L. 2013. Ambient obscurance baking on the GPU. SIGGRAPH asia 2013 technical briefs. 10.1145/2542355.2542395. https://users.cs.utah.edu/~ladislav/sloan13ambient/sloan13ambient.pdf.]、高さベース[McAuley 2015McAuley, S. 2015. Rendering the World of Far Cry 4. Game Developers Conference. https://www.gdcvault.com/play/1022235/Rendering-the-World-of-Far.]、距離フィールド(UE4) [Wright 2015Wright, D. 2015. Dynamic Occlusion With Signed Distance Fields. Advances in Real-Time Rendering in Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2015/.]
GPU上でベイクするAmbient Obscurance [Sloan et al. 2013Sloan, P.-P., Tranchida, J., Chen, H. and Kavan, L. 2013. Ambient obscurance baking on the GPU. SIGGRAPH asia 2013 technical briefs. 10.1145/2542355.2542395. https://users.cs.utah.edu/~ladislav/sloan13ambient/sloan13ambient.pdf.]
SH Sky Occlusion [McAuley 2015McAuley, S. 2015. Rendering the World of Far Cry 4. Game Developers Conference. https://www.gdcvault.com/play/1022235/Rendering-the-World-of-Far.]
AO Fields and AO Capsules [Hill 2010Hill, S. 2010. Rendering with Conviction. Game Developers Conference. https://www.selfshadow.com/talks/rwc_gdc2010_v1.pdf.]
Screen Space GI?#
SSDO [Ritschel et al. 2009Ritschel, T., Grosch, T. and Seidel, H.-P. 2009. Approximating dynamic global illumination in image space. Proceedings of the 2009 symposium on interactive 3D graphics and games 75–82. 10.1145/1507149.1507161. https://phaazon.net/media/uploads/SSDO.pdf.]
Quantum Break [Silvennoinen and Timonen 2015Silvennoinen, A. and Timonen, V. 2015. Multi-Scale Global Illumination in Quantum Break. Advances in Real-Time Rendering in Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2015/.]
- スクリーンスペースを介する追加の近距離場の局所的なディフューズGI
- Screen-Space Diffuse Lighting [Silvennoinen and Timonen 2015Silvennoinen, A. and Timonen, V. 2015. Multi-Scale Global Illumination in Quantum Break. Advances in Real-Time Rendering in Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2015/.]
- SSDOに由来する第1バウンス近似に触発される[Ritschel et al. 2009Ritschel, T., Grosch, T. and Seidel, H.-P. 2009. Approximating dynamic global illumination in image space. Proceedings of the 2009 symposium on interactive 3D graphics and games 75–82. 10.1145/1507149.1507161. https://phaazon.net/media/uploads/SSDO.pdf.]
Specular GI?#
Stochastic SSR [Stachowiak 2015Stachowiak, T. 2015. Stochastic Screen-Space Reflections. Advances in Real-Time Rendering in Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2015/Stochastic%20Screen-Space%20Reflections.pptx.]
Cubemap Relighting [McAuley 2015McAuley, S. 2015. Rendering the World of Far Cry 4. Game Developers Conference. https://www.gdcvault.com/play/1022235/Rendering-the-World-of-Far.]
Box Projected Cube Maps [2010 2010. Box projected cubemap environment mapping. gamedev.net. https://www.gamedev.net/forums/topic/568829-box-projected-cubemap-environment-mapping/.]
- 以下を介して大抵は近似される
- Parallax-Corrected Cubemaps [2010 2010. Box projected cubemap environment mapping. gamedev.net. https://www.gamedev.net/forums/topic/568829-box-projected-cubemap-environment-mapping/.; Lagarde and Zanuttini 2012Lagarde, S. and Zanuttini, A. 2012. Local image-based lighting with parallax-corrected cubemaps. ACM SIGGRAPH 2012 talks. 10.1145/2343045.2343094. https://seblagarde.wordpress.com/2012/11/28/siggraph-2012-talk/.]
- Screen-Space Reflections (SSR) [Kasyan et al. 2011Kasyan, N., Schulz, N. and Sousa, T. 2011. Secrets of CryENGINE 3 Graphics Technology. Advances in Real-Time Rendering in Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2011/index.html.; Stachowiak 2015Stachowiak, T. 2015. Stochastic Screen-Space Reflections. Advances in Real-Time Rendering in Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2015/Stochastic%20Screen-Space%20Reflections.pptx.]
- Cubemap relighting [Stachowiak 2015Stachowiak, T. 2015. Stochastic Screen-Space Reflections. Advances in Real-Time Rendering in Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2015/Stochastic%20Screen-Space%20Reflections.pptx.; McAuley 2015McAuley, S. 2015. Rendering the World of Far Cry 4. Game Developers Conference. https://www.gdcvault.com/play/1022235/Rendering-the-World-of-Far.]
- 2次のSHから支配的な色を抽出する
- SGに対するスペキュラ[@Neubelt2014CraftingNextGenMaterial]
- ほとんどのゲームはスペキュラ光輸送のためのスペキュラを行わない
アート、エンジニアリング、パイプライン、プロダクション上の課題#
見た目の的一貫性#
- 光輸送の見た目にもっともらしい表現(8年前)
- color bleeding、大局的シャドウ、色付きの半透明物
- 見た目の一貫性を最大化するためのアートディレクションと技術の賢い組み合わせ
見た目の一貫性が損なわれるとき#
- その処理における見た目の一貫性を破壊し得る様々な点
- 単純化された表現 ≠ 見た目の表現
- 手製のメッシュプロキシ[Martin and Einarsson 2010Martin, S. and Einarsson, P. 2010. A Real-Time Radiosity Architecture for Video Game. Advances in Real-Time Rendering in 3D Graphics and Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2010/index.html.]
- GIに対するPBRパラメータの過剰に単純化された表現
- 単純化されたアルベド色
- 金属質の表面を扱わない
- 適切にラフネスを扱わない
- ビュー依存の結果を再構築するために十分な計算後情報を格納しない
- 解像度問題
- 頂点/表面/詳細の法線とテクセル/ボクセル/プロブの比
- GIや独自のフィルタ(Gobo/Gel/Cookie)に対してシャドウをキャストするライトを適切に扱わない
- オブジェクト毎/ライト毎の独自のパラメータ
- ライティングのチャネルや負のライト…
- 単純化された表現 ≠ 見た目の表現
イテレーションが失敗するとき#
- ゲームワールド全体を再計算する必要がある長い事前計算は大きな問題である!
- 開発中ではライティングは常に”間違っている”
- イテレーションを破壊し、レビューや承認プロセスにおける深刻な依存性を作る可能性があり、完全にレビューを台無しにする
- すなわち、ビルドはライティングが”生成”される前に2つのリビジョンを作る、アートを判断し辛い!
- すなわち、ライティングは、承認後に、レベル作成プロセスで後に行われる
- “グローバル” = 柱をひとつ移動すると、近い所だけではなくレベル全体を再ライティングしなければならない
- コンピュータが使えなくなる5分以上かかるプレビューモード
- シナリオの例: オープンワールドマップに対するGIのナイトリービルド(8時間以上)
- アーティストは自動的に始まる処理に間に合うようにすべてを提出する
- 毎夜に処理を実行する
- アーティストは朝に仕事に着き、同期して、エディタを開いて、見た目が壊れているものを見つける
- 直して、提出して、待つ(次の日、または、数時間)
- 洗い流してもう一度
- このような処理は非常に静的なゲームワールドを引き起こす
オーサリングが失敗するとき#
- 堅牢性不足を補うために手動の調整に頼る
- 説得力のある伝播が不足しているときのためのGIのみのライト
- オブジェクト毎のGIパラメータ、オブジェクトを人工的に”pop”するように手動で調整される
- ボリュームや平面をオーバーライドしてリークを直す(屋内/屋外)
- GIを取り除くための負のライト
- 単純作業: 以下の作業が好きなアーティストはこの世にはいないと思う
- ライトマップUVのアンラッピング
- GI用の単純化されたジオメトリの構築
- 当時は”全く問題なし”だったが今はそうでない、アーティストに課しているその他いずれかの作業
nミリ秒以下のしきい値#
- 技術をゲームにできるまでのゲームやプラットフォーム固有の締切
- 我々は我々のフレームをかなりビジーにし続ける傾向にある
- 審美眼の大幅な変更が無い限り、それ以外はそのままにしなければならないだろう
- プロダクションの初期に実装しなければならない
- 30Hzのゲーム: [0~10%] → [0…3.0ms]
- 60Hzのゲーム: [0~10%] → [0…1.5ms]
- コマ落ち禁止60Hzの競争性の高いゲームやVR:
- 16ms @ 60Hz … だが、本当はそれより少ない
- MK / Injustice: 12~13msのフレーム時間[Greenberg 2009Greenberg, J. 2009. Hitting 60Hz with the Unreal Engine: Inside the Tech of MORTAL KOMBAT vs DC UNIVERSE. https://gdcvault.com/play/1278/Hitting-60Hz-with-the-Unreal.]、FIFA
- 非ハイエンドGPUを考慮する(TFLOPS) [Wikipedia]
- PS4:1.8、PS4Pro:4.2、XB1:1.3、XB1X:6
- TitanX:11、Vega:13.1
電力コスト($)#
- モダンな大きいワールドに対する(一部/全部の)ライティングの事前計算のための電力コストは非自明であるかもしれない
- たくましいマシン/サーバーのセットアップ
- Halo 3: 256つのサーバ、456つのプロセサ、1GBのメモリ[Chen and Liu 2008Chen, H. and Liu, X. 2008. Lighting and material of halo 3. ACM SIGGRAPH 2008 games 1–22. 10.1145/1404435.1404437. https://advances.realtimerendering.com/s2008/.; Villegas and Shypula 2008Villegas, L. and Shypula, S. 2008. Life on the Bungie Farm: Fun Things to Do with 180 Servers and 350 Processors. Game Developers Conference. https://gdcvault.com/play/267/Life-on-the-Bungie-Farm.]
- CoD: 48GBのRAMと12GBのVRAMのマシン[Hooker 2016Hooker, JT 2016. Volumetric Global Illumination At Treyarch. Advances in Real-Time Rendering in Games course. ACM SIGGRAPH. https://advances.realtimerendering.com/s2016/.]
- Destiny: AOをベイクするための数十のサーバを持つファーム[Sloan et al. 2013Sloan, P.-P., Tranchida, J., Chen, H. and Kavan, L. 2013. Ambient obscurance baking on the GPU. SIGGRAPH asia 2013 technical briefs. 10.1145/2542355.2542395. https://users.cs.utah.edu/~ladislav/sloan13ambient/sloan13ambient.pdf.]
- SNDBS/Incredibuild: 毎夜に動作するGPUのプール(650W超のPSUs)
- 追加コストを考慮する(つまり、冷却、ハードウェアの故障、…)
- 長時間の実行ではクラウド計算はより安価になるかも
- 電気のコストを減らすことでも(業務用vs家庭用)
オープンワールドの厄介者#
- オープンワールドゲーム用GIソリューションは非自明である
- 尺度を扱う
- 大規模なワールドの大きさ、品質の面で
- ACU: スケーラブルな品質(DVDの容量)、PCではGIに最大21GB超
- 重大なチームの決定事項であり、その価値があった!
- 高いエンティティ数
- Wildlands [Werle and Martinez 2017Werle, G. and Martinez, B. 2017. Ghost Recon Wildlands: Terrain Tools and Technology. Game Developers Conference. https://gdcvault.com/play/1024708/-Ghost-Recon-Wildlands-Terrain.] : 839,862つの木、3,449,638つのブッシュ、775,288つの石
- 大規模なワールドの大きさ、品質の面で
- コンソールのメモリに留め、ストリーミングを扱う
- (リークなしに)屋内と屋外を扱う
- しばしば時刻変化、天候を扱う
- そのような尺度のコンテンツのオーサリングは以下を必要とする
- 堅牢で分散された処理
- オーサリング/アップデートしやすく、プロダクション管理ができる
- 尺度を扱う
ゲームの機能#
- GIを作る/壊すことができるいくつかの機能
- 擦り傷、切り傷、破壊
- 壁の穴は大幅にGIを破壊し得る
- 任意の可鍛性2を持つワールドを扱う
- 時刻変化
- アート指示されたキーとなる時間、だが、その間はどうなる?
- 補間は最良の結果を常にはもたらさない
- 天候
- ユーザ生成された/組み立てられた環境
- 合成やパフォーマンスなどに対して、ここでAAAゲーム開発のアーティストのオーサリングを保証できない
- 移動するモノ、ライトのオンオフ、ボリューメトリクス
- 擦り傷、切り傷、破壊
今後のこと#
今後のゲームのためのGI#
手製
プロシージャル
プレイヤー生成
一級市民としてのGI#
- アーティストはゲームプレイに対してシャドウを当てにするが、GIは当てにしない
- 銃撃戦が燃えているものを実際にセットしているFPS
- 連続して燃えている、ライティングやGIに影響を与える
- 偶発的な火からのライティングはゲームプレイ上で大きく印象的な効果を持つ可能性がある
- 他のプレイヤーが角を曲がった先にいるcorridor shooter
- 彼らのマズルフラッシュのバウンスが見える
- 音声が先にあるものの手がかりをもたらす。つまり、GIで可能
- より良いゲームや体験を創造するためにGIを使う
混合環境#
異なるジオメトリに対する矛盾した表現
- 有機的: 森/草木のためのGIは非自明である
- 幹/大きな枝: ライトマップ?(たぶん…)
- 枝: プロブ?頂点色?
- 葉(cards): …
- 有機的、および、人工的に作られた環境に対する統一された解法を必要とする
- 同じ環境に共存する
- hard edges
- リークさせたくない
関与媒質#
複合的な関与媒質に対するGIはゲームにおいてまったくもって未解決である
物理ベースの火砕シミュレーションでワールドをライティングする!
スペキュラGIの重要性#
SVOGIを用いた間接スペキュラ [Crassin et al. 2011Crassin, C., Neyret, F., Sainz, M., Green, S. and Eisemann, E. 2011. Interactive indirect illumination using voxel-based cone tracing: an insight. ACM SIGGRAPH 2011 talks. 10.1145/2037826.2037853. https://research.nvidia.com/sites/default/files/publications/GIVoxels-pg2011-authors.pdf.]
プレイヤー生成コンテンツ#
ユーザー生成コンテンツからはAAAゲーム開発のアートや合成を前提とすることができない
- プレイヤーが作ったワールドの(恐らく)変な組み立てを甘んじて受け入れる
- プレイヤーは自身がやりたいことやシステムが対応することなら何でも行う可能性がある
- 変な比率(ジオメトリ/マテリアル)や変な合成を扱う
- オフライン処理なしに
- 真のイコライザとしての代替のランタイム表現?
- ボクセル化?
- 球状表現?
- または、一般/一様/コンパクトな表現に変換する
- (何百万の任意のアセットで)just workする堅牢な解法を必要とする
アーティスト視点#
我々の主要なクライアントを念頭にGIを設計する: アーティストとデザイナー!
- 全体VS詳細
- “大局”のGIをすばやく解いて、時間をかけて詳細をリファインする
- refinementを伴う進行性フィードバック
- 素早いプリビズをサポートするアルゴリズム、nフレームに作業を分割できる
- refinementゾーン(ユーザ、カメラ駆動)は上手く機能する: progressive lightmapper [Unity2016]
- (アートレビュー、プレイテスト、バグの)人々の邪魔をしないための最終品質のランタイム近似
- 劇的にイテレーション回数を改善する、イテレーション??品質
- 中断時間を少なくする、ベイクは常に中段時間を意味する
単調作業ゼロのパイプラインに向けて#
自動的なパラメータ化と良好なインターフェイス
- つまらない”アートじゃない”手動の手順を排除しよう
- ライトマップUVのアンラッピング
- GI用の単純化されたジオメトリの構築
- GIや反射ボリュームの手動設置
- その他自動化できそうな非アーティスティックな手順
- インターフェイスと調整可能なもの
- すべてを開示することは最良の結果を意味しない
- 酷いPBR: 75%の金属
- 単純で明確なアーティストとアートディレクターに使いやすいパラメータ
- 極端なものを試してモノをテストする: 0-1マッピング
- 複雑な振る舞い: 4つのスライダーを操るスライダー。プリセット!
- すべてを開示することは最良の結果を意味しない
今後のライトの種類#
エリアライティングはますます一般的になっている
- ゲームにおけるいくつかの領域で使われる[Drobot 2013Drobot, M. 2013. Lighting of Killzone: Shadow Fall. Digital Dragons. https://d3d3g8mu99pzk9.cloudfront.net/MichalDrobot/drobotlightingofkillzoneshadowfall.pdf.; Lagarde and de Rousiers 2014Lagarde, S. and de Rousiers, C. 2014. Moving Frostbite to Physically based rendering. Physically Based Shading in Theory and Practice course. ACM SIGGRAPH. https://seblagarde.wordpress.com/2015/07/14/siggraph-2014-moving-frostbite-to-physically-based-rendering/.; Heitz et al. 2016Heitz, E., Dupuy, J., Hill, S. and Neubelt, D. 2016. Real-time polygonal-light shading with linearly transformed cosines. ACM Trans. Graph. 35, 4. 10.1145/2897824.2925895. https://eheitzresearch.wordpress.com/415-2/.]
- ランタイム(窓、広告看板、ライトを包むもの)
- インゲームシネマティクス(フォトスタジオのライティング、3つ超のポイントライティング)
- リアルタイムにそのようなライトタイプで動作するGIシステムを構築する必要がある
- ディフューザ、テクスチャ、アニメーション付きで
- 直接的なエリアライトのシャドウも未だに残念ながら困難である
Denoising/再構築#
Denoisingは解法としてパストレーシングを考慮するときに意味を持つ
An Efficient Denoising Algorithm for Global Illumination [Mara et al. 2017Mara, M., McGuire, M., Bitterli, B. and Jarosz, W. 2017. An efficient denoising algorithm for global illumination. Proceedings of high performance graphics. 10.1145/3105762.3105774. https://casual-effects.com/research/Mara2017Denoise/Mara2017Denoise.pdf.]
Spatiotemporal Variance-Guided Filtering: Real-Time Reconstruction for Path-Traced Global Illumination [Schied et al. 2017Schied, C., Kaplanyan, A., Wyman, C., Patney, A., Chaitanya, C. R. A., Burgess, J., Liu, S., Dachsbacher, C., Lefohn, A. and Salvi, M. 2017. Spatiotemporal variance-guided filtering: real-time reconstruction for path-traced global illumination. Proceedings of high performance graphics. 10.1145/3105762.3105770. https://cg.ivd.kit.edu/publications/2017/svgf/svgf_preprint.pdf.]
Morgan@HPG&SIGGRAPH 品質がいくつか損なわれるが、240000倍速くなるなら、そっちを取るだろう。そしたら、その分野は品質をまったく損なわない方法を見出す必要がある。
これらの論文のdenoisersは依然としてこんにちのゲームには重すぎる(TITAN Xで1-2spp、10ms)。だが、映画のdenisersよりは格段に速い。(100+spp、数秒から数分)。大きな進歩だ!
ディープラーニング#
ディープラーニングは同様にレンダリングに進出している!
Neural Network Ambient Occlusion [Holden et al. 2016Holden, D., Saito, J. and Komura, T. 2016. Neural network ambient occlusion. SIGGRAPH ASIA 2016 technical briefs. 10.1145/3005358.3005387. https://theorangeduck.com/media/uploads/other_stuff/nnao.pdf.]
Interactive Reconstruction of Monte Carlo Image Sequences using a Recurrent Denising Autoencoder [Chaitanya et al. 2017Chaitanya, C. R. A., Kaplanyan, A. S., Schied, C., Salvi, M., Lefohn, A., Nowrouzezahrai, D. and Aila, T. 2017. Interactive reconstruction of Monte Carlo image sequences using a recurrent denoising autoencoder. ACM Trans. Graph. 36, 4. 10.1145/3072959.3073601. https://research.nvidia.com/sites/default/files/publications/dnn_denoise_author.pdf.]
ディープラーニングとレンダリングについてのさらなる情報はMarcoのトークで
“Deep Learning: The Future of Real-Time Rendering?” 午後4時25分から
未解決問題#
- 完全に統一されたリアルタイムGIソリューションにおける次なる大きな一歩とは?
- 統一された”すべてのBSDFを解く”アプローチを必要とする(有機物、人工物、ボリューメトリクス)
- 完全に可鍛的で変形可能で相互作用的なワールドに対して解く必要がある
- エンジンアーキテクチャと現在のアート手法は高品質なリアルタイムGIで前進するのを妨げているか?
- トライアングルを使わなかったとしたらどうか…
- GIで使われるデータ表現がオーサリングから完全に異なったとしたらどうか?
- 将来のレンダリングアーキテクチャとしてのリアルタイムdenoisedパストレーサー?
- モバイルやVRでリアルタイムGIを解くにはどうしたらよいか?
- 中から遠距離をクラウドで、近距離をデバイスで?
ゲーム開発者VS研究者#
- かなりたくさんの学術的情報源
- SIGGRAPH/SIGGRAPH ASIA
- I3D
- HPG
- EGSR
- JCGT
- GDC
- WikiCFP
あなたのゲームで上手く機能するものを見つけることは時折見つかる望みのないものを探すように感じるかもしれない
ゲーム開発者VS研究者#
そして、一度見つかれば、我々はエンジン内をduct tapeしなければならないかもしれない
綱引き#
ゲーム開発者:デモやソースが欲しい! 失敗する箇所が知りたい!
研究者:ゲーム関連のアセットが欲しい! もっと公開資料がほしい!
- 我々はより素晴らしい利益のために一丸となるように個々の組織に挑む必要がある
- ゲーム開発者:
- 疑問があるときは研究機関に問い合わせる!
- かれらと共に仕事をするために様々な方法を探すことを考慮する、そして、いくつかのアセットを共有する!
- あなたのGDC/SIGGRAPHのプレゼンテーションに研究機関への引用や謝辞を加える!
- 研究者:
- ゲーム開発者があなたにコンタクトするとき、彼らはあなたからの返事に興味がありそれが欲しいことを意味している!
- それは単なる”実装の詳細”ではない。引用[Hecker 2011Hecker, C. 2011. A Game Developer’s Wish List for Researchers. ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games. https://www.chrishecker.com/A_Game_Developer%27s_Wish_List_for_Researchers.; Baker 2011Baker, D. 2011. From Papers to Pixels: how Research Finds (or Often Doesn’t) its Way into Games. ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games.]やアーティストの増員[McGuire 2013McGuire, M. 2013. The Augmented Artist: Computation and Content Creations. ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games. https://www.casual-effect.com/research/McGuire2013Artist/index.html.]に加えて実用性を検討している
- あなたの技術がゲームに属していると思う?いいね!さらなる情報は次のスライドで
- 中立の場: JCGT
あなたの技術をゲームに加えるには#
- あなたのものをゲームに入れ込みたいならば、ここに最大限の可視化を達成する方法がある
- 論文にHLSL/GLSL/コードを入れ込む(つまり、appendix)
- 多くのグラフィクスプログラマは広範囲に渡る数学的背景を持っているが、あなたの方がより完璧である可能性が高い
- ソースから学ぶ方がより簡単であり、すばやくものを試せることは素晴らしいことである
- ソース付きのデモを動かす
- Github
- ソーシャルメディアを使う
- ツイッター: 多くの開発者がここに入り浸っているし、彼らが見つけた興味深い論文をリツイートしている
- まとめたり追加のコンテンツを加えたりするためのブログ投稿(つまり、破綻箇所などのまとめ)
- 関連するアートのアセット
- Morgan McGuireのメッシュデータベースをチェックする[McGuire 2017McGuire, M. 2017. Computer Graphics Archive. https://casual-effects.com/data/.]
- 違うなにかが欲しい?アートフォーラムのアーティストに尋ねてみよう!
- msではなくfpsを使う[Hecker 2011Hecker, C. 2011. A Game Developer’s Wish List for Researchers. ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games. https://www.chrishecker.com/A_Game_Developer%27s_Wish_List_for_Researchers.; Baker 2011Baker, D. 2011. From Papers to Pixels: how Research Finds (or Often Doesn’t) its Way into Games. ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games.]
- ハイエンドでないGPUで試す ;) (スライド26)
- 我々や他のR&Dグループと協力しよう!
- 論文にHLSL/GLSL/コードを入れ込む(つまり、appendix)
まとめ#
- まだやるべきことは沢山ある!
- 将来のゲームのための統一されたGIソリューションに向けて動いてゆく必要がある
- 研究者とゲーム開発者との間のさらに多くの/強力なコラボレーションを必要とする、両者が勝利するようなモデルで!
- 研究とゲーム開発の両方のGIの最新の進歩をもってすれば、将来は安泰そうだ!