Unity での IME
パッケージの出力

特殊なフォルダー名

原則として、作成したフォルダーには自由に名前を付けてプロジェクトを管理することができます。ただし一部、Unity に命令として読み取られる特殊なフォルダー名が存在します。これらのフォルダー名は、そのフォルダー内のコンテンツが特定の方法で扱われるよう指定する機能を持っています。例えば、編集スクリプトが正しく機能するためには Editor フォルダーに入っている必要があります。以下は、Unity によって使用される特殊フォルダー名の全一覧です。

Assets

Assets フォルダーは Unity プロジェクトで使用するアセットが含まれている主なフォルダーです。プロジェクトビューの内容は、アセットフォルダーの内容に直接対応します。ほとんどの API 関数はすべてがアセットフォルダーにあることを前提とし、そのことを明示的に言及する必要はありません。しかし、関数のいくつかはパスの一部として含まれアセットフォルダーを持っている必要があります。(例 AssetDatabase クラス内の特定機能)。

Editor

Editor フォルダー(またはそのサブフォルダー)内にあるスクリプトはすべて、ランタイムスクリプトではなくエディタースクリプトとして扱われます。これらのスクリプトは開発中に Unity 自体に機能を追加するためのもので、ゲームのランタイム上で機能するものではありません。ひとつのプロジェクトで同時に二つ以上の Editor フォルダーを使用することも可能ですが、ある特定の Editor フォルダー内のスクリプトがその他のスクリプトとの関連の中でどの時点でコンパイルされるかは、そのフォルダーの置かれた場所によって決まってきます。詳しくは 特殊フォルダーとスクリプトコンパイル順 を参照してください。注: Editor フォルダーの中に MonoBehaviour を継承したスクリプトがあったとしても、それをゲームオブジェクトにアタッチすることはできません。

Editor Default Resources

エディタースクリプトは、EditorGUIUtility.Load 関数を使って、オンデマンドのアセットファイルを使用することができます。この関数は、Editor Default Resources フォルダー内にあるアセットファイルを探します。このフォルダーは Assets フォルダーの直下に置かれている必要があります。

Gizmos

Unity の “ギズモ” を使えばシーンビューにグラフィックを追加することができるので、通常は見ることのできないデザインの詳細を視覚化しやすくなります。Gizmos.DrawIcon関数は、特殊オブジェクトや位置のマーカーとしてシーンにアイコンを配置します。このアイコンの描画に使用される画像ファイルは、DrawIcon 関数で特定できるように Gizmos フォルダーに入っている必要があります。

Plugins

プラグイン を利用して、Unity の機能を拡張することができます。プラグインは一般的に C/C++ で書かれたネイティブ DLL で、サードパーティのコードライブラリやシステムコールなどの、元々 Unity が提供していないものにアクセスすることができます。プラグインが Unity によって認識されるためには必ず Plugins フォルダーに入っている必要があり、これは Editor フォルダー同様、スクリプトのコンパイル順に影響します。詳細は 特殊フォルダーとスクリプトコンパイル順を参照してください。プラグインのプラットフォーム制御に関しては、Plugin インスペクター を参照してください。

Resources

通常、シーン内でアセットのインスタンスを作成してゲームプレイで使用しますが、Unity では、スクリプトから必要に応じてアセットをロードすることもできます。これを行うには Resources フォルダーまたはサブフォルダーにアセットを入れます。( Resources フォルダーは、プロジェクト内のどこにでも、いくつでも置くことができます。)これらのアセットは Resources.Load 関数を使用してロードできます。

Standard Assets

標準のアセットパッケージをインポート (menu: Assets > Import Package) すると、アセットが Standard Assets フォルダーに入ります。このフォルダーはアセットを保管するだけでなく、スクリプトのコンパイル順に影響を与えます。詳しくは 特殊フォルダーとスクリプトコンパイル順を参照してください。

StreamingAssets

ほとんどのゲームアセットは作成されたプレイヤーに直接組み込まれますが、場合によっては元々の形式のままで別ファイルとしてアセットを取っておきたいこともあります。例えば iOS で動画を再生する場合は、MovieTexture として使用するのではなく filesystem から動画ファイルにアクセスする必要があります。StreamingAssets フォルダーにファイルを入れれば、そのファイルはそっくりそのままターゲットマシンにコピーされ、特定のフォルダーからアクセス可能になります。詳しくは ストリーミングアセット をご参照してください。

WebPlayerTemplates

Unity では webplayer ビルドのプレイヤー配布用に専用のホストページを提供することができます。ホストページは template 形式で提供され、プロジェクト固有の情報(プロジェクト名など)を載せることができます。これらのテンプレートは Unity がアクセスできるように WebPlayerTemplates フォルダーに入っている必要があります。詳しくは Web Player テンプレートの使用 を参照してください。また、WebPlayerTemplates フォルダーに入ったスクリプトはすべてコンパイラーに無視されることも覚えておくと便利です。例えば、ゲームの実行を妨げるような未完成のコードが含まれている場合、そのスクリプトファイルを WebPlayerTemplates フォルダーに入れておけばコンパイルされるのを一時的に防ぐことができます。

非表示になるアセット

Assets フォルダー配下にある一部のファイルやフォルダーは、アセットのインポート時に無視されるものがあります。

  • 非表示 フォルダー
  • 名前が ‘.’ から 始まる ファイルとフォルダー
  • 名前が ‘~’ で 終わる ファイルとフォルダー
  • 名前が ‘cvs’ のファイルとフォルダー
  • 拡張子が ‘tmp’ のファイル

これは、OSや他のアプリケーションで作成される特別なファイルやtempファイルのインポートを防ぐために使用できます。

Unity での IME
パッケージの出力