unity3d 特殊文件夹和脚本编译顺序

转自http://blog.csdn.net/u010019717/article/details/40474631

大多数情况下,您可以选择任何你喜欢的文件夹在您的项目的名称,但unity储备一些名称以指示内容有一个特殊的用途。这些文件夹中有些会影响脚本编译的顺序。从根本上说,有四个单独的脚本编译,将编译脚本的阶段由其父文件夹决定。

这是重要的情况下,脚本必须引用在其他脚本中定义的类。基本的规则是在编译阶段后的任何东西不能被引用。任何编译中的当前阶段或更早的阶段是完全可用。

另一种情况发生时写的一种语言脚本必须提到另一种语言 (譬如说,声明在 C#脚本中定义的类变量的 UnityScript文件) 中定义的类。这里的规则是被引用的类必须在较早前的阶段已经编译过。

编译阶段如下:-

第 1阶段:运行脚本文件夹中的称为Standard Assets,ProStandard AssetsPlugins.

第 2阶段:编辑器Editor脚本文件夹中的称为StandardAssets/Editor,Pro Standard Assets/Editor andPlugins/Editor.

第 3阶段:不在Editor文件夹内的所有其他脚本.

第四阶段:所有剩余的脚本 (即,那些被称作Editor编辑器的文件夹内).

此外,将不在所有编译任何脚本内一个名为WebPlayerTemplates的 Assets文件夹上一级文件夹。这种行为是略有不同,也在子文件夹内工作的特殊文件夹名称 (例如,Scripts/Editor工作作为编辑器脚本文件夹中但Scripts/WebPlayerTemplates 不会阻止编译)。

一个常见的例子是UnityScript文件需要引用一个 C#文件中定义类的地方。您可以通过在非特殊文件夹中放置的 C#文件的Plugins文件夹内和UnityScript文件来达到这个。如果你不这样做,你将会得到错误,并说找不到的C# 类。

unity3d 特殊文件夹和脚本编译顺序的更多相关文章

  1. unity 脚本编译顺序

    根据官方的解释,它们的编译顺序如下: (1)所有在Standard Assets.Pro Standard Assets或者Plugins文件夹中的脚本会产生一个Assembly-CSharp-fil ...

  2. Unity之脚本编译顺序

    根据官方的解释,它们的编译顺序如下: (1)所有在Standard Assets.Pro Standard Assets或者Plugins文件夹中的脚本会产生一个Assembly-CSharp-fil ...

  3. Unity特殊目录和脚本编译顺序

     特殊目录和脚本编译顺序 大多数情况下,您能够选择不论什么你喜欢的目录在您的项目的名称.但unity储备一些名称以指示内容有一个特殊的用途.这些目录中有些会影响脚本编译的顺序.从根本上说,有四个单 ...

  4. MyEclipse部署项目到Tomcat上,但是classes文件夹下没有编译项目

    在MyEclipse中把项目部署到Tomcat上,但是Tomcat下的classes文件夹下没有编译项目解决方法:1-直接在点击菜单栏的Project--clean,对项目进行clean2-查看菜单栏 ...

  5. Tomcat的webapps目录下的classes文件夹下缺失编译好的.class文件原因及其解决方法

    右键,选择BuildPath: 可以编辑Output folder,指定编译后的文件的存放目录,一般是target/classes目录

  6. C#文件和文件文件夹按时间、名称排序-顺序与倒序

    对于文件和文件夹有多种排序方式,常用的就是按创建或修改时间.按文件名排序.在 C# 中,按时间和文件名排序都十分简单,用数组提供的排序方法 Array.Sort() 一行代码就可以搞定,当然也可以用常 ...

  7. 写个批处理脚本来帮忙干活--遍历文件夹&字符串处理

    这次打算写几篇关于脚本方面的博客,主要是记录一下 Gradle 脚本和批处理脚本的一些写法,方便后续查阅. 前言 平常开发过程中,一些较为重复的手工性工作,如果能让脚本来帮忙处理,自然是最好的,刚好之 ...

  8. Android——4.2.2 源代码文件夹结构分析

    近期公司要整android内部培训,分配给我写个培训文档.这里记录例如以下: 撰写不易,转载请注明出处:http://blog.csdn.net/jscese/article/details/4089 ...

  9. idea--忽略隐藏文件、文件夹的设置操作

    文章由来 公司同事在群里问了个问题,如下: 为了大家看清,将图特意贴出来: 这人还删除idae重装了下,哈哈,才到群里问的. 解决思路(按顺序) 1.我让他直接拉会,共享桌面我给看了下,首先是open ...

随机推荐

  1. C# Emit动态代理生成一个实体对象

    /// <summary> /// 使用Emit动态代理收集实体信息 /// </summary> /// <typeparam name="T"&g ...

  2. 史上最全的maven pom.xml文件教程详解

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  3. hdu5033 Building (单调栈+)

    http://acm.hdu.edu.cn/showproblem.php?pid=5033 2014 ACM/ICPC Asia Regional Beijing Online B 1002 Bui ...

  4. HTML Table导出为Excel的方法

    HTML Table导出为Excel的方法: 直接上源码 <html> <head> <meta http-equiv="Content-Type" ...

  5. 解决英文或数字在HTMl网页中不自动换行。

    对于网页设计的新手而言,在接触一段时间的HTML/CSS后,一定会遇到这样的问题:对于已经定义了宽度的容器(如DIV,TD,段落等)如果里面出现了较长的英文或数字,则内容不能自动换行然后会将框架撑出设 ...

  6. ACM_1 大数求和

    /*1 *2014.11.18 *大数求和 */ #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <strin ...

  7. POJ 2486 Apple Tree

    好抽象的树形DP......... Apple Tree Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 6411 Accepte ...

  8. html 框架

    通过使用框架,你可以在同一个浏览器窗口中显示不止一个页面. 本例演示:如何使用三份不同的文档制作一个垂直框架. <html> <frameset cols="25%,50% ...

  9. 怎么看网站是否开启CDN加速?测试网站全国访问速度方法详解

    注意域名,动静分离的网站,只对静态文件的域名做了cdn 怎么看网站有没开启CDN? 要看一个网站是否开启CDN,方法很简单,只要在不同的地区ping网址就可以,比如在山东济南ping www.jb51 ...

  10. Javascript高级程序设计——函数声明与函数表达式的区别

    在Javascript中,函数是Functioin类型的实例,所以函数也具备属性和方法,因为函数是对象,所以函数名自然就是指向对象的指针啦. 函数可以通过声明语法和表达式来定义: 声明:functio ...