HttpChunkInstallDataDirectory
HttpChunkInstallDataDirectory
#Overview
name: HttpChunkInstallDataDirectory
The value of this variable can be defined or overridden in .ini config files. 1
.ini config file referencing this setting variable.
It is referenced in 3
C++ source files.
#Summary
#Usage in the C++ source code
The purpose of HttpChunkInstallDataDirectory is to specify the directory path where HTTP chunk install data will be stored during the packaging process of an Unreal Engine project.
This setting variable is primarily used by the project packaging system in Unreal Engine. It is part of the UProjectPackagingSettings class, which is responsible for managing various packaging-related configurations.
The value of this variable is set in the project’s configuration files and can be modified through the Project Settings menu in the Unreal Editor. It is represented as a FDirectoryPath property, which allows users to specify a directory path.
HttpChunkInstallDataDirectory interacts with other packaging-related variables, particularly bBuildHttpChunkInstallData and HttpChunkInstallDataVersion. When bBuildHttpChunkInstallData is set to true, the engine uses the HttpChunkInstallDataDirectory path to store chunk install data.
Developers should be aware that:
- This variable is crucial for projects utilizing HTTP chunk installation.
- The directory path should be set to a valid location with appropriate write permissions.
- If left empty, the engine will attempt to set a default path relative to the project file location.
Best practices when using this variable include:
- Ensuring the specified directory is excluded from version control to avoid conflicts.
- Regularly reviewing and updating the path as needed, especially when project structure changes.
- Coordinating with the team to maintain consistency in chunk install data location across different development environments.
- Considering platform-specific requirements when setting this path for multi-platform projects.
#Setting Variables
#References In INI files
Location: <Workspace>/Projects/Lyra/Config/DefaultGame.ini:103, section: [/Script/UnrealEd.ProjectPackagingSettings]
- INI Section:
/Script/UnrealEd.ProjectPackagingSettings
- Raw value:
(Path="")
- Is Array:
False
#References in C++ code
#Callsites
This variable is referenced in the following C++ source code:
#Loc: <Workspace>/Engine/Source/Developer/DeveloperToolSettings/Classes/Settings/ProjectPackagingSettings.h:317
Scope (from outer to inner):
file
class class UProjectPackagingSettings : public UObject
Source code excerpt:
*/
UPROPERTY(config, EditAnywhere, Category = Packaging)
FDirectoryPath HttpChunkInstallDataDirectory;
/**
* Whether to write staging metadata back to the asset registry. This metadata contains information such as
* the actual compressed chunk sizes of the assets as well as some bulk data diff blame support information.
*/
UPROPERTY(config, EditAnywhere, Category = Packaging, AdvancedDisplay)
#Loc: <Workspace>/Engine/Source/Developer/DeveloperToolSettings/Private/ProjectPackagingSettings.cpp:133
Scope (from outer to inner):
file
function void UProjectPackagingSettings::PostEditChangeProperty
Source code excerpt:
bGenerateChunks = true;
//Ensure data is something valid
if (HttpChunkInstallDataDirectory.Path.IsEmpty())
{
auto CloudInstallDir = FPaths::ConvertRelativePathToFull(FPaths::GetPath(FPaths::GetProjectFilePath())) / TEXT("ChunkInstall");
HttpChunkInstallDataDirectory.Path = CloudInstallDir;
}
if (HttpChunkInstallDataVersion.IsEmpty())
{
HttpChunkInstallDataVersion = TEXT("release1");
}
}
#Loc: <Workspace>/Engine/Source/Editor/TurnkeySupport/Private/TurnkeySupportModule.cpp:479
Scope (from outer to inner):
file
class class FTurnkeySupportCallbacks
function static void CookOrPackage
Source code excerpt:
if (PackagingSettings->bBuildHttpChunkInstallData)
{
BuildCookRunParams += FString::Printf(TEXT(" -manifests -createchunkinstall -chunkinstalldirectory=\"%s\" -chunkinstallversion=%s"), *(PackagingSettings->HttpChunkInstallDataDirectory.Path), *(PackagingSettings->HttpChunkInstallDataVersion));
}
EProjectPackagingBuildConfigurations BuildConfig = PlatformsSettings->GetBuildConfigurationForPlatform(IniPlatformName);
// if PPBC_MAX is set, then the project default should be used instead of the per platform build config
if (BuildConfig == EProjectPackagingBuildConfigurations::PPBC_MAX)
{