ビルドとかうまくいかなくて、いろいろうまくいってないけどいったん公開・・・
iPad用にUnityで作ったARコンテンツ(ARFoundation使用)をHololens2に移植するとしましょう。
もともとARとして出てた空間UIはそんなに変わらないとして、普通の画面UI(アプリ最初のスタート画面)や、マーカー読み込み画面、AR表示時に画面に出てた説明UIをどうやって移植するか・・・どういうデザインにするか・・・
uGUI移植
とりあえずデザインとか何も考えず、uGUIをHololens2で入力・表示できるようにする。
私の場合はARFoundationで作っている。
Unity2018.4.17f1
MRTKセットアップ
基本的にはこちら
MRTK.Foundationの2.3を入れた。
上のメニューのMixedRealityToolkit>Add to Scene Configureを押す
これでシーンにMixedReality~が現れる
Canvas設定
Canvasに自動で「Concert to MRTK Canvas」というボタンがつくのでそれを押す。
Add NearUnteractionTouchableUnityUIも押す。Holo2で手で直接押すときに使うんじゃないかなー?
付く。Holo1のときはポインターだったけど、Holo2は直接押せるのでTouchにしてみた。
ちなみに「Near Interaction Touchable Unity UIがアタッチされたCanvasの手前にあるボタンはタッチでは反応しなくなる」そうです。私もタッチできないけどこれのせいかな
そしてcanvasの位置と大きさをずらす。PosZを1とか2mとかにする。実機で見て調整しないといい距離が分からない。
Scaleもめっちゃ小さくする。WidthとHeightによる。iPadの画面の大きさのままなのでここの縦横比とか゚大きさもHolo用に調整したいなー
EventSystem消す
MRTK以外のEventSystemがシーンにあると怒られるので消したり非アクティブにする。
ARCameraを非アクティブにする
ARFoundationで使ってたと思われるARCameraを非アクティブにした。
しなくてもいいかも・・・
キーボード表示
エディタで確かめる
UnityEditorでゲーム実行したらある程度シミュレーションできる。
操作はこちらが詳しい
設定を変えるときはMixedRealityのInput>Input Data ProvidersでCloneして変える。
タップ(UI選択)は左クリック。
タッチはShiftを押しながらマウスホイール前後でタッチできるそうです!
反応しないことがある。
「Near Interaction Touchable Unity UI」をできる限り消したら、反応するときも出てきた。反応しないこともある・・・
法則が分からない
エラー
動くけどエラーが出てる
NotImplementedException: The method or operation is not implemented.
System.Runtime.InteropServices.Marshal.GetHRForLastWin32Error () (at <e1319b7195c343e79b385cd3aa43f5dc>:0)
WinRT.Mono+ThreadContext..cctor () (at <35663fb70f72449eaca170aea6f2c8b5>:0)
Rethrow as TypeInitializationException: The type initializer for 'ThreadContext' threw an exception.
WinRT.Delegate+InitialReference..ctor (System.Guid iid, System.IntPtr invoke, System.Object invoker) (at <35663fb70f72449eaca170aea6f2c8b5>:0)
ビルドエラー
UWPビルドをしようとするとエラーがいっぱい出てできない
Assets\MixedRealityToolkit.Providers\WindowsMixedReality\Shared\WindowsMixedRealityReprojectionUpdater.cs(8,17): error CS0234: The type or namespace name 'Windows' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)
Mixed Reality Toolkit V2.2.0 の新しいCamera SystemおよびiOS/Android対応について - Qiita
ARFoundationとMRTK
最近ARfoundationがMRTKに対応したとかしてないとか・・・
よくわからない・・・Unity2019.3+MRTK2.3だといいのか?
2018LTSだと何を使ってHololens開発ができるのか?主語がなくない???
ARFoundationで何ができるんだろう?マーカー読んだり?
WindowsXRPluginとかXRManagementってなんだ????
2.2のときはUnityARというのがあったけど、2.3だとない。
デザイン事例
PORTAL
「iPad Pro用に作ったARアプリをnrealというARGlassに移植する際の話」ということでまさに!UIのことはほとんどないけど神資料。
ここでメモしている↓
AR City in Kobe
神戸の街づくりをARでできるもの。
iPad版とMagicLeap版両方見たけど、iPad版のUIよく覚えてないなー。
AR City in Kobe - ARクラウド技術でみんなで創る2030年の神戸
より引用
画面右から物を選べるのか(23秒当たり)
MagicLeapではメニュー画面は空間に浮かんで、コントローラーのポインターで選択する方式だった。ポインター当てたら大きさが少し変化したり、くるくるしたり、インタラクションがすごく入っててすごくよかった(語彙力)
B-21 MESONさんのARCity体験した!
— トマシープ (@tomasheep) 2020年1月24日
全てのクオリティが高い!UIも参考にしたい🤩 pic.twitter.com/TSRQZkwtyw