UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
RBFSolver.h File Reference
#include "Animation/AnimTypes.h"
#include "Containers/Array.h"
#include "Containers/EnumAsByte.h"
#include "CoreMinimal.h"
#include "Curves/RichCurve.h"
#include "Math/Quat.h"
#include "Math/Rotator.h"
#include "Math/UnrealMathSSE.h"
#include "Math/Vector.h"
#include "Templates/SharedPointer.h"
#include "UObject/ObjectMacros.h"
#include "RBFSolver.generated.h"

Go to the source code of this file.

Classes

struct  FRBFEntry
 
struct  FRBFTarget
 
struct  FRBFOutputWeight
 
struct  FRBFParams
 
struct  FRBFSolver
 

Enumerations

enum class  ERBFSolverType : uint8 { Additive , Interpolative }
 
enum class  ERBFFunctionType : uint8 {
  Gaussian , Exponential , Linear , Cubic ,
  Quintic , DefaultFunction
}
 
enum class  ERBFDistanceMethod : uint8 {
  Euclidean , Quaternion , SwingAngle , TwistAngle ,
  DefaultMethod
}
 
enum class  ERBFNormalizeMethod : uint8 { OnlyNormalizeAboveOne , AlwaysNormalize , NormalizeWithinMedian , NoNormalization }
 

Variables

struct ANIMGRAPHRUNTIME_API FRBFSolverData
 

Enumeration Type Documentation

◆ ERBFDistanceMethod

enum class ERBFDistanceMethod : uint8
strong

Method for determining distance from input to targets

Enumerator
Euclidean 

Standard n-dimensional distance measure

Quaternion 

Treat inputs as quaternion

SwingAngle 

Treat inputs as quaternion, and find distance between rotated TwistAxis direction

TwistAngle 

Treat inputs as quaternion, and find distance between rotations around the TwistAxis direction

DefaultMethod 

Uses the setting of the parent container

◆ ERBFFunctionType

enum class ERBFFunctionType : uint8
strong

Function to use for each target falloff

Enumerator
Gaussian 
Exponential 
Linear 
Cubic 
Quintic 
DefaultFunction 

Uses the setting of the parent container

◆ ERBFNormalizeMethod

enum class ERBFNormalizeMethod : uint8
strong

Method to normalize weights

Enumerator
OnlyNormalizeAboveOne 

Only normalize above one

AlwaysNormalize 

Always normalize. Zero distribution weights stay zero.

NormalizeWithinMedian 

Normalize only within reference median. The median is a cone with a minimum and maximum angle within which the value will be interpolated between non-normalized and normalized. This helps to define the volume in which normalization is always required.

NoNormalization 

Don't normalize at all. This should only be used with the interpolative method, if it is known that all input values will be within the area bounded by the targets.

◆ ERBFSolverType

enum class ERBFSolverType : uint8
strong

The solver type to use. The two solvers have different requirements.

Enumerator
Additive 

The additive solver sums up contributions from each target. It's faster but may require more targets for a good coverage, and requires the normalization step to be performed for smooth results.

Interpolative 

The interpolative solver interpolates the values from each target based on distance. As long as the input values are within the area bounded by the targets, the interpolation is well-behaved and return weight values within the 0% - 100% limit with no normalization required. Interpolation also gives smoother results, with fewer targets, than additive but at a higher computational cost.

Variable Documentation

◆ FRBFSolverData