@needle-tools/engine 2.63.3-pre → 2.64.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 (100) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/needle-engine.js +9760 -9635
  3. package/dist/needle-engine.umd.cjs +237 -236
  4. package/lib/engine/engine_application.d.ts +7 -1
  5. package/lib/engine/engine_application.js +11 -0
  6. package/lib/engine/engine_application.js.map +1 -1
  7. package/lib/engine/engine_constants.d.ts +1 -1
  8. package/lib/engine/engine_constants.js +1 -1
  9. package/lib/engine/engine_constants.js.map +1 -1
  10. package/lib/engine/engine_gameobject.js +2 -2
  11. package/lib/engine/engine_gameobject.js.map +1 -1
  12. package/lib/engine/engine_instancing.d.ts +1 -0
  13. package/lib/engine/engine_instancing.js +3 -2
  14. package/lib/engine/engine_instancing.js.map +1 -1
  15. package/lib/engine/engine_license.js +14 -13
  16. package/lib/engine/engine_license.js.map +1 -1
  17. package/lib/engine/engine_mainloop_utils.js +27 -52
  18. package/lib/engine/engine_mainloop_utils.js.map +1 -1
  19. package/lib/engine/engine_physics.d.ts +1 -0
  20. package/lib/engine/engine_physics.js +30 -0
  21. package/lib/engine/engine_physics.js.map +1 -1
  22. package/lib/engine/engine_serialization_builtin_serializer.d.ts +1 -0
  23. package/lib/engine/engine_serialization_builtin_serializer.js +30 -25
  24. package/lib/engine/engine_serialization_builtin_serializer.js.map +1 -1
  25. package/lib/engine/engine_serialization_core.js +8 -0
  26. package/lib/engine/engine_serialization_core.js.map +1 -1
  27. package/lib/engine/engine_setup.d.ts +1 -1
  28. package/lib/engine/engine_setup.js.map +1 -1
  29. package/lib/engine/engine_time.d.ts +1 -0
  30. package/lib/engine/engine_time.js +5 -1
  31. package/lib/engine/engine_time.js.map +1 -1
  32. package/lib/engine/engine_types.d.ts +12 -0
  33. package/lib/engine/engine_types.js.map +1 -1
  34. package/lib/engine-components/Animation.js +6 -6
  35. package/lib/engine-components/Animation.js.map +1 -1
  36. package/lib/engine-components/AnimatorController.js +2 -0
  37. package/lib/engine-components/AnimatorController.js.map +1 -1
  38. package/lib/engine-components/AudioListener.js +2 -0
  39. package/lib/engine-components/AudioListener.js.map +1 -1
  40. package/lib/engine-components/AudioSource.d.ts +2 -1
  41. package/lib/engine-components/AudioSource.js +19 -4
  42. package/lib/engine-components/AudioSource.js.map +1 -1
  43. package/lib/engine-components/Component.d.ts +1 -0
  44. package/lib/engine-components/Component.js.map +1 -1
  45. package/lib/engine-components/GridHelper.d.ts +1 -0
  46. package/lib/engine-components/GridHelper.js +7 -0
  47. package/lib/engine-components/GridHelper.js.map +1 -1
  48. package/lib/engine-components/ParticleSystem.js +13 -1
  49. package/lib/engine-components/ParticleSystem.js.map +1 -1
  50. package/lib/engine-components/Renderer.d.ts +5 -1
  51. package/lib/engine-components/Renderer.js +78 -29
  52. package/lib/engine-components/Renderer.js.map +1 -1
  53. package/lib/engine-components/WebARSessionRoot.d.ts +1 -0
  54. package/lib/engine-components/WebARSessionRoot.js +10 -0
  55. package/lib/engine-components/WebARSessionRoot.js.map +1 -1
  56. package/lib/engine-components/js-extensions/Object3D.js +11 -1
  57. package/lib/engine-components/js-extensions/Object3D.js.map +1 -1
  58. package/lib/engine-components/timeline/PlayableDirector.d.ts +5 -0
  59. package/lib/engine-components/timeline/PlayableDirector.js +36 -23
  60. package/lib/engine-components/timeline/PlayableDirector.js.map +1 -1
  61. package/lib/engine-components/timeline/TimelineTracks.d.ts +9 -0
  62. package/lib/engine-components/timeline/TimelineTracks.js +121 -21
  63. package/lib/engine-components/timeline/TimelineTracks.js.map +1 -1
  64. package/lib/tsconfig.tsbuildinfo +1 -1
  65. package/package.json +2 -1
  66. package/src/engine/engine_application.ts +14 -3
  67. package/src/engine/engine_constants.ts +1 -1
  68. package/src/engine/engine_gameobject.ts +2 -2
  69. package/src/engine/engine_instancing.ts +3 -3
  70. package/src/engine/engine_license.ts +14 -13
  71. package/src/engine/engine_mainloop_utils.ts +32 -58
  72. package/src/engine/engine_physics.ts +23 -0
  73. package/src/engine/engine_serialization_builtin_serializer.ts +36 -27
  74. package/src/engine/engine_serialization_core.ts +8 -1
  75. package/src/engine/engine_setup.ts +1 -1
  76. package/src/engine/engine_time.ts +9 -4
  77. package/src/engine/engine_types.ts +36 -22
  78. package/src/engine-components/Animation.ts +6 -5
  79. package/src/engine-components/AnimatorController.ts +1 -0
  80. package/src/engine-components/AudioListener.ts +1 -0
  81. package/src/engine-components/AudioSource.ts +20 -6
  82. package/src/engine-components/Component.ts +3 -0
  83. package/src/engine-components/GridHelper.ts +10 -2
  84. package/src/engine-components/ParticleSystem.ts +15 -2
  85. package/src/engine-components/Renderer.ts +92 -33
  86. package/src/engine-components/WebARSessionRoot.ts +14 -0
  87. package/src/engine-components/js-extensions/Object3D.ts +11 -3
  88. package/src/engine-components/timeline/PlayableDirector.ts +35 -24
  89. package/src/engine-components/timeline/TimelineTracks.ts +132 -22
  90. package/src/tsconfig.json +33 -0
  91. package/src/engine/codegen/license.js +0 -1
  92. /package/{src/plugins → plugins}/vite/build.js +0 -0
  93. /package/{src/plugins → plugins}/vite/config.js +0 -0
  94. /package/{src/plugins → plugins}/vite/gzip.js +0 -0
  95. /package/{src/plugins → plugins}/vite/index.js +0 -0
  96. /package/{src/plugins → plugins}/vite/meta.js +0 -0
  97. /package/{src/plugins → plugins}/vite/poster-client.js +0 -0
  98. /package/{src/plugins → plugins}/vite/poster.js +0 -0
  99. /package/{src/plugins → plugins}/vite/reload-client.js +0 -0
  100. /package/{src/plugins → plugins}/vite/reload.js +0 -0
