【Unity】修复因GameObject层级变化而导致的animationclip内容丢失_扩展

注明: 引用了他人代码
引用地址:https://blog.csdn.net/rickshaozhiheng/article/details/51597578
上一个人引用了别人的代码,我引用了他的代码23333**

使用方法
【Unity】修复因GameObject层级变化而导致的animationclip内容丢失_扩展_第1张图片

  • 将脚本放入Editor目录下,然后菜单栏会出现Custom->Animaion->Fix Animation Path
  • 将需要修复的动画的root(带有animator的GameObject)拖进TargetRoot, 将需要修复的animationClip拖入AnimationClip。
  • 如果TargetRoot即新的Animator是在原来Animator的子对象下的,修改inChild值,值为1表示原来的子对象,值为2表示原来的孙对象…
  • 注意 请在新动画上进行试验inChild,防止动画损坏!!!

解读
以前从未开发过Editor,且读不懂资源商店里的插件,这次开发中正好遇到问题,又看到一个这么易懂的小插件,于是进行使用

  • 原博做了什么?
    原博下思路说的已经很明确了,就是通过查找rootTarget的子对象下是否存在和原路径一致的路径。FindInChildren使用递归进行对所有子孙对象进行遍历
  • 我做了什么?
    因为个人对动画系统不熟悉,导致Animator所在的对象层次过高,想要向子对象添加Animator
    由于原博是对子孙对象查找完全一致的路径,所以我的rootTarget在原本就是子对象的情况下是不可能找到路径的。因此需要进行修改。
    我的修

你可能感兴趣的:(Unity)