Skip to content

frou01/GrabAnimatorController

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Grab Animator Controller

概要

GrabAnimatorControllerはPickupを掴むことでAnimatorを制御するためのU#スクリプト及びPrefabです。

目次

- Runtime(VRC)

  • 共通

    Udonの付いたPickUpが持たれて移動されると、移動に応じてAnimatorの値を変化させます。

    設定値/仕様
    設定値 概要
    controllerTransform 移動/回転に応じて動く、PickUpの基部となるオブジェクトです。位置・回転はUdonが制御するためエディタ上での変更は反映できません。位置を移動する場合、一つ上の階層にオブジェクトを挟んでそちらを移動してください。
    TargetAnimator 制御の対象になるAnimatorです。
    MultiTargetAnimators 追加の制御対象Animatorです。TargetAnimatorは別途入れないと使用できません。
    paramaterName パラメーター名を指定します。
    (設定名)_segment[integer]、(設定名)_normpos[float]、(設定名)_position[float]の三種類を用います。
    segment_points パラメーターの区切り値です。デジタルな制御を行う場合に便利です。
    2値は必須で、最大と最小が操作の制限値になります。回転のコントローラーは±180度以上をサポートしていません。
    snap_points スナップ値です。segment_pointsで区間を複数設けた場合、同じ区間内のみスナップします。
    useHaptic segment_pointsで設定した区切り値をまたぐ際にVRコントローラーを振動させるかを設定します。
    autoDisable 自動でスクリプト無効化(Update処理停止)を行うかどうかを設定します。
    ForceAutoDisable 後述するAnimatorによる制御を受けている場合も、スクリプト無効化するかを設定します。
    autoDisableTime PickUpを降ろしてから、スクリプトが無効化されるまでの時間です[s]
    currentSegment 初期設定の区間です
    controllerPosition 初期設定の回転/移動量です。controllerTransform.localPositon/localRotationがそれぞれ0の状態からの相対値です。

    仕様:

    • controllerTransformはY軸で回転/移動します。
    • (設定名)_positionのパラメーターをAnimatorから制御すると、Udon側の値を変更できます。戻しバネや特定条件での自動制御等に使用できます。
    • (設定名)_normposへ、各区切り内の最小-最大間の位置を0-1で入力します。animationStateのMotionTimeでの制御に便利です。
  • コントローラーの種別

    Prefab Name 制御元 制御反映
    ControlLever_Prefab PickUp位置 Y軸回転
    ControlValve_Prefab PickUp回転(捻り) Y軸回転
    ControlValever_Prefab PickUp位置+PickUp回転(捻り) Y軸回転
    ControlSlider_Prefab PickUp位置 Y軸移動
  • Controller_Screw

    Lever/Valve/Valeverの三種について、一回転以上に対応させるためのスクリプトです。

    設定値/仕様
    設定値 概要
    controllerTransform コントローラー本体と共通
    TargetAnimator コントローラー本体と共通
    ScrewParamaterName AnimatorParamater名です。回転量を最小-最大の間で0.0-1.0に内分した値を入力します。
    LeverParamaterName コントローラー本体で指定したAnimatorParamater名_positionを入力してください。
    screwRotation デバッグ用です。
    min 回転最小量です(初期位置は0)
    MAX 回転最大量です(初期位置は0)

About

Animator controller by grab pickups on VRChat world

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages