IHierarchicalLODUtilities

[IHierarchicalLODUtilities](API\Developer\HierarchicalLODUtilities\IHierarchicalLODUtilities) module interface

Windows
MacOS
Linux

Inheritance Hierarchy

IHierarchicalLODUtilities

FHierarchicalLODUtilities

References

Module

HierarchicalLODUtilities

Header

/Engine/Source/Developer/HierarchicalLODUtilities/Public/IHierarchicalLODUtilities.h

Include

#include "IHierarchicalLODUtilities.h"

Syntax

class IHierarchicalLODUtilities

Remarks

IHierarchicalLODUtilities module interface

Destructors

Name Description

Public function Virtual

~IHierarchicalLODUtilities()

Functions

Name Description

Public function

const bool

 

AddActorToCluster

(
    AActor* InActor,
    ALODActor* InParentActor
)

Adds an actor to the given cluster

Public function

const bool

 

AreActorsClustered

(
    const TArray< AActor* >& InAc...
)

Checks if all actors are part of a cluster

Public function

const bool

 

AreActorsInSameHLODLevel

(
    const TArray< AActor* >& InAc...
)

Checks if all actors are in the same HLOD level

Public function

const bool

 

AreActorsInSamePersistingLevel

(
    const TArray< AActor* >& InAc...
)

Checks if all actors have the same outer world

Public function

const bool

 

AreClustersInSameHLODLevel

(
    const TArray< ALODActor* >& I...
)

Checks if all clusters are in the same HLOD level

Public function

bool

 

BuildStaticMeshForLODActor

(
    ALODActor* LODActor,
    UHLODProxy* Proxy,
    const FHierarchicalSimplification&...,
    UMaterialInterface* InBaseMate...
)

Public function

bool

 

BuildStaticMeshForLODActor

(
    ALODActor* LODActor,
    UPackage* AssetsOuter,
    const FHierarchicalSimplification&...,
    UMaterialInterface* InBaseMate...
)

Public function

bool

 

BuildStaticMeshForLODActor

(
    ALODActor* LODActor,
    UPackage* AssetsOuter,
    const FHierarchicalSimplification&...
)

Builds a virtual mesh object for the given LODACtor

Public function

float

 

CalculateDrawDistanceFromScreenSize

(
    const float SphereRadius,
    const float ScreenSize,
    const FMatrix& ProjectionMatrix
)

Public function

float

 

CalculateScreenSizeFromDrawDistance

(
    const float SphereRadius,
    const FMatrix& ProjectionMatrix,
    const float Distance
)

Computes the Screensize of the given Sphere taking into account the ProjectionMatrix and distance

Public function

void

 

CleanStandaloneAssetsInPackage

(
    UPackage* InPackage
)

Cleans any standalone flags for meshes, textures and materials.

Public function

int32

 

ComputeStaticMeshLODLevel

(
    const TArray< FStaticMeshSourceMode...,
    const FStaticMeshRenderData* R...,
    const float ScreenSize
)

Computes which LOD level of a Mesh corresponds to the given Distance (calculates closest ScreenSize with distance)

Public function

ALODActor &#...

 

CreateNewClusterActor

(
    UWorld* InWorld,
    const int32 InLODLevel,
    AWorldSettings* WorldSettings
)

Creates a new cluster actor in the given InWorld with InLODLevel as HLODLevel

Public function

ALODActor &#...

 

CreateNewClusterFromActors

(
    UWorld* InWorld,
    AWorldSettings* WorldSettings,
    const TArray< AActor* >& InAc...,
    const int32 InLODLevel
)

Creates a new cluster in InWorld with InActors as sub actors

Public function

UPackage ...

 

CreateOrRetrieveLevelHLODPackage

(
    const ULevel* InLevel
)

Public function

UPackage ...

 

CreateOrRetrieveLevelHLODPackage

(
    const ULevel* InLevel,
    const uint32 HLODLevelIndex
)

Creates or retrieves the HLOD package that is created for the given level

Public function

UHLODProxy &...

 

CreateOrRetrieveLevelHLODProxy

(
    const ULevel* InLevel,
    const uint32 HLODLevelIndex
)

Creates or retrieves the HLOD proxy that is created for the given level

Public function

AHierarchica...

 

CreateVolumeForLODActor

(
    ALODActor* InLODActor,
    UWorld* InWorld
)

Creates a HierarchicalLODVolume using the bounds of a given LODActor

Public function

void

 

DeleteLODActorsInHLODLevel

(
    UWorld* InWorld,
    const int32 HLODLevelIndex
)

Deletes all the ALODActors with the given HLODLevelIndex inside off InWorld

Public function

void

 

DestroyCluster

(
    ALODActor* InActor
)

Deletes the given cluster's data and instance in the world

Public function

void

 

DestroyClusterData

(
    ALODActor* InActor
)

Deletes the given cluster's assets

Public function

void

 

DestroyLODActor

(
    ALODActor* InActor
)

Destroys an LODActor instance

Public function

void

 

ExcludeActorFromClusterGeneration

(
    AActor* InActor
)

Excludes an actor from the cluster generation process

Public function

void

 

ExtractStaticMeshActorsFromLODActor

(
    ALODActor* LODActor,
    TArray< AActor* >& InOutActor...
)

Extracts all the virtual Mesh Actors from the given LODActor's SubActors array

Public function

void

 

ExtractStaticMeshComponentsFromLODActor

(
    AActor* Actor,
    TArray< UStaticMeshComponent* ...
)

Recursively retrieves StaticMeshComponents from a LODActor and its child LODActors

Public function

void

 

ExtractSubActorsFromLODActor

(
    AActor* Actor,
    TArray< AActor* >& InOutActor...
)

Recursively retrieves Actors from a LODActor and its child LODActors

Public function

FString

 

GetLevelHLODProxyName

(
    const FString& InLevelPackageName,
    const uint32 HLODLevelIndex
)

Get the name of a HLOD proxy given the name of a level's package

Public function

int32

 

GetLODLevelForScreenSize

(
    const UStaticMeshComponent* St...,
    const float ScreenSize
)

Computes the LODLevel for a StaticMeshComponent taking into account the ScreenSize

Public function

ALODActor &#...

 

GetParentLODActor

(
    const AActor* InActor
)

Returns the ALODActor parent for the given InActor, nullptr if none available

Public function

void

 

HandleActorModified

(
    AActor* InActor
)

Handles changes in actors for the current world, checks if InActor is part of a HLOD cluster and if so set its dirty-flag

Public function

const bool

 

IsActorClustered

(
    const AActor* InActor
)

Checks if an actor is clustered

Public function

bool

 

IsWorldUsedForStreaming

(
    const UWorld* InWorld
)

Checks whether or not the given InWorld is used as a streaming level by any other World in the level

Public function

const bool

 

MergeClusters

(
    ALODActor* TargetCluster,
    ALODActor* SourceCluster
)

Merges two clusters together

Public function

const bool

 

RemoveActorFromCluster

(
    AActor* InActor
)

Removes the given actor from it's parent cluster

Public function

UPackage ...

 

RetrieveLevelHLODPackage

(
    const ULevel* InLevel,
    const uint32 HLODLevelIndex
)

Retrieves the HLOD package that is created for the given level

Public function

UHLODProxy &...

 

RetrieveLevelHLODProxy

(
    const ULevel* InLevel,
    const uint32 HLODLevelIndex
)

Retrieves the HLOD proxy that is created for the given level

Public function

EClusterGene...

 

ShouldGenerateCluster

(
    AActor* Actor,
    const int32 HLODLevelIndex
)

Returns whether or not the given actor is eligible for creating a HLOD cluster creation

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss