babylon.virtualJoysticksCamera.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. var __extends = this.__extends || function (d, b) {
  2. for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
  3. function __() { this.constructor = d; }
  4. __.prototype = b.prototype;
  5. d.prototype = new __();
  6. };
  7. var BABYLON;
  8. (function (BABYLON) {
  9. // We're mainly based on the logic defined into the FreeCamera code
  10. var VirtualJoysticksCamera = (function (_super) {
  11. __extends(VirtualJoysticksCamera, _super);
  12. function VirtualJoysticksCamera(name, position, scene) {
  13. _super.call(this, name, position, scene);
  14. this._leftjoystick = new BABYLON.VirtualJoystick(true);
  15. this._leftjoystick.setAxisForUpDown(2 /* Z */);
  16. this._leftjoystick.setAxisForLeftRight(0 /* X */);
  17. this._leftjoystick.setJoystickSensibility(0.15);
  18. this._rightjoystick = new BABYLON.VirtualJoystick(false);
  19. this._rightjoystick.setAxisForUpDown(0 /* X */);
  20. this._rightjoystick.setAxisForLeftRight(1 /* Y */);
  21. this._rightjoystick.reverseUpDown = true;
  22. this._rightjoystick.setJoystickSensibility(0.05);
  23. this._rightjoystick.setJoystickColor("yellow");
  24. }
  25. VirtualJoysticksCamera.prototype._checkInputs = function () {
  26. var cameraTransform = BABYLON.Matrix.RotationYawPitchRoll(this.rotation.y, this.rotation.x, 0);
  27. var deltaTransform = BABYLON.Vector3.TransformCoordinates(this._leftjoystick.deltaPosition, cameraTransform);
  28. this.cameraDirection = this.cameraDirection.add(deltaTransform);
  29. this.cameraRotation = this.cameraRotation.addVector3(this._rightjoystick.deltaPosition);
  30. if (!this._leftjoystick.pressed) {
  31. this._leftjoystick.deltaPosition = this._leftjoystick.deltaPosition.scale(0.9);
  32. }
  33. if (!this._rightjoystick.pressed) {
  34. this._rightjoystick.deltaPosition = this._rightjoystick.deltaPosition.scale(0.9);
  35. }
  36. };
  37. VirtualJoysticksCamera.prototype.dispose = function () {
  38. this._leftjoystick.releaseCanvas();
  39. _super.prototype.dispose.call(this);
  40. };
  41. return VirtualJoysticksCamera;
  42. })(BABYLON.FreeCamera);
  43. BABYLON.VirtualJoysticksCamera = VirtualJoysticksCamera;
  44. })(BABYLON || (BABYLON = {}));
  45. //# sourceMappingURL=babylon.virtualJoysticksCamera.js.map