x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

AnswerHub Maintenance

Background maintenance is scheduled to occur between 9 - 11am EDT on Tuesday, May 21. Site operation may be slower than normal during this time and a brief interruption in operation may be observed

VR Handle skeletal bones Pickup

Hello,

I did the physics of a skeletal mesh. All i working good and correctly.

Now, i want to be able to take parts of the skeletal mesh ( for example the hand ) and moving it around with the vive motion controller. However i still want the other bodies to be simulated while i move the hand around.

I have been struggling 2 days to find the solution, without success...

I tried to convert the skeletal mesh into blueprint, and then use the pickup actor interface. However doing that, it's not working since the skeletal mesh component is not taking into account the rigid bodies. I tried to use some box collision trigger in the blueprint: putting it into the hand and using the box as target for the pickup. Not working either..

alt text

What can i do about that ?! Is there any way to do it ?

Many thanks

Product Version: UE 4.16
Tags:
more ▼

asked Dec 09 '17 at 06:15 PM in VR

avatar image

FluxDevs
8 2 3 4

avatar image vr_marco Dec 09 '17 at 08:36 PM

The node you are looking for is called Set All Bodies Below Simulate Physics.

avatar image FluxDevs Dec 10 '17 at 08:13 AM

This is not solving my problem of grabing with the motion controllers... I want to be able to grab the hand or any other part of the skeletal that i did has rigid bodies in physics. Right now when i grab with the motion controller, it's either attaching ALL the skeletal mesh to my hand, either not reacting to the grab. Or at least, before closing the hand, since when the hand is closed, it interact like 2 rigids bodys ( hand closed with any part of the skeletal mesh)

Also, this node is asking me to give the name of the bone. I dont want to move bones directly but just the rigid bodies associated ( that will move bones from there )

Do you think to another posibility ? I don't know if i am clear enough .. ?

avatar image vr_marco Dec 10 '17 at 10:08 AM

Are you trying to achieve something like this? https://www.youtube.com/watch?v=_2EzvdRGvD4

What confuses me is that you are talking about grabbing hands, but in the VR Template the motion controllers have animated hand skeletal meshes attached to them, so you are using your hands to grab other objects. Which "other" hand you are talking about? What does the skeletal mesh you are trying to attach to the controllers look like?

avatar image FluxDevs Dec 10 '17 at 10:24 AM

Yes excatly, i want to grab parts of my skeletal mesh like if we were grabbing the objects you showed me in the video.

I attached the skeletal mesh here. I would like to be able grabing the bodies attached to bones. When i talk about the hand i mean in the skeletal mesh that i would like to grab. I used the example of the hand but i would like to grab all the parts of the skeletal mesh ( all the other bodies too ) alt text

I also recorded a video to see what it's happening right now with the current skeletal mesh : its the easiest way to understand what i mean. There's the video: https://youtu.be/zSNvSZmxMws

As you see, i would like to grab different parts of the mesh but it doesn't react. However, when i close the motion controller hand it's acting like another body colliding with the parts of the skeletal mesh bodies.

I hope it's more clear now

avatar image vr_marco Dec 10 '17 at 10:58 AM

Got it. What I did is actually slightly different from what you are looking for (different use case and solution). In your case you need to use a Physics Handle. This may get a bit tricky to implement if you don't have a good understanding of how it is supposed to work. Have a look at this series of tutorials by Jonas M.:

https://www.youtube.com/playlist?list=PLT4SeajOa6maaBxhtaMm6yuHnL6CrZImk

They go into details on how this works and how to implement it.

You can also download the mod of Robo Recall and see how they have implemented it. A similar technique is also used in the sticky octopus game in the VR Funhouse, which you can also download and study.

avatar image FluxDevs Dec 10 '17 at 11:05 AM

Ok Thanks you very much for the reply. I will take the time of looking the tutorial and come back to say if it was the solutions.

avatar image vr_marco Dec 10 '17 at 11:07 AM

