function () {
    this.system = this.el.sceneEl.systems.physics;
    this.system.addComponent(this);

    const el = this.el,
        data = this.data,
        position = (new CANNON.Vec3()).copy(el.object3D.getWorldPosition(new THREE.Vector3()));

    this.body = new CANNON.Body({
      material: this.system.getMaterial('staticMaterial'),
      position: position,
      mass: data.mass,
      linearDamping: data.linearDamping,
      fixedRotation: true
    });
    this.body.addShape(
      new CANNON.Sphere(data.radius),
      new CANNON.Vec3(0, data.radius, 0)
    );

    this.body.el = this.el;
    this.el.body = this.body;
    this.system.addBody(this.body);

    if (el.hasAttribute('wasd-controls')) {
      console.warn('[kinematic-body] Not compatible with wasd-controls, use movement-controls.');
    }
  }
function () {
    this.system = this.el.sceneEl.systems.physics;
    this.system.addComponent(this);

    const el = this.el,
        data = this.data,
        position = (new CANNON.Vec3()).copy(el.object3D.getWorldPosition(new THREE.Vector3()));

    this.body = new CANNON.Body({
      material: this.system.getMaterial('staticMaterial'),
      position: position,
      mass: data.mass,
      linearDamping: data.linearDamping,
      fixedRotation: true
    });
    this.body.addShape(
      new CANNON.Sphere(data.radius),
      new CANNON.Vec3(0, data.radius, 0)
    );

    this.body.el = this.el;
    this.el.body = this.body;
    this.system.addBody(this.body);

    if (el.hasAttribute('wasd-controls')) {
      console.warn('[kinematic-body] Not compatible with wasd-controls, use movement-controls.');
    }
  }
function ( ) { this . system = this . el . sceneEl . systems . physics ; this . system . addComponent ( this ) ; const el = this . el , data = this . data , position = ( new CANNON . Vec3 ( ) ) . copy ( el . object3D . getWorldPosition ( new THREE . Vector3 ( ) ) ) ; this . body = new CANNON . Body ( { material : this . system . getMaterial ( 'staticMaterial' ) , position : position , mass : data . mass , linearDamping : data . linearDamping , fixedRotation : true } ) ; this . body . addShape ( new CANNON . Sphere ( data . radius ) , new CANNON . Vec3 ( 0 , data . radius , 0 ) ) ; this . body . el = this . el ; this . el . body = this . body ; this . system . addBody ( this . body ) ; if ( el . hasAttribute ( 'wasd-controls' ) ) { console . warn ( '[kinematic-body] Not compatible with wasd-controls, use movement-controls.' ) ; } }
*****************************************************************
Lifecycle
***************************************************************** Lifecycle