[Request] More Robust Gravity Controls

Hello again,

So I’m wanting to request finer controls over gravity for this generation. Which sounds like a rather nebulous statement, so I’ll provide some examples of what I’m thinking:

Here are some examples from my own DataHive project that you can see for yourself:

1. Inverse gravity

2. Custom Point gravity - (Credit where it’s due: base point gravity code credit goes to Zinggi57 on the epicgames forums)

Doing this in UDK required an extraordinarily concentrated coding effort and fudging of the engine’s handling of native physics. Not to mention the headache of dealing with the collision cylinder (and it being non-responsive to primitivecomponent’s setrotation function). And to this day my solution is still somewhat prone to bugs.

Meanwhile in other engines, mechanics like this are practically a cliche.

I’d like to see what Epic can do about that. Make it much easier to tweak the gravity, so that a user could fall upside down (like in my video), or even get pulled by gravity horizontally/diagonally or in any other off direction. Something like a void ChangeGravityDirection(FVector NewDirection) or whatever effect. Things like jumping physics, projectiles, etc. would account for the new directional offset as well. I might also recommend that the engine even account for things like multiple point gravity for more interesting non-linear physics simulations.

There is so much potential out there with expanding the gravity and physics toolset, and I’d love to see and use it. Here’s hoping Epic can oblige. I’ll update this thread if I can think of anything else.

Hi Markus,

Thank you for your request. I have created a report in our feedback database. I like these ideas a lot and am excited to potentially see them in a future build of Rocket. If there is anything else you would like featured in Rocket, please let us know.

Thank you,


This is related:


e.g. supporting gravity based on Centrifugal force or at least being able to simulate this through setting up gravity areas or using the nearest normal of an world mesh.