VRChat ワールド作成:ギミック編

ものを出したり消したりするスイッチ(Trigger)
・ミラーのオンオフ・ライトのオンオフ・ドアの開け閉め
などができるようになる

スイッチにするオブジェクトを選択 → [Inspector]タブ → [Add Component] → [VRC_Trigger]を選択して追加 →

画像1

プルダウン部分(Custom)をクリック → [OnInteract] → [Add]で追加 →

画像2

[Actions]内 → [+] → [Basic Events] → [SetGameObjectActive]を選択して追加 →

画像3

[SetGameObjectActive]をクリックすると[Receivers]が出現 →
[Receivers]内[+]をクリック → 入力ボックスが増える →
出てきた入力ボックスにオンオフしたいオブジェクトをドロップして設定 →
[Operation]の右にあるプルダウンを[True]から[Toggle]に変更

画像4

・他人と同期しないようにしたい
素のままだと、ワールド設定といって、全員に操作が反映されてしまう。
そのため、ミラーのオンオフスイッチなどは、ローカル設定にし、他の人と同期しないように設定をする。
[VRC_Trigger]コンポーネント内[Advanced Mode]にチェックをつける →
[OnInteract]の右にあるプルダウンを[AlwaysBufferOne]から[Local]に変更

画像5


●物を持てるようにする(Pickup)
持ちたいオブジェクトを選択 → [Inspector]タブ → [Add Component] → [VRC_Pickup]を選択して追加

以下細かい設定
・手を離しても落下せず宙に浮かぶようにしたい
[Rigidbody]内 → [Use Gravity]のチェックを外す

・手を離すと落下するようにしたい
[Rigidbody]内 → [Use Gravity]のチェックをつける(デフォルト)
このままでは衝突判定が無く、床を突き抜けて落下するのでコライダーを設定する
[Inspector] → [Add Component] → [Box Collider] or [Capsule Collider] ([Mesh Collider]は非推奨)
→ [.へ.]を押してコライダー(緑色の枠)のサイズを調節する

・他人と同期するようにしたい
素のままだと、ローカル設定といって、持った物を動かしても自分にしか反映されない。
そのため、ワールド設定にし、他の人と動かしたものが同期するように設定をする。
[Inspector]タブ → [Add Component] → [VRC_ObjectSync]