Unityな日々(Unity Geek)

Unityで可視化アプリを開発するための試行錯誤の覚書

特別なフォルダー名とコンパイルの順番

参考;About these special folders in unity3d ! Assets Editor Resources Plugins and so on
ProjectビューはUnityプロジェクトのAssetフォルダの中身を表示している。ここには、ユーザーが任意のフォルダーを作成して各Assetを管理できるが、デフォルトで特別な機能・役割を持つフォルダー名がある。

Name Function
(Pro)Standard Assets 標準アセットが入る。Assets-Import Assetで自動的に作成される
Resources ここにあるアセットは、スクリプトからアクセスできる。たとえば、Resources.Loadで動的にロード等
Editor Unity Editor Scripting API (UnityEditorネームスペース)にアクセスするスクリプトはここに置く
Plugins C,C++,Objective-Cのプラグインの置き場所
Gizmos ギズモ用テクスチャ/アイコンの置き場所。Gizmos.DrawIcon()で画面に表示

コンパイルの順番(参考:Unity Script Reference – Overview: Script compilation (Advanced))
優先度1.Standard Assets, Pro Standard Assets, Plugins(これらフォルダ内のScriptは他のフォルダからアクセスできない。ただし、GameObject.SendMessageを使ってやり取り可能)
優先度2.Standard Assets/Editor, Pro Standard Assets/Editor, Plugins/Editor
優先度3.Editorフォルダ外のすべてのScript
優先度4.Editorフォルダ内のScript
番外.WebPlayerTemplates内のScriptはコンパイルされない

例:たとえば、あるjavascriptスクリプトから、あるC#スクリプトにアクセスしたい場合は、C#スクリプトをStandard Assetsフォルダに入れる。そうすればまずC#がコンパイルされ、javascriptからC#を呼び出せる