/Scripts/Core/Grabber.cs
The Grabber is an object that contains a Trigger Collider that is in charge of picking up other objects. It is in charge of determining which objects can be grabbed, as well as setting some grabber-related properties such as default grab button and the grip amount required to initiate a grab.
Hand Side (Left, Right, None) Set to Left or Right if you are parenting this to a Controller. This lets objects know which hand / controller they are being held by, which can be useful for setting orientations or animations. Set to None if this is not used on a Controller or there is no associated "handedness".
Default Hold Type (HoldDown, Toggle, Inherit) The default hold type for all Grabbables. Grabbable objects will inherit this setting by default, but can be overriden on each Grabbable.
Default Grab Button (Grip, Trigger, Inherit) The default grab button for all Grabbables. A Grabbable can manually override this default.
Grip Amount (0-1) 0-1 determine how much to consider a grip. Example : 0.75 is holding the grip down 3/4 of the way
Release Grip Amount (0-1) How much Grip is required to be considered letting go of a grab. Ex : 0.1 = Grip must be greater than or equal to 10% of the way down. This value should be lower than Grip Amount. Provides a way of having a zone for grip / releasing.
Grab Check Seconds (0-1) 0-1 How many seconds to check for grab input while Grip is held down. After grip is held down for this long, grip will need to be repressed in order to pick up an object.
Equip Grabbable on Start (Grabbable) Assign a Grabbable here if you want to auto equip it on Start
Hands Graphics (Transform)This is a parent object that holds any number of Graphics used to represent hands. This transform should be for the graphics / animations only. If a Grabbable's property 'ParentHandModel' is true, this transform will be parented to the Grabbable. On release the transform will return back to the Grabber's center.
Grabber Events (Grabbable) Grabber Events let you subscribe to OnGrab and OnRelease events that happen on the grabber. This gives you a higher level event then subscribing to Grabbable Events.
Velocity Tracker A Velocity Tracker component will be added to the Grabber on Start() if none is specified. The Velocity Tracker is used when throwing / releasing an item from the Grabber.
Force Grab (Hidden in Inspector by default) Force the Grabbing of this Grabber. Useful for debugging within the Editor to simulate holding down a grab button.
Force Release (Hidden in Inspector by default) Force the Release of this Grabber. Useful for debugging within the Editor to simulate the release a grab button.