@needle-tools/engine 2.40.0-pre → 2.41.0-pre

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.
Files changed (52) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/needle-engine.d.ts +269 -123
  3. package/dist/needle-engine.js +389 -389
  4. package/dist/needle-engine.js.map +4 -4
  5. package/dist/needle-engine.min.js +41 -41
  6. package/dist/needle-engine.min.js.map +4 -4
  7. package/lib/engine/engine_gizmos.d.ts +1 -0
  8. package/lib/engine/engine_gizmos.js +16 -4
  9. package/lib/engine/engine_gizmos.js.map +1 -1
  10. package/lib/engine/engine_math.d.ts +9 -6
  11. package/lib/engine/engine_math.js +9 -0
  12. package/lib/engine/engine_math.js.map +1 -1
  13. package/lib/engine/engine_physics.js +14 -6
  14. package/lib/engine/engine_physics.js.map +1 -1
  15. package/lib/engine/engine_serialization_core.js +2 -0
  16. package/lib/engine/engine_serialization_core.js.map +1 -1
  17. package/lib/engine/engine_utils.d.ts +1 -0
  18. package/lib/engine/engine_utils.js +3 -0
  19. package/lib/engine/engine_utils.js.map +1 -1
  20. package/lib/engine-components/AnimationCurve.js +20 -5
  21. package/lib/engine-components/AnimationCurve.js.map +1 -1
  22. package/lib/engine-components/Light.d.ts +2 -0
  23. package/lib/engine-components/Light.js +33 -9
  24. package/lib/engine-components/Light.js.map +1 -1
  25. package/lib/engine-components/ParticleSystem.d.ts +15 -26
  26. package/lib/engine-components/ParticleSystem.js +251 -184
  27. package/lib/engine-components/ParticleSystem.js.map +1 -1
  28. package/lib/engine-components/ParticleSystemModules.d.ts +208 -63
  29. package/lib/engine-components/ParticleSystemModules.js +640 -153
  30. package/lib/engine-components/ParticleSystemModules.js.map +1 -1
  31. package/lib/engine-components/WebXR.js +8 -3
  32. package/lib/engine-components/WebXR.js.map +1 -1
  33. package/lib/engine-components/codegen/components.d.ts +6 -0
  34. package/lib/engine-components/codegen/components.js +6 -0
  35. package/lib/engine-components/codegen/components.js.map +1 -1
  36. package/package.json +3 -1
  37. package/src/engine/codegen/register_types.js +24 -0
  38. package/src/engine/engine_gizmos.ts +19 -4
  39. package/src/engine/engine_math.ts +19 -6
  40. package/src/engine/engine_physics.ts +17 -7
  41. package/src/engine/engine_serialization_core.ts +1 -0
  42. package/src/engine/engine_utils.ts +5 -0
  43. package/src/engine-components/AnimationCurve.ts +25 -11
  44. package/src/engine-components/Light.ts +39 -8
  45. package/src/engine-components/ParticleSystem.ts +314 -194
  46. package/src/engine-components/ParticleSystemModules.ts +537 -154
  47. package/src/engine-components/WebXR.ts +11 -8
  48. package/src/engine-components/codegen/components.ts +6 -0
  49. package/src/engine/dist/engine_physics.js +0 -739
  50. package/src/engine/dist/engine_setup.js +0 -777
  51. package/src/engine-components/dist/CharacterController.js +0 -123
  52. package/src/engine-components/dist/RigidBody.js +0 -458
