$shibayu36->blog;

クラスター株式会社のソフトウェアエンジニアです。エンジニアリングや読書などについて書いています。

clusterの推しアバター展示場の写真から写っているワールドへ移動できるようにしました

cluster.mu

自分の推しアバター展示ワールドの写真から写っているワールドへ移動できるといいな〜と思ったのでやってみました。

こんな感じで写真の近くに行くとワールドへ移動する確認が出て移動できる。3D系のマリオみたいな感じで良い!

やり方

以下の資料を参考にした。

ワールド移動ダイアログが出て欲しい場所にコライダーを配置し、World Gate コンポーネントをつけてWorld Idを入れるだけで実現できる。

ハマったポイント

しかし最初はうまくいかなかった。原因はコライダーの高さとプレイヤーの衝突判定の組み合わせの問題だった。

最初の段階では以下のように写真の前にせり出す形でコライダーを配置していた。この時、コライダーの最下部が大体1mちょっとくらいの高さになっていた。

clusterでのプレイヤーの当たり判定はどうなっているかというと、アバターの大きさにかかわらず地面から高さ1m程度までしか当たり判定がない。【cluster】アバターと当たり判定の話|美坂の記事で色々検証してくれている。

この結果、cluster内ではアバターが写真の前に来ているように見えるのに、実際には写真の前にあるコライダーとアバターは衝突していないという現象が起こり、ワールド移動ダイアログが出ない状態になってしまっていた。

そこで以下のように地面までコライダーを伸ばすことによって解決した。