x_ite 10.0.2 → 10.0.4

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 (50) hide show
  1. package/README.md +5 -5
  2. package/dist/X3DUOM.xml +1095 -0
  3. package/dist/assets/components/Annotation.js +13 -13
  4. package/dist/assets/components/Annotation.min.js +1 -1
  5. package/dist/assets/components/CADGeometry.js +14 -14
  6. package/dist/assets/components/CADGeometry.min.js +1 -1
  7. package/dist/assets/components/CubeMapTexturing.js +25 -25
  8. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  9. package/dist/assets/components/DIS.js +37 -13
  10. package/dist/assets/components/DIS.min.js +1 -1
  11. package/dist/assets/components/EventUtilities.js +9 -9
  12. package/dist/assets/components/EventUtilities.min.js +1 -1
  13. package/dist/assets/components/Geometry2D.js +18 -18
  14. package/dist/assets/components/Geometry2D.min.js +1 -1
  15. package/dist/assets/components/Geospatial.js +33 -33
  16. package/dist/assets/components/Geospatial.min.js +1 -1
  17. package/dist/assets/components/HAnim.js +30 -24
  18. package/dist/assets/components/HAnim.min.js +1 -1
  19. package/dist/assets/components/KeyDeviceSensor.js +8 -8
  20. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  21. package/dist/assets/components/Layout.js +27 -27
  22. package/dist/assets/components/Layout.min.js +1 -1
  23. package/dist/assets/components/NURBS.js +23 -23
  24. package/dist/assets/components/NURBS.min.js +1 -1
  25. package/dist/assets/components/ParticleSystems.js +26 -26
  26. package/dist/assets/components/ParticleSystems.min.js +1 -1
  27. package/dist/assets/components/Picking.js +18 -18
  28. package/dist/assets/components/Picking.min.js +1 -1
  29. package/dist/assets/components/RigidBodyPhysics.js +25 -17
  30. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  31. package/dist/assets/components/Scripting.js +38 -38
  32. package/dist/assets/components/Scripting.min.js +1 -1
  33. package/dist/assets/components/Text.js +24 -24
  34. package/dist/assets/components/Text.min.js +1 -1
  35. package/dist/assets/components/TextureProjection.js +15 -15
  36. package/dist/assets/components/TextureProjection.min.js +1 -1
  37. package/dist/assets/components/Texturing3D.js +31 -27
  38. package/dist/assets/components/Texturing3D.min.js +1 -1
  39. package/dist/assets/components/VolumeRendering.js +22 -20
  40. package/dist/assets/components/VolumeRendering.min.js +1 -1
  41. package/dist/assets/components/X_ITE.js +75 -19
  42. package/dist/assets/components/X_ITE.min.js +1 -1
  43. package/dist/x_ite.css +1 -1
  44. package/dist/x_ite.d.ts +80 -14
  45. package/dist/x_ite.js +255 -208
  46. package/dist/x_ite.min.js +1 -1
  47. package/dist/x_ite.min.mjs +1 -1
  48. package/dist/x_ite.mjs +255 -208
  49. package/dist/x_ite.zip +0 -0
  50. package/package.json +3 -2
