このページでは、 パッケージ内で定義されたアセットにアクセスしたり参照する方法を説明します。
ノート: Package Manager はパッケージ内のストリーミングアセットをサポートしていません。代わりに Addressable パッケージをご利用ください。
パッケージ内で定義されたアセットを参照するには、以下のパススキームを使用します。
"Packages/<package-name>/..."
パッケージ内のアセットのパスは Packages/
とパッケージの name (display name ではありません) で始まります。
対照的に、以下のスキームを使用してプロジェクトアセットにアクセスします。
"Assets/..."
例えば、com.unity.images-library パッケージのサブフォルダー /Example/Images
内のファイル image.png のパスは以下の通りです。
"Packages/com.unity.images-library/Example/Images/image.png"
To load a Texture stored inside a package, use the LoadAssetAtPath method, which requires the using UnityEditor
directive. Specify the path following the Packages/<package-name>/
path scheme as demonstrated in this example:
using UnityEditor;
// ...
Texture2D texture = (Texture2D)AssetDatabase.LoadAssetAtPath("Packages/com.unity.images-library/Example/Images/image.png", typeof(Texture2D));
To get the absolute path of a packaged asset, use the Path.GetFullPath() method, which requires the using System.IO
directive. For example:
using System.IO;
// ...
string absolute = Path.GetFullPath("Packages/com.unity.images-library/Example/Images/image.png");