Why is that when you try to make a character to prone propertly, there is no build in way to make the capsule go under certain objects.
They implemented the crouch system, but never the prone one.
Am I missing something or have they forgotten this basic movement feature for characters. I was hoping for it to come in UE4 4.10, but it never did.
I guess someone has a better way to do this, but it would be far more simple to just implement this feature so that other developers have an ease when going through this.
Does anyone has an alternative to this by using blueprints…
Interested in this aswell.
bump some hopefully someone will see this… epic???
This is the basic problem with prone in the standard character. The entire character needs to be rotated 90 degrees so “forward” becomes the floor, requiring (maybe) a custom movement mode to move “upwards” instead of “forwards.” I haven’t played about with it much.
When you say that they implement the crouch system but not the prone one, what are you referring to? The Animation Starter Pack? If you’ll provide that information, I will try to contact that specific developer to determine why it has not been implemented or a possible workaround, and/or enter a feature request if need be.
I can add that, after doing some research, a lot of users control the size of the capsule to shrink with the height of the character as it gets into the prone position -leaving the shrunken capsule centered on the character at the hips, thus preventing the character from falling through the floor. In this workflow, the capsule is just for moving the character with physics applied to the skeletal mesh for physical interaction within the world.
Hi Steve Hardister,
Im refering to the capsule movement. I mean to add the prone movement, like we have crouch where the capsule goes a centain size and allow us to go under cerntain objects. The animation is no problem, you can add any prone animation, the problem is if you have prone animation and not the capsule one, the character will have the same properties as a standing character, where it cannot go under object of medium sizes or low sizes, for example a chair/table/small gap in a wall,etc…
Try to tell a developer to add this capsule property for prone… Many people are frustrated because of this, but I don’t see many of them asking for it. The workarounds are slappy and can sometimes cause bugs/glitches…
Like that image that TTam added.That is not enough, because moving forward the capsule would move the actor into the ground. " So there would be a need to change the movement when character is in prone. Also, not just the capsule, but the entire actor, since the actor gets its rotation from the capsule root component. I’m not sure whether you could get the movement component to make you “walk upwards.” Perhaps give it the actor up vector instead of forward vector when dealing with the input? " - TTaM.
If you get in contact with a dev about this, you would make many other indie devs really happy. Thanks for your amazing interest. Regards, Akalovemaker.
This was enough to make prone work:
You will need a switch on some bool “is prone” to flip between up (prone) and forward (regular) motion.
Thanks for the clarification… As it stands currently (I may not have described this clearly) you would continue to shrink the capsule for the prone position to allow the character to move under obstacles but not fall through the floor, as shown here:
The parts of the body that extend outside the capsule are handled by the corresponding physics asset for that skeletal mesh for interaction with the environment.
A request to have an elongated capsule has already been reported as JIRA [UE-18260] but not implemented.
I realize you mentioned workarounds are sloppy, but two discussed in the following thread are the most viable: Horizontal player (quadruped) setup - C++ Programming - Unreal Engine Forums
+1 for using my paint drawing
This is a functioning prone system. Functioning, not pretty. You will have to make it pretty!
I really do not see a solution in any of the above. The problem is, the Crouch() and Uncrouch() functions are built into the editor and the movement component… it shifts the half height of the capsule and sizes it based on that. There is no other way (that I have found) to do such with a prone condition. I looked at the C++ and followed what Crouch() and Uncrouch() do… tried to replicate in BP’s. Could not get it to work, the character actually dropped below the level of the floor. It simply seems if there is a momement component meant for biped characters, for normal movements, such a crouch and swim and fly (??) … why is there no prone built in as well?
Of course the big problem as was stated, is the size of the capsule, as without getting it set right, you can not prone and crawl under things that are too low to walk or crouch under.
You should not have to change movement directions or rotate the capsule.
After some more investigation, this doesn’t work because the movement component keeps the actor the capsule’s half height off the ground regardless of the rotation of the capsule. E.g. if your halfheight is 100 and your radius is 30, it will hang 70 up in the air.
Perhaps not, but this is a fairly easy way to get it done. It’s not “hacky” (as this is basically what needs to be done in prone anyway, physically.)
actually, sizing the capsule in height is not the issue… even if you shrink it down properly and get it on the ‘ground’… well it’s not going to cover the head and feet, so those would be able to ‘glitch’ into walls and other surroundings… so it seems you need to make collision components and attach them around the character… but if you turn those on and the capsule to no collision, you fall through the ground… hmmm.
I’ve just finished adding prone to my character as a custom movement mode, capsule correctly aligned and all, no falling through the floor or clipping into walls!
You should be able to see the rotated capsule. Forgive the lack of anims.
After the lengthy discussions and posted possible workarounds, to address the initial question: Did epic forget a basic character function for Blueprints? The answer is no:
The implemented “crouch” feature is easy to add because you can simply reduce the height of the capsule along the z axis for a crouching position. However, this begs the questions:
- Why not turn the capsule on its side while in the prone positon?
- (or) Why not adjust the capsule’s width instead of height?
I’ll try to make this easy to understand with an illustration: Picture the capsule as a tack you are maneuvering in a 3D space. This is how the engine interprets how to move the pawn:
Now picture turning this tack on its side. Z is now oriented to move along the X and Y plane. However Z only moved up and down before so now you have a navigation issue to be resolved. While theoretically possible, it is not nearly as easy a feature to add as the crouch system which which simply resizes the capsule in the Z axis.
This addresses the second question as well because the circle that the capsule (tube) is formed from is facing up and down. In order to have a capsule that stretches width-wise, again, you would have to turn this circle on its side and you are facing the same dilemma as is faced in the first question.
While there are solutions to address this, Epic does not offer a “prone” capsule solution “out of the box” like the crouching capsule solution. To quote developer, Zak Middleton:
The main problem with horizontal capsules is rotation. We (and PhysX) don’t support swept rotation checks, so there would have to be a custom solution to see if turning in place is allowed, otherwise the character could rotate into a wall and penetrate it. This could possibly be doable in UCharacterMovementComponent::PhysicsRotation() with custom checks to see how far towards the rotation the capsule may turn.
This both summarizes why the feature is not implemented as well as hints to how to resolve this, if someone were willing to take this on and post their results.
That is not an answer. It is a dodge. Unreal implements the ‘crouch’ and ‘uncrouch’, just as it does ‘jump’. Considering that that ‘character movement’ component also allows for swimming and flying… it should also allow for prone… it would not differ much from the ‘crouch’ and ‘uncrouch’, it would simply use a different half height. So the only ‘solution’ that matches what is built in, is for the end user to modify their engine and compile and use that. Lame answer. The discussion was really about having this built in for blueprints…
As to the capsule tilted over, that was never an answer in my opinion, just a distraction.
To be fair, I just did a capsule trace check on the potential new rotation and it basically stops you rotating into things. This is assuming a slow enough rotation rate, and high enough tick rate, so the angle per tick is quite low which, with prone, it’s highly likely to be.
This is, of course, with the rotated capsule.