package/dist/x_ite.mjs CHANGED
@@ -1,9 +1,9 @@
1
- /* X_ITE v10.0.2 */var __webpack_modules__ = ({
1
+ /* X_ITE v10.0.4 */var __webpack_modules__ = ({
2
2
 
3
- /***/ 810:
3
+ /***/ 912:
4
4
  /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
5
5
 
6
- /* provided dependency */ var jQuery = __webpack_require__(786);
6
+ /* provided dependency */ var jQuery = __webpack_require__(404);
7
7
  /**
8
8
  * @preserve jquery.fullscreen 1.1.5
9
9
  * https://github.com/code-lts/jquery-fullscreen-plugin
@@ -199,7 +199,7 @@ installFullScreenHandlers();
199
199
 
200
200
  /***/ }),
201
201
 
202
- /***/ 832:
202
+ /***/ 290:
203
203
  /***/ ((module, exports, __webpack_require__) => {
204
204
 
205
205
  var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
@@ -213,7 +213,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
213
213
  (function (factory) {
214
214
  if ( true ) {
215
215
  // AMD. Register as an anonymous module.
216
- !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(786)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
216
+ !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(404)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
217
217
  __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
218
218
  (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
219
219
  __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
@@ -424,7 +424,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
424
424
 
425
425
  /***/ }),
426
426
 
427
- /***/ 786:
427
+ /***/ 404:
428
428
  /***/ (function(module, exports) {
429
429
 
430
430
  var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
@@ -11148,7 +11148,7 @@ return jQuery;
11148
11148
 
11149
11149
  /***/ }),
11150
11150
 
11151
- /***/ 315:
11151
+ /***/ 185:
11152
11152
  /***/ ((module) => {
11153
11153
 
11154
11154
  /**
@@ -15927,7 +15927,7 @@ if (true) {
15927
15927
 
15928
15928
  /***/ }),
15929
15929
 
15930
- /***/ 826:
15930
+ /***/ 976:
15931
15931
  /***/ (function(__unused_webpack_module, exports) {
15932
15932
 
15933
15933
 
@@ -19172,7 +19172,7 @@ if (true) {
19172
19172
 
19173
19173
  /***/ }),
19174
19174
 
19175
- /***/ 781:
19175
+ /***/ 463:
19176
19176
  /***/ (function(module, exports) {
19177
19177
 
19178
19178
  var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*
@@ -20297,7 +20297,7 @@ Object .defineProperty (Namespace, "add",
20297
20297
  }
20298
20298
  else
20299
20299
  {
20300
- const X3D = window [Symbol .for ("X_ITE.X3D-10.0.2")];
20300
+ const X3D = window [Symbol .for ("X_ITE.X3D-10.0.4")];
20301
20301
 
20302
20302
  if (X3D)
20303
20303
  X3D [name] = module;
@@ -21708,32 +21708,18 @@ Object .assign (X3DObject .prototype,
21708
21708
  },
21709
21709
  getUserData (key)
21710
21710
  {
21711
- return this [_userData] .get (key)
21712
- ?? this [_userData] .map ?.get (key);
21711
+ return this [_userData] .get (key);
21713
21712
  },
21714
21713
  setUserData (key, value)
21715
21714
  {
21716
- try
21717
- {
21718
- if (this [_userData] === X3DObject .prototype [_userData])
21719
- this [_userData] = new WeakMap ();
21720
-
21721
- this [_userData] .set (key, value);
21722
- }
21723
- catch
21724
- {
21725
- if (!this [_userData] .map)
21726
- this [_userData] .map = new Map ();
21715
+ if (this [_userData] === X3DObject .prototype [_userData])
21716
+ this [_userData] = new Map ();
21727
21717
 
21728
- this [_userData] .map .set (key, value);
21729
- }
21718
+ this [_userData] .set (key, value);
21730
21719
  },
21731
21720
  removeUserData (key)
21732
21721
  {
21733
- if (this [_userData] .delete (key))
21734
- return;
21735
-
21736
- this [_userData] .map ?.delete (key);
21722
+ this [_userData] .delete (key);
21737
21723
  },
21738
21724
  toString (options = Object .prototype)
21739
21725
  {
@@ -21786,7 +21772,7 @@ Object .assign (X3DObject .prototype,
21786
21772
  dispose ()
21787
21773
  {
21788
21774
  this [_interests] .clear ();
21789
- this [_userData] .map ?.clear ();
21775
+ this [_userData] .clear ();
21790
21776
  },
21791
21777
  });
21792
21778
 
@@ -34277,7 +34263,7 @@ const X3DBaseNode_default_ = X3DBaseNode;
34277
34263
  x_ite_Namespace .add ("X3DBaseNode", "x_ite/Base/X3DBaseNode", X3DBaseNode_default_);
34278
34264
  /* harmony default export */ const Base_X3DBaseNode = (X3DBaseNode_default_);
34279
34265
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Legacy.js
34280
- /* provided dependency */ var $ = __webpack_require__(786);
34266
+ /* provided dependency */ var $ = __webpack_require__(404);
34281
34267
  /*******************************************************************************
34282
34268
  *
34283
34269
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -34414,7 +34400,7 @@ x_ite_Namespace .add ("Legacy", "x_ite/Browser/Legacy", Legacy_default_);
34414
34400
  *
34415
34401
  ******************************************************************************/
34416
34402
 
34417
- const BROWSER_VERSION_default_ = "10.0.2";
34403
+ const BROWSER_VERSION_default_ = "10.0.4";
34418
34404
  ;
34419
34405
 
34420
34406
  x_ite_Namespace .add ("BROWSER_VERSION", "x_ite/BROWSER_VERSION", BROWSER_VERSION_default_);
@@ -37600,7 +37586,7 @@ const X3DBindableNode_default_ = X3DBindableNode;
37600
37586
  x_ite_Namespace .add ("X3DBindableNode", "x_ite/Components/Core/X3DBindableNode", X3DBindableNode_default_);
37601
37587
  /* harmony default export */ const Core_X3DBindableNode = (X3DBindableNode_default_);
37602
37588
  ;// CONCATENATED MODULE: ./src/standard/Math/Geometry/Triangle3.js
37603
- /* provided dependency */ var libtess = __webpack_require__(315);
37589
+ /* provided dependency */ var libtess = __webpack_require__(185);
37604
37590
  /*******************************************************************************
37605
37591
  *
37606
37592
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -40170,7 +40156,7 @@ const X3DProtoDeclaration_default_ = X3DProtoDeclaration;
40170
40156
  x_ite_Namespace .add ("X3DProtoDeclaration", "x_ite/Prototype/X3DProtoDeclaration", X3DProtoDeclaration_default_);
40171
40157
  /* harmony default export */ const Prototype_X3DProtoDeclaration = (X3DProtoDeclaration_default_);
40172
40158
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/X3DParser.js
40173
- /* provided dependency */ var X3DParser_$ = __webpack_require__(786);
40159
+ /* provided dependency */ var X3DParser_$ = __webpack_require__(404);
40174
40160
  /*******************************************************************************
40175
40161
  *
40176
40162
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -40428,7 +40414,7 @@ const Expressions_default_ = Expressions;
40428
40414
  x_ite_Namespace .add ("Expressions", "x_ite/Parser/Expressions", Expressions_default_);
40429
40415
  /* harmony default export */ const Parser_Expressions = (Expressions_default_);
40430
40416
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/VRMLParser.js
40431
- /* provided dependency */ var VRMLParser_$ = __webpack_require__(786);
40417
+ /* provided dependency */ var VRMLParser_$ = __webpack_require__(404);
40432
40418
  /*******************************************************************************
40433
40419
  *
40434
40420
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -43128,7 +43114,7 @@ const VRMLParser_default_ = VRMLParser;
43128
43114
  x_ite_Namespace .add ("VRMLParser", "x_ite/Parser/VRMLParser", VRMLParser_default_);
43129
43115
  /* harmony default export */ const Parser_VRMLParser = (VRMLParser_default_);
43130
43116
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/XMLParser.js
43131
- /* provided dependency */ var XMLParser_$ = __webpack_require__(786);
43117
+ /* provided dependency */ var XMLParser_$ = __webpack_require__(404);
43132
43118
  /*******************************************************************************
43133
43119
  *
43134
43120
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -45304,7 +45290,7 @@ const URLs_default_ = URLs;
45304
45290
  x_ite_Namespace .add ("URLs", "x_ite/Browser/Networking/URLs", URLs_default_);
45305
45291
  /* harmony default export */ const Networking_URLs = (URLs_default_);
45306
45292
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GLTF2Parser.js
45307
- /* provided dependency */ var GLTF2Parser_$ = __webpack_require__(786);
45293
+ /* provided dependency */ var GLTF2Parser_$ = __webpack_require__(404);
45308
45294
  /*******************************************************************************
45309
45295
  *
45310
45296
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -48947,7 +48933,7 @@ const GLTF2Parser_default_ = GLTF2Parser;
48947
48933
  x_ite_Namespace .add ("GLTF2Parser", "x_ite/Parser/GLTF2Parser", GLTF2Parser_default_);
48948
48934
  /* harmony default export */ const Parser_GLTF2Parser = (GLTF2Parser_default_);
48949
48935
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GLB2Parser.js
48950
- /* provided dependency */ var GLB2Parser_$ = __webpack_require__(786);
48936
+ /* provided dependency */ var GLB2Parser_$ = __webpack_require__(404);
48951
48937
  /*******************************************************************************
48952
48938
  *
48953
48939
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -49099,7 +49085,7 @@ const GLB2Parser_default_ = GLB2Parser;
49099
49085
  x_ite_Namespace .add ("GLB2Parser", "x_ite/Parser/GLB2Parser", GLB2Parser_default_);
49100
49086
  /* harmony default export */ const Parser_GLB2Parser = (GLB2Parser_default_);
49101
49087
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/OBJParser.js
49102
- /* provided dependency */ var OBJParser_$ = __webpack_require__(786);
49088
+ /* provided dependency */ var OBJParser_$ = __webpack_require__(404);
49103
49089
  /*******************************************************************************
49104
49090
  *
49105
49091
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -50787,6 +50773,8 @@ x_ite_Namespace .add ("STLBParser", "x_ite/Parser/STLBParser", STLBParser_defaul
50787
50773
 
50788
50774
 
50789
50775
 
50776
+
50777
+
50790
50778
  /*
50791
50779
  * Grammar
50792
50780
  */
@@ -50953,6 +50941,14 @@ Object .assign (Object .setPrototypeOf (PLYAParser .prototype, Parser_X3DParser
50953
50941
  return value;
50954
50942
  }
50955
50943
  },
50944
+ convertFDC (f_dc)
50945
+ {
50946
+ // https://github.com/graphdeco-inria/gaussian-splatting/issues/485
50947
+
50948
+ const C0 = 0.28209479177387814;
50949
+
50950
+ return 0.5 + C0 * f_dc;
50951
+ },
50956
50952
  header (elements)
50957
50953
  {
50958
50954
  PLYAParser_Grammar .ply .parse (this);
@@ -51152,20 +51148,20 @@ Object .assign (Object .setPrototypeOf (PLYAParser .prototype, Parser_X3DParser
51152
51148
  async parseVertices ({ count, properties })
51153
51149
  {
51154
51150
  const
51155
- browser = this .getBrowser (),
51156
- scene = this .getScene (),
51157
- colors = [ ],
51158
- texCoord = scene .createNode ("TextureCoordinate"),
51159
- texCoords = [ ],
51160
- normal = scene .createNode ("Normal"),
51161
- normals = [ ],
51162
- coord = scene .createNode ("Coordinate"),
51163
- points = [ ],
51164
- attributes = new Map ();
51151
+ browser = this .getBrowser (),
51152
+ scene = this .getScene (),
51153
+ colors = [ ],
51154
+ texCoord = scene .createNode ("TextureCoordinate"),
51155
+ texCoords = [ ],
51156
+ normal = scene .createNode ("Normal"),
51157
+ normals = [ ],
51158
+ coord = scene .createNode ("Coordinate"),
51159
+ points = [ ],
51160
+ attributes = new Map ();
51165
51161
 
51166
51162
  for (const { name } of properties)
51167
51163
  {
51168
- if (name .match (/^(?:red|green|blue|alpha|r|g|b|a|s|t|u|v|nx|ny|nz|x|y|z)$/))
51164
+ if (name .match (/^(?:red|green|blue|alpha|r|g|b|a|f_dc_0|f_dc_1|f_dc_2|opacity|s|t|u|v|nx|ny|nz|x|y|z)$/))
51169
51165
  continue;
51170
51166
 
51171
51167
  attributes .set (name, [ ]);
@@ -51191,6 +51187,13 @@ Object .assign (Object .setPrototypeOf (PLYAParser .prototype, Parser_X3DParser
51191
51187
  case "r": case "g": case "b": case "a":
51192
51188
  colors .push (this .convertColor (this .value, type));
51193
51189
  break;
51190
+ case "f_dc_0": case "f_dc_1": case "f_dc_2":
51191
+ colors .push (this .convertFDC (this .convertColor (this .value, type)));
51192
+ break;
51193
+ case "opacity":
51194
+ // https://github.com/antimatter15/splat/blob/main/convert.py
51195
+ colors .push (1 / (1 + Math .exp (-this .value)));
51196
+ break;
51194
51197
  case "s": case "t":
51195
51198
  case "u": case "v":
51196
51199
  texCoords .push (this .value);
@@ -51230,7 +51233,7 @@ Object .assign (Object .setPrototypeOf (PLYAParser .prototype, Parser_X3DParser
51230
51233
  // Geometric properties
51231
51234
 
51232
51235
  const
51233
- pAlpha = properties .some (p => p .name .match (/^(?:alpha|a)$/)),
51236
+ pAlpha = properties .some (p => p .name .match (/^(?:alpha|a|opacity)$/)),
51234
51237
  alpha = pAlpha && colors .some ((v, i) => i % 4 === 3 && v < 1),
51235
51238
  color = scene .createNode (alpha ? "ColorRGBA" : "Color");
51236
51239
 
@@ -52457,8 +52460,8 @@ const MatrixStack_default_ = MatrixStack;
52457
52460
  x_ite_Namespace .add ("MatrixStack", "standard/Math/Utility/MatrixStack", MatrixStack_default_);
52458
52461
  /* harmony default export */ const Utility_MatrixStack = (MatrixStack_default_);
52459
52462
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/SVGParser.js
52460
- /* provided dependency */ var SVGParser_$ = __webpack_require__(786);
52461
- /* provided dependency */ var SVGParser_libtess = __webpack_require__(315);
52463
+ /* provided dependency */ var SVGParser_$ = __webpack_require__(404);
52464
+ /* provided dependency */ var SVGParser_libtess = __webpack_require__(185);
52462
52465
  /*******************************************************************************
52463
52466
  *
52464
52467
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -55229,7 +55232,7 @@ const SVGParser_default_ = SVGParser;
55229
55232
  x_ite_Namespace .add ("SVGParser", "x_ite/Parser/SVGParser", SVGParser_default_);
55230
55233
  /* harmony default export */ const Parser_SVGParser = (SVGParser_default_);
55231
55234
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GoldenGate.js
55232
- /* provided dependency */ var GoldenGate_$ = __webpack_require__(786);
55235
+ /* provided dependency */ var GoldenGate_$ = __webpack_require__(404);
55233
55236
  /*******************************************************************************
55234
55237
  *
55235
55238
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -56958,6 +56961,7 @@ function X3DRenderObject (executionContext)
56958
56961
  const browser = executionContext .getBrowser ();
56959
56962
 
56960
56963
  this .renderKey = "";
56964
+ this .renderAndGlobalLightsKey = "";
56961
56965
  this .renderCount = 0;
56962
56966
  this .viewVolumes = [ ];
56963
56967
  this .projectionMatrix = new Utility_MatrixStack (Numbers_Matrix4);
@@ -56971,12 +56975,13 @@ function X3DRenderObject (executionContext)
56971
56975
  this .hitRay = new Geometry_Line3 (Numbers_Vector3 .Zero, Numbers_Vector3 .Zero);
56972
56976
  this .sensors = [[ ]];
56973
56977
  this .viewpointGroups = [ ];
56974
- this .localObjectsKeys = [ ];
56978
+ this .lights = [ ];
56975
56979
  this .globalLightsKeys = [ ];
56976
56980
  this .globalLights = [ ];
56981
+ this .localObjectsKeys = [ ];
56977
56982
  this .localObjects = [ ];
56978
- this .lights = [ ];
56979
56983
  this .globalShadows = [ false ];
56984
+ this .globalShadow = false;
56980
56985
  this .localShadows = [ false ];
56981
56986
  this .localFogs = [ null ];
56982
56987
  this .layouts = [ ];
@@ -57086,6 +57091,10 @@ Object .assign (X3DRenderObject .prototype,
57086
57091
  {
57087
57092
  return this .renderKey;
57088
57093
  },
57094
+ getRenderAndGlobalLightsKey ()
57095
+ {
57096
+ return this .renderAndGlobalLightsKey;
57097
+ },
57089
57098
  getRenderCount ()
57090
57099
  {
57091
57100
  return this .renderCount;
@@ -57152,10 +57161,18 @@ Object .assign (X3DRenderObject .prototype,
57152
57161
  {
57153
57162
  return this .viewpointGroups;
57154
57163
  },
57164
+ getLights ()
57165
+ {
57166
+ return this .lights;
57167
+ },
57155
57168
  getGlobalLights ()
57156
57169
  {
57157
57170
  return this .globalLights;
57158
57171
  },
57172
+ getGlobalLightsKeys ()
57173
+ {
57174
+ return this .globalLightsKeys;
57175
+ },
57159
57176
  getLocalObjects ()
57160
57177
  {
57161
57178
  return this .localObjects;
@@ -57164,10 +57181,6 @@ Object .assign (X3DRenderObject .prototype,
57164
57181
  {
57165
57182
  return this .localObjectsKeys;
57166
57183
  },
57167
- getLights ()
57168
- {
57169
- return this .lights;
57170
- },
57171
57184
  pushGlobalShadows (value)
57172
57185
  {
57173
57186
  this .globalShadows .push (value || this .globalShadows .at (-1));
@@ -57176,6 +57189,10 @@ Object .assign (X3DRenderObject .prototype,
57176
57189
  {
57177
57190
  return this .globalShadows;
57178
57191
  },
57192
+ getGlobalShadow ()
57193
+ {
57194
+ return this .globalShadow;
57195
+ },
57179
57196
  pushLocalShadows (value)
57180
57197
  {
57181
57198
  this .localShadows .push (value || this .localShadows .at (-1));
@@ -58003,7 +58020,6 @@ Object .assign (X3DRenderObject .prototype,
58003
58020
  globalLights = this .globalLights,
58004
58021
  generatedCubeMapTextures = this .generatedCubeMapTextures,
58005
58022
  globalShadows = this .globalShadows,
58006
- shadows = globalShadows .at (-1),
58007
58023
  headlight = this .getNavigationInfo () ._headlight .getValue (),
58008
58024
  oit = frameBuffer .getOIT () && independent;
58009
58025
 
@@ -58035,6 +58051,9 @@ Object .assign (X3DRenderObject .prototype,
58035
58051
  for (const light of globalLights)
58036
58052
  globalLightsKeys .push (light .lightNode .getLightKey ());
58037
58053
 
58054
+ this .renderAndGlobalLightsKey = `.${this .renderKey}.${globalLightsKeys .sort () .join ("")}.`;
58055
+ this .globalShadow = globalShadows .at (-1);
58056
+
58038
58057
  // Set global uniforms.
58039
58058
 
58040
58059
  this .viewportArray .set (viewport);
@@ -58042,34 +58061,6 @@ Object .assign (X3DRenderObject .prototype,
58042
58061
  this .viewMatrixArray .set (this .getViewMatrix () .get ());
58043
58062
  this .cameraSpaceMatrixArray .set (this .getCameraSpaceMatrix () .get ());
58044
58063
 
58045
- // Prepare opaque objects.
58046
-
58047
- const
58048
- opaqueShapes = this .opaqueShapes,
58049
- numOpaqueShapes = this .numOpaqueShapes;
58050
-
58051
- for (let i = 0; i < numOpaqueShapes; ++ i)
58052
- {
58053
- const renderContext = opaqueShapes [i];
58054
-
58055
- renderContext .shadows = renderContext .shadows || shadows;
58056
- renderContext .objectsKeys .push (... globalLightsKeys);
58057
- }
58058
-
58059
- // Prepare transparent objects.
58060
-
58061
- const
58062
- transparentShapes = this .transparentShapes,
58063
- numTransparentShapes = this .numTransparentShapes;
58064
-
58065
- for (let i = 0; i < numTransparentShapes; ++ i)
58066
- {
58067
- const renderContext = transparentShapes [i];
58068
-
58069
- renderContext .shadows = renderContext .shadows || shadows;
58070
- renderContext .objectsKeys .push (... globalLightsKeys);
58071
- }
58072
-
58073
58064
  // DRAW
58074
58065
 
58075
58066
  if (independent && this .transmission)
@@ -58088,13 +58079,13 @@ Object .assign (X3DRenderObject .prototype,
58088
58079
  gl .bindTexture (gl .TEXTURE_2D, transmissionBuffer .getColorTexture ());
58089
58080
  gl .generateMipmap (gl .TEXTURE_2D);
58090
58081
 
58091
- this .drawShapes (gl, browser, true, frameBuffer, 0, oit, viewport, opaqueShapes, numOpaqueShapes, transparentShapes, numTransparentShapes, this .transparencySorter);
58082
+ this .drawShapes (gl, browser, true, frameBuffer, 0, oit, viewport, this .opaqueShapes, this .numOpaqueShapes, this .transparentShapes, this .numTransparentShapes, this .transparencySorter);
58092
58083
  }
58093
58084
  else
58094
58085
  {
58095
58086
  // Draw with sorted blend or OIT.
58096
58087
 
58097
- this .drawShapes (gl, browser, independent, frameBuffer, 0, oit, viewport, opaqueShapes, numOpaqueShapes, transparentShapes, numTransparentShapes, this .transparencySorter);
58088
+ this .drawShapes (gl, browser, independent, frameBuffer, 0, oit, viewport, this .opaqueShapes, this .numOpaqueShapes, this .transparentShapes, this .numTransparentShapes, this .transparencySorter);
58098
58089
  }
58099
58090
 
58100
58091
  // POST DRAW
@@ -62018,7 +62009,7 @@ function X3DBackgroundNode (executionContext)
62018
62009
  this .textureNodes = new Array (6);
62019
62010
  this .textureBits = new Utility_BitSet ();
62020
62011
  this .sphereContext = new Rendering_GeometryContext ({ colorMaterial: true });
62021
- this .texturesContext = new Rendering_GeometryContext ({ });
62012
+ this .texturesContext = new Rendering_GeometryContext ({ objectsKeys: this .sphereContext .objectsKeys});
62022
62013
  }
62023
62014
 
62024
62015
  Object .assign (Object .setPrototypeOf (X3DBackgroundNode .prototype, Core_X3DBindableNode .prototype),
@@ -62370,26 +62361,20 @@ Object .assign (Object .setPrototypeOf (X3DBackgroundNode .prototype, Core_X3DBi
62370
62361
  {
62371
62362
  const
62372
62363
  localObjects = renderObject .getLocalObjects (),
62373
- clipPlanes = this .clipPlanes;
62364
+ clipPlanes = this .clipPlanes,
62365
+ objectsKeys = this .sphereContext .objectsKeys;
62374
62366
 
62375
62367
  let c = 0;
62376
62368
 
62377
- for (let l = 0, length = localObjects .length; l < length; ++ l)
62378
- {
62379
- if (localObjects [l] .isClipped)
62380
- clipPlanes [c ++] = localObjects [l];
62381
- }
62382
-
62383
- clipPlanes .length = c;
62384
-
62385
- for (let i = 0; i < c; ++ i)
62369
+ for (const localObject of localObjects)
62386
62370
  {
62387
- this .sphereContext .objectsKeys [i] = 0;
62388
- this .texturesContext .objectsKeys [i] = 0;
62371
+ if (localObject .isClipped)
62372
+ clipPlanes [c ++] = localObject;
62389
62373
  }
62390
62374
 
62391
- this .sphereContext .objectsKeys .length = c;
62392
- this .texturesContext .objectsKeys .length = c;
62375
+ clipPlanes .length = c;
62376
+ objectsKeys .length = c;
62377
+ objectsKeys .fill (0);
62393
62378
  return;
62394
62379
  }
62395
62380
  }
@@ -63215,7 +63200,7 @@ const X3DTexture2DNode_default_ = X3DTexture2DNode;
63215
63200
  x_ite_Namespace .add ("X3DTexture2DNode", "x_ite/Components/Texturing/X3DTexture2DNode", X3DTexture2DNode_default_);
63216
63201
  /* harmony default export */ const Texturing_X3DTexture2DNode = (X3DTexture2DNode_default_);
63217
63202
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Texturing/ImageTexture.js
63218
- /* provided dependency */ var ImageTexture_$ = __webpack_require__(786);
63203
+ /* provided dependency */ var ImageTexture_$ = __webpack_require__(404);
63219
63204
  /*******************************************************************************
63220
63205
  *
63221
63206
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -66799,7 +66784,7 @@ const X3DWorld_default_ = X3DWorld;
66799
66784
  x_ite_Namespace .add ("X3DWorld", "x_ite/Execution/X3DWorld", X3DWorld_default_);
66800
66785
  /* harmony default export */ const Execution_X3DWorld = (X3DWorld_default_);
66801
66786
  ;// CONCATENATED MODULE: ./src/x_ite/InputOutput/FileLoader.js
66802
- /* provided dependency */ var FileLoader_$ = __webpack_require__(786);
66787
+ /* provided dependency */ var FileLoader_$ = __webpack_require__(404);
66803
66788
  /*******************************************************************************
66804
66789
  *
66805
66790
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -67733,7 +67718,7 @@ const ProtoDeclarationArray_default_ = ProtoDeclarationArray;
67733
67718
  x_ite_Namespace .add ("ProtoDeclarationArray", "x_ite/Prototype/ProtoDeclarationArray", ProtoDeclarationArray_default_);
67734
67719
  /* harmony default export */ const Prototype_ProtoDeclarationArray = (ProtoDeclarationArray_default_);
67735
67720
  ;// CONCATENATED MODULE: ./src/x_ite/Routing/X3DRoute.js
67736
- /* provided dependency */ var X3DRoute_$ = __webpack_require__(786);
67721
+ /* provided dependency */ var X3DRoute_$ = __webpack_require__(404);
67737
67722
  /*******************************************************************************
67738
67723
  *
67739
67724
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -81485,6 +81470,9 @@ x_ite_Namespace .add ("DirectionalLight", "x_ite/Components/Lighting/Directional
81485
81470
 
81486
81471
 
81487
81472
 
81473
+ /**
81474
+ * THIS NODE IS STILL EXPERIMENTAL.
81475
+ */
81488
81476
 
81489
81477
  const EnvironmentLights = Utility_ObjectCache (EnvironmentLightContainer);
81490
81478
 
@@ -90384,6 +90372,10 @@ x_ite_Namespace .add ("PointSet", "x_ite/Components/Rendering/PointSet", PointSe
90384
90372
 
90385
90373
 
90386
90374
 
90375
+ /**
90376
+ * THIS NODE IS STILL EXPERIMENTAL.
90377
+ */
90378
+
90387
90379
  function Tangent (executionContext)
90388
90380
  {
90389
90381
  Rendering_X3DGeometricPropertyNode .call (this, executionContext);
@@ -91276,7 +91268,7 @@ mediump samplerCube textureCube;
91276
91268
  x_ite_Namespace .add ("MaterialTextures", "assets/shaders/MaterialTextures", MaterialTextures_default_);
91277
91269
  /* harmony default export */ const MaterialTextures = (MaterialTextures_default_);
91278
91270
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js
91279
- /* provided dependency */ var X3DProgrammableShaderObject_$ = __webpack_require__(786);
91271
+ /* provided dependency */ var X3DProgrammableShaderObject_$ = __webpack_require__(404);
91280
91272
  /*******************************************************************************
91281
91273
  *
91282
91274
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -93563,6 +93555,10 @@ x_ite_Namespace .add ("Matrix4VertexAttribute", "x_ite/Components/Shaders/Matrix
93563
93555
 
93564
93556
 
93565
93557
 
93558
+ /**
93559
+ * THIS NODE IS NOT SUPPORTED.
93560
+ */
93561
+
93566
93562
  function PackagedShader (executionContext)
93567
93563
  {
93568
93564
  Shaders_X3DShaderNode .call (this, executionContext);
@@ -93695,6 +93691,10 @@ x_ite_Namespace .add ("PackagedShader", "x_ite/Components/Shaders/PackagedShader
93695
93691
 
93696
93692
 
93697
93693
 
93694
+ /**
93695
+ * THIS NODE IS NOT SUPPORTED.
93696
+ */
93697
+
93698
93698
  function ProgramShader (executionContext)
93699
93699
  {
93700
93700
  Shaders_X3DShaderNode .call (this, executionContext);
@@ -96721,7 +96721,7 @@ const ShaderCompiler_default_ = ShaderCompiler;
96721
96721
  x_ite_Namespace .add ("ShaderCompiler", "x_ite/Browser/Shaders/ShaderCompiler", ShaderCompiler_default_);
96722
96722
  /* harmony default export */ const Shaders_ShaderCompiler = (ShaderCompiler_default_);
96723
96723
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Shaders/ShaderPart.js
96724
- /* provided dependency */ var ShaderPart_$ = __webpack_require__(786);
96724
+ /* provided dependency */ var ShaderPart_$ = __webpack_require__(404);
96725
96725
  /*******************************************************************************
96726
96726
  *
96727
96727
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -97020,6 +97020,10 @@ x_ite_Namespace .add ("ShaderPart", "x_ite/Components/Shaders/ShaderPart", Shade
97020
97020
 
97021
97021
 
97022
97022
 
97023
+ /**
97024
+ * THIS NODE IS NOT SUPPORTED.
97025
+ */
97026
+
97023
97027
  function ShaderProgram (executionContext)
97024
97028
  {
97025
97029
  Core_X3DNode .call (this, executionContext);
@@ -97388,7 +97392,7 @@ const X3DAppearanceNode_default_ = X3DAppearanceNode;
97388
97392
  x_ite_Namespace .add ("X3DAppearanceNode", "x_ite/Components/Shape/X3DAppearanceNode", X3DAppearanceNode_default_);
97389
97393
  /* harmony default export */ const Shape_X3DAppearanceNode = (X3DAppearanceNode_default_);
97390
97394
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Shape/Appearance.js
97391
- /* provided dependency */ var Appearance_$ = __webpack_require__(786);
97395
+ /* provided dependency */ var Appearance_$ = __webpack_require__(404);
97392
97396
  /*******************************************************************************
97393
97397
  *
97394
97398
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -98343,16 +98347,14 @@ Object .assign (Object .setPrototypeOf (X3DMaterialNode .prototype, Shape_X3DApp
98343
98347
  const { renderObject, shadows, fogNode, shapeNode, appearanceNode, textureNode, humanoidNode, objectsKeys } = renderContext;
98344
98348
 
98345
98349
  key += shapeNode .getAlphaMode ();
98346
- key += renderObject .getRenderKey ();
98347
- key += shadows ? 1 : 0;
98350
+ key += renderObject .getRenderAndGlobalLightsKey ();
98351
+ key += shadows || renderObject .getGlobalShadow () ? 1 : 0;
98348
98352
  key += fogNode ?.getFogType () ?? 0;
98349
98353
  key += shapeNode .getShapeKey ();
98350
98354
  key += appearanceNode .getStyleProperties (geometryContext .geometryType) ?.getStyleKey () ?? 0;
98351
98355
  key += appearanceNode .getTextureTransformMapping () .size || 1;
98352
98356
  key += geometryContext .textureCoordinateMapping .size || 1;
98353
- key += ".";
98354
- key += humanoidNode ?.getHumanoidKey () ?? "";
98355
- key += ".";
98357
+ key += humanoidNode ?.getHumanoidKey () ?? "[]";
98356
98358
  key += objectsKeys .sort () .join (""); // ClipPlane, X3DLightNode
98357
98359
  key += ".";
98358
98360
  key += textureNode ? 2 : appearanceNode .getTextureBits () .toString (16);
@@ -98364,9 +98366,10 @@ Object .assign (Object .setPrototypeOf (X3DMaterialNode .prototype, Shape_X3DApp
98364
98366
  const { renderObject, alphaMode, textureNode, objectsKeys } = geometryContext;
98365
98367
 
98366
98368
  key += alphaMode;
98369
+ key += ".";
98367
98370
  key += renderObject .getRenderKey ();
98368
- key += "000011.0.";
98369
- key += objectsKeys .sort () .join (""); // ClipPlane, X3DLightNode
98371
+ key += "..000011[]";
98372
+ key += objectsKeys .sort () .join (""); // ClipPlane
98370
98373
  key += ".";
98371
98374
  key += textureNode ?.getTextureBits () .toString (16) ?? 0;
98372
98375
  }
@@ -98421,7 +98424,9 @@ Object .assign (Object .setPrototypeOf (X3DMaterialNode .prototype, Shape_X3DApp
98421
98424
 
98422
98425
  if (renderContext)
98423
98426
  {
98424
- const { renderObject, fogNode, shapeNode, appearanceNode, humanoidNode, objectsKeys, textureNode } = renderContext;
98427
+ const { renderObject, fogNode, shapeNode, appearanceNode, humanoidNode, objectsKeys: localObjectsKeys, textureNode } = renderContext;
98428
+
98429
+ const objectsKeys = localObjectsKeys .concat (renderObject .getGlobalLightsKeys ());
98425
98430
 
98426
98431
  if (renderObject .getLogarithmicDepthBuffer ())
98427
98432
  options .push ("X3D_LOGARITHMIC_DEPTH_BUFFER");
@@ -98449,7 +98454,7 @@ Object .assign (Object .setPrototypeOf (X3DMaterialNode .prototype, Shape_X3DApp
98449
98454
  }
98450
98455
  }
98451
98456
 
98452
- if (renderContext .shadows)
98457
+ if (renderContext .shadows || renderObject .getGlobalShadows () .at (-1))
98453
98458
  options .push ("X3D_SHADOWS", "X3D_PCF_FILTERING");
98454
98459
 
98455
98460
  switch (fogNode ?.getFogType ())
@@ -98583,11 +98588,7 @@ Object .assign (Object .setPrototypeOf (X3DMaterialNode .prototype, Shape_X3DApp
98583
98588
  }
98584
98589
  }
98585
98590
 
98586
- const
98587
- numClipPlanes = objectsKeys .reduce ((a, c) => a + (c === 0), 0),
98588
- numLights = objectsKeys .reduce ((a, c) => a + (c === 1), 0),
98589
- numEnvironmentLights = objectsKeys .reduce ((a, c) => a + (c === 2), 0),
98590
- numTextureProjectors = objectsKeys .reduce ((a, c) => a + (c === 3), 0);
98591
+ const numClipPlanes = objectsKeys .reduce ((a, c) => a + (c === 0), 0);
98591
98592
 
98592
98593
  if (numClipPlanes)
98593
98594
  {
@@ -98595,24 +98596,6 @@ Object .assign (Object .setPrototypeOf (X3DMaterialNode .prototype, Shape_X3DApp
98595
98596
  options .push (`X3D_NUM_CLIP_PLANES ${Math .min (numClipPlanes, browser .getMaxClipPlanes ())}`);
98596
98597
  }
98597
98598
 
98598
- if (numLights)
98599
- {
98600
- options .push ("X3D_LIGHTING")
98601
- options .push (`X3D_NUM_LIGHTS ${Math .min (numLights, browser .getMaxLights ())}`);
98602
- }
98603
-
98604
- if (numEnvironmentLights)
98605
- {
98606
- options .push ("X3D_USE_IBL")
98607
- options .push (`X3D_NUM_ENVIRONMENT_LIGHTS ${Math .min (numEnvironmentLights, browser .getMaxLights ())}`);
98608
- }
98609
-
98610
- if (numTextureProjectors)
98611
- {
98612
- options .push ("X3D_TEXTURE_PROJECTION")
98613
- options .push (`X3D_NUM_TEXTURE_PROJECTORS ${Math .min (numTextureProjectors, browser .getMaxTextures ())}`);
98614
- }
98615
-
98616
98599
  if (textureNode)
98617
98600
  {
98618
98601
  // X3DBackgroundNode textures
@@ -100305,6 +100288,10 @@ x_ite_Namespace .add ("Shape", "x_ite/Components/Shape/Shape", Shape_default_);
100305
100288
 
100306
100289
 
100307
100290
 
100291
+ /**
100292
+ * THIS NODE IS DEPRECIATED.
100293
+ */
100294
+
100308
100295
  function TwoSidedMaterial (executionContext)
100309
100296
  {
100310
100297
  console .warn ("TwoSidedMaterial is depreciated, please use Appearance backMaterial field instead.");
@@ -105716,6 +105703,10 @@ x_ite_Namespace .add ("SpatialSound", "x_ite/Components/Sound/SpatialSound", Spa
105716
105703
 
105717
105704
 
105718
105705
 
105706
+ /**
105707
+ * THIS NODE IS NOT SUPPORTED.
105708
+ */
105709
+
105719
105710
  function StreamAudioDestination (executionContext)
105720
105711
  {
105721
105712
  Sound_X3DSoundDestinationNode .call (this, executionContext);
@@ -105847,6 +105838,10 @@ x_ite_Namespace .add ("StreamAudioDestination", "x_ite/Components/Sound/StreamAu
105847
105838
 
105848
105839
 
105849
105840
 
105841
+ /**
105842
+ * THIS NODE IS NOT SUPPORTED.
105843
+ */
105844
+
105850
105845
  function StreamAudioSource (executionContext)
105851
105846
  {
105852
105847
  Sound_X3DSoundSourceNode .call (this, executionContext);
@@ -106321,8 +106316,8 @@ const GifMedia_default_ = GifMedia;
106321
106316
  x_ite_Namespace .add ("GifMedia", "x_ite/Browser/Texturing/GifMedia", GifMedia_default_);
106322
106317
  /* harmony default export */ const Texturing_GifMedia = (GifMedia_default_);
106323
106318
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Texturing/MovieTexture.js
106324
- /* provided dependency */ var MovieTexture_$ = __webpack_require__(786);
106325
- /* provided dependency */ var SuperGif = __webpack_require__(781);
106319
+ /* provided dependency */ var MovieTexture_$ = __webpack_require__(404);
106320
+ /* provided dependency */ var SuperGif = __webpack_require__(463);
106326
106321
  /*******************************************************************************
106327
106322
  *
106328
106323
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -109654,7 +109649,7 @@ const gettext_default_ = (string) => locale .get (string) || string;
109654
109649
  x_ite_Namespace .add ("gettext", "locale/gettext", gettext_default_);
109655
109650
  /* harmony default export */ const gettext = (gettext_default_);
109656
109651
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/BrowserTimings.js
109657
- /* provided dependency */ var BrowserTimings_$ = __webpack_require__(786);
109652
+ /* provided dependency */ var BrowserTimings_$ = __webpack_require__(404);
109658
109653
  /*******************************************************************************
109659
109654
  *
109660
109655
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -110227,7 +110222,7 @@ const TextureQuality_default_ = TextureQuality;
110227
110222
  x_ite_Namespace .add ("TextureQuality", "x_ite/Browser/Core/TextureQuality", TextureQuality_default_);
110228
110223
  /* harmony default export */ const Core_TextureQuality = (TextureQuality_default_);
110229
110224
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/BrowserOptions.js
110230
- /* provided dependency */ var BrowserOptions_$ = __webpack_require__(786);
110225
+ /* provided dependency */ var BrowserOptions_$ = __webpack_require__(404);
110231
110226
  /*******************************************************************************
110232
110227
  *
110233
110228
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -110848,7 +110843,7 @@ const RenderingProperties_default_ = RenderingProperties;
110848
110843
  x_ite_Namespace .add ("RenderingProperties", "x_ite/Browser/Core/RenderingProperties", RenderingProperties_default_);
110849
110844
  /* harmony default export */ const Core_RenderingProperties = (RenderingProperties_default_);
110850
110845
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/Notification.js
110851
- /* provided dependency */ var Notification_$ = __webpack_require__(786);
110846
+ /* provided dependency */ var Notification_$ = __webpack_require__(404);
110852
110847
  /*******************************************************************************
110853
110848
  *
110854
110849
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -110971,8 +110966,8 @@ const Notification_default_ = Notification;
110971
110966
  x_ite_Namespace .add ("Notification", "x_ite/Browser/Core/Notification", Notification_default_);
110972
110967
  /* harmony default export */ const Core_Notification = (Notification_default_);
110973
110968
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/ContextMenu.js
110974
- /* provided dependency */ var jquery_fullscreen = __webpack_require__(810);
110975
- /* provided dependency */ var ContextMenu_$ = __webpack_require__(786);
110969
+ /* provided dependency */ var jquery_fullscreen = __webpack_require__(912);
110970
+ /* provided dependency */ var ContextMenu_$ = __webpack_require__(404);
110976
110971
  /*******************************************************************************
110977
110972
  *
110978
110973
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -113725,7 +113720,7 @@ const DataStorage_default_ = DataStorage;
113725
113720
  x_ite_Namespace .add ("DataStorage", "standard/Utility/DataStorage", DataStorage_default_);
113726
113721
  /* harmony default export */ const Utility_DataStorage = (DataStorage_default_);
113727
113722
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/X3DCoreContext.js
113728
- /* provided dependency */ var X3DCoreContext_$ = __webpack_require__(786);
113723
+ /* provided dependency */ var X3DCoreContext_$ = __webpack_require__(404);
113729
113724
  /*******************************************************************************
113730
113725
  *
113731
113726
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -113819,8 +113814,8 @@ function X3DCoreContext (element)
113819
113814
  // Get canvas & context.
113820
113815
 
113821
113816
  const
113822
- browser = X3DCoreContext_$("<div></div>") .addClass ("x_ite-private-browser") .attr ("tabindex", 0),
113823
- surface = X3DCoreContext_$("<div></div>") .addClass ("x_ite-private-surface") .appendTo (browser),
113817
+ browser = X3DCoreContext_$("<div></div>") .addClass ("x_ite-private-browser") .attr ("part", "browser") .attr ("tabindex", 0),
113818
+ surface = X3DCoreContext_$("<div></div>") .addClass ("x_ite-private-surface") .attr ("part", "surface") .appendTo (browser),
113824
113819
  splashScreen = X3DCoreContext_$("<div></div>") .hide () .addClass ("x_ite-private-splash-screen") .appendTo (browser),
113825
113820
  spinner = X3DCoreContext_$("<div></div>") .addClass ("x_ite-private-spinner") .appendTo (splashScreen),
113826
113821
  progress = X3DCoreContext_$("<div></div>") .addClass ("x_ite-private-progress") .appendTo (splashScreen);
@@ -113855,7 +113850,7 @@ function X3DCoreContext (element)
113855
113850
  this [_mobile] = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i .test (navigator .userAgent);
113856
113851
  this [_element] = element;
113857
113852
  this [_surface] = surface;
113858
- this [_canvas] = X3DCoreContext_$("<canvas></canvas>") .addClass ("x_ite-private-canvas") .prependTo (surface);
113853
+ this [_canvas] = X3DCoreContext_$("<canvas></canvas>") .attr ("part", "canvas") .addClass ("x_ite-private-canvas") .prependTo (surface);
113859
113854
  this [_context] = Core_Context .create (this [_canvas] [0], WEBGL_VERSION, element .attr ("preserveDrawingBuffer") === "true", this [_mobile]);
113860
113855
  this [_splashScreen] = splashScreen;
113861
113856
 
@@ -116305,8 +116300,8 @@ const X3DViewer_default_ = X3DViewer;
116305
116300
  x_ite_Namespace .add ("X3DViewer", "x_ite/Browser/Navigation/X3DViewer", X3DViewer_default_);
116306
116301
  /* harmony default export */ const Navigation_X3DViewer = (X3DViewer_default_);
116307
116302
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/ExamineViewer.js
116308
- /* provided dependency */ var jquery_mousewheel = __webpack_require__(832);
116309
- /* provided dependency */ var ExamineViewer_$ = __webpack_require__(786);
116303
+ /* provided dependency */ var jquery_mousewheel = __webpack_require__(290);
116304
+ /* provided dependency */ var ExamineViewer_$ = __webpack_require__(404);
116310
116305
  /*******************************************************************************
116311
116306
  *
116312
116307
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -117222,8 +117217,8 @@ const ExamineViewer_default_ = ExamineViewer;
117222
117217
  x_ite_Namespace .add ("ExamineViewer", "x_ite/Browser/Navigation/ExamineViewer", ExamineViewer_default_);
117223
117218
  /* harmony default export */ const Navigation_ExamineViewer = (ExamineViewer_default_);
117224
117219
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/X3DFlyViewer.js
117225
- /* provided dependency */ var X3DFlyViewer_jquery_mousewheel = __webpack_require__(832);
117226
- /* provided dependency */ var X3DFlyViewer_$ = __webpack_require__(786);
117220
+ /* provided dependency */ var X3DFlyViewer_jquery_mousewheel = __webpack_require__(290);
117221
+ /* provided dependency */ var X3DFlyViewer_$ = __webpack_require__(404);
117227
117222
  /*******************************************************************************
117228
117223
  *
117229
117224
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -118238,8 +118233,8 @@ const FlyViewer_default_ = FlyViewer;
118238
118233
  x_ite_Namespace .add ("FlyViewer", "x_ite/Browser/Navigation/FlyViewer", FlyViewer_default_);
118239
118234
  /* harmony default export */ const Navigation_FlyViewer = (FlyViewer_default_);
118240
118235
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/PlaneViewer.js
118241
- /* provided dependency */ var PlaneViewer_jquery_mousewheel = __webpack_require__(832);
118242
- /* provided dependency */ var PlaneViewer_$ = __webpack_require__(786);
118236
+ /* provided dependency */ var PlaneViewer_jquery_mousewheel = __webpack_require__(290);
118237
+ /* provided dependency */ var PlaneViewer_$ = __webpack_require__(404);
118243
118238
  /*******************************************************************************
118244
118239
  *
118245
118240
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -118570,8 +118565,8 @@ const NoneViewer_default_ = NoneViewer;
118570
118565
  x_ite_Namespace .add ("NoneViewer", "x_ite/Browser/Navigation/NoneViewer", NoneViewer_default_);
118571
118566
  /* harmony default export */ const Navigation_NoneViewer = (NoneViewer_default_);
118572
118567
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/LookAtViewer.js
118573
- /* provided dependency */ var LookAtViewer_jquery_mousewheel = __webpack_require__(832);
118574
- /* provided dependency */ var LookAtViewer_$ = __webpack_require__(786);
118568
+ /* provided dependency */ var LookAtViewer_jquery_mousewheel = __webpack_require__(290);
118569
+ /* provided dependency */ var LookAtViewer_$ = __webpack_require__(404);
118575
118570
  /*******************************************************************************
118576
118571
  *
118577
118572
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -119159,20 +119154,6 @@ const
119159
119154
  _viewerNode = Symbol (),
119160
119155
  _headlightContainer = Symbol ();
119161
119156
 
119162
- function getHeadlight (browser)
119163
- {
119164
- const headlight = new Lighting_DirectionalLight (browser .getPrivateScene ());
119165
-
119166
- headlight .setup ();
119167
-
119168
- const headlightContainer = headlight .getLights () .pop ();
119169
-
119170
- headlightContainer .set (headlight, null, Numbers_Matrix4 .Identity);
119171
- headlightContainer .dispose = Function .prototype;
119172
-
119173
- return headlightContainer;
119174
- };
119175
-
119176
119157
  function X3DNavigationContext ()
119177
119158
  {
119178
119159
  this .addChildObjects (Base_X3DConstants .outputOnly, "activeLayer", new x_ite_Fields .SFNode (),
@@ -119194,9 +119175,22 @@ Object .assign (X3DNavigationContext .prototype,
119194
119175
  this .initialized () .addInterest ("set_world__", this);
119195
119176
  this .shutdown () .addInterest ("remove_world__", this);
119196
119177
 
119197
- this [_headlightContainer] = getHeadlight (this);
119178
+ this [_headlightContainer] = this .createHeadlight ();
119198
119179
  this [_viewerNode] .setup ();
119199
119180
  },
119181
+ createHeadlight ()
119182
+ {
119183
+ const headlight = new Lighting_DirectionalLight (this .getPrivateScene ());
119184
+
119185
+ headlight .setup ();
119186
+
119187
+ const headlightContainer = headlight .getLights () .pop ();
119188
+
119189
+ headlightContainer .set (headlight, null, Numbers_Matrix4 .Identity);
119190
+ headlightContainer .dispose = Function .prototype;
119191
+
119192
+ return headlightContainer;
119193
+ },
119200
119194
  getHeadlight ()
119201
119195
  {
119202
119196
  return this [_headlightContainer];
@@ -119711,8 +119705,8 @@ const X3DPickingContext_default_ = X3DPickingContext;
119711
119705
  x_ite_Namespace .add ("X3DPickingContext", "x_ite/Browser/Picking/X3DPickingContext", X3DPickingContext_default_);
119712
119706
  /* harmony default export */ const Picking_X3DPickingContext = (X3DPickingContext_default_);
119713
119707
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/PointingDeviceSensor/PointingDevice.js
119714
- /* provided dependency */ var PointingDevice_jquery_mousewheel = __webpack_require__(832);
119715
- /* provided dependency */ var PointingDevice_$ = __webpack_require__(786);
119708
+ /* provided dependency */ var PointingDevice_jquery_mousewheel = __webpack_require__(290);
119709
+ /* provided dependency */ var PointingDevice_$ = __webpack_require__(404);
119716
119710
  /*******************************************************************************
119717
119711
  *
119718
119712
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -120536,14 +120530,11 @@ Object .assign (X3DPointingDeviceSensorContext .prototype,
120536
120530
 
120537
120531
  let key = "";
120538
120532
 
120539
- key += numClipPlanes;
120540
- key += ".";
120533
+ key += numClipPlanes; // Could be more than 9.
120534
+ key += humanoidNode ?.getHumanoidKey () ?? "[]";
120541
120535
  key += shapeNode .getShapeKey ();
120542
120536
  key += geometryType;
120543
- key += hasNormals;
120544
- key += ".";
120545
- key += humanoidNode ?.getHumanoidKey () ?? "";
120546
- key += ".";
120537
+ key += hasNormals ? 1 : 0;
120547
120538
 
120548
120539
  if (geometryType >= 2)
120549
120540
  {
@@ -121016,7 +121007,7 @@ const MultiSampleFrameBuffer_default_ = MultiSampleFrameBuffer;
121016
121007
  x_ite_Namespace .add ("MultiSampleFrameBuffer", "x_ite/Rendering/MultiSampleFrameBuffer", MultiSampleFrameBuffer_default_);
121017
121008
  /* harmony default export */ const Rendering_MultiSampleFrameBuffer = (MultiSampleFrameBuffer_default_);
121018
121009
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Rendering/X3DRenderingContext.js
121019
- /* provided dependency */ var X3DRenderingContext_$ = __webpack_require__(786);
121010
+ /* provided dependency */ var X3DRenderingContext_$ = __webpack_require__(404);
121020
121011
  /*******************************************************************************
121021
121012
  *
121022
121013
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -121068,6 +121059,8 @@ x_ite_Namespace .add ("MultiSampleFrameBuffer", "x_ite/Rendering/MultiSampleFram
121068
121059
 
121069
121060
 
121070
121061
 
121062
+
121063
+
121071
121064
  const
121072
121065
  _viewport = Symbol (),
121073
121066
  _frameBuffer = Symbol (),
@@ -121081,7 +121074,9 @@ const
121081
121074
 
121082
121075
  function X3DRenderingContext ()
121083
121076
  {
121084
- this [_viewport] = new Numbers_Vector4 (0, 0, 300, 150);
121077
+
121078
+ this .addChildObjects (Base_X3DConstants .outputOnly, "viewport", new x_ite_Fields .MFInt32 (0, 0, 300, 150));
121079
+
121085
121080
  this [_frameBuffer] = new Rendering_MultiSampleFrameBuffer (this, 300, 150, 4);
121086
121081
  this [_localObjects] = [ ]; // shader objects dumpster
121087
121082
  this [_depthShaders] = new Map ();
@@ -121173,7 +121168,7 @@ Object .assign (X3DRenderingContext .prototype,
121173
121168
  },
121174
121169
  getViewport ()
121175
121170
  {
121176
- return this [_viewport];
121171
+ return this ._viewport;
121177
121172
  },
121178
121173
  getLocalObjects ()
121179
121174
  {
@@ -121231,13 +121226,10 @@ Object .assign (X3DRenderingContext .prototype,
121231
121226
 
121232
121227
  let key = "";
121233
121228
 
121234
- key += numClipPlanes;
121235
- key += ".";
121229
+ key += numClipPlanes; // Could be more than 9.
121230
+ key += humanoidNode ?.getHumanoidKey () ?? "[]";
121236
121231
  key += shapeNode .getShapeKey ();
121237
121232
  key += geometryContext .geometryType;
121238
- key += ".";
121239
- key += humanoidNode ?.getHumanoidKey () ?? "";
121240
- key += ".";
121241
121233
 
121242
121234
  if (geometryContext .geometryType >= 2)
121243
121235
  {
@@ -121291,6 +121283,32 @@ Object .assign (X3DRenderingContext .prototype,
121291
121283
 
121292
121284
  return shaderNode;
121293
121285
  },
121286
+ resize (width, height)
121287
+ {
121288
+ return new Promise (resolve =>
121289
+ {
121290
+ const key = Symbol ();
121291
+
121292
+ const test = () =>
121293
+ {
121294
+ if (this ._viewport [2] !== width)
121295
+ return;
121296
+
121297
+ if (this ._viewport [2] !== height)
121298
+ return;
121299
+
121300
+ this ._viewport .removeFieldCallback (key);
121301
+
121302
+ resolve ();
121303
+ }
121304
+
121305
+ this .getElement () .css ({ "width": `${width}px`, "height": `${height}px` });
121306
+
121307
+ this ._viewport .addFieldCallback (key, test);
121308
+
121309
+ test ();
121310
+ });
121311
+ },
121294
121312
  reshape ()
121295
121313
  {
121296
121314
  const
@@ -121306,8 +121324,8 @@ Object .assign (X3DRenderingContext .prototype,
121306
121324
  canvas .prop ("width", width);
121307
121325
  canvas .prop ("height", height);
121308
121326
 
121309
- this [_viewport] [2] = width;
121310
- this [_viewport] [3] = height;
121327
+ this ._viewport [2] = width;
121328
+ this ._viewport [3] = height;
121311
121329
 
121312
121330
  if (width === this [_frameBuffer] .getWidth () &&
121313
121331
  height === this [_frameBuffer] .getHeight () &&
@@ -121993,7 +122011,7 @@ const X3DSoundContext_default_ = X3DSoundContext;
121993
122011
  x_ite_Namespace .add ("X3DSoundContext", "x_ite/Browser/Sound/X3DSoundContext", X3DSoundContext_default_);
121994
122012
  /* harmony default export */ const Sound_X3DSoundContext = (X3DSoundContext_default_);
121995
122013
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Texturing/KTXDecoder.js
121996
- /* provided dependency */ var KTXDecoder_$ = __webpack_require__(786);
122014
+ /* provided dependency */ var KTXDecoder_$ = __webpack_require__(404);
121997
122015
  const KTXDecoder_default_ = class KTXDecoder
121998
122016
  {
121999
122017
  constructor (gl, externalKtxlib, scriptDir)
@@ -123162,7 +123180,8 @@ function X3DBrowserContext (element)
123162
123180
  Base_X3DConstants .outputOnly, "timeEvents", new Fields_SFTime (),
123163
123181
  Base_X3DConstants .outputOnly, "sensorEvents", new Fields_SFTime (),
123164
123182
  Base_X3DConstants .outputOnly, "displayEvents", new Fields_SFTime (),
123165
- Base_X3DConstants .outputOnly, "finishedEvents", new Fields_SFTime ());
123183
+ Base_X3DConstants .outputOnly, "finishedEvents", new Fields_SFTime (),
123184
+ Base_X3DConstants .outputOnly, "endEvents", new Fields_SFTime ());
123166
123185
 
123167
123186
  this [X3DBrowserContext_tainted] = false;
123168
123187
  this [_previousTime] = 0;
@@ -123247,6 +123266,10 @@ Object .assign (Object .setPrototypeOf (X3DBrowserContext .prototype, Base_X3DBa
123247
123266
  {
123248
123267
  return this ._finishedEvents;
123249
123268
  },
123269
+ endEvents ()
123270
+ {
123271
+ return this ._endEvents;
123272
+ },
123250
123273
  getBrowser ()
123251
123274
  {
123252
123275
  return this;
@@ -123272,6 +123295,21 @@ Object .assign (Object .setPrototypeOf (X3DBrowserContext .prototype, Base_X3DBa
123272
123295
  this [X3DBrowserContext_tainted] = true;
123273
123296
  this [_animFrame] = requestAnimationFrame (this [_renderCallback]);
123274
123297
  },
123298
+ nextFrame ()
123299
+ {
123300
+ return new Promise (resolve =>
123301
+ {
123302
+ const key = Symbol ();
123303
+
123304
+ this .addBrowserEvent ();
123305
+
123306
+ this ._endEvents .addFieldCallback (key, () =>
123307
+ {
123308
+ this ._endEvents .removeFieldCallback (key);
123309
+ resolve ();
123310
+ });
123311
+ });
123312
+ },
123275
123313
  [_limitFrameRate] (now)
123276
123314
  {
123277
123315
  if (now > this [_previousTime])
@@ -123300,7 +123338,7 @@ Object .assign (Object .setPrototypeOf (X3DBrowserContext .prototype, Base_X3DBa
123300
123338
  this [_systemTime] .stop ();
123301
123339
  this [_browserTime] .start ();
123302
123340
 
123303
- // time
123341
+ // Time
123304
123342
 
123305
123343
  this .advanceTime ();
123306
123344
 
@@ -123347,6 +123385,9 @@ Object .assign (Object .setPrototypeOf (X3DBrowserContext .prototype, Base_X3DBa
123347
123385
  this .getFrameBuffer () .blit ();
123348
123386
  this [_displayTime] .stop ();
123349
123387
 
123388
+ this .addTaintedField (this ._endEvents);
123389
+ this [X3DBrowserContext_processEvents] ();
123390
+
123350
123391
  // Finish
123351
123392
 
123352
123393
  this [_browserTime] .stop ();
@@ -123584,7 +123625,7 @@ const Components_default_ = Components;
123584
123625
  x_ite_Namespace .add ("Components", "x_ite/Components", Components_default_);
123585
123626
  /* harmony default export */ const x_ite_Components = ((/* unused pure expression or super */ null && (Components_default_)));
123586
123627
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/DOMIntegration.js
123587
- /* provided dependency */ var DOMIntegration_$ = __webpack_require__(786);
123628
+ /* provided dependency */ var DOMIntegration_$ = __webpack_require__(404);
123588
123629
  /*******************************************************************************
123589
123630
  * MIT License
123590
123631
  *
@@ -124852,7 +124893,7 @@ const FieldTypes_default_ = new Configuration_FieldTypesArray (Object .values (x
124852
124893
  x_ite_Namespace .add ("FieldTypes", "x_ite/Configuration/FieldTypes", FieldTypes_default_);
124853
124894
  /* harmony default export */ const FieldTypes = (FieldTypes_default_);
124854
124895
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/X3DBrowser.js
124855
- /* provided dependency */ var X3DBrowser_$ = __webpack_require__(786);
124896
+ /* provided dependency */ var X3DBrowser_$ = __webpack_require__(404);
124856
124897
  /*******************************************************************************
124857
124898
  *
124858
124899
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -125954,7 +125995,7 @@ const X3DBrowser_default_ = X3DBrowser;
125954
125995
  x_ite_Namespace .add ("X3DBrowser", "x_ite/Browser/X3DBrowser", X3DBrowser_default_);
125955
125996
  /* harmony default export */ const Browser_X3DBrowser = (X3DBrowser_default_);
125956
125997
  ;// CONCATENATED MODULE: ./src/x_ite/X3DCanvasElement.js
125957
- /* provided dependency */ var X3DCanvasElement_$ = __webpack_require__(786);
125998
+ /* provided dependency */ var X3DCanvasElement_$ = __webpack_require__(404);
125958
125999
  /*******************************************************************************
125959
126000
  *
125960
126001
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -126006,13 +126047,19 @@ x_ite_Namespace .add ("X3DBrowser", "x_ite/Browser/X3DBrowser", X3DBrowser_defau
126006
126047
 
126007
126048
  class X3DCanvasElement extends HTMLElement
126008
126049
  {
126050
+ browser;
126051
+
126009
126052
  constructor ()
126010
126053
  {
126011
126054
  try
126012
126055
  {
126013
126056
  super ();
126014
126057
 
126015
- new Browser_X3DBrowser (this)
126058
+ Object .defineProperty (this, "browser",
126059
+ {
126060
+ value: new Browser_X3DBrowser (this),
126061
+ enumerable: true,
126062
+ });
126016
126063
  }
126017
126064
  catch (error)
126018
126065
  {
@@ -126098,8 +126145,8 @@ const X3DCanvasElement_default_ = X3DCanvasElement;
126098
126145
  x_ite_Namespace .add ("X3DCanvasElement", "x_ite/X3DCanvasElement", X3DCanvasElement_default_);
126099
126146
  /* harmony default export */ const x_ite_X3DCanvasElement = (X3DCanvasElement_default_);
126100
126147
  ;// CONCATENATED MODULE: ./src/lib/jquery.js
126101
- /* provided dependency */ var jquery_$ = __webpack_require__(786);
126102
- /* provided dependency */ var pako = __webpack_require__(826);
126148
+ /* provided dependency */ var jquery_$ = __webpack_require__(404);
126149
+ /* provided dependency */ var pako = __webpack_require__(976);
126103
126150
  Object .assign (jquery_$,
126104
126151
  {
126105
126152
  decodeText (input)
@@ -126176,14 +126223,14 @@ const jquery_default_ = jquery_$;
126176
126223
  x_ite_Namespace .add ("jquery", "lib/jquery", jquery_default_);
126177
126224
  /* harmony default export */ const jquery = ((/* unused pure expression or super */ null && (jquery_default_)));
126178
126225
  ;// CONCATENATED MODULE: ./src/lib/libtess.js
126179
- /* provided dependency */ var libtess_libtess = __webpack_require__(315);
126226
+ /* provided dependency */ var libtess_libtess = __webpack_require__(185);
126180
126227
  const libtess_default_ = libtess_libtess;
126181
126228
  ;
126182
126229
 
126183
126230
  x_ite_Namespace .add ("libtess", "lib/libtess", libtess_default_);
126184
126231
  /* harmony default export */ const lib_libtess = ((/* unused pure expression or super */ null && (libtess_default_)));
126185
126232
  ;// CONCATENATED MODULE: ./src/x_ite/X3D.js
126186
- /* provided dependency */ var X3D_$ = __webpack_require__(786);
126233
+ /* provided dependency */ var X3D_$ = __webpack_require__(404);
126187
126234
  /*******************************************************************************
126188
126235
  *
126189
126236
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -126491,7 +126538,7 @@ Object .assign (X3D,
126491
126538
 
126492
126539
  // Assign X3D to global namespace.
126493
126540
 
126494
- window [Symbol .for ("X_ITE.X3D-10.0.2")] = x_ite_X3D;
126541
+ window [Symbol .for ("X_ITE.X3D-10.0.4")] = x_ite_X3D;
126495
126542
 
126496
126543
  customElements .define ("x3d-canvas", x_ite_X3DCanvasElement);
126497
126544