ルームのギフトをいい感じに改善した話 Now in REALITY Tech #106
こんにちは、アバターシステムチーム所属Unityエンジニアのyaegakiです。
REALITYでは日々様々な改善が行われていますが、今回はルームのギフト表示改善について紹介します。
改善前の状態
ルームが実装された当時のREALITYではルームでギフトをもらうとどこにいても同じ位置に落ちてきてしまうという問題がありました。そのため、中心から離れた位置にいるとギフトが見えづらい状態でした。
これは内部的にはギフトはGiftTableと呼ばれている見えないオブジェクトの位置に落ちてきているためです。
改善案1
いい感じにするためにはギフトがアバターの周りに落ちてくるようにしなければなりません。しかし、単純にアバターの周りに落ちてくるようにしてしまうとGiftTableの範囲から外れてしまいます。
GiftTableの範囲から外れたギフトは落下し続けて画面に映らなくなってしまいます。これを防ぐために最初に検討したのは床や家具にギフトが乗るようにするというものです。
これによって無限に落下していくことはなくなりましたが、床までは落ちてしまいます。アバターとギフトを同時に画面に映そうとするとあんまりいい感じにはなりません。
改善案2
次に検討したのは見えないオブジェクトを部屋の床全体に設置するというものです。この方法はGiftTableを大きくすればほぼ同等のことをできるので手軽で床まで落ちると言う問題も解決できるものでした。
しかし、ルームではうまくいってもワールドではうまくいかないという問題がありました。
採用案
最終的に採用した案はアバターの腰より低い位置にはギフトが落ちないようにするというものです。挙動としてはとてもシンプルで腰の高さより下になる場合は座標を元に戻しています。
この単純な方法でルームでもワールドでも大体いい感じにギフトを表示することができるようになりました。
最終的にはこれにプラスして床や家具に乗るようにもしています。
最後に
今回紹介した内容でルームのギフトは当初よりは改善されましたがまだまだ改善すべき部分は残っています。
これからも引き続きREALITYを改善していくのでどうぞよろしくお願いします。