@needle-tools/engine 2.29.0-pre → 2.31.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 (101) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/needle-engine.d.ts +847 -757
  3. package/dist/needle-engine.js +347 -343
  4. package/dist/needle-engine.js.map +4 -4
  5. package/dist/needle-engine.min.js +16 -12
  6. package/dist/needle-engine.min.js.map +4 -4
  7. package/lib/engine/engine.d.ts +1 -0
  8. package/lib/engine/engine_physics.d.ts +19 -8
  9. package/lib/engine/engine_physics.js +57 -48
  10. package/lib/engine/engine_physics.js.map +1 -1
  11. package/lib/engine/engine_serialization.d.ts +1 -0
  12. package/lib/engine/engine_serialization.js +1 -0
  13. package/lib/engine/engine_serialization.js.map +1 -1
  14. package/lib/engine/engine_setup.d.ts +5 -0
  15. package/lib/engine/engine_setup.js +6 -0
  16. package/lib/engine/engine_setup.js.map +1 -1
  17. package/lib/engine/engine_utils.d.ts +1 -1
  18. package/lib/engine/engine_utils.js +25 -8
  19. package/lib/engine/engine_utils.js.map +1 -1
  20. package/lib/engine/extensions/NEEDLE_deferred_texture.d.ts +1 -1
  21. package/lib/engine/extensions/NEEDLE_deferred_texture.js +26 -14
  22. package/lib/engine/extensions/NEEDLE_deferred_texture.js.map +1 -1
  23. package/lib/engine/extensions/extension_utils.js +24 -13
  24. package/lib/engine/extensions/extension_utils.js.map +1 -1
  25. package/lib/engine/extensions/extensions.js +3 -1
  26. package/lib/engine/extensions/extensions.js.map +1 -1
  27. package/lib/engine-components/Camera.js +7 -1
  28. package/lib/engine-components/Camera.js.map +1 -1
  29. package/lib/engine-components/Component.d.ts +10 -0
  30. package/lib/engine-components/Component.js +53 -0
  31. package/lib/engine-components/Component.js.map +1 -1
  32. package/lib/engine-components/OrbitControls.js +2 -1
  33. package/lib/engine-components/OrbitControls.js.map +1 -1
  34. package/lib/engine-components/Renderer.d.ts +1 -0
  35. package/lib/engine-components/Renderer.js +10 -3
  36. package/lib/engine-components/Renderer.js.map +1 -1
  37. package/lib/engine-components/Rigidbody.d.ts +1 -1
  38. package/lib/engine-components/Rigidbody.js +3 -3
  39. package/lib/engine-components/Rigidbody.js.map +1 -1
  40. package/lib/engine-components/ScreenCapture.d.ts +35 -5
  41. package/lib/engine-components/ScreenCapture.js +542 -25
  42. package/lib/engine-components/ScreenCapture.js.map +1 -1
  43. package/lib/engine-components/SpectatorCamera.js +29 -5
  44. package/lib/engine-components/SpectatorCamera.js.map +1 -1
  45. package/lib/engine-components/SyncedRoom.js +2 -0
  46. package/lib/engine-components/SyncedRoom.js.map +1 -1
  47. package/lib/engine-components/VideoPlayer.d.ts +14 -1
  48. package/lib/engine-components/VideoPlayer.js +86 -16
  49. package/lib/engine-components/VideoPlayer.js.map +1 -1
  50. package/lib/engine-components/Volume.d.ts +4 -0
  51. package/lib/engine-components/Volume.js +44 -3
  52. package/lib/engine-components/Volume.js.map +1 -1
  53. package/lib/engine-components/WebARSessionRoot.d.ts +9 -2
  54. package/lib/engine-components/WebARSessionRoot.js +69 -24
  55. package/lib/engine-components/WebARSessionRoot.js.map +1 -1
  56. package/lib/engine-components/WebXR.d.ts +6 -3
  57. package/lib/engine-components/WebXR.js +42 -7
  58. package/lib/engine-components/WebXR.js.map +1 -1
  59. package/lib/engine-components/WebXRAvatar.js +4 -0
  60. package/lib/engine-components/WebXRAvatar.js.map +1 -1
  61. package/lib/engine-components/WebXRController.js +13 -7
  62. package/lib/engine-components/WebXRController.js.map +1 -1
  63. package/lib/engine-components/ui/CanvasGroup.d.ts +1 -0
  64. package/lib/engine-components/ui/CanvasGroup.js +1 -0
  65. package/lib/engine-components/ui/CanvasGroup.js.map +1 -1
  66. package/lib/engine-components/ui/EventSystem.js +13 -4
  67. package/lib/engine-components/ui/EventSystem.js.map +1 -1
  68. package/lib/engine-components/ui/Graphic.d.ts +1 -0
  69. package/lib/engine-components/ui/Graphic.js +2 -0
  70. package/lib/engine-components/ui/Graphic.js.map +1 -1
  71. package/lib/engine-components/ui/Interfaces.d.ts +2 -0
  72. package/lib/needle-engine.d.ts +1 -0
  73. package/lib/needle-engine.js +1 -0
  74. package/lib/needle-engine.js.map +1 -1
  75. package/package.json +2 -2
  76. package/src/engine/engine_physics.ts +74 -57
  77. package/src/engine/engine_serialization.ts +3 -1
  78. package/src/engine/engine_setup.ts +6 -0
  79. package/src/engine/engine_utils.ts +34 -8
  80. package/src/engine/extensions/NEEDLE_deferred_texture.ts +25 -19
  81. package/src/engine/extensions/extension_utils.ts +24 -12
  82. package/src/engine/extensions/extensions.ts +3 -2
  83. package/src/engine-components/Camera.ts +9 -2
  84. package/src/engine-components/Component.ts +58 -0
  85. package/src/engine-components/OrbitControls.ts +2 -1
  86. package/src/engine-components/Renderer.ts +11 -3
  87. package/src/engine-components/RigidBody.ts +2 -2
  88. package/src/engine-components/ScreenCapture.ts +610 -28
  89. package/src/engine-components/SpectatorCamera.ts +28 -5
  90. package/src/engine-components/SyncedRoom.ts +1 -0
  91. package/src/engine-components/VideoPlayer.ts +123 -23
  92. package/src/engine-components/Volume.ts +47 -4
  93. package/src/engine-components/WebARSessionRoot.ts +78 -28
  94. package/src/engine-components/WebXR.ts +50 -15
  95. package/src/engine-components/WebXRAvatar.ts +5 -0
  96. package/src/engine-components/WebXRController.ts +20 -14
  97. package/src/engine-components/ui/CanvasGroup.ts +2 -0
  98. package/src/engine-components/ui/EventSystem.ts +21 -15
  99. package/src/engine-components/ui/Graphic.ts +3 -0
  100. package/src/engine-components/ui/Interfaces.ts +2 -0
  101. package/src/needle-engine.ts +1 -0
