MRが楽しい

MRやVRについて学習したことを書き残す

MRTK v2のドキュメントを少しずつ読み解く シーンタイプ

本日は MRTKv2 の調査枠です。
MRTKv2 の Guides ドキュメントを少しずつ読み進めていきます。

MRTKv2のGuidesドキュメント

以下のドキュメントを読み進めていきます。
microsoft.github.io

以下のページでは有志による本ドキュメントの日本語翻訳が行われています。
投稿時点でこちらで未翻訳、または著者が興味のある部分について記事にしていきます。
hololabinc.github.io

本記事では以下のページを読み進めます。
microsoft.github.io
f:id:bluebirdofoz:20200318094015j:plain

シーンタイプ

シーンは3つのタイプに分けられており、各タイプには異なる機能があります。
f:id:bluebirdofoz:20200318094025j:plain

コンテンツシーン

これは一般的なシーンです。
任意の種類のコンテンツを格納でき、任意の組み合わせでロードまたはアンロードできます。

コンテンツシーンはデフォルトで有効になっています。
プロファイルの Content Scenes 配列に含まれるシーンは全て、サービスによってロード/アンロードできます。

マネージャーシーン

必要な MixedRealityToolkit インスタンスを持つ単一のシーンです。
このシーンは起動時に最初にロードされ、アプリの有効期間中はロードされたままになります。
マネージャーシーンは破棄されるべきではない他のオブジェクトもホストできます。
これは DontDestroyOnLoad の推奨される代替手段です。

この機能を有効にするには、プロファイルの[Use Manager Scene]をオンにします。
そしてシーンオブジェクトを[Manager Scene]フィールドにドラッグします。

照明シーン

照明情報と照明オブジェクトを保存する一連のシーンです。
一度にロードできるのは1つだけで、ロード中にそれらの設定を組合せてスムーズな照明遷移を実現できます。

Unityの照明設定(アンビエントライト、スカイボックスなど)は、個々のシーンに関連付けられています。
このため、動作をオーバーライドするのは簡単ではないため、追加ロードを使用する場合は管理が難しい場合があります。
これは、実行時に取得できない照明条件でアセットが作成されたとき、混乱を引き起こす可能性があります。
f:id:bluebirdofoz:20200318094036j:plain

シーンシステムは、ライティングシーンを使用して、編集モードと再生モードの両方で照明の設定の一貫性を維持します。
これは読み込まれているシーンやアクティブなシーンに関係ありません。

この機能を有効にするには、プロファイルの[Use Lighting Scene]をオンにして、[Lighting Scenes]配列に入力します。

キャッシュされた照明設定

プロファイルには照明シーンに保持されている照明設定のキャッシュされたコピーが保存されます。
ライティングシーンでこれらの設定が変更された場合、プレイモードで期待通りにライティングが表示されるよう、キャッシュを更新する必要があります。
キャッシュの設定が古い可能性がある場合、プロファイルに警告が表示されます。
[Update Cached Lighting Settings]をクリックすると、各照明シーンが読み込まれ、設定が抽出され、プロファイルに保存されます。
f:id:bluebirdofoz:20200318094046j:plain

エディターの動作

照明シーンを使用する利点の1つは、編集中にコンテンツが正しく照明されると分かることです。
Scene Service は常に照明シーンをロードし続け、そのシーンの照明設定を現在のアクティブシーンにコピーします。

Scene System のサービスインスペクターを開いて、ロードする照明シーンを変更できます。
編集モードでは照明シーン間を瞬時に移行できます。プレイモードではトランジションをプレビューできます。
f:id:bluebirdofoz:20200318094101j:plain

注意

通常、アクティブシーンはエディターの照明設定を決定します。
ただし、照明設定を設定するためにこの機能を使用しないことを推奨します。
アクティブシーンは、新しく作成されたオブジェクトがデフォルトで配置される場所でもあるためです。
照明シーンには照明コンポーネントのみを含めることができます。

代わりに、現在の照明シーンの設定はアクティブシーンの設定に自動的にコピーされます。
これにより、コンテンツシーンの照明設定が上書きされることに注意してください。