Version: 2017.4
Platform dependent compilation
Script compilation and assembly definition files

Специальные папки и порядок компиляции скриптов

Unity reserves some project folder names to indicate that the contents have a special purpose. Some of these folders have an effect on the order of script compilation. These folder names are:

  • Assets
  • Editor
  • Editor default resources
  • Gizmos
  • Plugins
  • Resources
  • Standard Assets
  • StreamingAssets

See Special folder names for information on what these folders are used for.

There are four separate phases of script compilation. The phase where a script is compiled is determined by its parent folder.

Это имеет большое значение в случае, если скрипт должен обратится к классам, определенным в других скриптах. Основное правило заключается в том, чтобы не было ссылок на скрипты, компилирующиеся в фазе после. Все, что компилируется в текущей или ранее выполненной фазе, должно быть полностью доступно.

Другая ситуация бывает когда скрипт, написанный на одном языке, должен ссылаться на класс, определенный на другом языке(например, скрипт на языке UnityScript объявляет переменные класса, определенные в C# скрипте). В этом случае класс, на который ссылаются, должен быть скомпилирован в более ранней фазе.

Есть следующие фазы компиляции:-

Фаза 1: Выполняются скрипты из папок с именами Standard Assets, Pro Standard Assets и Plugins. Фаза 1: Выполняются скрипты из папок с именами Standard Assets, Pro Standard Assets и Plugins. Фаза 3: Все прочие скрипты, не находящиеся в папке Editor. Фаза 4: Все оставшиеся скрипты (т.е. находящиеся в папке Editor).

В общем случае, скрипт UnityScript ссылается на класс, определенный на языке C#. Здесь нужно разместить C# файл в папку Plugins, а UnityScript - в любую не специальную папку. Если этого не сделать, получите ошибку, говорящую о том, что C# класс не найден.

Note: Standard Assets work only in the Assets root folder.

Platform dependent compilation
Script compilation and assembly definition files
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961