UGeometryCollection

UGeometryCollectionObject ([UObject](API\Runtime\CoreUObject\UObject\UObject))

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

UObjectBase

UObjectBaseUtility

UObject

UGeometryCollection

References

Module

GeometryCollectionEngine

Header

/Engine/Source/Runtime/Experimental/GeometryCollectionEngine/Public/GeometryCollection/GeometryCollectionObject.h

Include

#include "GeometryCollection/GeometryCollectionObject.h"

Syntax

class UGeometryCollection : public UObject

Remarks

UGeometryCollectionObject (UObject)

UObject wrapper for the FGeometryCollection

Variables

Name Description

Public variable

bool

 

bManualDataCreate

If this flag is set, we only regenerate simulation data when requested via CreateSimulationData()

Public variable

bool

 

bMassAsDensity

Mass As Density, units are in kg/m^3

Public variable

bool

 

bRemoveOnMaxSleep

Remove particle from simulation and dissolve rendered geometry once sleep threshold has been exceeded.

Public variable

bool

 

bStripOnCook

Strip unnecessary data from the Geometry Collection to keep the memory footprint as small as possible.

Public variable

bool

 

bUseFullPrecisionUVs

Whether to use full precision UVs when rendering this geometry.

Public variable

EClusterConnect...

 

ClusterConnectionType

Public variable

int32

 

ClusterGroupIndex

Maximum level for cluster breaks.

Public variable

TArray< float >

 

DamageThreshold

Damage threshold for clusters at different levels.

Public variable

TArray< FGeomet...

 

EmbeddedGeometryExemplar

References for embedded geometry generation

Public variable

bool

 

EnableClustering

Public variable

bool

 

EnableNanite

Enable support for Nanite.

Public variable

bool

 

EnableRemovePiecesOnFracture

Enable remove pieces on fracture

Public variable

TArray< FGeomet...

 

GeometrySource

Public variable

float

 

Mass

Total Mass of Collection. If density, units are in kg/m^3

Public variable

TArray< TObject...

 

Materials

Public variable

int32

 

MaxClusterLevel

Maximum level for cluster breaks.

Public variable

FVector2D

 

MaximumSleepTime

How long may the particle sleep before initiating removal (in seconds).

Public variable

float

 

MinimumMassClamp

Smallest allowable mass (def:0.1)

Public variable

TUniquePtr< cla...

 

NaniteData

Pointer to the data used to render this geometry collection with Nanite.

Public variable

FVector2D

 

RemovalDuration

How long does the removal process take (in seconds).

Public variable

TArray< TObject...

 

RemoveOnFractureMaterials

Materials relating to remove on fracture

Public variable

TArray< FGeomet...

 

SizeSpecificData

Size Specfic Data reflects the default geometry to bind to rigid bodies smaller than the max size volume.

Public variable

TObjectPtr< cla...

 

ThumbnailInfo

Information for thumbnail rendering

Constructors

Name Description

Public function

UGeometryCollection

(
    const FObjectInitializer& ObjectIn...
)

Public function

UGeometryCollection

(
    const FObjectInitializer& ObjectIn...
)

Functions

Name Description

Public function

int32

 

AppendGeometry

(
    const UGeometryCollection& Element,
    bool ReindexAllMaterials,
    const FTransform& TransformRoot
)

AppendGeometry

Public function

int32

 

AttachEmbeddedGeometryExemplar

(
    const UStaticMesh* Exemplar
)

Attach a Static Mesh exemplar for embedded geometry, if that mesh has not already been attached.

Public function Static

TUniquePtr< ...

 

CreateNaniteData

(
    FGeometryCollection* Collectio...
)

Create the Nanite rendering data.

Public function

void

 

CreateSimulationData()

Create the simulation data that can be shared among all instances (mass, volume, etc...)

Public function

void

 

EnsureDataIsCooked

(
    bool bInitResources
)

Public function Const

void

 

FixupRemoveOnFractureMaterials

(
    FSharedSimulationParameters& Share...
)

Public function Const

TSharedPtr< ...

 

GenerateMinimalGeometryCollection()

Produce a deep copy of GeometryCollection member, stripped of data unecessary for gameplay.

Public function Static

