Unity Animator Transition进入另一个我不期望的状态

时间:2016-04-16 07:17:38

标签: unity5 animator

My animator state machine

<table border="1">
<tr>
<th>State Change</th>
<th>Conditions</th>
<th>Input Control</th>
</tr>
<tr>
<td>Idle -> Walk</td>
<td>IsMove == true</td>
<td>MouseDown anywhere in game</td>
</tr>
<tr>
<td>Walk -> Idle</td>
<td>IsMove == false</td>
<td>MouseUp anywhere in game</td>
</tr>
<tr>
<td>Walk -> Attack</td>
<td>Trigger "Attack"</td>
<td>MouseUp on enermies</td>
</tr>
<tr>
<td>Attack -> Idle</td>
<td>None</td>
<td>None</td>
</tr>
</table>

    当MouseUp在enermies上时,会发生两件事:
    触发“攻击”并将“IsMove”设置为false。
    我确定触发“攻击”发生在将“IsMove”设置为false之前。
    但是状态转到Walk - &gt;空闲,而不是走路 - &gt;攻击。
    谁能告诉我为什么?谢谢!

1 个答案:

答案 0 :(得分:0)

我知道答案。
我不确定为什么,但似乎团结将处理MonoBehaviour的所有更新,而不是去动画师。
因此,首先触发“攻击”或首先将“IsMove”设置为假并不重要 当状态机要改变时,“IsMove”已经是假的。