1、本文主要介绍工程文件结构,哪些目录、文件需要放在版本控制系统中。
http://developers.nravo.com/mastering-unity-project-folder-structure-level-0-vcs/#.U0yXvPmSyNw
2、.meta文件介绍
3、Asset目录下的系统保留目录
http://docs.unity3d.com/Documentation/Manual/ScriptCompileOrderFolder s.html
从新建工程中查看unity文件系统
这么多文件和目录中,只有两个目录是需要放入版本控制中的:Assets 和 ProjectSettings。其他所有文件都是从这两个目录文件中生成出来的:
Assembly-CSharp-vs.csproj / Assembly-CSharp.csproj:
为C#脚本生成的Visual Studio和MonoDevelop的工程文件。
Assembly-UnityScript-vs.unityproj / Assembly-UnityScript.unityproj:
JS的工程文件
testproject.sln / testproject-csharp.sln:
IDE的solution,第一个包含c#、JS、Boo,第二个是纯C#工程,用VS打开,因为VS不处理JS和Boo工程
testproject.userprefs / testproject-csharp.userprefs:
MonoDevelop用来存放当前打开的文件、断点、监视点等信息的配置文件。
备注:
Assets:
ProjectSettings:
Library:
obj / Temp:
建立版本控制系统:
assets转换为文本的设置(unity 4.3):
1、Edit→ Preferences → Packages → Repository中设为External
2、Edit → Project Settings → Editor → Version Control Mode设为Hidden Meta Files(非必须)
3、最重要的:Edit → Project Settings → Editor → Asset Serialization Mode中设为Force Text,这里是选择用二进制还是文本格式保存。
4、保存配置
.meta文件介绍
Assets目录下的系统保留目录
http://docs.unity3d.com/Documentation/Manual/ScriptCompileOrderFolder s.html
脚本编译顺序:
1、Standard Assets, Pro Standard Assets , Plugins 目录下的脚本
2、Standard Assets/Editor, Pro Standard Assets/Editor and Plugins/Editor 目录下的脚本
3、名字为Editor的目录之外的所有脚本
4、名字为Editor的目录下的脚本
Assets根目录下的WebPlayerTemplates 目录内的脚本不会编译。
比如一个UnityScript文件需要引用一个C#文件中定义的类。你可以将C#文件放在Plugin目录下,UnityScript文件放在一个非特殊目录下。如果不这样做,会提示C#类找不到。
http://wiki.unity3d.com/index.php/Special_Folder_Names_in_your_Assets_Folder
Standard Assets:其中的脚本最早被编译
Pro Standard Assets:与Standard Assets一样,是付费版的内容,比如纹理渲染、屏幕特效等
Editor:这个目录名字比较特殊(不一定在Assets根目录下),此目录下的脚本是unity编辑器的脚本API。如果你的脚本需要用到UnityEditor命名空间中的内容,就需要放在名为Editor的目录下。整个工程中可以有多个Editor目录。
Plugins:放置脚本使用的本地插件,编译时会被自动包含。必须放在Assets根目录下。Windows下的本地插件后缀为.dll,MAC下为.bundle,Linux下为.so
Resources:此目录下的资源可由脚本直接引用文件路径和名字,而不是常用(推荐)的直接引用(编辑器中拖放)。所以编译时此目录下的所有文件都会被自动包含(包括没有用过的资源)。工程中可以有多个Resources文件夹。不推荐在多个Resources目录下存放同名文件。一旦编译,所有Resources目录下的所有资源都会被一起打包。
运行时导入资源请参考官方说明http://docs.unity3d.com/Documentation/Manual/LoadingResourcesatRuntim e.html
Gizmos:此目录下的纹理/图标用于Gizmos.DrawIcon(),按名字调用,在编辑器中绘制在屏幕上。
WebPlayerTemplates :网页版,略过
Streaming Assets:Application.streamingAssetsPath中使用的资源,略过