Animator直接引用FBX下的AnimClip与直接引用单独的AnimClip的对比

Animator中各State的Motion分别以两种方式对AnimClip进行引用:

1)FBX作为一个整体,直接引用其下的AnimClip

2)引用FBX下的AnimClip(Ctrl+D实例)复制出的AnimClip文件

将最终的Animator文件放到Resources下进行空场景打包,两种方式打出的APK包的大小完全一样,解压后进行文件夹对比(重点进行assets的对比)可以看到:

 

 这里我们可以随机选取两侧大小一样的两个文件进行单独对比(反向分析),会发现文件内容完全一样,eg:

E:\Projects\FBXAnimclipTest\apk\fbx\assets\bin\Data\0b6c5632c1f369c459fdf358a9ab3f6e
E:\Projects\FBXAnimclipTest\apk\anim\assets\bin\Data\1e743614a4cf2be40963361cc15918ea

接下来我们通过进行项目资源的正向分析来进行验证:

到工程中分别找到meta文件中的guid为0b6c5632c1f369c459fdf358a9ab3f6e和1e743614a4cf2be40963361cc15918ea的对应文件,会发现两文件分别对应着animclip的.anim文件和.fbx文件。

因此,我们可以得出结论:虽然本身.anim文件和.fbx文件有内容及大小上的差异,但是不会对打包结果产生影响(待验证是否会影响打包的过程,eg:数据抽取的过程、打包的效率)。Unity在资源打包时仅包含了必要的资源数据部分,会将该数据进行抽取转化为自有的内部格式。

 

其中在做文件夹对比时,我们可以看到两个特殊的文件不一致:

E:\Projects\FBXAnimclipTest\apk\anim\assets\bin\Data\bc992c5c9d23fcb40b18294c898549e8

E:\Projects\FBXAnimclipTest\apk\anim\assets\bin\Data\globalgamemanagers

分别打开进行内部对比:

 

 可以看到是引用的资源文件名的变化引起的不同,分别都有23处不同,与文件夹对比时的不同文件数量一致(globalgamemanagers、bc992c5c9d23fcb40b18294c898549e8除外)。

posted on 2019-06-24 13:20  不二无一  阅读(644)  评论(1编辑  收藏  举报

导航