Child Component Collision Wrong whan Moving or Rotating

Hello Community.

I am working since some weeks on one problem and now i wanna ask you for help.

Whats my goal:
I wanna have one Actor thats simulates phyics, like the body of a car or the hull of a boat.
On this Actor there should be some moving parts like a crane or some pistons.

So I created a Demo Blueprint Actor:

“Cube” is the Base (Physics enabled) so like the hull or body of the car and the other cubes are one moving crane to load some objects on it.

My first try was to work with physic constraints, on basic movements its worked great but whan you use different masses its not working anymore, you must change all settings to get it back to work whan you wanna lift something with the crane…

After this i tried to work with Set Relative Location and Set Relative Rotation.
It moves like it should and its very good controllable.
But there is something wrong with the collisions of the child components.
So whan i move “Cube 1” - the yellow one up:
The Collision of the yellow cube gets moved but the the collision of Cube 2 and Cube 3 stay on the ground but they are visually moved…

The collision of the child components are moving whan i “disable physics” on the white cube “Cube” or when i disable “Autoweld” of Cube 1 (the yellow one).
But its not a good solution because i wanna have physics and i need the Autowold function to get the forces to the main component and to calculate the mass right.

The other solution is to detach all components and attach it again after a period of time, but this produces some laggs,freezes and bad results on the moving.

Is there any way to make something like this working? Or is there a completly different way to make this working?

My main Goal is that you can create Boats,Cars… in the game out of Blocks, so a normal Animation Setup is not fine for me? or i am wrong here?

Thank you for your help.

Can someone help me with this problem? I really dont understand whats the problem here.

How many blocks per vehicle? 10 or 100? How many vehicles then?

Can you test the behaviour after making the the white cube the root of this actor?

For the first tests i use many small single cubes, but later in the game i wanna make one single mesh out of the cubes to make it playable.

The four cubes are an easy prototype of the problem, my actual actor looks like this:


I tried to make it root but no difference.
To better showcase i have more screenshots:


The Actor is spawned and fell to the right side because the cubes on the right side are a little bit higher then the white one.


When i move the yellow one up, it looks right… but only the collsion of the yellow one is moved…
So when i cant walk under the “brick looking” blocks, only under the yellow one…
And the balls of my starter content rifles also dont interact with the cubes in the air and they are colliding with the “ghost” collisions on the ground…


But whan i am look at the collisions, everthing looks right…


Thats my Blueprint

Thanks for you help.

Great example, actually. This is nasty and I would qualify this as a bug. I cannot do it today but I’ll try to reconstruct a similar setup tomorrow (midday perhaps) - out of sheer curiosity if nothing else.

Thank you

Is there any other way to achieve something like this without physics constraint?
Because i am surprised that no one else ran into this problem :smiley:

Hello.

Do you got some news to my issue?

Or is there another way to archieve something like this without Physics Constraints?

Thank you!

I managed to reproduce it to an extent, not sure how to work around it. :expressionless:

I have the physical body of a machine. Doors and doorknobs. I have the same problem with shifting door, after opening the door I am no longer able to open the door in the place where my doorknob should be, the doorknob is stuck in the same position. In a workaround, DO NOT make the object a child and calculate and set its position manually, then the grid works correctly, but the problem is that this grid ceases to be part of the object and does not affect its physical behavior.

UE_5.2

I am also still experiencing this problem on UE5.1.1. Would love to get a work around.