I am working on an Antman character. When I shrink him down to 1/10 original scale, he still runs the same distance with each step. How can I essentially shorten his movements in terms of world scale so that when he is small it takes longer to run distances, etc?
I am shrinking my character to 1/10 size but he still covers the same distance when running. How can I shrink his movement scale?
Multiply the distance traveled using newSize/standardSize. That way it will match one to one.
I’ve been trying to figure out how to do this, but I am very new to Unreal Engine. Could you please clarify how to do this?
Then you have to clarify how you are handling movement in the first place. I need to see some code or some blueprints before I can help more.
I am using the default movement blueprint that controls a ThirdPersonCharacter as shown in the first screenshot below.
The only change I am making to the default is to scale my character by .1 as shown in the second screenshot.
In the movement input just multiply the axis value with newSize/standardSize.
I did that and it reduced my character’s movement speed, so he walks slower, but he still covers the same amount of distance with each step. So basically when my character is normal 1 scale each step covers probably roughly a few feet, but even when my character is .1 scale, his steps still cover the same distance and carry him a few feet at a time.
Post how you do it please.
What you could do is set the Max Walk Speed of the Character Movement to 1/10 of the speed. The max walk speed affects how far your characters travel per second. So if it’s set to 600 that means the character will move 600 units per second regardless of size. You need to change the max walk speed value rather than your axis values because of this.Here’s an example.
As I said, show us how you do it. We cant help you unless you show us blueprint code or something.
Yes, but where are you handling the movement input? Now you showed me how you enlarge and shrink the character. That is not your problem. You have to give me the modified code from the first screenshot you uploaded above.
So I tried this, but it only slows down my character’s movement speed, but he still covers the same distance with each step, he just does it in slow motion essentially.
This is all I am doing. I am just changing the actor scale to .1 with an input action.
Based on your previous response, I have adjusted the movement input axis values by .1 as shown in this screenshot.
Its not working for me. The only thing it does is slow down his movement, but does nothing to effect the scale of the distance he travels with each step.
I just tested that setup and it works.
12 seconds multiplied with 1 and 120 seconds multiplied with 0.1.
Are you talking about his animation being slowmo so that he jumpes one step ahead?
If so you have to multiply the animation speed by 10
Yeah his animation is slowed down. Everything looks normal and it is a smooth walking animation, but it is just slow.
That is because you are not compensating by slowing down the animation as well. You can either multiply the duration by 0.1 or change the speed of the animation by multiplying with 10. I need to see how you handle the animation before I can tell you though.