I am trying to work out how to get walking backwards animations to play on my 3d direct controlled character. Is this what the "Vertical movement float" is used for on the character's player component?
I've tried to set up a simple blend tree using the "2D Freeform Cartesian" Blend Type that uses Speed and ForwardMovement for the parameters (Speed is the character's movement speed float, ForwardMovement is the vertical movement float), but I can only get him to walk forwards.
Advice or a visual example, if anyone knows of any, would be appreciated.
It looks like you're new here. If you want to get involved, click one of these buttons!
Comments
No, this is for the character's change in position along the y-axis.
If you're only dealing with moving forwards and backwards, you don't need a 2D Blend Tree - 1D should be enough, mapped to the character's movement speed float parameter.
This should be negative when moving backwards, so uncheck "Automate Thresholds" and assign the backward, idle, and forward animations only (run too, if appopriate). Uncheck "Automate Thresholds" and tailor to suit - but this in general isn't an AC topic, but one of Unity in general.
Thanks, with that, I have it working when I preview it in the animator just relying on the movement speed parameter (just using a 1D Blend Type).
An issue remains however, in that I don't know how to get AC to trigger the negative speed value in order to use the backwards walk.
To allow a Direct-controlled player to move backwards, you need to set the Direct movement type field to Tank Controls.
Okay, the problem I have though, is that my character is able to enter a "first person mode", in which "full body" character geometry is rendered, so you can look down and see that you're not just a floating camera. However, if I'm walking backwards, it still plays the forwards walk animation, as it is still camera relative instead of tank controls.
Edit: Just remembered you told us about this in order to change the movement type.
Thanks
OK, I see.
Yes, in this mode the Move Speed float is speed only - it doesn't account for direction.
Add this script to set to new parameters, ForwardSpeed and RightSpeed, to correct values:
So this script is added to the character and these new parameters need to be added to the animator, with the Blend Type changed to 2d Cartesian (as it's now dealing with 2 parameters)?
Add the two parameters, but use them how you like. A 2D BlendTree would be appropriate if you wanted strafing animations, but you can stick to a 1D for the original issue (i.e forwards/backwards only)
Great, thanks again Chris.