FJointSolverGaussSeidel

Calculate new positions and rotations for a pair of bodies connected by a joint.

Windows
MacOS
Linux

References

Module

Chaos

Header

/Engine/Source/Runtime/Experimental/Chaos/Public/Chaos/Joint/PBDJointSolverGaussSeidel.h

Include

#include "Chaos/Joint/PBDJointSolverGaussSeidel.h"

Syntax

class FJointSolverGaussSeidel

Remarks

Calculate new positions and rotations for a pair of bodies connected by a joint.

This solver treats of the 6 possible constraints (up to 3 linear and 3 angular) individually and resolves them in sequence.

Constructors

Name Description

Public function

FJointSolverGaussSeidel()

Functions

Name Description

Public function

void

 

ApplyConstraints

(
    const FReal Dt,
    const FPBDJointSolverSettings& Sol...,
    const FPBDJointSettings& JointSett...
)

Public function

void

 

ApplyProjections

(
    const FReal Dt,
    const FPBDJointSolverSettings& Sol...,
    const FPBDJointSettings& JointSett...
)

Public function Const

const FVec3 ...

 

GetInitP

(
    const int32 Index
)

Public function Const

const FRotat...

 

GetInitQ

(
    const int32 Index
)

Public function Const

bool

 

GetIsActive()

Public function Const

const FVec3 ...

 

GetNetAngularImpulse()

Public function Const

const FVec3 ...

 

GetNetLinearImpulse()

Public function Const

int32

 

GetNumActiveConstraints()

Public function Const

const FVec3 ...

 

GetP

(
    const int32 Index
)

Public function Const

const FRotat...

 

GetQ

(
    const int32 Index
)

Public function Const

const FVec3 ...

 

GetV

(
    const int32 Index
)

Public function Const

const FVec3 ...

 

GetW

(
    const int32 Index
)

Public function

void

 

Init

(
    const FReal Dt,
    const FPBDJointSolverSettings& Sol...,
    const FPBDJointSettings& JointSett...,
    const FVec3& PrevP0,
    const FVec3& PrevP1,
    const FRotation3& PrevQ0,
    const FRotation3& PrevQ1,
    const FReal InvM0,
    const FVec3& InvIL0,
    const FReal InvM1,
    const FVec3& InvIL1,
    const FRigidTransform3& XL0,
    const FRigidTransform3& XL1
)

Public function Const

FReal

 

InvM

(
    int32 index
)

Public function

void

 

Update

(
    const FReal Dt,
    const FReal InSolverStiffness,
    const FPBDJointSolverSettings& Sol...,
    const FPBDJointSettings& JointSett...,
    const FVec3& P0,
    const FRotation3& Q0,
    const FVec3& V0,
    const FVec3& W0,
    const FVec3& P1,
    const FRotation3& Q1,
    const FVec3& V1,
    const FVec3& W1
)

Typedefs

Name

Description

FDenseMatrix61

FDenseMatrix66

Constants

Name

Description

MaxConstrainedBodies

See Also

FJointSolverCholesky

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