@itwin/core-frontend 5.1.1 → 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 (884) hide show
  1. package/CHANGELOG.md +13 -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.map +1 -1
  21. package/lib/cjs/ElementLocateManager.js.map +1 -1
  22. package/lib/cjs/EmphasizeElements.js.map +1 -1
  23. package/lib/cjs/EntityState.js.map +1 -1
  24. package/lib/cjs/EnvironmentDecorations.js.map +1 -1
  25. package/lib/cjs/FeatureOverrideProvider.js.map +1 -1
  26. package/lib/cjs/FlashSettings.js.map +1 -1
  27. package/lib/cjs/FrontendHubAccess.js.map +1 -1
  28. package/lib/cjs/Frustum2d.js.map +1 -1
  29. package/lib/cjs/FrustumAnimator.js.map +1 -1
  30. package/lib/cjs/FuzzySearch.js.map +1 -1
  31. package/lib/cjs/GeoServices.js.map +1 -1
  32. package/lib/cjs/GlobeAnimator.js.map +1 -1
  33. package/lib/cjs/GraphicalEditingScope.js.map +1 -1
  34. package/lib/cjs/HitDetail.js.map +1 -1
  35. package/lib/cjs/IModelApp.js.map +1 -1
  36. package/lib/cjs/IModelConnection.js.map +1 -1
  37. package/lib/cjs/IModelRoutingContext.js.map +1 -1
  38. package/lib/cjs/IModeljs-css.js.map +1 -1
  39. package/lib/cjs/IpcApp.js.map +1 -1
  40. package/lib/cjs/LinePlaneIntersect.js.map +1 -1
  41. package/lib/cjs/LocalhostIpcApp.js.map +1 -1
  42. package/lib/cjs/MarginPercent.js.map +1 -1
  43. package/lib/cjs/Marker.js.map +1 -1
  44. package/lib/cjs/ModelSelectorState.js.map +1 -1
  45. package/lib/cjs/ModelState.js.map +1 -1
  46. package/lib/cjs/NativeApp.js.map +1 -1
  47. package/lib/cjs/NativeAppLogger.js.map +1 -1
  48. package/lib/cjs/NoRenderApp.js.map +1 -1
  49. package/lib/cjs/NotificationManager.js.map +1 -1
  50. package/lib/cjs/PerModelCategoryVisibility.js.map +1 -1
  51. package/lib/cjs/PlanarClipMaskState.js.map +1 -1
  52. package/lib/cjs/RealityDataSource.js.map +1 -1
  53. package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.js.map +1 -1
  54. package/lib/cjs/RealityDataSourceContextShareImpl.js.map +1 -1
  55. package/lib/cjs/RealityDataSourceTilesetUrlImpl.js.map +1 -1
  56. package/lib/cjs/SelectionSet.js.map +1 -1
  57. package/lib/cjs/SheetViewState.js.map +1 -1
  58. package/lib/cjs/SpatialClassifiersState.js.map +1 -1
  59. package/lib/cjs/SpatialViewState.js.map +1 -1
  60. package/lib/cjs/Sprites.js.map +1 -1
  61. package/lib/cjs/StandardView.js.map +1 -1
  62. package/lib/cjs/SubCategoriesCache.js.map +1 -1
  63. package/lib/cjs/TentativePoint.js.map +1 -1
  64. package/lib/cjs/Tiles.js.map +1 -1
  65. package/lib/cjs/TxnEntityChanges.js.map +1 -1
  66. package/lib/cjs/UserPreferences.js.map +1 -1
  67. package/lib/cjs/ViewAnimation.js.map +1 -1
  68. package/lib/cjs/ViewContext.js.map +1 -1
  69. package/lib/cjs/ViewCreator2d.js.map +1 -1
  70. package/lib/cjs/ViewCreator3d.js.map +1 -1
  71. package/lib/cjs/ViewGlobalLocation.js.map +1 -1
  72. package/lib/cjs/ViewManager.js.map +1 -1
  73. package/lib/cjs/ViewPose.js.map +1 -1
  74. package/lib/cjs/ViewState.js.map +1 -1
  75. package/lib/cjs/ViewStatus.js.map +1 -1
  76. package/lib/cjs/ViewingSpace.js.map +1 -1
  77. package/lib/cjs/Viewport.js.map +1 -1
  78. package/lib/cjs/ViewportSync.js.map +1 -1
  79. package/lib/cjs/common/FrontendLoggerCategory.js.map +1 -1
  80. package/lib/cjs/common/ImageUtil.js.map +1 -1
  81. package/lib/cjs/common/ViewRect.js.map +1 -1
  82. package/lib/cjs/common/WorkerProxy.js.map +1 -1
  83. package/lib/cjs/common/gltf/GltfModel.js.map +1 -1
  84. package/lib/cjs/common/gltf/GltfParser.js.map +1 -1
  85. package/lib/cjs/common/gltf/GltfSchema.js.map +1 -1
  86. package/lib/cjs/common/imdl/CompactEdges.js.map +1 -1
  87. package/lib/cjs/common/imdl/ImdlModel.js.map +1 -1
  88. package/lib/cjs/common/imdl/ImdlSchema.js.map +1 -1
  89. package/lib/cjs/common/imdl/ParseImdlDocument.js.map +1 -1
  90. package/lib/cjs/common/internal/Symbols.js.map +1 -1
  91. package/lib/cjs/common/internal/render/AnimationNodeId.js.map +1 -1
  92. package/lib/cjs/common/internal/render/AuxChannelTable.js.map +1 -1
  93. package/lib/cjs/common/internal/render/ColorMap.js.map +1 -1
  94. package/lib/cjs/common/internal/render/DisplayParams.js.map +1 -1
  95. package/lib/cjs/common/internal/render/EdgeParams.js.map +1 -1
  96. package/lib/cjs/common/internal/render/GeometryAccumulator.js.map +1 -1
  97. package/lib/cjs/common/internal/render/GeometryList.js.map +1 -1
  98. package/lib/cjs/common/internal/render/GeometryPrimitives.js.map +1 -1
  99. package/lib/cjs/common/internal/render/GraphicDescriptionBuilderImpl.js.map +1 -1
  100. package/lib/cjs/common/internal/render/GraphicDescriptionContextImpl.js.map +1 -1
  101. package/lib/cjs/common/internal/render/InstancedGraphicPropsBuilder.js.map +1 -1
  102. package/lib/cjs/common/internal/render/LineCode.js.map +1 -1
  103. package/lib/cjs/common/internal/render/MeshBuilder.js.map +1 -1
  104. package/lib/cjs/common/internal/render/MeshBuilderMap.js.map +1 -1
  105. package/lib/cjs/common/internal/render/MeshParams.js.map +1 -1
  106. package/lib/cjs/common/internal/render/MeshPrimitive.js.map +1 -1
  107. package/lib/cjs/common/internal/render/MeshPrimitives.js.map +1 -1
  108. package/lib/cjs/common/internal/render/OvrFlags.js.map +1 -1
  109. package/lib/cjs/common/internal/render/PointCloudPrimitive.js.map +1 -1
  110. package/lib/cjs/common/internal/render/PointStringParams.js.map +1 -1
  111. package/lib/cjs/common/internal/render/Polyface.js.map +1 -1
  112. package/lib/cjs/common/internal/render/PolylineParams.js.map +1 -1
  113. package/lib/cjs/common/internal/render/Primitives.js.map +1 -1
  114. package/lib/cjs/common/internal/render/Strokes.js.map +1 -1
  115. package/lib/cjs/common/internal/render/SurfaceParams.js.map +1 -1
  116. package/lib/cjs/common/internal/render/VertexIndices.js.map +1 -1
  117. package/lib/cjs/common/internal/render/VertexKey.js.map +1 -1
  118. package/lib/cjs/common/internal/render/VertexTable.js.map +1 -1
  119. package/lib/cjs/common/internal/render/VertexTableBuilder.js.map +1 -1
  120. package/lib/cjs/common/internal/render/VertexTableSplitter.js.map +1 -1
  121. package/lib/cjs/common/render/BatchOptions.js.map +1 -1
  122. package/lib/cjs/common/render/GraphicAssembler.js.map +1 -1
  123. package/lib/cjs/common/render/GraphicDescriptionBuilder.js.map +1 -1
  124. package/lib/cjs/common/render/GraphicDescriptionContext.js.map +1 -1
  125. package/lib/cjs/common/render/GraphicPrimitive.js.map +1 -1
  126. package/lib/cjs/common/render/GraphicType.js.map +1 -1
  127. package/lib/cjs/common/render/InstancedGraphicParams.js.map +1 -1
  128. package/lib/cjs/common/render/MaterialParams.js.map +1 -1
  129. package/lib/cjs/common/render/RenderInstancesParams.js.map +1 -1
  130. package/lib/cjs/common/render/TextureParams.js.map +1 -1
  131. package/lib/cjs/common.js.map +1 -1
  132. package/lib/cjs/core-frontend.js.map +1 -1
  133. package/lib/cjs/extension/Extension.js.map +1 -1
  134. package/lib/cjs/extension/ExtensionAdmin.js.map +1 -1
  135. package/lib/cjs/extension/ExtensionHost.js.map +1 -1
  136. package/lib/cjs/extension/ExtensionRuntime.js.map +1 -1
  137. package/lib/cjs/extension/providers/ExtensionLoadScript.js.map +1 -1
  138. package/lib/cjs/extension/providers/LocalExtensionProvider.js.map +1 -1
  139. package/lib/cjs/extension/providers/RemoteExtensionProvider.js.map +1 -1
  140. package/lib/cjs/internal/GoogleMapsDecorator.js.map +1 -1
  141. package/lib/cjs/internal/RealityDataSourceGoogle3dTilesImpl.js.map +1 -1
  142. package/lib/cjs/internal/ScriptUtils.js.map +1 -1
  143. package/lib/cjs/internal/cross-package.js.map +1 -1
  144. package/lib/cjs/internal/render/AnimationBranchState.js.map +1 -1
  145. package/lib/cjs/internal/render/FrameStatsCollector.js.map +1 -1
  146. package/lib/cjs/internal/render/GraphicBranchFrustum.js.map +1 -1
  147. package/lib/cjs/internal/render/GraphicTemplateImpl.js.map +1 -1
  148. package/lib/cjs/internal/render/MeshMapLayerGraphicParams.js.map +1 -1
  149. package/lib/cjs/internal/render/MockRender.js.map +1 -1
  150. package/lib/cjs/internal/render/PrimitiveBuilder.js.map +1 -1
  151. package/lib/cjs/internal/render/QueryVisibileFeatures.js.map +1 -1
  152. package/lib/cjs/internal/render/RenderAreaPattern.js.map +1 -1
  153. package/lib/cjs/internal/render/RenderGeometry.js.map +1 -1
  154. package/lib/cjs/internal/render/RenderInstancesParamsImpl.js.map +1 -1
  155. package/lib/cjs/internal/render/RenderMaterialSource.js.map +1 -1
  156. package/lib/cjs/internal/render/RenderPlan.js.map +1 -1
  157. package/lib/cjs/internal/render/RenderPlanarClassifier.js.map +1 -1
  158. package/lib/cjs/internal/render/RenderSkyBoxParams.js.map +1 -1
  159. package/lib/cjs/internal/render/RenderSystemDebugControl.js.map +1 -1
  160. package/lib/cjs/internal/render/RenderTargetDebugControl.js.map +1 -1
  161. package/lib/cjs/internal/render/RenderTerrain.js.map +1 -1
  162. package/lib/cjs/internal/render/RenderTextureDrape.js.map +1 -1
  163. package/lib/cjs/internal/render/SceneVolumeClassifier.js.map +1 -1
  164. package/lib/cjs/internal/render/UpsampleRealityMeshParams.js.map +1 -1
  165. package/lib/cjs/internal/render/webgl/AtmosphereUniforms.js.map +1 -1
  166. package/lib/cjs/internal/render/webgl/AttributeBuffers.js.map +1 -1
  167. package/lib/cjs/internal/render/webgl/AttributeMap.js.map +1 -1
  168. package/lib/cjs/internal/render/webgl/BackgroundMapDrape.js +1 -1
  169. package/lib/cjs/internal/render/webgl/BackgroundMapDrape.js.map +1 -1
  170. package/lib/cjs/internal/render/webgl/BatchState.js.map +1 -1
  171. package/lib/cjs/internal/render/webgl/BatchUniforms.js.map +1 -1
  172. package/lib/cjs/internal/render/webgl/BranchStack.js.map +1 -1
  173. package/lib/cjs/internal/render/webgl/BranchState.js.map +1 -1
  174. package/lib/cjs/internal/render/webgl/BranchUniforms.js.map +1 -1
  175. package/lib/cjs/internal/render/webgl/CachedGeometry.js.map +1 -1
  176. package/lib/cjs/internal/render/webgl/ClipStack.js.map +1 -1
  177. package/lib/cjs/internal/render/webgl/ClipVolume.js.map +1 -1
  178. package/lib/cjs/internal/render/webgl/ClippingProgram.js.map +1 -1
  179. package/lib/cjs/internal/render/webgl/ColorInfo.js.map +1 -1
  180. package/lib/cjs/internal/render/webgl/ContourUniforms.js.map +1 -1
  181. package/lib/cjs/internal/render/webgl/Contours.js.map +1 -1
  182. package/lib/cjs/internal/render/webgl/Diagnostics.js.map +1 -1
  183. package/lib/cjs/internal/render/webgl/Disposable.js.map +1 -1
  184. package/lib/cjs/internal/render/webgl/DrawCommand.js.map +1 -1
  185. package/lib/cjs/internal/render/webgl/EDL.js.map +1 -1
  186. package/lib/cjs/internal/render/webgl/EdgeGeometry.js.map +1 -1
  187. package/lib/cjs/internal/render/webgl/EdgeSettings.js.map +1 -1
  188. package/lib/cjs/internal/render/webgl/FeatureOverrides.js.map +1 -1
  189. package/lib/cjs/internal/render/webgl/FloatRGBA.js.map +1 -1
  190. package/lib/cjs/internal/render/webgl/FrameBuffer.js.map +1 -1
  191. package/lib/cjs/internal/render/webgl/FrustumUniforms.js.map +1 -1
  192. package/lib/cjs/internal/render/webgl/GL.js.map +1 -1
  193. package/lib/cjs/internal/render/webgl/GLTimer.js.map +1 -1
  194. package/lib/cjs/internal/render/webgl/Graphic.js.map +1 -1
  195. package/lib/cjs/internal/render/webgl/HiliteUniforms.js.map +1 -1
  196. package/lib/cjs/internal/render/webgl/IModelFrameLifecycle.js.map +1 -1
  197. package/lib/cjs/internal/render/webgl/IndexedEdgeGeometry.js.map +1 -1
  198. package/lib/cjs/internal/render/webgl/InstancedGeometry.js.map +1 -1
  199. package/lib/cjs/internal/render/webgl/Layer.js.map +1 -1
  200. package/lib/cjs/internal/render/webgl/LayerCommands.js.map +1 -1
  201. package/lib/cjs/internal/render/webgl/LightingUniforms.js.map +1 -1
  202. package/lib/cjs/internal/render/webgl/LineCode.js.map +1 -1
  203. package/lib/cjs/internal/render/webgl/MapLayerParams.js.map +1 -1
  204. package/lib/cjs/internal/render/webgl/Material.js.map +1 -1
  205. package/lib/cjs/internal/render/webgl/Matrix.js.map +1 -1
  206. package/lib/cjs/internal/render/webgl/Mesh.js.map +1 -1
  207. package/lib/cjs/internal/render/webgl/MeshData.js.map +1 -1
  208. package/lib/cjs/internal/render/webgl/MeshGeometry.js.map +1 -1
  209. package/lib/cjs/internal/render/webgl/PerformanceMetrics.js.map +1 -1
  210. package/lib/cjs/internal/render/webgl/PlanarClassifier.js +1 -1
  211. package/lib/cjs/internal/render/webgl/PlanarClassifier.js.map +1 -1
  212. package/lib/cjs/internal/render/webgl/PlanarGrid.js.map +1 -1
  213. package/lib/cjs/internal/render/webgl/PlanarTextureProjection.js.map +1 -1
  214. package/lib/cjs/internal/render/webgl/PointCloud.js.map +1 -1
  215. package/lib/cjs/internal/render/webgl/PointString.js.map +1 -1
  216. package/lib/cjs/internal/render/webgl/Polyline.js.map +1 -1
  217. package/lib/cjs/internal/render/webgl/Primitive.js.map +1 -1
  218. package/lib/cjs/internal/render/webgl/RealityMesh.js.map +1 -1
  219. package/lib/cjs/internal/render/webgl/RealityModelUniforms.js.map +1 -1
  220. package/lib/cjs/internal/render/webgl/RenderBuffer.js.map +1 -1
  221. package/lib/cjs/internal/render/webgl/RenderCommands.js.map +1 -1
  222. package/lib/cjs/internal/render/webgl/RenderFlags.js.map +1 -1
  223. package/lib/cjs/internal/render/webgl/RenderState.js.map +1 -1
  224. package/lib/cjs/internal/render/webgl/SceneCompositor.js.map +1 -1
  225. package/lib/cjs/internal/render/webgl/ScratchDrawParams.js.map +1 -1
  226. package/lib/cjs/internal/render/webgl/ScreenSpaceEffect.js.map +1 -1
  227. package/lib/cjs/internal/render/webgl/ShaderBuilder.js.map +1 -1
  228. package/lib/cjs/internal/render/webgl/ShaderProgram.js.map +1 -1
  229. package/lib/cjs/internal/render/webgl/ShadowUniforms.js.map +1 -1
  230. package/lib/cjs/internal/render/webgl/SolarShadowMap.js.map +1 -1
  231. package/lib/cjs/internal/render/webgl/StyleUniforms.js.map +1 -1
  232. package/lib/cjs/internal/render/webgl/SurfaceGeometry.js.map +1 -1
  233. package/lib/cjs/internal/render/webgl/Sync.js.map +1 -1
  234. package/lib/cjs/internal/render/webgl/System.js.map +1 -1
  235. package/lib/cjs/internal/render/webgl/Target.js.map +1 -1
  236. package/lib/cjs/internal/render/webgl/TargetGraphics.js.map +1 -1
  237. package/lib/cjs/internal/render/webgl/TargetUniforms.js.map +1 -1
  238. package/lib/cjs/internal/render/webgl/Technique.js.map +1 -1
  239. package/lib/cjs/internal/render/webgl/TechniqueFlags.js.map +1 -1
  240. package/lib/cjs/internal/render/webgl/TechniqueId.js.map +1 -1
  241. package/lib/cjs/internal/render/webgl/Texture.js.map +1 -1
  242. package/lib/cjs/internal/render/webgl/TextureDrape.js.map +1 -1
  243. package/lib/cjs/internal/render/webgl/ThematicSensors.js.map +1 -1
  244. package/lib/cjs/internal/render/webgl/ThematicUniforms.js.map +1 -1
  245. package/lib/cjs/internal/render/webgl/UniformHandle.js.map +1 -1
  246. package/lib/cjs/internal/render/webgl/VertexLUT.js.map +1 -1
  247. package/lib/cjs/internal/render/webgl/ViewRectUniforms.js.map +1 -1
  248. package/lib/cjs/internal/render/webgl/VisibleTileFeatures.js.map +1 -1
  249. package/lib/cjs/internal/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
  250. package/lib/cjs/internal/render/webgl/glsl/Animation.js.map +1 -1
  251. package/lib/cjs/internal/render/webgl/glsl/Atmosphere.js.map +1 -1
  252. package/lib/cjs/internal/render/webgl/glsl/Blur.js.map +1 -1
  253. package/lib/cjs/internal/render/webgl/glsl/ClearPickAndColor.js.map +1 -1
  254. package/lib/cjs/internal/render/webgl/glsl/ClearTranslucent.js.map +1 -1
  255. package/lib/cjs/internal/render/webgl/glsl/Clipping.js.map +1 -1
  256. package/lib/cjs/internal/render/webgl/glsl/Color.js.map +1 -1
  257. package/lib/cjs/internal/render/webgl/glsl/Combine3Textures.js.map +1 -1
  258. package/lib/cjs/internal/render/webgl/glsl/CombineTextures.js.map +1 -1
  259. package/lib/cjs/internal/render/webgl/glsl/Common.js.map +1 -1
  260. package/lib/cjs/internal/render/webgl/glsl/Composite.js.map +1 -1
  261. package/lib/cjs/internal/render/webgl/glsl/Contours.js.map +1 -1
  262. package/lib/cjs/internal/render/webgl/glsl/CopyColor.js.map +1 -1
  263. package/lib/cjs/internal/render/webgl/glsl/CopyPickBuffers.js.map +1 -1
  264. package/lib/cjs/internal/render/webgl/glsl/CopyStencil.js.map +1 -1
  265. package/lib/cjs/internal/render/webgl/glsl/Decode.js.map +1 -1
  266. package/lib/cjs/internal/render/webgl/glsl/EDL.js.map +1 -1
  267. package/lib/cjs/internal/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
  268. package/lib/cjs/internal/render/webgl/glsl/Edge.js.map +1 -1
  269. package/lib/cjs/internal/render/webgl/glsl/FeatureSymbology.js.map +1 -1
  270. package/lib/cjs/internal/render/webgl/glsl/Fragment.js.map +1 -1
  271. package/lib/cjs/internal/render/webgl/glsl/Instancing.js.map +1 -1
  272. package/lib/cjs/internal/render/webgl/glsl/Lighting.js.map +1 -1
  273. package/lib/cjs/internal/render/webgl/glsl/LogarithmicDepthBuffer.js.map +1 -1
  274. package/lib/cjs/internal/render/webgl/glsl/LookupTable.js.map +1 -1
  275. package/lib/cjs/internal/render/webgl/glsl/MaplayerDraping.js.map +1 -1
  276. package/lib/cjs/internal/render/webgl/glsl/Monochrome.js.map +1 -1
  277. package/lib/cjs/internal/render/webgl/glsl/PlanarClassification.js.map +1 -1
  278. package/lib/cjs/internal/render/webgl/glsl/PlanarGrid.js.map +1 -1
  279. package/lib/cjs/internal/render/webgl/glsl/PointCloud.js.map +1 -1
  280. package/lib/cjs/internal/render/webgl/glsl/PointString.js.map +1 -1
  281. package/lib/cjs/internal/render/webgl/glsl/Polyline.js.map +1 -1
  282. package/lib/cjs/internal/render/webgl/glsl/RealityMesh.js.map +1 -1
  283. package/lib/cjs/internal/render/webgl/glsl/RenderPass.js.map +1 -1
  284. package/lib/cjs/internal/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
  285. package/lib/cjs/internal/render/webgl/glsl/SkyBox.js.map +1 -1
  286. package/lib/cjs/internal/render/webgl/glsl/SkySphere.js.map +1 -1
  287. package/lib/cjs/internal/render/webgl/glsl/SolarShadowMapping.js.map +1 -1
  288. package/lib/cjs/internal/render/webgl/glsl/Surface.js.map +1 -1
  289. package/lib/cjs/internal/render/webgl/glsl/Thematic.js.map +1 -1
  290. package/lib/cjs/internal/render/webgl/glsl/Translucency.js.map +1 -1
  291. package/lib/cjs/internal/render/webgl/glsl/Vertex.js.map +1 -1
  292. package/lib/cjs/internal/render/webgl/glsl/Viewport.js.map +1 -1
  293. package/lib/cjs/internal/render/webgl/glsl/ViewportQuad.js.map +1 -1
  294. package/lib/cjs/internal/render/webgl/glsl/Wiremesh.js.map +1 -1
  295. package/lib/cjs/internal/tile/B3dmReader.js.map +1 -1
  296. package/lib/cjs/internal/tile/BatchedTileIdMap.js.map +1 -1
  297. package/lib/cjs/internal/tile/CesiumAssetProvider.js.map +1 -1
  298. package/lib/cjs/internal/tile/ClassifierTileTree.js.map +1 -1
  299. package/lib/cjs/internal/tile/ContextShareProvider.js.map +1 -1
  300. package/lib/cjs/internal/tile/DynamicIModelTile.js +1 -0
  301. package/lib/cjs/internal/tile/DynamicIModelTile.js.map +1 -1
  302. package/lib/cjs/internal/tile/FetchCloudStorage.js.map +1 -1
  303. package/lib/cjs/internal/tile/GraphicsCollector.js.map +1 -1
  304. package/lib/cjs/internal/tile/I3dmReader.js.map +1 -1
  305. package/lib/cjs/internal/tile/IModelTile.js.map +1 -1
  306. package/lib/cjs/internal/tile/IModelTileRequestChannels.js.map +1 -1
  307. package/lib/cjs/internal/tile/IModelTileTree.js.map +1 -1
  308. package/lib/cjs/internal/tile/ImdlDecoder.js.map +1 -1
  309. package/lib/cjs/internal/tile/ImdlGraphicsCreator.js.map +1 -1
  310. package/lib/cjs/internal/tile/ImdlParser.js.map +1 -1
  311. package/lib/cjs/internal/tile/LRUTileList.js.map +1 -1
  312. package/lib/cjs/internal/tile/LayerTileTreeHandler.js.map +1 -1
  313. package/lib/cjs/internal/tile/LayerTileTreeReferenceHandler.js.map +1 -1
  314. package/lib/cjs/internal/tile/MeshoptCompression.js.map +1 -1
  315. package/lib/cjs/internal/tile/OPCFormatInterpreter.js.map +1 -1
  316. package/lib/cjs/internal/tile/OrbitGtTileTree.js.map +1 -1
  317. package/lib/cjs/internal/tile/PntsReader.js.map +1 -1
  318. package/lib/cjs/internal/tile/PrimaryTileTree.js.map +1 -1
  319. package/lib/cjs/internal/tile/RealityModelTileTree.js.map +1 -1
  320. package/lib/cjs/internal/tile/RealityTileDrawArgs.js.map +1 -1
  321. package/lib/cjs/internal/tile/RealityTileLoader.js.map +1 -1
  322. package/lib/cjs/internal/tile/ThreeDTileFormatInterpreter.js.map +1 -1
  323. package/lib/cjs/internal/tile/TileUserSet.js.map +1 -1
  324. package/lib/cjs/internal/tile/ViewFlagOverrides.js.map +1 -1
  325. package/lib/cjs/internal/tile/map/ArcGISTileMap.js.map +1 -1
  326. package/lib/cjs/internal/tile/map/ArcGisUtilities.js.map +1 -1
  327. package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
  328. package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  329. package/lib/cjs/internal/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js.map +1 -1
  330. package/lib/cjs/internal/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
  331. package/lib/cjs/internal/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  332. package/lib/cjs/internal/tile/map/ImageryProviders/CoordinatesUtils.js.map +1 -1
  333. package/lib/cjs/internal/tile/map/ImageryProviders/FeatureAttributeDrivenSymbology.js.map +1 -1
  334. package/lib/cjs/internal/tile/map/ImageryProviders/FeatureGeometryRenderer.js.map +1 -1
  335. package/lib/cjs/internal/tile/map/ImageryProviders/FeatureGraphicsRenderer.js.map +1 -1
  336. package/lib/cjs/internal/tile/map/ImageryProviders/FeatureSymbologyRenderer.js.map +1 -1
  337. package/lib/cjs/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  338. package/lib/cjs/internal/tile/map/ImageryProviders/TileUrlImageryProvider.js.map +1 -1
  339. package/lib/cjs/internal/tile/map/ImageryProviders/WebMercator.js.map +1 -1
  340. package/lib/cjs/internal/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  341. package/lib/cjs/internal/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
  342. package/lib/cjs/internal/tile/map/MapTileAvailability.js.map +1 -1
  343. package/lib/cjs/internal/tile/map/MapTileLoader.js.map +1 -1
  344. package/lib/cjs/internal/tile/map/UrlUtils.js.map +1 -1
  345. package/lib/cjs/internal/tile/map/WmsCapabilities.js.map +1 -1
  346. package/lib/cjs/internal/tile/map/WmsUtilities.js.map +1 -1
  347. package/lib/cjs/internal/tile/map/WmtsCapabilities.js.map +1 -1
  348. package/lib/cjs/internal/webgl.js.map +1 -1
  349. package/lib/cjs/properties/AngleDescription.js.map +1 -1
  350. package/lib/cjs/properties/FormattedQuantityDescription.js.map +1 -1
  351. package/lib/cjs/properties/LengthDescription.js.map +1 -1
  352. package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
  353. package/lib/cjs/quantity-formatting/BasicUnitsProvider.js.map +1 -1
  354. package/lib/cjs/quantity-formatting/LocalUnitFormatProvider.js.map +1 -1
  355. package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
  356. package/lib/cjs/quantity-formatting/QuantityTypesEditorSpecs.js.map +1 -1
  357. package/lib/cjs/quantity-formatting/UnitsData.js.map +1 -1
  358. package/lib/cjs/render/CanvasDecoration.js.map +1 -1
  359. package/lib/cjs/render/CreateRenderMaterialArgs.js.map +1 -1
  360. package/lib/cjs/render/CreateTextureArgs.js.map +1 -1
  361. package/lib/cjs/render/Decorations.js.map +1 -1
  362. package/lib/cjs/render/FeatureSymbology.js.map +1 -1
  363. package/lib/cjs/render/FrameStats.js.map +1 -1
  364. package/lib/cjs/render/GraphicBranch.js.map +1 -1
  365. package/lib/cjs/render/GraphicBuilder.js.map +1 -1
  366. package/lib/cjs/render/GraphicTemplate.js.map +1 -1
  367. package/lib/cjs/render/MeshArgs.js.map +1 -1
  368. package/lib/cjs/render/ParticleCollectionBuilder.js.map +1 -1
  369. package/lib/cjs/render/Pixel.js.map +1 -1
  370. package/lib/cjs/render/PolylineArgs.js.map +1 -1
  371. package/lib/cjs/render/RealityMeshParams.js.map +1 -1
  372. package/lib/cjs/render/RenderClipVolume.js.map +1 -1
  373. package/lib/cjs/render/RenderGraphic.js.map +1 -1
  374. package/lib/cjs/render/RenderMemory.js.map +1 -1
  375. package/lib/cjs/render/RenderSystem.js.map +1 -1
  376. package/lib/cjs/render/RenderTarget.js.map +1 -1
  377. package/lib/cjs/render/Scene.js.map +1 -1
  378. package/lib/cjs/render/ScreenSpaceEffectBuilder.js.map +1 -1
  379. package/lib/cjs/render/VisibleFeature.js.map +1 -1
  380. package/lib/cjs/request/Request.js.map +1 -1
  381. package/lib/cjs/request/utils.js.map +1 -1
  382. package/lib/cjs/tile/DisclosedTileTreeSet.js.map +1 -1
  383. package/lib/cjs/tile/GltfReader.js.map +1 -1
  384. package/lib/cjs/tile/ImdlReader.js.map +1 -1
  385. package/lib/cjs/tile/RealityTile.js.map +1 -1
  386. package/lib/cjs/tile/RealityTileTree.js.map +1 -1
  387. package/lib/cjs/tile/RenderGraphicTileTree.js.map +1 -1
  388. package/lib/cjs/tile/Tile.js.map +1 -1
  389. package/lib/cjs/tile/TileAdmin.js.map +1 -1
  390. package/lib/cjs/tile/TileContent.js.map +1 -1
  391. package/lib/cjs/tile/TileDrawArgs.js.map +1 -1
  392. package/lib/cjs/tile/TileGeometryCollector.js.map +1 -1
  393. package/lib/cjs/tile/TileParams.js.map +1 -1
  394. package/lib/cjs/tile/TileRequest.js.map +1 -1
  395. package/lib/cjs/tile/TileRequestChannel.js.map +1 -1
  396. package/lib/cjs/tile/TileRequestChannels.js.map +1 -1
  397. package/lib/cjs/tile/TileStorage.js.map +1 -1
  398. package/lib/cjs/tile/TileTree.js.map +1 -1
  399. package/lib/cjs/tile/TileTreeOwner.js.map +1 -1
  400. package/lib/cjs/tile/TileTreeParams.js.map +1 -1
  401. package/lib/cjs/tile/TileTreeReference.js.map +1 -1
  402. package/lib/cjs/tile/TileTreeSupplier.js.map +1 -1
  403. package/lib/cjs/tile/TileUsageMarker.js.map +1 -1
  404. package/lib/cjs/tile/TileUser.js.map +1 -1
  405. package/lib/cjs/tile/TiledGraphicsProvider.js.map +1 -1
  406. package/lib/cjs/tile/internal.js.map +1 -1
  407. package/lib/cjs/tile/map/BingElevation.js.map +1 -1
  408. package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
  409. package/lib/cjs/tile/map/EllipsoidTerrainProvider.js.map +1 -1
  410. package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
  411. package/lib/cjs/tile/map/MapCartoRectangle.js.map +1 -1
  412. package/lib/cjs/tile/map/MapFeatureInfo.js.map +1 -1
  413. package/lib/cjs/tile/map/MapLayerAuthentication.js.map +1 -1
  414. package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
  415. package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
  416. package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
  417. package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
  418. package/lib/cjs/tile/map/MapLayerTileTreeReference.js.map +1 -1
  419. package/lib/cjs/tile/map/MapTile.js.map +1 -1
  420. package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
  421. package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  422. package/lib/cjs/tile/map/MapTilingScheme.js.map +1 -1
  423. package/lib/cjs/tile/map/QuadId.js.map +1 -1
  424. package/lib/cjs/tile/map/TerrainMeshProvider.js.map +1 -1
  425. package/lib/cjs/tile/map/TerrainProvider.js.map +1 -1
  426. package/lib/cjs/tools/AccuDrawTool.js.map +1 -1
  427. package/lib/cjs/tools/AccuDrawViewportUI.js.map +1 -1
  428. package/lib/cjs/tools/ClipViewTool.js.map +1 -1
  429. package/lib/cjs/tools/EditManipulator.js.map +1 -1
  430. package/lib/cjs/tools/ElementSetTool.js.map +1 -1
  431. package/lib/cjs/tools/EventController.js.map +1 -1
  432. package/lib/cjs/tools/IdleTool.js.map +1 -1
  433. package/lib/cjs/tools/MeasureTool.js.map +1 -1
  434. package/lib/cjs/tools/PrimitiveTool.js.map +1 -1
  435. package/lib/cjs/tools/SelectTool.js.map +1 -1
  436. package/lib/cjs/tools/Tool.js.map +1 -1
  437. package/lib/cjs/tools/ToolAdmin.js.map +1 -1
  438. package/lib/cjs/tools/ToolAssistance.js.map +1 -1
  439. package/lib/cjs/tools/ToolSettings.js.map +1 -1
  440. package/lib/cjs/tools/ViewTool.js.map +1 -1
  441. package/lib/cjs/workers/ImdlParser/Worker.js.map +1 -1
  442. package/lib/cjs/workers/RegisterWorker.js.map +1 -1
  443. package/lib/esm/AccuDraw.js.map +1 -1
  444. package/lib/esm/AccuSnap.js.map +1 -1
  445. package/lib/esm/ApproximateTerrainHeights.js.map +1 -1
  446. package/lib/esm/ApproximateTerrainHeightsProps.js.map +1 -1
  447. package/lib/esm/AuxCoordSys.js.map +1 -1
  448. package/lib/esm/BackgroundMapGeometry.js.map +1 -1
  449. package/lib/esm/BingLocation.js.map +1 -1
  450. package/lib/esm/BriefcaseConnection.js.map +1 -1
  451. package/lib/esm/BriefcaseTxns.js.map +1 -1
  452. package/lib/esm/CatalogConnection.js.map +1 -1
  453. package/lib/esm/CategorySelectorState.js.map +1 -1
  454. package/lib/esm/ChangeFlags.js.map +1 -1
  455. package/lib/esm/CheckpointConnection.js.map +1 -1
  456. package/lib/esm/ContextRealityModelState.js.map +1 -1
  457. package/lib/esm/CoordSystem.js.map +1 -1
  458. package/lib/esm/DecorationsCache.js.map +1 -1
  459. package/lib/esm/DevTools.js.map +1 -1
  460. package/lib/esm/DisplayStyleState.js.map +1 -1
  461. package/lib/esm/DrawingViewState.js.map +1 -1
  462. package/lib/esm/ElementLocateManager.js.map +1 -1
  463. package/lib/esm/EmphasizeElements.js.map +1 -1
  464. package/lib/esm/EntityState.js.map +1 -1
  465. package/lib/esm/EnvironmentDecorations.js.map +1 -1
  466. package/lib/esm/FeatureOverrideProvider.js.map +1 -1
  467. package/lib/esm/FlashSettings.js.map +1 -1
  468. package/lib/esm/FrontendHubAccess.js.map +1 -1
  469. package/lib/esm/Frustum2d.js.map +1 -1
  470. package/lib/esm/FrustumAnimator.js.map +1 -1
  471. package/lib/esm/FuzzySearch.js.map +1 -1
  472. package/lib/esm/GeoServices.js.map +1 -1
  473. package/lib/esm/GlobeAnimator.js.map +1 -1
  474. package/lib/esm/GraphicalEditingScope.js.map +1 -1
  475. package/lib/esm/HitDetail.js.map +1 -1
  476. package/lib/esm/IModelApp.js.map +1 -1
  477. package/lib/esm/IModelConnection.js.map +1 -1
  478. package/lib/esm/IModelRoutingContext.js.map +1 -1
  479. package/lib/esm/IModeljs-css.js.map +1 -1
  480. package/lib/esm/IpcApp.js.map +1 -1
  481. package/lib/esm/LinePlaneIntersect.js.map +1 -1
  482. package/lib/esm/LocalhostIpcApp.js.map +1 -1
  483. package/lib/esm/MarginPercent.js.map +1 -1
  484. package/lib/esm/Marker.js.map +1 -1
  485. package/lib/esm/ModelSelectorState.js.map +1 -1
  486. package/lib/esm/ModelState.js.map +1 -1
  487. package/lib/esm/NativeApp.js.map +1 -1
  488. package/lib/esm/NativeAppLogger.js.map +1 -1
  489. package/lib/esm/NoRenderApp.js.map +1 -1
  490. package/lib/esm/NotificationManager.js.map +1 -1
  491. package/lib/esm/PerModelCategoryVisibility.js.map +1 -1
  492. package/lib/esm/PlanarClipMaskState.js.map +1 -1
  493. package/lib/esm/RealityDataSource.js.map +1 -1
  494. package/lib/esm/RealityDataSourceCesiumIonAssetImpl.js.map +1 -1
  495. package/lib/esm/RealityDataSourceContextShareImpl.js.map +1 -1
  496. package/lib/esm/RealityDataSourceTilesetUrlImpl.js.map +1 -1
  497. package/lib/esm/SelectionSet.js.map +1 -1
  498. package/lib/esm/SheetViewState.js.map +1 -1
  499. package/lib/esm/SpatialClassifiersState.js.map +1 -1
  500. package/lib/esm/SpatialViewState.js.map +1 -1
  501. package/lib/esm/Sprites.js.map +1 -1
  502. package/lib/esm/StandardView.js.map +1 -1
  503. package/lib/esm/SubCategoriesCache.js.map +1 -1
  504. package/lib/esm/TentativePoint.js.map +1 -1
  505. package/lib/esm/Tiles.js.map +1 -1
  506. package/lib/esm/TxnEntityChanges.js.map +1 -1
  507. package/lib/esm/UserPreferences.js.map +1 -1
  508. package/lib/esm/ViewAnimation.js.map +1 -1
  509. package/lib/esm/ViewContext.js.map +1 -1
  510. package/lib/esm/ViewCreator2d.js.map +1 -1
  511. package/lib/esm/ViewCreator3d.js.map +1 -1
  512. package/lib/esm/ViewGlobalLocation.js.map +1 -1
  513. package/lib/esm/ViewManager.js.map +1 -1
  514. package/lib/esm/ViewPose.js.map +1 -1
  515. package/lib/esm/ViewState.js.map +1 -1
  516. package/lib/esm/ViewStatus.js.map +1 -1
  517. package/lib/esm/ViewingSpace.js.map +1 -1
  518. package/lib/esm/Viewport.js.map +1 -1
  519. package/lib/esm/ViewportSync.js.map +1 -1
  520. package/lib/esm/common/FrontendLoggerCategory.js.map +1 -1
  521. package/lib/esm/common/ImageUtil.js.map +1 -1
  522. package/lib/esm/common/ViewRect.js.map +1 -1
  523. package/lib/esm/common/WorkerProxy.js.map +1 -1
  524. package/lib/esm/common/gltf/GltfModel.js.map +1 -1
  525. package/lib/esm/common/gltf/GltfParser.js.map +1 -1
  526. package/lib/esm/common/gltf/GltfSchema.js.map +1 -1
  527. package/lib/esm/common/imdl/CompactEdges.js.map +1 -1
  528. package/lib/esm/common/imdl/ImdlModel.js.map +1 -1
  529. package/lib/esm/common/imdl/ImdlSchema.js.map +1 -1
  530. package/lib/esm/common/imdl/ParseImdlDocument.js.map +1 -1
  531. package/lib/esm/common/internal/Symbols.js.map +1 -1
  532. package/lib/esm/common/internal/render/AnimationNodeId.js.map +1 -1
  533. package/lib/esm/common/internal/render/AuxChannelTable.js.map +1 -1
  534. package/lib/esm/common/internal/render/ColorMap.js.map +1 -1
  535. package/lib/esm/common/internal/render/DisplayParams.js.map +1 -1
  536. package/lib/esm/common/internal/render/EdgeParams.js.map +1 -1
  537. package/lib/esm/common/internal/render/GeometryAccumulator.js.map +1 -1
  538. package/lib/esm/common/internal/render/GeometryList.js.map +1 -1
  539. package/lib/esm/common/internal/render/GeometryPrimitives.js.map +1 -1
  540. package/lib/esm/common/internal/render/GraphicDescriptionBuilderImpl.js.map +1 -1
  541. package/lib/esm/common/internal/render/GraphicDescriptionContextImpl.js.map +1 -1
  542. package/lib/esm/common/internal/render/InstancedGraphicPropsBuilder.js.map +1 -1
  543. package/lib/esm/common/internal/render/LineCode.js.map +1 -1
  544. package/lib/esm/common/internal/render/MeshBuilder.js.map +1 -1
  545. package/lib/esm/common/internal/render/MeshBuilderMap.js.map +1 -1
  546. package/lib/esm/common/internal/render/MeshParams.js.map +1 -1
  547. package/lib/esm/common/internal/render/MeshPrimitive.js.map +1 -1
  548. package/lib/esm/common/internal/render/MeshPrimitives.js.map +1 -1
  549. package/lib/esm/common/internal/render/OvrFlags.js.map +1 -1
  550. package/lib/esm/common/internal/render/PointCloudPrimitive.js.map +1 -1
  551. package/lib/esm/common/internal/render/PointStringParams.js.map +1 -1
  552. package/lib/esm/common/internal/render/Polyface.js.map +1 -1
  553. package/lib/esm/common/internal/render/PolylineParams.js.map +1 -1
  554. package/lib/esm/common/internal/render/Primitives.js.map +1 -1
  555. package/lib/esm/common/internal/render/Strokes.js.map +1 -1
  556. package/lib/esm/common/internal/render/SurfaceParams.js.map +1 -1
  557. package/lib/esm/common/internal/render/VertexIndices.js.map +1 -1
  558. package/lib/esm/common/internal/render/VertexKey.js.map +1 -1
  559. package/lib/esm/common/internal/render/VertexTable.js.map +1 -1
  560. package/lib/esm/common/internal/render/VertexTableBuilder.js.map +1 -1
  561. package/lib/esm/common/internal/render/VertexTableSplitter.js.map +1 -1
  562. package/lib/esm/common/render/BatchOptions.js.map +1 -1
  563. package/lib/esm/common/render/GraphicAssembler.js.map +1 -1
  564. package/lib/esm/common/render/GraphicDescriptionBuilder.js.map +1 -1
  565. package/lib/esm/common/render/GraphicDescriptionContext.js.map +1 -1
  566. package/lib/esm/common/render/GraphicPrimitive.js.map +1 -1
  567. package/lib/esm/common/render/GraphicType.js.map +1 -1
  568. package/lib/esm/common/render/InstancedGraphicParams.js.map +1 -1
  569. package/lib/esm/common/render/MaterialParams.js.map +1 -1
  570. package/lib/esm/common/render/RenderInstancesParams.js.map +1 -1
  571. package/lib/esm/common/render/TextureParams.js.map +1 -1
  572. package/lib/esm/common.js.map +1 -1
  573. package/lib/esm/core-frontend.js.map +1 -1
  574. package/lib/esm/extension/Extension.js.map +1 -1
  575. package/lib/esm/extension/ExtensionAdmin.js.map +1 -1
  576. package/lib/esm/extension/ExtensionHost.js.map +1 -1
  577. package/lib/esm/extension/ExtensionRuntime.js.map +1 -1
  578. package/lib/esm/extension/providers/ExtensionLoadScript.js.map +1 -1
  579. package/lib/esm/extension/providers/LocalExtensionProvider.js.map +1 -1
  580. package/lib/esm/extension/providers/RemoteExtensionProvider.js.map +1 -1
  581. package/lib/esm/internal/GoogleMapsDecorator.js.map +1 -1
  582. package/lib/esm/internal/RealityDataSourceGoogle3dTilesImpl.js.map +1 -1
  583. package/lib/esm/internal/ScriptUtils.js.map +1 -1
  584. package/lib/esm/internal/cross-package.js.map +1 -1
  585. package/lib/esm/internal/render/AnimationBranchState.js.map +1 -1
  586. package/lib/esm/internal/render/FrameStatsCollector.js.map +1 -1
  587. package/lib/esm/internal/render/GraphicBranchFrustum.js.map +1 -1
  588. package/lib/esm/internal/render/GraphicTemplateImpl.js.map +1 -1
  589. package/lib/esm/internal/render/MeshMapLayerGraphicParams.js.map +1 -1
  590. package/lib/esm/internal/render/MockRender.js.map +1 -1
  591. package/lib/esm/internal/render/PrimitiveBuilder.js.map +1 -1
  592. package/lib/esm/internal/render/QueryVisibileFeatures.js.map +1 -1
  593. package/lib/esm/internal/render/RenderAreaPattern.js.map +1 -1
  594. package/lib/esm/internal/render/RenderGeometry.js.map +1 -1
  595. package/lib/esm/internal/render/RenderInstancesParamsImpl.js.map +1 -1
  596. package/lib/esm/internal/render/RenderMaterialSource.js.map +1 -1
  597. package/lib/esm/internal/render/RenderPlan.js.map +1 -1
  598. package/lib/esm/internal/render/RenderPlanarClassifier.js.map +1 -1
  599. package/lib/esm/internal/render/RenderSkyBoxParams.js.map +1 -1
  600. package/lib/esm/internal/render/RenderSystemDebugControl.js.map +1 -1
  601. package/lib/esm/internal/render/RenderTargetDebugControl.js.map +1 -1
  602. package/lib/esm/internal/render/RenderTerrain.js.map +1 -1
  603. package/lib/esm/internal/render/RenderTextureDrape.js.map +1 -1
  604. package/lib/esm/internal/render/SceneVolumeClassifier.js.map +1 -1
  605. package/lib/esm/internal/render/UpsampleRealityMeshParams.js.map +1 -1
  606. package/lib/esm/internal/render/webgl/AtmosphereUniforms.js.map +1 -1
  607. package/lib/esm/internal/render/webgl/AttributeBuffers.js.map +1 -1
  608. package/lib/esm/internal/render/webgl/AttributeMap.js.map +1 -1
  609. package/lib/esm/internal/render/webgl/BackgroundMapDrape.js +1 -1
  610. package/lib/esm/internal/render/webgl/BackgroundMapDrape.js.map +1 -1
  611. package/lib/esm/internal/render/webgl/BatchState.js.map +1 -1
  612. package/lib/esm/internal/render/webgl/BatchUniforms.js.map +1 -1
  613. package/lib/esm/internal/render/webgl/BranchStack.js.map +1 -1
  614. package/lib/esm/internal/render/webgl/BranchState.js.map +1 -1
  615. package/lib/esm/internal/render/webgl/BranchUniforms.js.map +1 -1
  616. package/lib/esm/internal/render/webgl/CachedGeometry.js.map +1 -1
  617. package/lib/esm/internal/render/webgl/ClipStack.js.map +1 -1
  618. package/lib/esm/internal/render/webgl/ClipVolume.js.map +1 -1
  619. package/lib/esm/internal/render/webgl/ClippingProgram.js.map +1 -1
  620. package/lib/esm/internal/render/webgl/ColorInfo.js.map +1 -1
  621. package/lib/esm/internal/render/webgl/ContourUniforms.js.map +1 -1
  622. package/lib/esm/internal/render/webgl/Contours.js.map +1 -1
  623. package/lib/esm/internal/render/webgl/Diagnostics.js.map +1 -1
  624. package/lib/esm/internal/render/webgl/Disposable.js.map +1 -1
  625. package/lib/esm/internal/render/webgl/DrawCommand.js.map +1 -1
  626. package/lib/esm/internal/render/webgl/EDL.js.map +1 -1
  627. package/lib/esm/internal/render/webgl/EdgeGeometry.js.map +1 -1
  628. package/lib/esm/internal/render/webgl/EdgeSettings.js.map +1 -1
  629. package/lib/esm/internal/render/webgl/FeatureOverrides.js.map +1 -1
  630. package/lib/esm/internal/render/webgl/FloatRGBA.js.map +1 -1
  631. package/lib/esm/internal/render/webgl/FrameBuffer.js.map +1 -1
  632. package/lib/esm/internal/render/webgl/FrustumUniforms.js.map +1 -1
  633. package/lib/esm/internal/render/webgl/GL.js.map +1 -1
  634. package/lib/esm/internal/render/webgl/GLTimer.js.map +1 -1
  635. package/lib/esm/internal/render/webgl/Graphic.js.map +1 -1
  636. package/lib/esm/internal/render/webgl/HiliteUniforms.js.map +1 -1
  637. package/lib/esm/internal/render/webgl/IModelFrameLifecycle.js.map +1 -1
  638. package/lib/esm/internal/render/webgl/IndexedEdgeGeometry.js.map +1 -1
  639. package/lib/esm/internal/render/webgl/InstancedGeometry.js.map +1 -1
  640. package/lib/esm/internal/render/webgl/Layer.js.map +1 -1
  641. package/lib/esm/internal/render/webgl/LayerCommands.js.map +1 -1
  642. package/lib/esm/internal/render/webgl/LightingUniforms.js.map +1 -1
  643. package/lib/esm/internal/render/webgl/LineCode.js.map +1 -1
  644. package/lib/esm/internal/render/webgl/MapLayerParams.js.map +1 -1
  645. package/lib/esm/internal/render/webgl/Material.js.map +1 -1
  646. package/lib/esm/internal/render/webgl/Matrix.js.map +1 -1
  647. package/lib/esm/internal/render/webgl/Mesh.js.map +1 -1
  648. package/lib/esm/internal/render/webgl/MeshData.js.map +1 -1
  649. package/lib/esm/internal/render/webgl/MeshGeometry.js.map +1 -1
  650. package/lib/esm/internal/render/webgl/PerformanceMetrics.js.map +1 -1
  651. package/lib/esm/internal/render/webgl/PlanarClassifier.js +1 -1
  652. package/lib/esm/internal/render/webgl/PlanarClassifier.js.map +1 -1
  653. package/lib/esm/internal/render/webgl/PlanarGrid.js.map +1 -1
  654. package/lib/esm/internal/render/webgl/PlanarTextureProjection.js.map +1 -1
  655. package/lib/esm/internal/render/webgl/PointCloud.js.map +1 -1
  656. package/lib/esm/internal/render/webgl/PointString.js.map +1 -1
  657. package/lib/esm/internal/render/webgl/Polyline.js.map +1 -1
  658. package/lib/esm/internal/render/webgl/Primitive.js.map +1 -1
  659. package/lib/esm/internal/render/webgl/RealityMesh.js.map +1 -1
  660. package/lib/esm/internal/render/webgl/RealityModelUniforms.js.map +1 -1
  661. package/lib/esm/internal/render/webgl/RenderBuffer.js.map +1 -1
  662. package/lib/esm/internal/render/webgl/RenderCommands.js.map +1 -1
  663. package/lib/esm/internal/render/webgl/RenderFlags.js.map +1 -1
  664. package/lib/esm/internal/render/webgl/RenderState.js.map +1 -1
  665. package/lib/esm/internal/render/webgl/SceneCompositor.js.map +1 -1
  666. package/lib/esm/internal/render/webgl/ScratchDrawParams.js.map +1 -1
  667. package/lib/esm/internal/render/webgl/ScreenSpaceEffect.js.map +1 -1
  668. package/lib/esm/internal/render/webgl/ShaderBuilder.js.map +1 -1
  669. package/lib/esm/internal/render/webgl/ShaderProgram.js.map +1 -1
  670. package/lib/esm/internal/render/webgl/ShadowUniforms.js.map +1 -1
  671. package/lib/esm/internal/render/webgl/SolarShadowMap.js.map +1 -1
  672. package/lib/esm/internal/render/webgl/StyleUniforms.js.map +1 -1
  673. package/lib/esm/internal/render/webgl/SurfaceGeometry.js.map +1 -1
  674. package/lib/esm/internal/render/webgl/Sync.js.map +1 -1
  675. package/lib/esm/internal/render/webgl/System.js.map +1 -1
  676. package/lib/esm/internal/render/webgl/Target.js.map +1 -1
  677. package/lib/esm/internal/render/webgl/TargetGraphics.js.map +1 -1
  678. package/lib/esm/internal/render/webgl/TargetUniforms.js.map +1 -1
  679. package/lib/esm/internal/render/webgl/Technique.js.map +1 -1
  680. package/lib/esm/internal/render/webgl/TechniqueFlags.js.map +1 -1
  681. package/lib/esm/internal/render/webgl/TechniqueId.js.map +1 -1
  682. package/lib/esm/internal/render/webgl/Texture.js.map +1 -1
  683. package/lib/esm/internal/render/webgl/TextureDrape.js.map +1 -1
  684. package/lib/esm/internal/render/webgl/ThematicSensors.js.map +1 -1
  685. package/lib/esm/internal/render/webgl/ThematicUniforms.js.map +1 -1
  686. package/lib/esm/internal/render/webgl/UniformHandle.js.map +1 -1
  687. package/lib/esm/internal/render/webgl/VertexLUT.js.map +1 -1
  688. package/lib/esm/internal/render/webgl/ViewRectUniforms.js.map +1 -1
  689. package/lib/esm/internal/render/webgl/VisibleTileFeatures.js.map +1 -1
  690. package/lib/esm/internal/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
  691. package/lib/esm/internal/render/webgl/glsl/Animation.js.map +1 -1
  692. package/lib/esm/internal/render/webgl/glsl/Atmosphere.js.map +1 -1
  693. package/lib/esm/internal/render/webgl/glsl/Blur.js.map +1 -1
  694. package/lib/esm/internal/render/webgl/glsl/ClearPickAndColor.js.map +1 -1
  695. package/lib/esm/internal/render/webgl/glsl/ClearTranslucent.js.map +1 -1
  696. package/lib/esm/internal/render/webgl/glsl/Clipping.js.map +1 -1
  697. package/lib/esm/internal/render/webgl/glsl/Color.js.map +1 -1
  698. package/lib/esm/internal/render/webgl/glsl/Combine3Textures.js.map +1 -1
  699. package/lib/esm/internal/render/webgl/glsl/CombineTextures.js.map +1 -1
  700. package/lib/esm/internal/render/webgl/glsl/Common.js.map +1 -1
  701. package/lib/esm/internal/render/webgl/glsl/Composite.js.map +1 -1
  702. package/lib/esm/internal/render/webgl/glsl/Contours.js.map +1 -1
  703. package/lib/esm/internal/render/webgl/glsl/CopyColor.js.map +1 -1
  704. package/lib/esm/internal/render/webgl/glsl/CopyPickBuffers.js.map +1 -1
  705. package/lib/esm/internal/render/webgl/glsl/CopyStencil.js.map +1 -1
  706. package/lib/esm/internal/render/webgl/glsl/Decode.js.map +1 -1
  707. package/lib/esm/internal/render/webgl/glsl/EDL.js.map +1 -1
  708. package/lib/esm/internal/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
  709. package/lib/esm/internal/render/webgl/glsl/Edge.js.map +1 -1
  710. package/lib/esm/internal/render/webgl/glsl/FeatureSymbology.js.map +1 -1
  711. package/lib/esm/internal/render/webgl/glsl/Fragment.js.map +1 -1
  712. package/lib/esm/internal/render/webgl/glsl/Instancing.js.map +1 -1
  713. package/lib/esm/internal/render/webgl/glsl/Lighting.js.map +1 -1
  714. package/lib/esm/internal/render/webgl/glsl/LogarithmicDepthBuffer.js.map +1 -1
  715. package/lib/esm/internal/render/webgl/glsl/LookupTable.js.map +1 -1
  716. package/lib/esm/internal/render/webgl/glsl/MaplayerDraping.js.map +1 -1
  717. package/lib/esm/internal/render/webgl/glsl/Monochrome.js.map +1 -1
  718. package/lib/esm/internal/render/webgl/glsl/PlanarClassification.js.map +1 -1
  719. package/lib/esm/internal/render/webgl/glsl/PlanarGrid.js.map +1 -1
  720. package/lib/esm/internal/render/webgl/glsl/PointCloud.js.map +1 -1
  721. package/lib/esm/internal/render/webgl/glsl/PointString.js.map +1 -1
  722. package/lib/esm/internal/render/webgl/glsl/Polyline.js.map +1 -1
  723. package/lib/esm/internal/render/webgl/glsl/RealityMesh.js.map +1 -1
  724. package/lib/esm/internal/render/webgl/glsl/RenderPass.js.map +1 -1
  725. package/lib/esm/internal/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
  726. package/lib/esm/internal/render/webgl/glsl/SkyBox.js.map +1 -1
  727. package/lib/esm/internal/render/webgl/glsl/SkySphere.js.map +1 -1
  728. package/lib/esm/internal/render/webgl/glsl/SolarShadowMapping.js.map +1 -1
  729. package/lib/esm/internal/render/webgl/glsl/Surface.js.map +1 -1
  730. package/lib/esm/internal/render/webgl/glsl/Thematic.js.map +1 -1
  731. package/lib/esm/internal/render/webgl/glsl/Translucency.js.map +1 -1
  732. package/lib/esm/internal/render/webgl/glsl/Vertex.js.map +1 -1
  733. package/lib/esm/internal/render/webgl/glsl/Viewport.js.map +1 -1
  734. package/lib/esm/internal/render/webgl/glsl/ViewportQuad.js.map +1 -1
  735. package/lib/esm/internal/render/webgl/glsl/Wiremesh.js.map +1 -1
  736. package/lib/esm/internal/tile/B3dmReader.js.map +1 -1
  737. package/lib/esm/internal/tile/BatchedTileIdMap.js.map +1 -1
  738. package/lib/esm/internal/tile/CesiumAssetProvider.js.map +1 -1
  739. package/lib/esm/internal/tile/ClassifierTileTree.js.map +1 -1
  740. package/lib/esm/internal/tile/ContextShareProvider.js.map +1 -1
  741. package/lib/esm/internal/tile/DynamicIModelTile.js +1 -0
  742. package/lib/esm/internal/tile/DynamicIModelTile.js.map +1 -1
  743. package/lib/esm/internal/tile/FetchCloudStorage.js.map +1 -1
  744. package/lib/esm/internal/tile/GraphicsCollector.js.map +1 -1
  745. package/lib/esm/internal/tile/I3dmReader.js.map +1 -1
  746. package/lib/esm/internal/tile/IModelTile.js.map +1 -1
  747. package/lib/esm/internal/tile/IModelTileRequestChannels.js.map +1 -1
  748. package/lib/esm/internal/tile/IModelTileTree.js.map +1 -1
  749. package/lib/esm/internal/tile/ImdlDecoder.js.map +1 -1
  750. package/lib/esm/internal/tile/ImdlGraphicsCreator.js.map +1 -1
  751. package/lib/esm/internal/tile/ImdlParser.js.map +1 -1
  752. package/lib/esm/internal/tile/LRUTileList.js.map +1 -1
  753. package/lib/esm/internal/tile/LayerTileTreeHandler.js.map +1 -1
  754. package/lib/esm/internal/tile/LayerTileTreeReferenceHandler.js.map +1 -1
  755. package/lib/esm/internal/tile/MeshoptCompression.js.map +1 -1
  756. package/lib/esm/internal/tile/OPCFormatInterpreter.js.map +1 -1
  757. package/lib/esm/internal/tile/OrbitGtTileTree.js.map +1 -1
  758. package/lib/esm/internal/tile/PntsReader.js.map +1 -1
  759. package/lib/esm/internal/tile/PrimaryTileTree.js.map +1 -1
  760. package/lib/esm/internal/tile/RealityModelTileTree.js.map +1 -1
  761. package/lib/esm/internal/tile/RealityTileDrawArgs.js.map +1 -1
  762. package/lib/esm/internal/tile/RealityTileLoader.js.map +1 -1
  763. package/lib/esm/internal/tile/ThreeDTileFormatInterpreter.js.map +1 -1
  764. package/lib/esm/internal/tile/TileUserSet.js.map +1 -1
  765. package/lib/esm/internal/tile/ViewFlagOverrides.js.map +1 -1
  766. package/lib/esm/internal/tile/map/ArcGISTileMap.js.map +1 -1
  767. package/lib/esm/internal/tile/map/ArcGisUtilities.js.map +1 -1
  768. package/lib/esm/internal/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
  769. package/lib/esm/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  770. package/lib/esm/internal/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js.map +1 -1
  771. package/lib/esm/internal/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
  772. package/lib/esm/internal/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  773. package/lib/esm/internal/tile/map/ImageryProviders/CoordinatesUtils.js.map +1 -1
  774. package/lib/esm/internal/tile/map/ImageryProviders/FeatureAttributeDrivenSymbology.js.map +1 -1
  775. package/lib/esm/internal/tile/map/ImageryProviders/FeatureGeometryRenderer.js.map +1 -1
  776. package/lib/esm/internal/tile/map/ImageryProviders/FeatureGraphicsRenderer.js.map +1 -1
  777. package/lib/esm/internal/tile/map/ImageryProviders/FeatureSymbologyRenderer.js.map +1 -1
  778. package/lib/esm/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  779. package/lib/esm/internal/tile/map/ImageryProviders/TileUrlImageryProvider.js.map +1 -1
  780. package/lib/esm/internal/tile/map/ImageryProviders/WebMercator.js.map +1 -1
  781. package/lib/esm/internal/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  782. package/lib/esm/internal/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
  783. package/lib/esm/internal/tile/map/MapTileAvailability.js.map +1 -1
  784. package/lib/esm/internal/tile/map/MapTileLoader.js.map +1 -1
  785. package/lib/esm/internal/tile/map/UrlUtils.js.map +1 -1
  786. package/lib/esm/internal/tile/map/WmsCapabilities.js.map +1 -1
  787. package/lib/esm/internal/tile/map/WmsUtilities.js.map +1 -1
  788. package/lib/esm/internal/tile/map/WmtsCapabilities.js.map +1 -1
  789. package/lib/esm/internal/webgl.js.map +1 -1
  790. package/lib/esm/properties/AngleDescription.js.map +1 -1
  791. package/lib/esm/properties/FormattedQuantityDescription.js.map +1 -1
  792. package/lib/esm/properties/LengthDescription.js.map +1 -1
  793. package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
  794. package/lib/esm/quantity-formatting/BasicUnitsProvider.js.map +1 -1
  795. package/lib/esm/quantity-formatting/LocalUnitFormatProvider.js.map +1 -1
  796. package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
  797. package/lib/esm/quantity-formatting/QuantityTypesEditorSpecs.js.map +1 -1
  798. package/lib/esm/quantity-formatting/UnitsData.js.map +1 -1
  799. package/lib/esm/render/CanvasDecoration.js.map +1 -1
  800. package/lib/esm/render/CreateRenderMaterialArgs.js.map +1 -1
  801. package/lib/esm/render/CreateTextureArgs.js.map +1 -1
  802. package/lib/esm/render/Decorations.js.map +1 -1
  803. package/lib/esm/render/FeatureSymbology.js.map +1 -1
  804. package/lib/esm/render/FrameStats.js.map +1 -1
  805. package/lib/esm/render/GraphicBranch.js.map +1 -1
  806. package/lib/esm/render/GraphicBuilder.js.map +1 -1
  807. package/lib/esm/render/GraphicTemplate.js.map +1 -1
  808. package/lib/esm/render/MeshArgs.js.map +1 -1
  809. package/lib/esm/render/ParticleCollectionBuilder.js.map +1 -1
  810. package/lib/esm/render/Pixel.js.map +1 -1
  811. package/lib/esm/render/PolylineArgs.js.map +1 -1
  812. package/lib/esm/render/RealityMeshParams.js.map +1 -1
  813. package/lib/esm/render/RenderClipVolume.js.map +1 -1
  814. package/lib/esm/render/RenderGraphic.js.map +1 -1
  815. package/lib/esm/render/RenderMemory.js.map +1 -1
  816. package/lib/esm/render/RenderSystem.js.map +1 -1
  817. package/lib/esm/render/RenderTarget.js.map +1 -1
  818. package/lib/esm/render/Scene.js.map +1 -1
  819. package/lib/esm/render/ScreenSpaceEffectBuilder.js.map +1 -1
  820. package/lib/esm/render/VisibleFeature.js.map +1 -1
  821. package/lib/esm/request/Request.js.map +1 -1
  822. package/lib/esm/request/utils.js.map +1 -1
  823. package/lib/esm/tile/DisclosedTileTreeSet.js.map +1 -1
  824. package/lib/esm/tile/GltfReader.js.map +1 -1
  825. package/lib/esm/tile/ImdlReader.js.map +1 -1
  826. package/lib/esm/tile/RealityTile.js.map +1 -1
  827. package/lib/esm/tile/RealityTileTree.js.map +1 -1
  828. package/lib/esm/tile/RenderGraphicTileTree.js.map +1 -1
  829. package/lib/esm/tile/Tile.js.map +1 -1
  830. package/lib/esm/tile/TileAdmin.js.map +1 -1
  831. package/lib/esm/tile/TileContent.js.map +1 -1
  832. package/lib/esm/tile/TileDrawArgs.js.map +1 -1
  833. package/lib/esm/tile/TileGeometryCollector.js.map +1 -1
  834. package/lib/esm/tile/TileParams.js.map +1 -1
  835. package/lib/esm/tile/TileRequest.js.map +1 -1
  836. package/lib/esm/tile/TileRequestChannel.js.map +1 -1
  837. package/lib/esm/tile/TileRequestChannels.js.map +1 -1
  838. package/lib/esm/tile/TileStorage.js.map +1 -1
  839. package/lib/esm/tile/TileTree.js.map +1 -1
  840. package/lib/esm/tile/TileTreeOwner.js.map +1 -1
  841. package/lib/esm/tile/TileTreeParams.js.map +1 -1
  842. package/lib/esm/tile/TileTreeReference.js.map +1 -1
  843. package/lib/esm/tile/TileTreeSupplier.js.map +1 -1
  844. package/lib/esm/tile/TileUsageMarker.js.map +1 -1
  845. package/lib/esm/tile/TileUser.js.map +1 -1
  846. package/lib/esm/tile/TiledGraphicsProvider.js.map +1 -1
  847. package/lib/esm/tile/internal.js.map +1 -1
  848. package/lib/esm/tile/map/BingElevation.js.map +1 -1
  849. package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
  850. package/lib/esm/tile/map/EllipsoidTerrainProvider.js.map +1 -1
  851. package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
  852. package/lib/esm/tile/map/MapCartoRectangle.js.map +1 -1
  853. package/lib/esm/tile/map/MapFeatureInfo.js.map +1 -1
  854. package/lib/esm/tile/map/MapLayerAuthentication.js.map +1 -1
  855. package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
  856. package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
  857. package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
  858. package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
  859. package/lib/esm/tile/map/MapLayerTileTreeReference.js.map +1 -1
  860. package/lib/esm/tile/map/MapTile.js.map +1 -1
  861. package/lib/esm/tile/map/MapTileTree.js.map +1 -1
  862. package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  863. package/lib/esm/tile/map/MapTilingScheme.js.map +1 -1
  864. package/lib/esm/tile/map/QuadId.js.map +1 -1
  865. package/lib/esm/tile/map/TerrainMeshProvider.js.map +1 -1
  866. package/lib/esm/tile/map/TerrainProvider.js.map +1 -1
  867. package/lib/esm/tools/AccuDrawTool.js.map +1 -1
  868. package/lib/esm/tools/AccuDrawViewportUI.js.map +1 -1
  869. package/lib/esm/tools/ClipViewTool.js.map +1 -1
  870. package/lib/esm/tools/EditManipulator.js.map +1 -1
  871. package/lib/esm/tools/ElementSetTool.js.map +1 -1
  872. package/lib/esm/tools/EventController.js.map +1 -1
  873. package/lib/esm/tools/IdleTool.js.map +1 -1
  874. package/lib/esm/tools/MeasureTool.js.map +1 -1
  875. package/lib/esm/tools/PrimitiveTool.js.map +1 -1
  876. package/lib/esm/tools/SelectTool.js.map +1 -1
  877. package/lib/esm/tools/Tool.js.map +1 -1
  878. package/lib/esm/tools/ToolAdmin.js.map +1 -1
  879. package/lib/esm/tools/ToolAssistance.js.map +1 -1
  880. package/lib/esm/tools/ToolSettings.js.map +1 -1
  881. package/lib/esm/tools/ViewTool.js.map +1 -1
  882. package/lib/esm/workers/ImdlParser/Worker.js.map +1 -1
  883. package/lib/esm/workers/RegisterWorker.js.map +1 -1
  884. package/package.json +20 -20
