im currently working on a vaulting/climbing system. The edge detection and finding hand/climb spots for my character works perfectly, but im not sure how to move my character.
For prototyping im moving them with “move component to” right now and would play animations without root motion. The problem here is, that i want collision to be active for objects that could dynamically appear (e.g. other characters).
I don’t like the idea of using animations with root motion because the animations don’t really “fit”. (For example when vaulting over a wall the hand has to be on the wall).
So basically my question is, how would modern games move the character to another place with an animation and collision on, but without root motion if possible.
Do traces on the frame prior to moving. If there’s no collision in the current frame at time of input, then no issue. Montage the animation…collision still applies for the most part. Beyond that “Set actor location w/sweep” > move component to.
A problem with all collisions active is that when vaulting over a wall the capsulecomponent of character would collide with the wall. So how would you filter collision with world-static then, because there is no option to ignore certain actors in “set actor location”.
I would use set actor location for prepping the vault/climb, enable collision (capsule component, none), set movement to fly, use a montage (root motion) to move/anim. On completion, enable collision(capsule), set movement to walk.
Ok, now I understand how you would do it. But I think there would be a problem if another actor, most likely other AI or player, would move in the way, because they would not collide and be inside each other then.
I had the idea to have a second capsule that will be over the height of the wall and only collide with other characters. But I don’t think that this is a good solution.
But I can’t just fire one trace because the character can move in the way while i vault over the wall. So I had to constantly fire traces, I could find characters but I still had to handle the collision with the characters that moved in the way and for that i think a collider would be best.
But I’m not sure if i should add a second capsulecomponent for the characters that only collides with other characters or if there is a better way.