FBaseBlendedCurve

This struct is used to create curve snap shot of current time when extracted

Windows
MacOS
Linux

Inheritance Hierarchy

FBaseBlendedCurve

FBlendedCurve

FBlendedHeapCurve

References

Module

Engine

Header

/Engine/Source/Runtime/Engine/Public/Animation/AnimCurveTypes.h

Include

#include "Animation/AnimCurveTypes.h"

Syntax

template<typename InAllocator>
struct FBaseBlendedCurve

Remarks

This struct is used to create curve snap shot of current time when extracted

Variables

Name Description

Public variable

bool

 

bInitialized

Whether initialized or not

Public variable

TArray < float, ...

 

CurveWeights

List of curve weights for this pose

Public variable

uint16

 

NumValidCurveCount

Valid Curve count This should match Elements.Num()

Public variable

TArray < uint16 ...

 

UIDToArrayIndexLUT

UID to array index look up table for Elements This eliminates the look up cost

Public variable

TBitArray < Allo ...

 

ValidCurveWeights

A bitmask to indicate which weights are valid.

Constructors

Name Description

Public function

FBaseBlendedCurve()

Constructor

Functions

Name Description

Public function

void

 

Accumulate

(
    const FBaseBlendedCurve & AdditiveC...,
    float Weight
)

Accumulate the input curve with input Weight

Public function

void

 

Combine

(
    const FBaseBlendedCurve & CurveToCo...
)

This doesn't blend but later pose with valid curve value overrides

Public function

void

 

CombinePreserved

(
    const FBaseBlendedCurve & CurveToCo...
)

This combines IF the input does not contain valid curve

Public function

void

 

ConvertToAdditive

(
    const FBaseBlendedCurve & BaseCurve
)

Convert current curves to Additive (this - BaseCurve) if same found

Public function

void

 

CopyFrom

(
    const FBaseBlendedCurve < Allocator ...
)

Public function

void

 

CopyFrom

(
    const FBaseBlendedCurve < OtherAlloc...
)

CopyFrom as expected.

Public function

void

 

Empty()

Empty

Public function Const

float

 

Get

(
    USkeleton::AnimCurveUID InUid
)

Get Value of InUID -

Public function Const

int32

 

GetArrayIndexByUID

(
    USkeleton::AnimCurveUID InUid
)

Get Array Index by UID

Public function Static

int32

 

GetValidElementCount

(
    TArray < uint16 > const* InUIDT...
)

Get Valid Element Count from given UIDToArrayIndexLUT

Public function

void

 

InitFrom

(
    const FBaseBlendedCurve < Allocator ...
)

Public function

void

 

InitFrom

(
    const FBaseBlendedCurve < OtherAlloc...
)

Public function

void

 

InitFrom

(
    TArray < uint16 > const* InUIDT...
)

Public function

void

 

InitFrom

(
    const FBoneContainer & RequiredBone...
)

Initialize Curve Data from following data

Public function Const

bool

 

IsEnabled

(
    USkeleton::AnimCurveUID InUid
)

Return true if enabled. return false otherwise.

Public function Const

bool

 

IsValid()

Only checks bare minimal validity.

Public function

void

 

Lerp

(
    const FBaseBlendedCurve & A,
    const FBaseBlendedCurve & B,
    float Alpha
)

Blend (A, B) using Alpha, same as Lerp

Public function

void

 

LerpTo

(
    const FBaseBlendedCurve & Other,
    float Alpha
)

Blend with Other using Alpha, same as Lerp

Public function

void

 

MoveFrom

(
    FBaseBlendedCurve < Allocator >& Cu...
)

Once moved, source is invalid

Public function Const

int32

 

Num()

Return number of elements

Public function

void

 

Override

(
    const FBaseBlendedCurve & CurveToOv...
)

Override with input curve

Public function

void

 

Override

(
    const FBaseBlendedCurve & CurveToOv...,
    float Weight
)

Override with inupt curve * weight

Public function

void

 

OverrideMove

(
    FBaseBlendedCurve & CurveToOverride...
)

Override with input curve, leaving input curve invalid

Public function

void

 

Set

(
    USkeleton::AnimCurveUID InUid,
    float InValue
)

Set value of InUID to InValue

Public function

void

 

UseMaxValue

(
    const FBaseBlendedCurve & CurveToCo...
)

This doesn't blend but combine MAX(current weight, curvetocombine weight)

Public function

void

 

UseMinValue

(
    const FBaseBlendedCurve & CurveToCo...
)

This doesn't blend but combine MIN(current weight, curvetocombine weight)

Typedefs

Name

Description

Allocator

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback