Version: 2023.2
言語: 日本語
ネットワークの問題を診断する
パッケージの命名

カスタムパッケージの作成

Unity Package Manager は Unity 公式のパッケージ管理システムです。以下を行います。

  • Unity が素早く簡単に新しい機能を配布し、既存の機能を更新できるようにします。
  • ユーザーが再利用可能なコンポーネントを見つけて共有するためのプラットフォームを提供します。
  • 拡張可能なオープンプラットフォームとして Unity の機能を増進します。

Package Manager を使用して、プロジェクトの依存関係の定義、 パッケージの依存関係の解決、必要に応じたパッケージのダウンロードと追加、プロジェクトのコンテンツの統合を行うことができます。

パッケージとは何か、Unity Package Manager のしくみに関する一般的な情報は、Unity Package Manager のドキュメントを参照してください。

概要

パッケージは以下を含むことができます。

  • C# スクリプト
  • アセンブリ
  • ネイティブプラグイン
  • モデル、テクスチャ、アニメーション、オーディオクリップ、その他のアセット

ノート: Package Manager はパッケージ内のストリーミングアセットをサポートしていません。代わりに Addressable パッケージをご利用ください。

各パッケージには、パッケージ名、バージョン、 依存関係のリスト、リポジトリへの URL などの情報を含む パッケージマニフェスト ファイルも含まれます。

手順

新しいパッケージを作成する手順は以下の通りです。

  1. 以下のいずれかの方法で、パッケージの空のシェルを作成します。

  2. フォルダー構造体の レイアウト が Unity パッケージの パッケージレイアウト規則 に従っていることを確認してください。例えば、エディターと Runtime のライブラリがある場合は、それを EditorRuntime フォルダーに格納してください。

  3. パッケージにコードが含まれている場合は、作成したパッケージレイアウトに必要なアセンブリ定義ファイルがあることを確認してください。アセンブリ定義ファイルの作成と定義については、アセンブリ定義とパッケージ を参照してください。追加情報については、アセンブリ定義 を参照してください。

    ノート: アセンブリ定義ファイルを加えた後にコンソールウィンドウが警告を表示する場合は、プロジェクトを保存して閉じ、再度開いてください。

  4. ツール、ライブラリ、パッケージが必要とするアセットを加えます。

  5. パッケージにテストを追加する。テストは、パッケージがさまざまなシナリオで期待通りに動作することを保証するために不可欠です:

    • すべてのエディターテストを Tests/Editor に書き込みます。
    • すべての再生モードテストを Tests/Runtime に書き込みます。
  6. パッケージのサンプルがある場合は、適切なサンプルサブフォルダー に加えてください。

    ノート: パッケージにはサンプルのみを加えることができますが、同じレイアウトと JSON 構造を使用して、ツールやテンプレートのパッケージの一部としてサンプルを加えることもできます。

  7. 新しいバージョンを公開するたびに、CHANGELOG.mdファイルを更新することができます。すべての新機能やバグ修正は、このファイルにトレースがあるはずです。選択した変更ログフォーマットの詳細については、変更履歴を記録する を参照してください。

    このステップは、共有しないパッケージの場合はオプションですが、共有パッケージには強く推奨されます。このようにすれば、ユーザーはどのバージョンが自分のニーズに最も適しているかを知ることができるからです。

    ヒント: パッケージの package.json マニフェストファイルの changelogUrl プロパティを設定することにより、このパッケージの変更ログをホストする外部 Web ページへのリンクを提供できます。

  8. LICENSE.mdTHIRD PARTY NOTICES.md ファイルに ライセンスとサードパーティの通知 を加えることができます。

    このステップは、共有しないパッケージの場合は必須ではありません。ただし、共有パッケージには強く推奨されます。これは、ユーザーがパッケージを誤用したり、サードパーティのライセンスに違反することを防ぐために役立ちます。

    ヒント: パッケージの package.json マニフェストファイルの licensesUrl プロパティを設定して、このパッケージのライセンスとサードパーティのお知らせをホストする外部 Web ページへのリンクを提供できます。

  9. パッケージを文書化する。

    ヒント: パッケージの package.json マニフェストファイルの documentationUrl プロパティを設定して、このパッケージのドキュメントをホストする外部 Web ページへのリンクを提供できます。

  10. パッケージを 共有 します。

新しい埋め込みパッケージの作成

プロジェクトフォルダー内 にカスタムパッケージを作成する場合は、以下の手順で行います。

ノート: これらの手順は、カスタムパッケージの作成 の手順の一部です。

  1. Unity Hub を開き、コンピューターに 空のプロジェクトを作成 します。

    コンピューター上の既存のプロジェクトを使用して、パッケージをプロジェクトに埋め込む か、ローカルパッケージからインストールする こともできます。ただし、新しいプロジェクトとして開始するほうが、パッケージの内容にエラーが発生しにくくなります。

  2. コンピューターのファイルマネージャー (Windows ファイルエクスプローラーや macOS Finder など) を使用して、プロジェクトフォルダーに移動し、Packages サブディレクトリを見つけます。

  3. Packages フォルダーの中に、パッケージ名 と一致する名前で 命名規則 に沿った、パッケージの新しいサブディレクトリを作成します。例えば、パッケージ名が com.example.mypackage の場合、サブフォルダーの名前も com.example.mypackage とします。

    ノート: これは、パッケージにアセットが含まれている場合に特に重要です。なぜなら、実際のフォルダー名に関わらず、AssetDatabase はPackages/<your-package-name>/Assets に一致するアセットパスを探す からです。

  4. 任意のテキストエディターを開き、パッケージフォルダーのルートに package.json という JSON ファイルを作成します。

  5. package.json ファイルの必須および推奨フィールド をすべて入力します。パッケージマニフェストの例 を参照してください。

Unity を再度開くと、新しいパッケージが Package Manager ウィンドウ と Project ウィンドウに表示され、パッケージコンテンツの表示や変更を行えます。Project ウィンドウで package.json ファイルを選択すると、Inspector ウィンドウでその JSON 値を直接変更することもできます。

手順 に戻り、パッケージの作成を完了します。

新しいローカルパッケージの作成

Project フォルダーの外にカスタムパッケージを作成したい場合は、以下の手順に従ってください。

ノート: これらの手順は、カスタムパッケージの作成 の手順の一部です。

  1. コンピューターのファイルマネージャー (Windows ファイルエクスプローラーや macOS Finder など) を使用して、 パッケージ用のフォルダーを作成します 。

    パッケージのコンテンツをすでに作成している場合は、既存の場所を使用することもできます。

  2. 任意のテキストエディターを開き、パッケージフォルダーのルートに package.json という JSON ファイルを作成します。

  3. package.json ファイルの 必須および推奨フィールド をすべて入力します。name プロパティが 命名規則 に従っていることを確認してください。 パッケージ マニフェストの例 を参照してください。

  4. Unity で新しいプロジェクトを作成するか、既存のプロジェクトを開きます。

  5. Open the Package Manager window and follow the instructions for installing a local package, using the package.json file you just created. This step is essential for ensuring the creation of the required .meta file.

新しいパッケージが Package Manager ウィンドウと Project ウィンドウに表示され、パッケージのコンテンツの表示や変更を行えます。Project ウィンドウで package.json ファイルを選択すると、Inspector ウィンドウでその JSON 値を直接変更することもできます。

手順 に戻り、パッケージの作成を完了します。

ネットワークの問題を診断する
パッケージの命名