查看: 790|回复: 1
打印 上一主题 下一主题

[其他] Unity3D技术之特殊文件夹和脚本编译顺序

[复制链接]

2722

主题

42

听众

3万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
38266
精华
111

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2015-1-31 23:22:25 |只看该作者 |倒序浏览

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


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


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


编译阶段如下:

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

第 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# 类。


分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

0

主题

2

听众

1346

积分

助理设计师

Rank: 4

纳金币
505
精华
0
沙发
发表于 2015-2-2 17:47:49 |只看该作者
谢谢狂风大尉的指导

请问可否能够指导如何正确使用assetbundle , 尤其关于LoadFromCacheOrDownload , AssetBundle.CreateFromFile ...etc 不太理解如何正确使用.
如果有实用的脚本 (C#) ...就超级大感谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

关闭

站长推荐上一条 /1 下一条

手机版|纳金网 ( 闽ICP备08008928号

GMT+8, 2024-5-14 23:07 , Processed in 0.084022 second(s), 28 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部