public class ContactSolver

  1. Object
  2. ContactSolver

Nested types

class ContactSolver.ContactSolverDef

Fields

public static final boolean DEBUG_SOLVER = false
public static final float k_errorTol = 0.001f
public static final int INITIAL_NUM_CONSTRAINTS = 256For each solver, this is the initial number of constraints in the array, which expands as needed.
public static final float k_maxConditionNumber = 100.0fEnsure a reasonable condition number.
public TimeStep m_step
public Position[] m_positions
public Velocity[] m_velocities
public ContactPositionConstraint[] m_positionConstraints
public ContactVelocityConstraint[] m_velocityConstraints
public Contact[] m_contacts
public int m_count

Constructors

public ContactSolver()

Methods

public final void init(ContactSolver.ContactSolverDef def)
public void warmStart()
public final void initializeVelocityConstraints()
public final void solveVelocityConstraints()
public void storeImpulses()
public final boolean solvePositionConstraints()Sequential solver.
public boolean solveTOIPositionConstraints(int toiIndexA, int toiIndexB)

Inherited methods

Field details

DEBUG_SOLVER

public static final boolean DEBUG_SOLVER = false

k_errorTol

public static final float k_errorTol = 0.001f

INITIAL_NUM_CONSTRAINTS

public static final int INITIAL_NUM_CONSTRAINTS = 256
For each solver, this is the initial number of constraints in the array, which expands as needed.

k_maxConditionNumber

public static final float k_maxConditionNumber = 100.0f
Ensure a reasonable condition number. for the block solver

m_step

public TimeStep m_step

m_positions

public Position[] m_positions

m_velocities

public Velocity[] m_velocities

m_positionConstraints

public ContactPositionConstraint[] m_positionConstraints

m_velocityConstraints

public ContactVelocityConstraint[] m_velocityConstraints

m_contacts

public Contact[] m_contacts

m_count

public int m_count

Constructor details

ContactSolver

public ContactSolver()

Method details

init

public final void init(ContactSolver.ContactSolverDef def)

warmStart

public void warmStart()

initializeVelocityConstraints

public final void initializeVelocityConstraints()

solveVelocityConstraints

public final void solveVelocityConstraints()

storeImpulses

public void storeImpulses()

solvePositionConstraints

public final boolean solvePositionConstraints()
Sequential solver.

solveTOIPositionConstraints

public boolean solveTOIPositionConstraints(int toiIndexA, int toiIndexB)