由于某种原因,我的动画没有播放,它的生物看起来像是卡在第一帧上。
public Animator anim;
void FixedUpdate () {
targetDistance = Vector3.Distance(target.position, transform.position);
if (targetDistance < attackDistance)
{
attack();
print("Attack");
}
}
void attack()
{
theRigidBody.AddForce(transform.forward * speed);
anim.Play("attack", -1, 0f);
}
它在控制台和生物中打印“攻击”会改变它的姿势,但由于某种原因它不会播放。
答案 0 :(得分:1)
您是否在编辑器中设置了动画变量?如果没有,它可能会导致错误,所以你可能会这样做。
试试这个:
anim.Play("attack", PlayMode.StopAll);
//or
anim.Play("attack", PlayMode.StopSameLayer);
如果没有成功,请执行以下操作:
print(anim.Play("attack", PlayMode.StopAll).ToString());
如果返回false,则表示没有名为&#34; attack&#34;被发现了。