I’ve been using the default grabbing BP included in the VR template. It uses the attachtocomponent node to grab objects with the controller. It has been working well, but I now want to grab a physics actor and have run into issues.
I know I need a physics handle, but am confused as to where to place it (in the object being grabbed, the motion controller - or both?). Also, because I have something working, I’m hoping I can incorporate the scripting into what I already have.
Right now, I am using the following function in the motioncontroller bp to fire an event within the object:
Then, this is being run in the object I want to grab:
How can I alter this setup to work with a physics object instead of a static mesh component? From what I understand, I will want to use a ‘grab’ node instead of an attach node. And I need to incorporate a physics handle somewhere.
Any help at all is appreciated.
I was also wanted to do this but after taking a look of what was already created here in the forum, I ended up using the “VR (OpenVR) Expansion Plugin”.
I’m also look at this project as its much more light waight and has the grip / physics already created:
I hope at some point VR with physics will become native to the engine.
Problem with using Physics Handles alone, is that when you move items around, they will lag behind. While this might not be a problem for some scenarios, i found it to be anoying in the long run, so i decided to do a BP implementation of this myself without using the “VR (Open VR) Expansion Plugin”, I’ll post my findings on a few videos soon. It will combine attachto with PhysicsHandles.
Yeah to avoid the lag with vanilla controllers you need to re-attach the component to get the late update, the motion controllers are lacking control over the late update ViewExtension in their default form.
I noticed Robo Recall is using a custom Blueprint Interaction Component instead of Physics Handles for grabbing robots, can check out their implementation in the Mod kit if that’s helpful.