meta本质上是一个使用YAML格式来编写的文本文档,它在unity中的作用非常关键,它有2个作用:
保存GUID
保存着非meta文件的GUID。而对于unity的序列化文件来说,引用的对象就是用这个GUID,具有唯一性。所以一旦meta中的GUID变更了。就要注意了这里引用就可能丢失了。
保存ImportSetting
存储资源文件的ImportSetting数据。ImportSetting中专门有存储Assetbundle相关的数据。这些数据帮助编辑器去搜集所有需要打包的文件并分门别类。所以每一次修改配置都会修改meta文件。
使用notepad++打开一个meta文件,然后在菜单中将语言设置为YAML。
基本上来说GUID就是代表了这个对应的文件。两者可以在编辑器通过AssetDatabase.GUIDToAssetPath和AssetDatabase.AssetPathToGUID进行相互转换。
对于不同的文件类型其对应的ImportSetting不同。如果将文件和对应meta在不同项目中迁移则可以保证其配置一致。反之则配置会丢失剩下默认配置。
用以在本身这个文件时一个图集的情况下,对于下面的图片子对象的索引关系则采用FileID来对应。保存在fileIDToRecyleName子项中。