@itwin/core-frontend 5.1.2 → 5.1.3-experimental.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 (982) hide show
  1. package/CHANGELOG.md +6 -1
  2. package/lib/cjs/AccuDraw.js.map +1 -1
  3. package/lib/cjs/AccuSnap.js.map +1 -1
  4. package/lib/cjs/ApproximateTerrainHeights.js.map +1 -1
  5. package/lib/cjs/ApproximateTerrainHeightsProps.js.map +1 -1
  6. package/lib/cjs/AuxCoordSys.js.map +1 -1
  7. package/lib/cjs/BackgroundMapGeometry.js.map +1 -1
  8. package/lib/cjs/BingLocation.js.map +1 -1
  9. package/lib/cjs/BriefcaseConnection.js.map +1 -1
  10. package/lib/cjs/BriefcaseTxns.js.map +1 -1
  11. package/lib/cjs/CatalogConnection.js.map +1 -1
  12. package/lib/cjs/CategorySelectorState.js.map +1 -1
  13. package/lib/cjs/ChangeFlags.js.map +1 -1
  14. package/lib/cjs/CheckpointConnection.js.map +1 -1
  15. package/lib/cjs/ContextRealityModelState.js.map +1 -1
  16. package/lib/cjs/CoordSystem.js.map +1 -1
  17. package/lib/cjs/DecorationsCache.js.map +1 -1
  18. package/lib/cjs/DevTools.js.map +1 -1
  19. package/lib/cjs/DisplayStyleState.js.map +1 -1
  20. package/lib/cjs/DrawingViewState.js +5 -5
  21. package/lib/cjs/DrawingViewState.js.map +1 -1
  22. package/lib/cjs/ElementLocateManager.js.map +1 -1
  23. package/lib/cjs/EmphasizeElements.js.map +1 -1
  24. package/lib/cjs/EntityState.js.map +1 -1
  25. package/lib/cjs/EnvironmentDecorations.js.map +1 -1
  26. package/lib/cjs/FeatureOverrideProvider.js.map +1 -1
  27. package/lib/cjs/FlashSettings.js.map +1 -1
  28. package/lib/cjs/FrontendHubAccess.js.map +1 -1
  29. package/lib/cjs/Frustum2d.js.map +1 -1
  30. package/lib/cjs/FrustumAnimator.js.map +1 -1
  31. package/lib/cjs/FuzzySearch.js.map +1 -1
  32. package/lib/cjs/GeoServices.js.map +1 -1
  33. package/lib/cjs/GlobeAnimator.js.map +1 -1
  34. package/lib/cjs/GraphicalEditingScope.js.map +1 -1
  35. package/lib/cjs/HitDetail.js.map +1 -1
  36. package/lib/cjs/IModelApp.js.map +1 -1
  37. package/lib/cjs/IModelConnection.js +26 -26
  38. package/lib/cjs/IModelConnection.js.map +1 -1
  39. package/lib/cjs/IModelRoutingContext.js.map +1 -1
  40. package/lib/cjs/IModeljs-css.js +133 -133
  41. package/lib/cjs/IModeljs-css.js.map +1 -1
  42. package/lib/cjs/IpcApp.js.map +1 -1
  43. package/lib/cjs/LinePlaneIntersect.js.map +1 -1
  44. package/lib/cjs/LocalhostIpcApp.js.map +1 -1
  45. package/lib/cjs/MarginPercent.js.map +1 -1
  46. package/lib/cjs/Marker.js.map +1 -1
  47. package/lib/cjs/ModelSelectorState.js.map +1 -1
  48. package/lib/cjs/ModelState.js.map +1 -1
  49. package/lib/cjs/NativeApp.js.map +1 -1
  50. package/lib/cjs/NativeAppLogger.js.map +1 -1
  51. package/lib/cjs/NoRenderApp.js.map +1 -1
  52. package/lib/cjs/NotificationManager.js.map +1 -1
  53. package/lib/cjs/PerModelCategoryVisibility.js.map +1 -1
  54. package/lib/cjs/PlanarClipMaskState.js.map +1 -1
  55. package/lib/cjs/RealityDataSource.js.map +1 -1
  56. package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.js.map +1 -1
  57. package/lib/cjs/RealityDataSourceContextShareImpl.js.map +1 -1
  58. package/lib/cjs/RealityDataSourceTilesetUrlImpl.js.map +1 -1
  59. package/lib/cjs/SelectionSet.js.map +1 -1
  60. package/lib/cjs/SheetViewState.js.map +1 -1
  61. package/lib/cjs/SpatialClassifiersState.js.map +1 -1
  62. package/lib/cjs/SpatialViewState.js.map +1 -1
  63. package/lib/cjs/Sprites.js.map +1 -1
  64. package/lib/cjs/StandardView.js.map +1 -1
  65. package/lib/cjs/SubCategoriesCache.js.map +1 -1
  66. package/lib/cjs/TentativePoint.js.map +1 -1
  67. package/lib/cjs/Tiles.js.map +1 -1
  68. package/lib/cjs/TxnEntityChanges.js.map +1 -1
  69. package/lib/cjs/UserPreferences.js.map +1 -1
  70. package/lib/cjs/ViewAnimation.js.map +1 -1
  71. package/lib/cjs/ViewContext.js.map +1 -1
  72. package/lib/cjs/ViewCreator2d.js.map +1 -1
  73. package/lib/cjs/ViewCreator3d.js.map +1 -1
  74. package/lib/cjs/ViewGlobalLocation.js.map +1 -1
  75. package/lib/cjs/ViewManager.js.map +1 -1
  76. package/lib/cjs/ViewPose.js.map +1 -1
  77. package/lib/cjs/ViewState.js.map +1 -1
  78. package/lib/cjs/ViewStatus.js.map +1 -1
  79. package/lib/cjs/ViewingSpace.js.map +1 -1
  80. package/lib/cjs/Viewport.js.map +1 -1
  81. package/lib/cjs/ViewportSync.js.map +1 -1
  82. package/lib/cjs/common/FrontendLoggerCategory.js.map +1 -1
  83. package/lib/cjs/common/ImageUtil.js.map +1 -1
  84. package/lib/cjs/common/ViewRect.js.map +1 -1
  85. package/lib/cjs/common/WorkerProxy.js.map +1 -1
  86. package/lib/cjs/common/gltf/GltfModel.js.map +1 -1
  87. package/lib/cjs/common/gltf/GltfParser.js.map +1 -1
  88. package/lib/cjs/common/gltf/GltfSchema.js.map +1 -1
  89. package/lib/cjs/common/imdl/CompactEdges.js.map +1 -1
  90. package/lib/cjs/common/imdl/ImdlModel.js.map +1 -1
  91. package/lib/cjs/common/imdl/ImdlSchema.js.map +1 -1
  92. package/lib/cjs/common/imdl/ParseImdlDocument.js.map +1 -1
  93. package/lib/cjs/common/internal/Symbols.js.map +1 -1
  94. package/lib/cjs/common/internal/render/AnimationNodeId.js.map +1 -1
  95. package/lib/cjs/common/internal/render/AuxChannelTable.js.map +1 -1
  96. package/lib/cjs/common/internal/render/ColorMap.js.map +1 -1
  97. package/lib/cjs/common/internal/render/DisplayParams.js.map +1 -1
  98. package/lib/cjs/common/internal/render/EdgeParams.js.map +1 -1
  99. package/lib/cjs/common/internal/render/GeometryAccumulator.js.map +1 -1
  100. package/lib/cjs/common/internal/render/GeometryList.js.map +1 -1
  101. package/lib/cjs/common/internal/render/GeometryPrimitives.js.map +1 -1
  102. package/lib/cjs/common/internal/render/GraphicDescriptionBuilderImpl.js.map +1 -1
  103. package/lib/cjs/common/internal/render/GraphicDescriptionContextImpl.js.map +1 -1
  104. package/lib/cjs/common/internal/render/InstancedGraphicPropsBuilder.js.map +1 -1
  105. package/lib/cjs/common/internal/render/LineCode.js.map +1 -1
  106. package/lib/cjs/common/internal/render/MeshBuilder.js.map +1 -1
  107. package/lib/cjs/common/internal/render/MeshBuilderMap.js.map +1 -1
  108. package/lib/cjs/common/internal/render/MeshParams.js.map +1 -1
  109. package/lib/cjs/common/internal/render/MeshPrimitive.js.map +1 -1
  110. package/lib/cjs/common/internal/render/MeshPrimitives.js.map +1 -1
  111. package/lib/cjs/common/internal/render/OvrFlags.js.map +1 -1
  112. package/lib/cjs/common/internal/render/PointCloudPrimitive.js.map +1 -1
  113. package/lib/cjs/common/internal/render/PointStringParams.js.map +1 -1
  114. package/lib/cjs/common/internal/render/Polyface.js.map +1 -1
  115. package/lib/cjs/common/internal/render/PolylineParams.js.map +1 -1
  116. package/lib/cjs/common/internal/render/Primitives.js.map +1 -1
  117. package/lib/cjs/common/internal/render/Strokes.js.map +1 -1
  118. package/lib/cjs/common/internal/render/SurfaceParams.js.map +1 -1
  119. package/lib/cjs/common/internal/render/VertexIndices.js.map +1 -1
  120. package/lib/cjs/common/internal/render/VertexKey.js.map +1 -1
  121. package/lib/cjs/common/internal/render/VertexTable.js.map +1 -1
  122. package/lib/cjs/common/internal/render/VertexTableBuilder.js.map +1 -1
  123. package/lib/cjs/common/internal/render/VertexTableSplitter.js.map +1 -1
  124. package/lib/cjs/common/render/BatchOptions.js.map +1 -1
  125. package/lib/cjs/common/render/GraphicAssembler.js.map +1 -1
  126. package/lib/cjs/common/render/GraphicDescriptionBuilder.js.map +1 -1
  127. package/lib/cjs/common/render/GraphicDescriptionContext.js.map +1 -1
  128. package/lib/cjs/common/render/GraphicPrimitive.js.map +1 -1
  129. package/lib/cjs/common/render/GraphicType.js.map +1 -1
  130. package/lib/cjs/common/render/InstancedGraphicParams.js.map +1 -1
  131. package/lib/cjs/common/render/MaterialParams.js.map +1 -1
  132. package/lib/cjs/common/render/RenderInstancesParams.js.map +1 -1
  133. package/lib/cjs/common/render/TextureParams.js.map +1 -1
  134. package/lib/cjs/common.js.map +1 -1
  135. package/lib/cjs/core-frontend.js.map +1 -1
  136. package/lib/cjs/extension/Extension.js.map +1 -1
  137. package/lib/cjs/extension/ExtensionAdmin.js.map +1 -1
  138. package/lib/cjs/extension/ExtensionHost.js.map +1 -1
  139. package/lib/cjs/extension/ExtensionRuntime.js.map +1 -1
  140. package/lib/cjs/extension/providers/ExtensionLoadScript.js.map +1 -1
  141. package/lib/cjs/extension/providers/LocalExtensionProvider.js.map +1 -1
  142. package/lib/cjs/extension/providers/RemoteExtensionProvider.js.map +1 -1
  143. package/lib/cjs/internal/GoogleMapsDecorator.js.map +1 -1
  144. package/lib/cjs/internal/RealityDataSourceGoogle3dTilesImpl.js.map +1 -1
  145. package/lib/cjs/internal/ScriptUtils.js.map +1 -1
  146. package/lib/cjs/internal/cross-package.js.map +1 -1
  147. package/lib/cjs/internal/render/AnimationBranchState.js.map +1 -1
  148. package/lib/cjs/internal/render/FrameStatsCollector.js.map +1 -1
  149. package/lib/cjs/internal/render/GraphicBranchFrustum.js.map +1 -1
  150. package/lib/cjs/internal/render/GraphicTemplateImpl.js.map +1 -1
  151. package/lib/cjs/internal/render/MeshMapLayerGraphicParams.js.map +1 -1
  152. package/lib/cjs/internal/render/MockRender.js.map +1 -1
  153. package/lib/cjs/internal/render/PrimitiveBuilder.js.map +1 -1
  154. package/lib/cjs/internal/render/QueryVisibileFeatures.js.map +1 -1
  155. package/lib/cjs/internal/render/RenderAreaPattern.js.map +1 -1
  156. package/lib/cjs/internal/render/RenderGeometry.js.map +1 -1
  157. package/lib/cjs/internal/render/RenderInstancesParamsImpl.js.map +1 -1
  158. package/lib/cjs/internal/render/RenderMaterialSource.js.map +1 -1
  159. package/lib/cjs/internal/render/RenderPlan.js.map +1 -1
  160. package/lib/cjs/internal/render/RenderPlanarClassifier.js.map +1 -1
  161. package/lib/cjs/internal/render/RenderSkyBoxParams.js.map +1 -1
  162. package/lib/cjs/internal/render/RenderSystemDebugControl.js.map +1 -1
  163. package/lib/cjs/internal/render/RenderTargetDebugControl.js.map +1 -1
  164. package/lib/cjs/internal/render/RenderTerrain.js.map +1 -1
  165. package/lib/cjs/internal/render/RenderTextureDrape.js.map +1 -1
  166. package/lib/cjs/internal/render/SceneVolumeClassifier.js.map +1 -1
  167. package/lib/cjs/internal/render/UpsampleRealityMeshParams.js.map +1 -1
  168. package/lib/cjs/internal/render/webgl/AtmosphereUniforms.js.map +1 -1
  169. package/lib/cjs/internal/render/webgl/AttributeBuffers.js.map +1 -1
  170. package/lib/cjs/internal/render/webgl/AttributeMap.js.map +1 -1
  171. package/lib/cjs/internal/render/webgl/BackgroundMapDrape.js +1 -1
  172. package/lib/cjs/internal/render/webgl/BackgroundMapDrape.js.map +1 -1
  173. package/lib/cjs/internal/render/webgl/BatchState.js.map +1 -1
  174. package/lib/cjs/internal/render/webgl/BatchUniforms.js.map +1 -1
  175. package/lib/cjs/internal/render/webgl/BranchStack.js.map +1 -1
  176. package/lib/cjs/internal/render/webgl/BranchState.js.map +1 -1
  177. package/lib/cjs/internal/render/webgl/BranchUniforms.js.map +1 -1
  178. package/lib/cjs/internal/render/webgl/CachedGeometry.js.map +1 -1
  179. package/lib/cjs/internal/render/webgl/ClipStack.js.map +1 -1
  180. package/lib/cjs/internal/render/webgl/ClipVolume.js.map +1 -1
  181. package/lib/cjs/internal/render/webgl/ClippingProgram.js.map +1 -1
  182. package/lib/cjs/internal/render/webgl/ColorInfo.js.map +1 -1
  183. package/lib/cjs/internal/render/webgl/ContourUniforms.js.map +1 -1
  184. package/lib/cjs/internal/render/webgl/Contours.js.map +1 -1
  185. package/lib/cjs/internal/render/webgl/Diagnostics.js.map +1 -1
  186. package/lib/cjs/internal/render/webgl/Disposable.js.map +1 -1
  187. package/lib/cjs/internal/render/webgl/DrawCommand.js.map +1 -1
  188. package/lib/cjs/internal/render/webgl/EDL.js.map +1 -1
  189. package/lib/cjs/internal/render/webgl/EdgeGeometry.js.map +1 -1
  190. package/lib/cjs/internal/render/webgl/EdgeSettings.js.map +1 -1
  191. package/lib/cjs/internal/render/webgl/FeatureOverrides.js.map +1 -1
  192. package/lib/cjs/internal/render/webgl/FloatRGBA.js.map +1 -1
  193. package/lib/cjs/internal/render/webgl/FrameBuffer.js.map +1 -1
  194. package/lib/cjs/internal/render/webgl/FrustumUniforms.js.map +1 -1
  195. package/lib/cjs/internal/render/webgl/GL.js.map +1 -1
  196. package/lib/cjs/internal/render/webgl/GLTimer.js.map +1 -1
  197. package/lib/cjs/internal/render/webgl/Graphic.js.map +1 -1
  198. package/lib/cjs/internal/render/webgl/HiliteUniforms.js.map +1 -1
  199. package/lib/cjs/internal/render/webgl/IModelFrameLifecycle.js.map +1 -1
  200. package/lib/cjs/internal/render/webgl/IndexedEdgeGeometry.js.map +1 -1
  201. package/lib/cjs/internal/render/webgl/InstancedGeometry.js.map +1 -1
  202. package/lib/cjs/internal/render/webgl/Layer.js.map +1 -1
  203. package/lib/cjs/internal/render/webgl/LayerCommands.js.map +1 -1
  204. package/lib/cjs/internal/render/webgl/LightingUniforms.js.map +1 -1
  205. package/lib/cjs/internal/render/webgl/LineCode.js.map +1 -1
  206. package/lib/cjs/internal/render/webgl/MapLayerParams.js.map +1 -1
  207. package/lib/cjs/internal/render/webgl/Material.js.map +1 -1
  208. package/lib/cjs/internal/render/webgl/Matrix.js.map +1 -1
  209. package/lib/cjs/internal/render/webgl/Mesh.js.map +1 -1
  210. package/lib/cjs/internal/render/webgl/MeshData.js.map +1 -1
  211. package/lib/cjs/internal/render/webgl/MeshGeometry.js.map +1 -1
  212. package/lib/cjs/internal/render/webgl/PerformanceMetrics.js.map +1 -1
  213. package/lib/cjs/internal/render/webgl/PlanarClassifier.js +1 -1
  214. package/lib/cjs/internal/render/webgl/PlanarClassifier.js.map +1 -1
  215. package/lib/cjs/internal/render/webgl/PlanarGrid.js.map +1 -1
  216. package/lib/cjs/internal/render/webgl/PlanarTextureProjection.js.map +1 -1
  217. package/lib/cjs/internal/render/webgl/PointCloud.js.map +1 -1
  218. package/lib/cjs/internal/render/webgl/PointString.js.map +1 -1
  219. package/lib/cjs/internal/render/webgl/Polyline.js.map +1 -1
  220. package/lib/cjs/internal/render/webgl/Primitive.js.map +1 -1
  221. package/lib/cjs/internal/render/webgl/RealityMesh.js.map +1 -1
  222. package/lib/cjs/internal/render/webgl/RealityModelUniforms.js.map +1 -1
  223. package/lib/cjs/internal/render/webgl/RenderBuffer.js.map +1 -1
  224. package/lib/cjs/internal/render/webgl/RenderCommands.js.map +1 -1
  225. package/lib/cjs/internal/render/webgl/RenderFlags.js.map +1 -1
  226. package/lib/cjs/internal/render/webgl/RenderState.js.map +1 -1
  227. package/lib/cjs/internal/render/webgl/SceneCompositor.js.map +1 -1
  228. package/lib/cjs/internal/render/webgl/ScratchDrawParams.js.map +1 -1
  229. package/lib/cjs/internal/render/webgl/ScreenSpaceEffect.js.map +1 -1
  230. package/lib/cjs/internal/render/webgl/ShaderBuilder.js.map +1 -1
  231. package/lib/cjs/internal/render/webgl/ShaderProgram.js.map +1 -1
  232. package/lib/cjs/internal/render/webgl/ShadowUniforms.js.map +1 -1
  233. package/lib/cjs/internal/render/webgl/SolarShadowMap.js.map +1 -1
  234. package/lib/cjs/internal/render/webgl/StyleUniforms.js.map +1 -1
  235. package/lib/cjs/internal/render/webgl/SurfaceGeometry.js.map +1 -1
  236. package/lib/cjs/internal/render/webgl/Sync.js.map +1 -1
  237. package/lib/cjs/internal/render/webgl/System.js.map +1 -1
  238. package/lib/cjs/internal/render/webgl/Target.js.map +1 -1
  239. package/lib/cjs/internal/render/webgl/TargetGraphics.js.map +1 -1
  240. package/lib/cjs/internal/render/webgl/TargetUniforms.js.map +1 -1
  241. package/lib/cjs/internal/render/webgl/Technique.js.map +1 -1
  242. package/lib/cjs/internal/render/webgl/TechniqueFlags.js.map +1 -1
  243. package/lib/cjs/internal/render/webgl/TechniqueId.js.map +1 -1
  244. package/lib/cjs/internal/render/webgl/Texture.js.map +1 -1
  245. package/lib/cjs/internal/render/webgl/TextureDrape.js.map +1 -1
  246. package/lib/cjs/internal/render/webgl/ThematicSensors.js.map +1 -1
  247. package/lib/cjs/internal/render/webgl/ThematicUniforms.js.map +1 -1
  248. package/lib/cjs/internal/render/webgl/UniformHandle.js.map +1 -1
  249. package/lib/cjs/internal/render/webgl/VertexLUT.js.map +1 -1
  250. package/lib/cjs/internal/render/webgl/ViewRectUniforms.js.map +1 -1
  251. package/lib/cjs/internal/render/webgl/VisibleTileFeatures.js.map +1 -1
  252. package/lib/cjs/internal/render/webgl/glsl/AmbientOcclusion.js +154 -154
  253. package/lib/cjs/internal/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
  254. package/lib/cjs/internal/render/webgl/glsl/Animation.js +83 -83
  255. package/lib/cjs/internal/render/webgl/glsl/Animation.js.map +1 -1
  256. package/lib/cjs/internal/render/webgl/glsl/Atmosphere.js +266 -266
  257. package/lib/cjs/internal/render/webgl/glsl/Atmosphere.js.map +1 -1
  258. package/lib/cjs/internal/render/webgl/glsl/Blur.js +37 -37
  259. package/lib/cjs/internal/render/webgl/glsl/Blur.js.map +1 -1
  260. package/lib/cjs/internal/render/webgl/glsl/ClearPickAndColor.js +5 -5
  261. package/lib/cjs/internal/render/webgl/glsl/ClearPickAndColor.js.map +1 -1
  262. package/lib/cjs/internal/render/webgl/glsl/ClearTranslucent.js +3 -3
  263. package/lib/cjs/internal/render/webgl/glsl/ClearTranslucent.js.map +1 -1
  264. package/lib/cjs/internal/render/webgl/glsl/Clipping.js +96 -96
  265. package/lib/cjs/internal/render/webgl/glsl/Clipping.js.map +1 -1
  266. package/lib/cjs/internal/render/webgl/glsl/Color.js +12 -12
  267. package/lib/cjs/internal/render/webgl/glsl/Color.js.map +1 -1
  268. package/lib/cjs/internal/render/webgl/glsl/Combine3Textures.js +7 -7
  269. package/lib/cjs/internal/render/webgl/glsl/Combine3Textures.js.map +1 -1
  270. package/lib/cjs/internal/render/webgl/glsl/CombineTextures.js +5 -5
  271. package/lib/cjs/internal/render/webgl/glsl/CombineTextures.js.map +1 -1
  272. package/lib/cjs/internal/render/webgl/glsl/Common.js +16 -16
  273. package/lib/cjs/internal/render/webgl/glsl/Common.js.map +1 -1
  274. package/lib/cjs/internal/render/webgl/glsl/Composite.js +71 -71
  275. package/lib/cjs/internal/render/webgl/glsl/Composite.js.map +1 -1
  276. package/lib/cjs/internal/render/webgl/glsl/Contours.js +101 -101
  277. package/lib/cjs/internal/render/webgl/glsl/Contours.js.map +1 -1
  278. package/lib/cjs/internal/render/webgl/glsl/CopyColor.js +6 -6
  279. package/lib/cjs/internal/render/webgl/glsl/CopyColor.js.map +1 -1
  280. package/lib/cjs/internal/render/webgl/glsl/CopyPickBuffers.js +3 -3
  281. package/lib/cjs/internal/render/webgl/glsl/CopyPickBuffers.js.map +1 -1
  282. package/lib/cjs/internal/render/webgl/glsl/CopyStencil.js +4 -4
  283. package/lib/cjs/internal/render/webgl/glsl/CopyStencil.js.map +1 -1
  284. package/lib/cjs/internal/render/webgl/glsl/Decode.js +65 -65
  285. package/lib/cjs/internal/render/webgl/glsl/Decode.js.map +1 -1
  286. package/lib/cjs/internal/render/webgl/glsl/EDL.js +103 -103
  287. package/lib/cjs/internal/render/webgl/glsl/EDL.js.map +1 -1
  288. package/lib/cjs/internal/render/webgl/glsl/EVSMFromDepth.js +25 -25
  289. package/lib/cjs/internal/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
  290. package/lib/cjs/internal/render/webgl/glsl/Edge.js +146 -146
  291. package/lib/cjs/internal/render/webgl/glsl/Edge.js.map +1 -1
  292. package/lib/cjs/internal/render/webgl/glsl/FeatureSymbology.js +238 -238
  293. package/lib/cjs/internal/render/webgl/glsl/FeatureSymbology.js.map +1 -1
  294. package/lib/cjs/internal/render/webgl/glsl/Fragment.js +43 -43
  295. package/lib/cjs/internal/render/webgl/glsl/Fragment.js.map +1 -1
  296. package/lib/cjs/internal/render/webgl/glsl/Instancing.js +21 -21
  297. package/lib/cjs/internal/render/webgl/glsl/Instancing.js.map +1 -1
  298. package/lib/cjs/internal/render/webgl/glsl/Lighting.js +92 -92
  299. package/lib/cjs/internal/render/webgl/glsl/Lighting.js.map +1 -1
  300. package/lib/cjs/internal/render/webgl/glsl/LogarithmicDepthBuffer.js.map +1 -1
  301. package/lib/cjs/internal/render/webgl/glsl/LookupTable.js +19 -19
  302. package/lib/cjs/internal/render/webgl/glsl/LookupTable.js.map +1 -1
  303. package/lib/cjs/internal/render/webgl/glsl/MaplayerDraping.js +87 -87
  304. package/lib/cjs/internal/render/webgl/glsl/MaplayerDraping.js.map +1 -1
  305. package/lib/cjs/internal/render/webgl/glsl/Monochrome.js +13 -13
  306. package/lib/cjs/internal/render/webgl/glsl/Monochrome.js.map +1 -1
  307. package/lib/cjs/internal/render/webgl/glsl/PlanarClassification.js +188 -188
  308. package/lib/cjs/internal/render/webgl/glsl/PlanarClassification.js.map +1 -1
  309. package/lib/cjs/internal/render/webgl/glsl/PlanarGrid.js +22 -22
  310. package/lib/cjs/internal/render/webgl/glsl/PlanarGrid.js.map +1 -1
  311. package/lib/cjs/internal/render/webgl/glsl/PointCloud.js +28 -28
  312. package/lib/cjs/internal/render/webgl/glsl/PointCloud.js.map +1 -1
  313. package/lib/cjs/internal/render/webgl/glsl/PointString.js +9 -9
  314. package/lib/cjs/internal/render/webgl/glsl/PointString.js.map +1 -1
  315. package/lib/cjs/internal/render/webgl/glsl/Polyline.js +213 -213
  316. package/lib/cjs/internal/render/webgl/glsl/Polyline.js.map +1 -1
  317. package/lib/cjs/internal/render/webgl/glsl/RealityMesh.js +25 -25
  318. package/lib/cjs/internal/render/webgl/glsl/RealityMesh.js.map +1 -1
  319. package/lib/cjs/internal/render/webgl/glsl/RenderPass.js.map +1 -1
  320. package/lib/cjs/internal/render/webgl/glsl/ScreenSpaceEffect.js +9 -9
  321. package/lib/cjs/internal/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
  322. package/lib/cjs/internal/render/webgl/glsl/SkyBox.js.map +1 -1
  323. package/lib/cjs/internal/render/webgl/glsl/SkySphere.js +49 -49
  324. package/lib/cjs/internal/render/webgl/glsl/SkySphere.js.map +1 -1
  325. package/lib/cjs/internal/render/webgl/glsl/SolarShadowMapping.js +51 -51
  326. package/lib/cjs/internal/render/webgl/glsl/SolarShadowMapping.js.map +1 -1
  327. package/lib/cjs/internal/render/webgl/glsl/Surface.js +235 -235
  328. package/lib/cjs/internal/render/webgl/glsl/Surface.js.map +1 -1
  329. package/lib/cjs/internal/render/webgl/glsl/Thematic.js +136 -136
  330. package/lib/cjs/internal/render/webgl/glsl/Thematic.js.map +1 -1
  331. package/lib/cjs/internal/render/webgl/glsl/Translucency.js +19 -19
  332. package/lib/cjs/internal/render/webgl/glsl/Translucency.js.map +1 -1
  333. package/lib/cjs/internal/render/webgl/glsl/Vertex.js +73 -73
  334. package/lib/cjs/internal/render/webgl/glsl/Vertex.js.map +1 -1
  335. package/lib/cjs/internal/render/webgl/glsl/Viewport.js +38 -38
  336. package/lib/cjs/internal/render/webgl/glsl/Viewport.js.map +1 -1
  337. package/lib/cjs/internal/render/webgl/glsl/ViewportQuad.js.map +1 -1
  338. package/lib/cjs/internal/render/webgl/glsl/Wiremesh.js +10 -10
  339. package/lib/cjs/internal/render/webgl/glsl/Wiremesh.js.map +1 -1
  340. package/lib/cjs/internal/tile/B3dmReader.js.map +1 -1
  341. package/lib/cjs/internal/tile/BatchedTileIdMap.js.map +1 -1
  342. package/lib/cjs/internal/tile/CesiumAssetProvider.js.map +1 -1
  343. package/lib/cjs/internal/tile/ClassifierTileTree.js.map +1 -1
  344. package/lib/cjs/internal/tile/ContextShareProvider.js.map +1 -1
  345. package/lib/cjs/internal/tile/DynamicIModelTile.js.map +1 -1
  346. package/lib/cjs/internal/tile/FetchCloudStorage.js.map +1 -1
  347. package/lib/cjs/internal/tile/GraphicsCollector.js.map +1 -1
  348. package/lib/cjs/internal/tile/I3dmReader.js.map +1 -1
  349. package/lib/cjs/internal/tile/IModelTile.js.map +1 -1
  350. package/lib/cjs/internal/tile/IModelTileRequestChannels.js.map +1 -1
  351. package/lib/cjs/internal/tile/IModelTileTree.js.map +1 -1
  352. package/lib/cjs/internal/tile/ImdlDecoder.js.map +1 -1
  353. package/lib/cjs/internal/tile/ImdlGraphicsCreator.js.map +1 -1
  354. package/lib/cjs/internal/tile/ImdlParser.js.map +1 -1
  355. package/lib/cjs/internal/tile/LRUTileList.js.map +1 -1
  356. package/lib/cjs/internal/tile/LayerTileTreeHandler.js.map +1 -1
  357. package/lib/cjs/internal/tile/LayerTileTreeReferenceHandler.js.map +1 -1
  358. package/lib/cjs/internal/tile/MeshoptCompression.js.map +1 -1
  359. package/lib/cjs/internal/tile/OPCFormatInterpreter.js.map +1 -1
  360. package/lib/cjs/internal/tile/OrbitGtTileTree.js.map +1 -1
  361. package/lib/cjs/internal/tile/PntsReader.js.map +1 -1
  362. package/lib/cjs/internal/tile/PrimaryTileTree.js.map +1 -1
  363. package/lib/cjs/internal/tile/RealityModelTileTree.js.map +1 -1
  364. package/lib/cjs/internal/tile/RealityTileDrawArgs.js.map +1 -1
  365. package/lib/cjs/internal/tile/RealityTileLoader.js.map +1 -1
  366. package/lib/cjs/internal/tile/ThreeDTileFormatInterpreter.js.map +1 -1
  367. package/lib/cjs/internal/tile/TileUserSet.js.map +1 -1
  368. package/lib/cjs/internal/tile/ViewFlagOverrides.js.map +1 -1
  369. package/lib/cjs/internal/tile/map/ArcGISTileMap.js.map +1 -1
  370. package/lib/cjs/internal/tile/map/ArcGisUtilities.js.map +1 -1
  371. package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
  372. package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  373. package/lib/cjs/internal/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js.map +1 -1
  374. package/lib/cjs/internal/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
  375. package/lib/cjs/internal/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  376. package/lib/cjs/internal/tile/map/ImageryProviders/CoordinatesUtils.js.map +1 -1
  377. package/lib/cjs/internal/tile/map/ImageryProviders/FeatureAttributeDrivenSymbology.js.map +1 -1
  378. package/lib/cjs/internal/tile/map/ImageryProviders/FeatureGeometryRenderer.js.map +1 -1
  379. package/lib/cjs/internal/tile/map/ImageryProviders/FeatureGraphicsRenderer.js.map +1 -1
  380. package/lib/cjs/internal/tile/map/ImageryProviders/FeatureSymbologyRenderer.js.map +1 -1
  381. package/lib/cjs/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  382. package/lib/cjs/internal/tile/map/ImageryProviders/TileUrlImageryProvider.js.map +1 -1
  383. package/lib/cjs/internal/tile/map/ImageryProviders/WebMercator.js.map +1 -1
  384. package/lib/cjs/internal/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  385. package/lib/cjs/internal/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
  386. package/lib/cjs/internal/tile/map/MapTileAvailability.js.map +1 -1
  387. package/lib/cjs/internal/tile/map/MapTileLoader.js.map +1 -1
  388. package/lib/cjs/internal/tile/map/UrlUtils.js.map +1 -1
  389. package/lib/cjs/internal/tile/map/WmsCapabilities.js.map +1 -1
  390. package/lib/cjs/internal/tile/map/WmsUtilities.js.map +1 -1
  391. package/lib/cjs/internal/tile/map/WmtsCapabilities.js.map +1 -1
  392. package/lib/cjs/internal/webgl.js.map +1 -1
  393. package/lib/cjs/properties/AngleDescription.js.map +1 -1
  394. package/lib/cjs/properties/FormattedQuantityDescription.js.map +1 -1
  395. package/lib/cjs/properties/LengthDescription.js.map +1 -1
  396. package/lib/cjs/public/scripts/checkbrowser.js +24 -24
  397. package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
  398. package/lib/cjs/quantity-formatting/BasicUnitsProvider.js.map +1 -1
  399. package/lib/cjs/quantity-formatting/LocalUnitFormatProvider.js.map +1 -1
  400. package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
  401. package/lib/cjs/quantity-formatting/QuantityTypesEditorSpecs.js.map +1 -1
  402. package/lib/cjs/quantity-formatting/UnitsData.js.map +1 -1
  403. package/lib/cjs/render/CanvasDecoration.js.map +1 -1
  404. package/lib/cjs/render/CreateRenderMaterialArgs.js.map +1 -1
  405. package/lib/cjs/render/CreateTextureArgs.js.map +1 -1
  406. package/lib/cjs/render/Decorations.js.map +1 -1
  407. package/lib/cjs/render/FeatureSymbology.js.map +1 -1
  408. package/lib/cjs/render/FrameStats.js.map +1 -1
  409. package/lib/cjs/render/GraphicBranch.js.map +1 -1
  410. package/lib/cjs/render/GraphicBuilder.js.map +1 -1
  411. package/lib/cjs/render/GraphicTemplate.js.map +1 -1
  412. package/lib/cjs/render/MeshArgs.js.map +1 -1
  413. package/lib/cjs/render/ParticleCollectionBuilder.js.map +1 -1
  414. package/lib/cjs/render/Pixel.js.map +1 -1
  415. package/lib/cjs/render/PolylineArgs.js.map +1 -1
  416. package/lib/cjs/render/RealityMeshParams.js.map +1 -1
  417. package/lib/cjs/render/RenderClipVolume.js.map +1 -1
  418. package/lib/cjs/render/RenderGraphic.js.map +1 -1
  419. package/lib/cjs/render/RenderMemory.js.map +1 -1
  420. package/lib/cjs/render/RenderSystem.js.map +1 -1
  421. package/lib/cjs/render/RenderTarget.js.map +1 -1
  422. package/lib/cjs/render/Scene.js.map +1 -1
  423. package/lib/cjs/render/ScreenSpaceEffectBuilder.js.map +1 -1
  424. package/lib/cjs/render/VisibleFeature.js.map +1 -1
  425. package/lib/cjs/request/Request.js.map +1 -1
  426. package/lib/cjs/request/utils.js.map +1 -1
  427. package/lib/cjs/tile/DisclosedTileTreeSet.js.map +1 -1
  428. package/lib/cjs/tile/GltfReader.js.map +1 -1
  429. package/lib/cjs/tile/ImdlReader.js.map +1 -1
  430. package/lib/cjs/tile/RealityTile.js.map +1 -1
  431. package/lib/cjs/tile/RealityTileTree.js.map +1 -1
  432. package/lib/cjs/tile/RenderGraphicTileTree.js.map +1 -1
  433. package/lib/cjs/tile/Tile.js.map +1 -1
  434. package/lib/cjs/tile/TileAdmin.js.map +1 -1
  435. package/lib/cjs/tile/TileContent.js.map +1 -1
  436. package/lib/cjs/tile/TileDrawArgs.js.map +1 -1
  437. package/lib/cjs/tile/TileGeometryCollector.js.map +1 -1
  438. package/lib/cjs/tile/TileParams.js.map +1 -1
  439. package/lib/cjs/tile/TileRequest.js.map +1 -1
  440. package/lib/cjs/tile/TileRequestChannel.js.map +1 -1
  441. package/lib/cjs/tile/TileRequestChannels.js.map +1 -1
  442. package/lib/cjs/tile/TileStorage.js.map +1 -1
  443. package/lib/cjs/tile/TileTree.js.map +1 -1
  444. package/lib/cjs/tile/TileTreeOwner.js.map +1 -1
  445. package/lib/cjs/tile/TileTreeParams.js.map +1 -1
  446. package/lib/cjs/tile/TileTreeReference.js.map +1 -1
  447. package/lib/cjs/tile/TileTreeSupplier.js.map +1 -1
  448. package/lib/cjs/tile/TileUsageMarker.js.map +1 -1
  449. package/lib/cjs/tile/TileUser.js.map +1 -1
  450. package/lib/cjs/tile/TiledGraphicsProvider.js.map +1 -1
  451. package/lib/cjs/tile/internal.js.map +1 -1
  452. package/lib/cjs/tile/map/BingElevation.js.map +1 -1
  453. package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
  454. package/lib/cjs/tile/map/EllipsoidTerrainProvider.js.map +1 -1
  455. package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
  456. package/lib/cjs/tile/map/MapCartoRectangle.js.map +1 -1
  457. package/lib/cjs/tile/map/MapFeatureInfo.js.map +1 -1
  458. package/lib/cjs/tile/map/MapLayerAuthentication.js.map +1 -1
  459. package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
  460. package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
  461. package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
  462. package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
  463. package/lib/cjs/tile/map/MapLayerTileTreeReference.js.map +1 -1
  464. package/lib/cjs/tile/map/MapTile.js.map +1 -1
  465. package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
  466. package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  467. package/lib/cjs/tile/map/MapTilingScheme.js.map +1 -1
  468. package/lib/cjs/tile/map/QuadId.js.map +1 -1
  469. package/lib/cjs/tile/map/TerrainMeshProvider.js.map +1 -1
  470. package/lib/cjs/tile/map/TerrainProvider.js.map +1 -1
  471. package/lib/cjs/tools/AccuDrawTool.js.map +1 -1
  472. package/lib/cjs/tools/AccuDrawViewportUI.js.map +1 -1
  473. package/lib/cjs/tools/ClipViewTool.js.map +1 -1
  474. package/lib/cjs/tools/EditManipulator.js.map +1 -1
  475. package/lib/cjs/tools/ElementSetTool.js.map +1 -1
  476. package/lib/cjs/tools/EventController.js.map +1 -1
  477. package/lib/cjs/tools/IdleTool.js.map +1 -1
  478. package/lib/cjs/tools/MeasureTool.js.map +1 -1
  479. package/lib/cjs/tools/PrimitiveTool.js.map +1 -1
  480. package/lib/cjs/tools/SelectTool.js.map +1 -1
  481. package/lib/cjs/tools/Tool.js.map +1 -1
  482. package/lib/cjs/tools/ToolAdmin.js.map +1 -1
  483. package/lib/cjs/tools/ToolAssistance.js.map +1 -1
  484. package/lib/cjs/tools/ToolSettings.js.map +1 -1
  485. package/lib/cjs/tools/ViewTool.js.map +1 -1
  486. package/lib/cjs/workers/ImdlParser/Worker.js.map +1 -1
  487. package/lib/cjs/workers/ImdlParser/webpack.config.js +42 -42
  488. package/lib/cjs/workers/RegisterWorker.js.map +1 -1
  489. package/lib/esm/AccuDraw.js.map +1 -1
  490. package/lib/esm/AccuSnap.js.map +1 -1
  491. package/lib/esm/ApproximateTerrainHeights.js.map +1 -1
  492. package/lib/esm/ApproximateTerrainHeightsProps.js.map +1 -1
  493. package/lib/esm/AuxCoordSys.js.map +1 -1
  494. package/lib/esm/BackgroundMapGeometry.js.map +1 -1
  495. package/lib/esm/BingLocation.js.map +1 -1
  496. package/lib/esm/BriefcaseConnection.js.map +1 -1
  497. package/lib/esm/BriefcaseTxns.js.map +1 -1
  498. package/lib/esm/CatalogConnection.js.map +1 -1
  499. package/lib/esm/CategorySelectorState.js.map +1 -1
  500. package/lib/esm/ChangeFlags.js.map +1 -1
  501. package/lib/esm/CheckpointConnection.js.map +1 -1
  502. package/lib/esm/ContextRealityModelState.js.map +1 -1
  503. package/lib/esm/CoordSystem.js.map +1 -1
  504. package/lib/esm/DecorationsCache.js.map +1 -1
  505. package/lib/esm/DevTools.js.map +1 -1
  506. package/lib/esm/DisplayStyleState.js.map +1 -1
  507. package/lib/esm/DrawingViewState.js +5 -5
  508. package/lib/esm/DrawingViewState.js.map +1 -1
  509. package/lib/esm/ElementLocateManager.js.map +1 -1
  510. package/lib/esm/EmphasizeElements.js.map +1 -1
  511. package/lib/esm/EntityState.js.map +1 -1
  512. package/lib/esm/EnvironmentDecorations.js.map +1 -1
  513. package/lib/esm/FeatureOverrideProvider.js.map +1 -1
  514. package/lib/esm/FlashSettings.js.map +1 -1
  515. package/lib/esm/FrontendHubAccess.js.map +1 -1
  516. package/lib/esm/Frustum2d.js.map +1 -1
  517. package/lib/esm/FrustumAnimator.js.map +1 -1
  518. package/lib/esm/FuzzySearch.js.map +1 -1
  519. package/lib/esm/GeoServices.js.map +1 -1
  520. package/lib/esm/GlobeAnimator.js.map +1 -1
  521. package/lib/esm/GraphicalEditingScope.js.map +1 -1
  522. package/lib/esm/HitDetail.js.map +1 -1
  523. package/lib/esm/IModelApp.js.map +1 -1
  524. package/lib/esm/IModelConnection.js +26 -26
  525. package/lib/esm/IModelConnection.js.map +1 -1
  526. package/lib/esm/IModelRoutingContext.js.map +1 -1
  527. package/lib/esm/IModeljs-css.js +133 -133
  528. package/lib/esm/IModeljs-css.js.map +1 -1
  529. package/lib/esm/IpcApp.js.map +1 -1
  530. package/lib/esm/LinePlaneIntersect.js.map +1 -1
  531. package/lib/esm/LocalhostIpcApp.js.map +1 -1
  532. package/lib/esm/MarginPercent.js.map +1 -1
  533. package/lib/esm/Marker.js.map +1 -1
  534. package/lib/esm/ModelSelectorState.js.map +1 -1
  535. package/lib/esm/ModelState.js.map +1 -1
  536. package/lib/esm/NativeApp.js.map +1 -1
  537. package/lib/esm/NativeAppLogger.js.map +1 -1
  538. package/lib/esm/NoRenderApp.js.map +1 -1
  539. package/lib/esm/NotificationManager.js.map +1 -1
  540. package/lib/esm/PerModelCategoryVisibility.js.map +1 -1
  541. package/lib/esm/PlanarClipMaskState.js.map +1 -1
  542. package/lib/esm/RealityDataSource.js.map +1 -1
  543. package/lib/esm/RealityDataSourceCesiumIonAssetImpl.js.map +1 -1
  544. package/lib/esm/RealityDataSourceContextShareImpl.js.map +1 -1
  545. package/lib/esm/RealityDataSourceTilesetUrlImpl.js.map +1 -1
  546. package/lib/esm/SelectionSet.js.map +1 -1
  547. package/lib/esm/SheetViewState.js.map +1 -1
  548. package/lib/esm/SpatialClassifiersState.js.map +1 -1
  549. package/lib/esm/SpatialViewState.js.map +1 -1
  550. package/lib/esm/Sprites.js.map +1 -1
  551. package/lib/esm/StandardView.js.map +1 -1
  552. package/lib/esm/SubCategoriesCache.js.map +1 -1
  553. package/lib/esm/TentativePoint.js.map +1 -1
  554. package/lib/esm/Tiles.js.map +1 -1
  555. package/lib/esm/TxnEntityChanges.js.map +1 -1
  556. package/lib/esm/UserPreferences.js.map +1 -1
  557. package/lib/esm/ViewAnimation.js.map +1 -1
  558. package/lib/esm/ViewContext.js.map +1 -1
  559. package/lib/esm/ViewCreator2d.js.map +1 -1
  560. package/lib/esm/ViewCreator3d.js.map +1 -1
  561. package/lib/esm/ViewGlobalLocation.js.map +1 -1
  562. package/lib/esm/ViewManager.js.map +1 -1
  563. package/lib/esm/ViewPose.js.map +1 -1
  564. package/lib/esm/ViewState.js.map +1 -1
  565. package/lib/esm/ViewStatus.js.map +1 -1
  566. package/lib/esm/ViewingSpace.js.map +1 -1
  567. package/lib/esm/Viewport.js.map +1 -1
  568. package/lib/esm/ViewportSync.js.map +1 -1
  569. package/lib/esm/common/FrontendLoggerCategory.js.map +1 -1
  570. package/lib/esm/common/ImageUtil.js.map +1 -1
  571. package/lib/esm/common/ViewRect.js.map +1 -1
  572. package/lib/esm/common/WorkerProxy.js.map +1 -1
  573. package/lib/esm/common/gltf/GltfModel.js.map +1 -1
  574. package/lib/esm/common/gltf/GltfParser.js.map +1 -1
  575. package/lib/esm/common/gltf/GltfSchema.js.map +1 -1
  576. package/lib/esm/common/imdl/CompactEdges.js.map +1 -1
  577. package/lib/esm/common/imdl/ImdlModel.js.map +1 -1
  578. package/lib/esm/common/imdl/ImdlSchema.js.map +1 -1
  579. package/lib/esm/common/imdl/ParseImdlDocument.js.map +1 -1
  580. package/lib/esm/common/internal/Symbols.js.map +1 -1
  581. package/lib/esm/common/internal/render/AnimationNodeId.js.map +1 -1
  582. package/lib/esm/common/internal/render/AuxChannelTable.js.map +1 -1
  583. package/lib/esm/common/internal/render/ColorMap.js.map +1 -1
  584. package/lib/esm/common/internal/render/DisplayParams.js.map +1 -1
  585. package/lib/esm/common/internal/render/EdgeParams.js.map +1 -1
  586. package/lib/esm/common/internal/render/GeometryAccumulator.js.map +1 -1
  587. package/lib/esm/common/internal/render/GeometryList.js.map +1 -1
  588. package/lib/esm/common/internal/render/GeometryPrimitives.js.map +1 -1
  589. package/lib/esm/common/internal/render/GraphicDescriptionBuilderImpl.js.map +1 -1
  590. package/lib/esm/common/internal/render/GraphicDescriptionContextImpl.js.map +1 -1
  591. package/lib/esm/common/internal/render/InstancedGraphicPropsBuilder.js.map +1 -1
  592. package/lib/esm/common/internal/render/LineCode.js.map +1 -1
  593. package/lib/esm/common/internal/render/MeshBuilder.js.map +1 -1
  594. package/lib/esm/common/internal/render/MeshBuilderMap.js.map +1 -1
  595. package/lib/esm/common/internal/render/MeshParams.js.map +1 -1
  596. package/lib/esm/common/internal/render/MeshPrimitive.js.map +1 -1
  597. package/lib/esm/common/internal/render/MeshPrimitives.js.map +1 -1
  598. package/lib/esm/common/internal/render/OvrFlags.js.map +1 -1
  599. package/lib/esm/common/internal/render/PointCloudPrimitive.js.map +1 -1
  600. package/lib/esm/common/internal/render/PointStringParams.js.map +1 -1
  601. package/lib/esm/common/internal/render/Polyface.js.map +1 -1
  602. package/lib/esm/common/internal/render/PolylineParams.js.map +1 -1
  603. package/lib/esm/common/internal/render/Primitives.js.map +1 -1
  604. package/lib/esm/common/internal/render/Strokes.js.map +1 -1
  605. package/lib/esm/common/internal/render/SurfaceParams.js.map +1 -1
  606. package/lib/esm/common/internal/render/VertexIndices.js.map +1 -1
  607. package/lib/esm/common/internal/render/VertexKey.js.map +1 -1
  608. package/lib/esm/common/internal/render/VertexTable.js.map +1 -1
  609. package/lib/esm/common/internal/render/VertexTableBuilder.js.map +1 -1
  610. package/lib/esm/common/internal/render/VertexTableSplitter.js.map +1 -1
  611. package/lib/esm/common/render/BatchOptions.js.map +1 -1
  612. package/lib/esm/common/render/GraphicAssembler.js.map +1 -1
  613. package/lib/esm/common/render/GraphicDescriptionBuilder.js.map +1 -1
  614. package/lib/esm/common/render/GraphicDescriptionContext.js.map +1 -1
  615. package/lib/esm/common/render/GraphicPrimitive.js.map +1 -1
  616. package/lib/esm/common/render/GraphicType.js.map +1 -1
  617. package/lib/esm/common/render/InstancedGraphicParams.js.map +1 -1
  618. package/lib/esm/common/render/MaterialParams.js.map +1 -1
  619. package/lib/esm/common/render/RenderInstancesParams.js.map +1 -1
  620. package/lib/esm/common/render/TextureParams.js.map +1 -1
  621. package/lib/esm/common.js.map +1 -1
  622. package/lib/esm/core-frontend.js.map +1 -1
  623. package/lib/esm/extension/Extension.js.map +1 -1
  624. package/lib/esm/extension/ExtensionAdmin.js.map +1 -1
  625. package/lib/esm/extension/ExtensionHost.js.map +1 -1
  626. package/lib/esm/extension/ExtensionRuntime.js.map +1 -1
  627. package/lib/esm/extension/providers/ExtensionLoadScript.js.map +1 -1
  628. package/lib/esm/extension/providers/LocalExtensionProvider.js.map +1 -1
  629. package/lib/esm/extension/providers/RemoteExtensionProvider.js.map +1 -1
  630. package/lib/esm/internal/GoogleMapsDecorator.js.map +1 -1
  631. package/lib/esm/internal/RealityDataSourceGoogle3dTilesImpl.js.map +1 -1
  632. package/lib/esm/internal/ScriptUtils.js.map +1 -1
  633. package/lib/esm/internal/cross-package.js.map +1 -1
  634. package/lib/esm/internal/render/AnimationBranchState.js.map +1 -1
  635. package/lib/esm/internal/render/FrameStatsCollector.js.map +1 -1
  636. package/lib/esm/internal/render/GraphicBranchFrustum.js.map +1 -1
  637. package/lib/esm/internal/render/GraphicTemplateImpl.js.map +1 -1
  638. package/lib/esm/internal/render/MeshMapLayerGraphicParams.js.map +1 -1
  639. package/lib/esm/internal/render/MockRender.js.map +1 -1
  640. package/lib/esm/internal/render/PrimitiveBuilder.js.map +1 -1
  641. package/lib/esm/internal/render/QueryVisibileFeatures.js.map +1 -1
  642. package/lib/esm/internal/render/RenderAreaPattern.js.map +1 -1
  643. package/lib/esm/internal/render/RenderGeometry.js.map +1 -1
  644. package/lib/esm/internal/render/RenderInstancesParamsImpl.js.map +1 -1
  645. package/lib/esm/internal/render/RenderMaterialSource.js.map +1 -1
  646. package/lib/esm/internal/render/RenderPlan.js.map +1 -1
  647. package/lib/esm/internal/render/RenderPlanarClassifier.js.map +1 -1
  648. package/lib/esm/internal/render/RenderSkyBoxParams.js.map +1 -1
  649. package/lib/esm/internal/render/RenderSystemDebugControl.js.map +1 -1
  650. package/lib/esm/internal/render/RenderTargetDebugControl.js.map +1 -1
  651. package/lib/esm/internal/render/RenderTerrain.js.map +1 -1
  652. package/lib/esm/internal/render/RenderTextureDrape.js.map +1 -1
  653. package/lib/esm/internal/render/SceneVolumeClassifier.js.map +1 -1
  654. package/lib/esm/internal/render/UpsampleRealityMeshParams.js.map +1 -1
  655. package/lib/esm/internal/render/webgl/AtmosphereUniforms.js.map +1 -1
  656. package/lib/esm/internal/render/webgl/AttributeBuffers.js.map +1 -1
  657. package/lib/esm/internal/render/webgl/AttributeMap.js.map +1 -1
  658. package/lib/esm/internal/render/webgl/BackgroundMapDrape.js +1 -1
  659. package/lib/esm/internal/render/webgl/BackgroundMapDrape.js.map +1 -1
  660. package/lib/esm/internal/render/webgl/BatchState.js.map +1 -1
  661. package/lib/esm/internal/render/webgl/BatchUniforms.js.map +1 -1
  662. package/lib/esm/internal/render/webgl/BranchStack.js.map +1 -1
  663. package/lib/esm/internal/render/webgl/BranchState.js.map +1 -1
  664. package/lib/esm/internal/render/webgl/BranchUniforms.js.map +1 -1
  665. package/lib/esm/internal/render/webgl/CachedGeometry.js.map +1 -1
  666. package/lib/esm/internal/render/webgl/ClipStack.js.map +1 -1
  667. package/lib/esm/internal/render/webgl/ClipVolume.js.map +1 -1
  668. package/lib/esm/internal/render/webgl/ClippingProgram.js.map +1 -1
  669. package/lib/esm/internal/render/webgl/ColorInfo.js.map +1 -1
  670. package/lib/esm/internal/render/webgl/ContourUniforms.js.map +1 -1
  671. package/lib/esm/internal/render/webgl/Contours.js.map +1 -1
  672. package/lib/esm/internal/render/webgl/Diagnostics.js.map +1 -1
  673. package/lib/esm/internal/render/webgl/Disposable.js.map +1 -1
  674. package/lib/esm/internal/render/webgl/DrawCommand.js.map +1 -1
  675. package/lib/esm/internal/render/webgl/EDL.js.map +1 -1
  676. package/lib/esm/internal/render/webgl/EdgeGeometry.js.map +1 -1
  677. package/lib/esm/internal/render/webgl/EdgeSettings.js.map +1 -1
  678. package/lib/esm/internal/render/webgl/FeatureOverrides.js.map +1 -1
  679. package/lib/esm/internal/render/webgl/FloatRGBA.js.map +1 -1
  680. package/lib/esm/internal/render/webgl/FrameBuffer.js.map +1 -1
  681. package/lib/esm/internal/render/webgl/FrustumUniforms.js.map +1 -1
  682. package/lib/esm/internal/render/webgl/GL.js.map +1 -1
  683. package/lib/esm/internal/render/webgl/GLTimer.js.map +1 -1
  684. package/lib/esm/internal/render/webgl/Graphic.js.map +1 -1
  685. package/lib/esm/internal/render/webgl/HiliteUniforms.js.map +1 -1
  686. package/lib/esm/internal/render/webgl/IModelFrameLifecycle.js.map +1 -1
  687. package/lib/esm/internal/render/webgl/IndexedEdgeGeometry.js.map +1 -1
  688. package/lib/esm/internal/render/webgl/InstancedGeometry.js.map +1 -1
  689. package/lib/esm/internal/render/webgl/Layer.js.map +1 -1
  690. package/lib/esm/internal/render/webgl/LayerCommands.js.map +1 -1
  691. package/lib/esm/internal/render/webgl/LightingUniforms.js.map +1 -1
  692. package/lib/esm/internal/render/webgl/LineCode.js.map +1 -1
  693. package/lib/esm/internal/render/webgl/MapLayerParams.js.map +1 -1
  694. package/lib/esm/internal/render/webgl/Material.js.map +1 -1
  695. package/lib/esm/internal/render/webgl/Matrix.js.map +1 -1
  696. package/lib/esm/internal/render/webgl/Mesh.js.map +1 -1
  697. package/lib/esm/internal/render/webgl/MeshData.js.map +1 -1
  698. package/lib/esm/internal/render/webgl/MeshGeometry.js.map +1 -1
  699. package/lib/esm/internal/render/webgl/PerformanceMetrics.js.map +1 -1
  700. package/lib/esm/internal/render/webgl/PlanarClassifier.js +1 -1
  701. package/lib/esm/internal/render/webgl/PlanarClassifier.js.map +1 -1
  702. package/lib/esm/internal/render/webgl/PlanarGrid.js.map +1 -1
  703. package/lib/esm/internal/render/webgl/PlanarTextureProjection.js.map +1 -1
  704. package/lib/esm/internal/render/webgl/PointCloud.js.map +1 -1
  705. package/lib/esm/internal/render/webgl/PointString.js.map +1 -1
  706. package/lib/esm/internal/render/webgl/Polyline.js.map +1 -1
  707. package/lib/esm/internal/render/webgl/Primitive.js.map +1 -1
  708. package/lib/esm/internal/render/webgl/RealityMesh.js.map +1 -1
  709. package/lib/esm/internal/render/webgl/RealityModelUniforms.js.map +1 -1
  710. package/lib/esm/internal/render/webgl/RenderBuffer.js.map +1 -1
  711. package/lib/esm/internal/render/webgl/RenderCommands.js.map +1 -1
  712. package/lib/esm/internal/render/webgl/RenderFlags.js.map +1 -1
  713. package/lib/esm/internal/render/webgl/RenderState.js.map +1 -1
  714. package/lib/esm/internal/render/webgl/SceneCompositor.js.map +1 -1
  715. package/lib/esm/internal/render/webgl/ScratchDrawParams.js.map +1 -1
  716. package/lib/esm/internal/render/webgl/ScreenSpaceEffect.js.map +1 -1
  717. package/lib/esm/internal/render/webgl/ShaderBuilder.js.map +1 -1
  718. package/lib/esm/internal/render/webgl/ShaderProgram.js.map +1 -1
  719. package/lib/esm/internal/render/webgl/ShadowUniforms.js.map +1 -1
  720. package/lib/esm/internal/render/webgl/SolarShadowMap.js.map +1 -1
  721. package/lib/esm/internal/render/webgl/StyleUniforms.js.map +1 -1
  722. package/lib/esm/internal/render/webgl/SurfaceGeometry.js.map +1 -1
  723. package/lib/esm/internal/render/webgl/Sync.js.map +1 -1
  724. package/lib/esm/internal/render/webgl/System.js.map +1 -1
  725. package/lib/esm/internal/render/webgl/Target.js.map +1 -1
  726. package/lib/esm/internal/render/webgl/TargetGraphics.js.map +1 -1
  727. package/lib/esm/internal/render/webgl/TargetUniforms.js.map +1 -1
  728. package/lib/esm/internal/render/webgl/Technique.js.map +1 -1
  729. package/lib/esm/internal/render/webgl/TechniqueFlags.js.map +1 -1
  730. package/lib/esm/internal/render/webgl/TechniqueId.js.map +1 -1
  731. package/lib/esm/internal/render/webgl/Texture.js.map +1 -1
  732. package/lib/esm/internal/render/webgl/TextureDrape.js.map +1 -1
  733. package/lib/esm/internal/render/webgl/ThematicSensors.js.map +1 -1
  734. package/lib/esm/internal/render/webgl/ThematicUniforms.js.map +1 -1
  735. package/lib/esm/internal/render/webgl/UniformHandle.js.map +1 -1
  736. package/lib/esm/internal/render/webgl/VertexLUT.js.map +1 -1
  737. package/lib/esm/internal/render/webgl/ViewRectUniforms.js.map +1 -1
  738. package/lib/esm/internal/render/webgl/VisibleTileFeatures.js.map +1 -1
  739. package/lib/esm/internal/render/webgl/glsl/AmbientOcclusion.js +154 -154
  740. package/lib/esm/internal/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
  741. package/lib/esm/internal/render/webgl/glsl/Animation.js +83 -83
  742. package/lib/esm/internal/render/webgl/glsl/Animation.js.map +1 -1
  743. package/lib/esm/internal/render/webgl/glsl/Atmosphere.js +266 -266
  744. package/lib/esm/internal/render/webgl/glsl/Atmosphere.js.map +1 -1
  745. package/lib/esm/internal/render/webgl/glsl/Blur.js +37 -37
  746. package/lib/esm/internal/render/webgl/glsl/Blur.js.map +1 -1
  747. package/lib/esm/internal/render/webgl/glsl/ClearPickAndColor.js +5 -5
  748. package/lib/esm/internal/render/webgl/glsl/ClearPickAndColor.js.map +1 -1
  749. package/lib/esm/internal/render/webgl/glsl/ClearTranslucent.js +3 -3
  750. package/lib/esm/internal/render/webgl/glsl/ClearTranslucent.js.map +1 -1
  751. package/lib/esm/internal/render/webgl/glsl/Clipping.js +96 -96
  752. package/lib/esm/internal/render/webgl/glsl/Clipping.js.map +1 -1
  753. package/lib/esm/internal/render/webgl/glsl/Color.js +12 -12
  754. package/lib/esm/internal/render/webgl/glsl/Color.js.map +1 -1
  755. package/lib/esm/internal/render/webgl/glsl/Combine3Textures.js +7 -7
  756. package/lib/esm/internal/render/webgl/glsl/Combine3Textures.js.map +1 -1
  757. package/lib/esm/internal/render/webgl/glsl/CombineTextures.js +5 -5
  758. package/lib/esm/internal/render/webgl/glsl/CombineTextures.js.map +1 -1
  759. package/lib/esm/internal/render/webgl/glsl/Common.js +16 -16
  760. package/lib/esm/internal/render/webgl/glsl/Common.js.map +1 -1
  761. package/lib/esm/internal/render/webgl/glsl/Composite.js +71 -71
  762. package/lib/esm/internal/render/webgl/glsl/Composite.js.map +1 -1
  763. package/lib/esm/internal/render/webgl/glsl/Contours.js +101 -101
  764. package/lib/esm/internal/render/webgl/glsl/Contours.js.map +1 -1
  765. package/lib/esm/internal/render/webgl/glsl/CopyColor.js +6 -6
  766. package/lib/esm/internal/render/webgl/glsl/CopyColor.js.map +1 -1
  767. package/lib/esm/internal/render/webgl/glsl/CopyPickBuffers.js +3 -3
  768. package/lib/esm/internal/render/webgl/glsl/CopyPickBuffers.js.map +1 -1
  769. package/lib/esm/internal/render/webgl/glsl/CopyStencil.js +4 -4
  770. package/lib/esm/internal/render/webgl/glsl/CopyStencil.js.map +1 -1
  771. package/lib/esm/internal/render/webgl/glsl/Decode.js +65 -65
  772. package/lib/esm/internal/render/webgl/glsl/Decode.js.map +1 -1
  773. package/lib/esm/internal/render/webgl/glsl/EDL.js +103 -103
  774. package/lib/esm/internal/render/webgl/glsl/EDL.js.map +1 -1
  775. package/lib/esm/internal/render/webgl/glsl/EVSMFromDepth.js +25 -25
  776. package/lib/esm/internal/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
  777. package/lib/esm/internal/render/webgl/glsl/Edge.js +146 -146
  778. package/lib/esm/internal/render/webgl/glsl/Edge.js.map +1 -1
  779. package/lib/esm/internal/render/webgl/glsl/FeatureSymbology.js +238 -238
  780. package/lib/esm/internal/render/webgl/glsl/FeatureSymbology.js.map +1 -1
  781. package/lib/esm/internal/render/webgl/glsl/Fragment.js +43 -43
  782. package/lib/esm/internal/render/webgl/glsl/Fragment.js.map +1 -1
  783. package/lib/esm/internal/render/webgl/glsl/Instancing.js +21 -21
  784. package/lib/esm/internal/render/webgl/glsl/Instancing.js.map +1 -1
  785. package/lib/esm/internal/render/webgl/glsl/Lighting.js +92 -92
  786. package/lib/esm/internal/render/webgl/glsl/Lighting.js.map +1 -1
  787. package/lib/esm/internal/render/webgl/glsl/LogarithmicDepthBuffer.js.map +1 -1
  788. package/lib/esm/internal/render/webgl/glsl/LookupTable.js +19 -19
  789. package/lib/esm/internal/render/webgl/glsl/LookupTable.js.map +1 -1
  790. package/lib/esm/internal/render/webgl/glsl/MaplayerDraping.js +87 -87
  791. package/lib/esm/internal/render/webgl/glsl/MaplayerDraping.js.map +1 -1
  792. package/lib/esm/internal/render/webgl/glsl/Monochrome.js +13 -13
  793. package/lib/esm/internal/render/webgl/glsl/Monochrome.js.map +1 -1
  794. package/lib/esm/internal/render/webgl/glsl/PlanarClassification.js +188 -188
  795. package/lib/esm/internal/render/webgl/glsl/PlanarClassification.js.map +1 -1
  796. package/lib/esm/internal/render/webgl/glsl/PlanarGrid.js +22 -22
  797. package/lib/esm/internal/render/webgl/glsl/PlanarGrid.js.map +1 -1
  798. package/lib/esm/internal/render/webgl/glsl/PointCloud.js +28 -28
  799. package/lib/esm/internal/render/webgl/glsl/PointCloud.js.map +1 -1
  800. package/lib/esm/internal/render/webgl/glsl/PointString.js +9 -9
  801. package/lib/esm/internal/render/webgl/glsl/PointString.js.map +1 -1
  802. package/lib/esm/internal/render/webgl/glsl/Polyline.js +213 -213
  803. package/lib/esm/internal/render/webgl/glsl/Polyline.js.map +1 -1
  804. package/lib/esm/internal/render/webgl/glsl/RealityMesh.js +25 -25
  805. package/lib/esm/internal/render/webgl/glsl/RealityMesh.js.map +1 -1
  806. package/lib/esm/internal/render/webgl/glsl/RenderPass.js.map +1 -1
  807. package/lib/esm/internal/render/webgl/glsl/ScreenSpaceEffect.js +9 -9
  808. package/lib/esm/internal/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
  809. package/lib/esm/internal/render/webgl/glsl/SkyBox.js.map +1 -1
  810. package/lib/esm/internal/render/webgl/glsl/SkySphere.js +49 -49
  811. package/lib/esm/internal/render/webgl/glsl/SkySphere.js.map +1 -1
  812. package/lib/esm/internal/render/webgl/glsl/SolarShadowMapping.js +51 -51
  813. package/lib/esm/internal/render/webgl/glsl/SolarShadowMapping.js.map +1 -1
  814. package/lib/esm/internal/render/webgl/glsl/Surface.js +235 -235
  815. package/lib/esm/internal/render/webgl/glsl/Surface.js.map +1 -1
  816. package/lib/esm/internal/render/webgl/glsl/Thematic.js +136 -136
  817. package/lib/esm/internal/render/webgl/glsl/Thematic.js.map +1 -1
  818. package/lib/esm/internal/render/webgl/glsl/Translucency.js +19 -19
  819. package/lib/esm/internal/render/webgl/glsl/Translucency.js.map +1 -1
  820. package/lib/esm/internal/render/webgl/glsl/Vertex.js +73 -73
  821. package/lib/esm/internal/render/webgl/glsl/Vertex.js.map +1 -1
  822. package/lib/esm/internal/render/webgl/glsl/Viewport.js +38 -38
  823. package/lib/esm/internal/render/webgl/glsl/Viewport.js.map +1 -1
  824. package/lib/esm/internal/render/webgl/glsl/ViewportQuad.js.map +1 -1
  825. package/lib/esm/internal/render/webgl/glsl/Wiremesh.js +10 -10
  826. package/lib/esm/internal/render/webgl/glsl/Wiremesh.js.map +1 -1
  827. package/lib/esm/internal/tile/B3dmReader.js.map +1 -1
  828. package/lib/esm/internal/tile/BatchedTileIdMap.js.map +1 -1
  829. package/lib/esm/internal/tile/CesiumAssetProvider.js.map +1 -1
  830. package/lib/esm/internal/tile/ClassifierTileTree.js.map +1 -1
  831. package/lib/esm/internal/tile/ContextShareProvider.js.map +1 -1
  832. package/lib/esm/internal/tile/DynamicIModelTile.js.map +1 -1
  833. package/lib/esm/internal/tile/FetchCloudStorage.js.map +1 -1
  834. package/lib/esm/internal/tile/GraphicsCollector.js.map +1 -1
  835. package/lib/esm/internal/tile/I3dmReader.js.map +1 -1
  836. package/lib/esm/internal/tile/IModelTile.js.map +1 -1
  837. package/lib/esm/internal/tile/IModelTileRequestChannels.js.map +1 -1
  838. package/lib/esm/internal/tile/IModelTileTree.js.map +1 -1
  839. package/lib/esm/internal/tile/ImdlDecoder.js.map +1 -1
  840. package/lib/esm/internal/tile/ImdlGraphicsCreator.js.map +1 -1
  841. package/lib/esm/internal/tile/ImdlParser.js.map +1 -1
  842. package/lib/esm/internal/tile/LRUTileList.js.map +1 -1
  843. package/lib/esm/internal/tile/LayerTileTreeHandler.js.map +1 -1
  844. package/lib/esm/internal/tile/LayerTileTreeReferenceHandler.js.map +1 -1
  845. package/lib/esm/internal/tile/MeshoptCompression.js.map +1 -1
  846. package/lib/esm/internal/tile/OPCFormatInterpreter.js.map +1 -1
  847. package/lib/esm/internal/tile/OrbitGtTileTree.js.map +1 -1
  848. package/lib/esm/internal/tile/PntsReader.js.map +1 -1
  849. package/lib/esm/internal/tile/PrimaryTileTree.js.map +1 -1
  850. package/lib/esm/internal/tile/RealityModelTileTree.js.map +1 -1
  851. package/lib/esm/internal/tile/RealityTileDrawArgs.js.map +1 -1
  852. package/lib/esm/internal/tile/RealityTileLoader.js.map +1 -1
  853. package/lib/esm/internal/tile/ThreeDTileFormatInterpreter.js.map +1 -1
  854. package/lib/esm/internal/tile/TileUserSet.js.map +1 -1
  855. package/lib/esm/internal/tile/ViewFlagOverrides.js.map +1 -1
  856. package/lib/esm/internal/tile/map/ArcGISTileMap.js.map +1 -1
  857. package/lib/esm/internal/tile/map/ArcGisUtilities.js.map +1 -1
  858. package/lib/esm/internal/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
  859. package/lib/esm/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  860. package/lib/esm/internal/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js.map +1 -1
  861. package/lib/esm/internal/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
  862. package/lib/esm/internal/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  863. package/lib/esm/internal/tile/map/ImageryProviders/CoordinatesUtils.js.map +1 -1
  864. package/lib/esm/internal/tile/map/ImageryProviders/FeatureAttributeDrivenSymbology.js.map +1 -1
  865. package/lib/esm/internal/tile/map/ImageryProviders/FeatureGeometryRenderer.js.map +1 -1
  866. package/lib/esm/internal/tile/map/ImageryProviders/FeatureGraphicsRenderer.js.map +1 -1
  867. package/lib/esm/internal/tile/map/ImageryProviders/FeatureSymbologyRenderer.js.map +1 -1
  868. package/lib/esm/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  869. package/lib/esm/internal/tile/map/ImageryProviders/TileUrlImageryProvider.js.map +1 -1
  870. package/lib/esm/internal/tile/map/ImageryProviders/WebMercator.js.map +1 -1
  871. package/lib/esm/internal/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  872. package/lib/esm/internal/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
  873. package/lib/esm/internal/tile/map/MapTileAvailability.js.map +1 -1
  874. package/lib/esm/internal/tile/map/MapTileLoader.js.map +1 -1
  875. package/lib/esm/internal/tile/map/UrlUtils.js.map +1 -1
  876. package/lib/esm/internal/tile/map/WmsCapabilities.js.map +1 -1
  877. package/lib/esm/internal/tile/map/WmsUtilities.js.map +1 -1
  878. package/lib/esm/internal/tile/map/WmtsCapabilities.js.map +1 -1
  879. package/lib/esm/internal/webgl.js.map +1 -1
  880. package/lib/esm/properties/AngleDescription.js.map +1 -1
  881. package/lib/esm/properties/FormattedQuantityDescription.js.map +1 -1
  882. package/lib/esm/properties/LengthDescription.js.map +1 -1
  883. package/lib/esm/public/scripts/checkbrowser.js +24 -24
  884. package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
  885. package/lib/esm/quantity-formatting/BasicUnitsProvider.js.map +1 -1
  886. package/lib/esm/quantity-formatting/LocalUnitFormatProvider.js.map +1 -1
  887. package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
  888. package/lib/esm/quantity-formatting/QuantityTypesEditorSpecs.js.map +1 -1
  889. package/lib/esm/quantity-formatting/UnitsData.js.map +1 -1
  890. package/lib/esm/render/CanvasDecoration.js.map +1 -1
  891. package/lib/esm/render/CreateRenderMaterialArgs.js.map +1 -1
  892. package/lib/esm/render/CreateTextureArgs.js.map +1 -1
  893. package/lib/esm/render/Decorations.js.map +1 -1
  894. package/lib/esm/render/FeatureSymbology.js.map +1 -1
  895. package/lib/esm/render/FrameStats.js.map +1 -1
  896. package/lib/esm/render/GraphicBranch.js.map +1 -1
  897. package/lib/esm/render/GraphicBuilder.js.map +1 -1
  898. package/lib/esm/render/GraphicTemplate.js.map +1 -1
  899. package/lib/esm/render/MeshArgs.js.map +1 -1
  900. package/lib/esm/render/ParticleCollectionBuilder.js.map +1 -1
  901. package/lib/esm/render/Pixel.js.map +1 -1
  902. package/lib/esm/render/PolylineArgs.js.map +1 -1
  903. package/lib/esm/render/RealityMeshParams.js.map +1 -1
  904. package/lib/esm/render/RenderClipVolume.js.map +1 -1
  905. package/lib/esm/render/RenderGraphic.js.map +1 -1
  906. package/lib/esm/render/RenderMemory.js.map +1 -1
  907. package/lib/esm/render/RenderSystem.js.map +1 -1
  908. package/lib/esm/render/RenderTarget.js.map +1 -1
  909. package/lib/esm/render/Scene.js.map +1 -1
  910. package/lib/esm/render/ScreenSpaceEffectBuilder.js.map +1 -1
  911. package/lib/esm/render/VisibleFeature.js.map +1 -1
  912. package/lib/esm/request/Request.js.map +1 -1
  913. package/lib/esm/request/utils.js.map +1 -1
  914. package/lib/esm/tile/DisclosedTileTreeSet.js.map +1 -1
  915. package/lib/esm/tile/GltfReader.js.map +1 -1
  916. package/lib/esm/tile/ImdlReader.js.map +1 -1
  917. package/lib/esm/tile/RealityTile.js.map +1 -1
  918. package/lib/esm/tile/RealityTileTree.js.map +1 -1
  919. package/lib/esm/tile/RenderGraphicTileTree.js.map +1 -1
  920. package/lib/esm/tile/Tile.js.map +1 -1
  921. package/lib/esm/tile/TileAdmin.js.map +1 -1
  922. package/lib/esm/tile/TileContent.js.map +1 -1
  923. package/lib/esm/tile/TileDrawArgs.js.map +1 -1
  924. package/lib/esm/tile/TileGeometryCollector.js.map +1 -1
  925. package/lib/esm/tile/TileParams.js.map +1 -1
  926. package/lib/esm/tile/TileRequest.js.map +1 -1
  927. package/lib/esm/tile/TileRequestChannel.js.map +1 -1
  928. package/lib/esm/tile/TileRequestChannels.js.map +1 -1
  929. package/lib/esm/tile/TileStorage.js.map +1 -1
  930. package/lib/esm/tile/TileTree.js.map +1 -1
  931. package/lib/esm/tile/TileTreeOwner.js.map +1 -1
  932. package/lib/esm/tile/TileTreeParams.js.map +1 -1
  933. package/lib/esm/tile/TileTreeReference.js.map +1 -1
  934. package/lib/esm/tile/TileTreeSupplier.js.map +1 -1
  935. package/lib/esm/tile/TileUsageMarker.js.map +1 -1
  936. package/lib/esm/tile/TileUser.js.map +1 -1
  937. package/lib/esm/tile/TiledGraphicsProvider.js.map +1 -1
  938. package/lib/esm/tile/internal.js.map +1 -1
  939. package/lib/esm/tile/map/BingElevation.js.map +1 -1
  940. package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
  941. package/lib/esm/tile/map/EllipsoidTerrainProvider.js.map +1 -1
  942. package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
  943. package/lib/esm/tile/map/MapCartoRectangle.js.map +1 -1
  944. package/lib/esm/tile/map/MapFeatureInfo.js.map +1 -1
  945. package/lib/esm/tile/map/MapLayerAuthentication.js.map +1 -1
  946. package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
  947. package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
  948. package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
  949. package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
  950. package/lib/esm/tile/map/MapLayerTileTreeReference.js.map +1 -1
  951. package/lib/esm/tile/map/MapTile.js.map +1 -1
  952. package/lib/esm/tile/map/MapTileTree.js.map +1 -1
  953. package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  954. package/lib/esm/tile/map/MapTilingScheme.js.map +1 -1
  955. package/lib/esm/tile/map/QuadId.js.map +1 -1
  956. package/lib/esm/tile/map/TerrainMeshProvider.js.map +1 -1
  957. package/lib/esm/tile/map/TerrainProvider.js.map +1 -1
  958. package/lib/esm/tools/AccuDrawTool.js.map +1 -1
  959. package/lib/esm/tools/AccuDrawViewportUI.js.map +1 -1
  960. package/lib/esm/tools/ClipViewTool.js.map +1 -1
  961. package/lib/esm/tools/EditManipulator.js.map +1 -1
  962. package/lib/esm/tools/ElementSetTool.js.map +1 -1
  963. package/lib/esm/tools/EventController.js.map +1 -1
  964. package/lib/esm/tools/IdleTool.js.map +1 -1
  965. package/lib/esm/tools/MeasureTool.js.map +1 -1
  966. package/lib/esm/tools/PrimitiveTool.js.map +1 -1
  967. package/lib/esm/tools/SelectTool.js.map +1 -1
  968. package/lib/esm/tools/Tool.js.map +1 -1
  969. package/lib/esm/tools/ToolAdmin.js.map +1 -1
  970. package/lib/esm/tools/ToolAssistance.js.map +1 -1
  971. package/lib/esm/tools/ToolSettings.js.map +1 -1
  972. package/lib/esm/tools/ViewTool.js.map +1 -1
  973. package/lib/esm/workers/ImdlParser/Worker.js.map +1 -1
  974. package/lib/esm/workers/ImdlParser/webpack.config.js +42 -42
  975. package/lib/esm/workers/RegisterWorker.js.map +1 -1
  976. package/lib/public/assets/MapLayerSources.json +25 -25
  977. package/lib/public/images/cesium-ion.svg +92 -92
  978. package/lib/public/images/imodeljs-icon.svg +2 -2
  979. package/lib/public/locales/en/CoreTools.json +508 -508
  980. package/lib/public/locales/en/iModelJs.json +176 -176
  981. package/lib/public/scripts/checkbrowser.js +24 -24
  982. package/package.json +20 -20
