RealDocs

UAssetManager::SetPrimaryAssetRulesExplicitly

function Engine Since unknown
#include "Engine/AssetManager.h"
Access: public Specifiers: virtual

Description

Overrides individual fields of a primary asset's management rules using explicit per-field override flags, instead of replacing the entire rules struct at once as SetPrimaryAssetRules does.

Caveats & Gotchas

  • Unlike SetPrimaryAssetRules, fields not flagged via the bOverride* members are left untouched rather than reset to defaults, which matters if another system has already set some of this asset's rules.
  • FPrimaryAssetRulesExplicitOverride::HasAnyOverride() returns false if no flags are set, in which case the call is effectively a no-op.

Signature

virtual void SetPrimaryAssetRulesExplicitly(FPrimaryAssetId PrimaryAssetId, const FPrimaryAssetRulesExplicitOverride& ExplicitRules);

Parameters

Name Type Description Default
PrimaryAssetId FPrimaryAssetId Specific primary asset to override management rules for.
ExplicitRules const FPrimaryAssetRulesExplicitOverride& Rules combined with per-field override flags, so only the fields explicitly marked are applied.

Return Type

void

Example

Override only the cook rule, leaving priority/chunk untouched C++
UAssetManager& Manager = UAssetManager::Get();
FPrimaryAssetRulesExplicitOverride Override;
Override.Rules.CookRule = EPrimaryAssetCookRule::NeverCook;
Override.bOverrideCookRule = true;
Manager.SetPrimaryAssetRulesExplicitly(FPrimaryAssetId(TEXT("Item"), TEXT("DebugOnlySword")), Override);

Version History

Introduced in: unknown

Version Status Notes
5.6 stable

Feedback

Was this helpful?

Suggest an edit

Select a field above to begin editing.