SlideShare a Scribd company logo
Enlightenによる
リアルタイムグローバルイルミネーション
シリコンスタジオ株式会社
吉野 潤
アジェンダ
1. イントロダクション
2. Enlightenの機能・特長
3. 採用事例紹介
4. まとめ
2
3
イントロダクション
グローバルイルミネーション(GI)について
4
EnlightenによるGIなし
5
EnlightenによるGIあり
6
従来のGIソリューション
• ゲームでは静的な手法が採用されることが多いが…
– 時間や天候の変化が正しく表現できない
– ライトを変更してから、確認までに時間がかかる
• など様々な課題が存在
7
Enlightenとは?
• 高品質なリアルタイムGIを提供するミドルウェア
• いかなるゲームエンジンにもインテグレート可能
• 従来手法と異なり、ゲーム実行中にライトやマテリアルの変更が
可能である点が特徴 ⇒ 完全に動的なライティングを実現
8
9
10
Enlightenなし(直接光のみ)
11
Enlightenあり(直接光+間接光)
12
13
Enlightenを用いない動的ライティング
14
Enlightenによる動的ライティング
15
Enlightenを使用するには…
• スタンドアロン版(SDK版)
– お客様側で自社エンジンへインテグレート
• Unreal Engine 4 版
– 弊社側でインテグレートしたコードを提供
 いずれも主要プラットフォームはすべてサポート
16
日本国内におけるサポート体制について
• 2017年5月にシリコンスタジオがGeomerics社よりEnlightenの
開発、販売、およびサポート権利を取得
• 日本国内向けのサポート体制が大幅強化
– 日本語をベースとしたカスタマーサポート
17
18
Enlightenの機能・特長
Enlightenはどのように動作するのか
19
EnlightenによるGI
• ラジオシティ法を採用
– 基本的なアルゴリズム:
1. シーンをパッチに分割
2. パッチ間の影響度を計算
3. 光の伝搬を計算
– 計算コストはパッチ数に依存
20
=フォームファクタ
EnlightenによるGI
• ラジオシティ法を採用
– 基本的なアルゴリズム:
1. シーンをパッチに分割
2. パッチ間の影響度を計算
3. 光の伝搬を計算
– 計算コストはパッチ数に依存
21
=フォームファクタ
Precompute:事前に実行
Runtime:ゲーム中に実行
Enlightenのパイプライン-Precompute
• パッチ分割からフォームファクタの計算までを事前に実行
22
Enlightenのパイプライン-Runtime
• ライト、マテリアル情報を取得し、計算済のフォームファクタに
基づき光の伝搬をゲーム実行時に計算
23
Enlightenの出力
• ランタイムが出力するデータはライトマップとプローブ
– 間接光による拡散照明のみが含まれる
• キューブマップによる反射もサポート
24
ライトマップ+プローブによる間接照明
• ライトマップ:
– 各サーフェイスのライティングをUVマッピングで適用
– スタティックで大きなオブジェクト向け
• プローブ:
– 3D空間(ボリューム)に対するライティング
– スタティックなオブジェクト or 移動するオブジェクト向け
25
ライトマップ+プローブによる間接照明
26
ライトマップ+プローブによる間接照明
27
橙:ライトマップ
緑:プローブ
ライトマップ+プローブによる間接照明
28白球:自動配置されたプローブ
ライトマップ+プローブによる間接照明
29
キューブマップによるリアルタイムリフレクション
30
エミッシブサーフェイス
31
• 動的なエリアライト
• 全てのサーフェイスが発光可能
• 追加コストは発生しない
パフォーマンスについて
• ライティング計算はCPUで非同期実行される
• GPUは使用しない
• 処理負荷はシーン構成に依存
– ライトマップのピクセル数、プローブ数、…
32
パフォーマンスについて
• フレームごとのCPUリソース割り当ての上限設定も可能
• 処理負荷は間接光の更新反映までのレイテンシとのトレードオフ
33
①
②
①‘ ②‘
Enlightenのワークフロー
34
推奨ワークフロー
1. 効率的なライティングを行うためのシーン設定
2. 事前計算を実行してランタイム用のデータを生成
3. ライティング設定の検証・調整
4. 変更内容を即座に確認しながら、シーンのライティング
35
推奨ワークフロー
1. 効率的なライティングを行うためのシーン設定
2. 事前計算を実行してランタイム用のデータを生成
3. ライティング設定の検証・調整
4. 変更内容を即座に確認しながら、シーンのライティング
36
効率的なシーン設定
• どのオブジェクトを事前計算に含むか
• ライトマップとプローブのどちらを使用するか
• 適切な解像度を選択できているか
• 効率的なライトマップUVを持っているか
37
どのオブジェクトを事前計算に含むか
38
どのオブジェクトを事前計算に含むか
39
どのオブジェクトを事前計算に含むか
40
ライトマップとプローブのどちらを使用するか
41
橙:ライトマップ
緑:プローブ
適切な解像度を選択できているか
42
緑:高解像度(約4m/px)
橙:中解像度(約10m/px)
紫:低解像度(約20m/px)
効率的なライトマップUVを持っているか
• 単純なUV展開では無駄が多い(728 pixels)
43
効率的なライトマップUVを持っているか
• Enlightenの「AutoUV」による効率的なUV生成(256 pixels)
44
効率的なライトマップUVを持っているか
• 複雑な形状は難しい(15,624 pixels) ⇒ プローブを使用
45
効率的なライトマップUVを持っているか
• ライトマップの共有化も有効
46
それぞれ別のUVを持つ 壁と同じUVを参照
①通常のライトマップの使用時 ②共有ライトマップの使用時
推奨ワークフロー
1. 効率的なライティングを行うためのシーン設定
2. 事前計算を実行してランタイム用のデータを生成
3. ライティング設定の検証・調整
4. 変更内容を即座に確認しながら、シーンのライティング
47
48
事前計算は分散処理可能
推奨ワークフロー
1. 効率的なライティングを行うためのシーン設定
2. 事前計算を実行してランタイム用のデータを生成
3. ライティング設定の検証・調整
4. 変更内容を即座に確認しながら、シーンのライティング
49
推奨ワークフロー
1. 効率的なライティングを行うためのシーン設定
2. 事前計算を実行してランタイム用のデータを生成
3. ライティング設定の検証・調整
4. 変更内容を即座に確認しながら、シーンのライティング
50
51
52
採用事例紹介
様々なタイトルでの採用実績
• STREET FIGHTER V
• ドラゴンクエストXI 過ぎ去りし時を求めて
• NieR:Automata
• Hellblade: Senua's Sacrifice
• Modern Combat Versus
• RiME
• ウイニングイレブン 2019
53
Hellblade: Senua’s Sacrifice
• 開発はNinja Theory
• UE4+Enlighten
• ビジュアルはPS4に最適化
• シームレスなワールド
• 主人公の心情に応じて動的に変化する天候
54
55
56
57
58
59
60
61
62
まとめ
Enlightenを導入することで…
• 間接光の作り出すリアリティのある見た目
• ライトやマテリアルの更新がGIにリアルタイムで反映
– 時間・天候の変化など様々な演出が可能に
• 効率的なワークフロー
– ライティング調整の素早いイテレーション
63
jun.yoshino@siliconstudio.co.jp
http://www.siliconstudio.co.jp/enlighten
64
65

