Version: 2021.3
言語: 日本語
パッケージ用のスクリプティング API
スコープ付きレジストリ

パッケージアセットへのアクセス

このページでは、 パッケージ内で定義されたアセットにアクセスしたり参照する方法を説明します。

ノート: 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"

パッケージ内にテクスチャを読み込む

パッケージ内に格納されたテクスチャを読み込むには、 LoadAssetAtPath メソッドを使用し、以下の例に示すように Packages/<package-name>/ パススキームに従ってパスを指定します。

Texture2D texture = (Texture2D)AssetDatabase.LoadAssetAtPath("Packages/com.unity.images-library/Example/Images/image.png", typeof(Texture2D));

絶対パスの解決

パッケージ化されたアセットの絶対パスを取得するには、Path.GetFullPath() メソッドを使用します。以下はその例です。

string absolute =   Path.GetFullPath("Packages/com.unity.images-library/Example/Images/image.png");

パッケージ用のスクリプティング API
スコープ付きレジストリ