@@ -1 +1 @@
1
- {"version":3,"file":"DrawCommand.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/DrawCommand.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module WebGL\n */\n\nimport { assert, Id64, Id64String } from \"@itwin/core-bentley\";\nimport { PackedFeature } from \"@itwin/core-common\";\nimport { BranchState } from \"./BranchState\";\nimport { CachedGeometry } from \"./CachedGeometry\";\nimport { ClipVolume } from \"./ClipVolume\";\nimport { isFeatureHilited } from \"./FeatureOverrides\";\nimport { Batch, Branch } from \"./Graphic\";\nimport { UniformHandle } from \"./UniformHandle\";\nimport { Primitive } from \"./Primitive\";\nimport { Pass, RenderOrder, RenderPass } from \"./RenderFlags\";\nimport { ShaderProgramExecutor } from \"./ShaderProgram\";\nimport { System } from \"./System\";\nimport { Hilites, Target } from \"./Target\";\nimport { EnableAtmosphere, IsAnimated, IsClassified, IsInstanced, IsShadowable, IsThematic, IsWiremesh, TechniqueFlags } from \"./TechniqueFlags\";\nimport { TechniqueId } from \"./TechniqueId\";\n\n/* eslint-disable no-restricted-syntax */\n\n/** @internal */\nexport class ShaderProgramParams {\n private _target?: Target;\n private _renderPass: RenderPass = RenderPass.None;\n\n public get target(): Target {\n assert(undefined !== this._target);\n return this._target;\n }\n\n public get renderPass() { return this._renderPass; }\n\n public get projectionMatrix() { return this.target.uniforms.getProjectionMatrix32(this.isViewCoords); }\n public bindProjectionMatrix(uniform: UniformHandle) { this.target.uniforms.bindProjectionMatrix(uniform, this.isViewCoords); }\n\n public get isViewCoords() { return RenderPass.ViewOverlay === this.renderPass || RenderPass.Background === this.renderPass; }\n public get isOverlayPass() { return RenderPass.WorldOverlay === this.renderPass || RenderPass.ViewOverlay === this.renderPass; }\n public get context() { return System.instance.context; }\n\n public init(target: Target, pass: RenderPass = RenderPass.OpaqueGeneral) {\n this._renderPass = pass;\n this._target = target;\n }\n}\n\n/** @internal */\nexport class DrawParams {\n private _programParams?: ShaderProgramParams;\n private _geometry?: CachedGeometry;\n\n public get geometry(): CachedGeometry {\n assert(undefined !== this._geometry);\n return this._geometry;\n }\n\n public get programParams(): ShaderProgramParams {\n assert(undefined !== this._programParams);\n return this._programParams;\n }\n\n public get target() { return this.programParams.target; }\n public get renderPass() { return this.programParams.renderPass; }\n public get projectionMatrix() { return this.programParams.projectionMatrix; }\n public get isViewCoords() {\n return this.programParams.isViewCoords || this.target.currentBranch.forceViewCoords;\n }\n public get isOverlayPass() { return this.programParams.isOverlayPass; }\n public get context() { return this.programParams.context; }\n\n public init(programParams: ShaderProgramParams, geometry: CachedGeometry) {\n this._programParams = programParams;\n this._geometry = geometry;\n }\n}\n\n/** Defines operation associated with pushing or popping a branch\n * @internal\n */\nexport const enum PushOrPop {\n Push,\n Pop,\n}\n\n/** Represents a command to be executed within a RenderPass. The most common command is\n * to draw a primitive; others involve state changes such as pushing/popping transforms\n * and symbology overrides, which require that commands be executed in order.\n * @internal\n */\nexport enum DrawOpCode {\n Primitive = \"drawPrimitive\", // eslint-disable-line @typescript-eslint/no-shadow\n PushBranch = \"pushBranch\",\n PopBranch = \"popBranch\",\n PushBatch = \"pushBatch\",\n PopBatch = \"popBatch\",\n PushState = \"pushState\",\n PushClip = \"pushClip\",\n PopClip = \"popClip\",\n}\n\n/** @internal */\nexport class PopBatchCommand {\n public readonly opcode = \"popBatch\";\n\n private constructor() { }\n\n public static instance = new PopBatchCommand();\n\n public execute(exec: ShaderProgramExecutor): void {\n exec.target.popBatch();\n }\n}\n\n/** @internal */\nexport class PushBatchCommand {\n public readonly opcode = \"pushBatch\";\n\n public constructor(public readonly batch: Batch) { }\n\n public execute(exec: ShaderProgramExecutor): void {\n exec.target.pushBatch(this.batch);\n }\n}\n\n/** @internal */\nexport class PushStateCommand {\n public readonly opcode = \"pushState\";\n\n public constructor(public readonly state: BranchState) { }\n\n public execute(exec: ShaderProgramExecutor): void {\n exec.target.pushState(this.state);\n }\n}\n\n/** @internal */\nexport class PushBranchCommand {\n public readonly opcode = \"pushBranch\";\n\n public constructor(public readonly branch: Branch) { }\n\n public execute(exec: ShaderProgramExecutor): void {\n exec.pushBranch(this.branch);\n }\n}\n\n/** @internal */\nexport class PopBranchCommand {\n public readonly opcode = \"popBranch\";\n\n private constructor() { }\n\n public static instance = new PopBranchCommand();\n\n public execute(exec: ShaderProgramExecutor): void {\n exec.popBranch();\n }\n}\n\n/** @internal */\nexport class PushClipCommand {\n public readonly opcode = \"pushClip\";\n\n public constructor(public readonly clip: ClipVolume) { }\n\n public execute(exec: ShaderProgramExecutor): void {\n exec.target.uniforms.branch.clipStack.push(this.clip);\n }\n}\n\n/** @internal */\nexport class PopClipCommand {\n public readonly opcode = \"popClip\";\n\n private constructor() { }\n\n public static instance = new PopClipCommand();\n\n public execute(exec: ShaderProgramExecutor): void {\n exec.target.uniforms.branch.clipStack.pop();\n }\n}\n\n/** @internal */\nexport class PrimitiveCommand {\n public readonly opcode = \"drawPrimitive\";\n\n public constructor(public readonly primitive: Primitive) { }\n\n private static readonly _scratchTechniqueFlags = new TechniqueFlags();\n\n public execute(exec: ShaderProgramExecutor): void {\n if (exec.target.isGeometryOutsideActiveVolume(this.primitive.cachedGeometry))\n return;\n\n const techniqueId = this.primitive.techniqueId;\n if (TechniqueId.Invalid === techniqueId)\n return;\n\n const target = exec.target;\n const thematic = this.primitive.cachedGeometry.supportsThematicDisplay && target.wantThematicDisplay;\n const shadowable = (techniqueId === TechniqueId.Surface || techniqueId === TechniqueId.RealityMesh) && target.solarShadowMap.isReady && target.currentViewFlags.shadows && !thematic;\n const isShadowable = shadowable ? IsShadowable.Yes : IsShadowable.No;\n let isThematic = thematic ? IsThematic.Yes : IsThematic.No;\n const isClassified = (undefined !== target.currentPlanarClassifierOrDrape || undefined !== target.activeVolumeClassifierTexture) ? IsClassified.Yes : IsClassified.No;\n const isInstanced = this.primitive.isInstanced ? IsInstanced.Yes : IsInstanced.No;\n const isAnimated = this.primitive.hasAnimation ? IsAnimated.Yes : IsAnimated.No;\n\n // Point clouds do not support hillshade or slope mode for thematic display.\n if (isThematic && (undefined !== this.primitive.cachedGeometry.asPointCloud) && (target.uniforms.thematic.wantSlopeMode || target.uniforms.thematic.wantHillShadeMode))\n isThematic = IsThematic.No;\n\n const wiremesh = target.currentViewFlags.wiremesh && (techniqueId === TechniqueId.Surface || techniqueId === TechniqueId.RealityMesh);\n const isWiremesh = wiremesh ? IsWiremesh.Yes : IsWiremesh.No;\n const flags = PrimitiveCommand._scratchTechniqueFlags;\n const posType = this.primitive.cachedGeometry.usesQuantizedPositions ? \"quantized\" : \"unquantized\";\n const enableAtmosphere = target.wantAtmosphere ? EnableAtmosphere.Yes : EnableAtmosphere.No;\n flags.init(target, exec.renderPass, isInstanced, isAnimated, isClassified, isShadowable, isThematic, isWiremesh, posType, enableAtmosphere);\n\n const technique = target.techniques.getTechnique(techniqueId);\n const program = technique.getShader(flags);\n\n if (exec.setProgram(program))\n exec.target.compositor.drawPrimitive(this.primitive, exec, program.outputsToPick);\n }\n\n public get hasFeatures(): boolean { return this.primitive.hasFeatures; }\n public get renderOrder(): RenderOrder { return this.primitive.renderOrder; }\n\n public getPass(target: Target): Pass {\n return this.primitive.getPass(target);\n }\n}\n\n/** @internal */\nexport type PushCommand = PushBranchCommand | PushBatchCommand | PushStateCommand | PushClipCommand;\n/** @internal */\nexport type PopCommand = PopBranchCommand | PopBatchCommand | PopClipCommand;\n/** @internal */\nexport type DrawCommand = PushCommand | PopCommand | PrimitiveCommand;\n\n/** For a single RenderPass, an ordered list of commands to be executed during that pass.\n * @internal\n */\nexport type DrawCommands = DrawCommand[];\n\n/** Extracts the commands for rendering the flashed classifier (if any) from the by-index set of volume classifier commands.\n * NB: Cmds will be sets of some pushes, a primitive, and then some pops (equal to number of pushes).\n * The primitive should be right in the middle of a set. We need to find the set which matches the flashID.\n * @internal\n */\nexport function extractFlashedVolumeClassifierCommands(flashedId: Id64String, cmds: DrawCommands, numCmdsPerClassifier: number): DrawCommands | undefined {\n if (!Id64.isValid(flashedId) || 0 === numCmdsPerClassifier)\n return undefined;\n\n const firstPrim = (numCmdsPerClassifier - 1) / 2;\n for (let i = firstPrim; i < cmds.length; i += numCmdsPerClassifier) {\n assert(\"drawPrimitive\" === cmds[i].opcode, \"Command list not configured as expected.\");\n const pc: PrimitiveCommand = cmds[i] as PrimitiveCommand;\n const surface = pc.primitive.cachedGeometry.asSurface;\n if (undefined !== surface && undefined !== surface.mesh.uniformFeatureId) {\n let j = i - 1;\n while (j >= 0 && \"pushBatch\" !== cmds[j].opcode) // Find batch for this primitive\n j--;\n if (j < 0)\n continue;\n\n const pushBatch = cmds[j] as PushBatchCommand;\n const elemId = pushBatch.batch.featureTable.findElementId(surface.mesh.uniformFeatureId);\n if (undefined !== elemId && elemId === flashedId) {\n return cmds.slice(i - firstPrim, i + firstPrim + 1);\n }\n }\n }\n\n return undefined;\n}\n\nconst scratchFeature = PackedFeature.create();\n\n/** @internal */\nexport function extractHilitedVolumeClassifierCommands(hilites: Hilites, cmds: DrawCommands): DrawCommands {\n // TODO: This could really be done at the time the HiliteClassification render pass commands are being generated\n // by just not putting the ones which are not hilited into the ClassificationHilite command list.\n const result: DrawCommand[] = [];\n\n let batch;\n for (const cmd of cmds) {\n switch (cmd.opcode) {\n case \"popBranch\":\n if (result.length > 0 && \"pushBranch\" === result[result.length - 1].opcode) {\n result.pop(); // remove empty push/pop pairs\n continue;\n }\n break;\n case \"popBatch\":\n batch = undefined;\n if (result.length > 0 && \"pushBatch\" === result[result.length - 1].opcode) {\n result.pop(); // remove empty push/pop pairs\n continue;\n }\n break;\n case \"pushBatch\":\n batch = cmd.batch;\n break;\n case \"drawPrimitive\":\n if (undefined !== batch) {\n // Skip any primitives that are not hilited.\n const surface = cmd.primitive.cachedGeometry.asSurface;\n if (undefined === surface || undefined === surface.mesh.uniformFeatureId)\n continue;\n\n const feature = batch.featureTable.getPackedFeature(surface.mesh.uniformFeatureId, scratchFeature);\n if (undefined === feature || !isFeatureHilited(feature, hilites, hilites.models.hasId(Id64.fromUint32PairObject(feature.modelId))))\n continue;\n\n break;\n }\n }\n\n result.push(cmd);\n }\n\n return result;\n}\n"]}
1
+ {"version":3,"file":"DrawCommand.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/DrawCommand.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EDL.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/EDL.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n\n/** @packageDocumentation\n * @module WebGL\n */\n\nimport { assert, dispose } from \"@itwin/core-bentley\";\nimport { RenderMemory } from \"../../../render/RenderMemory\";\nimport { EDLCalcBasicGeometry, EDLCalcFullGeometry, EDLFilterGeometry, EDLMixGeometry } from \"./CachedGeometry\";\nimport { WebGLDisposable } from \"./Disposable\";\nimport { DepthBuffer, FrameBuffer } from \"./FrameBuffer\";\nimport { GL } from \"./GL\";\nimport { RenderBufferMultiSample } from \"./RenderBuffer\";\nimport { RenderState } from \"./RenderState\";\nimport { collectGeometryStatistics, collectTextureStatistics } from \"./SceneCompositor\";\nimport { getDrawParams } from \"./ScratchDrawParams\";\nimport { System } from \"./System\";\nimport { Target } from \"./Target\";\nimport { TextureHandle } from \"./Texture\";\n\nclass Bundle implements WebGLDisposable {\n private constructor(\n public edlCalcTex1?: TextureHandle,\n public edlCalcTex2?: TextureHandle,\n public edlCalcTex4?: TextureHandle,\n public edlFiltTex2?: TextureHandle,\n public edlFiltTex4?: TextureHandle,\n\n public edlCalcFbo1?: FrameBuffer,\n public edlCalcFbo2?: FrameBuffer,\n public edlCalcFbo4?: FrameBuffer,\n public edlFiltFbo2?: FrameBuffer,\n public edlFiltFbo4?: FrameBuffer,\n\n public edlCalcBasicGeom?: EDLCalcBasicGeometry,\n public edlCalcFullGeom?: [EDLCalcFullGeometry | undefined, EDLCalcFullGeometry | undefined, EDLCalcFullGeometry | undefined],\n public edlFiltGeom?: [EDLFilterGeometry | undefined, EDLFilterGeometry | undefined],\n public edlMixGeom?: EDLMixGeometry) {\n }\n\n public static create(width: number, height: number): Bundle | undefined {\n const edlCalcTex1 = TextureHandle.createForAttachment(width, height, GL.Texture.Format.Rgba, GL.Texture.DataType.UnsignedByte);\n const edlCalcTex2 = TextureHandle.createForAttachment(width >> 1, height >> 1, GL.Texture.Format.Rgba, GL.Texture.DataType.UnsignedByte);\n const edlCalcTex4 = TextureHandle.createForAttachment(width >> 2, height >> 2, GL.Texture.Format.Rgba, GL.Texture.DataType.UnsignedByte);\n const edlFiltTex2 = TextureHandle.createForAttachment(width >> 1, height >> 1, GL.Texture.Format.Rgba, GL.Texture.DataType.UnsignedByte);\n const edlFiltTex4 = TextureHandle.createForAttachment(width >> 2, height >> 2, GL.Texture.Format.Rgba, GL.Texture.DataType.UnsignedByte);\n if (undefined === edlCalcTex1 || undefined === edlCalcTex2 || undefined === edlCalcTex4 || undefined === edlFiltTex2 || undefined === edlFiltTex4) {\n dispose(edlCalcTex1);\n dispose(edlCalcTex2);\n dispose(edlCalcTex4);\n dispose(edlFiltTex2);\n dispose(edlFiltTex4);\n return undefined;\n }\n const edlCalcFbo1 = FrameBuffer.create([edlCalcTex1]);\n const edlCalcFbo2 = FrameBuffer.create([edlCalcTex2]);\n const edlCalcFbo4 = FrameBuffer.create([edlCalcTex4]);\n const edlFiltFbo2 = FrameBuffer.create([edlFiltTex2]);\n const edlFiltFbo4 = FrameBuffer.create([edlFiltTex4]);\n if (undefined === edlCalcFbo1 || undefined === edlCalcFbo2 || undefined === edlCalcFbo4 || undefined === edlFiltFbo2 || undefined === edlFiltFbo4) {\n dispose(edlCalcFbo1);\n dispose(edlCalcFbo2);\n dispose(edlCalcFbo4);\n dispose(edlFiltFbo2);\n dispose(edlFiltFbo4);\n return undefined;\n }\n return new Bundle(edlCalcTex1, edlCalcTex2, edlCalcTex4, edlFiltTex2, edlFiltTex4, edlCalcFbo1, edlCalcFbo2, edlCalcFbo4, edlFiltFbo2, edlFiltFbo4);\n }\n\n public get isDisposed(): boolean {\n return undefined === this.edlCalcTex1\n && undefined === this.edlCalcTex2\n && undefined === this.edlCalcTex4\n && undefined === this.edlFiltTex2\n && undefined === this.edlFiltTex4\n && undefined === this.edlCalcFbo1\n && undefined === this.edlCalcFbo2\n && undefined === this.edlCalcFbo4\n && undefined === this.edlFiltFbo2\n && undefined === this.edlFiltFbo4\n && undefined === this.edlCalcBasicGeom\n && undefined === this.edlCalcFullGeom?.[0]\n && undefined === this.edlCalcFullGeom?.[1]\n && undefined === this.edlCalcFullGeom?.[2]\n && undefined === this.edlCalcFullGeom\n && undefined === this.edlFiltGeom?.[0]\n && undefined === this.edlFiltGeom?.[1]\n && undefined === this.edlFiltGeom\n && undefined === this.edlMixGeom;\n }\n\n public [Symbol.dispose](): void {\n this.edlCalcTex1 = dispose(this.edlCalcTex1);\n this.edlCalcTex2 = dispose(this.edlCalcTex2);\n this.edlCalcTex4 = dispose(this.edlCalcTex4);\n this.edlFiltTex2 = dispose(this.edlFiltTex2);\n this.edlFiltTex4 = dispose(this.edlFiltTex4);\n this.edlCalcFbo1 = dispose(this.edlCalcFbo1);\n this.edlCalcFbo2 = dispose(this.edlCalcFbo2);\n this.edlCalcFbo4 = dispose(this.edlCalcFbo4);\n this.edlFiltFbo2 = dispose(this.edlFiltFbo2);\n this.edlFiltFbo4 = dispose(this.edlFiltFbo4);\n this.edlCalcBasicGeom = dispose(this.edlCalcBasicGeom);\n if (this.edlCalcFullGeom) {\n this.edlCalcFullGeom[0] = dispose(this.edlCalcFullGeom?.[0]);\n this.edlCalcFullGeom[1] = dispose(this.edlCalcFullGeom?.[1]);\n this.edlCalcFullGeom[2] = dispose(this.edlCalcFullGeom?.[2]);\n this.edlCalcFullGeom = undefined;\n }\n if (this.edlFiltGeom) {\n this.edlFiltGeom[0] = dispose(this.edlFiltGeom?.[0]);\n this.edlFiltGeom[1] = dispose(this.edlFiltGeom?.[1]);\n this.edlFiltGeom = undefined;\n }\n this.edlMixGeom = dispose(this.edlMixGeom);\n }\n}\n\n/** @internal */\nexport enum EDLMode { Off, On, Full }\n\n/** @internal */\nexport interface EDLDrawParams {\n inputTex: TextureHandle; // input to calc EDL from\n curFbo: FrameBuffer; // output fbo to get color texture from for EDL to put result in\n edlMode: EDLMode;\n edlFilter: boolean; // applies to Full mode only\n useMsBuffers: boolean;\n}\n\nexport class EyeDomeLighting implements RenderMemory.Consumer, WebGLDisposable {\n private _bundle?: Bundle;\n private _width: number;\n private _height: number;\n private _depth?: DepthBuffer; // depth buffer to read from, has to be non-MS and be up to date in draw if MS is used\n private _edlFinalFbo?: FrameBuffer;\n private _edlFinalBufs?: { tex: TextureHandle, msBuf: RenderBufferMultiSample | undefined };\n private readonly _target: Target;\n\n private getBundle(): Bundle | undefined {\n if (undefined === this._bundle) {\n this._bundle = Bundle.create(this._width, this._height);\n assert(undefined !== this._bundle);\n }\n return this._bundle;\n }\n\n public constructor(target: Target) {\n this._target = target;\n this._width = target.viewRect.width;\n this._height = target.viewRect.height;\n }\n\n public init(width: number, height: number, depth: DepthBuffer): boolean {\n this._width = width;\n this._height = height;\n this._depth = depth;\n // don't create buffers until we know we will use them (first draw)\n return true;\n }\n\n public collectStatistics(stats: RenderMemory.Statistics): void {\n const bundle = this._bundle;\n if (undefined !== bundle) {\n collectTextureStatistics(bundle.edlCalcTex1, stats);\n collectTextureStatistics(bundle.edlCalcTex2, stats);\n collectTextureStatistics(bundle.edlCalcTex4, stats);\n collectTextureStatistics(bundle.edlFiltTex2, stats);\n collectTextureStatistics(bundle.edlFiltTex4, stats);\n\n collectGeometryStatistics(bundle.edlCalcBasicGeom, stats);\n collectGeometryStatistics(bundle.edlCalcFullGeom?.[0], stats);\n collectGeometryStatistics(bundle.edlCalcFullGeom?.[1], stats);\n collectGeometryStatistics(bundle.edlCalcFullGeom?.[2], stats);\n collectGeometryStatistics(bundle.edlFiltGeom?.[0], stats);\n collectGeometryStatistics(bundle.edlFiltGeom?.[1], stats);\n collectGeometryStatistics(bundle.edlMixGeom, stats);\n }\n }\n\n public get isDisposed(): boolean { return undefined === this._bundle && undefined === this._edlFinalFbo; }\n\n public [Symbol.dispose]() {\n this._bundle = dispose(this._bundle);\n this._edlFinalFbo = dispose(this._edlFinalFbo);\n }\n\n public reset() {\n this[Symbol.dispose]();\n }\n\n /** calculate EyeDomeLighting at specified quality using screen space shaders\n * returns true if succeeds\n */\n public draw(edlParams: EDLDrawParams): boolean {\n if (undefined === edlParams.inputTex || undefined === this._depth || undefined === edlParams.curFbo)\n return false;\n\n const bundle = this.getBundle();\n if (undefined === bundle)\n return false;\n\n // NB: have to test and create MS buffer as well if useMsBuffers, not outputting to depth\n const finalBufs = edlParams.curFbo.getColorTargets(edlParams.useMsBuffers, 0);\n if (undefined === this._edlFinalFbo || this._edlFinalBufs?.tex !== finalBufs.tex ||\n (edlParams.useMsBuffers && this._edlFinalBufs?.msBuf !== finalBufs.msBuf)) {\n this._edlFinalFbo = dispose(this._edlFinalFbo);\n this._edlFinalBufs = finalBufs;\n const filters = [GL.MultiSampling.Filter.Linear];\n this._edlFinalFbo = FrameBuffer.create([this._edlFinalBufs.tex], undefined,\n edlParams.useMsBuffers && this._edlFinalBufs.msBuf ? [this._edlFinalBufs.msBuf] : undefined, filters, undefined);\n if (undefined === this._edlFinalFbo)\n return false;\n }\n\n const fbStack = System.instance.frameBufferStack;\n const useMsBuffers = edlParams.useMsBuffers;\n System.instance.applyRenderState(RenderState.defaults);\n\n // ###TODO: should radius be (optionally?) voxel based instead of pixel here?\n if (edlParams.edlMode === EDLMode.On) {\n // draw using single pass version (still 8 samples, full size)\n fbStack.execute(this._edlFinalFbo, true, useMsBuffers, () => {\n if (bundle.edlCalcBasicGeom === undefined) {\n const ct1 = edlParams.inputTex;\n const ctd = this._depth!.getHandle()!;\n bundle.edlCalcBasicGeom = EDLCalcBasicGeometry.createGeometry(ct1.getHandle()!, ctd, ct1.width, ct1.height);\n }\n const params = getDrawParams(this._target, bundle.edlCalcBasicGeom!);\n this._target.techniques.draw(params);\n });\n } else { // EDLMode.Full\n // draw with full method based on original paper using full, 1/2, and 1/4 sizes\n const edlCalc2FB: FrameBuffer[] = [bundle.edlCalcFbo1!, bundle.edlCalcFbo2!, bundle.edlCalcFbo4!];\n if (bundle.edlCalcFullGeom === undefined) {\n const ct1 = edlParams.inputTex;\n const ct2 = bundle.edlCalcTex2;\n const ct4 = bundle.edlCalcTex4;\n const ctd = this._depth.getHandle()!;\n bundle.edlCalcFullGeom = [EDLCalcFullGeometry.createGeometry(ct1.getHandle()!, ctd, 1, ct1.width, ct1.height),\n EDLCalcFullGeometry.createGeometry(ct1.getHandle()!, ctd, 2, ct2!.width, ct2!.height),\n EDLCalcFullGeometry.createGeometry(ct1.getHandle()!, ctd, 4, ct4!.width, ct4!.height)];\n }\n\n const edlFiltFbos: FrameBuffer[] = [bundle.edlFiltFbo2!, bundle.edlFiltFbo4!];\n if (bundle.edlFiltGeom === undefined) {\n const ft2 = bundle.edlCalcTex2;\n const ft4 = bundle.edlCalcTex4;\n const ftd = this._depth.getHandle()!;\n bundle.edlFiltGeom = [EDLFilterGeometry.createGeometry(ft2!.getHandle()!, ftd, 2, ft2!.width, ft2!.height),\n EDLFilterGeometry.createGeometry(ft4!.getHandle()!, ftd, 4, ft4!.width, ft4!.height)];\n }\n\n const gl = System.instance.context;\n // Loop through the 3 sizes calculating an edl buffer, and if not first size, then optionally filtering those\n for (let i = 0; i < 3; ++i) {\n fbStack.execute(edlCalc2FB[i], true, false, () => {\n const colTex = edlCalc2FB[i].getColor(0);\n gl.viewport(0, 0, colTex.width, colTex.height); // have to set viewport to current texture size\n const params = getDrawParams(this._target, bundle.edlCalcFullGeom![i]!);\n this._target.techniques.draw(params);\n });\n\n if (edlParams.edlFilter && i > 0) {\n fbStack.execute(edlFiltFbos[i - 1], true, false, () => {\n const params = getDrawParams(this._target, bundle.edlFiltGeom![i - 1]!);\n this._target.techniques.draw(params);\n });\n }\n }\n gl.viewport(0, 0, this._width, this._height); // Restore viewport\n\n // Now combine the 3 results and output\n const tex1 = bundle.edlCalcTex1!.getHandle();\n const tex2 = edlParams.edlFilter ? bundle.edlFiltTex2!.getHandle() : bundle.edlCalcTex2!.getHandle();\n const tex4 = edlParams.edlFilter ? bundle.edlFiltTex4!.getHandle() : bundle.edlCalcTex4!.getHandle();\n fbStack.execute(this._edlFinalFbo, true, useMsBuffers, () => {\n if (bundle.edlMixGeom === undefined) {\n bundle.edlMixGeom = EDLMixGeometry.createGeometry(tex1!, tex2!, tex4!);\n } else {\n if (bundle.edlMixGeom.colorTexture1 !== tex1 || bundle.edlMixGeom.colorTexture2 !== tex2 || bundle.edlMixGeom.colorTexture4 !== tex4) {\n dispose(bundle.edlMixGeom);\n bundle.edlMixGeom = EDLMixGeometry.createGeometry(tex1!, tex2!, tex4!);\n }\n }\n const params = getDrawParams(this._target, bundle.edlMixGeom!);\n this._target.techniques.draw(params);\n });\n }\n return true;\n }\n}\n"]}
1
+ {"version":3,"file":"EDL.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/EDL.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EdgeGeometry.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/EdgeGeometry.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module WebGL\n */\n\nimport { assert, dispose } from \"@itwin/core-bentley\";\nimport { EdgeAppearanceOverrides, RenderMode } from \"@itwin/core-common\";\nimport { RenderMemory } from \"../../../render/RenderMemory\";\nimport { AttributeMap } from \"./AttributeMap\";\nimport { PolylineBuffers } from \"./CachedGeometry\";\nimport { ColorInfo } from \"./ColorInfo\";\nimport { ShaderProgramParams } from \"./DrawCommand\";\nimport { GL } from \"./GL\";\nimport { BufferHandle, BufferParameters, BuffersContainer } from \"./AttributeBuffers\";\nimport { RenderOrder } from \"./RenderFlags\";\nimport { System } from \"./System\";\nimport { Target } from \"./Target\";\nimport { TechniqueId } from \"./TechniqueId\";\nimport { MeshData } from \"./MeshData\";\nimport { MeshGeometry } from \"./MeshGeometry\";\nimport { PolylineEdgeGroup, SegmentEdgeParams, SilhouetteParams } from \"../../../common/internal/render/EdgeParams\";\nimport { lineCodeFromLinePixels } from \"../../../common/internal/render/LineCode\";\n\n/** @internal */\nexport class EdgeGeometry extends MeshGeometry {\n public readonly buffers: BuffersContainer;\n protected readonly _indices: BufferHandle;\n protected readonly _endPointAndQuadIndices: BufferHandle;\n\n public get lutBuffers() { return this.buffers; }\n public override get asSurface() { return undefined; }\n public override get asEdge() { return this; }\n public override get asSilhouette(): SilhouetteEdgeGeometry | undefined { return undefined; }\n\n public static create(mesh: MeshData, edges: SegmentEdgeParams): EdgeGeometry | undefined {\n const indexBuffer = BufferHandle.createArrayBuffer(edges.indices.data);\n const endPointBuffer = BufferHandle.createArrayBuffer(edges.endPointAndQuadIndices);\n return undefined !== indexBuffer && undefined !== endPointBuffer ? new EdgeGeometry(indexBuffer, endPointBuffer, edges.indices.length, mesh) : undefined;\n }\n\n public get isDisposed(): boolean {\n return this.buffers.isDisposed\n && this._indices.isDisposed\n && this._endPointAndQuadIndices.isDisposed;\n }\n\n public [Symbol.dispose]() {\n dispose(this.buffers);\n dispose(this._indices);\n dispose(this._endPointAndQuadIndices);\n }\n\n public collectStatistics(stats: RenderMemory.Statistics): void {\n stats.addVisibleEdges(this._indices.bytesUsed + this._endPointAndQuadIndices.bytesUsed);\n }\n\n protected _draw(numInstances: number, instanceBuffersContainer?: BuffersContainer): void {\n const bufs = instanceBuffersContainer !== undefined ? instanceBuffersContainer : this.buffers;\n\n bufs.bind();\n System.instance.drawArrays(GL.PrimitiveType.Triangles, 0, this._numIndices, numInstances);\n bufs.unbind();\n }\n\n protected _wantWoWReversal(_target: Target): boolean { return true; }\n protected override _getLineCode(params: ShaderProgramParams): number { return this.computeEdgeLineCode(params); }\n public get techniqueId(): TechniqueId { return TechniqueId.Edge; }\n public override getPass(target: Target) { return this.computeEdgePass(target); }\n public get renderOrder(): RenderOrder { return this.isPlanar ? RenderOrder.PlanarEdge : RenderOrder.Edge; }\n public override getColor(target: Target): ColorInfo { return this.computeEdgeColor(target); }\n public get endPointAndQuadIndices(): BufferHandle { return this._endPointAndQuadIndices; }\n public override wantMonochrome(target: Target): boolean {\n return target.currentViewFlags.renderMode === RenderMode.Wireframe;\n }\n\n protected constructor(indices: BufferHandle, endPointAndQuadsIndices: BufferHandle, numIndices: number, mesh: MeshData) {\n super(mesh, numIndices);\n this.buffers = BuffersContainer.create();\n const attrPos = AttributeMap.findAttribute(\"a_pos\", TechniqueId.Edge, false);\n const attrEndPointAndQuadIndices = AttributeMap.findAttribute(\"a_endPointAndQuadIndices\", TechniqueId.Edge, false);\n assert(attrPos !== undefined);\n assert(attrEndPointAndQuadIndices !== undefined);\n this.buffers.addBuffer(indices, [BufferParameters.create(attrPos.location, 3, GL.DataType.UnsignedByte, false, 0, 0, false)]);\n this.buffers.addBuffer(endPointAndQuadsIndices, [BufferParameters.create(attrEndPointAndQuadIndices.location, 4, GL.DataType.UnsignedByte, false, 0, 0, false)]);\n this._indices = indices;\n this._endPointAndQuadIndices = endPointAndQuadsIndices;\n }\n}\n\n/** @internal */\nexport class SilhouetteEdgeGeometry extends EdgeGeometry {\n private readonly _normalPairs: BufferHandle;\n\n public override get asSilhouette() { return this; }\n\n public static createSilhouettes(mesh: MeshData, params: SilhouetteParams): SilhouetteEdgeGeometry | undefined {\n const indexBuffer = BufferHandle.createArrayBuffer(params.indices.data);\n const endPointBuffer = BufferHandle.createArrayBuffer(params.endPointAndQuadIndices);\n const normalsBuffer = BufferHandle.createArrayBuffer(params.normalPairs);\n return undefined !== indexBuffer && undefined !== endPointBuffer && undefined !== normalsBuffer ? new SilhouetteEdgeGeometry(indexBuffer, endPointBuffer, normalsBuffer, params.indices.length, mesh) : undefined;\n }\n\n public override get isDisposed(): boolean { return super.isDisposed && this._normalPairs.isDisposed; }\n\n public override[Symbol.dispose]() {\n super[Symbol.dispose]();\n dispose(this._normalPairs);\n }\n\n public override collectStatistics(stats: RenderMemory.Statistics): void {\n stats.addSilhouetteEdges(this._indices.bytesUsed + this._endPointAndQuadIndices.bytesUsed + this._normalPairs.bytesUsed);\n }\n\n public override get techniqueId(): TechniqueId { return TechniqueId.SilhouetteEdge; }\n public override get renderOrder(): RenderOrder { return this.isPlanar ? RenderOrder.PlanarSilhouette : RenderOrder.Silhouette; }\n public get normalPairs(): BufferHandle { return this._normalPairs; }\n\n private constructor(indices: BufferHandle, endPointAndQuadsIndices: BufferHandle, normalPairs: BufferHandle, numIndices: number, mesh: MeshData) {\n super(indices, endPointAndQuadsIndices, numIndices, mesh);\n const attrNormals = AttributeMap.findAttribute(\"a_normals\", TechniqueId.SilhouetteEdge, false);\n assert(attrNormals !== undefined);\n this.buffers.addBuffer(normalPairs, [BufferParameters.create(attrNormals.location, 4, GL.DataType.UnsignedByte, false, 0, 0, false)]);\n this._normalPairs = normalPairs;\n }\n}\n\n/** @internal */\nexport class PolylineEdgeGeometry extends MeshGeometry {\n private _buffers: PolylineBuffers;\n private readonly _colorInfo: ColorInfo;\n private readonly _width: number;\n private readonly _lineCode: number;\n\n public get lutBuffers() { return this._buffers.buffers; }\n\n public static create(mesh: MeshData, group: PolylineEdgeGroup): PolylineEdgeGeometry | undefined {\n const buffers = PolylineBuffers.create(group.polyline);\n return undefined !== buffers ? new PolylineEdgeGeometry(group.polyline.indices.length, buffers, mesh, group.appearance) : undefined;\n }\n\n public get isDisposed(): boolean { return this._buffers.isDisposed; }\n\n public [Symbol.dispose]() {\n dispose(this._buffers);\n }\n\n public collectStatistics(stats: RenderMemory.Statistics): void {\n this._buffers.collectStatistics(stats, RenderMemory.BufferType.PolylineEdges);\n }\n\n protected _wantWoWReversal(_target: Target): boolean { return true; }\n public get techniqueId(): TechniqueId { return TechniqueId.Polyline; }\n public override getPass(target: Target) { return this.computeEdgePass(target); }\n public get renderOrder(): RenderOrder { return this.isPlanar ? RenderOrder.PlanarEdge : RenderOrder.Edge; }\n public override get polylineBuffers(): PolylineBuffers { return this._buffers; }\n\n protected override _getLineCode(params: ShaderProgramParams): number {\n return params.target.computeEdgeLineCode(params.renderPass, this._lineCode);\n }\n\n protected override _getLineWeight(params: ShaderProgramParams): number {\n return params.target.computeEdgeWeight(params.renderPass, this._width);\n }\n\n public override getColor(target: Target) {\n return target.computeEdgeColor(this._colorInfo);\n }\n\n public override wantMonochrome(target: Target): boolean {\n return target.currentViewFlags.renderMode === RenderMode.Wireframe;\n }\n\n protected _draw(numInstances: number, instanceBuffersContainer?: BuffersContainer): void {\n const gl = System.instance;\n const bufs = instanceBuffersContainer !== undefined ? instanceBuffersContainer : this._buffers.buffers;\n\n bufs.bind();\n gl.drawArrays(GL.PrimitiveType.Triangles, 0, this._numIndices, numInstances);\n bufs.unbind();\n }\n\n private constructor(numIndices: number, buffers: PolylineBuffers, mesh: MeshData, appearance: EdgeAppearanceOverrides | undefined) {\n super(mesh, numIndices);\n this._buffers = buffers;\n\n this._colorInfo = appearance?.color ? ColorInfo.createFromColorDef(appearance.color) : mesh.lut.colorInfo;\n this._width = appearance?.width ?? mesh.edgeWidth;\n this._lineCode = appearance?.linePixels ? lineCodeFromLinePixels(appearance?.linePixels) : mesh.edgeLineCode;\n }\n}\n"]}
1
+ {"version":3,"file":"EdgeGeometry.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/EdgeGeometry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EdgeSettings.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/EdgeSettings.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,oDAAiF;AACjF,2CAAwC;AAExC,yCAAsC;AAGtC;;;GAGG;AACH,MAAa,YAAY;IACvB,0DAA0D;IACzC,MAAM,GAAG,qBAAS,CAAC,YAAY,CAAC,sBAAQ,CAAC,KAAK,CAAC,CAAC;IACzD,gBAAgB,GAAG,KAAK,CAAC;IACzB,gBAAgB,CAAU;IAC1B,cAAc,CAAU;IACxB,eAAe,CAAU;IACzB,aAAa,CAAU;IAC/B;;OAEG;IACK,sBAAsB,GAAG,CAAC,CAAC;IAE5B,MAAM,CAAC,MAAM,CAAC,KAAsC;QACzD,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;QACpC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,IAAI,CAAC,KAAsC;QAChD,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,KAAK;YACR,OAAO;QAET,kHAAkH;QAClH,IAAI,SAAS,GAAG,KAAK,CAAC,qBAAqB,CAAC;QAC5C,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;QAChD,IAAI,CAAC,sBAAsB,GAAG,GAAG,GAAG,SAAS,CAAC;QAE9C,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC;QAC1B,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;QAED,IAAI,CAAC,gBAAgB,GAAG,CAAC,SAAS,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC5G,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC;QAEhC,kEAAkE;QAClE,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;QACzB,IAAI,CAAC,eAAe,GAAG,SAAS,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;QAErH,IAAI,CAAC,aAAa,GAAG,SAAS,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;QAC/E,IAAI,SAAS,KAAK,IAAI,CAAC,aAAa,IAAI,SAAS,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YAC1E,mDAAmD;YACnD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAEM,eAAe,CAAC,IAAgB,EAAE,EAAa;QACpD,+CAA+C;QAC/C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YACxB,6BAAqB;QAEvB,gFAAgF;QAChF,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,gDAAgC,6BAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,mDAAmC,CAAC,CAAC;QAEhI,IAAI,SAAS,KAAK,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC;YAC1C,KAAK,8BAAqB,CAAC;QAE7B,IAAI,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;YACxC,KAAK,6BAAmB,CAAC;QAE3B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAW,qBAAqB;QAC9B,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAEM,QAAQ,CAAC,EAAa;QAC3B,OAAO,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAClF,CAAC;IAEM,WAAW,CAAC,IAAgB,EAAE,EAAa;QAChD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YACxB,OAAO,SAAS,CAAC;QAEnB,OAAO,kCAA0B,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;IACvF,CAAC;IAEM,SAAS,CAAC,IAAgB,EAAE,EAAa;QAC9C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YACxB,OAAO,SAAS,CAAC;QAEnB,OAAO,kCAA0B,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;IACnF,CAAC;IAEO,KAAK;QACX,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QACxD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QACtD,IAAI,CAAC,sBAAsB,GAAG,CAAC,CAAC;IAClC,CAAC;IAEM,oBAAoB,CAAC,UAAsB;QAChD,OAAO,CAAC,IAAI,CAAC,gBAAgB,IAAI,wBAAU,CAAC,SAAS,KAAK,UAAU,CAAC;IACvE,CAAC;IAEO,YAAY,CAAC,EAAa;QAChC,QAAQ,EAAE,CAAC,UAAU,EAAE,CAAC;YACtB,KAAK,wBAAU,CAAC,SAAS;gBACvB,OAAO,KAAK,CAAC,CAAC,+CAA+C;YAC/D,KAAK,wBAAU,CAAC,WAAW;gBACzB,OAAO,EAAE,CAAC,YAAY,CAAC;YACzB;gBACE,OAAO,IAAI,CAAC,CAAC,6DAA6D;QAC9E,CAAC;IACH,CAAC;CACF;AA7GD,oCA6GC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module WebGL\n */\n\nimport { ColorDef, HiddenLine, RenderMode, ViewFlags } from \"@itwin/core-common\";\nimport { FloatRgba } from \"./FloatRGBA\";\nimport { RenderPass } from \"./RenderFlags\";\nimport { LineCode } from \"./LineCode\";\nimport { OvrFlags } from \"../../../common/internal/render/OvrFlags\";\n\n/** Controls symbology of edges based on ViewFlags and HiddenLine.Settings. Typically these come from the Target's\n * RenderPlan, but a GraphicBranch may override those settings.\n * @internal\n */\nexport class EdgeSettings {\n /** The color applies to both hidden and visible edges. */\n private readonly _color = FloatRgba.fromColorDef(ColorDef.white);\n private _colorOverridden = false;\n private _visibleLineCode?: number;\n private _visibleWeight?: number;\n private _hiddenLineCode?: number;\n private _hiddenWeight?: number;\n /** Controls how opaque a surface must be to be displayed in SolidFill or HiddenLine modes; or how opaque it must be to\n * block shadow-casting lights in SmoothShade mode.\n */\n private _transparencyThreshold = 0;\n\n public static create(hline: HiddenLine.Settings | undefined): EdgeSettings {\n const settings = new EdgeSettings();\n settings.init(hline);\n return settings;\n }\n\n public init(hline: HiddenLine.Settings | undefined): void {\n this.clear();\n if (!hline)\n return;\n\n // The threshold is HiddenLine.Settings is a transparency value. Convert it to an alpha value and clamp to [0..1].\n let threshold = hline.transparencyThreshold;\n threshold = Math.min(1, Math.max(0, threshold));\n this._transparencyThreshold = 1.0 - threshold;\n\n const vis = hline.visible;\n if (vis.color) {\n this._colorOverridden = true;\n this._color.setColorDef(vis.color);\n }\n\n this._visibleLineCode = (undefined !== vis.pattern ? LineCode.valueFromLinePixels(vis.pattern) : undefined);\n this._visibleWeight = vis.width;\n\n // Hidden edge settings default to matching visible edge settings.\n const hid = hline.hidden;\n this._hiddenLineCode = undefined !== hid.pattern ? LineCode.valueFromLinePixels(hid.pattern) : this._visibleLineCode;\n\n this._hiddenWeight = undefined !== hid.width ? hid.width : this._visibleWeight;\n if (undefined !== this._hiddenWeight && undefined !== this._visibleWeight) {\n // Hidden edges cannot be wider than visible edges.\n this._hiddenWeight = Math.min(this._visibleWeight, this._hiddenWeight);\n }\n }\n\n public computeOvrFlags(pass: RenderPass, vf: ViewFlags): OvrFlags {\n // Edge overrides never apply in wireframe mode\n if (!this.isOverridden(vf))\n return OvrFlags.None;\n\n // Alpha always overridden - transparent edges only supported in wireframe mode.\n let flags = this.getColor(vf) ? (OvrFlags.Rgba | OvrFlags.LineRgb | OvrFlags.LineAlpha) : (OvrFlags.Alpha | OvrFlags.LineAlpha);\n\n if (undefined !== this.getLineCode(pass, vf))\n flags |= OvrFlags.LineCode;\n\n if (undefined !== this.getWeight(pass, vf))\n flags |= OvrFlags.Weight;\n\n return flags;\n }\n\n public get transparencyThreshold(): number {\n return this._transparencyThreshold;\n }\n\n public getColor(vf: ViewFlags): FloatRgba | undefined {\n return this._colorOverridden && this.isOverridden(vf) ? this._color : undefined;\n }\n\n public getLineCode(pass: RenderPass, vf: ViewFlags): number | undefined {\n if (!this.isOverridden(vf))\n return undefined;\n\n return RenderPass.HiddenEdge === pass ? this._hiddenLineCode : this._visibleLineCode;\n }\n\n public getWeight(pass: RenderPass, vf: ViewFlags): number | undefined {\n if (!this.isOverridden(vf))\n return undefined;\n\n return RenderPass.HiddenEdge === pass ? this._hiddenWeight : this._visibleWeight;\n }\n\n private clear(): void {\n this._colorOverridden = false;\n this._visibleLineCode = this._visibleWeight = undefined;\n this._hiddenLineCode = this._hiddenWeight = undefined;\n this._transparencyThreshold = 0;\n }\n\n public wantContrastingColor(renderMode: RenderMode): boolean {\n return !this._colorOverridden && RenderMode.SolidFill === renderMode;\n }\n\n private isOverridden(vf: ViewFlags): boolean {\n switch (vf.renderMode) {\n case RenderMode.Wireframe:\n return false; // edge overrides don't apply in wireframe mode\n case RenderMode.SmoothShade:\n return vf.visibleEdges;\n default:\n return true; // Edges always displayed in solid fill and hidden line modes\n }\n }\n}\n"]}
1
+ {"version":3,"file":"EdgeSettings.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/EdgeSettings.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FeatureOverrides.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/FeatureOverrides.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module WebGL\n */\n\nimport { assert, dispose, Id64 } from \"@itwin/core-bentley\";\nimport { PackedFeature, RenderFeatureTable } from \"@itwin/core-common\";\nimport { FeatureSymbology } from \"../../../render/FeatureSymbology\";\nimport { WebGLDisposable } from \"./Disposable\";\nimport { LineCode } from \"./LineCode\";\nimport { GL } from \"./GL\";\nimport { UniformHandle } from \"./UniformHandle\";\nimport { EmphasisFlags, TextureUnit } from \"./RenderFlags\";\nimport { sync, SyncObserver } from \"./Sync\";\nimport { System } from \"./System\";\nimport { Hilites, Target } from \"./Target\";\nimport { Texture2DDataUpdater, Texture2DHandle, TextureHandle } from \"./Texture\";\nimport { BatchOptions } from \"../../../common/render/BatchOptions\";\nimport { DisplayParams } from \"../../../common/internal/render/DisplayParams\";\nimport { OvrFlags } from \"../../../common/internal/render/OvrFlags\";\nimport { computeDimensions } from \"../../../common/internal/render/VertexTable\";\n\nexport function isFeatureHilited(feature: PackedFeature, hilites: Hilites, isModelHilited: boolean): boolean {\n if (hilites.isEmpty)\n return false;\n\n if (\"union\" === hilites.modelSubCategoryMode)\n return isModelHilited || hilites.elements.hasPair(feature.elementId) || hilites.subcategories.hasPair(feature.subCategoryId);\n\n return hilites.elements.hasPair(feature.elementId) || (isModelHilited && hilites.subcategories.hasPair(feature.subCategoryId));\n}\n\n/** @internal */\nexport type FeatureOverridesCleanup = () => void;\n\nconst scratchPackedFeature = PackedFeature.createWithIndex();\n\n/** @internal */\nexport class FeatureOverrides implements WebGLDisposable {\n public readonly target: Target;\n private readonly _options: BatchOptions;\n private _lut?: Texture2DHandle;\n private _mostRecentSymbologyOverrides?: FeatureSymbology.Overrides;\n private _lastFlashId = Id64.invalid;\n private _hiliteSyncObserver: SyncObserver = {};\n private _pickExclusionsSyncObserver: SyncObserver = {};\n private _anyOverridden = true;\n private _allHidden = true;\n private _anyTranslucent = true;\n private _anyViewIndependentTranslucent = true;\n private _anyOpaque = true;\n private _anyHilited = true;\n private _lutParams = new Float32Array(2);\n private _uniformSymbologyFlags: EmphasisFlags = EmphasisFlags.None;\n private _cleanup?: FeatureOverridesCleanup;\n\n public get anyOverridden() { return this._anyOverridden; }\n public get allHidden() { return this._allHidden; }\n public get anyTranslucent() { return this._anyTranslucent; }\n public get anyViewIndependentTranslucent() { return this._anyViewIndependentTranslucent; }\n public get anyOpaque() { return this._anyOpaque; }\n public get anyHilited() { return this._anyHilited; }\n\n /** For tests. */\n public get lutData(): Uint8Array | undefined { return this._lut?.dataBytes; }\n public get byteLength(): number { return undefined !== this._lut ? this._lut.bytesUsed : 0; }\n public get isUniform() { return 3 === this._lutParams[0] && 1 === this._lutParams[1]; }\n\n private updateUniformSymbologyFlags(): void {\n this._uniformSymbologyFlags = EmphasisFlags.None;\n if (!this.isUniform || !this._lut)\n return;\n\n let flags = this._lut.dataBytes![0];\n if (0 !== (flags & OvrFlags.Flashed))\n this._uniformSymbologyFlags |= EmphasisFlags.Flashed;\n\n if (0 !== (flags & OvrFlags.NonLocatable))\n this._uniformSymbologyFlags |= EmphasisFlags.NonLocatable;\n\n if (!this._anyHilited)\n return;\n\n flags = this._lut.dataBytes![1] << 8;\n if (0 !== (flags & OvrFlags.Hilited))\n this._uniformSymbologyFlags |= EmphasisFlags.Hilite;\n\n if (0 !== (flags & OvrFlags.Emphasized))\n this._uniformSymbologyFlags |= EmphasisFlags.Emphasized;\n }\n\n public getUniformOverrides(): Uint8Array {\n assert(this.isUniform);\n assert(undefined !== this._lut);\n assert(undefined !== this._lut.dataBytes);\n return this._lut.dataBytes;\n }\n\n private _initialize(map: RenderFeatureTable, ovrs: FeatureSymbology.Overrides, pickExcludes: Id64.Uint32Set, hilite: Hilites, flashed?: Id64.Uint32Pair): Texture2DHandle | undefined {\n const nFeatures = map.numFeatures;\n const dims = computeDimensions(nFeatures, 3, 0, System.instance.maxTextureSize);\n const width = dims.width;\n const height = dims.height;\n assert(width * height >= nFeatures);\n\n this._lutParams[0] = width;\n this._lutParams[1] = height;\n\n const data = new Uint8Array(width * height * 4);\n const creator = new Texture2DDataUpdater(data);\n this.buildLookupTable(creator, map, ovrs, pickExcludes, flashed, hilite);\n\n return TextureHandle.createForData(width, height, data, true, GL.Texture.WrapMode.ClampToEdge);\n }\n\n private _update(map: RenderFeatureTable, lut: Texture2DHandle, pickExcludes: Id64.Uint32Set | undefined, flashed?: Id64.Uint32Pair, hilites?: Hilites, ovrs?: FeatureSymbology.Overrides) {\n const updater = new Texture2DDataUpdater(lut.dataBytes!);\n\n if (undefined === ovrs) {\n this.updateFlashedAndHilited(updater, map, pickExcludes, flashed, hilites);\n } else {\n assert(undefined !== hilites);\n this.buildLookupTable(updater, map, ovrs, pickExcludes, flashed, hilites);\n }\n\n lut.update(updater);\n }\n\n private setTransparency(transparency: number, viewDependentTransparency: true | undefined, data: Texture2DDataUpdater, transparencyByteIndex: number, curFlags: OvrFlags): OvrFlags {\n // transparency in range [0, 1]...convert to byte and invert so 0=transparent...\n let alpha = 1.0 - transparency;\n alpha = Math.floor(0xff * alpha + 0.5);\n if ((0xff - alpha) < DisplayParams.minTransparency)\n alpha = 0xff;\n\n data.setByteAtIndex(transparencyByteIndex, alpha);\n if (0xff === alpha) {\n this._anyOpaque = true;\n } else {\n this._anyTranslucent = true;\n if (!viewDependentTransparency) {\n curFlags |= OvrFlags.ViewIndependentTransparency;\n this._anyViewIndependentTranslucent = true;\n }\n }\n\n return curFlags;\n }\n\n private buildLookupTable(data: Texture2DDataUpdater, map: RenderFeatureTable, ovr: FeatureSymbology.Overrides, pickExclude: Id64.Uint32Set | undefined, flashedIdParts: Id64.Uint32Pair | undefined, hilites: Hilites) {\n const allowHilite = true !== this._options.noHilite;\n const allowFlash = true !== this._options.noFlash;\n const allowEmphasis = true !== this._options.noEmphasis;\n\n let isModelHilited = false;\n const prevModelId = { lower: -1, upper: -1 };\n\n this._anyOpaque = this._anyTranslucent = this._anyViewIndependentTranslucent = this._anyHilited = false;\n\n let nHidden = 0;\n let nOverridden = 0;\n\n // NB: We currently use 3 RGBA values per feature as follows:\n // [0]\n // RG = override flags (see OvrFlags enum)\n // B = line code\n // A = line weight (if we need an extra byte in future, could combine code+weight into a single byte).\n // [1]\n // RGB = rgb\n // A = alpha\n // [2]\n // RGB = line rgb\n // A = line alpha\n for (const feature of map.iterable(scratchPackedFeature)) {\n const i = feature.index;\n const dataIndex = i * 4 * 3;\n\n if (prevModelId.lower !== feature.modelId.lower || prevModelId.upper !== feature.modelId.upper) {\n prevModelId.lower = feature.modelId.lower;\n prevModelId.upper = feature.modelId.upper;\n isModelHilited = allowHilite && hilites.models.hasPair(feature.modelId);\n }\n\n const app = this.target.currentBranch.getFeatureAppearance(\n ovr,\n feature.elementId.lower, feature.elementId.upper,\n feature.subCategoryId.lower, feature.subCategoryId.upper,\n feature.geometryClass,\n feature.modelId.lower, feature.modelId.upper,\n map.type, feature.animationNodeId);\n\n // NB: If the appearance is fully transparent, then:\n // - For normal (\"primary\") models, getAppearance() returns undefined.\n // - For classifier models, getAppearance() returns the appearance, and classification shader will discard fully-transparent classified pixels.\n // (The latter is how we clip the classified model using the classifiers).\n if (undefined === app) {\n // The feature is not visible. We don't care about any of the other overrides, because we're not going to render it.\n data.setOvrFlagsAtIndex(dataIndex, OvrFlags.Visibility);\n nHidden++;\n nOverridden++;\n continue;\n }\n\n let flags = app.nonLocatable ? OvrFlags.NonLocatable : OvrFlags.None;\n if (allowHilite && isFeatureHilited(feature, hilites, isModelHilited)) {\n flags |= OvrFlags.Hilited;\n this._anyHilited = true;\n }\n\n if (allowEmphasis && app.emphasized) {\n flags |= OvrFlags.Emphasized;\n this._anyHilited = true;\n }\n\n if (app.overridesRgb && app.rgb) {\n flags |= OvrFlags.Rgb;\n const rgb = app.rgb;\n data.setByteAtIndex(dataIndex + 4, rgb.r);\n data.setByteAtIndex(dataIndex + 5, rgb.g);\n data.setByteAtIndex(dataIndex + 6, rgb.b);\n }\n\n if (undefined !== app.transparency) {\n flags |= OvrFlags.Alpha;\n flags = this.setTransparency(app.transparency, app.viewDependentTransparency, data, dataIndex + 7, flags);\n }\n\n const lineRgb = app.getLineRgb();\n if (lineRgb) {\n flags |= OvrFlags.LineRgb;\n data.setByteAtIndex(dataIndex + 8, lineRgb.r);\n data.setByteAtIndex(dataIndex + 9, lineRgb.g);\n data.setByteAtIndex(dataIndex + 10, lineRgb.b);\n }\n\n const lineTransp = app.getLineTransparency();\n if (undefined !== lineTransp) {\n flags |= OvrFlags.LineAlpha;\n flags = this.setTransparency(lineTransp, app.viewDependentTransparency, data, dataIndex + 11, flags);\n }\n\n if (app.overridesWeight && app.weight) {\n flags |= OvrFlags.Weight;\n let weight = app.weight;\n weight = Math.min(31, weight);\n weight = Math.max(1, weight);\n data.setByteAtIndex(dataIndex + 3, weight);\n }\n\n if (app.overridesLinePixels && app.linePixels) {\n flags |= OvrFlags.LineCode;\n const lineCode = LineCode.valueFromLinePixels(app.linePixels);\n data.setByteAtIndex(dataIndex + 2, lineCode);\n }\n\n if (app.ignoresMaterial)\n flags |= OvrFlags.IgnoreMaterial;\n\n if (allowFlash && undefined !== flashedIdParts && feature.elementId.lower === flashedIdParts.lower && feature.elementId.upper === flashedIdParts.upper)\n flags |= OvrFlags.Flashed;\n\n if (pickExclude?.hasPair(feature.elementId)) {\n flags |= OvrFlags.InvisibleDuringPick;\n ++nHidden;\n }\n\n data.setOvrFlagsAtIndex(dataIndex, flags);\n if (OvrFlags.None !== flags)\n nOverridden++;\n }\n\n this._allHidden = (nHidden === map.numFeatures);\n this._anyOverridden = (nOverridden > 0);\n\n this.updateUniformSymbologyFlags();\n }\n\n // NB: If hilites is undefined, it means that the hilited set has not changed.\n private updateFlashedAndHilited(data: Texture2DDataUpdater, map: RenderFeatureTable, pickExcludes: Id64.Uint32Set | undefined, flashed?: Id64.Uint32Pair, hilites?: Hilites) {\n if (!hilites || true === this._options.noHilite) {\n this.updateFlashed(data, map, pickExcludes, flashed);\n return;\n }\n\n const allowFlash = true !== this._options.noFlash;\n const intersect = \"intersection\" === hilites.modelSubCategoryMode;\n\n this._anyOverridden = this._anyHilited = false;\n for (const feature of map.iterable(scratchPackedFeature)) {\n const dataIndex = feature.index * 4 * 3;\n const oldFlags = data.getOvrFlagsAtIndex(dataIndex);\n if (OvrFlags.None !== (oldFlags & OvrFlags.Visibility)) {\n // If it's invisible, none of the other flags matter. We can't flash it and don't want to hilite it.\n this._anyOverridden = true;\n continue;\n }\n\n const isModelHilited = hilites.models.hasPair(feature.modelId);\n let isHilited = isModelHilited && !intersect;\n if (!isHilited)\n isHilited = hilites.elements.hasPair(feature.elementId);\n\n if (!isHilited)\n if (isModelHilited || !intersect)\n isHilited = hilites.subcategories.hasPair(feature.subCategoryId);\n\n let isFlashed = false;\n if (flashed && allowFlash)\n isFlashed = feature.elementId.lower === flashed.lower && feature.elementId.upper === flashed.upper;\n\n let newFlags = isFlashed ? (oldFlags | OvrFlags.Flashed) : (oldFlags & ~OvrFlags.Flashed);\n newFlags = isHilited ? (newFlags | OvrFlags.Hilited) : (newFlags & ~OvrFlags.Hilited);\n if (pickExcludes) {\n newFlags = pickExcludes.hasPair(feature.elementId) ? (newFlags | OvrFlags.InvisibleDuringPick) : (newFlags & ~OvrFlags.InvisibleDuringPick);\n }\n\n data.setOvrFlagsAtIndex(dataIndex, newFlags);\n if (OvrFlags.None !== newFlags) {\n this._anyOverridden = true;\n this._anyHilited = this._anyHilited || isHilited || OvrFlags.None !== (newFlags & OvrFlags.Emphasized);\n }\n }\n\n this.updateUniformSymbologyFlags();\n }\n\n private updateFlashed(data: Texture2DDataUpdater, map: RenderFeatureTable, pickExcludes: Id64.Uint32Set | undefined, flashed?: Id64.Uint32Pair): void {\n if (true === this._options.noFlash && !pickExcludes)\n return;\n\n this._anyOverridden = false;\n const elemId = { lower: 0, upper: 0 };\n for (let i = 0; i < map.numFeatures; i++) {\n const dataIndex = i * 4 * 3;\n const oldFlags = data.getOvrFlagsAtIndex(dataIndex);\n if (OvrFlags.None !== (oldFlags & OvrFlags.Visibility)) {\n // If it's invisible, none of the other flags matter and we can't flash it.\n this._anyOverridden = true;\n continue;\n }\n\n let isFlashed = false;\n let thisElemId: Id64.Uint32Pair | undefined;\n if (flashed && !this._options.noFlash) {\n thisElemId = map.getElementIdPair(i, elemId);\n isFlashed = thisElemId.lower === flashed.lower && thisElemId.upper === flashed.upper;\n }\n\n let newFlags = isFlashed ? (oldFlags | OvrFlags.Flashed) : (oldFlags & ~OvrFlags.Flashed);\n if (pickExcludes) {\n if (!thisElemId) {\n thisElemId = map.getElementIdPair(i, elemId);\n }\n\n newFlags = pickExcludes.hasPair(thisElemId) ? (newFlags | OvrFlags.InvisibleDuringPick) : (newFlags & ~OvrFlags.InvisibleDuringPick);\n }\n\n data.setOvrFlagsAtIndex(dataIndex, newFlags);\n if (OvrFlags.None !== newFlags)\n this._anyOverridden = true;\n }\n\n this.updateUniformSymbologyFlags();\n }\n\n private constructor(target: Target, options: BatchOptions, cleanup: FeatureOverridesCleanup | undefined) {\n this.target = target;\n this._options = options;\n this._cleanup = cleanup;\n }\n\n public static createFromTarget(target: Target, options: BatchOptions, cleanup: FeatureOverridesCleanup | undefined) {\n return new FeatureOverrides(target, options, cleanup);\n }\n\n public get isDisposed(): boolean { return undefined === this._lut; }\n\n public [Symbol.dispose]() {\n this._lut = dispose(this._lut);\n if (this._cleanup) {\n this._cleanup();\n this._cleanup = undefined;\n }\n }\n\n public initFromMap(map: RenderFeatureTable) {\n const nFeatures = map.numFeatures;\n assert(0 < nFeatures);\n\n this._lut = dispose(this._lut);\n\n const ovrs: FeatureSymbology.Overrides = this.target.currentFeatureSymbologyOverrides;\n this._mostRecentSymbologyOverrides = ovrs;\n const hilite = this.target.hilites;\n this._lut = this._initialize(map, ovrs, this.target.pickExclusions, hilite, this.target.flashed);\n this._lastFlashId = Id64.invalid;\n this._hiliteSyncObserver = {};\n this._pickExclusionsSyncObserver = {};\n }\n\n public update(features: RenderFeatureTable) {\n let ovrs: FeatureSymbology.Overrides | undefined = this.target.currentFeatureSymbologyOverrides;\n const ovrsUpdated = ovrs !== this._mostRecentSymbologyOverrides;\n if (ovrsUpdated)\n this._mostRecentSymbologyOverrides = ovrs;\n else\n ovrs = undefined;\n\n const flashedId = this.target.flashedId;\n\n const hilite = this.target.hilites;\n const hiliteUpdated = !sync(this.target.hiliteSyncTarget, this._hiliteSyncObserver);\n const pickExcludesUpdated = !sync(this.target.pickExclusionsSyncTarget, this._pickExclusionsSyncObserver);\n\n if (ovrsUpdated || hiliteUpdated || flashedId !== this._lastFlashId || pickExcludesUpdated) {\n // _lut can be undefined if context was lost, (gl.createTexture returns null)\n if (this._lut) {\n this._update(\n features,\n this._lut,\n undefined !== ovrs || pickExcludesUpdated ? this.target.pickExclusions : undefined,\n this.target.flashed,\n undefined !== ovrs || hiliteUpdated ? hilite : undefined, ovrs,\n );\n }\n\n this._lastFlashId = flashedId;\n }\n }\n\n public bindLUTParams(uniform: UniformHandle): void {\n uniform.setUniform2fv(this._lutParams);\n }\n\n public bindLUT(uniform: UniformHandle): void {\n if (this._lut)\n this._lut.bindSampler(uniform, TextureUnit.FeatureSymbology);\n }\n\n public bindUniformSymbologyFlags(uniform: UniformHandle): void {\n uniform.setUniform1f(this._uniformSymbologyFlags);\n }\n}\n"]}
1
+ {"version":3,"file":"FeatureOverrides.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/FeatureOverrides.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FloatRGBA.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/FloatRGBA.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module WebGL\n */\n\nimport { ColorDef, RgbColor } from \"@itwin/core-common\";\nimport { UniformHandle } from \"./UniformHandle\";\n\nfunction clamp(norm: number): number {\n return Math.max(0, Math.min(1, norm));\n}\n\nfunction scale(norm: number): number {\n return Math.floor(norm * 255 + 0.5);\n}\n\nexport abstract class FloatColor {\n protected readonly _components: Float32Array;\n private _tbgr: number;\n\n protected constructor(numComponents: number) {\n this._components = new Float32Array(numComponents);\n this._tbgr = 0;\n }\n\n protected abstract maskTbgr(tbgr: number): number;\n protected abstract setComponents(r: number, g: number, b: number, a: number): void;\n\n public get red() { return this._components[0]; }\n public get green() { return this._components[1]; }\n public get blue() { return this._components[2]; }\n public get tbgr() { return this._tbgr; }\n public get isWhite() { return 1.0 === this.red && 1.0 === this.green && 1.0 === this.blue; }\n\n public setColorDef(def: ColorDef) {\n this.setTbgr(def.tbgr);\n }\n\n public setRgbColor(rgb: RgbColor) {\n this.setTbgr((rgb.r | (rgb.g << 8) | (rgb.b << 16)) >>> 0);\n }\n\n public setTbgr(tbgr: number) {\n tbgr = this.maskTbgr(tbgr);\n if (tbgr === this.tbgr)\n return;\n\n const c = ColorDef.getColors(tbgr);\n this.setComponents(c.r / 255, c.g / 255, c.b / 255, 1.0 - c.t / 255);\n this._tbgr = tbgr;\n }\n\n protected setRgbComponents(r: number, g: number, b: number): void {\n this._components[0] = r;\n this._components[1] = g;\n this._components[2] = b;\n }\n\n protected setRgbaComponents(r: number, g: number, b: number, a: number): void {\n r = clamp(r);\n g = clamp(g);\n b = clamp(b);\n a = clamp(a);\n\n const tbgr = (scale(r) | (scale(g) << 8) | (scale(b) << 16) | (scale(1 - a) << 24)) >>> 0;\n this._tbgr = this.maskTbgr(tbgr);\n this.setComponents(r, g, b, a);\n }\n}\n\nexport class FloatRgb extends FloatColor {\n public constructor() {\n super(3);\n }\n\n protected maskTbgr(tbgr: number) {\n return (tbgr & 0x00ffffff) >>> 0;\n }\n\n protected setComponents(r: number, g: number, b: number, _a: number) {\n this.setRgbComponents(r, g, b);\n }\n\n public set(r: number, g: number, b: number) {\n this.setRgbaComponents(r, g, b, 1);\n }\n\n public bind(uniform: UniformHandle): void {\n uniform.setUniform3fv(this._components);\n }\n\n public static fromColorDef(def: ColorDef): FloatRgb {\n return FloatRgb.fromTbgr(def.tbgr);\n }\n\n public static fromRgbColor(rgb: RgbColor): FloatRgb {\n return FloatRgb.from(rgb.r / 255, rgb.g / 255, rgb.b / 255);\n }\n\n public static from(r: number, g: number, b: number): FloatRgb {\n const rgb = new FloatRgb();\n rgb.set(r, g, b);\n return rgb;\n }\n\n public static fromTbgr(tbgr: number): FloatRgb {\n const rgb = new FloatRgb();\n rgb.setTbgr(tbgr);\n return rgb;\n }\n}\n\nexport class FloatRgba extends FloatColor {\n public constructor() {\n super(4);\n this._components[3] = 1.0;\n }\n\n protected maskTbgr(tbgr: number) {\n return tbgr;\n }\n\n protected setComponents(r: number, g: number, b: number, a: number) {\n this.setRgbComponents(r, g, b);\n this._components[3] = a;\n }\n\n public set(r: number, g: number, b: number, a: number) {\n this.setRgbaComponents(r, g, b, a);\n }\n\n public get alpha(): number { return this._components[3]; }\n public set alpha(alpha: number) { this._components[3] = alpha; }\n public get hasTranslucency(): boolean { return 1.0 !== this.alpha; }\n\n public bind(uniform: UniformHandle): void {\n uniform.setUniform4fv(this._components);\n }\n\n public static fromColorDef(def: ColorDef): FloatRgba {\n return FloatRgba.fromTbgr(def.tbgr);\n }\n\n public static fromTbgr(tbgr: number): FloatRgba {\n const rgba = new FloatRgba();\n rgba.setTbgr(tbgr);\n return rgba;\n }\n\n public static from(r: number, g: number, b: number, a: number): FloatRgba {\n const rgba = new FloatRgba();\n rgba.set(r, g, b, a);\n return rgba;\n }\n\n public clone(out?: FloatRgba): FloatRgba {\n if (undefined === out)\n return FloatRgba.from(this.red, this.green, this.blue, this.alpha);\n\n out.set(this.red, this.green, this.blue, this.alpha);\n return out;\n }\n}\n"]}
1
+ {"version":3,"file":"FloatRGBA.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/FloatRGBA.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FrameBuffer.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/FrameBuffer.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module WebGL\n */\n\nimport { assert } from \"@itwin/core-bentley\";\nimport { WebGLDisposable } from \"./Disposable\";\nimport { GL } from \"./GL\";\nimport { RenderBuffer, RenderBufferMultiSample } from \"./RenderBuffer\";\nimport { System } from \"./System\";\nimport { TextureHandle } from \"./Texture\";\n\n/** @internal */\nexport type DepthBuffer = RenderBuffer | RenderBufferMultiSample | TextureHandle;\n/* eslint-disable no-restricted-syntax */\n\n/** @internal */\nexport const enum FrameBufferBindState {\n Unbound,\n Bound,\n BoundWithAttachments,\n BoundMultisampled,\n BoundWithAttachmentsMultisampled,\n Suspended,\n}\n\n/** @internal */\nexport class FrameBuffer implements WebGLDisposable {\n private _fbo?: WebGLFramebuffer;\n private _fboMs?: WebGLFramebuffer;\n private _bindState: FrameBufferBindState = FrameBufferBindState.Unbound;\n private readonly _colorTextures: TextureHandle[] = [];\n private readonly _colorMsBuffers: RenderBufferMultiSample[] = [];\n private readonly _colorAttachments: GLenum[] = [];\n private readonly _colorMsFilters: GL.MultiSampling.Filter[] = [];\n public readonly depthBuffer?: DepthBuffer;\n public readonly depthBufferMs?: DepthBuffer;\n\n public get isDisposed(): boolean { return this._fbo === undefined; }\n\n public get isBound(): boolean { return FrameBufferBindState.Bound <= this._bindState && FrameBufferBindState.BoundWithAttachmentsMultisampled >= this._bindState; }\n\n public get isBoundMultisampled(): boolean { return FrameBufferBindState.BoundMultisampled === this._bindState || FrameBufferBindState.BoundWithAttachmentsMultisampled === this._bindState; }\n\n public get isSuspended(): boolean { return FrameBufferBindState.Suspended === this._bindState; }\n\n public get isMultisampled(): boolean { return this._colorMsBuffers.length > 0 || undefined !== this.depthBufferMs; }\n\n public getColor(ndx: number): TextureHandle {\n assert(ndx < this._colorTextures.length);\n if (ndx < this._colorMsBuffers.length && this._colorMsBuffers[ndx].isDirty) {\n this.blitMsBuffersToTextures(false, ndx);\n }\n return this._colorTextures[ndx];\n }\n\n public getColorTargets(useMSBuffers: boolean, ndx: number): { tex: TextureHandle, msBuf: RenderBufferMultiSample | undefined } {\n let msBuf;\n if (useMSBuffers) {\n assert(ndx < this._colorMsBuffers.length);\n msBuf = this._colorMsBuffers[ndx];\n }\n assert(ndx < this._colorTextures.length);\n return { tex: this._colorTextures[ndx], msBuf };\n }\n\n private constructor(fbo: WebGLFramebuffer, colorTextures: TextureHandle[], depthBuffer?: DepthBuffer,\n colorMsBuffers?: RenderBufferMultiSample[], msFilters?: GL.MultiSampling.Filter[], depthBufferMs?: DepthBuffer) {\n this._fbo = fbo;\n const gl = System.instance.context;\n\n this.bind(false);\n\n let i: number = 0;\n for (const colTex of colorTextures) {\n const attachmentEnum: GLenum = gl.COLOR_ATTACHMENT0 + i;\n this._colorAttachments.push(attachmentEnum);\n this._colorTextures.push(colTex);\n const texHandle = colTex.getHandle();\n if (undefined !== texHandle)\n gl.framebufferTexture2D(gl.FRAMEBUFFER, attachmentEnum, gl.TEXTURE_2D, texHandle, 0);\n i++;\n }\n\n if (depthBuffer !== undefined) {\n this.depthBuffer = depthBuffer;\n const dbHandle = depthBuffer.getHandle();\n if (undefined !== dbHandle) {\n if (depthBuffer instanceof RenderBuffer) {\n gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.RENDERBUFFER, dbHandle);\n } else if (depthBuffer instanceof RenderBufferMultiSample) {\n gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.RENDERBUFFER, dbHandle);\n } else {\n // Looks like we only get a 24 bit depth buffer anyway, so use a 24-8 with a stencil.\n // gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.TEXTURE_2D, dbHandle, 0);\n gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.TEXTURE_2D, dbHandle, 0);\n }\n }\n }\n\n this.unbind();\n\n if (undefined !== colorMsBuffers && colorMsBuffers.length === colorTextures.length && undefined !== msFilters && msFilters.length === colorMsBuffers.length) {\n // Create a matching FBO with multisampling render buffers.\n const fbo2 = System.instance.context.createFramebuffer();\n if (null !== fbo2) {\n this._fboMs = fbo2;\n this.bind(false, true);\n i = 0;\n for (const colMsBuff of colorMsBuffers) {\n const attachmentEnum: GLenum = gl.COLOR_ATTACHMENT0 + i;\n this._colorMsBuffers.push(colMsBuff);\n this._colorMsFilters.push(msFilters[i]);\n const msBuffHandle = colMsBuff.getHandle();\n if (undefined !== msBuffHandle)\n gl.framebufferRenderbuffer(gl.FRAMEBUFFER, attachmentEnum, gl.RENDERBUFFER, msBuffHandle);\n i++;\n }\n\n if (depthBufferMs !== undefined) {\n this.depthBufferMs = depthBufferMs;\n const dbHandleMs = depthBufferMs.getHandle();\n if (undefined !== dbHandleMs) {\n gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.RENDERBUFFER, dbHandleMs);\n }\n }\n this.unbind();\n }\n }\n }\n\n public static create(colorTextures: TextureHandle[], depthBuffer?: DepthBuffer, colorMsBuffers?: RenderBufferMultiSample[], msFilters?: GL.MultiSampling.Filter[], depthBufferMs?: DepthBuffer): FrameBuffer | undefined {\n const fbo: WebGLFramebuffer | null = System.instance.context.createFramebuffer();\n if (null === fbo) {\n return undefined;\n }\n return new FrameBuffer(fbo, colorTextures, depthBuffer, colorMsBuffers, msFilters, depthBufferMs);\n }\n\n public [Symbol.dispose](): void {\n // NB: The FrameBuffer does not *own* the textures and depth buffer.\n if (!this.isDisposed) {\n System.instance.context.deleteFramebuffer(this._fbo!);\n this._fbo = undefined;\n if (undefined !== this._fboMs) {\n System.instance.context.deleteFramebuffer(this._fboMs);\n this._fboMs = undefined;\n }\n }\n }\n\n public bind(bindAttachments: boolean = false, bindMS: boolean = false): boolean {\n assert(undefined !== this._fbo);\n assert(!this.isBound);\n\n if (undefined === this._fbo)\n return false;\n\n const gl = System.instance.context;\n\n if (bindMS && undefined !== this._fboMs) {\n gl.bindFramebuffer(GL.FrameBuffer.TARGET, this._fboMs);\n this._bindState = FrameBufferBindState.BoundMultisampled;\n } else {\n gl.bindFramebuffer(GL.FrameBuffer.TARGET, this._fbo);\n this._bindState = FrameBufferBindState.Bound;\n }\n\n if (bindAttachments) {\n System.instance.setDrawBuffers(this._colorAttachments);\n this._bindState++;\n }\n return true;\n }\n\n public unbind() {\n assert(this.isBound);\n System.instance.context.bindFramebuffer(GL.FrameBuffer.TARGET, null);\n this._bindState = FrameBufferBindState.Unbound;\n }\n\n public suspend() {\n assert(this.isBound);\n this._bindState = FrameBufferBindState.Suspended;\n }\n\n public markTargetsDirty(): void {\n for (const msBuff of this._colorMsBuffers) {\n msBuff.markBufferDirty(true);\n }\n if (undefined !== this.depthBufferMs)\n (this.depthBufferMs as RenderBufferMultiSample).markBufferDirty(true);\n }\n\n /** blitDepth is true to blit the depth/stencil buffer. ndx is index of single attachment to blit.\n * All color attachments are blitted if ndx is undefined, none are blitted if ndx is -1.\n */\n public blitMsBuffersToTextures(blitDepth: boolean, ndx?: number) {\n if (!this._fboMs)\n return;\n System.instance.frameBufferStack.suspend();\n const gl2 = System.instance.context;\n const attachments = [];\n const max = (undefined === ndx ? this._colorMsBuffers.length : ndx + 1);\n for (let i = 0; i < max; ++i) {\n if (undefined !== ndx && i < ndx) {\n attachments.push(gl2.NONE); // skip this one, but first add a NONE for it in the attachment list\n continue;\n }\n if (this._colorMsBuffers[i].isDirty) {\n gl2.bindFramebuffer(gl2.READ_FRAMEBUFFER, this._fboMs);\n gl2.readBuffer(this._colorAttachments[i]);\n gl2.bindFramebuffer(gl2.DRAW_FRAMEBUFFER, this._fbo!);\n attachments.push(this._colorAttachments[i]);\n gl2.drawBuffers(attachments);\n attachments.pop();\n attachments.push(gl2.NONE);\n gl2.blitFramebuffer(0, 0, this._colorTextures[i].width, this._colorTextures[i].height,\n 0, 0, this._colorTextures[i].width, this._colorTextures[i].height,\n GL.BufferBit.Color, this._colorMsFilters[i]);\n this._colorMsBuffers[i].markBufferDirty(false);\n if (undefined !== ndx && i === ndx)\n break;\n }\n }\n if (blitDepth && undefined !== this.depthBuffer && undefined !== this.depthBufferMs && (this.depthBufferMs as RenderBufferMultiSample).isDirty) {\n const mask = GL.BufferBit.Depth; // (this.depthBuffer instanceof RenderBuffer ? GL.BufferBit.Depth : GL.BufferBit.Depth | GL.BufferBit.Stencil);\n gl2.bindFramebuffer(gl2.READ_FRAMEBUFFER, this._fboMs);\n gl2.bindFramebuffer(gl2.DRAW_FRAMEBUFFER, this._fbo!);\n gl2.blitFramebuffer(0, 0, this.depthBuffer.width, this.depthBuffer.height,\n 0, 0, this.depthBuffer.width, this.depthBuffer.height,\n mask, GL.MultiSampling.Filter.Nearest);\n (this.depthBufferMs as RenderBufferMultiSample).markBufferDirty(false);\n }\n gl2.bindFramebuffer(gl2.READ_FRAMEBUFFER, null);\n gl2.bindFramebuffer(gl2.DRAW_FRAMEBUFFER, null);\n System.instance.frameBufferStack.resume();\n }\n\n /** invDepth is true to invalidate depth buffer. invStencil is true to invalidate stencil buffer. ndx is index of single color attachment to invalidate.\n * All color attachments are invalidated if ndx is undefined, none are invalidated if ndx is -1.\n * Set withMultiSampling to true to invalidate the MS buffers.\n */\n public invalidate(invDepth: boolean, invStencil: boolean, withMultiSampling: boolean, indices?: number[]): void {\n const gl = System.instance.context;\n const attachments: number[] = invDepth ? (invStencil ? [gl.DEPTH_STENCIL_ATTACHMENT] : [System.instance.context.DEPTH_ATTACHMENT]) : (invDepth ? [gl.STENCIL_ATTACHMENT] : []);\n if (undefined !== indices) {\n if (indices.length > 0) {\n for (const i of indices)\n attachments.push(gl.COLOR_ATTACHMENT0 + i);\n }\n } else {\n attachments.concat(this._colorAttachments);\n }\n System.instance.frameBufferStack.execute(this, true, withMultiSampling, () => {\n System.instance.invalidateFrameBuffer(attachments);\n });\n }\n\n // Chiefly for debugging currently - assumes RGBA, unsigned byte, want all pixels.\n public get debugPixels(): Uint8Array | undefined {\n if (!this.isBound || 0 === this._colorTextures.length || !(this._colorTextures[0] instanceof TextureHandle))\n return undefined;\n\n const tex = this._colorTextures[0];\n if (GL.Texture.Format.Rgba !== tex.format || GL.Texture.DataType.UnsignedByte !== tex.dataType)\n return undefined;\n\n const buffer = new Uint8Array(tex.width * tex.height * 4);\n for (let i = 0; i < buffer.length; i += 4) {\n buffer[i] = 0xba;\n buffer[i + 1] = 0xad;\n buffer[i + 2] = 0xf0;\n buffer[i + 3] = 0x0d;\n }\n\n System.instance.context.readPixels(0, 0, tex.width, tex.height, tex.format, tex.dataType, buffer);\n return buffer;\n }\n}\n\ninterface Binding {\n fbo: FrameBuffer;\n withAttachments: boolean;\n withMultSampling: boolean;\n}\n\n/** @internal */\nexport class FrameBufferStack {\n // FrameBuffers within this array are not owned, as this is only a storage device holding references\n private readonly _stack: Binding[] = [];\n\n private get _top() { return !this.isEmpty ? this._stack[this._stack.length - 1] : undefined; }\n\n public push(fbo: FrameBuffer, withAttachments: boolean, withMultSampling: boolean): void {\n if (undefined !== this._top) {\n this._top.fbo.suspend();\n }\n\n assert(!fbo.isBound);\n fbo.bind(withAttachments, withMultSampling);\n assert(fbo.isBound);\n\n this._stack.push({ fbo, withAttachments, withMultSampling });\n }\n\n public pop(): void {\n assert(!this.isEmpty);\n if (undefined === this._top) {\n return;\n }\n\n const fbo = this._top.fbo;\n this._stack.pop();\n\n assert(fbo.isBound);\n fbo.unbind();\n assert(!fbo.isBound);\n\n if (this.isEmpty) {\n System.instance.context.bindFramebuffer(GL.FrameBuffer.TARGET, null);\n } else {\n const top = this._top;\n assert(top.fbo.isSuspended);\n top.fbo.bind(top.withAttachments, top.withMultSampling);\n assert(top.fbo.isBound);\n }\n }\n\n public get currentColorBuffer(): TextureHandle | undefined {\n assert(!this.isEmpty);\n return undefined !== this._top ? this._top.fbo.getColor(0) : undefined;\n }\n\n public get currentFbMultisampled(): boolean {\n return undefined !== this._top ? this._top.fbo.isBoundMultisampled : false;\n }\n\n public get isEmpty(): boolean { return 0 === this._stack.length; }\n\n public execute(fbo: FrameBuffer, withAttachments: boolean, withMultSampling: boolean, func: () => void) {\n this.push(fbo, withAttachments, withMultSampling);\n func();\n this.pop();\n }\n\n public markTargetsDirty(): void {\n const top = this._top;\n if (undefined !== top)\n top.fbo.markTargetsDirty();\n }\n\n public suspend(): void {\n if (undefined !== this._top) {\n this._top.fbo.suspend();\n }\n }\n\n public resume(): void {\n if (undefined === this._top) {\n return;\n }\n\n if (this.isEmpty) {\n System.instance.context.bindFramebuffer(GL.FrameBuffer.TARGET, null);\n } else {\n const top = this._top;\n top.fbo.bind(top.withAttachments, top.withMultSampling);\n assert(top.fbo.isBound);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"FrameBuffer.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/FrameBuffer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FrustumUniforms.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/FrustumUniforms.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module WebGL\n */\n\nimport { InverseMatrixState, Matrix4d, Point3d, Range3d, Transform, Vector3d } from \"@itwin/core-geometry\";\nimport { Frustum, Npc } from \"@itwin/core-common\";\nimport { UniformHandle } from \"./UniformHandle\";\nimport { IModelFrameLifecycle } from \"./IModelFrameLifecycle\";\nimport { Matrix4 } from \"./Matrix\";\nimport { desync, sync } from \"./Sync\";\n\n/** @internal */\nexport const enum FrustumUniformType { // eslint-disable-line no-restricted-syntax\n TwoDee,\n Orthographic,\n Perspective,\n}\n\n/** @internal */\nexport const enum Plane { // eslint-disable-line no-restricted-syntax\n kTop,\n kBottom,\n kLeft,\n kRight,\n}\n\nconst enum FrustumData { // eslint-disable-line no-restricted-syntax\n kNear,\n kFar,\n kType,\n}\n\n/** Represents a Target's frustum for use in glsl as a pair of uniforms.\n * Do not modify fields of exposed objects directly. e.g., do not directly manipulate the projection or view matrices - use the appropriate APIs.\n * @internal\n */\nexport class FrustumUniforms {\n // CPU state. Do not modify - use APIs.\n public readonly planFrustum = new Frustum();\n private _planFraction = 0;\n private readonly _nearPlaneCenter = new Point3d();\n public readonly viewMatrix = Transform.createIdentity();\n public readonly projectionMatrix = Matrix4d.createIdentity();\n private readonly _worldUpVector = Vector3d.unitZ();\n private readonly _viewUpVector = Vector3d.unitZ();\n\n // GPU state\n private readonly _planeData: Float32Array = new Float32Array(4);\n private readonly _frustumData: Float32Array = new Float32Array(3);\n private readonly _worldFrustumZRange: Float32Array = new Float32Array(2);\n public readonly projectionMatrix32 = new Matrix4();\n private readonly _logZData = new Float32Array(2);\n private readonly _viewUpVector32 = new Float32Array(3);\n\n // SyncTarget\n public syncKey = 0;\n\n // Scratch variables\n private readonly _scratch = {\n point3d: new Point3d(),\n vec3d: new Vector3d(),\n viewX: new Vector3d(),\n viewY: new Vector3d(),\n viewZ: new Vector3d(),\n range: new Range3d(),\n };\n\n public constructor() {\n }\n\n public bindProjectionMatrix(uniform: UniformHandle): void {\n if (!sync(this, uniform))\n uniform.setMatrix4(this.projectionMatrix32);\n }\n\n public bindUpVector(uniform: UniformHandle): void {\n if (!sync(this, uniform))\n uniform.setUniform3fv(this._viewUpVector32);\n }\n\n // uniform vec4 u_frustumPlanes; // { top, bottom, left, right }\n public get planes(): Float32Array { return this._planeData; }\n\n // uniform vec3 u_frustum; // { near, far, type }\n public get frustum(): Float32Array { return this._frustumData; }\n\n // uniform vec2 u_worldFrustumZRange // { min, max }\n public get worldFrustumZRange(): Float32Array { return this._worldFrustumZRange; }\n\n public get nearPlane(): number { return this._frustumData[FrustumData.kNear]; }\n public get farPlane(): number { return this._frustumData[FrustumData.kFar]; }\n public get type(): FrustumUniformType { return this.frustum[FrustumData.kType] as FrustumUniformType; }\n public get is2d(): boolean { return FrustumUniformType.TwoDee === this.type; }\n public get planFraction(): number { return this._planFraction; }\n\n // uniform vec2 u_logZ where x = 1/near and y = log(far/near)\n public get logZ(): Float32Array { return this._logZData; }\n\n public changeFrustum(newFrustum: Frustum, newFraction: number, is3d: boolean): void {\n if (newFraction === this._planFraction && is3d !== this.is2d && newFrustum.equals(this.planFrustum))\n return;\n\n desync(this);\n\n newFrustum.clone(this.planFrustum);\n\n const range = newFrustum.toRange(this._scratch.range);\n this._worldFrustumZRange[0] = range.low.z;\n this._worldFrustumZRange[1] = range.high.z;\n\n const farLowerLeft = newFrustum.getCorner(Npc.LeftBottomRear);\n const farLowerRight = newFrustum.getCorner(Npc.RightBottomRear);\n const farUpperLeft = newFrustum.getCorner(Npc.LeftTopRear);\n const farUpperRight = newFrustum.getCorner(Npc.RightTopRear);\n const nearLowerLeft = newFrustum.getCorner(Npc.LeftBottomFront);\n const nearLowerRight = newFrustum.getCorner(Npc.RightBottomFront);\n const nearUpperLeft = newFrustum.getCorner(Npc.LeftTopFront);\n const nearUpperRight = newFrustum.getCorner(Npc.RightTopFront);\n\n const nearCenter = nearLowerLeft.interpolate(0.5, nearUpperRight, this._scratch.point3d);\n\n const viewX = normalizedDifference(nearLowerRight, nearLowerLeft, this._scratch.viewX);\n const viewY = normalizedDifference(nearUpperLeft, nearLowerLeft, this._scratch.viewY);\n const viewZ = viewX.crossProduct(viewY, this._scratch.viewZ).normalize()!;\n\n this._planFraction = newFraction;\n\n if (!is3d || newFraction > 0.999) { // ortho or 2d\n const halfWidth = Vector3d.createStartEnd(farLowerRight, farLowerLeft, this._scratch.vec3d).magnitude() * 0.5;\n const halfHeight = Vector3d.createStartEnd(farLowerRight, farUpperRight).magnitude() * 0.5;\n const depth = Vector3d.createStartEnd(farLowerLeft, nearLowerLeft, this._scratch.vec3d).magnitude();\n\n lookIn(nearCenter, viewX, viewY, viewZ, this.viewMatrix);\n ortho(-halfWidth, halfWidth, -halfHeight, halfHeight, 0, depth, this.projectionMatrix);\n\n this._nearPlaneCenter.setFrom(nearLowerLeft);\n this._nearPlaneCenter.interpolate(0.5, nearUpperRight, this._nearPlaneCenter);\n\n this.setPlanes(halfHeight, -halfHeight, -halfWidth, halfWidth);\n this.setFrustum(0, depth, is3d ? FrustumUniformType.Orthographic : FrustumUniformType.TwoDee);\n } else { // perspective\n const scale = 1.0 / (1.0 - newFraction);\n const zVec = Vector3d.createStartEnd(farLowerLeft, nearLowerLeft, this._scratch.vec3d);\n const cameraPosition = fromSumOf(farLowerLeft, zVec, scale, this._scratch.point3d);\n\n const frustumLeft = dotDifference(farLowerLeft, cameraPosition, viewX) * newFraction;\n const frustumRight = dotDifference(farLowerRight, cameraPosition, viewX) * newFraction;\n const frustumBottom = dotDifference(farLowerLeft, cameraPosition, viewY) * newFraction;\n const frustumTop = dotDifference(farUpperLeft, cameraPosition, viewY) * newFraction;\n const frustumFront = -dotDifference(nearLowerLeft, cameraPosition, viewZ);\n const frustumBack = -dotDifference(farLowerLeft, cameraPosition, viewZ);\n\n lookIn(cameraPosition, viewX, viewY, viewZ, this.viewMatrix);\n frustum(frustumLeft, frustumRight, frustumBottom, frustumTop, frustumFront, frustumBack, this.projectionMatrix);\n\n IModelFrameLifecycle.onChangeCameraView.raiseEvent({\n cameraPosition,\n viewX,\n viewY,\n viewZ,\n });\n IModelFrameLifecycle.onChangeCameraFrustum.raiseEvent({\n type: FrustumUniformType.Perspective,\n left: frustumLeft,\n right: frustumRight,\n bottom: frustumBottom,\n top: frustumTop,\n front: frustumFront,\n back: frustumBack,\n });\n\n this._nearPlaneCenter.setFrom(nearLowerLeft);\n this._nearPlaneCenter.interpolate(0.5, nearUpperRight, this._nearPlaneCenter);\n\n this.setPlanes(frustumTop, frustumBottom, frustumLeft, frustumRight);\n this.setFrustum(frustumFront, frustumBack, FrustumUniformType.Perspective);\n }\n\n this.viewMatrix.matrix.inverseState = InverseMatrixState.unknown;\n\n this.viewMatrix.matrix.multiplyVector(this._worldUpVector, this._viewUpVector);\n this._viewUpVector.normalizeInPlace();\n this._viewUpVector32[0] = this._viewUpVector.x;\n this._viewUpVector32[1] = this._viewUpVector.y;\n this._viewUpVector32[2] = this._viewUpVector.z;\n\n this.projectionMatrix32.initFromMatrix4d(this.projectionMatrix);\n }\n\n public changeProjectionMatrix(newMatrix: Matrix4d): void {\n desync(this);\n this.projectionMatrix.setFrom(newMatrix);\n this.projectionMatrix32.initFromMatrix4d(this.projectionMatrix);\n }\n\n protected setPlanes(top: number, bottom: number, left: number, right: number): void {\n this._planeData[Plane.kTop] = top;\n this._planeData[Plane.kBottom] = bottom;\n this._planeData[Plane.kLeft] = left;\n this._planeData[Plane.kRight] = right;\n }\n\n protected setFrustum(nearPlane: number, farPlane: number, type: FrustumUniformType): void {\n this._frustumData[FrustumData.kNear] = nearPlane;\n this._frustumData[FrustumData.kFar] = farPlane;\n this._frustumData[FrustumData.kType] = type as number;\n\n // If nearPlane is zero, we don't have a camera (or got very unlucky); in that case shader will compute linear depth.\n this._logZData[0] = 0 !== nearPlane ? 1 / nearPlane : 0;\n this._logZData[1] = 0 !== nearPlane ? Math.log(farPlane / nearPlane) : farPlane;\n }\n}\n\nfunction normalizedDifference(p0: Point3d, p1: Point3d, out?: Vector3d): Vector3d {\n const result = undefined !== out ? out : new Vector3d();\n result.x = p0.x - p1.x;\n result.y = p0.y - p1.y;\n result.z = p0.z - p1.z;\n result.normalizeInPlace();\n return result;\n}\n\n/** @internal */\nexport function fromSumOf(p: Point3d, v: Vector3d, scale: number, out?: Point3d) {\n const result = undefined !== out ? out : new Point3d();\n result.x = p.x + v.x * scale;\n result.y = p.y + v.y * scale;\n result.z = p.z + v.z * scale;\n return result;\n}\n\nfunction dotDifference(pt: Point3d, origin: Point3d, vec: Vector3d): number {\n return (pt.x - origin.x) * vec.x + (pt.y - origin.y) * vec.y + (pt.z - origin.z) * vec.z;\n}\n\nfunction lookIn(eye: Point3d, viewX: Vector3d, viewY: Vector3d, viewZ: Vector3d, result: Transform) {\n const rot = result.matrix.coffs;\n rot[0] = viewX.x;\n rot[1] = viewX.y;\n rot[2] = viewX.z;\n rot[3] = viewY.x;\n rot[4] = viewY.y;\n rot[5] = viewY.z;\n rot[6] = viewZ.x;\n rot[7] = viewZ.y;\n rot[8] = viewZ.z;\n\n result.origin.x = -viewX.dotProduct(eye);\n result.origin.y = -viewY.dotProduct(eye);\n result.origin.z = -viewZ.dotProduct(eye);\n}\n\nfunction ortho(left: number, right: number, bottom: number, top: number, near: number, far: number, result: Matrix4d) {\n Matrix4d.createRowValues(\n 2.0 / (right - left), 0.0, 0.0, -(right + left) / (right - left),\n 0.0, 2.0 / (top - bottom), 0.0, -(top + bottom) / (top - bottom),\n 0.0, 0.0, -2.0 / (far - near), -(far + near) / (far - near),\n 0.0, 0.0, 0.0, 1.0,\n result);\n}\n\nfunction frustum(left: number, right: number, bottom: number, top: number, near: number, far: number, result: Matrix4d) {\n Matrix4d.createRowValues(\n (2.0 * near) / (right - left), 0.0, (right + left) / (right - left), 0.0,\n 0.0, (2.0 * near) / (top - bottom), (top + bottom) / (top - bottom), 0.0,\n 0.0, 0.0, -(far + near) / (far - near), -(2.0 * far * near) / (far - near),\n 0.0, 0.0, -1.0, 0.0,\n result);\n}\n"]}
1
+ {"version":3,"file":"FrustumUniforms.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/FrustumUniforms.ts"],"names":[],"mappings":"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"}