@@ -1 +1 @@
1
- {"version":3,"file":"ParticleSystemModules.js","sourceRoot":"","sources":["../../../engine-components/ParticleSystemModules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ParticleSystemModules.js","sourceRoot":"","sources":["../../../engine-components/ParticleSystemModules.ts"],"names":[],"mappings":"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"}
@@ -68,6 +68,8 @@ export class WebXR extends Behaviour {
68
68
  if (!WebXR.XRSupported) {
69
69
  console.warn("WebXR is not supported on this device");
70
70
  }
71
+ else
72
+ webXR.__internalAwake();
71
73
  const vrButton = VRButton.createButton(webXR.context.renderer);
72
74
  vrButton.classList.add('webxr-ar-button');
73
75
  vrButton.classList.add('webxr-button');
@@ -78,12 +80,15 @@ export class WebXR extends Behaviour {
78
80
  return vrButton;
79
81
  }
80
82
  static createARButton(webXR, opts) {
83
+ webXR.__internalAwake();
81
84
  const domOverlayRoot = webXR.webAR?.getAROverlayContainer();
82
85
  const features = {};
83
86
  if (domOverlayRoot) {
84
87
  features.domOverlay = { root: domOverlayRoot };
85
88
  features.optionalFeatures = ['hit-test', 'dom-overlay'];
86
89
  }
90
+ else
91
+ console.warn("No dom overlay root found, AR will not work");
87
92
  const arButton = ARButton.createButton(webXR.context.renderer, features);
88
93
  arButton.classList.add('webxr-ar-button');
89
94
  arButton.classList.add('webxr-button');
@@ -157,6 +162,7 @@ export class WebXR extends Behaviour {
157
162
  const sync = GameObject.addNewComponent(this.gameObject, WebXRSync, false);
158
163
  sync.webXR = this;
159
164
  }
165
+ this.webAR = new WebAR(this);
160
166
  }
161
167
  onEnable() {
162
168
  if (this.isInit)
@@ -165,7 +171,6 @@ export class WebXR extends Behaviour {
165
171
  return;
166
172
  this.isInit = true;
167
173
  this.context.renderer.xr.enabled = true;
168
- this.webAR = new WebAR(this);
169
174
  // general WebXR support?
170
175
  const browserSupportsXR = WebXR.XRSupported;
171
176
  // TODO: move the whole buttons positioning out of here and make it configureable from css
@@ -456,9 +461,9 @@ export class WebAR {
456
461
  session.requestReferenceSpace('viewer').then((referenceSpace) => {
457
462
  session.requestHitTestSource({ space: referenceSpace }).then((source) => {
458
463
  this.hitTestSource = source;
459
- }).catch((_) => {
464
+ }).catch((err) => {
460
465
  this.noHitTestAvailable = true;
461
- console.warn("WebXR: Hit test not supported");
466
+ console.warn("WebXR: Hit test not supported", err);
462
467
  });
463
468
  });
464
469
  if (!this.reticle && this.sessionRoot) {
@@ -1 +1 @@
1
- {"version":3,"file":"WebXR.js","sourceRoot":"","sources":["../../../engine-components/WebXR.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebXR.js","sourceRoot":"","sources":["../../../engine-components/WebXR.ts"],"names":[],"mappings":"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"}
@@ -50,9 +50,15 @@ export { OffsetConstraint } from "../OffsetConstraint";
50
50
  export { OrbitControls } from "../OrbitControls";
51
51
  export { ParticleSystemRenderer } from "../ParticleSystem";
52
52
  export { ParticleSystem } from "../ParticleSystem";
53
+ export { Gradient } from "../ParticleSystemModules";
54
+ export { MinMaxCurve } from "../ParticleSystemModules";
55
+ export { MinMaxGradient } from "../ParticleSystemModules";
53
56
  export { MainModule } from "../ParticleSystemModules";
54
57
  export { EmissionModule } from "../ParticleSystemModules";
58
+ export { ColorOverLifetimeModule } from "../ParticleSystemModules";
59
+ export { SizeOverLifetimeModule } from "../ParticleSystemModules";
55
60
  export { ShapeModule } from "../ParticleSystemModules";
61
+ export { NoiseModule } from "../ParticleSystemModules";
56
62
  export { PlayerColor } from "../PlayerColor";
57
63
  export { ReflectionProbe } from "../ReflectionProbe";
58
64
  export { FieldWithDefault } from "../Renderer";
@@ -51,9 +51,15 @@ export { OffsetConstraint } from "../OffsetConstraint";
51
51
  export { OrbitControls } from "../OrbitControls";
52
52
  export { ParticleSystemRenderer } from "../ParticleSystem";
53
53
  export { ParticleSystem } from "../ParticleSystem";
54
+ export { Gradient } from "../ParticleSystemModules";
55
+ export { MinMaxCurve } from "../ParticleSystemModules";
56
+ export { MinMaxGradient } from "../ParticleSystemModules";
54
57
  export { MainModule } from "../ParticleSystemModules";
55
58
  export { EmissionModule } from "../ParticleSystemModules";
59
+ export { ColorOverLifetimeModule } from "../ParticleSystemModules";
60
+ export { SizeOverLifetimeModule } from "../ParticleSystemModules";
56
61
  export { ShapeModule } from "../ParticleSystemModules";
62
+ export { NoiseModule } from "../ParticleSystemModules";
57
63
  export { PlayerColor } from "../PlayerColor";
58
64
  export { ReflectionProbe } from "../ReflectionProbe";
59
65
  export { FieldWithDefault } from "../Renderer";
@@ -1 +1 @@
1
- {"version":3,"file":"components.js","sourceRoot":"","sources":["../../../../engine-components/codegen/components.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,MAAM,OAAO,QAAQ;CAAG;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../../../engine-components/codegen/components.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@needle-tools/engine",
3
- "version": "2.40.0-pre",
3
+ "version": "2.41.0-pre",
4
4
  "description": "Needle Engine is a web-based runtime for 3D apps. It runs on your machine for development, and can be deployed anywhere. It is flexible, extensible, and collaboration and XR come naturally.",
5
5
  "main": "dist/needle-engine.js",
6
6
  "module": "src/needle-engine.ts",
@@ -46,9 +46,11 @@
46
46
  "flatbuffers": "2.0.4",
47
47
  "md5": "^2.3.0",
48
48
  "peerjs": "1.3.2",
49
+ "simplex-noise": "^4.0.1",
49
50
  "stats.js": "^0.17.0",
50
51
  "three": "npm:@needle-tools/three@^0.145.2",
51
52
  "three-mesh-ui": "^6.4.5",
53
+ "three-nebula": "^10.0.3",
52
54
  "three.meshline": "^1.4.0",
53
55
  "uuid": "^9.0.0",
54
56
  "websocket-ts": "^1.1.1"
@@ -152,15 +152,33 @@ ParticleSystemRenderer[$BuiltInTypeFlag] = true;
152
152
  import { ParticleSystem } from "../../engine-components/ParticleSystem.ts";
153
153
  ParticleSystem[$BuiltInTypeFlag] = true;
154
154
 
155
+ import { Gradient } from "../../engine-components/ParticleSystemModules.ts";
156
+ Gradient[$BuiltInTypeFlag] = true;
157
+
158
+ import { MinMaxCurve } from "../../engine-components/ParticleSystemModules.ts";
159
+ MinMaxCurve[$BuiltInTypeFlag] = true;
160
+
161
+ import { MinMaxGradient } from "../../engine-components/ParticleSystemModules.ts";
162
+ MinMaxGradient[$BuiltInTypeFlag] = true;
163
+
155
164
  import { MainModule } from "../../engine-components/ParticleSystemModules.ts";
156
165
  MainModule[$BuiltInTypeFlag] = true;
157
166
 
158
167
  import { EmissionModule } from "../../engine-components/ParticleSystemModules.ts";
159
168
  EmissionModule[$BuiltInTypeFlag] = true;
160
169
 
170
+ import { ColorOverLifetimeModule } from "../../engine-components/ParticleSystemModules.ts";
171
+ ColorOverLifetimeModule[$BuiltInTypeFlag] = true;
172
+
173
+ import { SizeOverLifetimeModule } from "../../engine-components/ParticleSystemModules.ts";
174
+ SizeOverLifetimeModule[$BuiltInTypeFlag] = true;
175
+
161
176
  import { ShapeModule } from "../../engine-components/ParticleSystemModules.ts";
162
177
  ShapeModule[$BuiltInTypeFlag] = true;
163
178
 
179
+ import { NoiseModule } from "../../engine-components/ParticleSystemModules.ts";
180
+ NoiseModule[$BuiltInTypeFlag] = true;
181
+
164
182
  import { PlayerColor } from "../../engine-components/PlayerColor.ts";
165
183
  PlayerColor[$BuiltInTypeFlag] = true;
166
184
 
@@ -498,9 +516,15 @@ TypeStore.add("OffsetConstraint", OffsetConstraint);
498
516
  TypeStore.add("OrbitControls", OrbitControls);
499
517
  TypeStore.add("ParticleSystemRenderer", ParticleSystemRenderer);
500
518
  TypeStore.add("ParticleSystem", ParticleSystem);
519
+ TypeStore.add("Gradient", Gradient);
520
+ TypeStore.add("MinMaxCurve", MinMaxCurve);
521
+ TypeStore.add("MinMaxGradient", MinMaxGradient);
501
522
  TypeStore.add("MainModule", MainModule);
502
523
  TypeStore.add("EmissionModule", EmissionModule);
524
+ TypeStore.add("ColorOverLifetimeModule", ColorOverLifetimeModule);
525
+ TypeStore.add("SizeOverLifetimeModule", SizeOverLifetimeModule);
503
526
  TypeStore.add("ShapeModule", ShapeModule);
527
+ TypeStore.add("NoiseModule", NoiseModule);
504
528
  TypeStore.add("PlayerColor", PlayerColor);
505
529
  TypeStore.add("ReflectionProbe", ReflectionProbe);
506
530
  TypeStore.add("FieldWithDefault", FieldWithDefault);
@@ -6,9 +6,11 @@ import { Vec3 } from './engine_types';
6
6
 
7
7
  const _tmp = new Vector3();
8
8
 
9
+ const defaultColor: ColorRepresentation = 0x888888;
10
+
9
11
  export class Gizmos {
10
12
 
11
- static DrawRay(origin: Vec3, dir: Vec3, color: ColorRepresentation = 0x888888, duration: number = 0, depthTest: boolean = true) {
13
+ static DrawRay(origin: Vec3, dir: Vec3, color: ColorRepresentation = defaultColor, duration: number = 0, depthTest: boolean = true) {
12
14
  const obj = Internal.getLine(duration);
13
15
  const positions = obj.geometry.getAttribute("position");
14
16
  positions.setXYZ(0, origin.x, origin.y, origin.z);
@@ -19,7 +21,20 @@ export class Gizmos {
19
21
  obj.material["depthTest"] = depthTest;
20
22
  }
21
23
 
22
- static DrawLine(pt0: { x: number, y: number, z: number }, pt1: { x: number, y: number, z: number }, color: ColorRepresentation = 0x888888, duration: number = 0, depthTest: boolean = true) {
24
+ static DrawDirection(pt: Vec3, direction: Vec3, color: ColorRepresentation = defaultColor, duration: number = 0, depthTest: boolean = true, lengthFactor: number = 1) {
25
+ const obj = Internal.getLine(duration);
26
+ const positions = obj.geometry.getAttribute("position");
27
+ positions.setXYZ(0, pt.x, pt.y, pt.z);
28
+ _tmp.set(direction.x, direction.y, direction.z);
29
+ _tmp.multiplyScalar(lengthFactor);
30
+ positions.setXYZ(1, pt.x + _tmp.x, pt.y + _tmp.y, pt.z + _tmp.z);
31
+ positions.needsUpdate = true;
32
+ obj.material["color"].set(color);
33
+ obj.material["depthTest"] = depthTest;
34
+
35
+ }
36
+
37
+ static DrawLine(pt0: { x: number, y: number, z: number }, pt1: { x: number, y: number, z: number }, color: ColorRepresentation = defaultColor, duration: number = 0, depthTest: boolean = true) {
23
38
  const obj = Internal.getLine(duration);
24
39
 
25
40
  const positions = obj.geometry.getAttribute("position");
@@ -30,14 +45,14 @@ export class Gizmos {
30
45
  obj.material["depthTest"] = depthTest;
31
46
  }
32
47
 
33
- static DrawWireSphere(center: { x: number, y: number, z: number }, radius: number, color: ColorRepresentation = 0x888888, duration: number = 0, depthTest: boolean = true) {
48
+ static DrawWireSphere(center: { x: number, y: number, z: number }, radius: number, color: ColorRepresentation = defaultColor, duration: number = 0, depthTest: boolean = true) {
34
49
  const obj = Internal.getSphere(radius, duration, true);
35
50
  setWorldPositionXYZ(obj, center.x, center.y, center.z);
36
51
  obj.material["color"].set(color);
37
52
  obj.material["depthTest"] = depthTest;
38
53
  }
39
54
 
40
- static DrawSphere(center: { x: number, y: number, z: number }, radius: number, color: ColorRepresentation = 0x888888, duration: number = 0, depthTest: boolean = true) {
55
+ static DrawSphere(center: { x: number, y: number, z: number }, radius: number, color: ColorRepresentation = defaultColor, duration: number = 0, depthTest: boolean = true) {
41
56
  const obj = Internal.getSphere(radius, duration, false);
42
57
  setWorldPositionXYZ(obj, center.x, center.y, center.z);
43
58
  obj.material["color"].set(color);
@@ -1,3 +1,4 @@
1
+ import { inverseLerp } from "three/src/math/MathUtils";
1
2
 
2
3
 
3
4
 
@@ -5,7 +6,7 @@ class MathHelper {
5
6
  random(): number {
6
7
  return Math.random();
7
8
  }
8
- clamp(value, min, max) {
9
+ clamp(value: number, min: number, max: number) {
9
10
 
10
11
  if (value < min) {
11
12
  return min;
@@ -16,26 +17,38 @@ class MathHelper {
16
17
 
17
18
  return value;
18
19
  }
19
- clamp01(value) {
20
+ clamp01(value: number) {
20
21
  return this.clamp(value, 0, 1);
21
22
  }
22
- lerp(value1, value2, amount) {
23
+
24
+ lerp(value1: number, value2: number, amount: number) {
23
25
  amount = amount < 0 ? 0 : amount;
24
26
  amount = amount > 1 ? 1 : amount;
25
27
  return value1 + (value2 - value1) * amount;
26
28
  }
27
- moveTowards(value1, value2, amount) {
29
+
30
+ remap(value: number, min1: number, max1: number, min2: number, max2: number) {
31
+ return min2 + (max2 - min2) * (value - min1) / (max1 - min1);
32
+ }
33
+
34
+ moveTowards(value1: number, value2: number, amount: number) {
28
35
  value1 += amount;
29
36
  if (amount < 0 && value1 < value2) value1 = value2;
30
37
  else if (amount > 0 && value1 > value2) value1 = value2;
31
38
  return value1;
32
39
  }
33
- toDegrees(radians) {
40
+ toDegrees(radians: number) {
34
41
  return radians * 180 / Math.PI;
35
42
  }
36
- toRadians(degrees) {
43
+ toRadians(degrees: number) {
37
44
  return degrees * Math.PI / 180;
38
45
  }
46
+ gammaToLinear(gamma: number) {
47
+ return Math.pow(gamma, 2.2);
48
+ }
49
+ linearToGamma(linear: number) {
50
+ return Math.pow(linear, 1 / 2.2);
51
+ }
39
52
  };
40
53
 
41
54
  const Mathf = new MathHelper();
@@ -17,6 +17,7 @@ import { foreachComponent } from './engine_gameobject';
17
17
 
18
18
  import RAPIER, { ActiveEvents, Collider, ColliderDesc, EventQueue, JointData, RigidBody, RigidBodyType, World } from '@dimforge/rapier3d-compat';
19
19
  import { CollisionDetectionMode } from '../engine/engine_physics.types';
20
+ import { Gizmos } from './engine_gizmos';
20
21
  export type Rapier = typeof RAPIER;
21
22
 
22
23
 
@@ -222,7 +223,7 @@ export class Physics {
222
223
 
223
224
  /** raycast against colliders */
224
225
  public raycastPhysicsFast(origin: Vec2 | Vec3, direction: Vec3 | undefined = undefined, maxDistance: number = Infinity, solid: boolean = true)
225
- : null | { point: Vector3, collider:ICollider } {
226
+ : null | { point: Vector3, collider: ICollider } {
226
227
 
227
228
  const ray = this.getPhysicsRay(this.rapierRay, origin, direction);
228
229
  if (!ray) return null;
@@ -858,7 +859,8 @@ class PhysicsCollisionHandler {
858
859
  // TODO: we dont respect the flip value here!
859
860
  this.world.contactPair(selfBody, otherBody, (manifold, _flipped) => {
860
861
  foreachComponent(object, (c: IComponent) => {
861
- if (c.onCollisionEnter || c.onCollisionStay || c.onCollisionExit) {
862
+ const hasDeclaredEventMethod = c.onCollisionEnter || c.onCollisionStay || c.onCollisionExit;
863
+ if (hasDeclaredEventMethod || debugCollisions) {
862
864
  if (!collision) {
863
865
  const contacts: Array<ContactPoint> = [];
864
866
  const normal = manifold.normal();
@@ -872,18 +874,26 @@ class PhysicsCollisionHandler {
872
874
  const friction = manifold.solverContactFriction(i);
873
875
  const contact = new ContactPoint(pt, dist, normal, impulse, friction);
874
876
  contacts.push(contact);
877
+ if (debugCollisions) {
878
+ Gizmos.DrawDirection(pt, normal, 0xff0000, 3, true);
879
+ }
875
880
  }
876
881
  }
877
882
  collision = new Collision(object, other, contacts);
878
883
  }
879
884
 
880
- const info = { collider: self, component: c, collision };
881
- this.activeCollisions.push(info);
882
- if (c.onCollisionStay) {
883
- this.activeCollisionsStay.push(info);
885
+ // we only need to keep track if any event exists
886
+ if (hasDeclaredEventMethod) {
887
+ const info = { collider: self, component: c, collision };
888
+
889
+ this.activeCollisions.push(info);
890
+ if (c.onCollisionStay) {
891
+ this.activeCollisionsStay.push(info);
892
+ }
893
+
894
+ c.onCollisionEnter?.call(c, collision);
884
895
  }
885
896
 
886
- c.onCollisionEnter?.call(c, collision);
887
897
  }
888
898
  });
889
899
  });
@@ -355,6 +355,7 @@ export function deserializeObject(obj: ISerializable, serializedData: object, co
355
355
  const blockChecks = getParam("noerrors");
356
356
  function checkObjectAssignments(obj: any, serializedData: any, implementationInformation?: ImplementationInformation) {
357
357
  if (blockChecks) return;
358
+ if(!serializedData) return;
358
359
  if (isLocalNetwork() === false) return;
359
360
  if (!obj) return;
360
361
 
@@ -363,4 +363,9 @@ export class Watch implements IWatch {
363
363
  }
364
364
  this._watches.length = 0;
365
365
  }
366
+ }
367
+
368
+
369
+ export function isMobileDevice() {
370
+ return (typeof window.orientation !== "undefined") || (navigator.userAgent.indexOf('IEMobile') !== -1);
366
371
  }
@@ -22,21 +22,35 @@ export class AnimationCurve {
22
22
 
23
23
  @serializeable(Keyframe)
24
24
  keys!: Array<Keyframe>;
25
-
26
- get duration() : number {
27
- if(!this.keys || this.keys.length == 0) return 0;
25
+
26
+ get duration(): number {
27
+ if (!this.keys || this.keys.length == 0) return 0;
28
28
  return this.keys[this.keys.length - 1].time;
29
- }
29
+ }
30
30
 
31
31
  evaluate(time: number): number {
32
- if(!this.keys || this.keys.length == 0) return 0;
33
- let lastKeyframe : Keyframe | null = null;
34
- for (const kf of this.keys) {
35
- if (lastKeyframe && kf.time > time && time > lastKeyframe!.time) {
36
- return Mathf.lerp(lastKeyframe!.value, kf.value, (time - lastKeyframe!.time) / (kf.time - lastKeyframe!.time));
32
+ if (!this.keys || this.keys.length == 0) return 0;
33
+ // if the first keyframe time is already greater than the time we want to evaluate
34
+ // then we dont need to iterate
35
+ if (this.keys[0].time > time) {
36
+ return this.keys[0].value;
37
+ }
38
+ for (let i = 0; i < this.keys.length; i++) {
39
+ const kf = this.keys[i];
40
+ if (kf.time < time) {
41
+ const hasNextKeyframe = i+1 < this.keys.length;
42
+ if (hasNextKeyframe) {
43
+ const nextKf = this.keys[i+1];
44
+ // if the next
45
+ if(nextKf.time < time) continue;
46
+ const t = Mathf.remap(time, kf.time, nextKf.time, 0, 1);
47
+ return Mathf.lerp(kf.value, nextKf.value, t);
48
+ }
49
+ else {
50
+ return kf.value;
51
+ }
37
52
  }
38
- lastKeyframe = kf;
39
53
  }
40
- return this.keys[this.keys.length-1].value;
54
+ return this.keys[this.keys.length - 1].value;
41
55
  }
42
56
  }