More Related Content

More from Game Tools & Middleware Forum

品質と開発スピードの両立と、OSSのリスク低減策のご紹介 / GTMF2019
品質と開発スピードの両立と、OSSのリスク低減策のご紹介 / GTMF2019品質と開発スピードの両立と、OSSのリスク低減策のご紹介 / GTMF2019
品質と開発スピードの両立と、OSSのリスク低減策のご紹介 / GTMF2019
Game Tools & Middleware Forum
 
イマドキの改善!データ分析SDK導入のポイントとAI活用最新事例 / GTMF2019
イマドキの改善!データ分析SDK導入のポイントとAI活用最新事例 / GTMF2019イマドキの改善!データ分析SDK導入のポイントとAI活用最新事例 / GTMF2019
イマドキの改善!データ分析SDK導入のポイントとAI活用最新事例 / GTMF2019
Game Tools & Middleware Forum
 
Python / BlueprintによるUnreal Engineの自動化 / GTMF2019
Python / BlueprintによるUnreal Engineの自動化 / GTMF2019Python / BlueprintによるUnreal Engineの自動化 / GTMF2019
Python / BlueprintによるUnreal Engineの自動化 / GTMF2019
Game Tools & Middleware Forum
 
「禍つヴァールハイト」のハイスペックサウンド演出とは? / GTMF2019
「禍つヴァールハイト」のハイスペックサウンド演出とは? / GTMF2019「禍つヴァールハイト」のハイスペックサウンド演出とは? / GTMF2019
「禍つヴァールハイト」のハイスペックサウンド演出とは? / GTMF2019
Game Tools & Middleware Forum
 
アマゾンのゲーム関連ソリューションを活用してゲームの開発力・商品力の底上げを! / GTMF2019
アマゾンのゲーム関連ソリューションを活用してゲームの開発力・商品力の底上げを! / GTMF2019アマゾンのゲーム関連ソリューションを活用してゲームの開発力・商品力の底上げを! / GTMF2019
アマゾンのゲーム関連ソリューションを活用してゲームの開発力・商品力の底上げを! / GTMF2019
Game Tools & Middleware Forum
 
CRIWARE 最新情報 ~UE4 Editor × ADX2で加速するサウンドデザイン~ / GTMF2019
CRIWARE 最新情報 ~UE4 Editor × ADX2で加速するサウンドデザイン~ / GTMF2019CRIWARE 最新情報 ~UE4 Editor × ADX2で加速するサウンドデザイン~ / GTMF2019
CRIWARE 最新情報 ~UE4 Editor × ADX2で加速するサウンドデザイン~ / GTMF2019
Game Tools & Middleware Forum
 
SpriteStudio Ver.6.x 移行事例紹介(2) /GTMF2019
SpriteStudio Ver.6.x 移行事例紹介(2) /GTMF2019SpriteStudio Ver.6.x 移行事例紹介(2) /GTMF2019
SpriteStudio Ver.6.x 移行事例紹介(2) /GTMF2019
Game Tools & Middleware Forum
 
Linux も動く Microsoft Azure HoloLens にも対応した次世代マルチプレイミドルウェア〜モノビットエンジンクラウド〜にて採用した...
Linux も動く Microsoft Azure HoloLens にも対応した次世代マルチプレイミドルウェア〜モノビットエンジンクラウド〜にて採用した...Linux も動く Microsoft Azure HoloLens にも対応した次世代マルチプレイミドルウェア〜モノビットエンジンクラウド〜にて採用した...
Linux も動く Microsoft Azure HoloLens にも対応した次世代マルチプレイミドルウェア〜モノビットエンジンクラウド〜にて採用した...
Game Tools & Middleware Forum
 
