x_ite 8.10.1 → 8.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/Makefile +3 -0
  2. package/build/bin/version.pl +28 -20
  3. package/build/docs/glTF-samples.pl +151 -0
  4. package/build/docs/nodes.pl +1 -1
  5. package/build/src/nodes.pl +41 -0
  6. package/dist/assets/components/Annotation.js +13 -13
  7. package/dist/assets/components/Annotation.min.js +1 -1
  8. package/dist/assets/components/CADGeometry.js +13 -13
  9. package/dist/assets/components/CADGeometry.min.js +1 -1
  10. package/dist/assets/components/CubeMapTexturing.js +30 -26
  11. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  12. package/dist/assets/components/DIS.js +14 -14
  13. package/dist/assets/components/DIS.min.js +1 -1
  14. package/dist/assets/components/EventUtilities.js +9 -9
  15. package/dist/assets/components/EventUtilities.min.js +1 -1
  16. package/dist/assets/components/Geometry2D.js +19 -19
  17. package/dist/assets/components/Geometry2D.min.js +1 -1
  18. package/dist/assets/components/Geospatial.js +33 -33
  19. package/dist/assets/components/Geospatial.min.js +1 -1
  20. package/dist/assets/components/HAnim.js +394 -30
  21. package/dist/assets/components/HAnim.min.js +1 -1
  22. package/dist/assets/components/KeyDeviceSensor.js +8 -8
  23. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  24. package/dist/assets/components/Layout.js +26 -26
  25. package/dist/assets/components/Layout.min.js +1 -1
  26. package/dist/assets/components/NURBS.js +24 -24
  27. package/dist/assets/components/NURBS.min.js +1 -1
  28. package/dist/assets/components/ParticleSystems.js +73 -74
  29. package/dist/assets/components/ParticleSystems.min.js +1 -1
  30. package/dist/assets/components/Picking.js +18 -18
  31. package/dist/assets/components/Picking.min.js +1 -1
  32. package/dist/assets/components/RigidBodyPhysics.js +18 -18
  33. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  34. package/dist/assets/components/Scripting.js +37 -37
  35. package/dist/assets/components/Scripting.min.js +1 -1
  36. package/dist/assets/components/Text.js +55 -63
  37. package/dist/assets/components/Text.min.js +1 -1
  38. package/dist/assets/components/TextureProjector.js +14 -14
  39. package/dist/assets/components/TextureProjector.min.js +1 -1
  40. package/dist/assets/components/Texturing3D.js +35 -31
  41. package/dist/assets/components/Texturing3D.min.js +1 -1
  42. package/dist/assets/components/VolumeRendering.js +20 -20
  43. package/dist/assets/components/VolumeRendering.min.js +1 -1
  44. package/dist/assets/components/X_ITE.js +9 -9
  45. package/dist/assets/components/X_ITE.min.js +1 -1
  46. package/dist/x_ite.css +1 -1
  47. package/dist/x_ite.js +1456 -844
  48. package/dist/x_ite.min.js +1 -1
  49. package/dist/x_ite.zip +0 -0
  50. package/docs/_config.yml +2 -2
  51. package/docs/_posts/components/Core/MetadataBoolean.md +6 -4
  52. package/docs/_posts/components/Core/MetadataDouble.md +6 -4
  53. package/docs/_posts/components/Core/MetadataFloat.md +6 -4
  54. package/docs/_posts/components/Core/MetadataInteger.md +6 -4
  55. package/docs/_posts/components/Core/MetadataSet.md +6 -4
  56. package/docs/_posts/components/Core/MetadataString.md +6 -4
  57. package/docs/_posts/components/DIS/DISEntityTypeMapping.md +1 -1
  58. package/docs/_posts/components/HAnim/HAnimMotion.md +48 -48
  59. package/docs/_posts/components/RigidBodyPhysics/Contact.md +1 -1
  60. package/docs/_posts/getting-started.md +45 -35
  61. package/docs/_posts/reference/browser-services.md +6 -0
  62. package/docs/_tabs/playground.html +215 -15
  63. package/docs/assets/css/style.scss +35 -2
  64. package/docs/assets/js/example.js +95 -3
  65. package/docs/laboratory/gltf-sample-viewer.html +603 -235
  66. package/package.json +2 -2
  67. package/src/assets/shaders/Types.glsl.js +4 -0
  68. package/src/assets/shaders/webgl1/include/Hatch.glsl.js +2 -3
  69. package/src/assets/shaders/webgl2/Compose.fs.js +29 -0
  70. package/src/assets/shaders/webgl2/Compose.vs.js +14 -0
  71. package/src/assets/shaders/webgl2/include/Fragment.glsl.js +24 -2
  72. package/src/assets/shaders/webgl2/include/Hatch.glsl.js +2 -3
  73. package/src/assets/shaders/webgl2/include/Stipple.glsl.js +5 -3
  74. package/src/bookmarks.js +92 -5
  75. package/src/examples.js +1 -0
  76. package/src/standard/Math/Numbers/Quaternion.js +191 -13
  77. package/src/standard/Math/Numbers/Rotation4.js +23 -0
  78. package/src/standard/Time/{MicroTime.js → Time.js} +21 -28
  79. package/src/x_ite/Base/X3DChildObject.js +5 -4
  80. package/src/x_ite/Browser/Core/BrowserOptions.js +71 -60
  81. package/src/x_ite/Browser/Core/Context.js +2 -2
  82. package/src/x_ite/Browser/Core/X3DCoreContext.js +6 -0
  83. package/src/x_ite/Browser/DOMIntegration.js +0 -17
  84. package/src/x_ite/Browser/Navigation/ExamineViewer.js +5 -4
  85. package/src/x_ite/Browser/Navigation/X3DFlyViewer.js +7 -4
  86. package/src/x_ite/Browser/Rendering/X3DRenderingContext.js +20 -15
  87. package/src/x_ite/Browser/Shaders/Shaders.js +19 -15
  88. package/src/x_ite/Browser/Text/X3DTextContext.js +16 -16
  89. package/src/x_ite/Browser/Time/X3DTimeContext.js +3 -2
  90. package/src/x_ite/Browser/VERSION.js +1 -1
  91. package/src/x_ite/Browser/VolumeRendering/VolumeMaterial.js +2 -2
  92. package/src/x_ite/Browser/X3DBrowser.js +1 -2
  93. package/src/x_ite/Browser/X3DBrowserContext.js +0 -5
  94. package/src/x_ite/Components/Core/MetadataBoolean.js +8 -1
  95. package/src/x_ite/Components/Core/MetadataDouble.js +8 -1
  96. package/src/x_ite/Components/Core/MetadataFloat.js +8 -1
  97. package/src/x_ite/Components/Core/MetadataInteger.js +8 -1
  98. package/src/x_ite/Components/Core/MetadataSet.js +8 -1
  99. package/src/x_ite/Components/Core/MetadataString.js +8 -1
  100. package/src/x_ite/Components/Core/X3DPrototypeInstance.js +9 -6
  101. package/src/x_ite/Components/CubeMapTexturing/ImageCubeMapTexture.js +2 -1
  102. package/src/x_ite/Components/DIS/DISEntityTypeMapping.js +1 -1
  103. package/src/x_ite/Components/EnvironmentalEffects/X3DBackgroundNode.js +5 -1
  104. package/src/x_ite/Components/Grouping/X3DGroupingNode.js +2 -0
  105. package/src/x_ite/Components/HAnim/HAnimHumanoid.js +34 -2
  106. package/src/x_ite/Components/HAnim/HAnimMotion.js +331 -15
  107. package/src/x_ite/Components/Lighting/DirectionalLight.js +1 -3
  108. package/src/x_ite/Components/Lighting/PointLight.js +1 -3
  109. package/src/x_ite/Components/Lighting/SpotLight.js +1 -3
  110. package/src/x_ite/Components/Networking/X3DUrlObject.js +5 -4
  111. package/src/x_ite/Components/ParticleSystems/ParticleSystem.js +47 -51
  112. package/src/x_ite/Components/Rendering/X3DGeometryNode.js +4 -2
  113. package/src/x_ite/Components/RigidBodyPhysics/Contact.js +1 -1
  114. package/src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js +1 -1
  115. package/src/x_ite/Components/Shape/FillProperties.js +4 -0
  116. package/src/x_ite/Components/Shape/LineProperties.js +4 -0
  117. package/src/x_ite/Components/Shape/PointProperties.js +4 -0
  118. package/src/x_ite/Components/Shape/X3DMaterialNode.js +44 -20
  119. package/src/x_ite/Components/Sound/AudioClip.js +2 -1
  120. package/src/x_ite/Components/Text/X3DFontStyleNode.js +13 -23
  121. package/src/x_ite/Components/Texturing/ImageTexture.js +2 -1
  122. package/src/x_ite/Components/Texturing/MovieTexture.js +2 -1
  123. package/src/x_ite/Components/Texturing3D/ImageTextureAtlas.js +2 -1
  124. package/src/x_ite/Components/Time/TimeSensor.js +25 -24
  125. package/src/x_ite/Components/Time/X3DTimeDependentNode.js +5 -4
  126. package/src/x_ite/Execution/BindableList.js +3 -3
  127. package/src/x_ite/Execution/X3DScene.js +2 -0
  128. package/src/x_ite/Parser/XMLParser.js +12 -2
  129. package/src/x_ite/Rendering/MultiSampleFrameBuffer.js +264 -26
  130. package/src/x_ite/Rendering/PointingBuffer.js +5 -7
  131. package/src/x_ite/Rendering/TextureBuffer.js +6 -14
  132. package/src/x_ite/Rendering/X3DRenderObject.js +28 -28
  133. package/src/x_ite/X3D.js +0 -1
  134. package/src/x_ite/X3DCanvasElement.js +2 -0
  135. package/src/x_ite.html +23 -24
  136. package/x_ite.min.html +23 -24
  137. /package/build/{bin → docs}/tags.pl +0 -0
