Box2D  3.0.0
A Real-Time-Oriented 2-D Physics Engine
Public Member Functions | Public Attributes | List of all members
box2d::ConstraintSolverConf Struct Reference

Constraint solver configuration data. More...

#include <ContactSolver.hpp>

Public Member Functions

ConstraintSolverConfUseResolutionRate (RealNum value) noexcept
 
ConstraintSolverConfUseLinearSlop (Length value) noexcept
 
ConstraintSolverConfUseAngularSlop (Angle value) noexcept
 
ConstraintSolverConfUseMaxLinearCorrection (Length value) noexcept
 
ConstraintSolverConfUseMaxAngularCorrection (Angle value) noexcept
 

Public Attributes

RealNum resolutionRate = RealNum(0.2)
 Resolution rate. More...
 
Length linearSlop = DefaultLinearSlop
 Linear slop. More...
 
Angle angularSlop = DefaultAngularSlop
 Angular slop. More...
 
Length maxLinearCorrection = DefaultLinearSlop * RealNum{20}
 Maximum linear correction. More...
 
Angle maxAngularCorrection = DefaultAngularSlop * RealNum{4}
 Maximum angular correction. More...
 

Detailed Description

Constraint solver configuration data.

Defines how a constraint solver should resolve a given constraint.

See also
SolvePositionConstraint.

Member Function Documentation

◆ UseAngularSlop()

ConstraintSolverConf & box2d::ConstraintSolverConf::UseAngularSlop ( Angle  value)
inlinenoexcept

◆ UseLinearSlop()

ConstraintSolverConf & box2d::ConstraintSolverConf::UseLinearSlop ( Length  value)
inlinenoexcept

◆ UseMaxAngularCorrection()

ConstraintSolverConf & box2d::ConstraintSolverConf::UseMaxAngularCorrection ( Angle  value)
inlinenoexcept

◆ UseMaxLinearCorrection()

ConstraintSolverConf & box2d::ConstraintSolverConf::UseMaxLinearCorrection ( Length  value)
inlinenoexcept

◆ UseResolutionRate()

ConstraintSolverConf & box2d::ConstraintSolverConf::UseResolutionRate ( RealNum  value)
inlinenoexcept

Member Data Documentation

◆ angularSlop

Angle box2d::ConstraintSolverConf::angularSlop = DefaultAngularSlop

Angular slop.

Note
Recommended value: DefaultAngularSlop.

◆ linearSlop

Length box2d::ConstraintSolverConf::linearSlop = DefaultLinearSlop

Linear slop.

Note
The negative of this amount is the maximum amount of separation to create.
Recommended value: DefaultLinearSlop.

◆ maxAngularCorrection

Angle box2d::ConstraintSolverConf::maxAngularCorrection = DefaultAngularSlop * RealNum{4}

Maximum angular correction.

Maximum angular position correction used when solving constraints. Helps to prevent overshoot.

Note
Recommended value: angularSlop * 4.

◆ maxLinearCorrection

Length box2d::ConstraintSolverConf::maxLinearCorrection = DefaultLinearSlop * RealNum{20}

Maximum linear correction.

Maximum amount of overlap to resolve in a single solver call. Helps prevent overshoot.

Note
Recommended value: linearSlop * 40.

◆ resolutionRate

RealNum box2d::ConstraintSolverConf::resolutionRate = RealNum(0.2)

Resolution rate.

Defines the percentage of the overlap that should get resolved in a single solver call. Value greater than zero and less than or equal to one. Ideally this would be 1 so that overlap is removed in one time step. However using values close to 1 often leads to overshoot.

Note
Recommended values are: 0.2 for solving regular constraints or 0.75 for solving TOI constraints.

The documentation for this struct was generated from the following file: