Scales the grabbed Interactable Object along the given axes based on the position of the secondary grabbing Interact Grab.
- Place the
VRTK_AxisScaleGrabActionscript on either:
- The GameObject of the Interactable Object to detect interactions on.
- Any other scene GameObject and then link that GameObject to the Interactable Objects
Secondary Grab Action Scriptparameter to denote use of the secondary grab action.
- Ungrab Distance: The distance the secondary grabbing object must move away from the original grab position before the secondary grabbing object auto ungrabs the Interactable Object.
- Lock Axis: Locks the specified checked axes so they won't be scaled
- Uniform Scaling: If checked all the axes will be scaled together (unless locked)
public override void Initialise(VRTK_InteractableObject currentGrabbdObject, VRTK_InteractGrab currentPrimaryGrabbingObject, VRTK_InteractGrab currentSecondaryGrabbingObject, Transform primaryGrabPoint, Transform secondaryGrabPoint)
VRTK_InteractableObject currentGrabbdObject- The Interactable Object script for the object currently being grabbed by the primary grabbing object.
VRTK_InteractGrab currentPrimaryGrabbingObject- The Interact Grab script for the object that is associated with the primary grabbing object.
VRTK_InteractGrab currentSecondaryGrabbingObject- The Interact Grab script for the object that is associated with the secondary grabbing object.
Transform primaryGrabPoint- The point on the Interactable Object where the primary Interact Grab initially grabbed the Interactable Object.
Transform secondaryGrabPoint- The point on the Interactable Object where the secondary Interact Grab initially grabbed the Interactable Object.
The Initalise method is used to set up the state of the secondary action when the Interactable Object is initially grabbed by a secondary Interact Grab.
public override void ProcessUpdate()
The ProcessUpdate method runs in every Update on the Interactable Object whilst it is being grabbed by a secondary Interact Grab.
public override void ProcessFixedUpdate()
The ProcessFixedUpdate method runs in every FixedUpdate on the Interactable Object whilst it is being grabbed by a secondary Interact Grab and performs the scaling action.
VRTK/Examples/043_Controller_SecondaryControllerActions demonstrates the ability to grab an object with one controller and scale it by grabbing and pulling with the second controller.
Updated less than a minute ago