Geometry Collection "Set Enable Gravity" does not work

When trying to set/change the gravity of Geometry Collection object in blueprint, it does not work. However, when the gravity is set manually from the “details” panel of the Geometry Collection, the “Enable Gravity” does work, it does change whether gravity is enabled or not.

Is this an engine related limitation that Geometry Collection gravity can not be changed during runtime, or is this a bug?

Screenshot_186

1 Like

I can see the exact same behavior in UE 5.3.2. Seems like a bug. Setting gravity at runtime basically does nothing, everything obeys the settings on the actor component.

Having dug through the sources as someone who can barely read C++, it looks like GeometryCollection components handle physics settings very differently than other components. May be intentional, may be broken, something is definitely afoot here.

1 Like

I’m running into the same issue on 5.3. I think they are actively working on the GeometryCollection stuff since things have changed from 5.1 already.

Its 5.4 and still not working.

For some reason this doesn’t work (nor does Set Simulate Physics) when you call it on the GeometryCollection. If you cast the GeometryCollection as a PrimitiveComponent and call SetSimulatePhysics on that, it will work.

As of late 2024, the devs recognise that this is an engine limitation as GetBodyInstance() always returns nullptr. See: Fractured geometry collection can't be grabbed up by physics handle - #2 by CedUE

SetEnableGravity can be called at runtime now on Geometry Collections since Release 5.5

(Github link of the change : https://github.com/EpicGames/UnrealEngine/commit/1be79a061bbbf4bbfc3f01232d4a2ccacd046771#diff-c8651ef9687cea5620b7e61bdbe845af2e3309f646da01e9aa687b38b6de7b6fR661 )

1 Like