anchor.diff:    exit() {
       // TODO: implement exit
     }
  +  
  +  num _elapsed = 0;
   
     @override
     update(num elapsed, num interval) {
       super.update(elapsed, interval);
   
  -    camera.update(interval);
  -    camera.position.setValues(cos(elapsed / 1000) * 4.0, 2.0, sin(elapsed / 1000) * 4.0);
  -    camera.lookAt(new Vector3.zero());
  +    if (rotateCamera) {
  +      _elapsed += interval;
  +      camera.position.setValues(cos(_elapsed / 1000) * 4.0, 2.0, sin(_elapsed / 1000) * 4.0);
  +      camera.lookAt(new Vector3.zero());
  +    }
     }
   }
   
  
positive.code:       m.castShadows = true;
        mesh = m;
      });
  
      var plane = _createPlane(6.0);// new Plane(width: 10, height: 10);
      plane.rotation.rotateX(-PI / 2);
  
negative.code:     loader.load(device.ctx, url).then((m) {
        m.position.setValues(0.0, -1.0, -1.0);
        m.animator.switchAnimation("Idle");
        m.animator.animations.forEach((n, a) {
          var row = new html.DivElement();
          row.className = "row";
  