unity 工程编译顺序(转)
来源:互联网 发布:骚男辣条淘宝店链接 编辑:程序博客网 时间:2024/06/05 21:53
我们在Unity3D开发的时候,经常会看到它会产生不少固定命名工程文件,诸如:
Assembly-CSharp-Editor-vs.csproj
Assembly-CSharp-Editor-firstpass-vs.csproj
看得不少人云里雾里的。那么,这些工程是如何产生的呢?各自的作用是什么?下面就来逐一解析。
一. 首先从脚本语言类型来看,Unity3D支持3种脚本语言,都会被编译成CLI的DLL。
如果应用中含有C#脚本,那么Unity3D会产生以Assembly-CSharp为前缀的工程,名字中包含"vs的"是产生给Visual Studio使用的,不包含"vs"的是产生给MonoDevelop用的。
应用中包含的脚本语言
工程前缀
工程后缀
C#
Assembly-CSharp
csproj
JavaScript
Assembly-UnityScript
unityproj
Boo
Assembly-Boo
booproj
如果工程中这3中脚本都存在,那么Unity3D将会生成3种前缀类型的工程。
二. 对于每一种脚本语言,根据脚本放置的位置(其实也部分根据了脚本的作用,比如编辑器扩展脚本,就必须放在Editor文件夹下),Unity3D会生成4种后缀的工程。其中的firstPass就表示先编译,Editor表示放在Editor文件夹下的脚本。
下面以C#脚本为例。如果工程中只有C#脚本,不考虑为VS和MonoDevelop各自生成工程的差异性,我们可以得到4个工程文件:
Assembly-CSharp-firstpass-vs.csproj
Assembly-CSharp-Editor-firstpass-vs.csproj
Assembly-CSharp-vs.csproj
Assembly-CSharp-Editor-vs.csproj
(1) 所有在Standard Assets,Pro Standard Assets或者 Plugins文件夹中的脚本会产生一个Assembly-CSharp-firstpass-vs.csproj文件,并且先编译;
(2) 所有在Standard Assets/Editor, Pro Standard Assets/Editor 或这Plugins/Editor文件夹中的脚本产生Assembly-CSharp-Editor-firstpass-vs.csproj工程,接着编译;(3) 所有在Assets/Editor外面的, 并且不在(1),(2)中的脚本文件(一般这些脚本就是我们自己写的非编辑器扩展的脚本)会产生Assembly-CSharp-vs.csproj工程,被编译;
(4) 所以在Assets/Editor中的脚本产生一个Assembly-CSharp-Editor-vs.csproj工程,被编译。
之所有这样建立工程并按此顺序编译,也是因为DLL间存在的依赖关系所决定的。
转http://blog.csdn.net/jjiss318/article/details/7632041
- unity 工程编译顺序(转)
- unity 脚本编译顺序
- Unity脚本编译顺序
- Unity Editor编译顺序
- Unity脚本编译顺序
- (转)Unity3D中脚本的执行顺序和编译顺序(vs工程引用关系)
- Unity 编译顺序及原理
- unity mono 编译(转)
- Unity打包xcode工程编译错误整理
- Unity特殊文件夹和脚本编译顺序
- Unity 特殊文件夹及脚本编译顺序
- Unity3D中脚本的执行顺序和编译顺序(vs工程引用关系)
- c++的工程文件的编译顺序
- c++的工程文件的编译顺序
- Unity3D学习笔记(3)——Unity脚本编译顺序
- Unity特殊文件及脚本编译顺序(Special folders and script compilation order)
- Unity打包xcode工程编译错误及解决方法
- Unity编译iOS工程的自动化配置(XUPorter)
- 第2章 9
- .NET批量大数据插入性能分析及比较(2.普通插入与拼接sql批量插入)
- cglib
- HTML中引号多层嵌套的问题
- 07-图4. Saving James Bond - Hard Version (30)
- unity 工程编译顺序(转)
- Android数据存储(1)——File
- CMake 命令
- Leetcode-median of two sorted arrays
- 2015-05-06python-web攻略(1)套接字-IPv4-简单的客户端服务器编程
- 灰度图像的对比度动态范围压缩
- php使用curl发起http请求
- 解读高指数下的投资机会
- duilib : 做一个清除工程中废弃图片资源的工具