『Brushup』で2D、3D、音楽の爆速フィードバック! - Brushup - GTMF 2018 OSAKA / TOKYO
『Brushup』で2D、3D、音楽の爆速フィードバック! - Brushup - GTMF 2018 OSAKA / TOKYO『Brushup』で2D、3D、音楽の爆速フィードバック! - Brushup - GTMF 2018 OSAKA / TOKYO
『Brushup』で2D、3D、音楽の爆速フィードバック! - Brushup - GTMF 2018 OSAKA / TOKYO
Game Tools & Middleware Forum
 
最新事例で学ぶ!ユーザをファンにするカスタマーサポート運用術 - 株式会社ラクス - GTMF 2018 OSAKA / TOKYO
最新事例で学ぶ!ユーザをファンにするカスタマーサポート運用術 - 株式会社ラクス - GTMF 2018 OSAKA / TOKYO最新事例で学ぶ!ユーザをファンにするカスタマーサポート運用術 - 株式会社ラクス - GTMF 2018 OSAKA / TOKYO
最新事例で学ぶ!ユーザをファンにするカスタマーサポート運用術 - 株式会社ラクス - GTMF 2018 OSAKA / TOKYO
Game Tools & Middleware Forum
 
IncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 OSAKA
IncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 OSAKAIncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 OSAKA
IncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 OSAKA
Game Tools & Middleware Forum
 
IncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 TOKYO
IncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 TOKYOIncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 TOKYO
IncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 TOKYO
Game Tools & Middleware Forum
 
ミドルウェア「AXIP」ロードマップ2018 - AXIP - GTMF 2018 OSAKA / TOKYO
ミドルウェア「AXIP」ロードマップ2018 - AXIP - GTMF 2018 OSAKA / TOKYOミドルウェア「AXIP」ロードマップ2018 - AXIP - GTMF 2018 OSAKA / TOKYO
ミドルウェア「AXIP」ロードマップ2018 - AXIP - GTMF 2018 OSAKA / TOKYO
Game Tools & Middleware Forum
 
これからのカスタマーサポートのカタチ ~AIチャットボットの仕組と実績のご紹介~ - 株式会社SHIFT PLUS - GTMF 2018 OSAKA /...
これからのカスタマーサポートのカタチ ~AIチャットボットの仕組と実績のご紹介~ - 株式会社SHIFT PLUS - GTMF 2018 OSAKA /...これからのカスタマーサポートのカタチ ~AIチャットボットの仕組と実績のご紹介~ - 株式会社SHIFT PLUS - GTMF 2018 OSAKA /...
これからのカスタマーサポートのカタチ ~AIチャットボットの仕組と実績のご紹介~ - 株式会社SHIFT PLUS - GTMF 2018 OSAKA /...
Game Tools & Middleware Forum
 
FINAL FANTASY XVにおけるPhoton利用事例 - Photon運営事務局 GTMF 2018 OSAKA / TOKYO
FINAL FANTASY XVにおけるPhoton利用事例 - Photon運営事務局 GTMF 2018 OSAKA / TOKYOFINAL FANTASY XVにおけるPhoton利用事例 - Photon運営事務局 GTMF 2018 OSAKA / TOKYO
FINAL FANTASY XVにおけるPhoton利用事例 - Photon運営事務局 GTMF 2018 OSAKA / TOKYO
Game Tools & Middleware Forum
 
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 TOKYO
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 TOKYOPlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 TOKYO
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 TOKYO
Game Tools & Middleware Forum
 
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 OSAKA
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 OSAKAPlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 OSAKA
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 OSAKA
Game Tools & Middleware Forum
 
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 OSAKA
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 OSAKAゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 OSAKA
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 OSAKA
Game Tools & Middleware Forum
 
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 TOKYO
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 TOKYOゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 TOKYO
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 TOKYO
Game Tools & Middleware Forum
 
ゲームデータの圧縮・解凍ツール Oodle 最新情報 - RAD ゲームツールズ - GTMF 2018 TOKYO
ゲームデータの圧縮・解凍ツール Oodle 最新情報 - RAD ゲームツールズ - GTMF 2018 TOKYOゲームデータの圧縮・解凍ツール Oodle 最新情報 - RAD ゲームツールズ - GTMF 2018 TOKYO
ゲームデータの圧縮・解凍ツール Oodle 最新情報 - RAD ゲームツールズ - GTMF 2018 TOKYO
Game Tools & Middleware Forum
 

More from Game Tools & Middleware Forum (20)

品質と開発スピードの両立と、OSSのリスク低減策のご紹介 / GTMF2019
品質と開発スピードの両立と、OSSのリスク低減策のご紹介 / GTMF2019品質と開発スピードの両立と、OSSのリスク低減策のご紹介 / GTMF2019
品質と開発スピードの両立と、OSSのリスク低減策のご紹介 / GTMF2019
 
イマドキの改善!データ分析SDK導入のポイントとAI活用最新事例 / GTMF2019
イマドキの改善!データ分析SDK導入のポイントとAI活用最新事例 / GTMF2019イマドキの改善!データ分析SDK導入のポイントとAI活用最新事例 / GTMF2019
イマドキの改善!データ分析SDK導入のポイントとAI活用最新事例 / GTMF2019
 
Python / BlueprintによるUnreal Engineの自動化 / GTMF2019
Python / BlueprintによるUnreal Engineの自動化 / GTMF2019Python / BlueprintによるUnreal Engineの自動化 / GTMF2019
Python / BlueprintによるUnreal Engineの自動化 / GTMF2019
 
