|
|
**Table of Contents**
|
|
|
|
|
|
[[_TOC_]]
|
|
|
|
|
|
## General Information
|
|
|
|
|
|
Unreal offers a feature, that allows to store compiled shaders and other material related stuff in a _Derived Data Cache_. This cache is hierarchical and can contain local and shared caches.
|
|
|
|
|
|
For more info on DDCs see the [official docs](https://docs.unrealengine.com/4.27/en-US/ProductionPipelines/DerivedDataCache/).
|
|
|
|
|
|
## Adding DDCs to your project
|
|
|
|
|
|
Edit the `DefaultEngine.ini` in the Config folder of your project and append e.g. the following:
|
|
|
|
|
|
```ini
|
|
|
[InstalledDerivedDataBackendGraph]
|
|
|
Shared=(Type=FileSystem, ReadOnly=false, Clean=false, Flush=false, DeleteUnused=true, UnusedFileAge=14, FoldersToClean=-1, MaxFileChecksPerSec=1, Path="U:/SomeFolder/OnASharedDrive", EnvPathOverride=UE-SharedDataCachePath, EditorOverrideSetting=SharedDerivedDataCache)
|
|
|
```
|
|
|
|
|
|
Note the following about this example:
|
|
|
- `InstalledDerivedDataBackendGraph` specifies the standard DDC properties that are used in an installed engine build. If you use a custom compiled engine (source build) use `DerivedDataBackendGraph` instead or specify both by copying the complete section twice.
|
|
|
- This example specifies a `Shared` DDC. You can also specify for example a `Local` one.
|
|
|
- You can look up all parameters that are used and the possibilities in the `BaseEngine.ini` in the Engine/Config folder. If you search for 'DerivedDataBackendGraph' you can see the documentation of all parameters.
|
|
|
- The path variable supports different placeholders that are replaced in runtime, like `%ENGINEDIR%` or `%GAMEDIR%`.
|
|
|
|
|
|
# Examples
|
|
|
## Project Folder only
|
|
|
This example illustrates how to store everything inside your project folder:
|
|
|
|
|
|
```ini
|
|
|
[DerivedDataBackendGraph]
|
|
|
Hierarchy=(Type=Hierarchical, Inner=Boot, Inner=Pak, Inner=Local)
|
|
|
Boot=(Type=Boot, Filename="%GAMEDIR%DerivedDataCache/Boot.ddc", MaxCacheSize=512)
|
|
|
Pak=(Type=ReadPak, Filename="%GAMEDIR%DerivedDataCache/DDC.ddp")
|
|
|
Local=(Type=FileSystem, ReadOnly=false, Clean=false, Flush=false, PurgeTransient=true, DeleteUnused=true, UnusedFileAge=34, FoldersToClean=-1, PromptIfMissing=true, Path=%GAMEDIR%DerivedDataCache, EnvPathOverride=UE-LocalDataCachePath, EditorOverrideSetting=LocalDerivedDataCache)
|
|
|
|
|
|
[InstalledDerivedDataBackendGraph]
|
|
|
Hierarchy=(Type=Hierarchical, Inner=Boot, Inner=Pak, Inner=Local)
|
|
|
Boot=(Type=Boot, Filename="%GAMEDIR%DerivedDataCache/Boot.ddc", MaxCacheSize=512)
|
|
|
Pak=(Type=ReadPak, Filename="%GAMEDIR%DerivedDataCache/DDC.ddp")
|
|
|
Local=(Type=FileSystem, ReadOnly=false, Clean=false, Flush=false, PurgeTransient=true, DeleteUnused=true, UnusedFileAge=34, FoldersToClean=-1, PromptIfMissing=true, Path=%GAMEDIR%DerivedDataCache, EnvPathOverride=UE-LocalDataCachePath, EditorOverrideSetting=LocalDerivedDataCache)
|
|
|
```
|
|
|
## Our shared DDC
|
|
|
This example illustrates how to store your DDC in our shared DDC. Once you start up your project the editor tries to contact the shared drive and you have to enter credentials. Use the ones below. To store them in your profile, just open a file explorer and paste [Internal URL](https://git-ce.rwth-aachen.de/vr-vis/group-wiki/-/wikis/Hardware/Group-Servers#shared-derived-data-cache) into the address bar. Enter the same credentials and check the "save"-mark. The DDC is only reachable inside the RWTH network (and VPN). If the editor can't connect you can disable the DDC for that launch:
|
|
|
|
|
|
You can find the user and password in Keepass.
|
|
|
|
|
|
```ini
|
|
|
[DerivedDataBackendGraph]
|
|
|
Hierarchy=(Type=Hierarchical, Inner=Boot, Inner=Pak, Inner=Local, Inner=Shared)
|
|
|
Boot=(Type=Boot, Filename="%GAMEDIR%DerivedDataCache/Boot.ddc", MaxCacheSize=512)
|
|
|
Pak=(Type=ReadPak, Filename="%GAMEDIR%DerivedDataCache/DDC.ddp")
|
|
|
Local=(Type=FileSystem, ReadOnly=false, Clean=false, Flush=false, PurgeTransient=true, DeleteUnused=true, UnusedFileAge=34, FoldersToClean=-1, PromptIfMissing=true, Path=%GAMEDIR%DerivedDataCache, EnvPathOverride=UE-LocalDataCachePath, EditorOverrideSetting=LocalDerivedDataCache)
|
|
|
Shared=(Type=FileSystem, ReadOnly=false, Clean=false, Flush=false, PurgeTransient=true, DeleteUnused=true, UnusedFileAge=34, FoldersToClean=-1, PromptIfMissing=true, Path="\\vr-ue-server.rz.rwth-aachen.de\ddc", EnvPathOverride=UE-SharedDataCachePath, EditorOverrideSetting=LocalDerivedDataCache)
|
|
|
|
|
|
[InstalledDerivedDataBackendGraph]
|
|
|
Hierarchy=(Type=Hierarchical, Inner=Boot, Inner=Pak, Inner=Local, Inner=Shared)
|
|
|
Boot=(Type=Boot, Filename="%GAMEDIR%DerivedDataCache/Boot.ddc", MaxCacheSize=512)
|
|
|
Pak=(Type=ReadPak, Filename="%GAMEDIR%DerivedDataCache/DDC.ddp")
|
|
|
Local=(Type=FileSystem, ReadOnly=false, Clean=false, Flush=false, PurgeTransient=true, DeleteUnused=true, UnusedFileAge=34, FoldersToClean=-1, PromptIfMissing=true, Path=%GAMEDIR%DerivedDataCache, EnvPathOverride=UE-LocalDataCachePath, EditorOverrideSetting=LocalDerivedDataCache)
|
|
|
Shared=(Type=FileSystem, ReadOnly=false, Clean=false, Flush=false, PurgeTransient=true, DeleteUnused=true, UnusedFileAge=34, FoldersToClean=-1, PromptIfMissing=true, Path="\\vr-ue-server.rz.rwth-aachen.de\ddc", EnvPathOverride=UE-SharedDataCachePath, EditorOverrideSetting=LocalDerivedDataCache)
|
|
|
```
|
|
|
|
|
|
# Specifying DDCs globally
|
|
|
|
|
|
You can edit the entries in the `BaseEngine.ini` in the same way as in your project. Just edit them, do not append new ones. **Note to students: Please do not do so yourself**
|
|
|
Make sure to edit them in the corresponding section to your type of engine installation:
|
|
|
- `InstalledDerivedDataBackendGraph` -> Installed Engine via launcher
|
|
|
- `DerivedDataBackendGraph` -> Source Build |
|
|
\ No newline at end of file |