@@ -1,9 +1,15 @@
1
1
  import { Context } from "./engine_setup";
2
2
  export declare enum ApplicationEvents {
3
3
  Visible = "application-visible",
4
- Hidden = "application-hidden"
4
+ Hidden = "application-hidden",
5
+ MuteChanged = "application-mutechanged"
5
6
  }
6
7
  export declare class Application extends EventTarget {
8
+ private _mute;
9
+ /** audio muted? */
10
+ get muted(): boolean;
11
+ /** set global audio mute */
12
+ set muted(value: boolean);
7
13
  private context;
8
14
  get hasFocus(): boolean;
9
15
  get isVisible(): boolean;
@@ -2,8 +2,19 @@ export var ApplicationEvents;
2
2
  (function (ApplicationEvents) {
3
3
  ApplicationEvents["Visible"] = "application-visible";
4
4
  ApplicationEvents["Hidden"] = "application-hidden";
5
+ ApplicationEvents["MuteChanged"] = "application-mutechanged";
5
6
  })(ApplicationEvents || (ApplicationEvents = {}));
6
7
  export class Application extends EventTarget {
8
+ _mute = false;
9
+ /** audio muted? */
10
+ get muted() { return this._mute; }
11
+ /** set global audio mute */
12
+ set muted(value) {
13
+ if (value === this._mute)
14
+ return;
15
+ this._mute = value;
16
+ this.dispatchEvent(new Event(ApplicationEvents.MuteChanged));
17
+ }
7
18
  context;
8
19
  get hasFocus() {
9
20
  return document.hasFocus();
@@ -1 +1 @@
1
- {"version":3,"file":"engine_application.js","sourceRoot":"","sources":["../../../engine/engine_application.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IACzB,oDAA+B,CAAA;IAC/B,kDAA6B,CAAA;AACjC,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,QAG5B;AAED,MAAM,OAAO,WAAY,SAAQ,WAAW;IAEhC,OAAO,CAAW;IAE1B,IAAW,QAAQ;QACf,OAAO,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAEO,UAAU,GAAY,IAAI,CAAC;IAEnC,YAAY,OAAiB;QACzB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,sBAAsB;QACtB,MAAM,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;IAC3F,CAAC;IAEO,kBAAkB,CAAC,GAAG;QAC1B,0CAA0C;QAC1C,QAAQ,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE;YAChC,KAAK,QAAQ;gBACT,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;gBACxD,MAAM;YACV,KAAK,SAAS;gBACV,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;gBACzD,MAAM;SACb;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"engine_application.js","sourceRoot":"","sources":["../../../engine/engine_application.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IACzB,oDAA+B,CAAA;IAC/B,kDAA6B,CAAA;IAC7B,4DAAuC,CAAA;AAC3C,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,QAI5B;AAED,MAAM,OAAO,WAAY,SAAQ,WAAW;IAEhC,KAAK,GAAY,KAAK,CAAC;IAC/B,mBAAmB;IACnB,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAClC,4BAA4B;IAC5B,IAAI,KAAK,CAAC,KAAK;QACX,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK;YAAE,OAAO;QACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC;IACjE,CAAC;IAEO,OAAO,CAAU;IAEzB,IAAW,QAAQ;QACf,OAAO,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAEO,UAAU,GAAY,IAAI,CAAC;IAEnC,YAAY,OAAgB;QACxB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,sBAAsB;QACtB,MAAM,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;IAC3F,CAAC;IAEO,kBAAkB,CAAC,GAAG;QAC1B,0CAA0C;QAC1C,QAAQ,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE;YAChC,KAAK,QAAQ;gBACT,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;gBACxD,MAAM;YACV,KAAK,SAAS;gBACV,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;gBACzD,MAAM;SACb;IACL,CAAC;CACJ"}
@@ -1,2 +1,2 @@
1
- export declare const activeInHierarchyFieldName = "__isActiveInHierarchy";
1
+ export declare const activeInHierarchyFieldName: unique symbol;
2
2
  export declare const builtinComponentKeyName = "builtin_components";
@@ -1,3 +1,3 @@
1
- export const activeInHierarchyFieldName = "__isActiveInHierarchy";
1
+ export const activeInHierarchyFieldName = Symbol("isActiveInHierarchy");
2
2
  export const builtinComponentKeyName = "builtin_components";
3
3
  //# sourceMappingURL=engine_constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"engine_constants.js","sourceRoot":"","sources":["../../../engine/engine_constants.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,0BAA0B,GAAG,uBAAuB,CAAC;AAClE,MAAM,CAAC,MAAM,uBAAuB,GAAG,oBAAoB,CAAC"}
1
+ {"version":3,"file":"engine_constants.js","sourceRoot":"","sources":["../../../engine/engine_constants.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AACxE,MAAM,CAAC,MAAM,uBAAuB,GAAG,oBAAoB,CAAC"}
@@ -4,7 +4,7 @@ import { Context, registerComponent } from "./engine_setup";
4
4
  import { logHierarchy, setWorldPosition, setWorldQuaternion } from "./engine_three_utils";
5
5
  import { getParam, tryFindObject } from "./engine_utils";
6
6
  import { apply } from "../engine-components/js-extensions/Object3D";
7
- import { InstancingUtil } from "./engine_instancing";
7
+ import { $isUsingInstancing, InstancingUtil } from "./engine_instancing";
8
8
  import { activeInHierarchyFieldName } from "./engine_constants";
9
9
  import { assign } from "./engine_serialization_core";
10
10
  const debug = getParam("debuggetcomponent");
@@ -61,7 +61,7 @@ export function isActiveInHierarchy(go) {
61
61
  return go[activeInHierarchyFieldName] || isUsingInstancing(go);
62
62
  }
63
63
  export function markAsInstancedRendered(go, instanced) {
64
- go["__isUsingInstancing"] = instanced;
64
+ go[$isUsingInstancing] = instanced;
65
65
  }
66
66
  export function isUsingInstancing(instance) { return InstancingUtil.isUsingInstancing(instance); }
67
67
  export function findByGuid(guid, hierarchy) {
@@ -1 +1 @@
1
- {"version":3,"file":"engine_gameobject.js","sourceRoot":"","sources":["../../../engine/engine_gameobject.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_gameobject.js","sourceRoot":"","sources":["../../../engine/engine_gameobject.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export declare const NEED_UPDATE_INSTANCE_KEY: unique symbol;
2
+ export declare const $isUsingInstancing: unique symbol;
2
3
  export declare class InstancingUtil {
3
4
  static isUsingInstancing(instance: THREE.Object3D): boolean;
4
5
  static markDirty(go: THREE.Object3D | null, recursive?: boolean): void;
@@ -1,13 +1,14 @@
1
1
  export const NEED_UPDATE_INSTANCE_KEY = Symbol("NEEDLE_NEED_UPDATE_INSTANCE");
2
+ export const $isUsingInstancing = Symbol("isUsingInstancing");
2
3
  export class InstancingUtil {
3
- static isUsingInstancing(instance) { return instance["__isUsingInstancing"] === true; }
4
+ static isUsingInstancing(instance) { return instance[$isUsingInstancing] === true; }
4
5
  // TODO: change this so it does not set matrix world directly but some flag that is only used by instancing
5
6
  static markDirty(go, recursive = true) {
6
7
  if (!go)
7
8
  return;
8
9
  // potential optimization:
9
10
  // if(go.matrixWorldNeedsUpdate) return;
10
- // console.trace(go, GameObject.isUsingInstancing(go));
11
+ // console.warn("UPDATE", go);
11
12
  if (this.isUsingInstancing(go)) {
12
13
  go[NEED_UPDATE_INSTANCE_KEY] = true;
13
14
  go.matrixWorldNeedsUpdate = true;
@@ -1 +1 @@
1
- {"version":3,"file":"engine_instancing.js","sourceRoot":"","sources":["../../../engine/engine_instancing.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC,6BAA6B,CAAC,CAAC;AAI9E,MAAM,OAAO,cAAc;IAEvB,MAAM,CAAC,iBAAiB,CAAC,QAAwB,IAAa,OAAO,QAAQ,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;IAEhH,2GAA2G;IAC3G,MAAM,CAAC,SAAS,CAAC,EAAyB,EAAE,YAAqB,IAAI;QACjE,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,0BAA0B;QAC1B,wCAAwC;QACxC,uDAAuD;QACvD,IAAI,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE;YAC5B,EAAE,CAAC,wBAAwB,CAAC,GAAG,IAAI,CAAC;YACpC,EAAE,CAAC,sBAAsB,GAAG,IAAI,CAAC;SACpC;QACD,IAAI,SAAS,EAAE;YACX,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,QAAQ,EAAE;gBAC7B,cAAc,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aACzC;SACJ;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"engine_instancing.js","sourceRoot":"","sources":["../../../engine/engine_instancing.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC,6BAA6B,CAAC,CAAC;AAE9E,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAE9D,MAAM,OAAO,cAAc;IAEvB,MAAM,CAAC,iBAAiB,CAAC,QAAwB,IAAa,OAAO,QAAQ,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;IAE7G,2GAA2G;IAC3G,MAAM,CAAC,SAAS,CAAC,EAAyB,EAAE,YAAqB,IAAI;QACjE,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,0BAA0B;QAC1B,wCAAwC;QACxC,8BAA8B;QAC9B,IAAI,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE;YAC5B,EAAE,CAAC,wBAAwB,CAAC,GAAG,IAAI,CAAC;YACpC,EAAE,CAAC,sBAAsB,GAAG,IAAI,CAAC;SACpC;QACD,IAAI,SAAS,EAAE;YACX,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,QAAQ,EAAE;gBAC7B,cAAc,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aACzC;SACJ;IACL,CAAC;CACJ"}
@@ -38,7 +38,7 @@ async function showLicenseInfo(ctx) {
38
38
  onNonCommercialVersionDetected(ctx);
39
39
  }
40
40
  const _licenseText = "🌵 <span class=\"text\">Made with <a href=\"https://needle.tools\" target=\"_blank\">Needle</a></span>";
41
- const licenseElementClass = "needle-license-element";
41
+ const licenseElementIdentifier = "needle-license-element";
42
42
  const licenseDuration = 30000;
43
43
  const licenseDelay = 600;
44
44
  function onNonCommercialVersionDetected(ctx) {
@@ -68,6 +68,7 @@ function insertNonCommercialUseHint(ctx) {
68
68
  setTimeout(() => {
69
69
  clearInterval(interval);
70
70
  licenseElement?.remove();
71
+ style?.remove();
71
72
  }, removeDelay);
72
73
  }
73
74
  async function logNonCommercialUse(_logo) {
@@ -84,8 +85,7 @@ async function logNonCommercialUse(_logo) {
84
85
  }
85
86
  function createLicenseElement() {
86
87
  const licenseElement = document.createElement("div");
87
- licenseElement.classList.add(licenseElementClass);
88
- licenseElement.setAttribute("data-needle_engine_license_element", "");
88
+ licenseElement.setAttribute(licenseElementIdentifier, "");
89
89
  licenseElement.style.position = "fixed";
90
90
  licenseElement.style.bottom = "12px";
91
91
  licenseElement.style.right = "15px";
@@ -97,10 +97,8 @@ function createLicenseElement() {
97
97
  // TODO: would be better to put this into a web element and use shadow dom
98
98
  function createLicenseStyle() {
99
99
  const licenseStyle = document.createElement("style");
100
- const selector = "." + licenseElementClass;
100
+ const selector = `div[${licenseElementIdentifier}]`;
101
101
  licenseStyle.innerHTML = `
102
- @import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;500&display=swap');
103
-
104
102
  ${selector} {
105
103
  font-family: 'Roboto', sans-serif !important;
106
104
  font-weight: 300;
@@ -130,23 +128,26 @@ function createLicenseStyle() {
130
128
  opacity: .9;
131
129
  }
132
130
  2% {
133
- transform: translate(0, 3px);
131
+ transform: translate(0, 2.5px);
134
132
  }
135
- 6% {
133
+ 3% {
136
134
  transform: translate(0, 0px);
137
135
  pointer-events: all;
138
136
  opacity: 1;
139
137
  }
140
- 50% {
138
+ 4% {
141
139
  transform: scale(1)
142
140
  }
143
- 51% {
144
- transform: scale(1.2)
141
+ 4.5% {
142
+ transform: scale(1.3)
143
+ }
144
+ 6% {
145
+ transform: scale(1.32)
145
146
  }
146
- 53% {
147
+ 7% {
147
148
  transform: scale(1)
148
149
  }
149
- 90% {
150
+ 98% {
150
151
  opacity: 1;
151
152
  pointer-events: all;
152
153
  transform: scale(1)
@@ -1 +1 @@
1
- {"version":3,"file":"engine_license.js","sourceRoot":"","sources":["../../../engine/engine_license.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_license.js","sourceRoot":"","sources":["../../../engine/engine_license.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { CubeCamera, WebGLCubeRenderTarget } from 'three';
5
5
  import { isActiveSelf } from './engine_gameobject';
6
6
  import { ContextRegistry } from "./engine_context_registry";
7
7
  const debug = getParam("debugnewscripts");
8
+ const debugHierarchy = getParam("debughierarchy");
8
9
  // if some other script adds new scripts in onEnable or awake
9
10
  // the original array should be cleared before processing it
10
11
  // so we use this copy buffer
@@ -215,8 +216,6 @@ function removeFromArray(script, array) {
215
216
  if (index >= 0)
216
217
  array.splice(index, 1);
217
218
  }
218
- const previousActiveMap = {};
219
- const previousActiveInHierarchyMap = {};
220
219
  export function updateIsActive(obj) {
221
220
  if (!obj)
222
221
  obj = ContextRegistry.Current.scene;
@@ -226,62 +225,39 @@ export function updateIsActive(obj) {
226
225
  }
227
226
  updateIsActiveInHierarchyRecursiveRuntime(obj, isActiveSelf(obj), true);
228
227
  }
229
- // const $wasSetVisibleBefore = Symbol("wasSetVisibleBefore");
230
228
  function updateIsActiveInHierarchyRecursiveRuntime(go, activeInHierarchy, allowEventCall) {
231
- let activeStateChanged = false;
232
- const active = isActiveSelf(go);
233
- // this is a test if we dont control active state from visibility and set
234
- // active to true by default (even if the object is invisible) in engine_gameobjects:isActiveSelf
235
- // then we need to check if the object is set to visible for the first time
236
- // const visible = go.visible;
237
- // if (!active && visible) {
238
- // if (!go[$wasSetVisibleBefore]) {
239
- // go[$wasSetVisibleBefore] = true;
240
- // setActive(go, true);
241
- // }
242
- // }
243
- // if (activeInHierarchy) {
244
- // const prevActive = previousActiveMap[go.uuid];
245
- // if (prevActive !== undefined) {
246
- // if (prevActive !== active) {
247
- // activeStateChanged = true;
248
- // if (allowEventCall) {
249
- // perComponent(go, comp => {
250
- // if (active) {
251
- // utils.safeInvoke(comp.__internalAwake.bind(comp));
252
- // comp.onEnable();
253
- // }
254
- // else comp.onDisable();
255
- // });
256
- // }
257
- // }
258
- // }
259
- // }
260
- previousActiveMap[go.uuid] = active;
261
- if (activeInHierarchy)
229
+ if (activeInHierarchy) {
262
230
  activeInHierarchy = isActiveSelf(go);
231
+ // IF we update activeInHierarchy within a disabled hierarchy we need to check the parent
232
+ if (activeInHierarchy && go.parent) {
233
+ activeInHierarchy = go.parent[constants.activeInHierarchyFieldName];
234
+ }
235
+ }
236
+ const prevActive = go[constants.activeInHierarchyFieldName];
237
+ const changed = prevActive !== activeInHierarchy;
263
238
  go[constants.activeInHierarchyFieldName] = activeInHierarchy;
264
239
  // only raise events here if we didnt call enable etc already
265
- if (!activeStateChanged) {
266
- const prevActiveInHierarchy = previousActiveInHierarchyMap[go.uuid];
267
- if (prevActiveInHierarchy !== undefined) {
268
- if (prevActiveInHierarchy !== activeInHierarchy) {
269
- // console.log("CHANGE", go.name, activeInHierarchy);
270
- if (allowEventCall) {
271
- perComponent(go, comp => {
272
- if (activeInHierarchy) {
273
- utils.safeInvoke(comp.__internalAwake.bind(comp));
274
- comp.enabled = true;
275
- // comp.onEnable();
276
- }
277
- else
278
- comp.enabled = false;
279
- });
240
+ if (changed) {
241
+ if (debugHierarchy)
242
+ console.warn("ACTIVE CHANGE", go.name, activeInHierarchy, "changed?" + changed, go.userData.components, go.children, go);
243
+ if (allowEventCall) {
244
+ perComponent(go, comp => {
245
+ if (activeInHierarchy) {
246
+ if (comp.enabled) {
247
+ utils.safeInvoke(comp.__internalAwake.bind(comp));
248
+ comp["__didEnable"] = true;
249
+ comp.onEnable();
250
+ }
280
251
  }
281
- }
252
+ else {
253
+ if (comp["__didAwake"]) {
254
+ comp["__didEnable"] = false;
255
+ comp.onDisable();
256
+ }
257
+ }
258
+ });
282
259
  }
283
260
  }
284
- previousActiveInHierarchyMap[go.uuid] = activeInHierarchy;
285
261
  if (go.children) {
286
262
  for (const ch of go.children) {
287
263
  updateIsActiveInHierarchyRecursiveRuntime(ch, activeInHierarchy, allowEventCall);
@@ -307,7 +283,6 @@ export function updateActiveInHierarchyWithoutEventCall(go) {
307
283
  console.error("GO is null");
308
284
  return;
309
285
  }
310
- previousActiveInHierarchyMap[go.uuid] = activeInHierarchy;
311
286
  go[constants.activeInHierarchyFieldName] = activeInHierarchy && foundScene;
312
287
  }
313
288
  function perComponent(go, evt) {
@@ -1 +1 @@
1
- {"version":3,"file":"engine_mainloop_utils.js","sourceRoot":"","sources":["../../../engine/engine_mainloop_utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_mainloop_utils.js","sourceRoot":"","sources":["../../../engine/engine_mainloop_utils.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,7 @@ export declare class Physics {
50
50
  collider: ICollider;
51
51
  };
52
52
  private getPhysicsRay;
53
+ enabled: boolean;
53
54
  private _tempPosition;
54
55
  private _tempQuaternion;
55
56
  private _tempScale;
@@ -11,6 +11,7 @@ const debugPhysics = getParam("debugphysics");
11
11
  const debugColliderPlacement = getParam("debugphysicscolliders");
12
12
  const debugCollisions = getParam("debugcollisions");
13
13
  const showColliders = getParam("showcolliders");
14
+ const noPhysics = getParam("nophysics");
14
15
  /** on physics body and references the needle component */
15
16
  const $componentKey = Symbol("needle component");
16
17
  /** on needle component and references physics body */
@@ -242,6 +243,7 @@ export class Physics {
242
243
  return ray;
243
244
  }
244
245
  // physics simulation
246
+ enabled = true;
245
247
  _tempPosition = new Vector3();
246
248
  _tempQuaternion = new Quaternion();
247
249
  _tempScale = new Vector3();
@@ -271,6 +273,8 @@ export class Physics {
271
273
  Physics._didLoadPhysicsEngine = true;
272
274
  }
273
275
  this.world = new World(this._gravity);
276
+ if (noPhysics)
277
+ this.enabled = false;
274
278
  }
275
279
  _gravity = { x: 0.0, y: -9.81, z: 0.0 };
276
280
  get gravity() {
@@ -288,6 +292,11 @@ export class Physics {
288
292
  this._meshCache.clear();
289
293
  }
290
294
  addBoxCollider(collider, center, size) {
295
+ if (!this.enabled) {
296
+ if (debugPhysics)
297
+ console.warn("Physics is disabled");
298
+ return;
299
+ }
291
300
  const obj = collider.gameObject;
292
301
  const scale = getWorldScale(obj, this._tempPosition).multiply(size);
293
302
  scale.multiplyScalar(0.5);
@@ -295,12 +304,22 @@ export class Physics {
295
304
  this.createCollider(collider, desc, center);
296
305
  }
297
306
  addSphereCollider(collider, center, radius) {
307
+ if (!this.enabled) {
308
+ if (debugPhysics)
309
+ console.warn("Physics is disabled");
310
+ return;
311
+ }
298
312
  const obj = collider.gameObject;
299
313
  const scale = getWorldScale(obj, this._tempPosition).multiplyScalar(radius);
300
314
  const desc = ColliderDesc.ball(scale.x);
301
315
  this.createCollider(collider, desc, center);
302
316
  }
303
317
  addCapsuleCollider(collider, center, height, radius) {
318
+ if (!this.enabled) {
319
+ if (debugPhysics)
320
+ console.warn("Physics is disabled");
321
+ return;
322
+ }
304
323
  const obj = collider.gameObject;
305
324
  const scale = getWorldScale(obj, this._tempPosition);
306
325
  if (debugPhysics)
@@ -309,6 +328,11 @@ export class Physics {
309
328
  this.createCollider(collider, desc, center);
310
329
  }
311
330
  addMeshCollider(collider, mesh, convex, scale) {
331
+ if (!this.enabled) {
332
+ if (debugPhysics)
333
+ console.warn("Physics is disabled");
334
+ return;
335
+ }
312
336
  const geo = mesh.geometry;
313
337
  if (!geo) {
314
338
  if (debugPhysics)
@@ -491,6 +515,8 @@ export class Physics {
491
515
  }
492
516
  }
493
517
  updateBody(comp, translation, rotation) {
518
+ if (!this.enabled)
519
+ return;
494
520
  if (comp.destroyed || !comp.gameObject)
495
521
  return;
496
522
  if (!translation && !rotation)
@@ -547,6 +573,8 @@ export class Physics {
547
573
  step(dt) {
548
574
  if (!this.world)
549
575
  return;
576
+ if (!this.enabled)
577
+ return;
550
578
  this._isUpdatingPhysicsWorld = true;
551
579
  if (!this.eventQueue) {
552
580
  this.eventQueue = new EventQueue(false);
@@ -579,6 +607,8 @@ export class Physics {
579
607
  postStep() {
580
608
  if (!this.world)
581
609
  return;
610
+ if (!this.enabled)
611
+ return;
582
612
  this._isUpdatingPhysicsWorld = true;
583
613
  this.syncObjects();
584
614
  this._isUpdatingPhysicsWorld = false;