派生データのキャッシュ

派生データのキャッシュ (DDC) 、UE4 およびターゲット プラットフォームで使われるフォーマットでのアセット格納の概要。

Windows
MacOS
Linux

エディタへインポートされて「.uasset」ファイルに保存されるアーティストが作成するソース フォーマットとは対照的に、 Derived Data Cache (DDC) は、エンジンとターゲット プラットフォームが使用するフォーマットでアセットのバージョンを保存します。DDC に保存されるコンテンツは使い捨てですが、 .uasset ファイルに格納されたデータを利用していつでも再生成することができます。外部に派生フォーマットを保存することにより、 ソース アセット ファイルの修正を必要とせずに、エンジンが使用するフォーマットの 追加や変更を簡単に行うことができます。

共有 DDC の使用

スタジオは、特定場所の全ユーザーがアクセス可能な共有 DDC を使用するべきです。派生したアセット フォーマットのビルドはユーザー 1 人のみがビルドし、その後自動的に全ユーザー間で時には、アセットの処理が必要な時に遅延が生じる場合もありますが、結果は保存されて共有されます。アセット処理を共有するかなり小規模なチームでもこの方法で作業すると、ほとんどの処理時間がなくなります。

DDC 全体をインターネット上へ絶対にコピーしないでください。 DDC をバックアップ、またはバックアップから DDC を復元してください。これによる悪影響はありませんが、DDC に保存されたデータの移行は、ローカルでゼロから生成するよりも一般的にかなり時間がかかるため時間の無駄になります。

共有 DDC を設定するには、ゲームの DefaultEngine.ini ファイル以下のでセクションを宣言して、[InstalledDerivedDataBackendGraph] または [DerivedDataBackendGraph] (エピック ゲームズのランチャーからバイナリをインストールしてそれを使うか、ソースからコンパイルしたかに応じて変わります) のパスをオーバーライドします。このセクションは当初、BaseEngine.ini で宣言されています。この場所はパスが Epic の内部 DDC 共有に設定される場所です。セクションを再び宣言して、パスを変更してネットワーク上の share をポイントするようにします(例 Path=\\mystudio.net\DDC)。

インストール方法を選択してください。

Epic Games Launcher

ソースからコンパイルする

[InstalledDerivedDataBackendGraph]
MinimumDaysToKeepFile=7
Root=(Type=KeyLength, Length=120, Inner=AsyncPut)
AsyncPut=(Type=AsyncPut, Inner=Hierarchy)
Hierarchy=(Type=Hierarchical, Inner=Boot, Inner=Pak, Inner=EnginePak, Inner=Local, Inner=Shared)
Boot=(Type=Boot, Filename=%GAMEDIR%DerivedDataCache/Boot.ddc, MaxCacheSize=256)
Local=(Type=FileSystem, ReadOnly=false, Clean=false, Flush=false, PurgeTransient=true, DeleteUnused=true, UnusedFileAge=17, FoldersToClean=-1, Path=../../../Engine/DerivedDataCache)
Shared=(Type=FileSystem, ReadOnly=false, Clean=false, Flush=false, DeleteUnused=true, UnusedFileAge=19, FoldersToClean=-1, Path=\\mystudio.net\DDC, EnvPathOverride=UE-SharedDataCachePath)
AltShared=(Type=FileSystem, ReadOnly=true, Clean=false, Flush=false, DeleteUnused=true, UnusedFileAge=19, FoldersToClean=-1, Path=\\mystudio.net\DDC2, EnvPathOverride=UE-SharedDataCachePath2)
Pak=(Type=ReadPak, Filename=%GAMEDIR%DerivedDataCache/DDC.ddp)
EnginePak=(Type=ReadPak, Filename=../../../Engine/DerivedDataCache/DDC.ddp)
[DerivedDataBackendGraph]
MinimumDaysToKeepFile=7
Root=(Type=KeyLength, Length=120, Inner=AsyncPut)
AsyncPut=(Type=AsyncPut, Inner=Hierarchy)
Hierarchy=(Type=Hierarchical, Inner=Boot, Inner=Pak, Inner=EnginePak, Inner=Local, Inner=Shared)
Boot=(Type=Boot, Filename=%GAMEDIR%DerivedDataCache/Boot.ddc, MaxCacheSize=256)
Local=(Type=FileSystem, ReadOnly=false, Clean=false, Flush=false, PurgeTransient=true, DeleteUnused=true, UnusedFileAge=17, FoldersToClean=-1, Path=../../../Engine/DerivedDataCache)
Shared=(Type=FileSystem, ReadOnly=false, Clean=false, Flush=false, DeleteUnused=true, UnusedFileAge=19, FoldersToClean=-1, Path=\\mystudio.net\DDC, EnvPathOverride=UE-SharedDataCachePath)
AltShared=(Type=FileSystem, ReadOnly=true, Clean=false, Flush=false, DeleteUnused=true, UnusedFileAge=19, FoldersToClean=-1, Path=\\mystudio.net\DDC2, EnvPathOverride=UE-SharedDataCachePath2)
Pak=(Type=ReadPak, Filename=%GAMEDIR%DerivedDataCache/DDC.ddp)
EnginePak=(Type=ReadPak, Filename=../../../Engine/DerivedDataCache/DDC.ddp)

