VR can't pick up destructible mesh

Hi guys,

I was searching but cant find any solution for my doubt in the forums.

In virtual reality, with touch controls, I can pick up static meshes but can’t pick up destructible meshes, anybody has a solution for this?

Thank you very much :wink:

I think is very simple, I want to pick up a bottle (1 mesh), throw it and when hit walls or floor or anything, broke. No more is needed.

Can you describe in more detail what you are hoping to do?

Do you want to pick up the mesh as a whole? A piece of the mesh after it’s broken?

So, what I would do in that example would be to have a bottle blueprint with a Static Mesh bottle and a hidden Destructible Component.

  • When the bottle blueprint hits something fast enough, destroy the Static Mesh,
  • reveal the Destructible Component, and
  • deal lots of damage to the Destructible Component to fracture it.
  • OnFracture of the Destructible Component, add force to cause your bottle to blow apart.

Ah ok, so the trick is to have hidden the destructible mesh.

Thanks, I’ll try! :wink:

Hey ! I’m currently working on physics like that and I’m new to blueprints, do you have a picture of your blueprint for the bottle ? :slight_smile:

Thank’s

I’m having the same issue. I noticed when I was checking out BP_MotionController that in the ‘Grab Actor’ function it was looking for a static mesh in range through the function ‘Get Mesh In Range’. Well, I reasoned, a Destructible isn’t exactly a static mesh. So I created a ‘Grab Destructible’ function with a ‘Get Destructible In Range’ function within. And… it still doesn’t work. It does appear to collide when the controller trigger is pressed but doesn’t pick it up so I can throw it and destroy on velocity.

I tried the solution above as well and didn’t get it to act the way I wanted either.

What does this blueprint look like?

Thanks so much for this. I seem to be having trouble with finding activate, deactivate, and radial force nodes, so my spawned destructible mesh actor just sits there and doesn’t really do anything. Where are those found?

Actually, based on your help, I tried this, and it seems to work. It adds the impulse of the hit to the destructible mesh.

I got “ok” results with this method, after going crazy trying a more honest approach which sadly didn’t work. My first method was, using the VR template map, to try and recreate everything the BP_PickupCube was doing, only using a destructible instead. If someone else has had success with that I’m all ears.

What did work, and it’s not perfect, was this:

  1. Take a static mesh and convert it to a destructible, then make a blueprint out of that.
  2. Copy the BP_PickupCube and rename it.
  3. In the Event Graph for the new blueprint follow what I did in the attached image.

Now, I have my destructible pieces destroying after a few seconds because people kept trying to pick them up, so it was better not to tempt them. Also, the radial force I’m using needs tweaking quite a bit more to get right, but it’s a start.

Hopefully someone else has a better way to do this, since this feels largely like a hack. A proper destructible mesh component that can be picked up and destroyed would be best, but if you really need something, this’ll mostly work.

Note in the ‘SpawnActor’ function you choose whatever you named your destructible BP. For whatever reason I couldn’t add the destructible as a component to this BP and have it work.

I’ll reply to this again if I figure something else out that’s better.

Good luck!

Hi guys, i have the same problem and i’ll try this but is not better hidden in game the static mesh and destroy it on component hit?

was anybody able to find a solution for just picking up the destructible mesh?

Unfortunately the only thing that worked for me was what I outlined above (the results left a bit to be desired… always bugged me). But it’s been awhile since I came up with that, so it’s possible there’s a better solution out there since so many more ppl have been working in VR now. I haven’t checked the notes for the latest engine updates to see if they added the ability to add destructibles as components to BPs.

thanks for the reply! destructibles can actually be added as components to blueprints as far as i saw but i have to play around with this a little more. i’ll update here if i come up with another solution

I didn’t manage to pickup a destructible mesh directly but I think I came up with a decent solution:

I basically have two different blueprints, one only has a StaticMeshComponent (Static-BP) and the other has a DestructibleComponent (Destructible-BP). Both have the same geometry, in my case a sphere that is the same size for both.

  • Place Destructible-BP in the world
  • When I try to grab it with the motion controllers I destroy this Destructible-BP actor, spawn the Static-BP and attach it to the hand. You can’t notice that the objects are actually changed because they look exactly the same.
  • When I release this attached Static-BP, I spawn the Destructible-BP and set it’s velocity to the one of the Static-BP so that i can actually throw it. Then I destroy the Static-BP actor.

This way I can smash the object when colliding with it with the trigger pulled, I can pick it up and throw it against a wall to destroy it or throw it and catch it again while keeping it intact.