Hello, Levi090
After completing this project for 6 months and looking back, I observe there are some major flaws in this wall-run system:
1. Wall-run movement does not consider acceleration and gravity:
I simply put the movement code in a tick function and call SetActorPosition() every frame, this naive implementation causes the overall control to feel "stiff" and "bland" since the algorithm does not take the player's momentum before entering wall into consideration.
2. The wall-run rotation does not respect delta time:
Another major flaw is the interpolation of player's facing (while wall-running) does not respect the engine's delta time, this oversight will cause potentially wonky movements if the game runs below 60 fps. Ideally, I should take delta time into account when interpolating players' facing.
It is sad that after my last overhaul, the wall-run system still has major flaws.
Apology in advance - I don't think this wall-run system (at its current state) is a good reference material, however, I hope the mistakes I made can help you be more informative when designing your own wall-run system.