Unity3D之Animation中AnimationEvent的BUG?爬坑向

原创 2015年11月19日 11:48:48

写在前面:账号被盗,博客被封,直到今天才动手找回,没想到还挺顺利。刚好手头上碰到一个坑,记录一下。


BUG_1:

如图,我在动画的末尾添加了一个AnimationEvent,我希望达到的效果。


if(动画拨到最后一帧时(情况一))

{

通知我,这里输出一个字符串,表示技能完整施放;

播放另一个动画;

}

else if(动画播放一半切换到另一个动画(情况二)

{

那么不触发这个AnimationEvent;

}


问题出现了,我发现无论我是中途切换动画或者让动画播完,AnimationEvent都会被调用。(此刻我的心情是崩溃的)。

。。。(查代码逻辑,过程略,其中并没有什么问题,耗费生命1 h)

于是我觉得问题出在动画系统。

。。。(百度,谷歌,没有。。耗费生命0.5f h)

自动(自己动手)修复吧。

。。。(把动画系统的参数改来改去,耗费生命1.5f h)

卧槽!

问题出在这!

 这!

我吧LoopTime取消掉,就可以了,也就是说动画如果是LoopTime的状态,无论如何都会触发AnimationEvent,以我的观点来看,这明显不是我想要的,所以我认为这是个BUG。

以上,BUG_1。

——————————————————————————————————————

BUG_2:

BUG_2是在调BUG_1的时候发现的。

如图,当LoopTime设置为true,这里我只调用一次动画,结束时却同时出现两条OutHitHeavy。这就表示AnimationEvent被调用两次,WHY?(这比上面那个BUG给我造成的阴影面价还大)



。。。。(各种无语)

自动修复。

细心的同学可能发现这张图和BUG_1的图的区别在:

                                                          

没错,我的AnimationEvent向后移了一帧,超出了动作帧。

槽!!

这尼玛求解释啊,玩人那吧!

同样,我取消掉LoopTime之后,这个问题就不存在了。

好吧,因为这个问题调了一下午,心情烦躁。。

列出这两个问题想听听各位的看法


就此搁笔了,如果文章对您有帮助,我深感荣幸


大四了,现在正在实习,同样,除工作以外也想做些有趣的游戏,个人更希望是娱乐式的游戏项目,如果有意的话请与我联系。

相关文章推荐

Unity3D Animation Event 的使用

老习惯,先给个参考链接,官方手册: https://docs.unity3d.com/Manual/animeditor-AnimationEvents.html 分析: 1...
  • davied9
  • davied9
  • 2016年11月21日 20:52
  • 4299

Unity3D学习笔记(八) 动画编辑器(animation窗口)

在unity3D内有PlayerPrefs类进行简单数据保存,如SetInt和GetInt存取整型数据,SetFloat和GetFloat存取浮点型数据,SetString和GetString存取字符...

使用Animation编辑器编辑动画

本文转自http://www.xuanyusong.com/archives/2246 仅供学习使用Unity提供了Animation编辑器,它可以为我们编辑物理动画。举个例子比如场景中有一个来回摇...

解决unity中Animation Event无法正确保存的问题

解决unity中Animation Event无法正确保存的问题,需要一种不一样的方法,一样用编辑器中的功能实现。...

Unity3D 新动画Animator的事件添加和使用

今天为了给一个怪物添加用触发打击掉血的方法,但是怪物的打击是左右摇晃武器,这样一次攻击会造成两次,所以,有一个解决办法就是,在动画某一帧添加个时间,使触发开启,再在后一帧,使触发失效!这样可以完美解决...
  • VioletTD
  • VioletTD
  • 2015年11月08日 20:36
  • 10835

Unity之Animation编辑器编辑动画

Unity提供了Animation编辑器,它可以为我们编辑物理动画。举个例子比如场景中有一个来回摇动的秋千,这个秋千在项目中完全只起到衬托作用,它不会与别的游戏对象有任何交互。如果这个秋千也用代码来写...

Unity3D Animation Event

给动画添加animation Event

Unity用程序给Animator控制的某一个动画(AnimationClip)加一个动画事件(AnimationEvent)

Unity 项目,需要对一个玩家拔武器的动作中,实现武器挂点的切换(从背部 挂到手上)。 1. 一种方案,动画美术直接编辑动画,定位到要变化挂点的帧(比如24帧),在Events里添加一个动画事件...
  • zhenmu
  • zhenmu
  • 2016年10月22日 14:33
  • 3081

Unity3D “xx AnimationEvent has no function name specified!”解决方案

Unity3D “xx AnimationEvent has no function name specified!”解决方案

Unity3D 自动添加Fbx Animation Event

using UnityEngine; using System.Collections; using UnityEditor; using System.Collections.Generic; pu...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Unity3D之Animation中AnimationEvent的BUG?爬坑向
举报原因:
原因补充:

(最多只允许输入30个字)