@@ -1,11 +1,11 @@
1
- /* X_ITE v8.10.1 */(() => { // webpackBootstrap
1
+ /* X_ITE v8.11.1 */(() => { // webpackBootstrap
2
2
  /******/ "use strict";
3
3
  /******/ var __webpack_modules__ = ({
4
4
 
5
5
  /***/ 355:
6
6
  /***/ ((module) => {
7
7
 
8
- module.exports = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("lib/jquery");
8
+ module.exports = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("lib/jquery");
9
9
 
10
10
  /***/ })
11
11
 
@@ -73,22 +73,22 @@ var __webpack_exports__ = {};
73
73
  // UNUSED EXPORTS: default
74
74
 
75
75
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components\")"
76
- const Components_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Components");
76
+ const Components_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Components");
77
77
  var Components_default = /*#__PURE__*/__webpack_require__.n(Components_namespaceObject);
78
78
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Fields\")"
79
- const Fields_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Fields");
79
+ const Fields_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Fields");
80
80
  var Fields_default = /*#__PURE__*/__webpack_require__.n(Fields_namespaceObject);
81
81
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/X3DFieldDefinition\")"
82
- const X3DFieldDefinition_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Base/X3DFieldDefinition");
82
+ const X3DFieldDefinition_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Base/X3DFieldDefinition");
83
83
  var X3DFieldDefinition_default = /*#__PURE__*/__webpack_require__.n(X3DFieldDefinition_namespaceObject);
84
84
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/FieldDefinitionArray\")"
85
- const FieldDefinitionArray_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Base/FieldDefinitionArray");
85
+ const FieldDefinitionArray_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Base/FieldDefinitionArray");
86
86
  var FieldDefinitionArray_default = /*#__PURE__*/__webpack_require__.n(FieldDefinitionArray_namespaceObject);
87
87
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Core/X3DNode\")"
88
- const X3DNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Components/Core/X3DNode");
88
+ const X3DNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Components/Core/X3DNode");
89
89
  var X3DNode_default = /*#__PURE__*/__webpack_require__.n(X3DNode_namespaceObject);
90
90
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Namespace\")"
91
- const Namespace_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Namespace");
91
+ const Namespace_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Namespace");
92
92
  var Namespace_default = /*#__PURE__*/__webpack_require__.n(Namespace_namespaceObject);
93
93
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/ParticleSystems/GeometryTypes.js
94
94
  /*******************************************************************************
@@ -155,7 +155,7 @@ const __default__ = GeometryTypes;
155
155
  Namespace_default().set ("x_ite/Browser/ParticleSystems/GeometryTypes", __default__);
156
156
  /* harmony default export */ const ParticleSystems_GeometryTypes = (__default__);
157
157
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/X3DConstants\")"
158
- const X3DConstants_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Base/X3DConstants");
158
+ const X3DConstants_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Base/X3DConstants");
159
159
  var X3DConstants_default = /*#__PURE__*/__webpack_require__.n(X3DConstants_namespaceObject);
160
160
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/ParticleSystems/Line3.glsl.js
161
161
  const Line3_glsl_default_ = /* glsl*/ `
@@ -1634,7 +1634,7 @@ const X3DParticleEmitterNode_default_ = X3DParticleEmitterNode;
1634
1634
  Namespace_default().set ("x_ite/Components/ParticleSystems/X3DParticleEmitterNode", X3DParticleEmitterNode_default_);
1635
1635
  /* harmony default export */ const ParticleSystems_X3DParticleEmitterNode = (X3DParticleEmitterNode_default_);
1636
1636
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Numbers/Vector3\")"
1637
- const Vector3_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("standard/Math/Numbers/Vector3");
1637
+ const Vector3_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("standard/Math/Numbers/Vector3");
1638
1638
  var Vector3_default = /*#__PURE__*/__webpack_require__.n(Vector3_namespaceObject);
1639
1639
  ;// CONCATENATED MODULE: ./src/x_ite/Components/ParticleSystems/PointEmitter.js
1640
1640
  /*******************************************************************************
@@ -1955,7 +1955,7 @@ const X3DParticlePhysicsModelNode_default_ = X3DParticlePhysicsModelNode;
1955
1955
  Namespace_default().set ("x_ite/Components/ParticleSystems/X3DParticlePhysicsModelNode", X3DParticlePhysicsModelNode_default_);
1956
1956
  /* harmony default export */ const ParticleSystems_X3DParticlePhysicsModelNode = (X3DParticlePhysicsModelNode_default_);
1957
1957
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/X3DCast\")"
1958
- const X3DCast_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Base/X3DCast");
1958
+ const X3DCast_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Base/X3DCast");
1959
1959
  var X3DCast_default = /*#__PURE__*/__webpack_require__.n(X3DCast_namespaceObject);
1960
1960
  ;// CONCATENATED MODULE: ./src/x_ite/Components/ParticleSystems/BoundedPhysicsModel.js
1961
1961
  /*******************************************************************************
@@ -2529,28 +2529,28 @@ const ForcePhysicsModel_default_ = ForcePhysicsModel;
2529
2529
  Namespace_default().set ("x_ite/Components/ParticleSystems/ForcePhysicsModel", ForcePhysicsModel_default_);
2530
2530
  /* harmony default export */ const ParticleSystems_ForcePhysicsModel = (ForcePhysicsModel_default_);
2531
2531
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Shape/X3DShapeNode\")"
2532
- const X3DShapeNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Components/Shape/X3DShapeNode");
2532
+ const X3DShapeNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Components/Shape/X3DShapeNode");
2533
2533
  var X3DShapeNode_default = /*#__PURE__*/__webpack_require__.n(X3DShapeNode_namespaceObject);
2534
2534
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Browser/Rendering/GeometryContext\")"
2535
- const GeometryContext_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Browser/Rendering/GeometryContext");
2535
+ const GeometryContext_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Browser/Rendering/GeometryContext");
2536
2536
  var GeometryContext_default = /*#__PURE__*/__webpack_require__.n(GeometryContext_namespaceObject);
2537
2537
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Rendering/VertexArray\")"
2538
- const VertexArray_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Rendering/VertexArray");
2538
+ const VertexArray_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Rendering/VertexArray");
2539
2539
  var VertexArray_default = /*#__PURE__*/__webpack_require__.n(VertexArray_namespaceObject);
2540
2540
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Rendering/TraverseType\")"
2541
- const TraverseType_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Rendering/TraverseType");
2541
+ const TraverseType_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Rendering/TraverseType");
2542
2542
  var TraverseType_default = /*#__PURE__*/__webpack_require__.n(TraverseType_namespaceObject);
2543
2543
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Browser/Shape/AlphaMode\")"
2544
- const AlphaMode_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Browser/Shape/AlphaMode");
2544
+ const AlphaMode_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Browser/Shape/AlphaMode");
2545
2545
  var AlphaMode_default = /*#__PURE__*/__webpack_require__.n(AlphaMode_namespaceObject);
2546
2546
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Numbers/Matrix4\")"
2547
- const Matrix4_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("standard/Math/Numbers/Matrix4");
2547
+ const Matrix4_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("standard/Math/Numbers/Matrix4");
2548
2548
  var Matrix4_default = /*#__PURE__*/__webpack_require__.n(Matrix4_namespaceObject);
2549
2549
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Numbers/Matrix3\")"
2550
- const Matrix3_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("standard/Math/Numbers/Matrix3");
2550
+ const Matrix3_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("standard/Math/Numbers/Matrix3");
2551
2551
  var Matrix3_default = /*#__PURE__*/__webpack_require__.n(Matrix3_namespaceObject);
2552
2552
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Geometry/Plane3\")"
2553
- const Plane3_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("standard/Math/Geometry/Plane3");
2553
+ const Plane3_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("standard/Math/Geometry/Plane3");
2554
2554
  var Plane3_default = /*#__PURE__*/__webpack_require__.n(Plane3_namespaceObject);
2555
2555
  ;// CONCATENATED MODULE: ./src/standard/Math/Algorithms/QuickSort.js
2556
2556
  /*******************************************************************************
@@ -3046,6 +3046,9 @@ const BVH_default_ = BVH;
3046
3046
 
3047
3047
  Namespace_default().set ("standard/Math/Utility/BVH", BVH_default_);
3048
3048
  /* harmony default export */ const Utility_BVH = (BVH_default_);
3049
+ ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Time/Time\")"
3050
+ const Time_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("standard/Time/Time");
3051
+ var Time_default = /*#__PURE__*/__webpack_require__.n(Time_namespaceObject);
3049
3052
  ;// CONCATENATED MODULE: ./src/x_ite/Components/ParticleSystems/ParticleSystem.js
3050
3053
  /* provided dependency */ var $ = __webpack_require__(355);
3051
3054
  /*******************************************************************************
@@ -3111,6 +3114,7 @@ Namespace_default().set ("standard/Math/Utility/BVH", BVH_default_);
3111
3114
 
3112
3115
 
3113
3116
 
3117
+
3114
3118
  const PointGeometry = new Float32Array ([0, 0, 0, 1]);
3115
3119
 
3116
3120
  const LineGeometry = new Float32Array ([
@@ -3311,7 +3315,7 @@ Object .assign (Object .setPrototypeOf (ParticleSystem .prototype, (X3DShapeNode
3311
3315
 
3312
3316
  if (this .pauseTime)
3313
3317
  {
3314
- this .creationTime += Date .now () / 1000 - this .pauseTime;
3318
+ this .creationTime += Time_default().now () / 1000 - this .pauseTime;
3315
3319
  this .pauseTime = 0;
3316
3320
  }
3317
3321
  }
@@ -3323,7 +3327,7 @@ Object .assign (Object .setPrototypeOf (ParticleSystem .prototype, (X3DShapeNode
3323
3327
  this .getBrowser () .sensorEvents () .removeInterest ("animateParticles", this);
3324
3328
 
3325
3329
  if (this .pauseTime === 0)
3326
- this .pauseTime = Date .now () / 1000;
3330
+ this .pauseTime = Time_default().now () / 1000;
3327
3331
  }
3328
3332
  }
3329
3333
  },
@@ -3341,7 +3345,7 @@ Object .assign (Object .setPrototypeOf (ParticleSystem .prototype, (X3DShapeNode
3341
3345
  }
3342
3346
  else
3343
3347
  {
3344
- this .pauseTime = Date .now () / 1000;
3348
+ this .pauseTime = Time_default().now () / 1000;
3345
3349
  }
3346
3350
 
3347
3351
  this ._isActive = true;
@@ -3458,7 +3462,7 @@ Object .assign (Object .setPrototypeOf (ParticleSystem .prototype, (X3DShapeNode
3458
3462
  this .numParticles = Math .min (lastNumParticles, maxParticles);
3459
3463
 
3460
3464
  if (! this .emitterNode .isExplosive ())
3461
- this .creationTime = Date .now () / 1000;
3465
+ this .creationTime = Time_default().now () / 1000;
3462
3466
 
3463
3467
  this .resizeBuffers (lastNumParticles);
3464
3468
  this .updateVertexArrays ();
@@ -3745,7 +3749,7 @@ Object .assign (Object .setPrototypeOf (ParticleSystem .prototype, (X3DShapeNode
3745
3749
  if (emitterNode .isExplosive ())
3746
3750
  {
3747
3751
  const
3748
- now = Date .now () / 1000,
3752
+ now = Time_default().now () / 1000,
3749
3753
  particleLifetime = this .particleLifetime + this .particleLifetime * this .lifetimeVariation;
3750
3754
 
3751
3755
  if (now - this .creationTime > particleLifetime)
@@ -3766,7 +3770,7 @@ Object .assign (Object .setPrototypeOf (ParticleSystem .prototype, (X3DShapeNode
3766
3770
  if (this .numParticles < this .maxParticles)
3767
3771
  {
3768
3772
  const
3769
- now = Date .now () / 1000,
3773
+ now = Time_default().now () / 1000,
3770
3774
  newParticles = Math .max (0, Math .floor ((now - this .creationTime) * this .maxParticles / this .particleLifetime));
3771
3775
 
3772
3776
  if (newParticles)
@@ -3949,19 +3953,19 @@ Object .assign (Object .setPrototypeOf (ParticleSystem .prototype, (X3DShapeNode
3949
3953
  },
3950
3954
  display (gl, renderContext)
3951
3955
  {
3956
+ if (!this .numParticles)
3957
+ return;
3958
+
3952
3959
  // Display geometry.
3953
3960
 
3954
3961
  switch (this .geometryType)
3955
3962
  {
3956
3963
  case ParticleSystems_GeometryTypes .GEOMETRY:
3957
3964
  {
3958
- if (this .numParticles)
3959
- {
3960
- const geometryNode = this .getGeometry ();
3965
+ const geometryNode = this .getGeometry ();
3961
3966
 
3962
- if (geometryNode)
3963
- geometryNode .displayParticles (gl, renderContext, this);
3964
- }
3967
+ if (geometryNode)
3968
+ geometryNode .displayParticles (gl, renderContext, this);
3965
3969
 
3966
3970
  break;
3967
3971
  }
@@ -3977,7 +3981,6 @@ Object .assign (Object .setPrototypeOf (ParticleSystem .prototype, (X3DShapeNode
3977
3981
 
3978
3982
  gl .frontFace (positiveScale ? gl .CCW : gl .CW);
3979
3983
  gl .enable (gl .CULL_FACE);
3980
- gl .cullFace (gl .BACK);
3981
3984
 
3982
3985
  // [fall trough]
3983
3986
  }
@@ -3989,60 +3992,56 @@ Object .assign (Object .setPrototypeOf (ParticleSystem .prototype, (X3DShapeNode
3989
3992
  shaderNode = appearanceNode .getShader (this .geometryContext, renderContext),
3990
3993
  primitiveMode = browser .getPrimitiveMode (this .primitiveMode);
3991
3994
 
3992
- if (this .numParticles)
3993
- {
3994
- // Setup shader.
3995
+ // Setup shader.
3995
3996
 
3996
- const blendModeNode = appearanceNode .getBlendMode ();
3997
+ const blendModeNode = appearanceNode .getBlendMode ();
3997
3998
 
3998
- blendModeNode ?.enable (gl);
3999
+ blendModeNode ?.enable (gl);
3999
4000
 
4000
- shaderNode .enable (gl);
4001
- shaderNode .setUniforms (gl, this .geometryContext, renderContext);
4001
+ shaderNode .enable (gl);
4002
+ shaderNode .setUniforms (gl, this .geometryContext, renderContext);
4002
4003
 
4003
- if (this .numTexCoords)
4004
- {
4005
- const textureUnit = browser .getTexture2DUnit ();
4004
+ if (this .numTexCoords)
4005
+ {
4006
+ const textureUnit = browser .getTexture2DUnit ();
4006
4007
 
4007
- gl .activeTexture (gl .TEXTURE0 + textureUnit);
4008
- gl .bindTexture (gl .TEXTURE_2D, this .texCoordRampTexture);
4009
- gl .uniform1i (shaderNode .x3d_TexCoordRamp, textureUnit);
4010
- }
4008
+ gl .activeTexture (gl .TEXTURE0 + textureUnit);
4009
+ gl .bindTexture (gl .TEXTURE_2D, this .texCoordRampTexture);
4010
+ gl .uniform1i (shaderNode .x3d_TexCoordRamp, textureUnit);
4011
+ }
4011
4012
 
4012
- // Setup vertex attributes.
4013
+ // Setup vertex attributes.
4013
4014
 
4014
- const outputParticles = this .outputParticles;
4015
+ const outputParticles = this .outputParticles;
4015
4016
 
4016
- if (outputParticles .vertexArrayObject .enable (shaderNode))
4017
- {
4018
- const particleStride = this .particleStride;
4019
-
4020
- shaderNode .enableParticleAttribute (gl, outputParticles, particleStride, this .particleOffset, 1);
4021
- shaderNode .enableParticleMatrixAttribute (gl, outputParticles, particleStride, this .matrixOffset, 1);
4017
+ if (outputParticles .vertexArrayObject .enable (shaderNode))
4018
+ {
4019
+ const particleStride = this .particleStride;
4022
4020
 
4023
- if (this .geometryContext .colorMaterial)
4024
- {
4025
- shaderNode .enableColorAttribute (gl, outputParticles, particleStride, this .colorOffset);
4026
- shaderNode .colorAttributeDivisor (gl, 1);
4027
- }
4021
+ shaderNode .enableParticleAttribute (gl, outputParticles, particleStride, this .particleOffset, 1);
4022
+ shaderNode .enableParticleMatrixAttribute (gl, outputParticles, particleStride, this .matrixOffset, 1);
4028
4023
 
4029
- if (this .texCoordCount)
4030
- shaderNode .enableTexCoordAttribute (gl, this .texCoordBuffers, 0, this .texCoordOffset);
4024
+ if (this .geometryContext .colorMaterial)
4025
+ {
4026
+ shaderNode .enableColorAttribute (gl, outputParticles, particleStride, this .colorOffset);
4027
+ shaderNode .colorAttributeDivisor (gl, 1);
4028
+ }
4031
4029
 
4032
- if (this .hasNormals)
4033
- {
4034
- shaderNode .enableNormalAttribute (gl, this .geometryBuffer, 0, this .normalOffset);
4035
- shaderNode .normalAttributeDivisor (gl, this .maxParticles);
4036
- }
4030
+ if (this .texCoordCount)
4031
+ shaderNode .enableTexCoordAttribute (gl, this .texCoordBuffers, 0, this .texCoordOffset);
4037
4032
 
4038
- shaderNode .enableVertexAttribute (gl, this .geometryBuffer, 0, this .verticesOffset);
4033
+ if (this .hasNormals)
4034
+ {
4035
+ shaderNode .enableNormalAttribute (gl, this .geometryBuffer, 0, this .normalOffset);
4036
+ shaderNode .normalAttributeDivisor (gl, this .maxParticles);
4039
4037
  }
4040
4038
 
4041
- gl .drawArraysInstanced (primitiveMode, 0, this .vertexCount, this .numParticles);
4042
-
4043
- blendModeNode ?.disable (gl);
4039
+ shaderNode .enableVertexAttribute (gl, this .geometryBuffer, 0, this .verticesOffset);
4044
4040
  }
4045
4041
 
4042
+ gl .drawArraysInstanced (primitiveMode, 0, this .vertexCount, this .numParticles);
4043
+
4044
+ blendModeNode ?.disable (gl);
4046
4045
  break;
4047
4046
  }
4048
4047
  }
@@ -4139,7 +4138,7 @@ const ParticleSystem_default_ = ParticleSystem;
4139
4138
  Namespace_default().set ("x_ite/Components/ParticleSystems/ParticleSystem", ParticleSystem_default_);
4140
4139
  /* harmony default export */ const ParticleSystems_ParticleSystem = (ParticleSystem_default_);
4141
4140
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Rendering/IndexedLineSet\")"
4142
- const IndexedLineSet_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Components/Rendering/IndexedLineSet");
4141
+ const IndexedLineSet_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Components/Rendering/IndexedLineSet");
4143
4142
  var IndexedLineSet_default = /*#__PURE__*/__webpack_require__.n(IndexedLineSet_namespaceObject);
4144
4143
  ;// CONCATENATED MODULE: ./src/x_ite/Components/ParticleSystems/PolylineEmitter.js
4145
4144
  /*******************************************************************************
@@ -4391,7 +4390,7 @@ const PolylineEmitter_default_ = PolylineEmitter;
4391
4390
  Namespace_default().set ("x_ite/Components/ParticleSystems/PolylineEmitter", PolylineEmitter_default_);
4392
4391
  /* harmony default export */ const ParticleSystems_PolylineEmitter = (PolylineEmitter_default_);
4393
4392
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Geometry/Triangle3\")"
4394
- const Triangle3_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("standard/Math/Geometry/Triangle3");
4393
+ const Triangle3_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("standard/Math/Geometry/Triangle3");
4395
4394
  var Triangle3_default = /*#__PURE__*/__webpack_require__.n(Triangle3_namespaceObject);
4396
4395
  ;// CONCATENATED MODULE: ./src/x_ite/Components/ParticleSystems/SurfaceEmitter.js
4397
4396
  /*******************************************************************************
@@ -4651,7 +4650,7 @@ const SurfaceEmitter_default_ = SurfaceEmitter;
4651
4650
  Namespace_default().set ("x_ite/Components/ParticleSystems/SurfaceEmitter", SurfaceEmitter_default_);
4652
4651
  /* harmony default export */ const ParticleSystems_SurfaceEmitter = (SurfaceEmitter_default_);
4653
4652
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Geometry3D/IndexedFaceSet\")"
4654
- const IndexedFaceSet_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("x_ite/Components/Geometry3D/IndexedFaceSet");
4653
+ const IndexedFaceSet_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("x_ite/Components/Geometry3D/IndexedFaceSet");
4655
4654
  var IndexedFaceSet_default = /*#__PURE__*/__webpack_require__.n(IndexedFaceSet_namespaceObject);
4656
4655
  ;// CONCATENATED MODULE: ./src/x_ite/Components/ParticleSystems/VolumeEmitter.js
4657
4656
  /*******************************************************************************
@@ -4948,7 +4947,7 @@ const VolumeEmitter_default_ = VolumeEmitter;
4948
4947
  Namespace_default().set ("x_ite/Components/ParticleSystems/VolumeEmitter", VolumeEmitter_default_);
4949
4948
  /* harmony default export */ const ParticleSystems_VolumeEmitter = (VolumeEmitter_default_);
4950
4949
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Algorithm\")"
4951
- const Algorithm_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.10.1")] .require ("standard/Math/Algorithm");
4950
+ const Algorithm_namespaceObject = window [Symbol .for ("X_ITE.X3D-8.11.1")] .require ("standard/Math/Algorithm");
4952
4951
  var Algorithm_default = /*#__PURE__*/__webpack_require__.n(Algorithm_namespaceObject);
4953
4952
  ;// CONCATENATED MODULE: ./src/x_ite/Components/ParticleSystems/WindPhysicsModel.js
4954
4953
  /*******************************************************************************