TSetCompositePropertyValuesImpl

Task implementation that combines a specific set of input components (templated as CompositeTypes) through a projection, and applies the result to an object property Three types of property are supported: Custom native accessor functions, fast pointer offset, or [FTrackInstancePropertyBindings](API\Runtime\MovieScene\FTrackInstancePropertyBindings).

Windows
MacOS
Linux

References

Module

MovieScene

Header

/Engine/Source/Runtime/MovieScene/Public/EntitySystem/MovieScenePropertySystemTypes.h

Include

#include "EntitySystem/MovieScenePropertySystemTypes.h"

Syntax

template<typename PropertyTraits, typename MetaDataType, typename... CompositeTypes>
struct TSetCompositePropertyValuesImpl

Remarks

Task implementation that combines a specific set of input components (templated as CompositeTypes) through a projection, and applies the result to an object property Three types of property are supported: Custom native accessor functions, fast pointer offset, or FTrackInstancePropertyBindings.

Can be invoked in one of 2 ways: either with a specific property type and input components through a per-entity iteration: TComponentTypeID<FCustomPropertyIndex> CustomProperty = ...; TComponentTypeID<UObject*> BoundObject = ...;

FEntityTaskBuilder() .Read( BoundObject ) .Read( CustomProperty ) .Read( TComponentTypeID<float>(...) ) .Read( TComponentTypeID<float>(...) ) .Read( TComponentTypeID<float>(...) ) .Dispatch_PerEntity<TSetCompositePropertyValues<FVector, float, float, float>>( ..., &UKismetMathLibrary::MakeVector );

Or via a combinatorial task that iterates all entities with any one of the property components: TComponentTypeID<uint16> FastPropertyOffset = ...; TComponentTypeID<TSharedPtr<FTrackInstancePropertyBindings>> SlowProperty = ...;

FEntityTaskBuilder() .Read( BoundObject ) .ReadOneOf( CustomProperty, FastPropertyOffset, SlowProperty ) .Read( TComponentTypeID<float>(...) ) .Read( TComponentTypeID<float>(...) ) .Read( TComponentTypeID<float>(...) ) .Dispatch_Perllocation<TSetCompositePropertyValues<FVector, float, float, float>>( ..., &UKismetMathLibrary::MakeVector );

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