Sure. Go through them, give it a try and post again here if you still encounter issues.

avatar image FluxDevs Dec 10 '17 at 01:04 PM

So i've been throught the tutorial and i'm very happy to have learned this way of grabbing. We are getting closer to the result. Now grabbing the skeletal mesh works ! However it's still not what it was intended.

The final question is : how i can access to each body in a physical asset of a skeletal mesh to grab them with the controller.

Because now this is the situation. I can grab the skeletal mesh but not the selected bodies. I think this is due to the fact that in the blueprint the target component to take is the entire skeletal mesh. So when take whatever body of the skeletal it acts like taking all the skeletal mesh...

Here the video to explain the thing: https://youtu.be/GKswnCisXeE

Here is the blueprint of the skeletal mesh.

alt text

alt text

manequin1.png (626.0 kB)
mannequin2.png (312.8 kB)
avatar image vr_marco Dec 10 '17 at 02:10 PM

Getting closer, good! What is MC? The grab location should be the one of the bone you are trying to grab. A useful node for that is GetClosestPointOnPhysicsAsset.

avatar image FluxDevs Dec 10 '17 at 02:25 PM

MC stands for Motion Controllers. So i am saying to grab the component at the position of the motion controller. But it doesnt...

GetClosestPointOnPhysicsAsset seems to be leading to the same result... I think the problem is the component pin in the grab component at location. since we are saying to him to grab the skeletal mesh component and not the body that we are pointing at with the motion controller

avatar image vr_marco Dec 10 '17 at 02:47 PM

You can also try to set the bone name out of the GetClosestPointOnPhysicsAsset. Can you share your project via WeTransfer or other service? I will have a look at it.

avatar image vr_marco Dec 10 '17 at 02:51 PM

Before that, can you also try to set the Linear Stiffness of the Physics Handle to a very high value, like 10.000 or more?

https://docs.unrealengine.com/latest/INT/BlueprintAPI/Physics/Components/PhysicsHandle/SetLinearStiffness/index.html

avatar image FluxDevs Dec 10 '17 at 04:15 PM

I already used a linear Stiffness and angular stiffness of 5000 and more. Just tried 10 000 and 15 000 but it didn't anything new.

The project: https://we.tl/iyyUO32OA6

Thank you very very much for the time you allowing to help me. Thanks.

(comments are locked)
10|2000 characters needed characters left

2 answers: sort voted first

Here you go! 3 steps to success.

  1. Modify the GrabActor function inside the BP_MotionController. This is needed to get the name of the bone nearest to the motion controller hand.

  2. Modify the Pickup interface. This is needed because we need to pass the name of the bone as input parameter to it.

  3. Modify the testmannequin blueprint so the grab component with the physics handle uses the bone name.

alt text

alt text

alt text

more ▼

answered Dec 10 '17 at 08:38 PM

avatar image

vr_marco
2.2k 10 6 12

avatar image FluxDevs Dec 11 '17 at 09:41 AM

A really big Thanks. This solved the problem !

I am still learning to use ue4 for VR and you helped me really a lot understanding some aspect of this. Thanks you again

avatar image edlgmedia Jan 21 '18 at 12:12 AM

How would you go about Telling it to grab a specific bone if I already have a function that gets me the bone name that I specified in the blueprint?

avatar image vr_marco Jan 21 '18 at 08:44 AM
(comments are locked)
10|2000 characters needed characters left

I can't get the "event pickup" node shown in your "modify test mannequin" picture to come up in my blueprints. even when i turn of context sensitivity. i have everything else set up as you specified but this one thing is holding me back. is that just a custom event you made or am i doing something wrong?

more ▼

answered Mar 13 '19 at 11:01 PM

avatar image

dubako
21 2 4 5

avatar image dubako Mar 13 '19 at 11:23 PM

nevermind i got it. but for anyone with the same issue. i solved by implementing the pickup actor interface in my class settings

(comments are locked)
10|2000 characters needed characters left
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question