@itwin/core-frontend 3.5.0 → 3.5.2

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 (198) hide show
  1. package/CHANGELOG.md +16 -1
  2. package/lib/cjs/extension/ExtensionRuntime.js +2 -0
  3. package/lib/cjs/extension/ExtensionRuntime.js.map +1 -1
  4. package/lib/cjs/render/GraphicBranch.d.ts +3 -0
  5. package/lib/cjs/render/GraphicBranch.d.ts.map +1 -1
  6. package/lib/cjs/render/GraphicBranch.js.map +1 -1
  7. package/lib/cjs/render/RealityMeshParams.d.ts +3 -4
  8. package/lib/cjs/render/RealityMeshParams.d.ts.map +1 -1
  9. package/lib/cjs/render/RealityMeshParams.js +9 -5
  10. package/lib/cjs/render/RealityMeshParams.js.map +1 -1
  11. package/lib/cjs/render/webgl/BackgroundMapDrape.js +2 -2
  12. package/lib/cjs/render/webgl/BranchState.d.ts +3 -0
  13. package/lib/cjs/render/webgl/BranchState.d.ts.map +1 -1
  14. package/lib/cjs/render/webgl/BranchState.js +5 -0
  15. package/lib/cjs/render/webgl/BranchState.js.map +1 -1
  16. package/lib/cjs/render/webgl/CachedGeometry.d.ts +32 -0
  17. package/lib/cjs/render/webgl/CachedGeometry.d.ts.map +1 -1
  18. package/lib/cjs/render/webgl/CachedGeometry.js +74 -1
  19. package/lib/cjs/render/webgl/CachedGeometry.js.map +1 -1
  20. package/lib/cjs/render/webgl/DrawCommand.d.ts.map +1 -1
  21. package/lib/cjs/render/webgl/DrawCommand.js +6 -4
  22. package/lib/cjs/render/webgl/DrawCommand.js.map +1 -1
  23. package/lib/cjs/render/webgl/EDL.d.ts +40 -0
  24. package/lib/cjs/render/webgl/EDL.d.ts.map +1 -0
  25. package/lib/cjs/render/webgl/EDL.js +264 -0
  26. package/lib/cjs/render/webgl/EDL.js.map +1 -0
  27. package/lib/cjs/render/webgl/EdgeSettings.js +2 -2
  28. package/lib/cjs/render/webgl/FrameBuffer.d.ts +4 -0
  29. package/lib/cjs/render/webgl/FrameBuffer.d.ts.map +1 -1
  30. package/lib/cjs/render/webgl/FrameBuffer.js +9 -0
  31. package/lib/cjs/render/webgl/FrameBuffer.js.map +1 -1
  32. package/lib/cjs/render/webgl/FrustumUniforms.d.ts +7 -0
  33. package/lib/cjs/render/webgl/FrustumUniforms.d.ts.map +1 -1
  34. package/lib/cjs/render/webgl/FrustumUniforms.js.map +1 -1
  35. package/lib/cjs/render/webgl/Layer.js +2 -2
  36. package/lib/cjs/render/webgl/LayerCommands.js +2 -2
  37. package/lib/cjs/render/webgl/PlanarClassifier.js +7 -7
  38. package/lib/cjs/render/webgl/PlanarClassifier.js.map +1 -1
  39. package/lib/cjs/render/webgl/PointCloud.d.ts +2 -2
  40. package/lib/cjs/render/webgl/PointCloud.d.ts.map +1 -1
  41. package/lib/cjs/render/webgl/PointCloud.js +2 -0
  42. package/lib/cjs/render/webgl/PointCloud.js.map +1 -1
  43. package/lib/cjs/render/webgl/RealityMesh.d.ts +3 -1
  44. package/lib/cjs/render/webgl/RealityMesh.d.ts.map +1 -1
  45. package/lib/cjs/render/webgl/RealityMesh.js +8 -3
  46. package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
  47. package/lib/cjs/render/webgl/RealityModelUniforms.d.ts +9 -0
  48. package/lib/cjs/render/webgl/RealityModelUniforms.d.ts.map +1 -1
  49. package/lib/cjs/render/webgl/RealityModelUniforms.js +50 -0
  50. package/lib/cjs/render/webgl/RealityModelUniforms.js.map +1 -1
  51. package/lib/cjs/render/webgl/RenderCommands.d.ts +2 -1
  52. package/lib/cjs/render/webgl/RenderCommands.d.ts.map +1 -1
  53. package/lib/cjs/render/webgl/RenderCommands.js +45 -37
  54. package/lib/cjs/render/webgl/RenderCommands.js.map +1 -1
  55. package/lib/cjs/render/webgl/RenderFlags.d.ts +19 -17
  56. package/lib/cjs/render/webgl/RenderFlags.d.ts.map +1 -1
  57. package/lib/cjs/render/webgl/RenderFlags.js +8 -6
  58. package/lib/cjs/render/webgl/RenderFlags.js.map +1 -1
  59. package/lib/cjs/render/webgl/SceneCompositor.d.ts +6 -1
  60. package/lib/cjs/render/webgl/SceneCompositor.d.ts.map +1 -1
  61. package/lib/cjs/render/webgl/SceneCompositor.js +195 -76
  62. package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
  63. package/lib/cjs/render/webgl/SolarShadowMap.js +2 -2
  64. package/lib/cjs/render/webgl/SurfaceGeometry.js +5 -5
  65. package/lib/cjs/render/webgl/Target.js +7 -7
  66. package/lib/cjs/render/webgl/Target.js.map +1 -1
  67. package/lib/cjs/render/webgl/Technique.d.ts.map +1 -1
  68. package/lib/cjs/render/webgl/Technique.js +18 -3
  69. package/lib/cjs/render/webgl/Technique.js.map +1 -1
  70. package/lib/cjs/render/webgl/TechniqueFlags.js +4 -4
  71. package/lib/cjs/render/webgl/TechniqueFlags.js.map +1 -1
  72. package/lib/cjs/render/webgl/TechniqueId.d.ts +6 -2
  73. package/lib/cjs/render/webgl/TechniqueId.d.ts.map +1 -1
  74. package/lib/cjs/render/webgl/TechniqueId.js.map +1 -1
  75. package/lib/cjs/render/webgl/UniformHandle.d.ts.map +1 -1
  76. package/lib/cjs/render/webgl/UniformHandle.js +1 -2
  77. package/lib/cjs/render/webgl/UniformHandle.js.map +1 -1
  78. package/lib/cjs/render/webgl/VisibleTileFeatures.js +5 -5
  79. package/lib/cjs/render/webgl/glsl/EDL.d.ts +14 -0
  80. package/lib/cjs/render/webgl/glsl/EDL.d.ts.map +1 -0
  81. package/lib/cjs/render/webgl/glsl/EDL.js +260 -0
  82. package/lib/cjs/render/webgl/glsl/EDL.js.map +1 -0
  83. package/lib/cjs/render/webgl/glsl/RenderPass.js +12 -12
  84. package/lib/cjs/render/webgl/glsl/RenderPass.js.map +1 -1
  85. package/lib/cjs/tile/DynamicIModelTile.js +1 -1
  86. package/lib/cjs/tile/DynamicIModelTile.js.map +1 -1
  87. package/lib/cjs/tile/GltfReader.js +1 -1
  88. package/lib/cjs/tile/GltfReader.js.map +1 -1
  89. package/lib/cjs/tile/IModelTile.js +1 -1
  90. package/lib/cjs/tile/IModelTile.js.map +1 -1
  91. package/lib/cjs/tile/ImdlReader.js +5 -5
  92. package/lib/cjs/tile/ImdlReader.js.map +1 -1
  93. package/lib/cjs/tile/RealityModelTileTree.d.ts.map +1 -1
  94. package/lib/cjs/tile/RealityModelTileTree.js +1 -0
  95. package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
  96. package/lib/cjs/tile/RealityTileLoader.js +2 -2
  97. package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
  98. package/lib/cjs/tile/map/CesiumTerrainProvider.js +9 -9
  99. package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
  100. package/lib/esm/extension/ExtensionRuntime.js +3 -1
  101. package/lib/esm/extension/ExtensionRuntime.js.map +1 -1
  102. package/lib/esm/render/GraphicBranch.d.ts +3 -0
  103. package/lib/esm/render/GraphicBranch.d.ts.map +1 -1
  104. package/lib/esm/render/GraphicBranch.js.map +1 -1
  105. package/lib/esm/render/RealityMeshParams.d.ts +3 -4
  106. package/lib/esm/render/RealityMeshParams.d.ts.map +1 -1
  107. package/lib/esm/render/RealityMeshParams.js +10 -6
  108. package/lib/esm/render/RealityMeshParams.js.map +1 -1
  109. package/lib/esm/render/webgl/BackgroundMapDrape.js +2 -2
  110. package/lib/esm/render/webgl/BranchState.d.ts +3 -0
  111. package/lib/esm/render/webgl/BranchState.d.ts.map +1 -1
  112. package/lib/esm/render/webgl/BranchState.js +5 -0
  113. package/lib/esm/render/webgl/BranchState.js.map +1 -1
  114. package/lib/esm/render/webgl/CachedGeometry.d.ts +32 -0
  115. package/lib/esm/render/webgl/CachedGeometry.d.ts.map +1 -1
  116. package/lib/esm/render/webgl/CachedGeometry.js +69 -0
  117. package/lib/esm/render/webgl/CachedGeometry.js.map +1 -1
  118. package/lib/esm/render/webgl/DrawCommand.d.ts.map +1 -1
  119. package/lib/esm/render/webgl/DrawCommand.js +6 -4
  120. package/lib/esm/render/webgl/DrawCommand.js.map +1 -1
  121. package/lib/esm/render/webgl/EDL.d.ts +40 -0
  122. package/lib/esm/render/webgl/EDL.d.ts.map +1 -0
  123. package/lib/esm/render/webgl/EDL.js +260 -0
  124. package/lib/esm/render/webgl/EDL.js.map +1 -0
  125. package/lib/esm/render/webgl/EdgeSettings.js +2 -2
  126. package/lib/esm/render/webgl/FrameBuffer.d.ts +4 -0
  127. package/lib/esm/render/webgl/FrameBuffer.d.ts.map +1 -1
  128. package/lib/esm/render/webgl/FrameBuffer.js +9 -0
  129. package/lib/esm/render/webgl/FrameBuffer.js.map +1 -1
  130. package/lib/esm/render/webgl/FrustumUniforms.d.ts +7 -0
  131. package/lib/esm/render/webgl/FrustumUniforms.d.ts.map +1 -1
  132. package/lib/esm/render/webgl/FrustumUniforms.js.map +1 -1
  133. package/lib/esm/render/webgl/Layer.js +2 -2
  134. package/lib/esm/render/webgl/LayerCommands.js +2 -2
  135. package/lib/esm/render/webgl/PlanarClassifier.js +7 -7
  136. package/lib/esm/render/webgl/PlanarClassifier.js.map +1 -1
  137. package/lib/esm/render/webgl/PointCloud.d.ts +2 -2
  138. package/lib/esm/render/webgl/PointCloud.d.ts.map +1 -1
  139. package/lib/esm/render/webgl/PointCloud.js +2 -0
  140. package/lib/esm/render/webgl/PointCloud.js.map +1 -1
  141. package/lib/esm/render/webgl/RealityMesh.d.ts +3 -1
  142. package/lib/esm/render/webgl/RealityMesh.d.ts.map +1 -1
  143. package/lib/esm/render/webgl/RealityMesh.js +8 -3
  144. package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
  145. package/lib/esm/render/webgl/RealityModelUniforms.d.ts +9 -0
  146. package/lib/esm/render/webgl/RealityModelUniforms.d.ts.map +1 -1
  147. package/lib/esm/render/webgl/RealityModelUniforms.js +50 -0
  148. package/lib/esm/render/webgl/RealityModelUniforms.js.map +1 -1
  149. package/lib/esm/render/webgl/RenderCommands.d.ts +2 -1
  150. package/lib/esm/render/webgl/RenderCommands.d.ts.map +1 -1
  151. package/lib/esm/render/webgl/RenderCommands.js +45 -37
  152. package/lib/esm/render/webgl/RenderCommands.js.map +1 -1
  153. package/lib/esm/render/webgl/RenderFlags.d.ts +19 -17
  154. package/lib/esm/render/webgl/RenderFlags.d.ts.map +1 -1
  155. package/lib/esm/render/webgl/RenderFlags.js +8 -6
  156. package/lib/esm/render/webgl/RenderFlags.js.map +1 -1
  157. package/lib/esm/render/webgl/SceneCompositor.d.ts +6 -1
  158. package/lib/esm/render/webgl/SceneCompositor.d.ts.map +1 -1
  159. package/lib/esm/render/webgl/SceneCompositor.js +194 -77
  160. package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
  161. package/lib/esm/render/webgl/SolarShadowMap.js +2 -2
  162. package/lib/esm/render/webgl/SurfaceGeometry.js +5 -5
  163. package/lib/esm/render/webgl/Target.js +7 -7
  164. package/lib/esm/render/webgl/Target.js.map +1 -1
  165. package/lib/esm/render/webgl/Technique.d.ts.map +1 -1
  166. package/lib/esm/render/webgl/Technique.js +18 -3
  167. package/lib/esm/render/webgl/Technique.js.map +1 -1
  168. package/lib/esm/render/webgl/TechniqueFlags.js +4 -4
  169. package/lib/esm/render/webgl/TechniqueFlags.js.map +1 -1
  170. package/lib/esm/render/webgl/TechniqueId.d.ts +6 -2
  171. package/lib/esm/render/webgl/TechniqueId.d.ts.map +1 -1
  172. package/lib/esm/render/webgl/TechniqueId.js.map +1 -1
  173. package/lib/esm/render/webgl/UniformHandle.d.ts.map +1 -1
  174. package/lib/esm/render/webgl/UniformHandle.js +1 -2
  175. package/lib/esm/render/webgl/UniformHandle.js.map +1 -1
  176. package/lib/esm/render/webgl/VisibleTileFeatures.js +5 -5
  177. package/lib/esm/render/webgl/glsl/EDL.d.ts +14 -0
  178. package/lib/esm/render/webgl/glsl/EDL.d.ts.map +1 -0
  179. package/lib/esm/render/webgl/glsl/EDL.js +253 -0
  180. package/lib/esm/render/webgl/glsl/EDL.js.map +1 -0
  181. package/lib/esm/render/webgl/glsl/RenderPass.js +12 -12
  182. package/lib/esm/render/webgl/glsl/RenderPass.js.map +1 -1
  183. package/lib/esm/tile/DynamicIModelTile.js +1 -1
  184. package/lib/esm/tile/DynamicIModelTile.js.map +1 -1
  185. package/lib/esm/tile/GltfReader.js +1 -1
  186. package/lib/esm/tile/GltfReader.js.map +1 -1
  187. package/lib/esm/tile/IModelTile.js +1 -1
  188. package/lib/esm/tile/IModelTile.js.map +1 -1
  189. package/lib/esm/tile/ImdlReader.js +5 -5
  190. package/lib/esm/tile/ImdlReader.js.map +1 -1
  191. package/lib/esm/tile/RealityModelTileTree.d.ts.map +1 -1
  192. package/lib/esm/tile/RealityModelTileTree.js +1 -0
  193. package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
  194. package/lib/esm/tile/RealityTileLoader.js +2 -2
  195. package/lib/esm/tile/RealityTileLoader.js.map +1 -1
  196. package/lib/esm/tile/map/CesiumTerrainProvider.js +9 -9
  197. package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
  198. package/package.json +20 -20
