@galacean/engine-xr-webxr 0.0.0-experimental-stateMachine.0 → 0.0.0-experimental-1.3-xr.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -243,6 +243,15 @@ function _create_class(Constructor, protoProps, staticProps) {
243
243
  */ MathUtil.degreeToRadian = function degreeToRadian(d) {
244
244
  return d * MathUtil.degreeToRadFactor;
245
245
  };
246
+ /**
247
+ * Linearly interpolate between two values
248
+ * @param start - Specify the start of the range in which to interpolate
249
+ * @param end - Specify the end of the range in which to interpolate
250
+ * @param t - The blend amount where 0 returns start and 1 end
251
+ * @returns The result of linear blending between start and end
252
+ */ MathUtil.lerp = function lerp(start, end, t) {
253
+ return start + (end - start) * t;
254
+ };
246
255
  return MathUtil;
247
256
  }();
248
257
  (function() {
@@ -5337,7 +5346,7 @@ var WebXRSession = /*#__PURE__*/ function() {
5337
5346
  session.removeEventListener("squeeze", onSessionEvent);
5338
5347
  session.removeEventListener("squeezestart", onSessionEvent);
5339
5348
  session.removeEventListener("squeezeend", onSessionEvent);
5340
- session.addEventListener("end", this._onSessionExit);
5349
+ session.removeEventListener("end", this._onSessionExit);
5341
5350
  this._events.length = 0;
5342
5351
  };
5343
5352
  _proto.resetEvents = function resetEvents() {
@@ -5480,7 +5489,16 @@ var WebXRDevice = /*#__PURE__*/ function() {
5480
5489
  });
5481
5490
  };
5482
5491
  _proto.isSupportedFeature = function isSupportedFeature(type) {
5483
- return true;
5492
+ switch(type){
5493
+ case miniprogram$1.XRFeatureType.HitTest:
5494
+ case miniprogram$1.XRFeatureType.PlaneTracking:
5495
+ return typeof XRPlane !== "undefined";
5496
+ case miniprogram$1.XRFeatureType.AnchorTracking:
5497
+ return typeof XRAnchor !== "undefined";
5498
+ case miniprogram$1.XRFeatureType.ImageTracking:
5499
+ // @ts-ignore
5500
+ return typeof XRImageTrackingResult !== "undefined";
5501
+ }
5484
5502
  };
5485
5503
  _proto.createPlatformFeature = function createPlatformFeature(type) {
5486
5504
  for(var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){
package/dist/module.js CHANGED
@@ -1,4 +1,4 @@
1
- import { XRTrackedInputDevice, XRTrackingState, XRInputEventType, XRTargetRayMode, XRRequestTrackingState, XRFeatureType, XRPlaneMode } from '@galacean/engine-xr';
1
+ import { XRTrackedInputDevice, XRTrackingState, XRInputEventType, XRTargetRayMode, XRFeatureType, XRRequestTrackingState, XRPlaneMode } from '@galacean/engine-xr';
2
2
 
3
3
  function _defineProperties$1(target, props) {
4
4
  for (var i = 0; i < props.length; i++) {
@@ -229,6 +229,15 @@ function _create_class(Constructor, protoProps, staticProps) {
229
229
  */ MathUtil.degreeToRadian = function degreeToRadian(d) {
230
230
  return d * MathUtil.degreeToRadFactor;
231
231
  };
232
+ /**
233
+ * Linearly interpolate between two values
234
+ * @param start - Specify the start of the range in which to interpolate
235
+ * @param end - Specify the end of the range in which to interpolate
236
+ * @param t - The blend amount where 0 returns start and 1 end
237
+ * @returns The result of linear blending between start and end
238
+ */ MathUtil.lerp = function lerp(start, end, t) {
239
+ return start + (end - start) * t;
240
+ };
232
241
  return MathUtil;
233
242
  }();
234
243
  (function() {
@@ -4463,7 +4472,7 @@ var WebXRSession = /*#__PURE__*/ function() {
4463
4472
  session.removeEventListener("squeeze", onSessionEvent);
4464
4473
  session.removeEventListener("squeezestart", onSessionEvent);
4465
4474
  session.removeEventListener("squeezeend", onSessionEvent);
4466
- session.addEventListener("end", this._onSessionExit);
4475
+ session.removeEventListener("end", this._onSessionExit);
4467
4476
  this._events.length = 0;
4468
4477
  };
4469
4478
  _proto.resetEvents = function resetEvents() {
@@ -4606,7 +4615,16 @@ var WebXRDevice = /*#__PURE__*/ function() {
4606
4615
  });
4607
4616
  };
4608
4617
  _proto.isSupportedFeature = function isSupportedFeature(type) {
4609
- return true;
4618
+ switch(type){
4619
+ case XRFeatureType.HitTest:
4620
+ case XRFeatureType.PlaneTracking:
4621
+ return typeof XRPlane !== "undefined";
4622
+ case XRFeatureType.AnchorTracking:
4623
+ return typeof XRAnchor !== "undefined";
4624
+ case XRFeatureType.ImageTracking:
4625
+ // @ts-ignore
4626
+ return typeof XRImageTrackingResult !== "undefined";
4627
+ }
4610
4628
  };
4611
4629
  _proto.createPlatformFeature = function createPlatformFeature(type) {
4612
4630
  for(var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){