如何在Unity中前后播放动画?

时间:2019-01-05 23:40:14

标签: c# unity3d

您好:)我正在使用Unity制作2D平台游戏,并且陷入了蹲伏动画的境地...我有很多蹲伏的框架,因此,当玩家按下适当的按钮时,角色坐下以及何时按下按钮放开后,我希望此动画向后播放,因此角色会站立。当前,在动画师中,我创建了两个状态,并将蹲伏动画分配给它们。蹲下状态速度为1,而所谓的下蹲状态速度为-1,这种工作方式很好。我内心的完美主义者的问题是:对于这种情况,是否存在“不重复”状态的更优雅的解决方案? 预先谢谢你!

1 个答案:

答案 0 :(得分:0)

您可以尝试的方法是在脚本中添加一个参数,以增加动画的速度。您可以将此参数称为animDirection或类似的名称。

我不确定您是否也想加快动画的速度,但是以防万一您可以执行以下操作:

float animSpeed = 1;
float animDirection = 1; 

现在,您可以在脚本中操纵此变量,以使动画移动得更快,并且向前移动(animDirection = 1)或向后移动(animDirection = -1)

gameObject.animation["crouch"].speed = animSpeed * animDirection;

因此,您不必具有两个不同的状态。