Unity Package Manager はパッケージのコンテンツとレジストリのメタデータをダウンロードすると、グローバルキャッシュに保存します。これにより、パッケージの再利用や共有をより効率的に行い、オフラインでも保存されたパッケージをインストールして更新することができます。
ノート: グローバルキャッシュには、Asset Store にある .unitypackage
形式のパッケージは含まれません。Package Manager は、このようなタイプのパッケージを別のキャッシュに保存します。詳しくは、Asset Store パッケージ を参照してください。
デフォルトでは、Unity はグローバルキャッシュをルートディレクトリに保存します。ルートディレクトリは、オペレーティングシステムに依存します (Windows の場合はユーザーアカウントの種類にもよります)。
オペレーティングシステム | デフォルトルートディレクトリ |
---|---|
Windows (ユーザーアカウント) | %LOCALAPPDATA%\Unity\cache |
Windows (システムユーザーアカウント) | %ALLUSERSPROFILE%\Unity\cache |
macOS | $HOME/Library/Unity/cache |
Linux | $HOME/.config/unity3d/cache |
ヒント: このルートディレクトリの場所をオーバーライドできます。 詳細については、グローバルキャッシュの場所のカスタマイズ を参照してください。
Package Manager のグローバルキャッシュは 2 つの異なるサブキャッシュを使用し、それぞれが異なる目的を果たします。Package Manager はこれらのサブキャッシュをグローバルキャッシュのフォルダー下のサブディレクトリに格納します。
サブフォルダー | 説明 |
---|---|
npm |
npm プロトコルを使ってレジストリから取得したデータを保存します。これには、パッケージのメタデータとパッケージの .tgz ファイル が含まれます。 |
packages |
このキャッシュには、レジストリから取得した .tgz ファイルの圧縮されていないコンテンツが含まれています。 |
これらのサブフォルダーの中では、それぞれのレジストリが独自のパスを持っていて、異なるレジストリでホストされているパッケージが混ざらないようになっています。
ヒント: これらのフォルダーの場所をオーバーライドできます。 詳細については、グローバルキャッシュの場所のカスタマイズ を参照してください。
Unity エディターのプロセスを実行するユーザーアカウントは、ルートディレクトリとそのコンテンツに対する完全な書き込み権限を持っていなければなりません。これらの権限がないと、Package Manager はパッケージのメタデータとコンテンツをダウンロードしてキャッシュに保存することができません。