首先,用SVN或Git进行Unity工程的版本管理时,只需将 Assets和ProjectSettings目录下的所有文件以及.meta文件上传即可。
Assets下各个目录的分类,主要有Resources、StreamingAssets、AssetBundle、PersistentDataPath几种。
Resources
Resources目录下的所有内容在打包时,会被压缩和加密,然后进入发布包。
- 只读,不能动态修改,所以想要动态更新的资源不要放在这里。
- 建议放一些Prefab,因为Prefab在打包时会自动过滤不需要的资源,有利于减小包体。
- 资源读取使用 Resources.Load()。
StreamingAssets
StreamingAssets和Resources类似,也会将所有内容打入发布包,区别是StreamingAssets下内容是原封不动进入包中。
- 主要用来存放二进制文件。
- 只能通过WWW类读取。
AssetBundle
AssetBundle是Unity定义的一种二进制类型,主要是把Prefab或者二进制文件封装起来,缺点是移动端无法更新脚本。
- 只能通过WWW类下载。
PersistentDataPath
PersistentDataPath是个特殊目录,因为这个路径下文件是可读写的。在iOS上是应用程序的沙盒,在Android上可以是沙盒,也可以是sdcard。
- 内容可读写,不过只有在运行时才能写入或者读取。
- 无内容限制,可以从StreamingAssets或者AssetBundle读取文件来写入PersistentDataPath中。