Version: 2021.1
言語: 日本語
AssetDatabase によるバッチ処理
プリセット

特殊なフォルダー名

原則として、作成したフォルダーには自由に名前を付けてプロジェクトを管理することができます。ただし一部、特別な目的のため Unity によって予約されているフォルダー名が存在します。例えば、エディタースクリプトが正しく機能するためには Editor フォルダーに置く必要があります。

このページには Unity で使われる特殊なフォルダー名の完全なリストを掲載しています。

Assets

Assets フォルダーは Unity プロジェクトで使用するアセットが含まれている主なフォルダーです。Project ウィンドウのコンテンツは、Assets フォルダーのコンテンツに直接呼応します。ほとんどの API 関数はすべてが Assets フォルダーにあることを前提とし、そのことを明示的に言及することを要求しません。しかし、関数のなかには Assets フォルダーがパスネームの一部として含まれることを必要とするものもあります (例えば、AssetDatabase クラス内のある関数)。

Editor

エディタースクリプトは、開発中の Unity に機能を追加するものですが、ランタイムのビルドでは使用できません。Editor フォルダーのスクリプトは、ランタイムスクリプトではなく、エディタースクリプトとして実行されます。

複数の Editor フォルダーを Assets フォルダー内の任意の場所に配置できます。エディター用のスクリプトは Editor フォルダー、またはその中のサブフォルダーに配置します。

Editor フォルダーの正確な場所は、他のスクリプトと比較して、そのスクリプトがコンパイルされる時間に影響します (詳細については、特殊フォルダとスクリプトのコンパイル順 を参照してください)。

エディタースクリプトの EditorGUIUtility.Load 関数を使用して、Editor フォルダー内の Resources フォルダーからアセットをロードします。これらのアセットは、エディタースクリプトを通してのみロードされ、ビルドからは取り除かれます。

ノート: スクリプトが Editor フォルダーにあるとき、Unity は MonoBehaviour から派生したコンポーネントをゲームオブジェクトに割り当てることはできません。

Editor Default Resources

エディタースクリプトは、EditorGUIUtility.Load 関数を使用して要求に応じて読み込まれるアセットファイルを使用します。この関数は、Editor Default Resources と呼ばれるフォルダー内のアセットファイルを検索します。

Editor Default Resources フォルダーは 1 つしか作成できず、Project のルート、つまり、直接 Assets フォルダー内に配置する必要があります。必要なアセットファイルを、この Editor Default Resources フォルダーかそのサブフォルダーに配置します。アセットファイルがサブフォルダーにある場合は、EditorGUIUtility.Load 関数に渡されるパスに常にサブフォルダーパスを含有させます。

Gizmos

Gizmos を使用すると、シーンビューにグラフィックスを加えて、そうしないと目に見えないデザインの詳細を可視化することができます。Gizmos.DrawIcon 関数は、アイコンをシーンに配置し、特別なオブジェクトまたは位置のマーカーとして利用します。このアイコンを描画するために使用する画像ファイルを Gizmos というフォルダーに配置して、DrawIcon 関数によってそのアイコンを配置する必要があります。

Gizmos フォルダーは 1 つしか作成できず、Project 、つまり、直接 Assets フォルダー内に配置する必要があります。必要なアセットファイルをこの Gizmos フォルダー、かそのサブフォルダーに配置します。アセットファイルがサブフォルダーにある場合は、Gizmos.DrawIcon 関数に渡されるパスに常にサブフォルダーパスを含有させます。

Resources

ゲームで使用するために、シーンのアセットのインスタンスを作成する代わりに、スクリプトから必要に応じてアセットを読み込むことができます。これを行うには、アセットを Resources というフォルダーに配置します。Resources.Load 関数を使用してこれらのアセットを読み込みます。

Assets フォルダー内の任意の場所に複数の Resources フォルダーを配置できます。必要なアセットファイルを Resources フォルダーか、その中のサブフォルダーに配置します。アセットファイルがサブフォルダーにある場合は、Resources.Load 関数に渡されるパスに常にサブフォルダーパスを含有させます。

ノート: Resources フォルダーが Editor のサブフォルダーである場合、その中のアセットは Editor 用スクリプトから読み込み可能ですが、ビルドからは削除されます。

Standard Assets

When you import a Standard Asset package, Unity puts the assets in a folder called Standard Assets. As well as containing the assets, these folders also have an effect on script compilation order. For more information, see the page on Special Folders and Script Compilation Order.

You can only have one Standard Assets folder and you must leave it in the root of the project, directly within the Assets folder. Place the asset files you need inside the <project-root>/Assets/Standard Assets folder or one of its subfolders.

StreamingAssets

アセットをビルドに直接組み込むのが一般的ですが、アセットを別のファイルで元の形式で使用する場合があるかもしれません。例えば、Handheld.PlayFullScreenMovie を使って IOS のビデオを再生するためには、ファイルシステムからビデオファイルにアクセスする必要があります。

ストリーミングアセットを加えるには、以下を行います。

  1. StreamingAssets フォルダーにファイルを配置します。
  2. 特定のフォルダーから利用できるターゲットマシンにコピーする場合、ファイルは変更されません。

詳しくは、ストリーミングアセット のページを参照してください。

StreamingAssets フォルダーは 1 つしか作成できず、Project のルート、つまり、直接 Assets フォルダー内に配置する必要があります。必要なアセットファイルをこの StreamingAssets フォルダーかサブフォルダーに配置します。アセットファイルがサブフォルダーにある場合は、ストリーミングアセットの参照に使用するパスに、常にサブフォルダーパスを加えてください。

非表示になるアセット

インポート時に、Assets フォルダー (またはその中のサブフォルダー) 内の以下のファイルやフォルダーは、無視されます。

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

これは、OS や他のアプリケーションによって作成される特別なファイルや一時ファイルのインポートを防ぐためです。

AssetDatabase によるバッチ処理
プリセット