The cause of this problem is that GrabAction may reset objects’ kinematic attribute to false after releasing them. This behavior is configurable via “Interactable/InteractionLogic/Interactable.GrabLogic/Actions/PrimaryAction/Interactable.GrabAction.FollowAction”, where “Is Kinematic When Inactive” should be ticked.
UPDATE: The latest VRTK has an issue which causes “IsKinematicWhenInactive” reset to false when game is started. A workaround is to patch the following line at GrabInteractableFollowAction.cs:184
- IsKinematicWhenInactive = GrabSetup != null ? GrabSetup.Facade.ConsumerRigidbody.isKinematic : false;+ IsKinematicWhenInactive = GrabSetup != null ? GrabSetup.Facade.ConsumerRigidbody.isKinematic : IsKinematicWhenInactive;