AnimationEvent事件问题

Posted cartzhang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AnimationEvent事件问题相关的知识,希望对你有一定的参考价值。

AnimationEvent事件问题

本文章由cartzhang编写,转载请注明出处。 所有权利保留。
文章链接:http://blog.csdn.net/cartzhang/article/details/50914823
作者:cartzhang

**

一,说明

上周在使用Unity过程中,出现了一些奇怪的事情。
当然,在不排除自己使用方法问题的时候,都可以怀疑Unity版本问题,这就是槽点啊!!

二、AnimationEvent使用

AnimationEvent的添加和使用方法,官方网址:
file:///C:/Program%20Files/Unity5.3.0/Editor/Data/Documentation/en/Manual/animeditor-AnimationEvents.html

当然是你本地文件夹的路径。

然而,在打开Animation后,在多次添加完毕Event事件后,调整或保存后,总会发生事件丢失的问题。
这里写图片描述

后来才知道问题在这里:
这里写图片描述

看到红框的里面的说明了吧,这玩意儿是个只读的。

怎么办?还是老老实实的从动画里面添加事件:
是这样做的:

add animation event

三、事件添加没有效果


该添加的都已经添加完毕了。咋还运行报错,找不到事件函数呢?
一开始怀疑,写了函数为类中的私有函数,private。要是私有的不可以调用,从设计的角度,就应该把这些没用的私有,不可用调用的全部屏蔽掉啊!!
所以,问题不在于此啊!!


历尽千辛万苦,把所有动画下的挂在的事件,全部都重新修改调整了一遍。结果通过比较meta文件,发现meta文件中原来的event中,多了一个空格,就是由他造成的。
但是可以保证,在使用上述的动画Event中,绝对是拷贝的代码,没有添加过任何手动的过程,这样就会多了个空格这种问题。想想,也是无可奈何啊!!Unity我也无奈。

四、说说meta文件

meta文件主要包括内容:

  1. 文件格式版本
  2. GUID
  3. 创建时间
  4. License类型
  5. 导入者
  6. 用户数据等。
    我们随便看看一个:
fileFormatVersion: 2
guid: 7d5d1ce2c226f9e40a8c1692583c2700
timeCreated: 1453951490
licenseType: Free
DefaultImporter:
  userData: 
  assetBundleName: 
  assetBundleVariant: 


meta文件的作用:帶有GUID,就意思就是文件唯一標識。就是很小概率的重複的一組數字。
使用它來對應相應的資源引用,在下次搜索到這個引用時,若找不到就場景就會崩潰,腳本就會顯示“Missing script”。它們是工程的一部分。

若不想看到它,可以隱藏它。如下圖所示:
如圖

在工程中,meta文件是需要提交的,如沒有,就會在本地自動生成一個,打亂原來的所有資源引用。
https://gamedevdaily.io/managing-meta-files-in-unity-713166ee3d30#.jyjv9b2ks
這篇文章還是不錯的。若是不太了解,可以看看!!!

参考

http://answers.unity3d.com/questions/932348/visible-or-hidden-meta-files-with-git.html
http://answers.unity3d.com/questions/620728/how-to-remove-meta-files-1.html
https://gamedevdaily.io/managing-meta-files-in-unity-713166ee3d30#.jyjv9b2ks

—————-THE—————-END—————————————–

若有問題,請隨時聯繫!!
非常感謝!!!

喝了這碗雞湯,分清楚那是個夢想,還是夢鄉
这里写图片描述

以上是关于AnimationEvent事件问题的主要内容,如果未能解决你的问题,请参考以下文章

Unity 动画系统 AnimationEvent 动画事件

Unity中关于AnimationEvent.Time的问题

如何在具有 Animator 的 GameObject 之外添加 AnimationEvent 接收器/侦听器?

csharp AnimationEventで对象参照とAnimationEvent型を送るテスト

Unity圣典

unity 3d中,Animation clip播放到第一个Animation Event事件就停了下来,为啥?