単一の共有コード ベースで作業を進めているサテライト オフィスは、UE-SharedDataCachePath 環境変数をパスに設定し、各場所でユーザー全員が読み出し、書き込みができるようにします。各場所で独自の共有 DDC を持つことができます。

例:

UE-SharedDataCachePath=\\mystudio.net\DDC

ローカル DDC の使用

単独またはリモートで作業を行っている開発者は、大抵はローカル DDC のみを使用します。エンジンが共有 DDC を使用しないよう指示するには、以下のいずれかのメソッドを使用します。

  • コマンドラインで -ddc=noshared を渡します。

  • ローカルのハードドライブに環境変数を設定します。

    UE-SharedDataCachePath=c:\DDC

派生データのビルド

一般的に、アセットをインポートする開発者がエンジンでアセットを使用したりテストをする可能性が高いため、そのユーザーが派生データのビルドを行います。しかし、場合によっては新アセットの処理が必要になることがあります。これは必要に応じて自然に発生し、高速のハードウェアで実行時には大した影響を及ぼしませんが、時々遅延が生じることがあります。

以下のコマンドを実行して DDC をフィルすることができます。

UE4\Engine\Binaries\Win64\UE4Editor.exe ProjectName -run=DerivedDataCache -fill

DDC の事前準備を常に整えるため、この作業は毎夜行っていますが、必ずしも一般的な自動キャッシング機能のようなものではありません。

一般的に、アセットをインポートする開発者がエンジンでアセットを使用したりテストをする可能性が高いため、そのユーザーが派生データのビルドを行います。しかし、場合によっては新アセットの処理が必要になることがあります。これは必要に応じて自然に発生し、高速のハードウェアで実行時には大した影響を及ぼしませんが、時々遅延が生じることがあります。

以下のコマンドを実行して DDC をフィルすることができます。

open -a "ProjectName.app" --args -run=DerivedDataCache -fill

DDC の事前準備を常に整えるため、この作業は毎夜行っていますが、必ずしも一般的な自動キャッシング機能のようなものではありません。

DDC の配布

クックされたビルドは DDC は不要または (使用しないため) 、ゲームのパッケージングには一般的にクックが推奨メソッドです。ただし、必要に応じて DDC を配布用にパッケージングすることも出来ます。

DDC のパッケージング:

  1. UE4/Engine/Binaries/Win64 ディレクトリから UE4Editor.exe を実行して、以下に示す引数を渡します。

    UE4Editor.exe ProjectName -run=DerivedDataCache -fill -DDC=CreatePak
  2. UE4\ProjectName\DerivedDataCacheDDC.ddp ファイルを作成します。

  3. エンジンは自動的に検出して .ddp ファイルを使用します。

クックされたビルドは DDC は不要または (使用しないため) 、ゲームのパッケージングには一般的にクックが推奨メソッドです。ただし、必要に応じて DDC を配布用にパッケージングすることも出来ます。

DDC のパッケージング

  1. cd /PathToUE4/Engine/Binaries/Mac ディレクトリから UE4Editor.app を実行して、以下に示す引数を渡します。

    open -a UE4Editor.app --args -run=DerivedDataCache -fill -DDC=CreatePak

  2. UE4\ProjectName\DerivedDataCacheDDC.ddp ファイルを作成します。

  3. エンジンは自動的に検出して .ddp ファイルを使用します。

タグ
Select Skin
Light
Dark

新しい Unreal Engine 4 ドキュメントサイトへようこそ!

あなたの声を私たちに伝えるフィードバックシステムを含め、様々な新機能について開発をおこなっています。まだ広く使える状態にはなっていないので、準備ができるまでは、ドキュメントフィードバックフォーラムで、このページについて、もしくは遭遇した問題について教えていただけると助かります。

新しいシステムが稼働した際にお知らせします。

フィードバックを送信