アルゴンUE4&アプリ開発日記

UE4のモバイル開発やアプリ開発をメインに紹介します!主に初心者から中級者向けに紹介していく予定。

【UE4】Daydream第2弾・開発中につまずきそうになった情報まとめ

Daydream開発でつまずきまとめ

Daydreamの開発の中でつまずいた所と勘違いを紹介します。

第一弾でDaydreamの初期設定やボタンイベントについては、

下記リンクで紹介しています!

argonauts.hatenablog.jp

その1.StartCameraFadeが動作しない

そもそもStartCameraFadeが何かわからない人もいるかと思うので、

一応説明しておくと、簡単にFadeInやFadeOutを実装できるノードです。

f:id:yoshikata1990:20180617001601p:plainターゲットは必ず必要ですがこれだけで、画面全体にVR環境でも

画面にフェード処理を加えることができます。

しかしモバイル環境ではプロジェクトの設定により動作しないことがあります。

それは、MobileHDRがOFFの場合になります。

プロジェクト設定で「hdr」で検索して、チェックを入れてあげてください。

f:id:yoshikata1990:20180617021652p:plain

最初のプロジェクト作成の際にスケーラブルな3D・2Dを選択して作成すると、

自動的にMobileHDRがOFFになります。

f:id:yoshikata1990:20180617012840p:plain

スケーラブルな3D・2Dを選択するといろいろな設定がOFFになります。

MobileHDR以外にBloom(発光表現)やモーションブラーなどもOFFになるので注意が必要です。

f:id:yoshikata1990:20180617021244p:plain

その2.モーションコントローラーの角度とか位置とかどうとるの?

モーションコントローラーの角度などはGoogleVRMotionControllerの

コンポーネントがあるのでそこから取得するのかと思ったら、

コンポーネントが持つGetMotionControllerから取得します。

位置はGetWorldLocationで取得して、FowardVectorモーションコントローラーの前方方向の向きをとってきてます。

f:id:yoshikata1990:20180617032224p:plain

その3.公式で用意されているlaserを使用したい。

公式が用意している下の線みたいなのがあります。

これはMotionControllerの機能ではないので説明しておきます。

f:id:yoshikata1990:20180617222020p:plain

コンポーネントでGoogleVRLaserVisualというものがあり、

これで一応の表示はできます。

f:id:yoshikata1990:20180617222227p:plain

ただ、Googleの公式・UE4の公式のどちらにも説明が全く無く、

モーションコントローラーにアタッチしても追従しないので、

注意が必要です。

モーションコントローラーに追従させる場合、

私は面倒臭いことが嫌いなので必要に応じてアタッチします。

今回はこんな感じです。

f:id:yoshikata1990:20180617223334p:plain

最後に・・・まだまだできるはず・・・

GoogleVR用の説明できていないコンポーネントはあるが、

今回はここまでです。特に最後のほうはどこに説明がないので、

UE4でDaydreamを開発する人はぜひ参考にしてみてください。