Download

Advanced/Alternative Character Movement.

I am experimenting with some alternative to character movement.
What I need is various functionality that Character Movement / Character class doesn’t provide ad hoc and I found them hard to implement with all the features on.
If someone would argue that character should be enough then I would say that this is topic I have been iterating for a fey years and I know at lest few benefits and limitation of above.

Main limitations that I am concerned about:
Physical interaction

  • right now Physical body hitting a Character doesn’t affect it. If you apply Impulse (in this case LaunchCharacter) you will get reaction but hitting body will bounce off the character (Case 1)
  • In case of kinematic body Character can be smoothly pushed only if it moves or jumps, If they stay in place the position correction stater. (Case 2)
  • pushing physical objects - there is a dedicated section i CharacterMovement for this but I always getting to the point when for some bodies I looks good but for other it causes problems. The biggest problem is with dynamic platforms or objects - If you push into them you often affect them to mush (Case 3). Think we need some mask channels for that.
  • It seams that pushing physical skeletal meshes almost always ends up damping movement of character, at least in configurations that works for other scenarios. (Case 4).
  • Standing Downward Force Scale - in many cases I need this to not affect some objects. There are some workarounds but they are a little bit messy. (Case 5)

Multi-body collision (I know there is a whole topic about this)

  • Narrow collision for walking along the thin ledges vs wide collision for collision with walls - I know there are some solutions, but with more advanced physical interactions I thing they would fail (didn’t tried all scenarios)

Blending between bipedal and quadrupedal movement

  • In case of character climbing freely on surfaces (like gecko) blending between movements with character components is somehow possible but problematic

Attaching to kinematic rotating platforms, moving inside moving vehicles

  • attaching to those platforms causes movement to be doubled (bug, I would have to find thread)

Currently I am prototyping some physical based characters with multi-body collisions but still with many problems.

I know there are some solutions in code, but I’ve heard that this parts of code are very intertwined so for me, as mainly BP user, it is a minefield.

I was curios if there are some proven solutions to my problems? Is it worth it to try to making it in code?

Later I’ll try to post / or update this post with videos / pictures of current cases.

Physical Interaction no impact form big bodies - Case 1

Physical interaction - Case 2

Prototypes:
Multi-Body Pawn On Sphere - YouTube - Multi-Body Pawn On Sphere
Multi-Body Pawn On Sphere with Torque - YouTube - Multi-Body Pawn On Sphere with Torque