Unity工程中 .Meta 文件的来龙去脉
2016-05-05 10:39
344 查看
如果你在游戏开发过程中使用诸如SVN的版本控制工具,那你必须得理解Meta文件的作用。在游戏场景中引用一个游戏资源,Unity并不直接按照文件路径和名称,而是使用一个独一无二的GUID来指向工程里的该资源文件。这个GUID储存在Unity工程为每个资源和文件夹生成的Meta文件里。
使用GUID的好处就是,即使你移动、重命名或者修改资源的内容,这个资源仍然可以通过GUID来被引用(只要GUID不变,资源就能够被引用)。缺点是你必须明确的意识到Meta文件是被关联到特定的资源上的,如果你删除了一个meta文件,Unity会认为原始的资源文件已经被删除,然后为这个“新的”资源文件生成一个新的GUID。这就是游戏场景中的资源引用中断的最常见原因。
除了GUID,meta文件还存储了有关资源导入的信息。例如,贴图资源在导入时可以当作标准贴图、法线贴图、GUI贴图、cookie或者光线贴图。这些导入设置都会被存储在meta文件里。
之前遇到一个问题,就是我上传到SVN的怪物Prefab,在策划那边查看出现“Missing Script”的问题,经检查,是该丢失的脚本的meta文件没有上传到SVN。所以,按照上面的理论,因而Prefab找不到该脚本的引用。
参考自http://www.3dgep.com/using-version-control-with-unity/
使用GUID的好处就是,即使你移动、重命名或者修改资源的内容,这个资源仍然可以通过GUID来被引用(只要GUID不变,资源就能够被引用)。缺点是你必须明确的意识到Meta文件是被关联到特定的资源上的,如果你删除了一个meta文件,Unity会认为原始的资源文件已经被删除,然后为这个“新的”资源文件生成一个新的GUID。这就是游戏场景中的资源引用中断的最常见原因。
除了GUID,meta文件还存储了有关资源导入的信息。例如,贴图资源在导入时可以当作标准贴图、法线贴图、GUI贴图、cookie或者光线贴图。这些导入设置都会被存储在meta文件里。
之前遇到一个问题,就是我上传到SVN的怪物Prefab,在策划那边查看出现“Missing Script”的问题,经检查,是该丢失的脚本的meta文件没有上传到SVN。所以,按照上面的理论,因而Prefab找不到该脚本的引用。
参考自http://www.3dgep.com/using-version-control-with-unity/
相关文章推荐
- 《VR入门系列教程》之21---使用Unity开发GearVR应用
- 《VR入门系列教程》之14---面向大众的Unity3D
- Unity3d OnApplicationPause与OnApplicationFocus
- 12个优化Unity/GearVR应用的小技巧
- Unity问答系列1
- UNITY3D自学--(一)
- Unity 3d导出安卓版本的详细步骤
- Unity3D+moba+小地图视野
- unity 替换渲染 ( Rendering with Replaced Shaders )
- Unity帧序列实时渲染脚本
- unity3d
- 【翻译】 Unity3D VR 教程:2.开始进行VR开发
- 学习Unity射线的创建使用
- Unity3d中的属性(Attributes)整理
- Unity5.0 AssetBundle 学习心得
- Unity3D——主角面朝方向一定区域内对象角度计算
- 使用Unity3D 自主实战开发的赛车游戏实例,关键点记录 (三)之UI菜单制作
- Unity 3d Shader实践 —— 第一个Shader
- Unity—Android通讯
- Unity3d 数字模型制作规范