UDocumentation
UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
StandaloneHLODSubsystem.h
Go to the documentation of this file.
1
// Copyright Epic Games, Inc. All Rights Reserved.
2
3
#pragma once
4
5
#include "
Subsystems/WorldSubsystem.h
"
6
#include "
WorldPartition/WorldPartitionActorDesc.h
"
7
8
#include "StandaloneHLODSubsystem.generated.h"
9
10
class
AWorldPartitionStandaloneHLOD
;
11
class
FLevelInstanceActorDesc
;
12
class
UActorDescContainerInstance
;
13
14
UCLASS
(MinimalAPI)
15
class
UWorldPartitionStandaloneHLODSubsystem
:
public
UWorldSubsystem
16
{
17
GENERATED_BODY
()
18
19
#if WITH_EDITOR
20
private
:
21
struct
FStandaloneHLODActorParams
22
{
23
FGuid
Guid
;
24
FTransform
Transform
;
25
FString
WorldPackageName
;
26
FString
ActorLabel
;
27
};
28
29
public
:
30
31
//~ Begin USubsystem Interface.
32
ENGINE_API
virtual
void
Initialize
(
FSubsystemCollectionBase
&
Collection
)
override
;
33
ENGINE_API
virtual
void
Deinitialize()
override
;
34
//~ End USubsystem Interface.
35
36
//~ Begin UWorldSubsystem Interface.
37
ENGINE_API
virtual
bool
DoesSupportWorldType(
const
EWorldType::Type
WorldType)
const override
;
38
ENGINE_API
virtual
bool
ShouldCreateSubsystem(
UObject
*
Outer
)
const override
;
39
//~ End UWorldSubsystem Interface.
40
41
ENGINE_API
void
UpdateStandaloneHLODActors
(
FStandaloneHLODActorParams
InStandaloneHLODActorParams
);
42
ENGINE_API
void
DeleteStandaloneHLODActors
(
FGuid
InGuid
);
43
44
ENGINE_API
void
UpdateStandaloneHLODActorsRecursive
(
const
FLevelInstanceActorDesc
&
InLevelInstanceActorDesc
,
const
FTransform
InActorTransform
,
bool
bChildrenOnly
);
45
ENGINE_API
void
DeleteStandaloneHLODActorsRecursive
(
const
FLevelInstanceActorDesc
&
InLevelInstanceActorDesc
);
46
47
ENGINE_API
void
ForEachStandaloneHLODActor
(
TFunctionRef
<
void
(
AWorldPartitionStandaloneHLOD
*)> Func)
const
;
48
ENGINE_API
void
ForEachStandaloneHLODActorFiltered
(
FGuid
InGuid
,
TFunctionRef
<
void
(
AWorldPartitionStandaloneHLOD
*)> Func)
const
;
49
50
static
ENGINE_API
bool
GetStandaloneHLODFolderPathAndPackagePrefix
(
const
FString&
InWorldPackageName
, FString&
OutFolderPath
, FString&
OutPackagePrefix
);
51
52
private
:
53
void
OnWorldPartitionInitialized(
UWorldPartition
*
InWorldPartition
);
54
void
OnWorldPartitionUninitialized(
UWorldPartition
*
InWorldPartition
);
55
56
void
OnActorChanged
(
AActor
*
InActor
);
57
void
OnActorDeleted
(
AActor
*
InActor
);
58
void
OnObjectPropertyChanged(
UObject
* InObject,
FPropertyChangedEvent
&
InPropertyChangedEvent
);
59
60
void
OnActorDescContainerInstanceRegistered
(
UActorDescContainerInstance
*
InContainerInstance
);
61
void
OnActorDescContainerInstanceUnregistered
(
UActorDescContainerInstance
*
InContainerInstance
);
62
63
void
OnLevelAddedToWorld(
ULevel
* Level,
UWorld
*
World
);
64
65
TMap<FGuid, TArray<AWorldPartitionStandaloneHLOD*>
>
StandaloneHLODActors
;
66
67
TMap<FName, TMap<int32, FName>
>
CachedHLODSetups
;
68
bool
bRefreshCachedHLODSetups
;
69
#endif
70
};
EARSessionType::World
@ World
ESphericalLimitType::Outer
@ Outer
EChaosVDAccelerationStructureType::Collection
@ Collection
EConstraintType::Transform
@ Transform
StaticCastSharedRef
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition
SharedPointer.h:127
GENERATED_BODY
#define GENERATED_BODY(...)
Definition
ObjectMacros.h:765
UCLASS
#define UCLASS(...)
Definition
ObjectMacros.h:776
ESlateAttributeBindAction::Initialize
@ Initialize
EVariantTypes::Guid
@ Guid
WorldPartitionActorDesc.h
WorldSubsystem.h
AActor
Definition
Actor.h:257
AWorldPartitionStandaloneHLOD
Definition
StandaloneHLODActor.h:12
FSubsystemCollectionBase
Definition
SubsystemCollection.h:15
TFunctionRef
Definition
AssetRegistryState.h:50
TMap
Definition
UnrealString.h.inl:34
UActorDescContainerInstance
Definition
ActorDescContainerInstance.h:23
ULevel
Definition
Level.h:423
UObject
Definition
Object.h:95
UWorldPartitionStandaloneHLODSubsystem
Definition
StandaloneHLODSubsystem.h:16
UWorldPartition
Definition
WorldPartition.h:142
UWorldSubsystem
Definition
WorldSubsystem.h:16
UWorld
Definition
World.h:918
EWorldType::Type
Type
Definition
EngineTypes.h:1264
FGuid
Definition
Guid.h:109
FPropertyChangedEvent
Definition
UnrealType.h:6865
UE::Math::TTransform< double >
Engine
Source
Runtime
Engine
Public
WorldPartition
HLOD
StandaloneHLODSubsystem.h
Generated by
1.9.8