【トラブルシュート集】VR開発をはじめて困ったことリスト
スポンサーリンク
興味本位でやったこともないのにVR開発(Oculus Quest)の案件を受けてしまいトライアンドエラーでなんとか頑張った。その中で出てきたトラブルなどを解決法とともにメモる。
Unityがいいのか、Unreal Engineがいいのか
Unityの場合、開発関連の書籍が多く出ているので、初心者でも開発はしやすいと思います。またUnreal Engineでも言えることですがUdemyでもかなり動画がでているので、書籍ではなくてUdemyで十分じゃないかという気もしています。
ただ、開発を進めると、Unityで作ったものをOculus で動かすとアプリ起動はできるがバグることが多くてあまりオススメではない。
そんなトラブルも有り、Unreal Engineでゼロから作り直してみましたが、操作性なども合わせてUnreal Engineのほうが使いやすかったです。
あと作ったものもUnreal Engineのほうが安定している印象です。
公開する際に、どのくらい販売するかで、Unreal EngineかUnityかで利用料の支払いが変わるようですが、そんな人気もでるわけではないですし、その点ではどっちでもいいでしょう。
[Unity]Oculus Questにビルドしてアプリを起動しても、アプリのwindowが小さい。フルスクリーンにならない
[解決法]
Oculus Integration (Asset store)のインストール。Project Setting > XR Plug-in Management でインストールでAndroidのOculus を有効化
・Oculus Quest でアプリを起動しても、シーンがついてくる。頭を動かしても連動しない。何度Buildしてもアプリを360度で見渡すことができず
[Unity]Oculusで確認するとジャミジャミする。バグる。チカチカする。
[解決法]
見当たらず。Unreal Engineに乗り換え
[Unreal Engine] UE4.7でOculus Questに転送したあと、アプリを起動するとエラーで落ちる
[解決法]
どうもランドスケープが対応していないっぽい。
参照:Unreal Engine 4.26.2 Landscape Error "Array out of bounds" : unrealengine4
[Unreal Engine] ビルドが長すぎる
[解決法]
なし。待つのみ。
[Unreal Engine] マーケットプレイスで購入したものを配置しようとしてもパーツごとでしか配置ができない。
[解決法]
マップでセットになっているのがあるので、それをmerge actorでアクターかすると配置できる。
[Unreal Engine] ランドスケープに塗る(ペイントする)マテリアルを作ったが、Layerに出て来ない。
[解決法]
ランドスケープ全体のマテリアル設定で、手動で作ったマテリアルを選択したらでてきた
[Unreal Engine] ランドスケープでマテリアルを塗ろうとしたら「This layer has no layer info assigned yet. You must create or assign a layer info before you can paint this layer.」と言われた
[解決法]
マテリアルの隣りにある+マークで layer info(normal)を作った。
開発はしないとしても、今安売りしているのでVR体験をしてみるのもあり。ちなみに本当はAR案件でしたが、Oculusをお客様に試してもらったVR案件に発展しました。百聞は一見にしかずですね。
[Unreal Engine] ビルド中に以下のエラーがでる。
LogPlayLevel: Error: UAT: ERROR: The following files are set to be staged, but contain restricted folder names ("Windows"):
LogPlayLevel: UAT: VR_FUNAHASHI/Content/MJH/A_Arch/Windows/Meshes/SM_frame_spec_1.uasset
LogPlayLevel: UAT: VR_FUNAHASHI/Content/MJH/A_Arch/Windows/Meshes/SM_frame_spec_1.uexp
LogPlayLevel: UAT: VR_FUNAHASHI/Content/MJH/A_Arch/Windows/Meshes/SM_frame_spec_2.uasset
[解決法]
エラーメッセージに以下があるのでそのまま反映する。
LogPlayLevel: UAT: Alternatively, allow list them using this syntax in DefaultGame.ini:
LogPlayLevel: UAT: [Staging]
LogPlayLevel: UAT: +AllowedDirectories=MyGame/Content/Foo
[Unreal Engine] ビルドでエラーがでたところから再実行する方法
[Unreal Engine]
Lightmap UV are overlapping by 93.3%. Please adjust content - Enable Error Coloring to visualize. Unreal Engine