How to make attached components not collide with each other?

So I’m basically making a game like space engineers, where you can place blocks in a grid on a space ship. So the ship is an actor, and the different blocks are scene components added to the actor from within the ship actor’s event graph.

The issue is, when I have multiple things attached, some blocks collide with other blocks in the same ship. Like if a character was holding a sword and the sword is colliding with the character’s hand, pushing the actor flying.

I tried doing this by setting the collision channel to ignore itself, but then different ships wouldn’t collide with one another.

Basically I want the whole ship to act as one physics body, not collide with itself, and collide with other ships.


I don’t know what is Add Reactor function, but have you tried AttachToComponent/AttachToActor?

can you post a screenshot of it?

The Add Reactor adding a scene component which extends static mesh component.

both from the reactor class, it extends static mesh component
Right now I have temporarily made it so that it won’t collide with other ship blocks.


The third one is the call inside of the ship actor class, I attach it to the ship core, which is a static mesh component with simulate physics enabled

ok, you can try ignore actor when moving function: Ignore Actor when Moving | Unreal Engine Documentation

Hmmmm, what about when the ship isn’t moving?

Try to see if it works. If no moving then no collision, right?

I think I’ve figured out what to do, I made them not collide with each other and just overlap, but then if the ship runs into another ship I’ll do the calculations my self for the physics, it’ll probably be easier that way anyway. Thank you for your help though