- Drive: ensure the grabbed/ungrabbed drag values are set on enable (3a9688c)
The GrabbedDrag and UngrabbedDrag values were not being propagated to the relevant Float event proxy when the controllable was enabled as the code to set their values was not being called until the property was changed.
This fix ensures the data is propagated in the OnEnable call.
- Drive: add IsGrabbable option (66df056)
The IsGrabbable option on the Drive derivatives allows the toggle of whether the Interactable Object is grabbable or not, which can easily simulate locking the drive mechanism.
The Interactable reference is now part of Drive so all inherited drives can access the InteractabeFacade as well as the MeshContainer if required.
The Gizmo color option has also been moved to the Drive as it isn't something that is needed on the Facade and it can then be shared across all drive types.
- Facade: ensure gizmos draw correct length with parent scale (71b5234)
There was an issue where the gizmo was not drawing the correct length if the parent GameObject was scaled as this is affecting the world scale and therefore the gizmo would be affected also.
As drive limits are world scale, then the gizmo should represent this by drawing to world scale, which this commit fixes.
The gizmo colour is now also an option on the Facade to allow the color to be customised if required.