PickupSnapHandler
Pickupオブジェクトを手放したとき、その置かれた位置を補正 (スナップ) するためのコンポーネントです。
PickupSnapPointと連携して使います。
flowchart LR
accTitle: class relationship
accDescr: PickupSnapHandler inherits UdonSharpBehaviour, and depends to PickupSnapPoint.
snap("<u>**PickupSnapHandler**</u>")
behaviour("UdonSharpBehaviour")
point(["PickupSnapPoint"])
behaviour -->|継承| snap
snap <-.->|依存| point
関連コンポーネント
機能について
- 本コンポーネントと同時に、以下のコンポーネントが必要です。
- Collider系コンポーネント
- VRCPickup
- RigidBody
- VRCObjectSync (任意)
- PickupSnapPointのCollider判定に入っているときに手放されると、後述の設定に応じて位置をスナップします。
設定項目
Settings | 説明 |
---|---|
Snap ID | スナップ対象となるIDを設定します。 一致するIDを持ったPickupSnapPointにのみスナップできます。1 |
Point | 最初から判定に入っているPickupSnapPointを設定します。2 |
仕様詳細
- オブジェクトのスナップは
VRCPickup::Teleport(...)
によって行われます。- テレポート先は、PickupSnapPointが付与されたGameObjectと同じ位置・角度です。
注釈
-
ただし
SnapID
が設定されていないPickupSnapPointには、本コンポーネントのSnapID
を無視してスナップします。 ↩ -
Unityの仕様により、最初から判定に入っているオブジェクトがスナップ対象とならない現象を回避するための設定です。最初からPickupSnapPointの判定に入っていない場合は、意図しない挙動を防止するためオブジェクトを設定せずにご利用ください。 ↩