2017-05-19 43 views
-3

我在现场如何两个动画之间切换在Unity

通常马是用步行(散步)动画

有两个动画(跑,走)一马,我需要当玩家的方法从马,马逃脱使用(运行)动画而不是(走)动画

任何人都可以帮助我吗?

+1

欢迎堆栈溢出。请看看[如何提出一个好问题](https://stackoverflow.com/help/how-to-ask)。此外,我建议对您的问题进行更改,以包含您迄今尝试过的一些代码,以增加获得答复的机会。 – Sandman

回答

0

这可以通过制作2个动画来实现 - 假设您已经这样做了。如果没有,你可能在马上有一个动画师,创建一个并将它放在两个动画中。创建Animator后,通过转到Window - > Animator打开它。

在动画确保“走”动画层默认状态 Animator - 如果不是右键单击动画,然后单击“设置为默认层状态”。

现在转到参数选项卡上的动画窗口的右侧,点击“+”按钮: parameters tab - Animator

,并选择“触发”(或布尔/浮动),然后给它一个名字,我将其命名为'trigger_run'。

现在右键单击动画状态并选择“制作过渡”,然后左键单击其他动画 - 对其他动画执行相同操作。 单击从“步行”到“跑步”的箭头并添加一个条件(在右侧)。它会自动添加trigger_run。 (请务必不要把条件上的箭头回走动画

输入你的脚本,你必须在马背上(如果没有,创建一个),并创建了动画的引用,并触发动画开关:

private Animator anim; 

void Start() { 
    anim = GetComponent<Animator>(); 
} 

void Update() { 

    // CODE 

    anim.SetTrigger("trigger_run"); 

    // CODE 

} 

如果您遇到动画切换延迟,请在您的动画制作工具中选择'走' - >'运行'箭头并禁用'有退出时间','固定持续时间'并将' %)'为0.

animation-switch delay

+0

非常感谢你的回答..我已经应用了所有的步骤,但不幸的是,现在马总是跑..他不再走了..我已经确保动画步行是默认状态..我能做什么? –

相关问题