Adequate capsule collision on character prone


I’ve made my own character class and functions and so far everything is working fine except for one issue I can’t seem to resolve.

When the character goes prone there is no way to rotate the capsule or even change the dimensions to properly cover the player, only the torso is covered

Things I have tried:

Using a box component instead of a capsule: This worked fine until stairs sent the player flying. [x]

Attaching sphere collisions to the player sockets: Only the root is swept so no collisions were detected. [x]

Using another capsule component separate from the root: Only the root is swept so no collisions were detected. [x]

Attempting to rotate the capsules roll -90 degrees: Works but then launches the player out of the map. [x]

There has to be a way to have the player go prone with adequate collisions, it just wouldn’t make sense for an engine as powerful as Unreal to not have a simple solution to this.

I figured out a solution! I just have yet to test it out.

Here is the theory:

  1. Create a blueprint that has a capsule as it’s root component, make sure the height is the same as your character.
  2. Instantiate it from your character so that you have a reference to it.
  3. Set your character’s collision to ignore the capsule blueprint. C++(MoveIgnoreActor();), BP(Ignore Actor node).
  4. In tick(), set the location/rotation of the capsule blueprint to your characters location/rotation.
  5. In your unprone function simply disable collision for the capsule blueprint and in your prone function enable the collision for the capsule blueprint.

This is done so that the capsule blueprint collides with everything you want EXCEPT your character

I know this is years late, but this won’t work. The capsule wouldn’t prevent the player from clipping through brushes/meshes