SONY

アプリを垂直設置と標準設置両対応にする。

垂直設置対応

SDK ver.2.3.0 リリースに伴い、今まで 45 度の斜めに傾けた状態(標準設置:Standard mode)での利用が推奨されていた ELF-SR2 を、垂直に立てた状態(垂直設置:Wall mount mode)で使用することができるようになりました。
一方でアプリを垂直設置対応すると、ELF-SR1 は垂直設置できないため傾いた状態で表示されてしまいます。また ELF-SR2 を標準設置で使用するときも同様に傾いて表示されます。そのため、そのままでは Wall mount mode に対応したアプリは垂直設置した ELF-SR2 専用になります。垂直設置/標準設置でも正しく表示できるようにするためには次のような対応が必要になります。

対応方法

垂直設置、標準設置双方に対応する方法には次の2つの方法があります。(Unity の場合を例に説明します。UE の場合も同様な方法が可能です。)

シーンを分ける。

通常 SRDisplay Manager を配置するシーンは1つですが、垂直設置用と標準設置用との2つのシーンを作成し、それぞれに SRDisplay Manager を配置します。そして垂直設置用のシーンでは Is Wallmount Mode をオンにし、標準設置用のシーンではオフにします。
アプリでどちらの環境で実行するか選択できる設定を用意してユーザーの選択によって表示するシーンを切り替えます。
この方法はシーンを 2 つ用意する必要がありますが、表示範囲が異なる垂直設置と標準設置でオブジェクトの位置を調整し表示を最適化できるメリットがあります。

実行時に Wall mount Mode を切り換える。

こちらの方法は一つの SRDisplay Manager を使用してアプリを作成しますが、実行時に Is Wallmount Mode を切り替えるようにします。
こちらの方法もアプリでどちらの環境で実行するか選択する設定を用意してユーザーが選択できるようにします。
アプリ起動時に垂直設置が選択されていたら Is Wallmount Mode をオンにし、標準設置が選択されていたら Is Wallmount Mode をオフにします。

_srdManager = SRDSceneEnvironment.GetSRDManager();
_srdManager.IsWallmountMode = true;           // enable Wall mount mode

UE の場合は以下のように Blueprint のノードが用意されています。 BP_node

この方法は一つのシーンで対応できるメリットがありますが、一方で同一のシーンを異なる表示範囲でレンダリングすることになるためオブジェクトの配置に注意が必要となる場合があります。

コンテンツによっては両対応が難しい場合もありますが、このような工夫をすることで垂直設置でも標準設置でも実行可能なアプリを作成することができます。


参考 : 垂直設置での使用が可能になりました
参考 : 垂直設置対応のアプリを作ってみよう