unity 我的动画总是只播放第一帧无限卡
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了unity 我的动画总是只播放第一帧无限卡相关的知识,希望对你有一定的参考价值。
我在更新函数中用的IF语句,设置的血条等于0时播放死亡动画,但是在运行中只会卡在一个动作..动画我检查过了没问题
因为你在Update中判断了HP == 0这个状态,只要HP为0,这个Die()方法就一直在调用。所以动画就一直在Play("die");这个判断写在一帧的方法里,写在受伤判断里,只调用一次。 参考技术A 既然是用于自身的脚本为什么还要用GameObject.Find?
直接this.gameobject.SendMessage或者直接调用Die方法效率不更高?
void Die()
if(!animation.IsPlaying("die"))
animation.Play("die");
追问
因为它是挂在一个盒子上的角色,否则碰撞不好调整……主要是现在总是卡动画
追答确保你播放该动画的时候 不会有播放其他动画的操作。
不然在不同动画中切换肯定会卡动画的啊
unity Animator 怎么判断一个动画播放结束
参考技术A 第一种方法:在动画结束帧后面加个动画事件,调用下含这个变量的函数接口不是可以了?第二种方法:试试animator上面那个 exit time
第三种方法:
//获取动画层 0 指Base Layer.
AnimatorStateInfo stateinfo = animator.GetCurrentAnimatorStateInfo(0);
//如果正在播放walk动画.
if(stateinfo.IsName("Base Layer.walk"))
本回答被提问者采纳
以上是关于unity 我的动画总是只播放第一帧无限卡的主要内容,如果未能解决你的问题,请参考以下文章