トマシープが学ぶ

Unity/VR/AR/デザイン好きのミーハー 記事内容は自分用のメモです

PolySpatialでPhotonを使ってマルチプレイしたい

tabletopkitでVisionOSのPersonaを使ったマルチプレイを作りたかったが、swiftがわからなすぎたので、Unityでマルチプレイする

Photon✖️AVP

PhotonにAVPのページがある。ちゃんと対応しているらしい

doc.photonengine.com

今回は触らないが、なんとQuestとAVPのクロスプラットフォームなマルチプレイのサンプルもある!!

中級

doc.photonengine.com

上級

doc.photonengine.com

 

ただ、まずはシンプルなVR Sharedというサンプルを動かす・・・と思ったが、これ自体がPolySpatialに対応しているわけではない気がする。PolySpatialのセットアップもしないといけないよな・・・めんどくさいな・・・

doc.photonengine.com

それなら多少複雑でも、最初からVisionProに対応しているクラスプラットフォームのサンプルを触ったほうがいいだろうか・・・?

などとVisionOSに関するページをいろいろみていたら、XR Addonsのページに「クロスプラットフォームもできる、最も簡単なセットアップ方法」みたいなチュートリアル動画があった。

doc.photonengine.com

Cubeを共有するまでのセットアップ方法っぽい。これが一番VisionOS用でシンプルで1から10まで説明してくれてそうなのでやってみる。Questとのクロスプラットフォームも興味深いし

セットアップ

www.youtube.com

Unity2022.3をインストール

ちなみにPhotonの最新SDKはUnity 2021.3.18 or later, 2022.3.x, or 2023.x.対応でUnity6000対応していない;;

マルチプレイ化したいプロジェクトをUnity6000で作ってた;;

 

基本的には動画の通り順調にできた。

assetstore.unity.com

doc.photonengine.com

こういうのを押していくだけの簡単な作業。

リップシンクボタンを押したらアバターに口つくのおもしろ

動画と違ったのはFusionAdoonフォルダを自分で作ったとこぐらいかな?

あとそもそも、動画はWindowsでやってるけど、VisionPro使うから私はMacでやってる。

あとビルドする前にマイクのDescriptionを書く

ビルド&動かす

 VisionOS

無事Xcodeビルドもできた

だがアバターが動かない。手とかも追従している気配がない。

Cubeとかは動かせて、UnityEditorでも入ったらちゃんと位置が同期していた。Voiceも通じてた。

手がオブジェクトの前面に出ないのも気になる。

掴むものはGrabbableCubeの一番上を残して、その下にコライダー付きの物を置けば良い

 

UnityEditorで実行したときなんかエラー出てた。レイヤーを追加する必要があるらしい

あとYoutubeの動画だと手のモデルが追従していたが、そもそも手のモデルがない。

動画見返したら、PolySpatialの説明に入った時点で、それまでなかった手のモデルが追加されていた。多分これ。

でもこれを追加した後も、AVP側で手が追従することはなかった。

 Quest(Android)

Androidビルドもmacでできた。初めてMacでAndroidビルドした気がする。

ARM64にチェックを入れる必要があった。

あとInput Handlingがbothだよ〜って警告?みたいなのが出たのでNewのみにした

これでQuestにapkを入れたら、アバターは動いたけど、手が出ないしCubeも触れない・・・あとすごいアプリが不安定。一度ヘッドセットを離すと2度と再開しない

ちゃんとボイスは通じてリップシンクはしてた

まだUnityEditorでエラー出てるので、AIに聞いてレイヤー周り解決

それでも諸々の不具合は変わらず・・・

解決?

もしかしてAVPの方はhandtrackingにトラッキングについてinfo.plistに書いたほうがいいか?関係ないか

 

AVPのアバターは、PlayerSettingでVisionOSにチェックを入れたら動くようになった

手は相変わらず動かない。



discordに入った

www.photonengine.com


doc.photonengine.com