UAssetManager::DownloadAssetList
#include "Engine/AssetManager.h"
Access: public
Description
Downloads a list of non-primary asset paths into the download cache without loading them into memory. Like LoadAssetList, the returned handle is not auto-released.
Caveats & Gotchas
- • Only downloads into the cache; it never loads the assets, so a subsequent LoadAssetList call is required to actually use them.
- • LoadParams.DownloadParams must be populated — this overload has no plain-delegate convenience form the way LoadAssetList does.
- • Depends on IoStoreOnDemand being enabled for the project; on platforms or builds without it, the download is effectively a no-op.
Signature
TSharedPtr<FStreamableHandle> DownloadAssetList(
const TArray<FSoftObjectPath>& AssetList,
FAssetManagerLoadParams&& LoadParams,
FString&& DebugName = FString(TEXT("DownloadAssetList")),
UE::FSourceLocation&& Location = UE::FSourceLocation::Current()); Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| AssetList | const TArray<FSoftObjectPath>& | Non-primary asset paths to download. | — |
| LoadParams | FAssetManagerLoadParams&& | Completion/cancel/update delegates plus download params; DownloadParams must be set. | — |
| DebugName | FString&& | Name reported for this handle in debug tools. | FString(TEXT("DownloadAssetList")) |
| Location | UE::FSourceLocation&& | Internal call-site tracking parameter, not for direct use. | UE::FSourceLocation::Current() |
Return Type
TSharedPtr<FStreamableHandle> Example
Downloading non-primary assets ahead of use C++
FAssetManagerLoadParams DownloadParams;
DownloadParams.DownloadParams = FAssetManagerDownloadParams();
TArray<FSoftObjectPath> PathsToDownload = { FSoftObjectPath("/Game/Cinematics/Intro.Intro") };
TSharedPtr<FStreamableHandle> Handle = UAssetManager::Get().DownloadAssetList(
PathsToDownload,
MoveTemp(DownloadParams)); Version History
Introduced in: unknown
| Version | Status | Notes |
|---|---|---|
| 5.6 | stable | — |
Feedback
Was this helpful?