@@ -1 +1 @@
1
- {"version":3,"file":"DrawCommand.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/DrawCommand.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,IAAI,EAAc,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAInD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAMtD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAiG,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGjJ,yCAAyC;AAEzC,gBAAgB;AAChB,MAAM,OAAO,mBAAmB;IACtB,OAAO,CAAU;IACjB,WAAW,6BAA+B;IAElD,IAAW,MAAM;QACf,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAW,UAAU,KAAK,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IAEpD,IAAW,gBAAgB,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAChG,oBAAoB,CAAC,OAAsB,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAE9H,IAAW,YAAY,KAAK,OAAO,oCAA2B,IAAI,CAAC,UAAU,IAAI,kCAA0B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAC7H,IAAW,aAAa,KAAK,OAAO,qCAA4B,IAAI,CAAC,UAAU,IAAI,oCAA2B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAChI,IAAW,OAAO,KAAK,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IAEjD,IAAI,CAAC,MAAc,EAAE,uCAA2C;QACrE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;CACF;AAED,gBAAgB;AAChB,MAAM,OAAO,UAAU;IACb,cAAc,CAAuB;IACrC,SAAS,CAAkB;IAEnC,IAAW,QAAQ;QACjB,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAW,aAAa;QACtB,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,cAAc,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,IAAW,MAAM,KAAK,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IACzD,IAAW,UAAU,KAAK,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;IACjE,IAAW,gBAAgB,KAAK,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC7E,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,eAAe,CAAC;IACtF,CAAC;IACD,IAAW,aAAa,KAAK,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC;IACvE,IAAW,OAAO,KAAK,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IAEpD,IAAI,CAAC,aAAkC,EAAE,QAAwB;QACtE,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;QACpC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC5B,CAAC;CACF;AAUD;;;;GAIG;AACH,MAAM,CAAN,IAAY,UASX;AATD,WAAY,UAAU;IACpB,yCAA2B,CAAA;IAC3B,uCAAyB,CAAA;IACzB,qCAAuB,CAAA;IACvB,qCAAuB,CAAA;IACvB,mCAAqB,CAAA;IACrB,qCAAuB,CAAA;IACvB,mCAAqB,CAAA;IACrB,iCAAmB,CAAA;AACrB,CAAC,EATW,UAAU,KAAV,UAAU,QASrB;AAED,gBAAgB;AAChB,MAAM,OAAO,eAAe;IACV,MAAM,GAAG,UAAU,CAAC;IAEpC,gBAAwB,CAAC;IAElB,MAAM,CAAC,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;IAExC,OAAO,CAAC,IAA2B;QACxC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;;AAGH,gBAAgB;AAChB,MAAM,OAAO,gBAAgB;IAGQ;IAFnB,MAAM,GAAG,WAAW,CAAC;IAErC,YAAmC,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;IAAI,CAAC;IAE7C,OAAO,CAAC,IAA2B;QACxC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;CACF;AAED,gBAAgB;AAChB,MAAM,OAAO,gBAAgB;IAGQ;IAFnB,MAAM,GAAG,WAAW,CAAC;IAErC,YAAmC,KAAkB;QAAlB,UAAK,GAAL,KAAK,CAAa;IAAI,CAAC;IAEnD,OAAO,CAAC,IAA2B;QACxC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;CACF;AAED,gBAAgB;AAChB,MAAM,OAAO,iBAAiB;IAGO;IAFnB,MAAM,GAAG,YAAY,CAAC;IAEtC,YAAmC,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAI,CAAC;IAE/C,OAAO,CAAC,IAA2B;QACxC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;CACF;AAED,gBAAgB;AAChB,MAAM,OAAO,gBAAgB;IACX,MAAM,GAAG,WAAW,CAAC;IAErC,gBAAwB,CAAC;IAElB,MAAM,CAAC,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAC;IAEzC,OAAO,CAAC,IAA2B;QACxC,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;;AAGH,gBAAgB;AAChB,MAAM,OAAO,eAAe;IAGS;IAFnB,MAAM,GAAG,UAAU,CAAC;IAEpC,YAAmC,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAI,CAAC;IAEjD,OAAO,CAAC,IAA2B;QACxC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxD,CAAC;CACF;AAED,gBAAgB;AAChB,MAAM,OAAO,cAAc;IACT,MAAM,GAAG,SAAS,CAAC;IAEnC,gBAAwB,CAAC;IAElB,MAAM,CAAC,QAAQ,GAAG,IAAI,cAAc,EAAE,CAAC;IAEvC,OAAO,CAAC,IAA2B;QACxC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;IAC9C,CAAC;;AAGH,gBAAgB;AAChB,MAAM,OAAO,gBAAgB;IAGQ;IAFnB,MAAM,GAAG,eAAe,CAAC;IAEzC,YAAmC,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;IAAI,CAAC;IAEpD,MAAM,CAAU,sBAAsB,GAAG,IAAI,cAAc,EAAE,CAAC;IAE/D,OAAO,CAAC,IAA2B;QACxC,IAAI,IAAI,CAAC,MAAM,CAAC,6BAA6B,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC;YAC1E,OAAO;QAET,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;QAC/C,IAAI,iCAAwB,WAAW;YACrC,OAAO;QAET,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,uBAAuB,IAAI,MAAM,CAAC,mBAAmB,CAAC;QACrG,MAAM,UAAU,GAAG,CAAC,WAAW,gCAAwB,IAAI,WAAW,oCAA4B,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,OAAO,IAAI,MAAM,CAAC,gBAAgB,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC;QACrL,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,0BAAkB,CAAC,wBAAgB,CAAC;QACrE,IAAI,UAAU,GAAG,QAAQ,CAAC,CAAC,wBAAgB,CAAC,sBAAc,CAAC;QAC3D,MAAM,YAAY,GAAG,CAAC,SAAS,KAAK,MAAM,CAAC,8BAA8B,IAAI,SAAS,KAAK,MAAM,CAAC,6BAA6B,CAAC,CAAC,CAAC,0BAAkB,CAAC,wBAAgB,CAAC;QACtK,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,yBAAiB,CAAC,uBAAe,CAAC;QAClF,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,wBAAgB,CAAC,sBAAc,CAAC;QAEhF,4EAA4E;QAC5E,IAAI,UAAU,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YACpK,UAAU,wBAAgB,CAAC;QAE7B,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAC,QAAQ,IAAI,CAAC,WAAW,gCAAwB,IAAI,WAAW,oCAA4B,CAAC,CAAC;QACtI,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,wBAAgB,CAAC,sBAAc,CAAC;QAC7D,MAAM,KAAK,GAAG,gBAAgB,CAAC,sBAAsB,CAAC;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,sBAAsB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;QACnG,MAAM,gBAAgB,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,8BAAsB,CAAC,4BAAoB,CAAC;QAC5F,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAE5I,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QAC9D,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAE3C,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IACtF,CAAC;IAED,IAAW,WAAW,KAAc,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IACxE,IAAW,WAAW,KAAkB,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IAErE,OAAO,CAAC,MAAc;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;;AAeH;;;;GAIG;AACH,MAAM,UAAU,sCAAsC,CAAC,SAAqB,EAAE,IAAkB,EAAE,oBAA4B;IAC5H,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,oBAAoB;QACxD,OAAO,SAAS,CAAC;IAEnB,MAAM,SAAS,GAAG,CAAC,oBAAoB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACjD,KAAK,IAAI,CAAC,GAAG,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,oBAAoB,EAAE,CAAC;QACnE,MAAM,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,0CAA0C,CAAC,CAAC;QACvF,MAAM,EAAE,GAAqB,IAAI,CAAC,CAAC,CAAqB,CAAC;QACzD,MAAM,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,cAAc,CAAC,SAAS,CAAC;QACtD,IAAI,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACzE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,OAAO,CAAC,IAAI,CAAC,IAAI,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,gCAAgC;gBAC/E,CAAC,EAAE,CAAC;YACN,IAAI,CAAC,GAAG,CAAC;gBACP,SAAS;YAEX,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAqB,CAAC;YAC9C,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACzF,IAAI,SAAS,KAAK,MAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACjD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,SAAS,EAAE,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,cAAc,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC;AAE9C,gBAAgB;AAChB,MAAM,UAAU,sCAAsC,CAAC,OAAgB,EAAE,IAAkB;IACzF,gHAAgH;IAChH,uGAAuG;IACvG,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,IAAI,KAAK,CAAC;IACV,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;YACnB,KAAK,WAAW;gBACd,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;oBAC3E,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,8BAA8B;oBAC5C,SAAS;gBACX,CAAC;gBACD,MAAM;YACR,KAAK,UAAU;gBACb,KAAK,GAAG,SAAS,CAAC;gBAClB,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;oBAC1E,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,8BAA8B;oBAC5C,SAAS;gBACX,CAAC;gBACD,MAAM;YACR,KAAK,WAAW;gBACd,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;gBAClB,MAAM;YACR,KAAK,eAAe;gBAClB,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;oBACxB,4CAA4C;oBAC5C,MAAM,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,SAAS,CAAC;oBACvD,IAAI,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,gBAAgB;wBACtE,SAAS;oBAEX,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;oBACnG,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;wBAChI,SAAS;oBAEX,MAAM;gBACR,CAAC;QACL,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module WebGL\r\n */\r\n\r\nimport { assert, Id64, Id64String } from \"@itwin/core-bentley\";\r\nimport { PackedFeature } from \"@itwin/core-common\";\r\nimport { BranchState } from \"./BranchState\";\r\nimport { CachedGeometry } from \"./CachedGeometry\";\r\nimport { ClipVolume } from \"./ClipVolume\";\r\nimport { isFeatureHilited } from \"./FeatureOverrides\";\r\nimport { Batch, Branch } from \"./Graphic\";\r\nimport { UniformHandle } from \"./UniformHandle\";\r\nimport { Primitive } from \"./Primitive\";\r\nimport { Pass, RenderOrder, RenderPass } from \"./RenderFlags\";\r\nimport { ShaderProgramExecutor } from \"./ShaderProgram\";\r\nimport { System } from \"./System\";\r\nimport { Hilites, Target } from \"./Target\";\r\nimport { EnableAtmosphere, IsAnimated, IsClassified, IsInstanced, IsShadowable, IsThematic, IsWiremesh, TechniqueFlags } from \"./TechniqueFlags\";\r\nimport { TechniqueId } from \"./TechniqueId\";\r\n\r\n/* eslint-disable no-restricted-syntax */\r\n\r\n/** @internal */\r\nexport class ShaderProgramParams {\r\n private _target?: Target;\r\n private _renderPass: RenderPass = RenderPass.None;\r\n\r\n public get target(): Target {\r\n assert(undefined !== this._target);\r\n return this._target;\r\n }\r\n\r\n public get renderPass() { return this._renderPass; }\r\n\r\n public get projectionMatrix() { return this.target.uniforms.getProjectionMatrix32(this.isViewCoords); }\r\n public bindProjectionMatrix(uniform: UniformHandle) { this.target.uniforms.bindProjectionMatrix(uniform, this.isViewCoords); }\r\n\r\n public get isViewCoords() { return RenderPass.ViewOverlay === this.renderPass || RenderPass.Background === this.renderPass; }\r\n public get isOverlayPass() { return RenderPass.WorldOverlay === this.renderPass || RenderPass.ViewOverlay === this.renderPass; }\r\n public get context() { return System.instance.context; }\r\n\r\n public init(target: Target, pass: RenderPass = RenderPass.OpaqueGeneral) {\r\n this._renderPass = pass;\r\n this._target = target;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class DrawParams {\r\n private _programParams?: ShaderProgramParams;\r\n private _geometry?: CachedGeometry;\r\n\r\n public get geometry(): CachedGeometry {\r\n assert(undefined !== this._geometry);\r\n return this._geometry;\r\n }\r\n\r\n public get programParams(): ShaderProgramParams {\r\n assert(undefined !== this._programParams);\r\n return this._programParams;\r\n }\r\n\r\n public get target() { return this.programParams.target; }\r\n public get renderPass() { return this.programParams.renderPass; }\r\n public get projectionMatrix() { return this.programParams.projectionMatrix; }\r\n public get isViewCoords() {\r\n return this.programParams.isViewCoords || this.target.currentBranch.forceViewCoords;\r\n }\r\n public get isOverlayPass() { return this.programParams.isOverlayPass; }\r\n public get context() { return this.programParams.context; }\r\n\r\n public init(programParams: ShaderProgramParams, geometry: CachedGeometry) {\r\n this._programParams = programParams;\r\n this._geometry = geometry;\r\n }\r\n}\r\n\r\n/** Defines operation associated with pushing or popping a branch\r\n * @internal\r\n */\r\nexport const enum PushOrPop {\r\n Push,\r\n Pop,\r\n}\r\n\r\n/** Represents a command to be executed within a RenderPass. The most common command is\r\n * to draw a primitive; others involve state changes such as pushing/popping transforms\r\n * and symbology overrides, which require that commands be executed in order.\r\n * @internal\r\n */\r\nexport enum DrawOpCode {\r\n Primitive = \"drawPrimitive\", // eslint-disable-line @typescript-eslint/no-shadow\r\n PushBranch = \"pushBranch\",\r\n PopBranch = \"popBranch\",\r\n PushBatch = \"pushBatch\",\r\n PopBatch = \"popBatch\",\r\n PushState = \"pushState\",\r\n PushClip = \"pushClip\",\r\n PopClip = \"popClip\",\r\n}\r\n\r\n/** @internal */\r\nexport class PopBatchCommand {\r\n public readonly opcode = \"popBatch\";\r\n\r\n private constructor() { }\r\n\r\n public static instance = new PopBatchCommand();\r\n\r\n public execute(exec: ShaderProgramExecutor): void {\r\n exec.target.popBatch();\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class PushBatchCommand {\r\n public readonly opcode = \"pushBatch\";\r\n\r\n public constructor(public readonly batch: Batch) { }\r\n\r\n public execute(exec: ShaderProgramExecutor): void {\r\n exec.target.pushBatch(this.batch);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class PushStateCommand {\r\n public readonly opcode = \"pushState\";\r\n\r\n public constructor(public readonly state: BranchState) { }\r\n\r\n public execute(exec: ShaderProgramExecutor): void {\r\n exec.target.pushState(this.state);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class PushBranchCommand {\r\n public readonly opcode = \"pushBranch\";\r\n\r\n public constructor(public readonly branch: Branch) { }\r\n\r\n public execute(exec: ShaderProgramExecutor): void {\r\n exec.pushBranch(this.branch);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class PopBranchCommand {\r\n public readonly opcode = \"popBranch\";\r\n\r\n private constructor() { }\r\n\r\n public static instance = new PopBranchCommand();\r\n\r\n public execute(exec: ShaderProgramExecutor): void {\r\n exec.popBranch();\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class PushClipCommand {\r\n public readonly opcode = \"pushClip\";\r\n\r\n public constructor(public readonly clip: ClipVolume) { }\r\n\r\n public execute(exec: ShaderProgramExecutor): void {\r\n exec.target.uniforms.branch.clipStack.push(this.clip);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class PopClipCommand {\r\n public readonly opcode = \"popClip\";\r\n\r\n private constructor() { }\r\n\r\n public static instance = new PopClipCommand();\r\n\r\n public execute(exec: ShaderProgramExecutor): void {\r\n exec.target.uniforms.branch.clipStack.pop();\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class PrimitiveCommand {\r\n public readonly opcode = \"drawPrimitive\";\r\n\r\n public constructor(public readonly primitive: Primitive) { }\r\n\r\n private static readonly _scratchTechniqueFlags = new TechniqueFlags();\r\n\r\n public execute(exec: ShaderProgramExecutor): void {\r\n if (exec.target.isGeometryOutsideActiveVolume(this.primitive.cachedGeometry))\r\n return;\r\n\r\n const techniqueId = this.primitive.techniqueId;\r\n if (TechniqueId.Invalid === techniqueId)\r\n return;\r\n\r\n const target = exec.target;\r\n const thematic = this.primitive.cachedGeometry.supportsThematicDisplay && target.wantThematicDisplay;\r\n const shadowable = (techniqueId === TechniqueId.Surface || techniqueId === TechniqueId.RealityMesh) && target.solarShadowMap.isReady && target.currentViewFlags.shadows && !thematic;\r\n const isShadowable = shadowable ? IsShadowable.Yes : IsShadowable.No;\r\n let isThematic = thematic ? IsThematic.Yes : IsThematic.No;\r\n const isClassified = (undefined !== target.currentPlanarClassifierOrDrape || undefined !== target.activeVolumeClassifierTexture) ? IsClassified.Yes : IsClassified.No;\r\n const isInstanced = this.primitive.isInstanced ? IsInstanced.Yes : IsInstanced.No;\r\n const isAnimated = this.primitive.hasAnimation ? IsAnimated.Yes : IsAnimated.No;\r\n\r\n // Point clouds do not support hillshade or slope mode for thematic display.\r\n if (isThematic && (undefined !== this.primitive.cachedGeometry.asPointCloud) && (target.uniforms.thematic.wantSlopeMode || target.uniforms.thematic.wantHillShadeMode))\r\n isThematic = IsThematic.No;\r\n\r\n const wiremesh = target.currentViewFlags.wiremesh && (techniqueId === TechniqueId.Surface || techniqueId === TechniqueId.RealityMesh);\r\n const isWiremesh = wiremesh ? IsWiremesh.Yes : IsWiremesh.No;\r\n const flags = PrimitiveCommand._scratchTechniqueFlags;\r\n const posType = this.primitive.cachedGeometry.usesQuantizedPositions ? \"quantized\" : \"unquantized\";\r\n const enableAtmosphere = target.wantAtmosphere ? EnableAtmosphere.Yes : EnableAtmosphere.No;\r\n flags.init(target, exec.renderPass, isInstanced, isAnimated, isClassified, isShadowable, isThematic, isWiremesh, posType, enableAtmosphere);\r\n\r\n const technique = target.techniques.getTechnique(techniqueId);\r\n const program = technique.getShader(flags);\r\n\r\n if (exec.setProgram(program))\r\n exec.target.compositor.drawPrimitive(this.primitive, exec, program.outputsToPick);\r\n }\r\n\r\n public get hasFeatures(): boolean { return this.primitive.hasFeatures; }\r\n public get renderOrder(): RenderOrder { return this.primitive.renderOrder; }\r\n\r\n public getPass(target: Target): Pass {\r\n return this.primitive.getPass(target);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport type PushCommand = PushBranchCommand | PushBatchCommand | PushStateCommand | PushClipCommand;\r\n/** @internal */\r\nexport type PopCommand = PopBranchCommand | PopBatchCommand | PopClipCommand;\r\n/** @internal */\r\nexport type DrawCommand = PushCommand | PopCommand | PrimitiveCommand;\r\n\r\n/** For a single RenderPass, an ordered list of commands to be executed during that pass.\r\n * @internal\r\n */\r\nexport type DrawCommands = DrawCommand[];\r\n\r\n/** Extracts the commands for rendering the flashed classifier (if any) from the by-index set of volume classifier commands.\r\n * NB: Cmds will be sets of some pushes, a primitive, and then some pops (equal to number of pushes).\r\n * The primitive should be right in the middle of a set. We need to find the set which matches the flashID.\r\n * @internal\r\n */\r\nexport function extractFlashedVolumeClassifierCommands(flashedId: Id64String, cmds: DrawCommands, numCmdsPerClassifier: number): DrawCommands | undefined {\r\n if (!Id64.isValid(flashedId) || 0 === numCmdsPerClassifier)\r\n return undefined;\r\n\r\n const firstPrim = (numCmdsPerClassifier - 1) / 2;\r\n for (let i = firstPrim; i < cmds.length; i += numCmdsPerClassifier) {\r\n assert(\"drawPrimitive\" === cmds[i].opcode, \"Command list not configured as expected.\");\r\n const pc: PrimitiveCommand = cmds[i] as PrimitiveCommand;\r\n const surface = pc.primitive.cachedGeometry.asSurface;\r\n if (undefined !== surface && undefined !== surface.mesh.uniformFeatureId) {\r\n let j = i - 1;\r\n while (j >= 0 && \"pushBatch\" !== cmds[j].opcode) // Find batch for this primitive\r\n j--;\r\n if (j < 0)\r\n continue;\r\n\r\n const pushBatch = cmds[j] as PushBatchCommand;\r\n const elemId = pushBatch.batch.featureTable.findElementId(surface.mesh.uniformFeatureId);\r\n if (undefined !== elemId && elemId === flashedId) {\r\n return cmds.slice(i - firstPrim, i + firstPrim + 1);\r\n }\r\n }\r\n }\r\n\r\n return undefined;\r\n}\r\n\r\nconst scratchFeature = PackedFeature.create();\r\n\r\n/** @internal */\r\nexport function extractHilitedVolumeClassifierCommands(hilites: Hilites, cmds: DrawCommands): DrawCommands {\r\n // TODO: This could really be done at the time the HiliteClassification render pass commands are being generated\r\n // by just not putting the ones which are not hilited into the ClassificationHilite command list.\r\n const result: DrawCommand[] = [];\r\n\r\n let batch;\r\n for (const cmd of cmds) {\r\n switch (cmd.opcode) {\r\n case \"popBranch\":\r\n if (result.length > 0 && \"pushBranch\" === result[result.length - 1].opcode) {\r\n result.pop(); // remove empty push/pop pairs\r\n continue;\r\n }\r\n break;\r\n case \"popBatch\":\r\n batch = undefined;\r\n if (result.length > 0 && \"pushBatch\" === result[result.length - 1].opcode) {\r\n result.pop(); // remove empty push/pop pairs\r\n continue;\r\n }\r\n break;\r\n case \"pushBatch\":\r\n batch = cmd.batch;\r\n break;\r\n case \"drawPrimitive\":\r\n if (undefined !== batch) {\r\n // Skip any primitives that are not hilited.\r\n const surface = cmd.primitive.cachedGeometry.asSurface;\r\n if (undefined === surface || undefined === surface.mesh.uniformFeatureId)\r\n continue;\r\n\r\n const feature = batch.featureTable.getPackedFeature(surface.mesh.uniformFeatureId, scratchFeature);\r\n if (undefined === feature || !isFeatureHilited(feature, hilites, hilites.models.hasId(Id64.fromUint32PairObject(feature.modelId))))\r\n continue;\r\n\r\n break;\r\n }\r\n }\r\n\r\n result.push(cmd);\r\n }\r\n\r\n return result;\r\n}\r\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":"AAAA;;;+FAG+F;AAE/F;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEhH,OAAO,EAAe,WAAW,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAE1B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AACxF,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,MAAM,MAAM;IAED;IACA;IACA;IACA;IACA;IAEA;IACA;IACA;IACA;IACA;IAEA;IACA;IACA;IACA;IAhBT,YACS,WAA2B,EAC3B,WAA2B,EAC3B,WAA2B,EAC3B,WAA2B,EAC3B,WAA2B,EAE3B,WAAyB,EACzB,WAAyB,EACzB,WAAyB,EACzB,WAAyB,EACzB,WAAyB,EAEzB,gBAAuC,EACvC,eAAqH,EACrH,WAA4E,EAC5E,UAA2B;QAf3B,gBAAW,GAAX,WAAW,CAAgB;QAC3B,gBAAW,GAAX,WAAW,CAAgB;QAC3B,gBAAW,GAAX,WAAW,CAAgB;QAC3B,gBAAW,GAAX,WAAW,CAAgB;QAC3B,gBAAW,GAAX,WAAW,CAAgB;QAE3B,gBAAW,GAAX,WAAW,CAAc;QACzB,gBAAW,GAAX,WAAW,CAAc;QACzB,gBAAW,GAAX,WAAW,CAAc;QACzB,gBAAW,GAAX,WAAW,CAAc;QACzB,gBAAW,GAAX,WAAW,CAAc;QAEzB,qBAAgB,GAAhB,gBAAgB,CAAuB;QACvC,oBAAe,GAAf,eAAe,CAAsG;QACrH,gBAAW,GAAX,WAAW,CAAiE;QAC5E,eAAU,GAAV,UAAU,CAAiB;IACpC,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,KAAa,EAAE,MAAc;QAChD,MAAM,WAAW,GAAG,aAAa,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAC/H,MAAM,WAAW,GAAG,aAAa,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACzI,MAAM,WAAW,GAAG,aAAa,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACzI,MAAM,WAAW,GAAG,aAAa,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACzI,MAAM,WAAW,GAAG,aAAa,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACzI,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;YAClJ,OAAO,CAAC,WAAW,CAAC,CAAC;YACrB,OAAO,CAAC,WAAW,CAAC,CAAC;YACrB,OAAO,CAAC,WAAW,CAAC,CAAC;YACrB,OAAO,CAAC,WAAW,CAAC,CAAC;YACrB,OAAO,CAAC,WAAW,CAAC,CAAC;YACrB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QACtD,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QACtD,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QACtD,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QACtD,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QACtD,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;YAClJ,OAAO,CAAC,WAAW,CAAC,CAAC;YACrB,OAAO,CAAC,WAAW,CAAC,CAAC;YACrB,OAAO,CAAC,WAAW,CAAC,CAAC;YACrB,OAAO,CAAC,WAAW,CAAC,CAAC;YACrB,OAAO,CAAC,WAAW,CAAC,CAAC;YACrB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,MAAM,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IACtJ,CAAC;IAED,IAAW,UAAU;QACnB,OAAO,SAAS,KAAK,IAAI,CAAC,WAAW;eAChC,SAAS,KAAK,IAAI,CAAC,WAAW;eAC9B,SAAS,KAAK,IAAI,CAAC,WAAW;eAC9B,SAAS,KAAK,IAAI,CAAC,WAAW;eAC9B,SAAS,KAAK,IAAI,CAAC,WAAW;eAC9B,SAAS,KAAK,IAAI,CAAC,WAAW;eAC9B,SAAS,KAAK,IAAI,CAAC,WAAW;eAC9B,SAAS,KAAK,IAAI,CAAC,WAAW;eAC9B,SAAS,KAAK,IAAI,CAAC,WAAW;eAC9B,SAAS,KAAK,IAAI,CAAC,WAAW;eAC9B,SAAS,KAAK,IAAI,CAAC,gBAAgB;eACnC,SAAS,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;eACvC,SAAS,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;eACvC,SAAS,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;eACvC,SAAS,KAAK,IAAI,CAAC,eAAe;eAClC,SAAS,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;eACnC,SAAS,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;eACnC,SAAS,KAAK,IAAI,CAAC,WAAW;eAC9B,SAAS,KAAK,IAAI,CAAC,UAAU,CAAC;IACrC,CAAC;IAEM,CAAC,MAAM,CAAC,OAAO,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACvD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACnC,CAAC;QACD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC/B,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC;CACF;AAED,gBAAgB;AAChB,MAAM,CAAN,IAAY,OAAyB;AAArC,WAAY,OAAO;IAAG,mCAAG,CAAA;IAAE,iCAAE,CAAA;IAAE,qCAAI,CAAA;AAAC,CAAC,EAAzB,OAAO,KAAP,OAAO,QAAkB;AAWrC,MAAM,OAAO,eAAe;IAClB,OAAO,CAAU;IACjB,MAAM,CAAS;IACf,OAAO,CAAS;IAChB,MAAM,CAAe,CAAE,sFAAsF;IAC7G,YAAY,CAAe;IAC3B,aAAa,CAAsE;IAC1E,OAAO,CAAS;IAEzB,SAAS;QACf,IAAI,SAAS,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACxD,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,YAAmB,MAAc;QAC/B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;IACxC,CAAC;IAEM,IAAI,CAAC,KAAa,EAAE,MAAc,EAAE,KAAkB;QAC3D,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,mEAAmE;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,iBAAiB,CAAC,KAA8B;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;YACzB,wBAAwB,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACpD,wBAAwB,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACpD,wBAAwB,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACpD,wBAAwB,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACpD,wBAAwB,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YAEpD,yBAAyB,CAAC,MAAM,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;YAC1D,yBAAyB,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC9D,yBAAyB,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC9D,yBAAyB,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC9D,yBAAyB,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC1D,yBAAyB,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC1D,yBAAyB,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,IAAW,UAAU,KAAc,OAAO,SAAS,KAAK,IAAI,CAAC,OAAO,IAAI,SAAS,KAAK,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnG,CAAC,MAAM,CAAC,OAAO,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACjD,CAAC;IAEM,KAAK;QACV,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;IACzB,CAAC;IAED;;OAEG;IACI,IAAI,CAAC,SAAwB;QAClC,IAAI,SAAS,KAAK,SAAS,CAAC,QAAQ,IAAI,SAAS,KAAK,IAAI,CAAC,MAAM,IAAI,SAAS,KAAK,SAAS,CAAC,MAAM;YACjG,OAAO,KAAK,CAAC;QAEf,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,KAAK,MAAM;YACtB,OAAO,KAAK,CAAC;QAEf,yFAAyF;QACzF,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC9E,IAAI,SAAS,KAAK,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,aAAa,EAAE,GAAG,KAAK,SAAS,CAAC,GAAG;YAC9E,CAAC,SAAS,CAAC,YAAY,IAAI,IAAI,CAAC,aAAa,EAAE,KAAK,KAAK,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5E,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/C,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;YAC/B,MAAM,OAAO,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACjD,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,SAAS,EACxE,SAAS,CAAC,YAAY,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;YACnH,IAAI,SAAS,KAAK,IAAI,CAAC,YAAY;gBACjC,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QACjD,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;QAC5C,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAEvD,6EAA6E;QAC7E,IAAI,SAAS,CAAC,OAAO,KAAK,OAAO,CAAC,EAAE,EAAE,CAAC;YACrC,8DAA8D;YAC9D,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE;gBAC1D,IAAI,MAAM,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;oBAC1C,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC;oBAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAO,CAAC,SAAS,EAAG,CAAC;oBACtC,MAAM,CAAC,gBAAgB,GAAG,oBAAoB,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAG,EAAE,GAAG,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC9G,CAAC;gBACD,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAiB,CAAC,CAAC;gBACrE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC,CAAC,eAAe;YACtB,+EAA+E;YAC/E,MAAM,UAAU,GAAkB,CAAC,MAAM,CAAC,WAAY,EAAE,MAAM,CAAC,WAAY,EAAE,MAAM,CAAC,WAAY,CAAC,CAAC;YAClG,IAAI,MAAM,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBACzC,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC;gBAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC;gBAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC;gBAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAG,CAAC;gBACrC,MAAM,CAAC,eAAe,GAAG,CAAC,mBAAmB,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC;oBAC7G,mBAAmB,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAI,CAAC,KAAK,EAAE,GAAI,CAAC,MAAM,CAAC;oBACrF,mBAAmB,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAI,CAAC,KAAK,EAAE,GAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACzF,CAAC;YAED,MAAM,WAAW,GAAkB,CAAC,MAAM,CAAC,WAAY,EAAE,MAAM,CAAC,WAAY,CAAC,CAAC;YAC9E,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBACrC,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC;gBAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC;gBAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAG,CAAC;gBACrC,MAAM,CAAC,WAAW,GAAG,CAAC,iBAAiB,CAAC,cAAc,CAAC,GAAI,CAAC,SAAS,EAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAI,CAAC,KAAK,EAAE,GAAI,CAAC,MAAM,CAAC;oBAC1G,iBAAiB,CAAC,cAAc,CAAC,GAAI,CAAC,SAAS,EAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAI,CAAC,KAAK,EAAE,GAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACxF,CAAC;YAED,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;YACnC,6GAA6G;YAC7G,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;gBAC3B,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE;oBAC/C,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;oBACzC,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,+CAA+C;oBAC/F,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,eAAgB,CAAC,CAAC,CAAE,CAAC,CAAC;oBACxE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACvC,CAAC,CAAC,CAAC;gBAEH,IAAI,SAAS,CAAC,SAAS,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBACjC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE;wBACpD,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,WAAY,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,CAAC;wBACxE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACvC,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACD,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB;YAEjE,uCAAuC;YACvC,MAAM,IAAI,GAAG,MAAM,CAAC,WAAY,CAAC,SAAS,EAAE,CAAC;YAC7C,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,WAAY,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,WAAY,CAAC,SAAS,EAAE,CAAC;YACrG,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,WAAY,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,WAAY,CAAC,SAAS,EAAE,CAAC;YACrG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE;gBAC1D,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBACpC,MAAM,CAAC,UAAU,GAAG,cAAc,CAAC,cAAc,CAAC,IAAK,EAAE,IAAK,EAAE,IAAK,CAAC,CAAC;gBACzE,CAAC;qBAAM,CAAC;oBACN,IAAI,MAAM,CAAC,UAAU,CAAC,aAAa,KAAK,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,aAAa,KAAK,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;wBACrI,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;wBAC3B,MAAM,CAAC,UAAU,GAAG,cAAc,CAAC,cAAc,CAAC,IAAK,EAAE,IAAK,EAAE,IAAK,CAAC,CAAC;oBACzE,CAAC;gBACH,CAAC;gBACD,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,UAAW,CAAC,CAAC;gBAC/D,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n/** @packageDocumentation\r\n * @module WebGL\r\n */\r\n\r\nimport { assert, dispose } from \"@itwin/core-bentley\";\r\nimport { RenderMemory } from \"../../../render/RenderMemory\";\r\nimport { EDLCalcBasicGeometry, EDLCalcFullGeometry, EDLFilterGeometry, EDLMixGeometry } from \"./CachedGeometry\";\r\nimport { WebGLDisposable } from \"./Disposable\";\r\nimport { DepthBuffer, FrameBuffer } from \"./FrameBuffer\";\r\nimport { GL } from \"./GL\";\r\nimport { RenderBufferMultiSample } from \"./RenderBuffer\";\r\nimport { RenderState } from \"./RenderState\";\r\nimport { collectGeometryStatistics, collectTextureStatistics } from \"./SceneCompositor\";\r\nimport { getDrawParams } from \"./ScratchDrawParams\";\r\nimport { System } from \"./System\";\r\nimport { Target } from \"./Target\";\r\nimport { TextureHandle } from \"./Texture\";\r\n\r\nclass Bundle implements WebGLDisposable {\r\n private constructor(\r\n public edlCalcTex1?: TextureHandle,\r\n public edlCalcTex2?: TextureHandle,\r\n public edlCalcTex4?: TextureHandle,\r\n public edlFiltTex2?: TextureHandle,\r\n public edlFiltTex4?: TextureHandle,\r\n\r\n public edlCalcFbo1?: FrameBuffer,\r\n public edlCalcFbo2?: FrameBuffer,\r\n public edlCalcFbo4?: FrameBuffer,\r\n public edlFiltFbo2?: FrameBuffer,\r\n public edlFiltFbo4?: FrameBuffer,\r\n\r\n public edlCalcBasicGeom?: EDLCalcBasicGeometry,\r\n public edlCalcFullGeom?: [EDLCalcFullGeometry | undefined, EDLCalcFullGeometry | undefined, EDLCalcFullGeometry | undefined],\r\n public edlFiltGeom?: [EDLFilterGeometry | undefined, EDLFilterGeometry | undefined],\r\n public edlMixGeom?: EDLMixGeometry) {\r\n }\r\n\r\n public static create(width: number, height: number): Bundle | undefined {\r\n const edlCalcTex1 = TextureHandle.createForAttachment(width, height, GL.Texture.Format.Rgba, GL.Texture.DataType.UnsignedByte);\r\n const edlCalcTex2 = TextureHandle.createForAttachment(width >> 1, height >> 1, GL.Texture.Format.Rgba, GL.Texture.DataType.UnsignedByte);\r\n const edlCalcTex4 = TextureHandle.createForAttachment(width >> 2, height >> 2, GL.Texture.Format.Rgba, GL.Texture.DataType.UnsignedByte);\r\n const edlFiltTex2 = TextureHandle.createForAttachment(width >> 1, height >> 1, GL.Texture.Format.Rgba, GL.Texture.DataType.UnsignedByte);\r\n const edlFiltTex4 = TextureHandle.createForAttachment(width >> 2, height >> 2, GL.Texture.Format.Rgba, GL.Texture.DataType.UnsignedByte);\r\n if (undefined === edlCalcTex1 || undefined === edlCalcTex2 || undefined === edlCalcTex4 || undefined === edlFiltTex2 || undefined === edlFiltTex4) {\r\n dispose(edlCalcTex1);\r\n dispose(edlCalcTex2);\r\n dispose(edlCalcTex4);\r\n dispose(edlFiltTex2);\r\n dispose(edlFiltTex4);\r\n return undefined;\r\n }\r\n const edlCalcFbo1 = FrameBuffer.create([edlCalcTex1]);\r\n const edlCalcFbo2 = FrameBuffer.create([edlCalcTex2]);\r\n const edlCalcFbo4 = FrameBuffer.create([edlCalcTex4]);\r\n const edlFiltFbo2 = FrameBuffer.create([edlFiltTex2]);\r\n const edlFiltFbo4 = FrameBuffer.create([edlFiltTex4]);\r\n if (undefined === edlCalcFbo1 || undefined === edlCalcFbo2 || undefined === edlCalcFbo4 || undefined === edlFiltFbo2 || undefined === edlFiltFbo4) {\r\n dispose(edlCalcFbo1);\r\n dispose(edlCalcFbo2);\r\n dispose(edlCalcFbo4);\r\n dispose(edlFiltFbo2);\r\n dispose(edlFiltFbo4);\r\n return undefined;\r\n }\r\n return new Bundle(edlCalcTex1, edlCalcTex2, edlCalcTex4, edlFiltTex2, edlFiltTex4, edlCalcFbo1, edlCalcFbo2, edlCalcFbo4, edlFiltFbo2, edlFiltFbo4);\r\n }\r\n\r\n public get isDisposed(): boolean {\r\n return undefined === this.edlCalcTex1\r\n && undefined === this.edlCalcTex2\r\n && undefined === this.edlCalcTex4\r\n && undefined === this.edlFiltTex2\r\n && undefined === this.edlFiltTex4\r\n && undefined === this.edlCalcFbo1\r\n && undefined === this.edlCalcFbo2\r\n && undefined === this.edlCalcFbo4\r\n && undefined === this.edlFiltFbo2\r\n && undefined === this.edlFiltFbo4\r\n && undefined === this.edlCalcBasicGeom\r\n && undefined === this.edlCalcFullGeom?.[0]\r\n && undefined === this.edlCalcFullGeom?.[1]\r\n && undefined === this.edlCalcFullGeom?.[2]\r\n && undefined === this.edlCalcFullGeom\r\n && undefined === this.edlFiltGeom?.[0]\r\n && undefined === this.edlFiltGeom?.[1]\r\n && undefined === this.edlFiltGeom\r\n && undefined === this.edlMixGeom;\r\n }\r\n\r\n public [Symbol.dispose](): void {\r\n this.edlCalcTex1 = dispose(this.edlCalcTex1);\r\n this.edlCalcTex2 = dispose(this.edlCalcTex2);\r\n this.edlCalcTex4 = dispose(this.edlCalcTex4);\r\n this.edlFiltTex2 = dispose(this.edlFiltTex2);\r\n this.edlFiltTex4 = dispose(this.edlFiltTex4);\r\n this.edlCalcFbo1 = dispose(this.edlCalcFbo1);\r\n this.edlCalcFbo2 = dispose(this.edlCalcFbo2);\r\n this.edlCalcFbo4 = dispose(this.edlCalcFbo4);\r\n this.edlFiltFbo2 = dispose(this.edlFiltFbo2);\r\n this.edlFiltFbo4 = dispose(this.edlFiltFbo4);\r\n this.edlCalcBasicGeom = dispose(this.edlCalcBasicGeom);\r\n if (this.edlCalcFullGeom) {\r\n this.edlCalcFullGeom[0] = dispose(this.edlCalcFullGeom?.[0]);\r\n this.edlCalcFullGeom[1] = dispose(this.edlCalcFullGeom?.[1]);\r\n this.edlCalcFullGeom[2] = dispose(this.edlCalcFullGeom?.[2]);\r\n this.edlCalcFullGeom = undefined;\r\n }\r\n if (this.edlFiltGeom) {\r\n this.edlFiltGeom[0] = dispose(this.edlFiltGeom?.[0]);\r\n this.edlFiltGeom[1] = dispose(this.edlFiltGeom?.[1]);\r\n this.edlFiltGeom = undefined;\r\n }\r\n this.edlMixGeom = dispose(this.edlMixGeom);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport enum EDLMode { Off, On, Full }\r\n\r\n/** @internal */\r\nexport interface EDLDrawParams {\r\n inputTex: TextureHandle; // input to calc EDL from\r\n curFbo: FrameBuffer; // output fbo to get color texture from for EDL to put result in\r\n edlMode: EDLMode;\r\n edlFilter: boolean; // applies to Full mode only\r\n useMsBuffers: boolean;\r\n}\r\n\r\nexport class EyeDomeLighting implements RenderMemory.Consumer, WebGLDisposable {\r\n private _bundle?: Bundle;\r\n private _width: number;\r\n private _height: number;\r\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\r\n private _edlFinalFbo?: FrameBuffer;\r\n private _edlFinalBufs?: { tex: TextureHandle, msBuf: RenderBufferMultiSample | undefined };\r\n private readonly _target: Target;\r\n\r\n private getBundle(): Bundle | undefined {\r\n if (undefined === this._bundle) {\r\n this._bundle = Bundle.create(this._width, this._height);\r\n assert(undefined !== this._bundle);\r\n }\r\n return this._bundle;\r\n }\r\n\r\n public constructor(target: Target) {\r\n this._target = target;\r\n this._width = target.viewRect.width;\r\n this._height = target.viewRect.height;\r\n }\r\n\r\n public init(width: number, height: number, depth: DepthBuffer): boolean {\r\n this._width = width;\r\n this._height = height;\r\n this._depth = depth;\r\n // don't create buffers until we know we will use them (first draw)\r\n return true;\r\n }\r\n\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n const bundle = this._bundle;\r\n if (undefined !== bundle) {\r\n collectTextureStatistics(bundle.edlCalcTex1, stats);\r\n collectTextureStatistics(bundle.edlCalcTex2, stats);\r\n collectTextureStatistics(bundle.edlCalcTex4, stats);\r\n collectTextureStatistics(bundle.edlFiltTex2, stats);\r\n collectTextureStatistics(bundle.edlFiltTex4, stats);\r\n\r\n collectGeometryStatistics(bundle.edlCalcBasicGeom, stats);\r\n collectGeometryStatistics(bundle.edlCalcFullGeom?.[0], stats);\r\n collectGeometryStatistics(bundle.edlCalcFullGeom?.[1], stats);\r\n collectGeometryStatistics(bundle.edlCalcFullGeom?.[2], stats);\r\n collectGeometryStatistics(bundle.edlFiltGeom?.[0], stats);\r\n collectGeometryStatistics(bundle.edlFiltGeom?.[1], stats);\r\n collectGeometryStatistics(bundle.edlMixGeom, stats);\r\n }\r\n }\r\n\r\n public get isDisposed(): boolean { return undefined === this._bundle && undefined === this._edlFinalFbo; }\r\n\r\n public [Symbol.dispose]() {\r\n this._bundle = dispose(this._bundle);\r\n this._edlFinalFbo = dispose(this._edlFinalFbo);\r\n }\r\n\r\n public reset() {\r\n this[Symbol.dispose]();\r\n }\r\n\r\n /** calculate EyeDomeLighting at specified quality using screen space shaders\r\n * returns true if succeeds\r\n */\r\n public draw(edlParams: EDLDrawParams): boolean {\r\n if (undefined === edlParams.inputTex || undefined === this._depth || undefined === edlParams.curFbo)\r\n return false;\r\n\r\n const bundle = this.getBundle();\r\n if (undefined === bundle)\r\n return false;\r\n\r\n // NB: have to test and create MS buffer as well if useMsBuffers, not outputting to depth\r\n const finalBufs = edlParams.curFbo.getColorTargets(edlParams.useMsBuffers, 0);\r\n if (undefined === this._edlFinalFbo || this._edlFinalBufs?.tex !== finalBufs.tex ||\r\n (edlParams.useMsBuffers && this._edlFinalBufs?.msBuf !== finalBufs.msBuf)) {\r\n this._edlFinalFbo = dispose(this._edlFinalFbo);\r\n this._edlFinalBufs = finalBufs;\r\n const filters = [GL.MultiSampling.Filter.Linear];\r\n this._edlFinalFbo = FrameBuffer.create([this._edlFinalBufs.tex], undefined,\r\n edlParams.useMsBuffers && this._edlFinalBufs.msBuf ? [this._edlFinalBufs.msBuf] : undefined, filters, undefined);\r\n if (undefined === this._edlFinalFbo)\r\n return false;\r\n }\r\n\r\n const fbStack = System.instance.frameBufferStack;\r\n const useMsBuffers = edlParams.useMsBuffers;\r\n System.instance.applyRenderState(RenderState.defaults);\r\n\r\n // ###TODO: should radius be (optionally?) voxel based instead of pixel here?\r\n if (edlParams.edlMode === EDLMode.On) {\r\n // draw using single pass version (still 8 samples, full size)\r\n fbStack.execute(this._edlFinalFbo, true, useMsBuffers, () => {\r\n if (bundle.edlCalcBasicGeom === undefined) {\r\n const ct1 = edlParams.inputTex;\r\n const ctd = this._depth!.getHandle()!;\r\n bundle.edlCalcBasicGeom = EDLCalcBasicGeometry.createGeometry(ct1.getHandle()!, ctd, ct1.width, ct1.height);\r\n }\r\n const params = getDrawParams(this._target, bundle.edlCalcBasicGeom!);\r\n this._target.techniques.draw(params);\r\n });\r\n } else { // EDLMode.Full\r\n // draw with full method based on original paper using full, 1/2, and 1/4 sizes\r\n const edlCalc2FB: FrameBuffer[] = [bundle.edlCalcFbo1!, bundle.edlCalcFbo2!, bundle.edlCalcFbo4!];\r\n if (bundle.edlCalcFullGeom === undefined) {\r\n const ct1 = edlParams.inputTex;\r\n const ct2 = bundle.edlCalcTex2;\r\n const ct4 = bundle.edlCalcTex4;\r\n const ctd = this._depth.getHandle()!;\r\n bundle.edlCalcFullGeom = [EDLCalcFullGeometry.createGeometry(ct1.getHandle()!, ctd, 1, ct1.width, ct1.height),\r\n EDLCalcFullGeometry.createGeometry(ct1.getHandle()!, ctd, 2, ct2!.width, ct2!.height),\r\n EDLCalcFullGeometry.createGeometry(ct1.getHandle()!, ctd, 4, ct4!.width, ct4!.height)];\r\n }\r\n\r\n const edlFiltFbos: FrameBuffer[] = [bundle.edlFiltFbo2!, bundle.edlFiltFbo4!];\r\n if (bundle.edlFiltGeom === undefined) {\r\n const ft2 = bundle.edlCalcTex2;\r\n const ft4 = bundle.edlCalcTex4;\r\n const ftd = this._depth.getHandle()!;\r\n bundle.edlFiltGeom = [EDLFilterGeometry.createGeometry(ft2!.getHandle()!, ftd, 2, ft2!.width, ft2!.height),\r\n EDLFilterGeometry.createGeometry(ft4!.getHandle()!, ftd, 4, ft4!.width, ft4!.height)];\r\n }\r\n\r\n const gl = System.instance.context;\r\n // Loop through the 3 sizes calculating an edl buffer, and if not first size, then optionally filtering those\r\n for (let i = 0; i < 3; ++i) {\r\n fbStack.execute(edlCalc2FB[i], true, false, () => {\r\n const colTex = edlCalc2FB[i].getColor(0);\r\n gl.viewport(0, 0, colTex.width, colTex.height); // have to set viewport to current texture size\r\n const params = getDrawParams(this._target, bundle.edlCalcFullGeom![i]!);\r\n this._target.techniques.draw(params);\r\n });\r\n\r\n if (edlParams.edlFilter && i > 0) {\r\n fbStack.execute(edlFiltFbos[i - 1], true, false, () => {\r\n const params = getDrawParams(this._target, bundle.edlFiltGeom![i - 1]!);\r\n this._target.techniques.draw(params);\r\n });\r\n }\r\n }\r\n gl.viewport(0, 0, this._width, this._height); // Restore viewport\r\n\r\n // Now combine the 3 results and output\r\n const tex1 = bundle.edlCalcTex1!.getHandle();\r\n const tex2 = edlParams.edlFilter ? bundle.edlFiltTex2!.getHandle() : bundle.edlCalcTex2!.getHandle();\r\n const tex4 = edlParams.edlFilter ? bundle.edlFiltTex4!.getHandle() : bundle.edlCalcTex4!.getHandle();\r\n fbStack.execute(this._edlFinalFbo, true, useMsBuffers, () => {\r\n if (bundle.edlMixGeom === undefined) {\r\n bundle.edlMixGeom = EDLMixGeometry.createGeometry(tex1!, tex2!, tex4!);\r\n } else {\r\n if (bundle.edlMixGeom.colorTexture1 !== tex1 || bundle.edlMixGeom.colorTexture2 !== tex2 || bundle.edlMixGeom.colorTexture4 !== tex4) {\r\n dispose(bundle.edlMixGeom);\r\n bundle.edlMixGeom = EDLMixGeometry.createGeometry(tex1!, tex2!, tex4!);\r\n }\r\n }\r\n const params = getDrawParams(this._target, bundle.edlMixGeom!);\r\n this._target.techniques.draw(params);\r\n });\r\n }\r\n return true;\r\n }\r\n}\r\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":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module WebGL\r\n */\r\n\r\nimport { assert, dispose } from \"@itwin/core-bentley\";\r\nimport { EdgeAppearanceOverrides, RenderMode } from \"@itwin/core-common\";\r\nimport { RenderMemory } from \"../../../render/RenderMemory\";\r\nimport { AttributeMap } from \"./AttributeMap\";\r\nimport { PolylineBuffers } from \"./CachedGeometry\";\r\nimport { ColorInfo } from \"./ColorInfo\";\r\nimport { ShaderProgramParams } from \"./DrawCommand\";\r\nimport { GL } from \"./GL\";\r\nimport { BufferHandle, BufferParameters, BuffersContainer } from \"./AttributeBuffers\";\r\nimport { RenderOrder } from \"./RenderFlags\";\r\nimport { System } from \"./System\";\r\nimport { Target } from \"./Target\";\r\nimport { TechniqueId } from \"./TechniqueId\";\r\nimport { MeshData } from \"./MeshData\";\r\nimport { MeshGeometry } from \"./MeshGeometry\";\r\nimport { PolylineEdgeGroup, SegmentEdgeParams, SilhouetteParams } from \"../../../common/internal/render/EdgeParams\";\r\nimport { lineCodeFromLinePixels } from \"../../../common/internal/render/LineCode\";\r\n\r\n/** @internal */\r\nexport class EdgeGeometry extends MeshGeometry {\r\n public readonly buffers: BuffersContainer;\r\n protected readonly _indices: BufferHandle;\r\n protected readonly _endPointAndQuadIndices: BufferHandle;\r\n\r\n public get lutBuffers() { return this.buffers; }\r\n public override get asSurface() { return undefined; }\r\n public override get asEdge() { return this; }\r\n public override get asSilhouette(): SilhouetteEdgeGeometry | undefined { return undefined; }\r\n\r\n public static create(mesh: MeshData, edges: SegmentEdgeParams): EdgeGeometry | undefined {\r\n const indexBuffer = BufferHandle.createArrayBuffer(edges.indices.data);\r\n const endPointBuffer = BufferHandle.createArrayBuffer(edges.endPointAndQuadIndices);\r\n return undefined !== indexBuffer && undefined !== endPointBuffer ? new EdgeGeometry(indexBuffer, endPointBuffer, edges.indices.length, mesh) : undefined;\r\n }\r\n\r\n public get isDisposed(): boolean {\r\n return this.buffers.isDisposed\r\n && this._indices.isDisposed\r\n && this._endPointAndQuadIndices.isDisposed;\r\n }\r\n\r\n public [Symbol.dispose]() {\r\n dispose(this.buffers);\r\n dispose(this._indices);\r\n dispose(this._endPointAndQuadIndices);\r\n }\r\n\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n stats.addVisibleEdges(this._indices.bytesUsed + this._endPointAndQuadIndices.bytesUsed);\r\n }\r\n\r\n protected _draw(numInstances: number, instanceBuffersContainer?: BuffersContainer): void {\r\n const bufs = instanceBuffersContainer !== undefined ? instanceBuffersContainer : this.buffers;\r\n\r\n bufs.bind();\r\n System.instance.drawArrays(GL.PrimitiveType.Triangles, 0, this._numIndices, numInstances);\r\n bufs.unbind();\r\n }\r\n\r\n protected _wantWoWReversal(_target: Target): boolean { return true; }\r\n protected override _getLineCode(params: ShaderProgramParams): number { return this.computeEdgeLineCode(params); }\r\n public get techniqueId(): TechniqueId { return TechniqueId.Edge; }\r\n public override getPass(target: Target) { return this.computeEdgePass(target); }\r\n public get renderOrder(): RenderOrder { return this.isPlanar ? RenderOrder.PlanarEdge : RenderOrder.Edge; }\r\n public override getColor(target: Target): ColorInfo { return this.computeEdgeColor(target); }\r\n public get endPointAndQuadIndices(): BufferHandle { return this._endPointAndQuadIndices; }\r\n public override wantMonochrome(target: Target): boolean {\r\n return target.currentViewFlags.renderMode === RenderMode.Wireframe;\r\n }\r\n\r\n protected constructor(indices: BufferHandle, endPointAndQuadsIndices: BufferHandle, numIndices: number, mesh: MeshData) {\r\n super(mesh, numIndices);\r\n this.buffers = BuffersContainer.create();\r\n const attrPos = AttributeMap.findAttribute(\"a_pos\", TechniqueId.Edge, false);\r\n const attrEndPointAndQuadIndices = AttributeMap.findAttribute(\"a_endPointAndQuadIndices\", TechniqueId.Edge, false);\r\n assert(attrPos !== undefined);\r\n assert(attrEndPointAndQuadIndices !== undefined);\r\n this.buffers.addBuffer(indices, [BufferParameters.create(attrPos.location, 3, GL.DataType.UnsignedByte, false, 0, 0, false)]);\r\n this.buffers.addBuffer(endPointAndQuadsIndices, [BufferParameters.create(attrEndPointAndQuadIndices.location, 4, GL.DataType.UnsignedByte, false, 0, 0, false)]);\r\n this._indices = indices;\r\n this._endPointAndQuadIndices = endPointAndQuadsIndices;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class SilhouetteEdgeGeometry extends EdgeGeometry {\r\n private readonly _normalPairs: BufferHandle;\r\n\r\n public override get asSilhouette() { return this; }\r\n\r\n public static createSilhouettes(mesh: MeshData, params: SilhouetteParams): SilhouetteEdgeGeometry | undefined {\r\n const indexBuffer = BufferHandle.createArrayBuffer(params.indices.data);\r\n const endPointBuffer = BufferHandle.createArrayBuffer(params.endPointAndQuadIndices);\r\n const normalsBuffer = BufferHandle.createArrayBuffer(params.normalPairs);\r\n return undefined !== indexBuffer && undefined !== endPointBuffer && undefined !== normalsBuffer ? new SilhouetteEdgeGeometry(indexBuffer, endPointBuffer, normalsBuffer, params.indices.length, mesh) : undefined;\r\n }\r\n\r\n public override get isDisposed(): boolean { return super.isDisposed && this._normalPairs.isDisposed; }\r\n\r\n public override[Symbol.dispose]() {\r\n super[Symbol.dispose]();\r\n dispose(this._normalPairs);\r\n }\r\n\r\n public override collectStatistics(stats: RenderMemory.Statistics): void {\r\n stats.addSilhouetteEdges(this._indices.bytesUsed + this._endPointAndQuadIndices.bytesUsed + this._normalPairs.bytesUsed);\r\n }\r\n\r\n public override get techniqueId(): TechniqueId { return TechniqueId.SilhouetteEdge; }\r\n public override get renderOrder(): RenderOrder { return this.isPlanar ? RenderOrder.PlanarSilhouette : RenderOrder.Silhouette; }\r\n public get normalPairs(): BufferHandle { return this._normalPairs; }\r\n\r\n private constructor(indices: BufferHandle, endPointAndQuadsIndices: BufferHandle, normalPairs: BufferHandle, numIndices: number, mesh: MeshData) {\r\n super(indices, endPointAndQuadsIndices, numIndices, mesh);\r\n const attrNormals = AttributeMap.findAttribute(\"a_normals\", TechniqueId.SilhouetteEdge, false);\r\n assert(attrNormals !== undefined);\r\n this.buffers.addBuffer(normalPairs, [BufferParameters.create(attrNormals.location, 4, GL.DataType.UnsignedByte, false, 0, 0, false)]);\r\n this._normalPairs = normalPairs;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class PolylineEdgeGeometry extends MeshGeometry {\r\n private _buffers: PolylineBuffers;\r\n private readonly _colorInfo: ColorInfo;\r\n private readonly _width: number;\r\n private readonly _lineCode: number;\r\n\r\n public get lutBuffers() { return this._buffers.buffers; }\r\n\r\n public static create(mesh: MeshData, group: PolylineEdgeGroup): PolylineEdgeGeometry | undefined {\r\n const buffers = PolylineBuffers.create(group.polyline);\r\n return undefined !== buffers ? new PolylineEdgeGeometry(group.polyline.indices.length, buffers, mesh, group.appearance) : undefined;\r\n }\r\n\r\n public get isDisposed(): boolean { return this._buffers.isDisposed; }\r\n\r\n public [Symbol.dispose]() {\r\n dispose(this._buffers);\r\n }\r\n\r\n public collectStatistics(stats: RenderMemory.Statistics): void {\r\n this._buffers.collectStatistics(stats, RenderMemory.BufferType.PolylineEdges);\r\n }\r\n\r\n protected _wantWoWReversal(_target: Target): boolean { return true; }\r\n public get techniqueId(): TechniqueId { return TechniqueId.Polyline; }\r\n public override getPass(target: Target) { return this.computeEdgePass(target); }\r\n public get renderOrder(): RenderOrder { return this.isPlanar ? RenderOrder.PlanarEdge : RenderOrder.Edge; }\r\n public override get polylineBuffers(): PolylineBuffers { return this._buffers; }\r\n\r\n protected override _getLineCode(params: ShaderProgramParams): number {\r\n return params.target.computeEdgeLineCode(params.renderPass, this._lineCode);\r\n }\r\n\r\n protected override _getLineWeight(params: ShaderProgramParams): number {\r\n return params.target.computeEdgeWeight(params.renderPass, this._width);\r\n }\r\n\r\n public override getColor(target: Target) {\r\n return target.computeEdgeColor(this._colorInfo);\r\n }\r\n\r\n public override wantMonochrome(target: Target): boolean {\r\n return target.currentViewFlags.renderMode === RenderMode.Wireframe;\r\n }\r\n\r\n protected _draw(numInstances: number, instanceBuffersContainer?: BuffersContainer): void {\r\n const gl = System.instance;\r\n const bufs = instanceBuffersContainer !== undefined ? instanceBuffersContainer : this._buffers.buffers;\r\n\r\n bufs.bind();\r\n gl.drawArrays(GL.PrimitiveType.Triangles, 0, this._numIndices, numInstances);\r\n bufs.unbind();\r\n }\r\n\r\n private constructor(numIndices: number, buffers: PolylineBuffers, mesh: MeshData, appearance: EdgeAppearanceOverrides | undefined) {\r\n super(mesh, numIndices);\r\n this._buffers = buffers;\r\n\r\n this._colorInfo = appearance?.color ? ColorInfo.createFromColorDef(appearance.color) : mesh.lut.colorInfo;\r\n this._width = appearance?.width ?? mesh.edgeWidth;\r\n this._lineCode = appearance?.linePixels ? lineCodeFromLinePixels(appearance?.linePixels) : mesh.edgeLineCode;\r\n }\r\n}\r\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":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module WebGL\r\n */\r\n\r\nimport { ColorDef, HiddenLine, RenderMode, ViewFlags } from \"@itwin/core-common\";\r\nimport { FloatRgba } from \"./FloatRGBA\";\r\nimport { RenderPass } from \"./RenderFlags\";\r\nimport { LineCode } from \"./LineCode\";\r\nimport { OvrFlags } from \"../../../common/internal/render/OvrFlags\";\r\n\r\n/** Controls symbology of edges based on ViewFlags and HiddenLine.Settings. Typically these come from the Target's\r\n * RenderPlan, but a GraphicBranch may override those settings.\r\n * @internal\r\n */\r\nexport class EdgeSettings {\r\n /** The color applies to both hidden and visible edges. */\r\n private readonly _color = FloatRgba.fromColorDef(ColorDef.white);\r\n private _colorOverridden = false;\r\n private _visibleLineCode?: number;\r\n private _visibleWeight?: number;\r\n private _hiddenLineCode?: number;\r\n private _hiddenWeight?: number;\r\n /** Controls how opaque a surface must be to be displayed in SolidFill or HiddenLine modes; or how opaque it must be to\r\n * block shadow-casting lights in SmoothShade mode.\r\n */\r\n private _transparencyThreshold = 0;\r\n\r\n public static create(hline: HiddenLine.Settings | undefined): EdgeSettings {\r\n const settings = new EdgeSettings();\r\n settings.init(hline);\r\n return settings;\r\n }\r\n\r\n public init(hline: HiddenLine.Settings | undefined): void {\r\n this.clear();\r\n if (!hline)\r\n return;\r\n\r\n // The threshold is HiddenLine.Settings is a transparency value. Convert it to an alpha value and clamp to [0..1].\r\n let threshold = hline.transparencyThreshold;\r\n threshold = Math.min(1, Math.max(0, threshold));\r\n this._transparencyThreshold = 1.0 - threshold;\r\n\r\n const vis = hline.visible;\r\n if (vis.color) {\r\n this._colorOverridden = true;\r\n this._color.setColorDef(vis.color);\r\n }\r\n\r\n this._visibleLineCode = (undefined !== vis.pattern ? LineCode.valueFromLinePixels(vis.pattern) : undefined);\r\n this._visibleWeight = vis.width;\r\n\r\n // Hidden edge settings default to matching visible edge settings.\r\n const hid = hline.hidden;\r\n this._hiddenLineCode = undefined !== hid.pattern ? LineCode.valueFromLinePixels(hid.pattern) : this._visibleLineCode;\r\n\r\n this._hiddenWeight = undefined !== hid.width ? hid.width : this._visibleWeight;\r\n if (undefined !== this._hiddenWeight && undefined !== this._visibleWeight) {\r\n // Hidden edges cannot be wider than visible edges.\r\n this._hiddenWeight = Math.min(this._visibleWeight, this._hiddenWeight);\r\n }\r\n }\r\n\r\n public computeOvrFlags(pass: RenderPass, vf: ViewFlags): OvrFlags {\r\n // Edge overrides never apply in wireframe mode\r\n if (!this.isOverridden(vf))\r\n return OvrFlags.None;\r\n\r\n // Alpha always overridden - transparent edges only supported in wireframe mode.\r\n let flags = this.getColor(vf) ? (OvrFlags.Rgba | OvrFlags.LineRgb | OvrFlags.LineAlpha) : (OvrFlags.Alpha | OvrFlags.LineAlpha);\r\n\r\n if (undefined !== this.getLineCode(pass, vf))\r\n flags |= OvrFlags.LineCode;\r\n\r\n if (undefined !== this.getWeight(pass, vf))\r\n flags |= OvrFlags.Weight;\r\n\r\n return flags;\r\n }\r\n\r\n public get transparencyThreshold(): number {\r\n return this._transparencyThreshold;\r\n }\r\n\r\n public getColor(vf: ViewFlags): FloatRgba | undefined {\r\n return this._colorOverridden && this.isOverridden(vf) ? this._color : undefined;\r\n }\r\n\r\n public getLineCode(pass: RenderPass, vf: ViewFlags): number | undefined {\r\n if (!this.isOverridden(vf))\r\n return undefined;\r\n\r\n return RenderPass.HiddenEdge === pass ? this._hiddenLineCode : this._visibleLineCode;\r\n }\r\n\r\n public getWeight(pass: RenderPass, vf: ViewFlags): number | undefined {\r\n if (!this.isOverridden(vf))\r\n return undefined;\r\n\r\n return RenderPass.HiddenEdge === pass ? this._hiddenWeight : this._visibleWeight;\r\n }\r\n\r\n private clear(): void {\r\n this._colorOverridden = false;\r\n this._visibleLineCode = this._visibleWeight = undefined;\r\n this._hiddenLineCode = this._hiddenWeight = undefined;\r\n this._transparencyThreshold = 0;\r\n }\r\n\r\n public wantContrastingColor(renderMode: RenderMode): boolean {\r\n return !this._colorOverridden && RenderMode.SolidFill === renderMode;\r\n }\r\n\r\n private isOverridden(vf: ViewFlags): boolean {\r\n switch (vf.renderMode) {\r\n case RenderMode.Wireframe:\r\n return false; // edge overrides don't apply in wireframe mode\r\n case RenderMode.SmoothShade:\r\n return vf.visibleEdges;\r\n default:\r\n return true; // Edges always displayed in solid fill and hidden line modes\r\n }\r\n }\r\n}\r\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":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module WebGL\r\n */\r\n\r\nimport { assert, dispose, Id64 } from \"@itwin/core-bentley\";\r\nimport { PackedFeature, RenderFeatureTable } from \"@itwin/core-common\";\r\nimport { FeatureSymbology } from \"../../../render/FeatureSymbology\";\r\nimport { WebGLDisposable } from \"./Disposable\";\r\nimport { LineCode } from \"./LineCode\";\r\nimport { GL } from \"./GL\";\r\nimport { UniformHandle } from \"./UniformHandle\";\r\nimport { EmphasisFlags, TextureUnit } from \"./RenderFlags\";\r\nimport { sync, SyncObserver } from \"./Sync\";\r\nimport { System } from \"./System\";\r\nimport { Hilites, Target } from \"./Target\";\r\nimport { Texture2DDataUpdater, Texture2DHandle, TextureHandle } from \"./Texture\";\r\nimport { BatchOptions } from \"../../../common/render/BatchOptions\";\r\nimport { DisplayParams } from \"../../../common/internal/render/DisplayParams\";\r\nimport { OvrFlags } from \"../../../common/internal/render/OvrFlags\";\r\nimport { computeDimensions } from \"../../../common/internal/render/VertexTable\";\r\n\r\nexport function isFeatureHilited(feature: PackedFeature, hilites: Hilites, isModelHilited: boolean): boolean {\r\n if (hilites.isEmpty)\r\n return false;\r\n\r\n if (\"union\" === hilites.modelSubCategoryMode)\r\n return isModelHilited || hilites.elements.hasPair(feature.elementId) || hilites.subcategories.hasPair(feature.subCategoryId);\r\n\r\n return hilites.elements.hasPair(feature.elementId) || (isModelHilited && hilites.subcategories.hasPair(feature.subCategoryId));\r\n}\r\n\r\n/** @internal */\r\nexport type FeatureOverridesCleanup = () => void;\r\n\r\nconst scratchPackedFeature = PackedFeature.createWithIndex();\r\n\r\n/** @internal */\r\nexport class FeatureOverrides implements WebGLDisposable {\r\n public readonly target: Target;\r\n private readonly _options: BatchOptions;\r\n private _lut?: Texture2DHandle;\r\n private _mostRecentSymbologyOverrides?: FeatureSymbology.Overrides;\r\n private _lastFlashId = Id64.invalid;\r\n private _hiliteSyncObserver: SyncObserver = {};\r\n private _pickExclusionsSyncObserver: SyncObserver = {};\r\n private _anyOverridden = true;\r\n private _allHidden = true;\r\n private _anyTranslucent = true;\r\n private _anyViewIndependentTranslucent = true;\r\n private _anyOpaque = true;\r\n private _anyHilited = true;\r\n private _lutParams = new Float32Array(2);\r\n private _uniformSymbologyFlags: EmphasisFlags = EmphasisFlags.None;\r\n private _cleanup?: FeatureOverridesCleanup;\r\n\r\n public get anyOverridden() { return this._anyOverridden; }\r\n public get allHidden() { return this._allHidden; }\r\n public get anyTranslucent() { return this._anyTranslucent; }\r\n public get anyViewIndependentTranslucent() { return this._anyViewIndependentTranslucent; }\r\n public get anyOpaque() { return this._anyOpaque; }\r\n public get anyHilited() { return this._anyHilited; }\r\n\r\n /** For tests. */\r\n public get lutData(): Uint8Array | undefined { return this._lut?.dataBytes; }\r\n public get byteLength(): number { return undefined !== this._lut ? this._lut.bytesUsed : 0; }\r\n public get isUniform() { return 3 === this._lutParams[0] && 1 === this._lutParams[1]; }\r\n\r\n private updateUniformSymbologyFlags(): void {\r\n this._uniformSymbologyFlags = EmphasisFlags.None;\r\n if (!this.isUniform || !this._lut)\r\n return;\r\n\r\n let flags = this._lut.dataBytes![0];\r\n if (0 !== (flags & OvrFlags.Flashed))\r\n this._uniformSymbologyFlags |= EmphasisFlags.Flashed;\r\n\r\n if (0 !== (flags & OvrFlags.NonLocatable))\r\n this._uniformSymbologyFlags |= EmphasisFlags.NonLocatable;\r\n\r\n if (!this._anyHilited)\r\n return;\r\n\r\n flags = this._lut.dataBytes![1] << 8;\r\n if (0 !== (flags & OvrFlags.Hilited))\r\n this._uniformSymbologyFlags |= EmphasisFlags.Hilite;\r\n\r\n if (0 !== (flags & OvrFlags.Emphasized))\r\n this._uniformSymbologyFlags |= EmphasisFlags.Emphasized;\r\n }\r\n\r\n public getUniformOverrides(): Uint8Array {\r\n assert(this.isUniform);\r\n assert(undefined !== this._lut);\r\n assert(undefined !== this._lut.dataBytes);\r\n return this._lut.dataBytes;\r\n }\r\n\r\n private _initialize(map: RenderFeatureTable, ovrs: FeatureSymbology.Overrides, pickExcludes: Id64.Uint32Set, hilite: Hilites, flashed?: Id64.Uint32Pair): Texture2DHandle | undefined {\r\n const nFeatures = map.numFeatures;\r\n const dims = computeDimensions(nFeatures, 3, 0, System.instance.maxTextureSize);\r\n const width = dims.width;\r\n const height = dims.height;\r\n assert(width * height >= nFeatures);\r\n\r\n this._lutParams[0] = width;\r\n this._lutParams[1] = height;\r\n\r\n const data = new Uint8Array(width * height * 4);\r\n const creator = new Texture2DDataUpdater(data);\r\n this.buildLookupTable(creator, map, ovrs, pickExcludes, flashed, hilite);\r\n\r\n return TextureHandle.createForData(width, height, data, true, GL.Texture.WrapMode.ClampToEdge);\r\n }\r\n\r\n private _update(map: RenderFeatureTable, lut: Texture2DHandle, pickExcludes: Id64.Uint32Set | undefined, flashed?: Id64.Uint32Pair, hilites?: Hilites, ovrs?: FeatureSymbology.Overrides) {\r\n const updater = new Texture2DDataUpdater(lut.dataBytes!);\r\n\r\n if (undefined === ovrs) {\r\n this.updateFlashedAndHilited(updater, map, pickExcludes, flashed, hilites);\r\n } else {\r\n assert(undefined !== hilites);\r\n this.buildLookupTable(updater, map, ovrs, pickExcludes, flashed, hilites);\r\n }\r\n\r\n lut.update(updater);\r\n }\r\n\r\n private setTransparency(transparency: number, viewDependentTransparency: true | undefined, data: Texture2DDataUpdater, transparencyByteIndex: number, curFlags: OvrFlags): OvrFlags {\r\n // transparency in range [0, 1]...convert to byte and invert so 0=transparent...\r\n let alpha = 1.0 - transparency;\r\n alpha = Math.floor(0xff * alpha + 0.5);\r\n if ((0xff - alpha) < DisplayParams.minTransparency)\r\n alpha = 0xff;\r\n\r\n data.setByteAtIndex(transparencyByteIndex, alpha);\r\n if (0xff === alpha) {\r\n this._anyOpaque = true;\r\n } else {\r\n this._anyTranslucent = true;\r\n if (!viewDependentTransparency) {\r\n curFlags |= OvrFlags.ViewIndependentTransparency;\r\n this._anyViewIndependentTranslucent = true;\r\n }\r\n }\r\n\r\n return curFlags;\r\n }\r\n\r\n private buildLookupTable(data: Texture2DDataUpdater, map: RenderFeatureTable, ovr: FeatureSymbology.Overrides, pickExclude: Id64.Uint32Set | undefined, flashedIdParts: Id64.Uint32Pair | undefined, hilites: Hilites) {\r\n const allowHilite = true !== this._options.noHilite;\r\n const allowFlash = true !== this._options.noFlash;\r\n const allowEmphasis = true !== this._options.noEmphasis;\r\n\r\n let isModelHilited = false;\r\n const prevModelId = { lower: -1, upper: -1 };\r\n\r\n this._anyOpaque = this._anyTranslucent = this._anyViewIndependentTranslucent = this._anyHilited = false;\r\n\r\n let nHidden = 0;\r\n let nOverridden = 0;\r\n\r\n // NB: We currently use 3 RGBA values per feature as follows:\r\n // [0]\r\n // RG = override flags (see OvrFlags enum)\r\n // B = line code\r\n // A = line weight (if we need an extra byte in future, could combine code+weight into a single byte).\r\n // [1]\r\n // RGB = rgb\r\n // A = alpha\r\n // [2]\r\n // RGB = line rgb\r\n // A = line alpha\r\n for (const feature of map.iterable(scratchPackedFeature)) {\r\n const i = feature.index;\r\n const dataIndex = i * 4 * 3;\r\n\r\n if (prevModelId.lower !== feature.modelId.lower || prevModelId.upper !== feature.modelId.upper) {\r\n prevModelId.lower = feature.modelId.lower;\r\n prevModelId.upper = feature.modelId.upper;\r\n isModelHilited = allowHilite && hilites.models.hasPair(feature.modelId);\r\n }\r\n\r\n const app = this.target.currentBranch.getFeatureAppearance(\r\n ovr,\r\n feature.elementId.lower, feature.elementId.upper,\r\n feature.subCategoryId.lower, feature.subCategoryId.upper,\r\n feature.geometryClass,\r\n feature.modelId.lower, feature.modelId.upper,\r\n map.type, feature.animationNodeId);\r\n\r\n // NB: If the appearance is fully transparent, then:\r\n // - For normal (\"primary\") models, getAppearance() returns undefined.\r\n // - For classifier models, getAppearance() returns the appearance, and classification shader will discard fully-transparent classified pixels.\r\n // (The latter is how we clip the classified model using the classifiers).\r\n if (undefined === app) {\r\n // The feature is not visible. We don't care about any of the other overrides, because we're not going to render it.\r\n data.setOvrFlagsAtIndex(dataIndex, OvrFlags.Visibility);\r\n nHidden++;\r\n nOverridden++;\r\n continue;\r\n }\r\n\r\n let flags = app.nonLocatable ? OvrFlags.NonLocatable : OvrFlags.None;\r\n if (allowHilite && isFeatureHilited(feature, hilites, isModelHilited)) {\r\n flags |= OvrFlags.Hilited;\r\n this._anyHilited = true;\r\n }\r\n\r\n if (allowEmphasis && app.emphasized) {\r\n flags |= OvrFlags.Emphasized;\r\n this._anyHilited = true;\r\n }\r\n\r\n if (app.overridesRgb && app.rgb) {\r\n flags |= OvrFlags.Rgb;\r\n const rgb = app.rgb;\r\n data.setByteAtIndex(dataIndex + 4, rgb.r);\r\n data.setByteAtIndex(dataIndex + 5, rgb.g);\r\n data.setByteAtIndex(dataIndex + 6, rgb.b);\r\n }\r\n\r\n if (undefined !== app.transparency) {\r\n flags |= OvrFlags.Alpha;\r\n flags = this.setTransparency(app.transparency, app.viewDependentTransparency, data, dataIndex + 7, flags);\r\n }\r\n\r\n const lineRgb = app.getLineRgb();\r\n if (lineRgb) {\r\n flags |= OvrFlags.LineRgb;\r\n data.setByteAtIndex(dataIndex + 8, lineRgb.r);\r\n data.setByteAtIndex(dataIndex + 9, lineRgb.g);\r\n data.setByteAtIndex(dataIndex + 10, lineRgb.b);\r\n }\r\n\r\n const lineTransp = app.getLineTransparency();\r\n if (undefined !== lineTransp) {\r\n flags |= OvrFlags.LineAlpha;\r\n flags = this.setTransparency(lineTransp, app.viewDependentTransparency, data, dataIndex + 11, flags);\r\n }\r\n\r\n if (app.overridesWeight && app.weight) {\r\n flags |= OvrFlags.Weight;\r\n let weight = app.weight;\r\n weight = Math.min(31, weight);\r\n weight = Math.max(1, weight);\r\n data.setByteAtIndex(dataIndex + 3, weight);\r\n }\r\n\r\n if (app.overridesLinePixels && app.linePixels) {\r\n flags |= OvrFlags.LineCode;\r\n const lineCode = LineCode.valueFromLinePixels(app.linePixels);\r\n data.setByteAtIndex(dataIndex + 2, lineCode);\r\n }\r\n\r\n if (app.ignoresMaterial)\r\n flags |= OvrFlags.IgnoreMaterial;\r\n\r\n if (allowFlash && undefined !== flashedIdParts && feature.elementId.lower === flashedIdParts.lower && feature.elementId.upper === flashedIdParts.upper)\r\n flags |= OvrFlags.Flashed;\r\n\r\n if (pickExclude?.hasPair(feature.elementId)) {\r\n flags |= OvrFlags.InvisibleDuringPick;\r\n ++nHidden;\r\n }\r\n\r\n data.setOvrFlagsAtIndex(dataIndex, flags);\r\n if (OvrFlags.None !== flags)\r\n nOverridden++;\r\n }\r\n\r\n this._allHidden = (nHidden === map.numFeatures);\r\n this._anyOverridden = (nOverridden > 0);\r\n\r\n this.updateUniformSymbologyFlags();\r\n }\r\n\r\n // NB: If hilites is undefined, it means that the hilited set has not changed.\r\n private updateFlashedAndHilited(data: Texture2DDataUpdater, map: RenderFeatureTable, pickExcludes: Id64.Uint32Set | undefined, flashed?: Id64.Uint32Pair, hilites?: Hilites) {\r\n if (!hilites || true === this._options.noHilite) {\r\n this.updateFlashed(data, map, pickExcludes, flashed);\r\n return;\r\n }\r\n\r\n const allowFlash = true !== this._options.noFlash;\r\n const intersect = \"intersection\" === hilites.modelSubCategoryMode;\r\n\r\n this._anyOverridden = this._anyHilited = false;\r\n for (const feature of map.iterable(scratchPackedFeature)) {\r\n const dataIndex = feature.index * 4 * 3;\r\n const oldFlags = data.getOvrFlagsAtIndex(dataIndex);\r\n if (OvrFlags.None !== (oldFlags & OvrFlags.Visibility)) {\r\n // If it's invisible, none of the other flags matter. We can't flash it and don't want to hilite it.\r\n this._anyOverridden = true;\r\n continue;\r\n }\r\n\r\n const isModelHilited = hilites.models.hasPair(feature.modelId);\r\n let isHilited = isModelHilited && !intersect;\r\n if (!isHilited)\r\n isHilited = hilites.elements.hasPair(feature.elementId);\r\n\r\n if (!isHilited)\r\n if (isModelHilited || !intersect)\r\n isHilited = hilites.subcategories.hasPair(feature.subCategoryId);\r\n\r\n let isFlashed = false;\r\n if (flashed && allowFlash)\r\n isFlashed = feature.elementId.lower === flashed.lower && feature.elementId.upper === flashed.upper;\r\n\r\n let newFlags = isFlashed ? (oldFlags | OvrFlags.Flashed) : (oldFlags & ~OvrFlags.Flashed);\r\n newFlags = isHilited ? (newFlags | OvrFlags.Hilited) : (newFlags & ~OvrFlags.Hilited);\r\n if (pickExcludes) {\r\n newFlags = pickExcludes.hasPair(feature.elementId) ? (newFlags | OvrFlags.InvisibleDuringPick) : (newFlags & ~OvrFlags.InvisibleDuringPick);\r\n }\r\n\r\n data.setOvrFlagsAtIndex(dataIndex, newFlags);\r\n if (OvrFlags.None !== newFlags) {\r\n this._anyOverridden = true;\r\n this._anyHilited = this._anyHilited || isHilited || OvrFlags.None !== (newFlags & OvrFlags.Emphasized);\r\n }\r\n }\r\n\r\n this.updateUniformSymbologyFlags();\r\n }\r\n\r\n private updateFlashed(data: Texture2DDataUpdater, map: RenderFeatureTable, pickExcludes: Id64.Uint32Set | undefined, flashed?: Id64.Uint32Pair): void {\r\n if (true === this._options.noFlash && !pickExcludes)\r\n return;\r\n\r\n this._anyOverridden = false;\r\n const elemId = { lower: 0, upper: 0 };\r\n for (let i = 0; i < map.numFeatures; i++) {\r\n const dataIndex = i * 4 * 3;\r\n const oldFlags = data.getOvrFlagsAtIndex(dataIndex);\r\n if (OvrFlags.None !== (oldFlags & OvrFlags.Visibility)) {\r\n // If it's invisible, none of the other flags matter and we can't flash it.\r\n this._anyOverridden = true;\r\n continue;\r\n }\r\n\r\n let isFlashed = false;\r\n let thisElemId: Id64.Uint32Pair | undefined;\r\n if (flashed && !this._options.noFlash) {\r\n thisElemId = map.getElementIdPair(i, elemId);\r\n isFlashed = thisElemId.lower === flashed.lower && thisElemId.upper === flashed.upper;\r\n }\r\n\r\n let newFlags = isFlashed ? (oldFlags | OvrFlags.Flashed) : (oldFlags & ~OvrFlags.Flashed);\r\n if (pickExcludes) {\r\n if (!thisElemId) {\r\n thisElemId = map.getElementIdPair(i, elemId);\r\n }\r\n\r\n newFlags = pickExcludes.hasPair(thisElemId) ? (newFlags | OvrFlags.InvisibleDuringPick) : (newFlags & ~OvrFlags.InvisibleDuringPick);\r\n }\r\n\r\n data.setOvrFlagsAtIndex(dataIndex, newFlags);\r\n if (OvrFlags.None !== newFlags)\r\n this._anyOverridden = true;\r\n }\r\n\r\n this.updateUniformSymbologyFlags();\r\n }\r\n\r\n private constructor(target: Target, options: BatchOptions, cleanup: FeatureOverridesCleanup | undefined) {\r\n this.target = target;\r\n this._options = options;\r\n this._cleanup = cleanup;\r\n }\r\n\r\n public static createFromTarget(target: Target, options: BatchOptions, cleanup: FeatureOverridesCleanup | undefined) {\r\n return new FeatureOverrides(target, options, cleanup);\r\n }\r\n\r\n public get isDisposed(): boolean { return undefined === this._lut; }\r\n\r\n public [Symbol.dispose]() {\r\n this._lut = dispose(this._lut);\r\n if (this._cleanup) {\r\n this._cleanup();\r\n this._cleanup = undefined;\r\n }\r\n }\r\n\r\n public initFromMap(map: RenderFeatureTable) {\r\n const nFeatures = map.numFeatures;\r\n assert(0 < nFeatures);\r\n\r\n this._lut = dispose(this._lut);\r\n\r\n const ovrs: FeatureSymbology.Overrides = this.target.currentFeatureSymbologyOverrides;\r\n this._mostRecentSymbologyOverrides = ovrs;\r\n const hilite = this.target.hilites;\r\n this._lut = this._initialize(map, ovrs, this.target.pickExclusions, hilite, this.target.flashed);\r\n this._lastFlashId = Id64.invalid;\r\n this._hiliteSyncObserver = {};\r\n this._pickExclusionsSyncObserver = {};\r\n }\r\n\r\n public update(features: RenderFeatureTable) {\r\n let ovrs: FeatureSymbology.Overrides | undefined = this.target.currentFeatureSymbologyOverrides;\r\n const ovrsUpdated = ovrs !== this._mostRecentSymbologyOverrides;\r\n if (ovrsUpdated)\r\n this._mostRecentSymbologyOverrides = ovrs;\r\n else\r\n ovrs = undefined;\r\n\r\n const flashedId = this.target.flashedId;\r\n\r\n const hilite = this.target.hilites;\r\n const hiliteUpdated = !sync(this.target.hiliteSyncTarget, this._hiliteSyncObserver);\r\n const pickExcludesUpdated = !sync(this.target.pickExclusionsSyncTarget, this._pickExclusionsSyncObserver);\r\n\r\n if (ovrsUpdated || hiliteUpdated || flashedId !== this._lastFlashId || pickExcludesUpdated) {\r\n // _lut can be undefined if context was lost, (gl.createTexture returns null)\r\n if (this._lut) {\r\n this._update(\r\n features,\r\n this._lut,\r\n undefined !== ovrs || pickExcludesUpdated ? this.target.pickExclusions : undefined,\r\n this.target.flashed,\r\n undefined !== ovrs || hiliteUpdated ? hilite : undefined, ovrs,\r\n );\r\n }\r\n\r\n this._lastFlashId = flashedId;\r\n }\r\n }\r\n\r\n public bindLUTParams(uniform: UniformHandle): void {\r\n uniform.setUniform2fv(this._lutParams);\r\n }\r\n\r\n public bindLUT(uniform: UniformHandle): void {\r\n if (this._lut)\r\n this._lut.bindSampler(uniform, TextureUnit.FeatureSymbology);\r\n }\r\n\r\n public bindUniformSymbologyFlags(uniform: UniformHandle): void {\r\n uniform.setUniform1f(this._uniformSymbologyFlags);\r\n }\r\n}\r\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":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module WebGL\r\n */\r\n\r\nimport { ColorDef, RgbColor } from \"@itwin/core-common\";\r\nimport { UniformHandle } from \"./UniformHandle\";\r\n\r\nfunction clamp(norm: number): number {\r\n return Math.max(0, Math.min(1, norm));\r\n}\r\n\r\nfunction scale(norm: number): number {\r\n return Math.floor(norm * 255 + 0.5);\r\n}\r\n\r\nexport abstract class FloatColor {\r\n protected readonly _components: Float32Array;\r\n private _tbgr: number;\r\n\r\n protected constructor(numComponents: number) {\r\n this._components = new Float32Array(numComponents);\r\n this._tbgr = 0;\r\n }\r\n\r\n protected abstract maskTbgr(tbgr: number): number;\r\n protected abstract setComponents(r: number, g: number, b: number, a: number): void;\r\n\r\n public get red() { return this._components[0]; }\r\n public get green() { return this._components[1]; }\r\n public get blue() { return this._components[2]; }\r\n public get tbgr() { return this._tbgr; }\r\n public get isWhite() { return 1.0 === this.red && 1.0 === this.green && 1.0 === this.blue; }\r\n\r\n public setColorDef(def: ColorDef) {\r\n this.setTbgr(def.tbgr);\r\n }\r\n\r\n public setRgbColor(rgb: RgbColor) {\r\n this.setTbgr((rgb.r | (rgb.g << 8) | (rgb.b << 16)) >>> 0);\r\n }\r\n\r\n public setTbgr(tbgr: number) {\r\n tbgr = this.maskTbgr(tbgr);\r\n if (tbgr === this.tbgr)\r\n return;\r\n\r\n const c = ColorDef.getColors(tbgr);\r\n this.setComponents(c.r / 255, c.g / 255, c.b / 255, 1.0 - c.t / 255);\r\n this._tbgr = tbgr;\r\n }\r\n\r\n protected setRgbComponents(r: number, g: number, b: number): void {\r\n this._components[0] = r;\r\n this._components[1] = g;\r\n this._components[2] = b;\r\n }\r\n\r\n protected setRgbaComponents(r: number, g: number, b: number, a: number): void {\r\n r = clamp(r);\r\n g = clamp(g);\r\n b = clamp(b);\r\n a = clamp(a);\r\n\r\n const tbgr = (scale(r) | (scale(g) << 8) | (scale(b) << 16) | (scale(1 - a) << 24)) >>> 0;\r\n this._tbgr = this.maskTbgr(tbgr);\r\n this.setComponents(r, g, b, a);\r\n }\r\n}\r\n\r\nexport class FloatRgb extends FloatColor {\r\n public constructor() {\r\n super(3);\r\n }\r\n\r\n protected maskTbgr(tbgr: number) {\r\n return (tbgr & 0x00ffffff) >>> 0;\r\n }\r\n\r\n protected setComponents(r: number, g: number, b: number, _a: number) {\r\n this.setRgbComponents(r, g, b);\r\n }\r\n\r\n public set(r: number, g: number, b: number) {\r\n this.setRgbaComponents(r, g, b, 1);\r\n }\r\n\r\n public bind(uniform: UniformHandle): void {\r\n uniform.setUniform3fv(this._components);\r\n }\r\n\r\n public static fromColorDef(def: ColorDef): FloatRgb {\r\n return FloatRgb.fromTbgr(def.tbgr);\r\n }\r\n\r\n public static fromRgbColor(rgb: RgbColor): FloatRgb {\r\n return FloatRgb.from(rgb.r / 255, rgb.g / 255, rgb.b / 255);\r\n }\r\n\r\n public static from(r: number, g: number, b: number): FloatRgb {\r\n const rgb = new FloatRgb();\r\n rgb.set(r, g, b);\r\n return rgb;\r\n }\r\n\r\n public static fromTbgr(tbgr: number): FloatRgb {\r\n const rgb = new FloatRgb();\r\n rgb.setTbgr(tbgr);\r\n return rgb;\r\n }\r\n}\r\n\r\nexport class FloatRgba extends FloatColor {\r\n public constructor() {\r\n super(4);\r\n this._components[3] = 1.0;\r\n }\r\n\r\n protected maskTbgr(tbgr: number) {\r\n return tbgr;\r\n }\r\n\r\n protected setComponents(r: number, g: number, b: number, a: number) {\r\n this.setRgbComponents(r, g, b);\r\n this._components[3] = a;\r\n }\r\n\r\n public set(r: number, g: number, b: number, a: number) {\r\n this.setRgbaComponents(r, g, b, a);\r\n }\r\n\r\n public get alpha(): number { return this._components[3]; }\r\n public set alpha(alpha: number) { this._components[3] = alpha; }\r\n public get hasTranslucency(): boolean { return 1.0 !== this.alpha; }\r\n\r\n public bind(uniform: UniformHandle): void {\r\n uniform.setUniform4fv(this._components);\r\n }\r\n\r\n public static fromColorDef(def: ColorDef): FloatRgba {\r\n return FloatRgba.fromTbgr(def.tbgr);\r\n }\r\n\r\n public static fromTbgr(tbgr: number): FloatRgba {\r\n const rgba = new FloatRgba();\r\n rgba.setTbgr(tbgr);\r\n return rgba;\r\n }\r\n\r\n public static from(r: number, g: number, b: number, a: number): FloatRgba {\r\n const rgba = new FloatRgba();\r\n rgba.set(r, g, b, a);\r\n return rgba;\r\n }\r\n\r\n public clone(out?: FloatRgba): FloatRgba {\r\n if (undefined === out)\r\n return FloatRgba.from(this.red, this.green, this.blue, this.alpha);\r\n\r\n out.set(this.red, this.green, this.blue, this.alpha);\r\n return out;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"FloatRGBA.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/FloatRGBA.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAY,MAAM,oBAAoB,CAAC;AAGxD,SAAS,KAAK,CAAC,IAAY;IACzB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,KAAK,CAAC,IAAY;IACzB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,OAAgB,UAAU;IACX,WAAW,CAAe;IACrC,KAAK,CAAS;IAEtB,YAAsB,aAAqB;QACzC,IAAI,CAAC,WAAW,GAAG,IAAI,YAAY,CAAC,aAAa,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACjB,CAAC;IAKD,IAAW,GAAG,KAAK,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD,IAAW,KAAK,KAAK,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,IAAW,IAAI,KAAK,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,IAAW,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACxC,IAAW,OAAO,KAAK,OAAO,GAAG,KAAK,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,IAAI,CAAC,KAAK,IAAI,GAAG,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAErF,WAAW,CAAC,GAAa;QAC9B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAEM,WAAW,CAAC,GAAa;QAC9B,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7D,CAAC;IAEM,OAAO,CAAC,IAAY;QACzB,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,IAAI,KAAK,IAAI,CAAC,IAAI;YACpB,OAAO;QAET,MAAM,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QACrE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAES,gBAAgB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;QACxD,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAES,iBAAiB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;QACpE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACb,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACb,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACb,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAEb,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;QAC1F,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,CAAC;CACF;AAED,MAAM,OAAO,QAAS,SAAQ,UAAU;IACtC;QACE,KAAK,CAAC,CAAC,CAAC,CAAC;IACX,CAAC;IAES,QAAQ,CAAC,IAAY;QAC7B,OAAO,CAAC,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAES,aAAa,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,EAAU;QACjE,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,CAAC;IAEM,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;QACxC,IAAI,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACrC,CAAC;IAEM,IAAI,CAAC,OAAsB;QAChC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,GAAa;QACtC,OAAO,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,GAAa;QACtC,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;IAC9D,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;QAChD,MAAM,GAAG,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACjB,OAAO,GAAG,CAAC;IACb,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,IAAY;QACjC,MAAM,GAAG,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,GAAG,CAAC;IACb,CAAC;CACF;AAED,MAAM,OAAO,SAAU,SAAQ,UAAU;IACvC;QACE,KAAK,CAAC,CAAC,CAAC,CAAC;QACT,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;IAC5B,CAAC;IAES,QAAQ,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAES,aAAa,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;QAChE,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAEM,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;QACnD,IAAI,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACrC,CAAC;IAED,IAAW,KAAK,KAAa,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,IAAW,KAAK,CAAC,KAAa,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAChE,IAAW,eAAe,KAAc,OAAO,GAAG,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAE7D,IAAI,CAAC,OAAsB;QAChC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,GAAa;QACtC,OAAO,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,IAAY;QACjC,MAAM,IAAI,GAAG,IAAI,SAAS,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;QAC3D,MAAM,IAAI,GAAG,IAAI,SAAS,EAAE,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,GAAe;QAC1B,IAAI,SAAS,KAAK,GAAG;YACnB,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAErE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACrD,OAAO,GAAG,CAAC;IACb,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"FrameBuffer.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/FrameBuffer.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAgB1C,gBAAgB;AAChB,MAAM,OAAO,WAAW;IACd,IAAI,CAAoB;IACxB,MAAM,CAAoB;IAC1B,UAAU,wCAAsD;IACvD,cAAc,GAAoB,EAAE,CAAC;IACrC,eAAe,GAA8B,EAAE,CAAC;IAChD,iBAAiB,GAAa,EAAE,CAAC;IACjC,eAAe,GAA8B,EAAE,CAAC;IACjD,WAAW,CAAe;IAC1B,aAAa,CAAe;IAE5C,IAAW,UAAU,KAAc,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC;IAEpE,IAAW,OAAO,KAAc,OAAO,sCAA8B,IAAI,CAAC,UAAU,IAAI,iEAAyD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAEnK,IAAW,mBAAmB,KAAc,OAAO,mDAA2C,IAAI,CAAC,UAAU,IAAI,kEAA0D,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAE7L,IAAW,WAAW,KAAc,OAAO,2CAAmC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAEhG,IAAW,cAAc,KAAc,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,KAAK,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IAE7G,QAAQ,CAAC,GAAW;QACzB,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;YAC3E,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;IAEM,eAAe,CAAC,YAAqB,EAAE,GAAW;QACvD,IAAI,KAAK,CAAC;QACV,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1C,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;QACD,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACzC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;IAClD,CAAC;IAED,YAAoB,GAAqB,EAAE,aAA8B,EAAE,WAAyB,EAClG,cAA0C,EAAE,SAAqC,EAAE,aAA2B;QAC9G,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAChB,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;QAEnC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEjB,IAAI,CAAC,GAAW,CAAC,CAAC;QAClB,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;YACnC,MAAM,cAAc,GAAW,EAAE,CAAC,iBAAiB,GAAG,CAAC,CAAC;YACxD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC5C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;YACrC,IAAI,SAAS,KAAK,SAAS;gBACzB,EAAE,CAAC,oBAAoB,CAAC,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YACvF,CAAC,EAAE,CAAC;QACN,CAAC;QAED,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;YAC/B,MAAM,QAAQ,GAAG,WAAW,CAAC,SAAS,EAAE,CAAC;YACzC,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;gBAC3B,IAAI,WAAW,YAAY,YAAY,EAAE,CAAC;oBACxC,EAAE,CAAC,uBAAuB,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,gBAAgB,EAAE,EAAE,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;gBAC7F,CAAC;qBAAM,IAAI,WAAW,YAAY,uBAAuB,EAAE,CAAC;oBAC1D,EAAE,CAAC,uBAAuB,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,wBAAwB,EAAE,EAAE,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;gBACrG,CAAC;qBAAM,CAAC;oBACN,qFAAqF;oBACrF,4FAA4F;oBAC5F,EAAE,CAAC,oBAAoB,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,wBAAwB,EAAE,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;gBACnG,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,SAAS,KAAK,cAAc,IAAI,cAAc,CAAC,MAAM,KAAK,aAAa,CAAC,MAAM,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM,EAAE,CAAC;YAC5J,2DAA2D;YAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YACzD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACnB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACvB,CAAC,GAAG,CAAC,CAAC;gBACN,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,CAAC;oBACvC,MAAM,cAAc,GAAW,EAAE,CAAC,iBAAiB,GAAG,CAAC,CAAC;oBACxD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACrC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;oBACxC,MAAM,YAAY,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC;oBAC3C,IAAI,SAAS,KAAK,YAAY;wBAC5B,EAAE,CAAC,uBAAuB,CAAC,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;oBAC5F,CAAC,EAAE,CAAC;gBACN,CAAC;gBAED,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;oBAChC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;oBACnC,MAAM,UAAU,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC;oBAC7C,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;wBAC7B,EAAE,CAAC,uBAAuB,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,wBAAwB,EAAE,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;oBACvG,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,CAAC;QACH,CAAC;IACH,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,aAA8B,EAAE,WAAyB,EAAE,cAA0C,EAAE,SAAqC,EAAE,aAA2B;QAC5L,MAAM,GAAG,GAA4B,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;QACjF,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,WAAW,CAAC,GAAG,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IACpG,CAAC;IAEM,CAAC,MAAM,CAAC,OAAO,CAAC;QACrB,oEAAoE;QACpE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;YACtD,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;YACtB,IAAI,SAAS,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC9B,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACvD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IAEM,IAAI,CAAC,kBAA2B,KAAK,EAAE,SAAkB,KAAK;QACnE,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEtB,IAAI,SAAS,KAAK,IAAI,CAAC,IAAI;YACzB,OAAO,KAAK,CAAC;QAEf,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;QAEnC,IAAI,MAAM,IAAI,SAAS,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACxC,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACvD,IAAI,CAAC,UAAU,iDAAyC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACrD,IAAI,CAAC,UAAU,qCAA6B,CAAC;QAC/C,CAAC;QAED,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACvD,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM;QACX,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACrE,IAAI,CAAC,UAAU,uCAA+B,CAAC;IACjD,CAAC;IAEM,OAAO;QACZ,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,IAAI,CAAC,UAAU,yCAAiC,CAAC;IACnD,CAAC;IAEM,gBAAgB;QACrB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1C,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QACD,IAAI,SAAS,KAAK,IAAI,CAAC,aAAa;YACjC,IAAI,CAAC,aAAyC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACI,uBAAuB,CAAC,SAAkB,EAAE,GAAY;QAC7D,IAAI,CAAC,IAAI,CAAC,MAAM;YACd,OAAO;QACT,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC3C,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;QACpC,MAAM,WAAW,GAAG,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,CAAC,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QACxE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC;YAC7B,IAAI,SAAS,KAAK,GAAG,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;gBACjC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,oEAAoE;gBAChG,SAAS;YACX,CAAC;YACD,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gBACpC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBACvD,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC1C,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAK,CAAC,CAAC;gBACtD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5C,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;gBAC7B,WAAW,CAAC,GAAG,EAAE,CAAC;gBAClB,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC3B,GAAG,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,EACnF,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,EACjE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/C,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;gBAC/C,IAAI,SAAS,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG;oBAChC,MAAM;YACV,CAAC;QACH,CAAC;QACD,IAAI,SAAS,IAAI,SAAS,KAAK,IAAI,CAAC,WAAW,IAAI,SAAS,KAAK,IAAI,CAAC,aAAa,IAAK,IAAI,CAAC,aAAyC,CAAC,OAAO,EAAE,CAAC;YAC/I,MAAM,IAAI,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,+GAA+G;YAChJ,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACvD,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAK,CAAC,CAAC;YACtD,GAAG,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,EACvE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,EACrD,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,CAAC,aAAyC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACzE,CAAC;QACD,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QAChD,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QAChD,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACI,UAAU,CAAC,QAAiB,EAAE,UAAmB,EAAE,iBAA0B,EAAE,OAAkB;QACtG,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;QACnC,MAAM,WAAW,GAAa,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/K,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;YAC1B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,KAAK,MAAM,CAAC,IAAI,OAAO;oBACrB,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC7C,CAAC;QACD,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE;YAC3E,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,kFAAkF;IAClF,IAAW,WAAW;QACpB,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,IAAI,CAAC,cAAc,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY,aAAa,CAAC;YACzG,OAAO,SAAS,CAAC;QAEnB,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,KAAK,GAAG,CAAC,QAAQ;YAC5F,OAAO,SAAS,CAAC;QAEnB,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1C,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACjB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;YACrB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;YACrB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;QACvB,CAAC;QAED,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAClG,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAQD,gBAAgB;AAChB,MAAM,OAAO,gBAAgB;IAC3B,oGAAoG;IACnF,MAAM,GAAc,EAAE,CAAC;IAExC,IAAY,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAEvF,IAAI,CAAC,GAAgB,EAAE,eAAwB,EAAE,gBAAyB;QAC/E,IAAI,SAAS,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC;QAED,MAAM,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrB,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;QAC5C,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAC/D,CAAC;IAEM,GAAG;QACR,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtB,IAAI,SAAS,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAElB,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACpB,GAAG,CAAC,MAAM,EAAE,CAAC;QACb,MAAM,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAErB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACvE,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;YACtB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC5B,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACxD,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,IAAW,kBAAkB;QAC3B,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtB,OAAO,SAAS,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACzE,CAAC;IAED,IAAW,qBAAqB;QAC9B,OAAO,SAAS,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC;IAC7E,CAAC;IAED,IAAW,OAAO,KAAc,OAAO,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAE3D,OAAO,CAAC,GAAgB,EAAE,eAAwB,EAAE,gBAAyB,EAAE,IAAgB;QACpG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC;QAClD,IAAI,EAAE,CAAC;QACP,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC;IAEM,gBAAgB;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,SAAS,KAAK,GAAG;YACnB,GAAG,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IAC/B,CAAC;IAEM,OAAO;QACZ,IAAI,SAAS,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IAEM,MAAM;QACX,IAAI,SAAS,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACvE,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;YACtB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACxD,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module WebGL\r\n */\r\n\r\nimport { assert } from \"@itwin/core-bentley\";\r\nimport { WebGLDisposable } from \"./Disposable\";\r\nimport { GL } from \"./GL\";\r\nimport { RenderBuffer, RenderBufferMultiSample } from \"./RenderBuffer\";\r\nimport { System } from \"./System\";\r\nimport { TextureHandle } from \"./Texture\";\r\n\r\n/** @internal */\r\nexport type DepthBuffer = RenderBuffer | RenderBufferMultiSample | TextureHandle;\r\n/* eslint-disable no-restricted-syntax */\r\n\r\n/** @internal */\r\nexport const enum FrameBufferBindState {\r\n Unbound,\r\n Bound,\r\n BoundWithAttachments,\r\n BoundMultisampled,\r\n BoundWithAttachmentsMultisampled,\r\n Suspended,\r\n}\r\n\r\n/** @internal */\r\nexport class FrameBuffer implements WebGLDisposable {\r\n private _fbo?: WebGLFramebuffer;\r\n private _fboMs?: WebGLFramebuffer;\r\n private _bindState: FrameBufferBindState = FrameBufferBindState.Unbound;\r\n private readonly _colorTextures: TextureHandle[] = [];\r\n private readonly _colorMsBuffers: RenderBufferMultiSample[] = [];\r\n private readonly _colorAttachments: GLenum[] = [];\r\n private readonly _colorMsFilters: GL.MultiSampling.Filter[] = [];\r\n public readonly depthBuffer?: DepthBuffer;\r\n public readonly depthBufferMs?: DepthBuffer;\r\n\r\n public get isDisposed(): boolean { return this._fbo === undefined; }\r\n\r\n public get isBound(): boolean { return FrameBufferBindState.Bound <= this._bindState && FrameBufferBindState.BoundWithAttachmentsMultisampled >= this._bindState; }\r\n\r\n public get isBoundMultisampled(): boolean { return FrameBufferBindState.BoundMultisampled === this._bindState || FrameBufferBindState.BoundWithAttachmentsMultisampled === this._bindState; }\r\n\r\n public get isSuspended(): boolean { return FrameBufferBindState.Suspended === this._bindState; }\r\n\r\n public get isMultisampled(): boolean { return this._colorMsBuffers.length > 0 || undefined !== this.depthBufferMs; }\r\n\r\n public getColor(ndx: number): TextureHandle {\r\n assert(ndx < this._colorTextures.length);\r\n if (ndx < this._colorMsBuffers.length && this._colorMsBuffers[ndx].isDirty) {\r\n this.blitMsBuffersToTextures(false, ndx);\r\n }\r\n return this._colorTextures[ndx];\r\n }\r\n\r\n public getColorTargets(useMSBuffers: boolean, ndx: number): { tex: TextureHandle, msBuf: RenderBufferMultiSample | undefined } {\r\n let msBuf;\r\n if (useMSBuffers) {\r\n assert(ndx < this._colorMsBuffers.length);\r\n msBuf = this._colorMsBuffers[ndx];\r\n }\r\n assert(ndx < this._colorTextures.length);\r\n return { tex: this._colorTextures[ndx], msBuf };\r\n }\r\n\r\n private constructor(fbo: WebGLFramebuffer, colorTextures: TextureHandle[], depthBuffer?: DepthBuffer,\r\n colorMsBuffers?: RenderBufferMultiSample[], msFilters?: GL.MultiSampling.Filter[], depthBufferMs?: DepthBuffer) {\r\n this._fbo = fbo;\r\n const gl = System.instance.context;\r\n\r\n this.bind(false);\r\n\r\n let i: number = 0;\r\n for (const colTex of colorTextures) {\r\n const attachmentEnum: GLenum = gl.COLOR_ATTACHMENT0 + i;\r\n this._colorAttachments.push(attachmentEnum);\r\n this._colorTextures.push(colTex);\r\n const texHandle = colTex.getHandle();\r\n if (undefined !== texHandle)\r\n gl.framebufferTexture2D(gl.FRAMEBUFFER, attachmentEnum, gl.TEXTURE_2D, texHandle, 0);\r\n i++;\r\n }\r\n\r\n if (depthBuffer !== undefined) {\r\n this.depthBuffer = depthBuffer;\r\n const dbHandle = depthBuffer.getHandle();\r\n if (undefined !== dbHandle) {\r\n if (depthBuffer instanceof RenderBuffer) {\r\n gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.RENDERBUFFER, dbHandle);\r\n } else if (depthBuffer instanceof RenderBufferMultiSample) {\r\n gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.RENDERBUFFER, dbHandle);\r\n } else {\r\n // Looks like we only get a 24 bit depth buffer anyway, so use a 24-8 with a stencil.\r\n // gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.TEXTURE_2D, dbHandle, 0);\r\n gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.TEXTURE_2D, dbHandle, 0);\r\n }\r\n }\r\n }\r\n\r\n this.unbind();\r\n\r\n if (undefined !== colorMsBuffers && colorMsBuffers.length === colorTextures.length && undefined !== msFilters && msFilters.length === colorMsBuffers.length) {\r\n // Create a matching FBO with multisampling render buffers.\r\n const fbo2 = System.instance.context.createFramebuffer();\r\n if (null !== fbo2) {\r\n this._fboMs = fbo2;\r\n this.bind(false, true);\r\n i = 0;\r\n for (const colMsBuff of colorMsBuffers) {\r\n const attachmentEnum: GLenum = gl.COLOR_ATTACHMENT0 + i;\r\n this._colorMsBuffers.push(colMsBuff);\r\n this._colorMsFilters.push(msFilters[i]);\r\n const msBuffHandle = colMsBuff.getHandle();\r\n if (undefined !== msBuffHandle)\r\n gl.framebufferRenderbuffer(gl.FRAMEBUFFER, attachmentEnum, gl.RENDERBUFFER, msBuffHandle);\r\n i++;\r\n }\r\n\r\n if (depthBufferMs !== undefined) {\r\n this.depthBufferMs = depthBufferMs;\r\n const dbHandleMs = depthBufferMs.getHandle();\r\n if (undefined !== dbHandleMs) {\r\n gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.RENDERBUFFER, dbHandleMs);\r\n }\r\n }\r\n this.unbind();\r\n }\r\n }\r\n }\r\n\r\n public static create(colorTextures: TextureHandle[], depthBuffer?: DepthBuffer, colorMsBuffers?: RenderBufferMultiSample[], msFilters?: GL.MultiSampling.Filter[], depthBufferMs?: DepthBuffer): FrameBuffer | undefined {\r\n const fbo: WebGLFramebuffer | null = System.instance.context.createFramebuffer();\r\n if (null === fbo) {\r\n return undefined;\r\n }\r\n return new FrameBuffer(fbo, colorTextures, depthBuffer, colorMsBuffers, msFilters, depthBufferMs);\r\n }\r\n\r\n public [Symbol.dispose](): void {\r\n // NB: The FrameBuffer does not *own* the textures and depth buffer.\r\n if (!this.isDisposed) {\r\n System.instance.context.deleteFramebuffer(this._fbo!);\r\n this._fbo = undefined;\r\n if (undefined !== this._fboMs) {\r\n System.instance.context.deleteFramebuffer(this._fboMs);\r\n this._fboMs = undefined;\r\n }\r\n }\r\n }\r\n\r\n public bind(bindAttachments: boolean = false, bindMS: boolean = false): boolean {\r\n assert(undefined !== this._fbo);\r\n assert(!this.isBound);\r\n\r\n if (undefined === this._fbo)\r\n return false;\r\n\r\n const gl = System.instance.context;\r\n\r\n if (bindMS && undefined !== this._fboMs) {\r\n gl.bindFramebuffer(GL.FrameBuffer.TARGET, this._fboMs);\r\n this._bindState = FrameBufferBindState.BoundMultisampled;\r\n } else {\r\n gl.bindFramebuffer(GL.FrameBuffer.TARGET, this._fbo);\r\n this._bindState = FrameBufferBindState.Bound;\r\n }\r\n\r\n if (bindAttachments) {\r\n System.instance.setDrawBuffers(this._colorAttachments);\r\n this._bindState++;\r\n }\r\n return true;\r\n }\r\n\r\n public unbind() {\r\n assert(this.isBound);\r\n System.instance.context.bindFramebuffer(GL.FrameBuffer.TARGET, null);\r\n this._bindState = FrameBufferBindState.Unbound;\r\n }\r\n\r\n public suspend() {\r\n assert(this.isBound);\r\n this._bindState = FrameBufferBindState.Suspended;\r\n }\r\n\r\n public markTargetsDirty(): void {\r\n for (const msBuff of this._colorMsBuffers) {\r\n msBuff.markBufferDirty(true);\r\n }\r\n if (undefined !== this.depthBufferMs)\r\n (this.depthBufferMs as RenderBufferMultiSample).markBufferDirty(true);\r\n }\r\n\r\n /** blitDepth is true to blit the depth/stencil buffer. ndx is index of single attachment to blit.\r\n * All color attachments are blitted if ndx is undefined, none are blitted if ndx is -1.\r\n */\r\n public blitMsBuffersToTextures(blitDepth: boolean, ndx?: number) {\r\n if (!this._fboMs)\r\n return;\r\n System.instance.frameBufferStack.suspend();\r\n const gl2 = System.instance.context;\r\n const attachments = [];\r\n const max = (undefined === ndx ? this._colorMsBuffers.length : ndx + 1);\r\n for (let i = 0; i < max; ++i) {\r\n if (undefined !== ndx && i < ndx) {\r\n attachments.push(gl2.NONE); // skip this one, but first add a NONE for it in the attachment list\r\n continue;\r\n }\r\n if (this._colorMsBuffers[i].isDirty) {\r\n gl2.bindFramebuffer(gl2.READ_FRAMEBUFFER, this._fboMs);\r\n gl2.readBuffer(this._colorAttachments[i]);\r\n gl2.bindFramebuffer(gl2.DRAW_FRAMEBUFFER, this._fbo!);\r\n attachments.push(this._colorAttachments[i]);\r\n gl2.drawBuffers(attachments);\r\n attachments.pop();\r\n attachments.push(gl2.NONE);\r\n gl2.blitFramebuffer(0, 0, this._colorTextures[i].width, this._colorTextures[i].height,\r\n 0, 0, this._colorTextures[i].width, this._colorTextures[i].height,\r\n GL.BufferBit.Color, this._colorMsFilters[i]);\r\n this._colorMsBuffers[i].markBufferDirty(false);\r\n if (undefined !== ndx && i === ndx)\r\n break;\r\n }\r\n }\r\n if (blitDepth && undefined !== this.depthBuffer && undefined !== this.depthBufferMs && (this.depthBufferMs as RenderBufferMultiSample).isDirty) {\r\n const mask = GL.BufferBit.Depth; // (this.depthBuffer instanceof RenderBuffer ? GL.BufferBit.Depth : GL.BufferBit.Depth | GL.BufferBit.Stencil);\r\n gl2.bindFramebuffer(gl2.READ_FRAMEBUFFER, this._fboMs);\r\n gl2.bindFramebuffer(gl2.DRAW_FRAMEBUFFER, this._fbo!);\r\n gl2.blitFramebuffer(0, 0, this.depthBuffer.width, this.depthBuffer.height,\r\n 0, 0, this.depthBuffer.width, this.depthBuffer.height,\r\n mask, GL.MultiSampling.Filter.Nearest);\r\n (this.depthBufferMs as RenderBufferMultiSample).markBufferDirty(false);\r\n }\r\n gl2.bindFramebuffer(gl2.READ_FRAMEBUFFER, null);\r\n gl2.bindFramebuffer(gl2.DRAW_FRAMEBUFFER, null);\r\n System.instance.frameBufferStack.resume();\r\n }\r\n\r\n /** invDepth is true to invalidate depth buffer. invStencil is true to invalidate stencil buffer. ndx is index of single color attachment to invalidate.\r\n * All color attachments are invalidated if ndx is undefined, none are invalidated if ndx is -1.\r\n * Set withMultiSampling to true to invalidate the MS buffers.\r\n */\r\n public invalidate(invDepth: boolean, invStencil: boolean, withMultiSampling: boolean, indices?: number[]): void {\r\n const gl = System.instance.context;\r\n const attachments: number[] = invDepth ? (invStencil ? [gl.DEPTH_STENCIL_ATTACHMENT] : [System.instance.context.DEPTH_ATTACHMENT]) : (invDepth ? [gl.STENCIL_ATTACHMENT] : []);\r\n if (undefined !== indices) {\r\n if (indices.length > 0) {\r\n for (const i of indices)\r\n attachments.push(gl.COLOR_ATTACHMENT0 + i);\r\n }\r\n } else {\r\n attachments.concat(this._colorAttachments);\r\n }\r\n System.instance.frameBufferStack.execute(this, true, withMultiSampling, () => {\r\n System.instance.invalidateFrameBuffer(attachments);\r\n });\r\n }\r\n\r\n // Chiefly for debugging currently - assumes RGBA, unsigned byte, want all pixels.\r\n public get debugPixels(): Uint8Array | undefined {\r\n if (!this.isBound || 0 === this._colorTextures.length || !(this._colorTextures[0] instanceof TextureHandle))\r\n return undefined;\r\n\r\n const tex = this._colorTextures[0];\r\n if (GL.Texture.Format.Rgba !== tex.format || GL.Texture.DataType.UnsignedByte !== tex.dataType)\r\n return undefined;\r\n\r\n const buffer = new Uint8Array(tex.width * tex.height * 4);\r\n for (let i = 0; i < buffer.length; i += 4) {\r\n buffer[i] = 0xba;\r\n buffer[i + 1] = 0xad;\r\n buffer[i + 2] = 0xf0;\r\n buffer[i + 3] = 0x0d;\r\n }\r\n\r\n System.instance.context.readPixels(0, 0, tex.width, tex.height, tex.format, tex.dataType, buffer);\r\n return buffer;\r\n }\r\n}\r\n\r\ninterface Binding {\r\n fbo: FrameBuffer;\r\n withAttachments: boolean;\r\n withMultSampling: boolean;\r\n}\r\n\r\n/** @internal */\r\nexport class FrameBufferStack {\r\n // FrameBuffers within this array are not owned, as this is only a storage device holding references\r\n private readonly _stack: Binding[] = [];\r\n\r\n private get _top() { return !this.isEmpty ? this._stack[this._stack.length - 1] : undefined; }\r\n\r\n public push(fbo: FrameBuffer, withAttachments: boolean, withMultSampling: boolean): void {\r\n if (undefined !== this._top) {\r\n this._top.fbo.suspend();\r\n }\r\n\r\n assert(!fbo.isBound);\r\n fbo.bind(withAttachments, withMultSampling);\r\n assert(fbo.isBound);\r\n\r\n this._stack.push({ fbo, withAttachments, withMultSampling });\r\n }\r\n\r\n public pop(): void {\r\n assert(!this.isEmpty);\r\n if (undefined === this._top) {\r\n return;\r\n }\r\n\r\n const fbo = this._top.fbo;\r\n this._stack.pop();\r\n\r\n assert(fbo.isBound);\r\n fbo.unbind();\r\n assert(!fbo.isBound);\r\n\r\n if (this.isEmpty) {\r\n System.instance.context.bindFramebuffer(GL.FrameBuffer.TARGET, null);\r\n } else {\r\n const top = this._top;\r\n assert(top.fbo.isSuspended);\r\n top.fbo.bind(top.withAttachments, top.withMultSampling);\r\n assert(top.fbo.isBound);\r\n }\r\n }\r\n\r\n public get currentColorBuffer(): TextureHandle | undefined {\r\n assert(!this.isEmpty);\r\n return undefined !== this._top ? this._top.fbo.getColor(0) : undefined;\r\n }\r\n\r\n public get currentFbMultisampled(): boolean {\r\n return undefined !== this._top ? this._top.fbo.isBoundMultisampled : false;\r\n }\r\n\r\n public get isEmpty(): boolean { return 0 === this._stack.length; }\r\n\r\n public execute(fbo: FrameBuffer, withAttachments: boolean, withMultSampling: boolean, func: () => void) {\r\n this.push(fbo, withAttachments, withMultSampling);\r\n func();\r\n this.pop();\r\n }\r\n\r\n public markTargetsDirty(): void {\r\n const top = this._top;\r\n if (undefined !== top)\r\n top.fbo.markTargetsDirty();\r\n }\r\n\r\n public suspend(): void {\r\n if (undefined !== this._top) {\r\n this._top.fbo.suspend();\r\n }\r\n }\r\n\r\n public resume(): void {\r\n if (undefined === this._top) {\r\n return;\r\n }\r\n\r\n if (this.isEmpty) {\r\n System.instance.context.bindFramebuffer(GL.FrameBuffer.TARGET, null);\r\n } else {\r\n const top = this._top;\r\n top.fbo.bind(top.withAttachments, top.withMultSampling);\r\n assert(top.fbo.isBound);\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"FrameBuffer.js","sourceRoot":"","sources":["../../../../../src/internal/render/webgl/FrameBuffer.ts"],"names":[],"mappings":"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"}