@@ -1,21 +1,23 @@
1
1
  import { TextureLoader } from "three";
2
2
  import { GLTFLoader } from "three/examples/jsm/loaders/GLTFLoader";
3
3
  import { addDracoAndKTX2Loaders } from "../engine_loaders";
4
- import { getParam } from "../engine_utils";
4
+ import { getParam, getPath } from "../engine_utils";
5
5
  export const EXTENSION_NAME = "NEEDLE_deferred_texture";
6
6
  const debug = getParam("debugdeferredtextures");
7
7
  export class NEEDLE_deferred_texture {
8
- static assignTextureLOD(context, material, level = 0) {
8
+ static assignTextureLOD(context, source, material, level = 0) {
9
9
  if (!material)
10
10
  return;
11
11
  for (const slot of Object.keys(material)) {
12
12
  const val = material[slot];
13
13
  if (val?.isTexture === true) {
14
14
  if (debug)
15
- console.log("FIND", slot, val?.name, val?.userData, val);
16
- NEEDLE_deferred_texture.getOrLoadTexture(context, material, slot, val, level).then(t => {
15
+ console.log("-----------\n", "FIND", material.name, slot, val?.name, val?.userData, val);
16
+ NEEDLE_deferred_texture.getOrLoadTexture(context, source, material, slot, val, level).then(t => {
17
17
  if (t?.isTexture === true) {
18
18
  t.needsUpdate = true;
19
+ if (debug)
20
+ console.log("Assign LOD", material.name, slot, t.name, t["guid"], material, "Prev:", val, "Now:", t, "\n--------------");
19
21
  material[slot] = t;
20
22
  material.needsUpdate = true;
21
23
  }
@@ -49,7 +51,7 @@ export class NEEDLE_deferred_texture {
49
51
  // }
50
52
  afterRoot(gltf) {
51
53
  if (debug)
52
- console.log("AFTER", gltf);
54
+ console.log("AFTER", this.sourceId, gltf);
53
55
  this.parser.json.textures?.forEach((textureInfo, index) => {
54
56
  if (textureInfo?.extensions) {
55
57
  const ext = textureInfo?.extensions[EXTENSION_NAME];
@@ -69,27 +71,32 @@ export class NEEDLE_deferred_texture {
69
71
  }
70
72
  static cache = new Map();
71
73
  static resolved = {};
72
- static async getOrLoadTexture(context, material, slot, current, _level) {
74
+ static async getOrLoadTexture(context, source, material, slot, current, _level) {
73
75
  const key = current.uuid;
74
- const ext = NEEDLE_deferred_texture.cache.get(key) || current.userData.deferred;
76
+ const ext = NEEDLE_deferred_texture.cache.get(key); // || current.userData.deferred;
75
77
  if (ext) {
76
78
  if (debug)
77
79
  console.log(key, ext.uri, ext.guid);
78
- const uri = ext.uri;
80
+ const uri = getPath(source, ext.uri);
79
81
  if (uri.endsWith(".glb") || uri.endsWith(".gltf")) {
80
82
  if (!ext.guid) {
81
83
  console.warn("missing pointer for glb/gltf texture", ext);
82
84
  return null;
83
85
  }
84
- const resolveKey = ext.uri + "_" + ext.guid;
85
- if (this.resolved[resolveKey])
86
+ const resolveKey = uri + "_" + ext.guid;
87
+ if (this.resolved[resolveKey]) {
88
+ if (debug)
89
+ console.log("Texture has already been loaded: " + resolveKey, material.name, slot, current.name);
86
90
  return this.resolved[resolveKey];
91
+ }
87
92
  const loader = new GLTFLoader();
88
93
  addDracoAndKTX2Loaders(loader, context);
89
94
  if (debug)
90
- console.log("Load " + uri, material.name, slot);
95
+ console.log("Load " + uri, material.name, slot, ext.guid);
91
96
  const gltf = await loader.loadAsync(uri);
92
97
  const parser = gltf.parser;
98
+ if (debug)
99
+ console.log("Loading finished " + uri, material.name, slot, ext.guid);
93
100
  let index = -1;
94
101
  let found = false;
95
102
  for (const tex of gltf.parser.json.textures) {
@@ -112,19 +119,24 @@ export class NEEDLE_deferred_texture {
112
119
  return null;
113
120
  // const index = Number.parseInt(ext.pointer.substring("textures/".length));
114
121
  const tex = await parser.getDependency("texture", index);
122
+ if (tex) {
123
+ tex.guid = ext.guid;
124
+ }
115
125
  this.resolved[resolveKey] = tex;
116
126
  if (debug)
117
- console.log(material.name, slot, "change \"" + current.name + "\" → \"" + tex.name + "\"", uri, index, tex, material);
127
+ console.log(material.name, slot, "change \"" + current.name + "\" → \"" + tex.name + "\"", uri, index, tex, material, resolveKey);
118
128
  return tex;
119
129
  }
120
130
  else {
131
+ if (debug)
132
+ console.log("Load texture from uri: " + uri);
121
133
  const loader = new TextureLoader();
122
- const loaded = await loader.loadAsync(ext.uri);
134
+ const loaded = await loader.loadAsync(uri);
123
135
  if (loaded && debug) {
124
136
  console.log(ext, loaded);
125
137
  }
126
138
  else
127
- console.warn("failed loading", ext.uri);
139
+ console.warn("failed loading", uri);
128
140
  return loaded;
129
141
  }
130
142
  // loader.then((h: Texture) => {
@@ -1 +1 @@
1
- {"version":3,"file":"NEEDLE_deferred_texture.js","sourceRoot":"","sources":["../../../../engine/extensions/NEEDLE_deferred_texture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,aAAa,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAQ,UAAU,EAAgC,MAAM,uCAAuC,CAAC;AAGvG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,MAAM,CAAC,MAAM,cAAc,GAAG,yBAAyB,CAAC;AAExD,MAAM,KAAK,GAAG,QAAQ,CAAC,uBAAuB,CAAC,CAAA;AAQ/C,MAAM,OAAO,uBAAuB;IAEhC,MAAM,CAAC,gBAAgB,CAAC,OAAgB,EAAE,QAAkB,EAAE,QAAgB,CAAC;QAC3E,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YACtC,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,GAAG,EAAE,SAAS,KAAK,IAAI,EAAE;gBACzB,IAAI,KAAK;oBACL,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;gBAC7D,uBAAuB,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;oBACnF,IAAI,CAAC,EAAE,SAAS,KAAK,IAAI,EAAE;wBACvB,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC;wBACrB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBACnB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;qBAC/B;gBACL,CAAC,CAAC,CAAC;aACN;SACJ;IACL,CAAC;IAGD,IAAI,IAAI;QACJ,OAAO,cAAc,CAAC;IAC1B,CAAC;IAEO,MAAM,CAAa;IACnB,QAAQ,CAAmB;IAC3B,OAAO,CAAU;IAEzB,YAAY,MAAkB,EAAE,QAA0B,EAAE,OAAgB;QACxE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAEO,QAAQ,GAAa,EAAE,CAAC;IAEhC,uBAAuB;IACvB,+CAA+C;IAC/C,mBAAmB;IACnB,IAAI;IAEJ,wDAAwD;IACxD,yCAAyC;IACzC,sDAAsD;IACtD,4DAA4D;IAC5D,iBAAiB;IACjB,2CAA2C;IAC3C,mBAAmB;IACnB,IAAI;IAEJ,SAAS,CAAC,IAAU;QAEhB,IAAI,KAAK;YACL,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE;YACtD,IAAI,WAAW,EAAE,UAAU,EAAE;gBACzB,MAAM,GAAG,GAAyB,WAAW,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;gBAC1E,IAAI,GAAG,EAAE;oBACL,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;oBACzD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;oBACtD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;wBACV,IAAI,KAAK;4BAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;wBAChE,CAAC,CAAC,QAAQ,CAAC,QAAQ,GAAG,GAAG,CAAC;wBAC1B,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;oBACnD,CAAC,CAAC,CAAC;iBACN;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,MAAM,CAAC,KAAK,GAAG,IAAI,GAAG,EAAgC,CAAC;IACvD,MAAM,CAAC,QAAQ,GAA+B,EAAE,CAAC;IAEjD,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAgB,EAAE,QAAkB,EAAE,IAAY,EAAE,OAAgB,EAAE,MAAc;QAEtH,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,MAAM,GAAG,GAAyB,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACtG,IAAI,GAAG,EAAE;YACL,IAAI,KAAK;gBACL,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;YACpB,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBAC/C,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;oBACX,OAAO,CAAC,IAAI,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAC;oBAC1D,OAAO,IAAI,CAAC;iBACf;gBACD,MAAM,UAAU,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC;gBAC5C,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;oBACzB,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBAErC,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;gBAChC,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBACxC,IAAI,KAAK;oBAAE,OAAO,CAAC,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC3D,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACzC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;gBAE3B,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;gBACf,IAAI,KAAK,GAAG,KAAK,CAAC;gBAClB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE;oBACzC,KAAK,EAAE,CAAC;oBACR,IAAI,GAAG,EAAE,UAAU,EAAE;wBACjB,MAAM,KAAK,GAAyB,GAAG,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;wBACpE,IAAI,KAAK,EAAE,IAAI,EAAE;4BACb,IAAI,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,EAAE;gCACzB,KAAK,GAAG,IAAI,CAAC;gCACb,MAAM;gCACN,aAAa;gCACb,6HAA6H;gCAC7H,8CAA8C;gCAC9C,cAAc;6BACjB;yBACJ;qBACJ;iBACJ;gBACD,IAAI,CAAC,KAAK;oBACN,OAAO,IAAI,CAAC;gBAEhB,4EAA4E;gBAC5E,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBACzD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,GAAc,CAAC;gBAE3C,IAAI,KAAK;oBACL,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,GAAG,SAAS,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;gBAC1H,OAAO,GAAG,CAAC;aACd;iBACI;gBAED,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;gBACnC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC/C,IAAI,MAAM,IAAI,KAAK,EAAE;oBACjB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;iBAC5B;;oBACI,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC7C,OAAO,MAAM,CAAC;aACjB;YACD,gCAAgC;YAChC,4BAA4B;YAC5B,4BAA4B;YAC5B,iFAAiF;YACjF,4BAA4B;YAE5B,iCAAiC;YACjC,yBAAyB;YACzB,4BAA4B;YAC5B,8BAA8B;YAC9B,+BAA+B;YAC/B,MAAM;SACT;aACI;YACD,IAAI,KAAK;gBACL,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SACzE;QACD,OAAO,IAAI,CAAC;IAChB,CAAC"}
1
+ {"version":3,"file":"NEEDLE_deferred_texture.js","sourceRoot":"","sources":["../../../../engine/extensions/NEEDLE_deferred_texture.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,19 @@
1
1
  import { debugExtension } from "../engine_default_parameters";
2
2
  import { getParam } from "../engine_utils";
3
3
  const debug = getParam("debugresolvedependencies");
4
- const rootExtensionPrefix = "/extensions/";
4
+ const rootExtensionPrefix = ["/extensions/", "extensions/"];
5
5
  const defaultDependencies = [
6
6
  { prefix: "/nodes/", dependencyName: "node" },
7
7
  { prefix: "/meshes/", dependencyName: "mesh" },
8
8
  { prefix: "/materials/", dependencyName: "material" },
9
9
  { prefix: "/textures/", dependencyName: "texture" },
10
- { prefix: "/animations/", dependencyName: "animation" }
10
+ { prefix: "/animations/", dependencyName: "animation" },
11
+ // legacy support
12
+ { prefix: "nodes/", dependencyName: "node" },
13
+ { prefix: "meshes/", dependencyName: "mesh" },
14
+ { prefix: "materials/", dependencyName: "material" },
15
+ { prefix: "textures/", dependencyName: "texture" },
16
+ { prefix: "animations/", dependencyName: "animation" },
11
17
  ];
12
18
  export async function resolveReferences(parser, obj) {
13
19
  if (debug)
@@ -87,17 +93,22 @@ function internalResolve(paths, parser, obj, promises) {
87
93
  }
88
94
  }
89
95
  function resolveExtension(parser, str) {
90
- if (parser && parser.plugins && typeof str === "string" && str.startsWith(rootExtensionPrefix)) {
91
- let name = str.substring(rootExtensionPrefix.length);
92
- const endIndex = name.indexOf("/");
93
- if (endIndex >= 0)
94
- name = name.substring(0, endIndex);
95
- const ext = parser.plugins[name];
96
- if (debugExtension)
97
- console.log(name, ext);
98
- if (typeof ext?.resolve === "function") {
99
- const path = str.substring(rootExtensionPrefix.length + name.length + 1);
100
- return ext.resolve(parser, path);
96
+ if (parser && parser.plugins && typeof str === "string") {
97
+ for (const prefix of rootExtensionPrefix) {
98
+ if (str.startsWith(prefix)) {
99
+ let name = str.substring(prefix.length);
100
+ const endIndex = name.indexOf("/");
101
+ if (endIndex >= 0)
102
+ name = name.substring(0, endIndex);
103
+ const ext = parser.plugins[name];
104
+ if (debugExtension)
105
+ console.log(name, ext);
106
+ if (typeof ext?.resolve === "function") {
107
+ const path = str.substring(prefix.length + name.length + 1);
108
+ return ext.resolve(parser, path);
109
+ }
110
+ break;
111
+ }
101
112
  }
102
113
  }
103
114
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"extension_utils.js","sourceRoot":"","sources":["../../../../engine/extensions/extension_utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extension_utils.js","sourceRoot":"","sources":["../../../../engine/extensions/extension_utils.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,9 @@ export function registerComponentExtension(loader) {
21
21
  class PointerResolver {
22
22
  resolvePath(path) {
23
23
  if (path.includes('/extensions/builtin_components/'))
24
- path = path.replace('/extensions/builtin_components/', '/userData/components/');
24
+ return path.replace('/extensions/builtin_components/', '/userData/components/');
25
+ if (path.includes('extensions/builtin_components/'))
26
+ return path.replace('extensions/builtin_components/', '/userData/components/');
25
27
  return path;
26
28
  }
27
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../../../../engine/extensions/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,uDAAuD;AACvD,6EAA6E;AAC7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,mEAAmE;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAGlE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,MAAM,UAAU,0BAA0B,CAAC,MAAkB;IACzD,MAAM,GAAG,GAAG,IAAI,iBAAiB,EAAE,CAAC;IACpC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;QAChB,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;QACf,OAAO,GAAG,CAAC;IACf,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACf,CAAC;AAED,MAAM,eAAe;IACjB,WAAW,CAAC,IAAY;QACpB,IAAI,IAAI,CAAC,QAAQ,CAAC,iCAAiC,CAAC;YAChD,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,iCAAiC,EAAE,uBAAuB,CAAC,CAAC;QAEpF,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAkB,EAAE,OAAgB,EAAE,QAA0B;IAC/F,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,gBAAgB,CAAC,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC3E,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,wBAAwB,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IACzE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,uBAAuB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC/D,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,qBAAqB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC7D,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,uBAAuB,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IACxE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7C,MAAM,0BAA0B,GAAG,MAAM,CAAC,6BAA6B,CAAC,CAAC;IACzE,IAAI,OAAO,0BAA0B,KAAK,UAAU;QAChD,0BAA0B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,eAAe,EAAE,CAAC,CAAC;AAEvE,CAAC"}
1
+ {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../../../../engine/extensions/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,uDAAuD;AACvD,6EAA6E;AAC7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,mEAAmE;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAGlE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,MAAM,UAAU,0BAA0B,CAAC,MAAkB;IACzD,MAAM,GAAG,GAAG,IAAI,iBAAiB,EAAE,CAAC;IACpC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;QAChB,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;QACf,OAAO,GAAG,CAAC;IACf,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACf,CAAC;AAED,MAAM,eAAe;IACjB,WAAW,CAAC,IAAY;QACpB,IAAI,IAAI,CAAC,QAAQ,CAAC,iCAAiC,CAAC;YAChD,OAAO,IAAI,CAAC,OAAO,CAAC,iCAAiC,EAAE,uBAAuB,CAAC,CAAC;QACpF,IAAI,IAAI,CAAC,QAAQ,CAAC,gCAAgC,CAAC;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,gCAAgC,EAAE,uBAAuB,CAAC,CAAC;QACnF,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAkB,EAAE,OAAgB,EAAE,QAA0B;IAC/F,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,gBAAgB,CAAC,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC3E,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,wBAAwB,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IACzE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,uBAAuB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC/D,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,qBAAqB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC7D,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,uBAAuB,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IACxE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7C,MAAM,0BAA0B,GAAG,MAAM,CAAC,6BAA6B,CAAC,CAAC;IACzE,IAAI,OAAO,0BAA0B,KAAK,UAAU;QAChD,0BAA0B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,eAAe,EAAE,CAAC,CAAC;AAEvE,CAAC"}
@@ -11,6 +11,7 @@ import { getParam } from "../engine/engine_utils";
11
11
  import { serializeable } from "../engine/engine_serialization_decorator";
12
12
  import { RGBAColor } from "./js-extensions/RGBAColor";
13
13
  import { PerspectiveCamera } from "three";
14
+ import { XRSessionMode } from "../engine/engine_setup";
14
15
  export var ClearFlags;
15
16
  (function (ClearFlags) {
16
17
  ClearFlags[ClearFlags["Skybox"] = 1] = "Skybox";
@@ -144,7 +145,6 @@ export class Camera extends Behaviour {
144
145
  }
145
146
  }
146
147
  applyClearFlagsIfIsActiveCamera() {
147
- // TODO: need to differentiate between what kind of XR (set skybox in VR but not in mobile AR for example!?)
148
148
  if (this._cam && this.context.mainCameraComponent === this) {
149
149
  switch (this._clearFlags) {
150
150
  case ClearFlags.Skybox:
@@ -181,6 +181,12 @@ export class Camera extends Behaviour {
181
181
  return false;
182
182
  const environmentBlendMode = session.environmentBlendMode;
183
183
  const transparent = environmentBlendMode === 'additive' || environmentBlendMode === 'alpha-blend';
184
+ // workaround for Quest 2 returning opaque when it should be alpha-blend
185
+ // check user agent if this is the Quest browser and return true if so
186
+ if (environmentBlendMode === "opaque" && navigator.userAgent?.includes("OculusBrowser")) {
187
+ if (this.context.xrSessionMode === XRSessionMode.ImmersiveAR)
188
+ return true;
189
+ }
184
190
  return transparent;
185
191
  }
186
192
  enableSkybox() {
@@ -1 +1 @@
1
- {"version":3,"file":"Camera.js","sourceRoot":"","sources":["../../../engine-components/Camera.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Camera.js","sourceRoot":"","sources":["../../../engine-components/Camera.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import * as THREE from "three";
2
2
  import { Context, FrameEvent } from "../engine/engine_setup";
3
3
  import { Object3D } from "three";
4
4
  import { SourceIdentifier } from "../engine/engine_gltf";
5
+ import { Collision } from "../engine/engine_physics";
5
6
  export interface UIDProvider {
6
7
  seed: number;
7
8
  generateUUID(): string;
@@ -117,6 +118,9 @@ declare class Component implements EventTarget {
117
118
  lateUpdate?(): void;
118
119
  onBeforeRender?(frame: THREE.XRFrame | null): void;
119
120
  onAfterRender?(): void;
121
+ onCollisionEnter?(col: Collision): any;
122
+ onCollisionExit?(col: Collision): any;
123
+ onCollisionStay?(col: Collision): any;
120
124
  startCoroutine(routine: Generator, evt?: FrameEvent): Generator;
121
125
  stopCoroutine(routine: Generator, evt?: FrameEvent): void;
122
126
  get destroyed(): boolean;
@@ -132,6 +136,12 @@ declare class Component implements EventTarget {
132
136
  __internalEnable(): void;
133
137
  __internalDisable(): void;
134
138
  constructor();
139
+ private _collisionExitRoutine;
140
+ private _collisions;
141
+ private __internalResetsCachedPhysicsData;
142
+ __internalHandleCollision(col: Collision): void;
143
+ sendExitCollisionEvent(obj: Object3D): void;
144
+ private __waitForCollisionExit;
135
145
  private static _worldPositionBuffer;
136
146
  private static _worldQuaternionBuffer;
137
147
  private static _worldEulerBuffer;
@@ -738,6 +738,7 @@ class Component {
738
738
  this.__didEnable = false;
739
739
  this.__isEnabled = undefined;
740
740
  this.__destroyed = false;
741
+ this.__internalResetsCachedPhysicsData();
741
742
  }
742
743
  __internalAwake() {
743
744
  if (this.__didAwake)
@@ -765,11 +766,63 @@ class Component {
765
766
  if (!this.__didEnable)
766
767
  return;
767
768
  this.__didEnable = false;
769
+ this._collisionExitRoutine = undefined;
768
770
  this.onDisable();
769
771
  }
770
772
  constructor() {
771
773
  this.__internalNewInstanceCreated();
772
774
  }
775
+ _collisionExitRoutine;
776
+ _collisions = null;
777
+ __internalResetsCachedPhysicsData() {
778
+ this._collisionExitRoutine = null;
779
+ this._collisions = null;
780
+ }
781
+ __internalHandleCollision(col) {
782
+ if (this.onCollisionEnter || this.onCollisionExit || this.onCollisionStay) {
783
+ const otherObject = col.gameObject;
784
+ if (!this._collisions)
785
+ this._collisions = new Map();
786
+ if (this._collisions.has(otherObject)) {
787
+ const cur = this._collisions.get(otherObject);
788
+ cur.frame = this.context.time.frameCount;
789
+ cur.col = col;
790
+ this.onCollisionStay?.call(this, col);
791
+ }
792
+ else {
793
+ const entry = { col, frame: this.context.time.frameCount };
794
+ this._collisions.set(otherObject, entry);
795
+ this.onCollisionEnter?.call(this, col);
796
+ }
797
+ }
798
+ }
799
+ sendExitCollisionEvent(obj) {
800
+ if (!this._collisions)
801
+ return;
802
+ const col = this._collisions.get(obj);
803
+ if (!col)
804
+ return;
805
+ this.onCollisionExit?.call(this, col.col);
806
+ this._collisions.delete(obj);
807
+ }
808
+ __waitForCollisionExit() {
809
+ if (this._collisionExitRoutine)
810
+ return;
811
+ // const self = this;
812
+ // function* routine() {
813
+ // while (self._collisions && self._collisions.size > 0) {
814
+ // for (let ob of self._collisions.keys()) {
815
+ // const entry = self._collisions!.get(ob)!;
816
+ // if (self.context.time.frameCount - entry.frame > 1) {
817
+ // self._collisions!.delete(ob);
818
+ // self.onCollisionExit?.call(self, entry.col);
819
+ // }
820
+ // }
821
+ // yield;
822
+ // }
823
+ // }
824
+ // this._collisionExitRoutine = this.startCoroutine(routine(), FrameEvent.EarlyUpdate);
825
+ }
773
826
  // TODO move this to threeutils
774
827
  // we need a copy for modifying the values to local space
775
828
  static _worldPositionBuffer = new THREE.Vector3();
@@ -1 +1 @@
1
- {"version":3,"file":"Component.js","sourceRoot":"","sources":["../../../engine-components/Component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Component.js","sourceRoot":"","sources":["../../../engine-components/Component.ts"],"names":[],"mappings":"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"}
@@ -88,7 +88,8 @@ export class OrbitControls extends Behaviour {
88
88
  if (this._controls) {
89
89
  const camGo = GameObject.getComponent(this.gameObject, Camera);
90
90
  if (camGo && !this.setFromTargetPosition()) {
91
- console.log("NO TARGET");
91
+ if (this.debugLog)
92
+ console.log("NO TARGET");
92
93
  const forward = new THREE.Vector3(0, 0, -1).applyMatrix4(camGo.cam.matrixWorld);
93
94
  this.setTarget(forward, true);
94
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OrbitControls.js","sourceRoot":"","sources":["../../../engine-components/OrbitControls.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,aAAa,IAAI,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAEhG,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAW,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AAGzE,MAAM,OAAO,aAAc,SAAQ,SAAS;IACxC,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAEM,kBAAkB,CAAC,IAAc;QACpC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,OAAO,EAAE,IAAW,CAAC,CAAC;IAC1D,CAAC;IAED,UAAU,GAAY,KAAK,CAAC;IAC5B,eAAe,GAAW,GAAG,CAAC;IAC9B,UAAU,GAAY,IAAI,CAAC;IAC3B,aAAa,GAAY,IAAI,CAAC;IAC9B,aAAa,GAAW,GAAG,CAAC;IAC5B,UAAU,GAAY,IAAI,CAAC;IAC3B,OAAO,GAAW,CAAC,CAAC;IACpB,OAAO,GAAW,QAAQ,CAAC;IAC3B,SAAS,GAAY,IAAI,CAAC;IAE1B,gBAAgB,GAA4B,IAAI,CAAC;IACjD,kBAAkB,GAAW,CAAC,CAAC;IAC/B,kBAAkB,GAAY,IAAI,CAAC;IACnC,kBAAkB,GAAY,IAAI,CAAC;IAEnC,oCAAoC;IACpC,QAAQ,GAAY,KAAK,CAAC;IAG1B,QAAQ,GAAY,KAAK,CAAC;IAC1B,eAAe,GAAG,CAAC,CAAC;IAEZ,mBAAmB,CAAiB;IACpC,SAAS,GAA8B,IAAI,CAAC;IAC5C,aAAa,GAA0B,IAAI,CAAC;IAE5C,qBAAqB,GAAY,KAAK,CAAC;IACvC,mBAAmB,GAAY,KAAK,CAAC;IACrC,qBAAqB,GAAyB,IAAI,CAAC;IAEnD,OAAO,GAAW,CAAC,CAAC;IACpB,WAAW,GAAW,CAAC,CAAC,CAAC,yDAAyD;IAE1F,KAAK;QACD,IAAI,CAAC,mBAAmB,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;IACnD,CAAC;IAED,QAAQ;QACJ,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;QAC1C,MAAM,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC/D,MAAM,GAAG,GAAG,KAAK,EAAE,GAAG,CAAC;QAEvB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACjB,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;YAC1E,IAAI,GAAG;gBACH,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC;YAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,kBAAkB,CAAC,GAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;SACnF;QAED,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YAClD,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YAC5C,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YAC5C,IAAI,CAAC,SAAS,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;YACtD,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YAC5C,IAAI,GAAG,EAAE,IAAI,KAAK,mBAAmB,EAAE;gBACnC,IAAI,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC1C,IAAI,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC;aAC7C;iBACI;gBACD,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;gBACtC,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;aACzC;YACD,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YAClD,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;SAC7C;IACL,CAAC;IAGD,SAAS;QACL,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,KAAK,CAAC;YAClC,0BAA0B;SAC7B;IACL,CAAC;IAED,KAAK;QACD,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,MAAM,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC/D,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,EAAE;gBACxC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBACzB,MAAM,OAAO,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAChF,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;aACjC;SACJ;QACD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,8EAA8E;IACtE,CAAE,mBAAmB;QACzB,KAAK,CAAC;QACN,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,EAAE;YAC/B,MAAM,IAAI,GAAG,IAAI,cAAc,EAAE,CAAC;YAClC,wBAAwB;YACxB,IAAI,CAAC,WAAW,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3C,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAChD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;gBACjB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aACvC;SACJ;IACL,CAAC;IAED,cAAc;QACV,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAE5B,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;YACtH,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;SACrB;QACD,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE;YAClB,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,KAAK,CAAC;YAClC,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;YACjC,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;SACtC;QACD,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QAEjB,mIAAmI;QAEnI,IAAI,cAAc,GAAG,CAAC,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1F,cAAc,KAAK,CAAC,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;QAChJ,IAAI,cAAc,EAAE;YAChB,IAAI,CAAC,oBAAoB,EAAE,CAAC;SAC/B;aACI,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE;YACnF,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;YACnC,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;SACpC;QAED,IAAI,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC,mBAAmB,EAAE;YACxD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC;YAEhE,0BAA0B;YAC1B,sDAAsD;YACtD,4DAA4D;YAE5D,kBAAkB;YAClB,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC,aAAa,EAAE;gBAC9E,IAAI,IAAI,CAAC,QAAQ,IAAI,OAAO,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,UAAU,EAAE;oBAC9E,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC;oBAC9C,QAAQ;wBACJ,2BAA2B;wBAC3B,mCAAmC;wBACnC,YAAY;yBACX,KAAK,CAAC,IAAI,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAA;oBAC5C,oCAAoC;iBACvC;qBACI;oBACD,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;iBACvE;gBACD,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,GAAG,GAAG,EAAE;oBAC1E,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;iBACpC;aACJ;YAED,uBAAuB;YACvB,IAAI,IAAI,CAAC,qBAAqB,EAAE;gBAE5B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;gBAChD,IAAI,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE;oBACnE,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;iBACtC;aACJ;SACJ;QAED,IAAI,IAAI,CAAC,gBAAgB,EAAE,MAAM;YAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAG1F,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,IAAI,IAAI,CAAC,QAAQ;gBACb,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;YACjE,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;YAC9B,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;SAC3B;IACL,CAAC;IAEM,eAAe,CAAC,QAA+B,EAAE,YAAqB,KAAK;QAC9E,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;aAC3C;YACD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;YAChC,IAAI,CAAC,qBAAqB,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC9C,IAAI,SAAS,IAAI,IAAI,CAAC,qBAAqB,EAAE;gBACzC,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;aACpE;SACJ;IACL,CAAC;IAEM,qBAAqB,CAAC,QAAgB,CAAC,EAAE,IAAY,CAAC;QACzD,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC;QAC/C,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAI,MAAM,EAAE;gBACR,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAClD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;gBAC7C,OAAO,IAAI,CAAC;aACf;SACJ;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,SAAS,CAAC,WAAiC,IAAI,EAAE,YAAqB,KAAK;QAC9E,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAC5B,IAAI,QAAQ,KAAK,IAAI;YAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/D,IAAI,SAAS;YACT,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;;YACpD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;IAC3C,CAAC;IAEM,UAAU,CAAC,QAAuB,EAAE,KAAa;QACpD,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAC5B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAEM,gBAAgB,CAAC,QAAuB;QAC3C,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO,CAAC,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC;IAEO,oBAAoB;QACxB,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC3B,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1C,KAAK,MAAM,GAAG,IAAI,EAAE,EAAE;YAClB,IAAI,GAAG,CAAC,QAAQ,GAAG,CAAC,IAAI,UAAU,CAAC,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;gBAChE,yCAAyC;gBACzC,0CAA0C;gBAC1C,8BAA8B;gBAC9B,IAAI;gBACJ,+EAA+E;gBAC/E,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACzC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;gBAClC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;gBAClC,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;oBACzB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;oBAChC,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBACtD,IAAI,CAAC,qBAAqB,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;iBACpG;gBACD,MAAM;aACT;SACJ;IACL,CAAC;CAKJ;AA3OG;IADC,aAAa,EAAE;uDACiC"}
1
+ {"version":3,"file":"OrbitControls.js","sourceRoot":"","sources":["../../../engine-components/OrbitControls.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,7 @@ export declare class Renderer extends Behaviour {
42
42
  private _isInstancingEnabled;
43
43
  private handles;
44
44
  private prevLayers;
45
+ private clearInstancingState;
45
46
  setInstancingEnabled(enabled: boolean): boolean;
46
47
  start(): void;
47
48
  onEnable(): void;