Sorry for the late reply, busy times at work. Thanks for the update Xaklse, much appreciated!!
On your spring arm component, did you enable ‘Use Pawn Control Rotation’ and inherit all axes (yaw/pitch/roll)? Also, be sure the rotation on your spring arm isn’t set to absolute in its transform properties.
set the ninja properties like this:
Then you can use the “set Point Gravity Direction” function to set a location to which the gravity points to (in your case the center location of your planet).
You could use trigger volumes/meshes (on begin overlap) to set a new gravity direction. I’m using this method to change gravity to switch between directional and point gravity.
I use a spherical world/planet with buildings in which I want the gravity to be directional once the player enters a building, and to be directional to the planets center once you exit a building
I created a component derived from StaticMeshComponent, using its BeginOverlap event to trigger the changes in gravity. This component can then be added to any actor. The reason I derived it from staticmeshcompoennt is to have a custom mesh (trigger) assigned, matching the shape of the volume in which I want the gravity to be altered.
https://forums.unrealengine.com/core/image/gif;base64
Don’t mind the mockup meshes, but here you can see the blue mesh (from the staticmeshcomponent) I use to trigger the different gravity directions.
using custom gravity on objects depends on what kind of object/movement it needs. Is it physics simulated? If so, you could disable the gravity on the physics properties, then add linear velocity on tick in the direction of your gravity. When using point gravity on a planet located at world 0,0,0 you can always normalize an actor/object location, then negate it to get the direction vector pointing to the center of your planet (thus matching your gravity direction around the planet).
hope this helps!
cheers
Frank
edit: updated the image links hopefully theyre visible now