FGeometryCol...

 

GeometryCollectionSizeSpecificDataDefaults()

Public function Const

const int32

 

GetBoneSelectedMaterialIndex()

Public function Const

const FGeome...

 

GetDefaultSizeSpecificData()

Public function

FGeometryCol...

 

GetDefaultSizeSpecificData()

Size Specific Data Access

Public function Const

int

 

GetDefaultSizeSpecificDataIndex()

Public function Const

const TShare...

 

GetGeometryCollection()

Public function

TSharedPtr< ...

 

GetGeometryCollection()

Public function Const

FGuid

 

GetIdGuid()

Accessors for the two guids used to identify this collection

Public function Const

uint32

 

GetNaniteHierarchyOffset

(
    int32 GeometryIndex,
    bool bFlattened
)

Public function Const

uint32

 

GetNaniteHierarchyOffset()

Public function Const

uint32

 

GetNaniteResourceID()

Public function Static

const TCHAR ...

 

GetSelectedMaterialPath()

Returns the asset path for the automatically populated selected material.

Public function Const

void

 

GetSharedSimulationParams

(
    FSharedSimulationParameters& OutPa...
)

Fills params struct with parameters used for precomputing content.

Public function Const

FGuid

 

GetStateGuid()

Public function Const

bool

 

HasNaniteData()

Public function Const

bool

 

HasVisibleGeometry()

Returns true if there is anything to render

Public function

void

 

InitializeMaterials()

Appends the standard materials to this UObject

Public function

void

 

InitResources()

Public function

void

 

InvalidateCollection()

Invalidates this collection signaling a structural change and renders any previously recorded caches unable to play with this collection

Public function Const

bool

 

IsSimulationDataDirty()

Check to see if Simulation Data requires regeneration

Public function Const

int32

 

NumElements

(
    const FName& Group
)

NumElements

Public function

void

 

ReindexMaterialSections()

ReindexMaterialSections

Public function

void

 

ReleaseResources()

Public function

void

 

RemoveElements

(
    const FName& Group,
    const TArray< int32 >& SortedDelet...
)

RemoveElements

Public function

void

 

RemoveExemplars

(
    const TArray< int32 >& SortedRemov...
)

Remove embedded geometry exemplars with indices matching the sorted removal list.

Public function

void

 

Reset()

Return collection to initial (ie. empty) state.

Public function

void

 

SetGeometryCollection

Accessors for internal geometry collection

Overridden from UObject

Name Description

Public function Virtual

void

 

BeginDestroy()

Called before destroying the object.

Public function Virtual

bool

 

Modify

(
    bool bAlwaysMarkDirty
)

That the object will be modified.

Public function Virtual

void

 

PostEditChangeProperty

(
    FPropertyChangedEvent& PropertyCha...
)

UObject Interface

Public function Virtual

void

 

PostLoad()

Do any object-specific cleanup required immediately after loading an object.

Public function Virtual

void

 

Serialize

(
    FArchive& Ar
)

End UObject Interface

Serialize

Deprecated Variables

Name Description

Public variable

float

 

CollisionObjectReductionPercentage_DEPRECATED

Resolution on the smallest axes for the level set. (def: 10)

Public variable

float

 

CollisionParticlesFraction_DEPRECATED

Number of particles on the triangulated surface to use for collisions.

Public variable

ECollisionTypeE...

 

CollisionType_DEPRECATED

CollisionType defines how to initialize the rigid collision structures.

Public variable

EImplicitTypeEn...

 

ImplicitType_DEPRECATED

CollisionType defines how to initialize the rigid collision structures.

Public variable

int32

 

MaxClusterLevelSetResolution_DEPRECATED

Resolution on the smallest axes for the level set. (def: 10)

Public variable

int32

 

MaximumCollisionParticles_DEPRECATED

Max number of particles.

Public variable

int32

 

MaxLevelSetResolution_DEPRECATED

Resolution on the smallest axes for the level set. (def: 10)

Public variable

int32

 

MinClusterLevelSetResolution_DEPRECATED

Resolution on the smallest axes for the level set. (def: 5)

Public variable

int32

 

MinLevelSetResolution_DEPRECATED

Resolution on the smallest axes for the level set. (def: 5)