setupInertia method

void setupInertia(
  1. Vector3 tmpV,
  2. bool adjustPosition
)

Implementation

void setupInertia(Vector3 tmpV,bool adjustPosition){
  inverseMass = 1 / mass;
  tmpV.scale(inverseMass);

  if(adjustPosition){
    position.add(tmpV);
    for(Shape? shape = shapes; shape != null; shape = shape.next){
      shape.relativePosition.sub(tmpV);
    }

    // subtract offset inertia
    localInertia.subOffset(mass, tmpV );
  }

  inverseLocalInertia.invert2(localInertia );

  if(isStatic){
    inverseMass = 0;
    inverseLocalInertia.setValues(0,0,0,0,0,0,0,0,0);
  }

  syncShapes();
  awake();
}