C# 如何在Unity中从步行动画过渡到跑步动画?

C# 如何在Unity中从步行动画过渡到跑步动画?,c#,animation,unity3d,maya,C#,Animation,Unity3d,Maya,我已经使用了我自己的方法,但我没有得到想要的结果-我需要知道如何通过Unity中的C#从单步行走动画正确过渡到连续跑步循环动画。我在Unity论坛上看过,但没有骰子 好的,我在Maya中创建了一个空闲和连续行走动画,并将其导入Unity中,然后将行走循环分为两个单独的步骤(1个左步骤和1个右步骤) 因为我的角色一次移动一步取决于用户的点击(他只在用户不断点击时开始“跑步”或连续行走),所以我只需使用动画控制器中的触发器,每隔一步交替使用左右动画 这是我当前的设置(转换是L和R触发器): 然后是

我已经使用了我自己的方法,但我没有得到想要的结果-我需要知道如何通过Unity中的C#从单步行走动画正确过渡到连续跑步循环动画。我在Unity论坛上看过,但没有骰子

好的,我在Maya中创建了一个空闲和连续行走动画,并将其导入Unity中,然后将行走循环分为两个单独的步骤(1个左步骤和1个右步骤)

因为我的角色一次移动一步取决于用户的点击(他只在用户不断点击时开始“跑步”或连续行走),所以我只需使用动画控制器中的触发器,每隔一步交替使用左右动画

这是我当前的设置(转换是L和R触发器):

然后是代码:

public swipes swipe() {
    if (Input.touches.Length > 0) {
        Touch t = Input.GetTouch (0);

if (t.phase == TouchPhase.Began && CrossPlatformInputManager.GetButton ("Swipe")) {
    if (stepCount % 2 != 0) {
        animator.SetTrigger ("oneStep");
        stepCount++;
    } else {
        animator.SetTrigger ("twoStep");
        stepCount++;
    }
    return swipes.tap;
    }
}}
这看起来还可以,但只有当用户定期点击时,这意味着不连续点击多次。当它们快速点击时,所有的步骤都混合在一起,动画太慢而无法完成,因此看起来不自然,也不像跑步

我需要做的是,如果水龙头开始快速连续过渡到我预先制定的完整运行周期,而不是单个步骤。很明显,我有一些想法,但我不是唯一一个遇到这种情况的人——什么是协调这种情况的正确方法

如何正确地从单步走到步行动画