Hi there,
I’m using the Unreal Engine since 4.4 version. Now I am facing a great challenge. I have to create a system that will support directional gravity and also work perfectly with the AI navigation system. Modifying the engine’s source code is not a problem. Looking for a C++ solution, not Blueprint.
Worst case scenario that must be supported:
- Players fight onboard a large
spaceship against enemy AI agents,
using grenades, ranged weapons, laser
rifles etc. - In most cases said spaceship will move and rotate, and won’t be static
- The spaceship will substitute the entire level from the player’s
perspective, the persistent level
will have only space background
effects, procedurally generated
asteroid fields and sometimes a
background star or planet, thus the
spaceships are 95% of the gameplay - There will be more such spaceships with interiors, fighting each other
- Gravity will be generated by spaceship’s gravity engine, gravity
fields will be tied to spaceship’s
rotation, and must be handled
properly by AI agents, too - In a zero-gravity environment, players may turn on their spacesuit’s
boosters to move or rotate freely - This solution must work decently on a procedurally generated spherical
planets - voxel landscapes - Number of enemy AI agents will not exceed 30 at a time
- Must work with networking, client-side glitches must be avoided
As far as I know, this is not supported by Unreal Engine by default. I will have to implement it on my own, I guess. Directional gravity for players and rigid bodies itself is trivial to implement, the problem is - it must work properly with AI and networking, and that’s my question here. How to handle that properly? I’ve googled it already with no luck. All I find is a directional gravity, without AI navmesh advice. Navmesh was designed for fixed Z-gravity and static levels. Should I use it, modify it or seek different solutions?
Thank you!