UGeometryCacheTrackStreamable

Derived GeometryCacheTrack class, used for Transform animation.

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

GeometryCache

Header

/Engine/Plugins/Experimental/GeometryCache/Source/GeometryCache/Classes/GeometryCacheTrackStreamable.h

Include

#include "GeometryCacheTrackStreamable.h"

Syntax

[UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(CollapseCategories, HideCategories=Object, BlueprintType, Config=Engine)
class UGeometryCacheTrackStreamable : public UGeometryCacheTrack

Remarks

Derived GeometryCacheTrack class, used for Transform animation.

@note FGeometryCacheTrackStreamableRenderResource keeps a reference to the track. Be sure to keep the implementation of this class valid so it properly releases the render resoruce before making any changes to this object that may affect the render thread.

Variables

Name Description

Public variable UProperty Category visibleanywhere

UGeometryCacheC...

 

Codec

Codec for this track

Public variable

FGeometryCacheP...

 

Preprocessor

Constructors

Name Description

Public function

UGeometryCacheTrackStreamable

(
    const FObjectInitializer& ObjectIn...
)

Destructors

Functions

Name Description

Public function

void

 

AddMeshSample

(
    const FGeometryCacheMeshData& Mesh...,
    const float SampleTime,
    bool bSameTopologyAsPrevious
)

Add a GeometryCacheMeshData sample to the Track

Public function

void

 

AddVisibilitySample

(
    const bool bVisible,
    const float SampleTime
)

Public function

void

 

BeginCoding

(
    UGeometryCacheCodecBase* SetCo...,
    bool bForceSingleOptimization,
    bool bCalculateAndStoreMotionVector...,
    bool bOptimizeIndexBuffers
)

Begin coding and set the codec to use for this track.

Public function

void

 

EndCoding()

Finish up coding

Public function

void

 

FindSampleIndexesFromTime

(
    float Time,
    bool bLooping,
    bool bIsPlayingBackwards,
    int32& OutFrameIndex,
    int32& OutNextFrameIndex,
    float& InterpolationFactor
)

Find the two frames closest to the given time.

Public function Const

const uint32

 

FindSampleIndexFromTime

(
    const float Time,
    const bool bLooping
)

FindSampleIndexFromTime uses binary search to find the closest index to Time inside Samples

Public function

FStreamedGeo...

 

GetChunk

(
    int32 ChunkID
)

Public function Const

const FStrea...

 

GetChunk

(
    int32 ChunkID
)

Public function

void

 

GetChunksForTimeRange

(
    float StartTime,
    float EndTime,
    bool Looping,
    TArray< int32 >& OutChunkIndexes
)

Get the CunksIds that need to be loaded to display any frames falling within the given time range.

Public function

FGeometryCac...

 

GetRenderResource()

Public function Const

const FGeome...

 

GetSampleInfo

(
    int32 SampleID
)

Get the info for the sample with the given ID.

Public function Const

const FVisib...

 

GetVisibilitySample

(
    float Time,
    const bool bLooping
)

Public function Static

void

 

TriggerSerializationCrash()

Creates a totally invalid UGeometryCacheTrackStreamable instance specially set up to be very large and then tries to serialize it to smoke-test the serialization of large assets and bulk data.

Overridden from UGeometryCacheTrack

Name Description

Public function Virtual Const

uint64

 

GetHash()

Return the hash of the mesh data of the track

Public function Virtual Const

const float

 

GetMaxSampleTime()

GetMaxSampleTime, returns the time for the last sample Not the same as the animation length since it might not start at time 0

Public function Virtual

bool

 

GetMeshDataAtTime

(
    float Time,
    FGeometryCacheMeshData& OutMeshDat...
)

Get the mesh data for the specified time

Public function Virtual

const FGeome...

 

GetSampleInfo

(
    float Time,
    const bool bLooping
)

Get the info for the sample displayed at the given time.

Public function Virtual

void

 

SetDuration

(
    float NewDuration
)

Set the duration property.

Public function Virtual

const bool

 

UpdateBoundsData

(
    const float Time,
    const bool bLooping,
    const bool bIsPlayingBackward,
    int32& InOutBoundsSampleIndex,
    FBox& OutBounds
)

UpdateBoundsData

Public function Virtual

const bool

 

UpdateMeshData

(
    const float Time,
    const bool bLooping,
    int32& InOutMeshSampleIndex,
    FGeometryCacheMeshData*& OutMe...
)

UpdateMeshData

Overridden from UObject

Name Description

Public function Virtual

void

 

BeginDestroy()

Called before destroying the object.

Public function Virtual

void

 

FinishDestroy()

Called to finish destroying the object.

Public function Virtual

void

 

GetResourceSizeEx

(
    FResourceSizeEx& CumulativeResourc...
)

Get the size of the object/resource for use in memory tools or to display to artists/LDs in the Editor This is the extended version which separates up the used memory into different memory regions (the actual definition of which may be platform specific).

Public function Virtual

bool

 

IsReadyForFinishDestroy()

Called to check if the object is ready for FinishDestroy.

Public function Virtual

void

 

PostInitProperties()

Called after the C++ constructor and after the properties have been initialized, including those loaded from config.

Public function Virtual

void

 

PostLoad()

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

Public function Virtual

void

 

Serialize

(
    FArchive& Ar
)

Handles reading, writing, and reference collecting using FArchive.

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