見出し画像

VRChatでワールドを作るときに参考にしたサイトまとめ

ちょっと前にOculus Quest2を購入したので、VRChatをはじめました。
いろんなワールドで遊んでいると、VRChatってこんなことできるんだ!という面白いギミックがたくさん!
なんか作ってみたいなーと思っていたところで、「Pandora」(パンドラ)という謎解きワールドを知りました。

これがめちゃくちゃ楽しくて、VRChatで謎解き!作りたい!というテンションに突入。自分でも謎解きワールドを作ってみることにしました。

その時に参考にしたサイトを自分用にまとめたものです。

トラストレベル(信用度)上げ

VRChatはワールドをアップロードするのに信用度の基準を満たす必要があるので、まずはVRChatで友達を作ったりいろんなワールドをみてランクを上げます。(治安維持のためにはしょうがないのかなと思いつつも、正直このハードルが一番高いので、できれば変わってほしいと思ったり。。)

Unity + VRChatSDKの導入と最初のアップロード

ワールドがアップロードできるようになったら、まずは、UnityとVRChatSDKの導入が必要です。こちらのサイトがとても分かりやすく、このとおりに最初練習させていただきました。

VRC_Triggerの使い方

ワールドのギミックを作るのに必須なVRC_Trigger。
トリガーとアクションの一覧がまとまっているので何回も見ました。

カスタムアクショントリガーの使い方は、このサイトが一番わかりやすかったです。

VRC_Pickupの使い方

VRChatで物をつかむ方法の解説サイトです。これを見ながら設定したのですが、自分でテストしていると、持ち上げたものが相手からは見えていないことに気づきにくく、アップロードしてから、持ち上げた物の位置を同期するにはVRC_ObjectSyncが必要なのに気づきました。

Animationを使った制御

VRC_TriggerでAnimationBoolをTrueにして、扉などが開くアニメーションを再生するなどの方法は、このサイトで勉強しました。

ただ、謎解きで複数条件を設定するのに、AnimationIntを使ったところ、複数人で遊ぶワールドだとAnimatorで設定したAnimation Intの数値がうまく同期されず、結局は別の方法で実装しました。(VRC_ObjectSyncを使うと内部数値も同期されるらしいのですが、なぜかそれもうまくいかず)

一人用の謎解きワールドなら、1つ目の条件を満たしたらAnimationIntAddで1を追加、2つ目の条件を満たしたら10を追加、3つ目の条件を満たしたら100を追加と設定し、AnimatorではIntの数値が111になったら次のアニメーションを再生といった設定をすることで、正解を入力したかどうかを判定することができます。(1,10,100とするのは同じ入力を3回繰り返したときに、正解と判定されるのを防ぐため)

複数人用のワールドでの実装方法は、今書いているので、書き終わったらアップします。

この記事が気に入ったらサポートをしてみませんか?