UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
BoneControllerSolvers.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
7#include "Math/Transform.h"
10
11#include "BoneControllerSolvers.generated.h"
12
13USTRUCT(BlueprintInternalUseOnly)
15{
17
18 // Specifies the spring interpolation parameters applied during pelvis adjustment
19 UPROPERTY(EditAnywhere, Category=Settings)
20 FVectorRK4SpringInterpolator PelvisAdjustmentInterp;
21
22 // Specifies an alpha between the original and final adjusted pelvis locations
23 // This is used to retain some degree of the original pelvis motion
24 UPROPERTY(EditAnywhere, Category=Settings, meta=(ClampMin="0.0", ClampMax="1.0"))
25 double PelvisAdjustmentInterpAlpha = 0.5;
26
27 // Specifies the maximum displacement the pelvis can be adjusted relative to its original location
28 UPROPERTY(EditAnywhere, Category=Settings, meta=(ClampMin="0.0"))
29 double PelvisAdjustmentMaxDistance = 10.0;
30
31 // Specifies the pelvis adjustment distance error that is tolerated for each iteration of the solver
32 //
33 // When it is detected that the pelvis adjustment distance is incrementing at a value lower or equal
34 // to this value for each iteration, the solve will halt. Lower values will marginally increase visual
35 // quality at the cost of performance, but may require a higher PelvisAdjustmentMaxIter to be specified
36 //
37 // The default value of 0.01 specifies 1 centimeter of error
38 UPROPERTY(EditAnywhere, Category=Advanced, meta=(ClampMin="0.001"))
39 double PelvisAdjustmentErrorTolerance = 0.01;
40
41 // Specifies the maximum number of iterations to run for the pelvis adjustment solver
42 // Higher iterations will guarantee closer PelvisAdjustmentErrorTolerance convergence at the cost of performance
43 UPROPERTY(EditAnywhere, Category=Advanced, meta=(ClampMin="0"))
44 int32 PelvisAdjustmentMaxIter = 3;
45
46 // Iteratively pulls the character pelvis towards the ground based on the relationship of driven IK foot targets versus FK foot limits
48};
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define USTRUCT(...)
Definition ObjectMacros.h:746
Definition ArrayView.h:139
Definition BoneControllerSolvers.h:15
Definition SpringInterpolator.h:306