チャンク用のアセットを準備する

アセットをチャンクに分割し、それらを .pak ファイルにクックする方法

前提トピック

このページは以下のトピックへの知識があることを前提にしています。まず以下のトピックの内容についてご確認をお願いします。

Unreal Engine (UE) では、アプリケーションのメイン実行ファイルから外部にパッケージング ファイルの形でアセットを配布することができます。そのためにアセットを、クック処理で認識されるアセット ファイルのグループであるチャンクに編成する必要があります。このチュートリアルでは、Unreal Editor 内でアセットをチャンクに編成する方法を説明します。最後まで終えると、パッチ適用システムを使用して配布できるパッケージング ファイルを作成するサンプル プロジェクトが完成します。

推奨されるアセット

このガイドでは以下のアセットを使用します。ParagonCrunchBorisKhaimera。これらは Unreal マーケットプレイスから無料でダウンロードすることができます。アセットが個別のフォルダで安全にグループ化されている限り、それらのアセットを使用する必要はありません。Paragon のキャラクター アセット は既に UE によってそのように編成されているため、便利なテスト ケースとなります。

![](01_ParagonAssets.png)

必要なセットアップ

先に進む前に「ChungDownloader Plugin を設定する」を確認してください。

リファレンス ガイドで記述されているように、次の手順に従います。

  1. Blank テンプレート をベースにして C++ プロジェクト を作成します。このプロジェクトに「PatchingDemo」という名前を付けます。

  2. [Plugins (プラグイン)] メニューで ChunkDownloader プラグインを 有効にします。

  3. [Project Settings (プロジェクト設定)] > [Project (プロジェクト)] > [Packaging (パッケージ化)] で [Use Pak File (pak ファイルを使用)] と [Generate Chunks (チャンクの生成)] を有効にします。

  4. Visual Studio でプロジェクトの「ProjectName]Build.cs」を編集します。

  5. Visual Studio プロジェクト ファイルを生成します。

  6. Visual Studio でプロジェクトをビルドします。

チャンク化スキームを編成する

チャンク化を有効にしてプラグインの設定が完了したら、次はアセットを編成してチャンクにパッケージ化する必要があります。

チャンク化のプロセスについての詳細は、「クック処理とチャンク化」を参照してください。

  1. ParagonBoris」フォルダで 右クリック して [Create Advanced Asset (高度なアセットの作成)] > [Miscellaneous (その他)] に移動し、[Data Asset (データ アセット)] を新規作成します。

    ![](02_CreateDataAsset.png)

  2. 新規データ アセットにベース クラスとして [Primary Asset Label] を選択します。

    ![](03_PrimaryAssetLabel.png)

    PrimaryAssetLabel のサブクラスを C++ で作成し、追加メタデータを追加することもできます。PrimaryAssetLabel のサブクラスをブループリントで作成すると、チャンク化の目的では機能しません。

  3. 新しい Primary Asset Label の名前を「Label_Boris」にします。

    ![](04_LabelBorisAsset.png)

  4. [Label_Boris] を開き、プロパティを次のように入力します。

    ![](05_LabelBorisSettings.png)

    プロパティ

    Chunk ID

    フォルダごとに一意の値にする必要があります。このサンプルでは、Boris に 1001 を使用しています。

    Priority

    この値は 0 より大きくする必要があります。サンプルでは、すべて 1 に設定しています。

    Cook Rule

    Always Cook に設定します。

    Label Assets in My Directory

    Enabled に設定します。

    Is Runtime Label

    Enable に設定します。

  5. 1 から 4 の手順を ParagonCrunchParagonKhaimera にも繰り返します。このサンプルでは、Crunch の [ChunkID]1002 に、Khaimera は 1003 に設定しています。

  6. プロジェクトのコンテンツをパッケージ化、またはクックします。

最終結果

すべてを正しく設定した状態で、UE がパッケージ化を完了させると、ビルド ディレクトリの「/Windows/PatchingDemo/Content/Paks」に .pak ファイルが表示されます。UE では各ファイルに上述の手順で指定したチャンク ID を名前として付けます。3 つのファイルにはそれぞれ、キャラクターのアセットが含まれています。

![](06_FinalPakFiles.png)

[Tools] > [Asset Audit] の順にクリックして、[Asset Audit] ウィンドウでチャンクを確認することもできます。

![](07_OpenAssetAudit.png)

アセットの監査については、「クック処理とチャンク化」を参照してください。

![](08_PakFileAssetAudit.png)

Unreal Engine のドキュメントを改善するために協力をお願いします!どのような改善を望んでいるかご意見をお聞かせください。
調査に参加する
キャンセル