「禍つヴァールハイト」のハイスペックサウンド演出とは? / GTMF2019
「禍つヴァールハイト」のハイスペックサウンド演出とは? / GTMF2019「禍つヴァールハイト」のハイスペックサウンド演出とは? / GTMF2019
「禍つヴァールハイト」のハイスペックサウンド演出とは? / GTMF2019
 
アマゾンのゲーム関連ソリューションを活用してゲームの開発力・商品力の底上げを! / GTMF2019
アマゾンのゲーム関連ソリューションを活用してゲームの開発力・商品力の底上げを! / GTMF2019アマゾンのゲーム関連ソリューションを活用してゲームの開発力・商品力の底上げを! / GTMF2019
アマゾンのゲーム関連ソリューションを活用してゲームの開発力・商品力の底上げを! / GTMF2019
 
CRIWARE 最新情報 ~UE4 Editor × ADX2で加速するサウンドデザイン~ / GTMF2019
CRIWARE 最新情報 ~UE4 Editor × ADX2で加速するサウンドデザイン~ / GTMF2019CRIWARE 最新情報 ~UE4 Editor × ADX2で加速するサウンドデザイン~ / GTMF2019
CRIWARE 最新情報 ~UE4 Editor × ADX2で加速するサウンドデザイン~ / GTMF2019
 
SpriteStudio Ver.6.x 移行事例紹介(2) /GTMF2019
SpriteStudio Ver.6.x 移行事例紹介(2) /GTMF2019SpriteStudio Ver.6.x 移行事例紹介(2) /GTMF2019
SpriteStudio Ver.6.x 移行事例紹介(2) /GTMF2019
 
Linux も動く Microsoft Azure HoloLens にも対応した次世代マルチプレイミドルウェア〜モノビットエンジンクラウド〜にて採用した...
Linux も動く Microsoft Azure HoloLens にも対応した次世代マルチプレイミドルウェア〜モノビットエンジンクラウド〜にて採用した...Linux も動く Microsoft Azure HoloLens にも対応した次世代マルチプレイミドルウェア〜モノビットエンジンクラウド〜にて採用した...
Linux も動く Microsoft Azure HoloLens にも対応した次世代マルチプレイミドルウェア〜モノビットエンジンクラウド〜にて採用した...
 
『Brushup』で2D、3D、音楽の爆速フィードバック! - Brushup - GTMF 2018 OSAKA / TOKYO
『Brushup』で2D、3D、音楽の爆速フィードバック! - Brushup - GTMF 2018 OSAKA / TOKYO『Brushup』で2D、3D、音楽の爆速フィードバック! - Brushup - GTMF 2018 OSAKA / TOKYO
『Brushup』で2D、3D、音楽の爆速フィードバック! - Brushup - GTMF 2018 OSAKA / TOKYO
 
最新事例で学ぶ!ユーザをファンにするカスタマーサポート運用術 - 株式会社ラクス - GTMF 2018 OSAKA / TOKYO
最新事例で学ぶ!ユーザをファンにするカスタマーサポート運用術 - 株式会社ラクス - GTMF 2018 OSAKA / TOKYO最新事例で学ぶ!ユーザをファンにするカスタマーサポート運用術 - 株式会社ラクス - GTMF 2018 OSAKA / TOKYO
最新事例で学ぶ!ユーザをファンにするカスタマーサポート運用術 - 株式会社ラクス - GTMF 2018 OSAKA / TOKYO
 
IncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 OSAKA
IncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 OSAKAIncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 OSAKA
IncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 OSAKA
 
IncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 TOKYO
IncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 TOKYOIncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 TOKYO
IncrediBuildでビルド時間を最大90%短縮! - インクレディビルドジャパン株式会社 - GTMF 2018 TOKYO
 
ミドルウェア「AXIP」ロードマップ2018 - AXIP - GTMF 2018 OSAKA / TOKYO
ミドルウェア「AXIP」ロードマップ2018 - AXIP - GTMF 2018 OSAKA / TOKYOミドルウェア「AXIP」ロードマップ2018 - AXIP - GTMF 2018 OSAKA / TOKYO
ミドルウェア「AXIP」ロードマップ2018 - AXIP - GTMF 2018 OSAKA / TOKYO
 
これからのカスタマーサポートのカタチ ~AIチャットボットの仕組と実績のご紹介~ - 株式会社SHIFT PLUS - GTMF 2018 OSAKA /...
これからのカスタマーサポートのカタチ ~AIチャットボットの仕組と実績のご紹介~ - 株式会社SHIFT PLUS - GTMF 2018 OSAKA /...これからのカスタマーサポートのカタチ ~AIチャットボットの仕組と実績のご紹介~ - 株式会社SHIFT PLUS - GTMF 2018 OSAKA /...
これからのカスタマーサポートのカタチ ~AIチャットボットの仕組と実績のご紹介~ - 株式会社SHIFT PLUS - GTMF 2018 OSAKA /...
 
FINAL FANTASY XVにおけるPhoton利用事例 - Photon運営事務局 GTMF 2018 OSAKA / TOKYO
FINAL FANTASY XVにおけるPhoton利用事例 - Photon運営事務局 GTMF 2018 OSAKA / TOKYOFINAL FANTASY XVにおけるPhoton利用事例 - Photon運営事務局 GTMF 2018 OSAKA / TOKYO
FINAL FANTASY XVにおけるPhoton利用事例 - Photon運営事務局 GTMF 2018 OSAKA / TOKYO
 
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 TOKYO
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 TOKYOPlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 TOKYO
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 TOKYO
 
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 OSAKA
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 OSAKAPlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 OSAKA
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 OSAKA
 
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 OSAKA
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 OSAKAゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 OSAKA
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 OSAKA
 
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 TOKYO
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 TOKYOゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 TOKYO
ゲーム業界で導入が進むSHOTGUNの魅力について - オートデスク株式会社 - GTMF 2018 TOKYO
 