@@ -391,8 +391,8 @@ export class SolarShadowMap {
391
391
  System.instance.frameBufferStack.execute(bundle.fbo, true, false, () => {
392
392
  System.instance.context.clearDepth(1.0);
393
393
  System.instance.context.clear(GL.BufferBit.Depth);
394
- target.techniques.execute(target, renderCommands.getCommands(3 /* OpaquePlanar */), 18 /* PlanarClassification */); // Draw these with RenderPass.PlanarClassification (rather than Opaque...) so that the pick ordering is avoided.
395
- target.techniques.execute(target, renderCommands.getCommands(4 /* OpaqueGeneral */), 18 /* PlanarClassification */); // Draw these with RenderPass.PlanarClassification (rather than Opaque...) so that the pick ordering is avoided.
394
+ target.techniques.execute(target, renderCommands.getCommands(3 /* OpaquePlanar */), 19 /* PlanarClassification */); // Draw these with RenderPass.PlanarClassification (rather than Opaque...) so that the pick ordering is avoided.
395
+ target.techniques.execute(target, renderCommands.getCommands(5 /* OpaqueGeneral */), 19 /* PlanarClassification */); // Draw these with RenderPass.PlanarClassification (rather than Opaque...) so that the pick ordering is avoided.
396
396
  });
397
397
  // copy depth buffer to EVSM shadow buffer and average down for AA effect
398
398
  gl.viewport(0, 0, evsmWidth, evsmHeight);
@@ -200,12 +200,12 @@ export class SurfaceGeometry extends MeshGeometry {
200
200
  // NB: We need this for opaque pass due to SolidFill (must compute transparency, discard below threshold, render opaque at or above threshold)
201
201
  case 2 /* OpaqueLinear */:
202
202
  case 3 /* OpaquePlanar */:
203
- case 4 /* OpaqueGeneral */:
204
- case 7 /* Translucent */:
205
- case 11 /* WorldOverlay */:
203
+ case 5 /* OpaqueGeneral */:
204
+ case 8 /* Translucent */:
205
+ case 12 /* WorldOverlay */:
206
206
  case 1 /* OpaqueLayers */:
207
- case 6 /* TranslucentLayers */:
208
- case 10 /* OverlayLayers */: {
207
+ case 7 /* TranslucentLayers */:
208
+ case 11 /* OverlayLayers */: {
209
209
  const mode = vf.renderMode;
210
210
  if (!this.isGlyph && (RenderMode.HiddenLine === mode || RenderMode.SolidFill === mode)) {
211
211
  flags[4 /* TransparencyThreshold */] = 1;
@@ -468,7 +468,7 @@ export class Target extends RenderTarget {
468
468
  get frameStatsCollector() { return this._frameStatsCollector; }
469
469
  assignFrameStatsCollector(collector) { this._frameStatsCollector = collector; }
470
470
  paintScene(sceneMilSecElapsed) {
471
- var _a;
471
+ var _a, _b;
472
472
  if (!this._dcAssigned)
473
473
  return;
474
474
  this._frameStatsCollector.beginTime("totalFrameTime");
@@ -483,7 +483,7 @@ export class Target extends RenderTarget {
483
483
  // Set this to true to visualize the output of readPixels()...useful for debugging pick.
484
484
  if (this.drawForReadPixels) {
485
485
  this.beginReadPixels(Pixel.Selector.Feature);
486
- this.compositor.drawForReadPixels(this._renderCommands, this.graphics.overlays, (_a = this.graphics.decorations) === null || _a === void 0 ? void 0 : _a.worldOverlay);
486
+ this.compositor.drawForReadPixels(this._renderCommands, this.graphics.overlays, (_a = this.graphics.decorations) === null || _a === void 0 ? void 0 : _a.worldOverlay, (_b = this.graphics.decorations) === null || _b === void 0 ? void 0 : _b.viewOverlay);
487
487
  this.endReadPixels();
488
488
  }
489
489
  else {
@@ -512,10 +512,10 @@ export class Target extends RenderTarget {
512
512
  this._frameStatsCollector.beginTime("overlaysTime");
513
513
  this.beginPerfMetricRecord("Overlay Draws");
514
514
  this.beginPerfMetricRecord("World Overlays");
515
- this.drawPass(11 /* WorldOverlay */);
515
+ this.drawPass(12 /* WorldOverlay */);
516
516
  this.endPerfMetricRecord();
517
517
  this.beginPerfMetricRecord("View Overlays");
518
- this.drawPass(12 /* ViewOverlay */);
518
+ this.drawPass(13 /* ViewOverlay */);
519
519
  this.endPerfMetricRecord();
520
520
  this.endPerfMetricRecord(); // End "Overlay Draws"
521
521
  this._frameStatsCollector.endTime("overlaysTime");
@@ -541,7 +541,7 @@ export class Target extends RenderTarget {
541
541
  }
542
542
  getRenderState(pass) {
543
543
  // the other passes are handled by SceneCompositor
544
- assert(12 /* ViewOverlay */ === pass || 11 /* WorldOverlay */ === pass);
544
+ assert(13 /* ViewOverlay */ === pass || 12 /* WorldOverlay */ === pass);
545
545
  return this._overlayRenderState;
546
546
  }
547
547
  assignDC() {
@@ -669,7 +669,7 @@ export class Target extends RenderTarget {
669
669
  this._isReadPixelsInProgress = false;
670
670
  }
671
671
  readPixelsFromFbo(rect, selector) {
672
- var _a;
672
+ var _a, _b;
673
673
  // Create a culling frustum based on the input rect. We can't do this if a screen-space effect is going to move pixels around.
674
674
  let rectFrust;
675
675
  if (!this.renderSystem.screenSpaceEffects.shouldApply(this)) {
@@ -700,7 +700,7 @@ export class Target extends RenderTarget {
700
700
  }
701
701
  this.beginReadPixels(selector, rectFrust);
702
702
  // Draw the scene
703
- this.compositor.drawForReadPixels(this._renderCommands, this.graphics.overlays, (_a = this.graphics.decorations) === null || _a === void 0 ? void 0 : _a.worldOverlay);
703
+ this.compositor.drawForReadPixels(this._renderCommands, this.graphics.overlays, (_a = this.graphics.decorations) === null || _a === void 0 ? void 0 : _a.worldOverlay, (_b = this.graphics.decorations) === null || _b === void 0 ? void 0 : _b.viewOverlay);
704
704
  if (this.performanceMetrics && !this.performanceMetrics.gatherCurPerformanceMetrics) { // Only collect readPixels data if in disp-perf-test-app
705
705
  this.performanceMetrics.endOperation(); // End the 'CPU Total Time' operation
706
706
  if (this.performanceMetrics.gatherGlFinish && !this.renderSystem.isGLTimerSupported) {