ゲームデータの圧縮・解凍ツール Oodle 最新情報 - RAD ゲームツールズ - GTMF 2018 TOKYO
ゲームデータの圧縮・解凍ツール Oodle 最新情報 - RAD ゲームツールズ - GTMF 2018 TOKYOゲームデータの圧縮・解凍ツール Oodle 最新情報 - RAD ゲームツールズ - GTMF 2018 TOKYO
ゲームデータの圧縮・解凍ツール Oodle 最新情報 - RAD ゲームツールズ - GTMF 2018 TOKYO
 

Recently uploaded

YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
NTT DATA Technology & Innovation
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
atsushi061452
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
Matsushita Laboratory
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
Toru Tamaki
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
iPride Co., Ltd.
 
CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
Yuuitirou528 default
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
Fukuoka Institute of Technology
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
Sony - Neural Network Libraries
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
harmonylab
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
CRI Japan, Inc.
 

Recently uploaded (16)

YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
 
CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LBカタログ
 

Enlightenによるリアルタイムグローバルイルミネーション - シリコンスタジオ株式会社 - GTMF 2018 TOKYO

Editor's Notes

  1. 皆さんこんにちは。本日はセッションにご参加いただき、誠にありがとうございます。 私はシリコンスタジオにてEnlightenの開発およびサポートを担当しているソフトウェアエンジニアの吉野と申します。 本セッションでは「Enlightenによるリアルタイムグローバルイルミネーション」と題しまして、Enlightenがゲーム開発に与えるインパクトについてご紹介させていただきます。
  2. こちらが本日のアジェンダです。 まずはじめにEnlightenがどのようなツールなのかその概要をご紹介します。 また具体的にどのように動作するのかといった技術的な詳細にも少し触れたのち、Enlightenを導入した際のワークフローについてご説明いたします。 そして最後にEnlightenを採用したタイトルでの事例についてお話させていただきます。
  3. それでは早速始めさせていただきます。
  4. まず初めにセッションタイトルにもあります「グローバルイルミネーション」について簡単にご説明いたします。 グローバルイルミネーションとはサーフェイス間の光の相互反射によって生じるライティング効果のことを指します。 こちらのシーンでEnlightenによるGIを無効化すると…
  5. このようになります。 (ポインタで指しながら)この辺りの岩間から差し込む光が直接的に当たっている領域以外は完全に真っ暗になってしまいます。
  6. 再度EnlightenによるGIを有効化します。 (ポインタで指しながら)直接的に光が当たっているこれらの領域から光が反射し、洞窟内全体に光が行き届いている様子がご確認いただけるかと思います。
  7. ゲームにおけるGIを実現するためのソリューションとしては、事前にライティング計算を行った結果を参照するスタティックな手法が主流となっています。 しかし、それらには「ランタイムでの時間変化などの表現が難しい」、「ライトのプロパティを変更してから、その効果を確認するまでに時間がかかる」などといった様々な課題があります。
  8. そのような背景を踏まえて、EnlightenはリアルタイムのGIを実現するためのミドルウェアとして開発されました。 お使いのゲームエンジンにインテグレートしていただくことで、Enlightenが出力する光の相互作用が反映されたリアリスティックな表現を取り入れることが可能になります。 一般的なGIソリューションが採用しているライトベイクなどとは異なり、EnlightenはGIの計算をランタイムで実行する点が大きな特徴です。 これによってEnlightenはゲームプレイ中にライトやマテリアルのプロパティを変更するといった「動的なライティング」を実現することができるのです。
  9. ここでEnlightenの最新デモ動画をご覧頂きたいと思います。 [再生開始:SeastackbayHDRSDR.mp4] こちらは今年のGDCにて発表したデモです。以前より公開していたSeastackBayというデモに改良を加えたものになります。 開発環境としてはEnlightenのインテグレーションを行ったUnrealEngine4を使用しております。 一般的なゲーム空間を想定し、約5km x 5kmの25km^2ほどの規模のシーンとなっております。 このデモは主にEnlightenの主要な特徴である動的なライティングやコンソールでのリアルタイム動作をご紹介するためのものでしたが、 今回のアップデートにてHDRレンダリングについてもお見せできるようになりました。 残念ながらこの動画からはその違いを確認することができませんが、私たちのブースにてHDRモニタでのデモの展示を行っております。 ご興味のある方はぜひお立ち寄りください。 [ある程度のところで止める] ではスライドに戻ります。
  10. それでは改めてEnlightenによるGIの効果をご覧いただきましょう。 こちらは只今お見せしたデモ内のとあるシーンのスクリーンショットです。 ここでEnlightenを無効化してみると…
  11. このようになります。 先ほどと同じく直接光が当たっていない領域は完全に真っ暗になってしまいます。
  12. 再びEnlightenを有効化してみます。 右側の崖に当たった光が反射して、直接光が当たらない領域を柔らかく照らしている様子が確認できるかと思います。 Enlightenを用いることで、このように光源からの直接的な光だけでなくサーフェイス上で反射した間接的な光についても正しく取り扱うことができるようになります。
  13. こちらもデモ内の異なるシーンのスクリーンショットです。 このような入り組んだ地形では間接光によるライティングの効果が特に強く表れやすいです。
  14. 同一シーンでEnlightenを用いずにUE4の標準機能(スカイライト)のみで動的なライティングを実現した場合のスクリーンショットがこちらになります。 すべてのオブジェクトが均一にライティングされているため、谷底の深さ、奥行きがほとんど感じられません。
  15. 再びEnlightenによる動的ライティングのスクリーンショットに戻ります。 Enlightenはオブジェクト間の光の相互反射を取り扱うことができるため、直接光が当たっている領域から反射した光が谷底に向かうにつれて徐々に減衰していく様子が適切に表現されています。 動的なライティング環境において、このようなGIの効果を導入できる点はEnlightenの大きな強みとなっております。
  16. ここまでのスライドでEnlightenによって得られる見た目のインパクトについてはお分かりいただけたかと思いますので、ここで少しEnlightenのご提供についてもお話させていただきます。 先ほど申しましたように、Enlightenはいかなるゲームエンジンにも組み込んで使用していただくことができます。 ご自身のゲームエンジンに組み込んでいただく場合はスタンドアロンSDKの形での提供を、UnrealEngine4をお使いの場合は弊社でインテグレーションを行ったコードを提供いたします。 どちらのバージョンにおいても、Playstation4やXbox One、Nintendo Switchなど主要なプラットフォームを全てサポートしております。
  17. またEnlightenの開発・サポート体制について改めてご説明させていただきます。 EnlightenはもともとARM社の傘下であるGeomerics社が開発していたものですが、昨年5月にシリコンスタジオが開発をはじめとする各種権利を取得いたしました。 それにあわせてGeomerics社からシリコンスタジオにスタッフも移ってきており、現在は新しい体制にて開発を進めております。 基本的には変わらずEnlightenの開発及びサポートを行っておりますが、1つ大きな変更点として日本語をベースとしたお問い合わせに対応できるようになりました。 従来までは窓口が英語のみとなっていたため国内のお客様にとっては難しい部分もあったかと思いますが、ご安心してお問い合わせいただける体制になっております。
  18. 続きまして、Enlightenについて少し掘り下げてご説明させていただきます。
  19. まずはEnlightenの基本的な機能や構成についてです。
  20. EnlightenはGIの計算にラジオシティ法を採用しております。 ラジオシティ法では、初めに図のようにシーンを細かいパッチに分割します。 続いて各パッチが互いにどの程度光を反射しあうのか、影響度を計算します。この影響度のことをフォームファクタと呼びます。 最終的にフォームファクタに基づき、それぞれのパッチがどの程度光を反射するのかを計算して間接照明を実現するのです。 ラジオシティ法の計算コストは主にパッチ数に依存しますが、一般的にはそれなりに高い計算負荷がかかります。 Enlightenはリアルタイム処理を実現するために、この問題に対して次のようなアプローチをとりました。
  21. 方法はいたってシンプルです。ラジオシティ法の計算を事前に計算できる部分とそうでない部分に分割したのです。 EnlightenではそれぞれのコンポーネントをPrecomputeとRuntimeと呼称しています。
  22. Precomputeではシーン中のスタティックなオブジェクトを入力として与え、それらをパッチに分割します。中央の図が分割されたパッチを可視化したビューになります。 その後それぞれのパッチ間の影響度すなわちフォームファクタを計算します。右図が手前のあるパッチのフォームファクタの値を可視化したものです。 パッチ間に障害物が存在しないものだけ抽出されていることがわかります。
  23. RuntimeではPrecomputeで計算したフォームファクタを基に、実際のライティング計算を行います。 このとき、ゲーム側からは各メッシュのマテリアル情報とシーンのライト情報を受け取ります。 Enlightenから出力されるライティング計算の結果には様々な形式のデータが含まれます。
  24. 主な出力はライトマップとプローブです。 こちらにはEnlightenが計算した間接光によるディフューズ成分のみが含まれます。 またその他にリフレクションのためのキューブマップも出力します。
  25. ライトマップとプローブについて簡単にご説明いたします。 ライトマップはサーフェイスのライティング結果をテクスチャに格納したもので、主にスタティックなオブジェクトで使用できます。 一方プローブはボリュームに対するライティングを行うためのもので、スタティックなオブジェクトまたは移動するオブジェクトに使用できます。
  26. ライトマップとプローブによるライティングの使い分けについて、こちらのシーンを例にしながら詳しく見ていきましょう。
  27. 各オブジェクトがどちらの手法を用いてライティングしているか可視化したものがこちらです。 オレンジ色のオブジェクトがライトマップによるライティングを、緑色のオブジェクトがプローブによるライティングを行っております。 岩のような大きなオブジェクトにはライトマップが、草のような小さなオブジェクトにはプローブが使われている様子が確認できます。 なお、ライトマップ適用オブジェクトに表示されているグリッドはライトマップの解像度を表しています。
  28. 同一のビューでさらにプローブを可視化したものがこちらです。 大量に配置された白い球が、それぞれプローブを表しています。 これらのプローブはプローブを使ったオブジェクトの周囲にEnlightenによって自動的に配置されます。 また追加で任意の領域にプローブを配置させることも可能です。 ライトマップやプローブは一見かなり粗い解像度のように見えますが…
  29. Enlightenの出力には間接光成分のみしか含まれないため、値を補間することによって一般的なライトベイクに必要なテクスチャよりも少ない解像度で十分な見た目が得られます。
  30. 続いてキューブマップについてです。 物理ベースレンダリングにおいて、リアルな結果を得るためには正確なリフレクションが必要です。 シーン内のライトが変化したときには、リフレクションにもその結果が正しく反映されていなければなりません。 Enlightenはリフレクションキューブマップをリアルタイムに更新するため、動的な反射を実現できます。 こちらでは静止画のためわかりづらいですが、デモでは画面手前の溶岩の明るさの変化に応じて、映り込みが変化する様子が確認できます。
  31. また溶岩の発光にはエミッシブサーフェイスという機能を使用しております。 これはEnlightenの特徴的な機能の1つで、オブジェクト自身を発光させ、エリアライトのように扱うことができます。 通常のライティング計算の中で処理されるので、この機能を使用しても追加のコストが発生することはありません。
  32. 最後にEnlightenの処理負荷について少しお話させていただきます。 Enlighten Runtimeはライティング計算をすべてCPUで非同期に実行しており、ゲームをブロックすることなく動作します。 ランタイムのコストはシーン構成に依存し、主にライトマップのピクセル数やプローブ数といったシーンの規模、クオリティに応じたものになります。 クオリティとの調整で処理負荷を下げることも可能ですが、
  33. こちらにあるように、間接光の更新反映までのレイテンシとのトレードオフで処理負荷の影響を下げることもできます。 ①のようにEnlightenのタスクを常にフルで割り当てるようにすることもできますし、②のようにフレーム毎に上限を設けて処理を複数フレームに分散することもできます。 この図の例ですと、①は更新が反映されるのは2フレーム後、②は更新が反映されるのが4フレーム後ということになります。 更新までのレイテンシは大きくなりますが、その分1フレーム中にEnlightenに割り当てるバジェットを少なくすることもできるのです。 このように更新を遅らせた場合でも見た目としては、ほぼ違和感がありません。
  34. ここまでEnlightenの基本的な部分についてご紹介させていただきました。 ここからは実際にEnlightenをご使用いただく場合、アーティストがどのようなワークフローで作業を行うのかご説明いたします。
  35. 開発チームとして推奨しているワークフローはこのようになります。 それぞれ順を追って解説いたします。
  36. まずはじめにシーンの設定についてです。
  37. Enlightenが効率的にライティングできるシーンを構築するために、アーティストは以下のような設定を行います。 事前計算にどのオブジェクトを含め、どのオブジェクトを除外するのか、 各オブジェクトはライトマップとプローブのどちらを使用してライティングするのか、 それぞれどのような解像度を適用するのか、 効率よくライトマップのUVが生成できているのか、などです。
  38. まず初めにどのオブジェクトを事前計算に含むのか決定する必要があります。 冒頭でお見せしたシーンを例にご説明いたします。 最終的なシーンには様々なオブジェクトが配置されていますが…
  39. 同一シーンで事前計算に寄与しないオブジェクトを削除するとこのようになります。 光の反射への影響が大きいオブジェクトはそのまま残っていますが、細かい草などのオブジェクトが除外されていることが分かります。 これによって見た目を損なうことなく計算コストを下げることができます。
  40. 再度シーンに含まれるすべてのオブジェクトを表示しています。 事前計算に含まれなかった細かなオブジェクトは間接光計算時に無視されるため光を反射することはありませんが、計算済みの間接照明のライティング結果を参照することは可能です。
  41. 続いてライトマップとプローブのどちらを使用するかについてです。 Enlightenは効率的なライティングを行うために、ライトマップとプローブの両方を採用しています。 先ほどと同じく、オレンジがライトマップ、緑がプローブを使用しているオブジェクトになります。 基本的にはスタティックなオブジェクトはライトマップを動的なオブジェクトはプローブを採用する形になりますが、 それ以外に後ほどご説明しますライトマップのUV効率が悪いオブジェクトについてもプローブを使うことが望ましいです。
  42. こちらはEnlightenのライトマップ解像度を表示したビューです。 オブジェクトにマッピングされたグリッドの四角がライトマップの1ピクセルを表しています。 緑、オレンジ、紫と異なる解像度が適用されている様子がご覧いただけるかと思います。 プレイヤーがどの程度まで近づくのかを基準に適切な解像度を選択することで、クオリティを維持しつつ高いパフォーマンスが得られます。
  43. 最後にライトマップのUV展開についてです。 この図は一般的なDCCツールにてオブジェクトをUV展開した結果ですが、オブジェクトが細かく分解されているためピクセル数が多くなっています。 効率的なUV展開を行うことはとても難しい問題です。 しかしながらEnlightenにはこの作業をサポートする機能があります。
  44. Enlightenは「AutoUV」という機能を実装しており、自動的に単純化された効率の良いライトマップUVを生成するのです。 先ほどと同一のメッシュをこのアルゴリズムによってUV展開すると、ピクセル数が大きく削減されました。 大抵のケースにおいては、この手法を適用するだけで問題なく動作しますが、
  45. 複雑な有機形状を持つオブジェクトに対しては、うまくいかないことがあります。 このようなケースではライトマップではなく、プローブによるライティングを選択していただくことで効率的な描画が行えます。
  46. またライトマップのピクセル数削減に役立つ機能として、共有ライトマップというものもあります。 他のオブジェクトに隣接するオブジェクトに対して、それ自体にライトマップUVを持たせず、近傍オブジェクトのライトマップを参照させる機能です。 図にあるように壁にあるポスターなど平面的な装飾物において非常に有用です。
  47. シーンのセットアップについては以上です。 設定の完了後、Precomputeを実行してランタイム用のデータを生成します。
  48. Precomputeは分散処理に対応しております。 Incredibuildなどを使用することで複数台のマシンにて処理を並列に実行できます。 計算時間はシーンの規模や複雑度など様々な要因によって変動します。 また二回目以降の実行時は更新のない箇所はスキップできるので、実行時間が短縮される可能性があります。
  49. 事前計算が完了したら、不正なライティング結果がないか確認します。 一番シンプルな方法は明るいスカイライトを配置したのちに、粗いマテリアルを適用してシーンを描画という手法です。 ここでなにか問題があれば最初に戻ってシーンの調整を行います。
  50. 特に問題がなければ、下準備は完了です。 以降は変更のフィードバックを即座に得ながらライティングを調整することができます。
  51. 実際に編集の様子をご覧いただきましょう。 [動画再生:Seastack Bay workflow - Ivan‘s session.mp4] こちらは事前計算を含めたセットアップが完了したシーンになります。 ライティングを有効化したのちに直接光を有効化、その後少しずつ間接光成分を強くしています。 またライトの向きや色を変更していますが、すぐに変更結果が反映されている様子が確認できるかと思います。 このようなパラメータ変更はライトベイクに基づくGIソリューションでは再ベイクが必要になりますが、Enlightenでは不要です。 待ち時間なしにライト調整ができるのでライティングのクオリティアップに集中することができるのです。 [ある程度のところで止める]
  52. Enlightenのワークフローについては以上です。 それでは実際にEnlightenを採用したタイトルでの事例を少しご紹介させていただきます。
  53. EnlightenはGeomerics時代から多くの著名タイトルでの採用実績がございます。 その中で弊社より公表可能となっているタイトルがこちらになります。 この場で紹介できないのが大変残念なんですが、この他にも多数の採用実績や現在開発中の案件があります。 こちらに挙げさせていただいた各タイトルからもお分かりいただけるかと思いますが、 Enlightenはフォトリアルから絵画調まで様々な描画表現においてご活用いただけます。 本日はこの中でも特に「Hellblade: Senua‘s Sacrifice」での事例をご紹介いたします。
  54. 「Hellblade: Senua’s Sacrifice」はUnrealEngine4とEnlightenという環境でNinja Theory様が開発を行いました。 マルチプラットフォーム向けに開発されましたが、見た目に関してはPlayStation4を基準に調整を行っております。 このゲームの特徴的なシステムの1つにゲームプレイ中に主人公の心情を反映して天候が変化するというものがありますが、 これを実現するうえでEnlightenによる動的なライティングは重要な役割を担いました。
  55. Hellbladeは非常に高いクオリティの見た目を実現しています。
  56. 同一シーンにおいても、ライティングがゲーム中に大きく変化します。
  57. このようなライティングの変化は、主人公の感情の変化に応じたものです。 強い恐怖を感じている状態では、このように重苦しい雰囲気ですが…
  58. 安心して落ち着くと、このようになります。 大きくライティングが変わっており、先ほど同じシーンですが全く異なる印象受けます。
  59. このように動的にライティングが変更されるケースでは、リアルタイムGIソリューションであるEnlightenが大いに役立ちます。 どのようなライティング状況においてもGIの効果を受けた一貫した見た目が維持でき、キャラクタが確かにその空間にいるように感じられます。
  60. ワークフローの面においても、Enlightenの導入によって大きな変化がありました。 Hellbladeは非常に少人数のチームによって開発されていますが、先ほど紹介しましたライトマップUVの自動生成や、プローブの自動配置などを活用することによって アーティストはアセットのブラッシュアップに多くのリソースを割くことができたそうです。 またライトの調整時にベイクによる待ち時間が発生しない点も作業効率のアップにつながったと伺っております。
  61. Enlightenは「リアルタイムGIソリューション」であるので、インゲームでの動的なライティングに注目が集まりがちですが、 今回のHellbladeのようにライティングワークフローを改善できるといったケースも多いです。
  62. 事例紹介は以上になります。 最後に改めてEnlightenとはどのようなツールなのかおさらいしたいと思います。
  63. Enlightenを導入することで、間接光の作り出すリアリティのある見た目をゲームに組み込むことができます。 またEnlightenはリアルタイムGIソリューションですので、ゲームプレイ中にライトやマテリアルのプロパティを変更することができます。 これによって従来では実現が難しかった時間や天候の変化を高いクオリティを維持しながら表現することができるようになります。 更に効率的なワークフローもEnlightenの特徴の一つです。 アーティストが即座フィードバックを得ながらライトの調整を行える点は、作業時間の短縮に大いに役立ちます。 皆様のゲーム開発を品質と効率の両面において強力にサポートできるツールとなっておりますので、ご興味を持たれた方はぜひ弊社のブースまでお越しください。
  64. 私の方からは以上です。 何かご質問などはございますでしょうか。 -質疑- 本日のセッションは以上になりますが、最後に一件告知をさせてください。
  65. 先日公開されたばかりですが…今年のCEDECにてEnlightenに関するセッションをさせていただくことになりました。 内容としては主にウィニングイレブン2019におけるEnlightenの採用事例をご紹介する予定です。 コナミ様のご協力のもと、開発チームのスタッフの方にもご登壇いただきますので、実際にEnlightenを使用した現場の声もお届けできるかと思います。 是非こちらにもご参加いただけると幸いです。
  66. 最後にEnlightenの今後についてです。
  67. Enlightenは現在も様々な改善を行っております。 ワークフローをより最適化し、アーティストがEnlightenの最適な結果をより簡単に得られるようにすること、 より大きくなっているゲームワールドに対応し、広大な空間おいても効率的にライティングできるようにすること、 そしてドキュメント、サンプルを充実させることで、皆様がご自身のエンジンにEnlightenをインテグレーションしやすくすること、 などを目標とし研究・開発を進めております。