@itwin/core-frontend 5.2.0-dev.2 → 5.2.0-dev.21
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.
- package/CHANGELOG.md +57 -1
- package/lib/cjs/BackgroundMapGeometry.js +13 -13
- package/lib/cjs/BackgroundMapGeometry.js.map +1 -1
- package/lib/cjs/BriefcaseConnection.d.ts.map +1 -1
- package/lib/cjs/BriefcaseConnection.js +2 -2
- package/lib/cjs/BriefcaseConnection.js.map +1 -1
- package/lib/cjs/CheckpointConnection.d.ts.map +1 -1
- package/lib/cjs/CheckpointConnection.js +3 -3
- package/lib/cjs/CheckpointConnection.js.map +1 -1
- package/lib/cjs/ContextRealityModelState.js.map +1 -1
- package/lib/cjs/ElementLocateManager.d.ts.map +1 -1
- package/lib/cjs/ElementLocateManager.js +7 -6
- package/lib/cjs/ElementLocateManager.js.map +1 -1
- package/lib/cjs/EmphasizeElements.d.ts.map +1 -1
- package/lib/cjs/EmphasizeElements.js +3 -1
- package/lib/cjs/EmphasizeElements.js.map +1 -1
- package/lib/cjs/EnvironmentDecorations.d.ts.map +1 -1
- package/lib/cjs/EnvironmentDecorations.js +4 -0
- package/lib/cjs/EnvironmentDecorations.js.map +1 -1
- package/lib/cjs/FrustumAnimator.d.ts.map +1 -1
- package/lib/cjs/FrustumAnimator.js +3 -2
- package/lib/cjs/FrustumAnimator.js.map +1 -1
- package/lib/cjs/GlobeAnimator.d.ts.map +1 -1
- package/lib/cjs/GlobeAnimator.js +7 -6
- package/lib/cjs/GlobeAnimator.js.map +1 -1
- package/lib/cjs/HitDetail.d.ts.map +1 -1
- package/lib/cjs/HitDetail.js +12 -7
- package/lib/cjs/HitDetail.js.map +1 -1
- package/lib/cjs/IModelApp.d.ts.map +1 -1
- package/lib/cjs/IModelApp.js +2 -1
- package/lib/cjs/IModelApp.js.map +1 -1
- package/lib/cjs/IModelConnection.d.ts +4 -0
- package/lib/cjs/IModelConnection.d.ts.map +1 -1
- package/lib/cjs/IModelConnection.js +156 -14
- package/lib/cjs/IModelConnection.js.map +1 -1
- package/lib/cjs/IpcApp.d.ts.map +1 -1
- package/lib/cjs/IpcApp.js +1 -1
- package/lib/cjs/IpcApp.js.map +1 -1
- package/lib/cjs/LinePlaneIntersect.d.ts.map +1 -1
- package/lib/cjs/LinePlaneIntersect.js +2 -0
- package/lib/cjs/LinePlaneIntersect.js.map +1 -1
- package/lib/cjs/LocalhostIpcApp.d.ts.map +1 -1
- package/lib/cjs/LocalhostIpcApp.js +2 -1
- package/lib/cjs/LocalhostIpcApp.js.map +1 -1
- package/lib/cjs/Marker.d.ts.map +1 -1
- package/lib/cjs/Marker.js +4 -3
- package/lib/cjs/Marker.js.map +1 -1
- package/lib/cjs/ModelState.d.ts.map +1 -1
- package/lib/cjs/ModelState.js +2 -2
- package/lib/cjs/ModelState.js.map +1 -1
- package/lib/cjs/NativeApp.d.ts.map +1 -1
- package/lib/cjs/NativeApp.js +5 -4
- package/lib/cjs/NativeApp.js.map +1 -1
- package/lib/cjs/NativeAppLogger.d.ts.map +1 -1
- package/lib/cjs/NativeAppLogger.js +1 -0
- package/lib/cjs/NativeAppLogger.js.map +1 -1
- package/lib/cjs/PlanarClipMaskState.js +3 -3
- package/lib/cjs/PlanarClipMaskState.js.map +1 -1
- package/lib/cjs/SelectionSet.d.ts.map +1 -1
- package/lib/cjs/SelectionSet.js +1 -0
- package/lib/cjs/SelectionSet.js.map +1 -1
- package/lib/cjs/SheetViewState.d.ts.map +1 -1
- package/lib/cjs/SheetViewState.js +5 -5
- package/lib/cjs/SheetViewState.js.map +1 -1
- package/lib/cjs/SpatialViewState.d.ts.map +1 -1
- package/lib/cjs/SpatialViewState.js +1 -1
- package/lib/cjs/SpatialViewState.js.map +1 -1
- package/lib/cjs/Sprites.js +2 -2
- package/lib/cjs/Sprites.js.map +1 -1
- package/lib/cjs/TentativePoint.d.ts.map +1 -1
- package/lib/cjs/TentativePoint.js +10 -9
- package/lib/cjs/TentativePoint.js.map +1 -1
- package/lib/cjs/ViewContext.d.ts +10 -1
- package/lib/cjs/ViewContext.d.ts.map +1 -1
- package/lib/cjs/ViewContext.js +12 -1
- package/lib/cjs/ViewContext.js.map +1 -1
- package/lib/cjs/ViewCreator2d.js +1 -1
- package/lib/cjs/ViewCreator2d.js.map +1 -1
- package/lib/cjs/ViewCreator3d.js +1 -1
- package/lib/cjs/ViewCreator3d.js.map +1 -1
- package/lib/cjs/ViewPose.d.ts.map +1 -1
- package/lib/cjs/ViewPose.js +4 -1
- package/lib/cjs/ViewPose.js.map +1 -1
- package/lib/cjs/ViewState.d.ts.map +1 -1
- package/lib/cjs/ViewState.js +17 -12
- package/lib/cjs/ViewState.js.map +1 -1
- package/lib/cjs/ViewingSpace.d.ts.map +1 -1
- package/lib/cjs/ViewingSpace.js +2 -0
- package/lib/cjs/ViewingSpace.js.map +1 -1
- package/lib/cjs/Viewport.d.ts.map +1 -1
- package/lib/cjs/Viewport.js +17 -10
- package/lib/cjs/Viewport.js.map +1 -1
- package/lib/cjs/common/ImageUtil.d.ts.map +1 -1
- package/lib/cjs/common/ImageUtil.js +2 -1
- package/lib/cjs/common/ImageUtil.js.map +1 -1
- package/lib/cjs/common/internal/render/GeometryAccumulator.d.ts.map +1 -1
- package/lib/cjs/common/internal/render/GeometryAccumulator.js +4 -3
- package/lib/cjs/common/internal/render/GeometryAccumulator.js.map +1 -1
- package/lib/cjs/common/internal/render/InstancedGraphicPropsBuilder.d.ts.map +1 -1
- package/lib/cjs/common/internal/render/InstancedGraphicPropsBuilder.js +2 -0
- package/lib/cjs/common/internal/render/InstancedGraphicPropsBuilder.js.map +1 -1
- package/lib/cjs/common/internal/render/MeshBuilder.js +1 -1
- package/lib/cjs/common/internal/render/MeshBuilder.js.map +1 -1
- package/lib/cjs/common/internal/render/VertexTableBuilder.d.ts.map +1 -1
- package/lib/cjs/common/internal/render/VertexTableBuilder.js +16 -7
- package/lib/cjs/common/internal/render/VertexTableBuilder.js.map +1 -1
- package/lib/cjs/extension/ExtensionAdmin.js +2 -2
- package/lib/cjs/extension/ExtensionAdmin.js.map +1 -1
- package/lib/cjs/internal/GoogleMapsDecorator.js +1 -1
- package/lib/cjs/internal/GoogleMapsDecorator.js.map +1 -1
- package/lib/cjs/internal/ScriptUtils.js +1 -0
- package/lib/cjs/internal/ScriptUtils.js.map +1 -1
- package/lib/cjs/internal/render/UpsampleRealityMeshParams.d.ts.map +1 -1
- package/lib/cjs/internal/render/UpsampleRealityMeshParams.js +2 -1
- package/lib/cjs/internal/render/UpsampleRealityMeshParams.js.map +1 -1
- package/lib/cjs/internal/render/webgl/AtmosphereUniforms.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/AtmosphereUniforms.js +7 -2
- package/lib/cjs/internal/render/webgl/AtmosphereUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/AttributeBuffers.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/AttributeBuffers.js +5 -3
- package/lib/cjs/internal/render/webgl/AttributeBuffers.js.map +1 -1
- package/lib/cjs/internal/render/webgl/AttributeMap.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/AttributeMap.js +2 -0
- package/lib/cjs/internal/render/webgl/AttributeMap.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BackgroundMapDrape.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/BackgroundMapDrape.js +3 -3
- package/lib/cjs/internal/render/webgl/BackgroundMapDrape.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BatchUniforms.js +1 -1
- package/lib/cjs/internal/render/webgl/BatchUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BranchState.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/BranchState.js +2 -1
- package/lib/cjs/internal/render/webgl/BranchState.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BranchUniforms.js +2 -2
- package/lib/cjs/internal/render/webgl/BranchUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/CachedGeometry.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/CachedGeometry.js +2 -2
- package/lib/cjs/internal/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ClipStack.js +1 -1
- package/lib/cjs/internal/render/webgl/ClipStack.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ColorInfo.js +1 -1
- package/lib/cjs/internal/render/webgl/ColorInfo.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Contours.js +3 -3
- package/lib/cjs/internal/render/webgl/Contours.js.map +1 -1
- package/lib/cjs/internal/render/webgl/EDL.js +18 -18
- package/lib/cjs/internal/render/webgl/EDL.js.map +1 -1
- package/lib/cjs/internal/render/webgl/FeatureOverrides.js +4 -4
- package/lib/cjs/internal/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/cjs/internal/render/webgl/FrameBuffer.js +3 -3
- package/lib/cjs/internal/render/webgl/FrameBuffer.js.map +1 -1
- package/lib/cjs/internal/render/webgl/FrustumUniforms.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/FrustumUniforms.js +2 -1
- package/lib/cjs/internal/render/webgl/FrustumUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/GLTimer.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/GLTimer.js +2 -0
- package/lib/cjs/internal/render/webgl/GLTimer.js.map +1 -1
- package/lib/cjs/internal/render/webgl/MapLayerParams.js +2 -2
- package/lib/cjs/internal/render/webgl/MapLayerParams.js.map +1 -1
- package/lib/cjs/internal/render/webgl/MeshData.js +2 -2
- package/lib/cjs/internal/render/webgl/MeshData.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PerformanceMetrics.js +1 -1
- package/lib/cjs/internal/render/webgl/PerformanceMetrics.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PlanarClassifier.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/PlanarClassifier.js +8 -8
- package/lib/cjs/internal/render/webgl/PlanarClassifier.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PlanarGrid.js +1 -1
- package/lib/cjs/internal/render/webgl/PlanarGrid.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PlanarTextureProjection.d.ts +0 -3
- package/lib/cjs/internal/render/webgl/PlanarTextureProjection.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/PlanarTextureProjection.js +6 -5
- package/lib/cjs/internal/render/webgl/PlanarTextureProjection.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PointCloud.js +1 -1
- package/lib/cjs/internal/render/webgl/PointCloud.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RealityMesh.js +1 -1
- package/lib/cjs/internal/render/webgl/RealityMesh.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RenderBuffer.js +2 -2
- package/lib/cjs/internal/render/webgl/RenderBuffer.js.map +1 -1
- package/lib/cjs/internal/render/webgl/SceneCompositor.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/SceneCompositor.js +118 -85
- package/lib/cjs/internal/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ScratchDrawParams.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/ScratchDrawParams.js +11 -10
- package/lib/cjs/internal/render/webgl/ScratchDrawParams.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ScreenSpaceEffect.js +3 -3
- package/lib/cjs/internal/render/webgl/ScreenSpaceEffect.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ShaderProgram.js +3 -3
- package/lib/cjs/internal/render/webgl/ShaderProgram.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ShadowUniforms.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/ShadowUniforms.js +2 -1
- package/lib/cjs/internal/render/webgl/ShadowUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/SolarShadowMap.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/SolarShadowMap.js +6 -4
- package/lib/cjs/internal/render/webgl/SolarShadowMap.js.map +1 -1
- package/lib/cjs/internal/render/webgl/System.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/System.js +1 -1
- package/lib/cjs/internal/render/webgl/System.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Target.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/Target.js +10 -7
- package/lib/cjs/internal/render/webgl/Target.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Texture.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/Texture.js +10 -8
- package/lib/cjs/internal/render/webgl/Texture.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Animation.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Animation.js +4 -2
- package/lib/cjs/internal/render/webgl/glsl/Animation.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Color.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Color.js +2 -1
- package/lib/cjs/internal/render/webgl/glsl/Color.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Composite.js +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Composite.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/CopyStencil.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/CopyStencil.js +3 -2
- package/lib/cjs/internal/render/webgl/glsl/CopyStencil.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/PlanarClassification.js +3 -3
- package/lib/cjs/internal/render/webgl/glsl/PlanarClassification.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/PlanarGrid.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/PlanarGrid.js +4 -3
- package/lib/cjs/internal/render/webgl/glsl/PlanarGrid.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/RealityMesh.js +8 -8
- package/lib/cjs/internal/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Surface.js +10 -10
- package/lib/cjs/internal/render/webgl/glsl/Surface.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Vertex.js +2 -2
- package/lib/cjs/internal/render/webgl/glsl/Vertex.js.map +1 -1
- package/lib/cjs/internal/tile/B3dmReader.d.ts.map +1 -1
- package/lib/cjs/internal/tile/B3dmReader.js +1 -1
- package/lib/cjs/internal/tile/B3dmReader.js.map +1 -1
- package/lib/cjs/internal/tile/DynamicIModelTile.js +1 -0
- package/lib/cjs/internal/tile/DynamicIModelTile.js.map +1 -1
- package/lib/cjs/internal/tile/FetchCloudStorage.js +1 -1
- package/lib/cjs/internal/tile/FetchCloudStorage.js.map +1 -1
- package/lib/cjs/internal/tile/LRUTileList.d.ts.map +1 -1
- package/lib/cjs/internal/tile/LRUTileList.js +4 -0
- package/lib/cjs/internal/tile/LRUTileList.js.map +1 -1
- package/lib/cjs/internal/tile/LayerTileTreeReferenceHandler.d.ts.map +1 -1
- package/lib/cjs/internal/tile/LayerTileTreeReferenceHandler.js +2 -1
- package/lib/cjs/internal/tile/LayerTileTreeReferenceHandler.js.map +1 -1
- package/lib/cjs/internal/tile/OPCFormatInterpreter.js +4 -4
- package/lib/cjs/internal/tile/OPCFormatInterpreter.js.map +1 -1
- package/lib/cjs/internal/tile/OrbitGtTileTree.d.ts.map +1 -1
- package/lib/cjs/internal/tile/OrbitGtTileTree.js +2 -2
- package/lib/cjs/internal/tile/OrbitGtTileTree.js.map +1 -1
- package/lib/cjs/internal/tile/RealityModelTileTree.d.ts.map +1 -1
- package/lib/cjs/internal/tile/RealityModelTileTree.js +3 -3
- package/lib/cjs/internal/tile/RealityModelTileTree.js.map +1 -1
- package/lib/cjs/internal/tile/RealityTileLoader.d.ts.map +1 -1
- package/lib/cjs/internal/tile/RealityTileLoader.js +3 -0
- package/lib/cjs/internal/tile/RealityTileLoader.js.map +1 -1
- package/lib/cjs/internal/tile/ThreeDTileFormatInterpreter.js +3 -3
- package/lib/cjs/internal/tile/ThreeDTileFormatInterpreter.js.map +1 -1
- package/lib/cjs/internal/tile/TileUserSet.d.ts.map +1 -1
- package/lib/cjs/internal/tile/TileUserSet.js +4 -0
- package/lib/cjs/internal/tile/TileUserSet.js.map +1 -1
- package/lib/cjs/internal/tile/map/ArcGISTileMap.js +1 -1
- package/lib/cjs/internal/tile/map/ArcGISTileMap.js.map +1 -1
- package/lib/cjs/internal/tile/map/ArcGisUtilities.d.ts.map +1 -1
- package/lib/cjs/internal/tile/map/ArcGisUtilities.js +4 -0
- package/lib/cjs/internal/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +3 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/BingImageryProvider.js +2 -2
- package/lib/cjs/internal/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/MapTileAvailability.d.ts.map +1 -1
- package/lib/cjs/internal/tile/map/MapTileAvailability.js +5 -2
- package/lib/cjs/internal/tile/map/MapTileAvailability.js.map +1 -1
- package/lib/cjs/internal/tile/map/WmtsCapabilities.d.ts.map +1 -1
- package/lib/cjs/internal/tile/map/WmtsCapabilities.js +3 -2
- package/lib/cjs/internal/tile/map/WmtsCapabilities.js.map +1 -1
- package/lib/cjs/properties/FormattedQuantityDescription.d.ts.map +1 -1
- package/lib/cjs/properties/FormattedQuantityDescription.js +2 -0
- package/lib/cjs/properties/FormattedQuantityDescription.js.map +1 -1
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts.map +1 -1
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js +2 -0
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityFormatter.js +7 -4
- package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/cjs/tile/GltfReader.d.ts +5 -2
- package/lib/cjs/tile/GltfReader.d.ts.map +1 -1
- package/lib/cjs/tile/GltfReader.js +62 -19
- package/lib/cjs/tile/GltfReader.js.map +1 -1
- package/lib/cjs/tile/RealityTile.d.ts.map +1 -1
- package/lib/cjs/tile/RealityTile.js +2 -2
- package/lib/cjs/tile/RealityTile.js.map +1 -1
- package/lib/cjs/tile/RealityTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/RealityTileTree.js +5 -5
- package/lib/cjs/tile/RealityTileTree.js.map +1 -1
- package/lib/cjs/tile/TileAdmin.js.map +1 -1
- package/lib/cjs/tile/TileDrawArgs.d.ts.map +1 -1
- package/lib/cjs/tile/TileDrawArgs.js +2 -1
- package/lib/cjs/tile/TileDrawArgs.js.map +1 -1
- package/lib/cjs/tile/map/ImageryTileTree.js +1 -1
- package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerFormatRegistry.js +1 -1
- package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerSources.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerSources.js +9 -1
- package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
- package/lib/cjs/tile/map/MapTile.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTile.js +10 -8
- package/lib/cjs/tile/map/MapTile.js.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.js +8 -7
- package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapTilingScheme.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTilingScheme.js +2 -1
- package/lib/cjs/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/cjs/tools/Tool.js +1 -1
- package/lib/cjs/tools/Tool.js.map +1 -1
- package/lib/cjs/workers/ImdlParser/webpack.config.js +8 -0
- package/lib/esm/BackgroundMapGeometry.js +14 -14
- package/lib/esm/BackgroundMapGeometry.js.map +1 -1
- package/lib/esm/BriefcaseConnection.d.ts.map +1 -1
- package/lib/esm/BriefcaseConnection.js +2 -2
- package/lib/esm/BriefcaseConnection.js.map +1 -1
- package/lib/esm/CheckpointConnection.d.ts.map +1 -1
- package/lib/esm/CheckpointConnection.js +4 -4
- package/lib/esm/CheckpointConnection.js.map +1 -1
- package/lib/esm/ContextRealityModelState.js.map +1 -1
- package/lib/esm/ElementLocateManager.d.ts.map +1 -1
- package/lib/esm/ElementLocateManager.js +8 -7
- package/lib/esm/ElementLocateManager.js.map +1 -1
- package/lib/esm/EmphasizeElements.d.ts.map +1 -1
- package/lib/esm/EmphasizeElements.js +3 -1
- package/lib/esm/EmphasizeElements.js.map +1 -1
- package/lib/esm/EnvironmentDecorations.d.ts.map +1 -1
- package/lib/esm/EnvironmentDecorations.js +4 -0
- package/lib/esm/EnvironmentDecorations.js.map +1 -1
- package/lib/esm/FrustumAnimator.d.ts.map +1 -1
- package/lib/esm/FrustumAnimator.js +3 -2
- package/lib/esm/FrustumAnimator.js.map +1 -1
- package/lib/esm/GlobeAnimator.d.ts.map +1 -1
- package/lib/esm/GlobeAnimator.js +7 -6
- package/lib/esm/GlobeAnimator.js.map +1 -1
- package/lib/esm/HitDetail.d.ts.map +1 -1
- package/lib/esm/HitDetail.js +12 -7
- package/lib/esm/HitDetail.js.map +1 -1
- package/lib/esm/IModelApp.d.ts.map +1 -1
- package/lib/esm/IModelApp.js +4 -3
- package/lib/esm/IModelApp.js.map +1 -1
- package/lib/esm/IModelConnection.d.ts +4 -0
- package/lib/esm/IModelConnection.d.ts.map +1 -1
- package/lib/esm/IModelConnection.js +158 -16
- package/lib/esm/IModelConnection.js.map +1 -1
- package/lib/esm/IpcApp.d.ts.map +1 -1
- package/lib/esm/IpcApp.js +2 -2
- package/lib/esm/IpcApp.js.map +1 -1
- package/lib/esm/LinePlaneIntersect.d.ts.map +1 -1
- package/lib/esm/LinePlaneIntersect.js +2 -0
- package/lib/esm/LinePlaneIntersect.js.map +1 -1
- package/lib/esm/LocalhostIpcApp.d.ts.map +1 -1
- package/lib/esm/LocalhostIpcApp.js +2 -1
- package/lib/esm/LocalhostIpcApp.js.map +1 -1
- package/lib/esm/Marker.d.ts.map +1 -1
- package/lib/esm/Marker.js +5 -4
- package/lib/esm/Marker.js.map +1 -1
- package/lib/esm/ModelState.d.ts.map +1 -1
- package/lib/esm/ModelState.js +3 -3
- package/lib/esm/ModelState.js.map +1 -1
- package/lib/esm/NativeApp.d.ts.map +1 -1
- package/lib/esm/NativeApp.js +5 -4
- package/lib/esm/NativeApp.js.map +1 -1
- package/lib/esm/NativeAppLogger.d.ts.map +1 -1
- package/lib/esm/NativeAppLogger.js +1 -0
- package/lib/esm/NativeAppLogger.js.map +1 -1
- package/lib/esm/PlanarClipMaskState.js +3 -3
- package/lib/esm/PlanarClipMaskState.js.map +1 -1
- package/lib/esm/SelectionSet.d.ts.map +1 -1
- package/lib/esm/SelectionSet.js +2 -1
- package/lib/esm/SelectionSet.js.map +1 -1
- package/lib/esm/SheetViewState.d.ts.map +1 -1
- package/lib/esm/SheetViewState.js +6 -6
- package/lib/esm/SheetViewState.js.map +1 -1
- package/lib/esm/SpatialViewState.d.ts.map +1 -1
- package/lib/esm/SpatialViewState.js +2 -2
- package/lib/esm/SpatialViewState.js.map +1 -1
- package/lib/esm/Sprites.js +2 -2
- package/lib/esm/Sprites.js.map +1 -1
- package/lib/esm/TentativePoint.d.ts.map +1 -1
- package/lib/esm/TentativePoint.js +10 -9
- package/lib/esm/TentativePoint.js.map +1 -1
- package/lib/esm/ViewContext.d.ts +10 -1
- package/lib/esm/ViewContext.d.ts.map +1 -1
- package/lib/esm/ViewContext.js +12 -1
- package/lib/esm/ViewContext.js.map +1 -1
- package/lib/esm/ViewCreator2d.js +1 -1
- package/lib/esm/ViewCreator2d.js.map +1 -1
- package/lib/esm/ViewCreator3d.js +1 -1
- package/lib/esm/ViewCreator3d.js.map +1 -1
- package/lib/esm/ViewPose.d.ts.map +1 -1
- package/lib/esm/ViewPose.js +4 -1
- package/lib/esm/ViewPose.js.map +1 -1
- package/lib/esm/ViewState.d.ts.map +1 -1
- package/lib/esm/ViewState.js +18 -13
- package/lib/esm/ViewState.js.map +1 -1
- package/lib/esm/ViewingSpace.d.ts.map +1 -1
- package/lib/esm/ViewingSpace.js +2 -0
- package/lib/esm/ViewingSpace.js.map +1 -1
- package/lib/esm/Viewport.d.ts.map +1 -1
- package/lib/esm/Viewport.js +18 -11
- package/lib/esm/Viewport.js.map +1 -1
- package/lib/esm/common/ImageUtil.d.ts.map +1 -1
- package/lib/esm/common/ImageUtil.js +2 -1
- package/lib/esm/common/ImageUtil.js.map +1 -1
- package/lib/esm/common/internal/render/GeometryAccumulator.d.ts.map +1 -1
- package/lib/esm/common/internal/render/GeometryAccumulator.js +4 -3
- package/lib/esm/common/internal/render/GeometryAccumulator.js.map +1 -1
- package/lib/esm/common/internal/render/InstancedGraphicPropsBuilder.d.ts.map +1 -1
- package/lib/esm/common/internal/render/InstancedGraphicPropsBuilder.js +2 -0
- package/lib/esm/common/internal/render/InstancedGraphicPropsBuilder.js.map +1 -1
- package/lib/esm/common/internal/render/MeshBuilder.js +2 -2
- package/lib/esm/common/internal/render/MeshBuilder.js.map +1 -1
- package/lib/esm/common/internal/render/VertexTableBuilder.d.ts.map +1 -1
- package/lib/esm/common/internal/render/VertexTableBuilder.js +17 -8
- package/lib/esm/common/internal/render/VertexTableBuilder.js.map +1 -1
- package/lib/esm/extension/ExtensionAdmin.js +2 -2
- package/lib/esm/extension/ExtensionAdmin.js.map +1 -1
- package/lib/esm/internal/GoogleMapsDecorator.js +1 -1
- package/lib/esm/internal/GoogleMapsDecorator.js.map +1 -1
- package/lib/esm/internal/ScriptUtils.js +1 -0
- package/lib/esm/internal/ScriptUtils.js.map +1 -1
- package/lib/esm/internal/render/UpsampleRealityMeshParams.d.ts.map +1 -1
- package/lib/esm/internal/render/UpsampleRealityMeshParams.js +2 -1
- package/lib/esm/internal/render/UpsampleRealityMeshParams.js.map +1 -1
- package/lib/esm/internal/render/webgl/AtmosphereUniforms.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/AtmosphereUniforms.js +7 -2
- package/lib/esm/internal/render/webgl/AtmosphereUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/AttributeBuffers.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/AttributeBuffers.js +5 -3
- package/lib/esm/internal/render/webgl/AttributeBuffers.js.map +1 -1
- package/lib/esm/internal/render/webgl/AttributeMap.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/AttributeMap.js +2 -0
- package/lib/esm/internal/render/webgl/AttributeMap.js.map +1 -1
- package/lib/esm/internal/render/webgl/BackgroundMapDrape.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/BackgroundMapDrape.js +4 -4
- package/lib/esm/internal/render/webgl/BackgroundMapDrape.js.map +1 -1
- package/lib/esm/internal/render/webgl/BatchUniforms.js +1 -1
- package/lib/esm/internal/render/webgl/BatchUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/BranchState.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/BranchState.js +2 -1
- package/lib/esm/internal/render/webgl/BranchState.js.map +1 -1
- package/lib/esm/internal/render/webgl/BranchUniforms.js +3 -3
- package/lib/esm/internal/render/webgl/BranchUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/CachedGeometry.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/CachedGeometry.js +3 -3
- package/lib/esm/internal/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/esm/internal/render/webgl/ClipStack.js +1 -1
- package/lib/esm/internal/render/webgl/ClipStack.js.map +1 -1
- package/lib/esm/internal/render/webgl/ColorInfo.js +2 -2
- package/lib/esm/internal/render/webgl/ColorInfo.js.map +1 -1
- package/lib/esm/internal/render/webgl/Contours.js +4 -4
- package/lib/esm/internal/render/webgl/Contours.js.map +1 -1
- package/lib/esm/internal/render/webgl/EDL.js +19 -19
- package/lib/esm/internal/render/webgl/EDL.js.map +1 -1
- package/lib/esm/internal/render/webgl/FeatureOverrides.js +5 -5
- package/lib/esm/internal/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/esm/internal/render/webgl/FrameBuffer.js +4 -4
- package/lib/esm/internal/render/webgl/FrameBuffer.js.map +1 -1
- package/lib/esm/internal/render/webgl/FrustumUniforms.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/FrustumUniforms.js +2 -1
- package/lib/esm/internal/render/webgl/FrustumUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/GLTimer.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/GLTimer.js +2 -0
- package/lib/esm/internal/render/webgl/GLTimer.js.map +1 -1
- package/lib/esm/internal/render/webgl/MapLayerParams.js +3 -3
- package/lib/esm/internal/render/webgl/MapLayerParams.js.map +1 -1
- package/lib/esm/internal/render/webgl/MeshData.js +3 -3
- package/lib/esm/internal/render/webgl/MeshData.js.map +1 -1
- package/lib/esm/internal/render/webgl/PerformanceMetrics.js +1 -1
- package/lib/esm/internal/render/webgl/PerformanceMetrics.js.map +1 -1
- package/lib/esm/internal/render/webgl/PlanarClassifier.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/PlanarClassifier.js +9 -9
- package/lib/esm/internal/render/webgl/PlanarClassifier.js.map +1 -1
- package/lib/esm/internal/render/webgl/PlanarGrid.js +2 -2
- package/lib/esm/internal/render/webgl/PlanarGrid.js.map +1 -1
- package/lib/esm/internal/render/webgl/PlanarTextureProjection.d.ts +0 -3
- package/lib/esm/internal/render/webgl/PlanarTextureProjection.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/PlanarTextureProjection.js +6 -5
- package/lib/esm/internal/render/webgl/PlanarTextureProjection.js.map +1 -1
- package/lib/esm/internal/render/webgl/PointCloud.js +2 -2
- package/lib/esm/internal/render/webgl/PointCloud.js.map +1 -1
- package/lib/esm/internal/render/webgl/RealityMesh.js +2 -2
- package/lib/esm/internal/render/webgl/RealityMesh.js.map +1 -1
- package/lib/esm/internal/render/webgl/RenderBuffer.js +3 -3
- package/lib/esm/internal/render/webgl/RenderBuffer.js.map +1 -1
- package/lib/esm/internal/render/webgl/SceneCompositor.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/SceneCompositor.js +119 -86
- package/lib/esm/internal/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/esm/internal/render/webgl/ScratchDrawParams.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/ScratchDrawParams.js +11 -10
- package/lib/esm/internal/render/webgl/ScratchDrawParams.js.map +1 -1
- package/lib/esm/internal/render/webgl/ScreenSpaceEffect.js +4 -4
- package/lib/esm/internal/render/webgl/ScreenSpaceEffect.js.map +1 -1
- package/lib/esm/internal/render/webgl/ShaderProgram.js +4 -4
- package/lib/esm/internal/render/webgl/ShaderProgram.js.map +1 -1
- package/lib/esm/internal/render/webgl/ShadowUniforms.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/ShadowUniforms.js +2 -1
- package/lib/esm/internal/render/webgl/ShadowUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/SolarShadowMap.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/SolarShadowMap.js +7 -5
- package/lib/esm/internal/render/webgl/SolarShadowMap.js.map +1 -1
- package/lib/esm/internal/render/webgl/System.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/System.js +2 -2
- package/lib/esm/internal/render/webgl/System.js.map +1 -1
- package/lib/esm/internal/render/webgl/Target.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/Target.js +11 -8
- package/lib/esm/internal/render/webgl/Target.js.map +1 -1
- package/lib/esm/internal/render/webgl/Texture.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/Texture.js +11 -9
- package/lib/esm/internal/render/webgl/Texture.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Animation.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Animation.js +5 -3
- package/lib/esm/internal/render/webgl/glsl/Animation.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Color.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Color.js +2 -1
- package/lib/esm/internal/render/webgl/glsl/Color.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Composite.js +2 -2
- package/lib/esm/internal/render/webgl/glsl/Composite.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/CopyStencil.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/CopyStencil.js +3 -2
- package/lib/esm/internal/render/webgl/glsl/CopyStencil.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/PlanarClassification.js +4 -4
- package/lib/esm/internal/render/webgl/glsl/PlanarClassification.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/PlanarGrid.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/PlanarGrid.js +4 -3
- package/lib/esm/internal/render/webgl/glsl/PlanarGrid.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/RealityMesh.js +9 -9
- package/lib/esm/internal/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Surface.js +11 -11
- package/lib/esm/internal/render/webgl/glsl/Surface.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Vertex.js +3 -3
- package/lib/esm/internal/render/webgl/glsl/Vertex.js.map +1 -1
- package/lib/esm/internal/tile/B3dmReader.d.ts.map +1 -1
- package/lib/esm/internal/tile/B3dmReader.js +2 -2
- package/lib/esm/internal/tile/B3dmReader.js.map +1 -1
- package/lib/esm/internal/tile/DynamicIModelTile.js +1 -0
- package/lib/esm/internal/tile/DynamicIModelTile.js.map +1 -1
- package/lib/esm/internal/tile/FetchCloudStorage.js +1 -1
- package/lib/esm/internal/tile/FetchCloudStorage.js.map +1 -1
- package/lib/esm/internal/tile/LRUTileList.d.ts.map +1 -1
- package/lib/esm/internal/tile/LRUTileList.js +4 -0
- package/lib/esm/internal/tile/LRUTileList.js.map +1 -1
- package/lib/esm/internal/tile/LayerTileTreeReferenceHandler.d.ts.map +1 -1
- package/lib/esm/internal/tile/LayerTileTreeReferenceHandler.js +2 -1
- package/lib/esm/internal/tile/LayerTileTreeReferenceHandler.js.map +1 -1
- package/lib/esm/internal/tile/OPCFormatInterpreter.js +5 -5
- package/lib/esm/internal/tile/OPCFormatInterpreter.js.map +1 -1
- package/lib/esm/internal/tile/OrbitGtTileTree.d.ts.map +1 -1
- package/lib/esm/internal/tile/OrbitGtTileTree.js +3 -3
- package/lib/esm/internal/tile/OrbitGtTileTree.js.map +1 -1
- package/lib/esm/internal/tile/RealityModelTileTree.d.ts.map +1 -1
- package/lib/esm/internal/tile/RealityModelTileTree.js +4 -4
- package/lib/esm/internal/tile/RealityModelTileTree.js.map +1 -1
- package/lib/esm/internal/tile/RealityTileLoader.d.ts.map +1 -1
- package/lib/esm/internal/tile/RealityTileLoader.js +3 -0
- package/lib/esm/internal/tile/RealityTileLoader.js.map +1 -1
- package/lib/esm/internal/tile/ThreeDTileFormatInterpreter.js +4 -4
- package/lib/esm/internal/tile/ThreeDTileFormatInterpreter.js.map +1 -1
- package/lib/esm/internal/tile/TileUserSet.d.ts.map +1 -1
- package/lib/esm/internal/tile/TileUserSet.js +4 -0
- package/lib/esm/internal/tile/TileUserSet.js.map +1 -1
- package/lib/esm/internal/tile/map/ArcGISTileMap.js +1 -1
- package/lib/esm/internal/tile/map/ArcGISTileMap.js.map +1 -1
- package/lib/esm/internal/tile/map/ArcGisUtilities.d.ts.map +1 -1
- package/lib/esm/internal/tile/map/ArcGisUtilities.js +4 -0
- package/lib/esm/internal/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +3 -1
- package/lib/esm/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/BingImageryProvider.js +3 -3
- package/lib/esm/internal/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +2 -2
- package/lib/esm/internal/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/MapTileAvailability.d.ts.map +1 -1
- package/lib/esm/internal/tile/map/MapTileAvailability.js +6 -3
- package/lib/esm/internal/tile/map/MapTileAvailability.js.map +1 -1
- package/lib/esm/internal/tile/map/WmtsCapabilities.d.ts.map +1 -1
- package/lib/esm/internal/tile/map/WmtsCapabilities.js +3 -2
- package/lib/esm/internal/tile/map/WmtsCapabilities.js.map +1 -1
- package/lib/esm/properties/FormattedQuantityDescription.d.ts.map +1 -1
- package/lib/esm/properties/FormattedQuantityDescription.js +2 -0
- package/lib/esm/properties/FormattedQuantityDescription.js.map +1 -1
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts.map +1 -1
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js +2 -0
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
- package/lib/esm/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
- package/lib/esm/quantity-formatting/QuantityFormatter.js +7 -4
- package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/esm/tile/GltfReader.d.ts +5 -2
- package/lib/esm/tile/GltfReader.d.ts.map +1 -1
- package/lib/esm/tile/GltfReader.js +63 -20
- package/lib/esm/tile/GltfReader.js.map +1 -1
- package/lib/esm/tile/RealityTile.d.ts.map +1 -1
- package/lib/esm/tile/RealityTile.js +3 -3
- package/lib/esm/tile/RealityTile.js.map +1 -1
- package/lib/esm/tile/RealityTileTree.d.ts.map +1 -1
- package/lib/esm/tile/RealityTileTree.js +6 -6
- package/lib/esm/tile/RealityTileTree.js.map +1 -1
- package/lib/esm/tile/TileAdmin.js.map +1 -1
- package/lib/esm/tile/TileDrawArgs.d.ts.map +1 -1
- package/lib/esm/tile/TileDrawArgs.js +2 -1
- package/lib/esm/tile/TileDrawArgs.js.map +1 -1
- package/lib/esm/tile/map/ImageryTileTree.js +2 -2
- package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapLayerFormatRegistry.js +2 -2
- package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
- package/lib/esm/tile/map/MapLayerSources.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerSources.js +10 -2
- package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
- package/lib/esm/tile/map/MapTile.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTile.js +11 -9
- package/lib/esm/tile/map/MapTile.js.map +1 -1
- package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTileTree.js +9 -8
- package/lib/esm/tile/map/MapTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapTilingScheme.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTilingScheme.js +2 -1
- package/lib/esm/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/esm/tools/Tool.js +2 -2
- package/lib/esm/tools/Tool.js.map +1 -1
- package/lib/esm/workers/ImdlParser/webpack.config.js +8 -0
- package/lib/public/draco_decoder.wasm +0 -0
- package/lib/public/scripts/parse-imdl-worker.js +1 -1
- package/lib/workers/webpack/parse-imdl-worker.js +1 -1
- package/package.json +26 -23
|
@@ -249,10 +249,10 @@ class FrameBuffers {
|
|
|
249
249
|
init(textures, depth, depthMS) {
|
|
250
250
|
if (!this.initPotentialMSFbos(textures, depth, depthMS))
|
|
251
251
|
return false;
|
|
252
|
-
this.depthAndOrder = FrameBuffer_1.FrameBuffer.create([textures.depthAndOrder], depth);
|
|
253
|
-
this.contours = FrameBuffer_1.FrameBuffer.create([textures.contours], depth);
|
|
254
|
-
this.hilite = FrameBuffer_1.FrameBuffer.create([textures.hilite], depth);
|
|
255
|
-
this.hiliteUsingStencil = FrameBuffer_1.FrameBuffer.create([textures.hilite], depth);
|
|
252
|
+
this.depthAndOrder = FrameBuffer_1.FrameBuffer.create([(0, core_bentley_1.expectDefined)(textures.depthAndOrder)], depth);
|
|
253
|
+
this.contours = FrameBuffer_1.FrameBuffer.create([(0, core_bentley_1.expectDefined)(textures.contours)], depth);
|
|
254
|
+
this.hilite = FrameBuffer_1.FrameBuffer.create([(0, core_bentley_1.expectDefined)(textures.hilite)], depth);
|
|
255
|
+
this.hiliteUsingStencil = FrameBuffer_1.FrameBuffer.create([(0, core_bentley_1.expectDefined)(textures.hilite)], depth);
|
|
256
256
|
if (!this.depthAndOrder || !this.contours || !this.hilite || !this.hiliteUsingStencil)
|
|
257
257
|
return false;
|
|
258
258
|
(0, core_bentley_1.assert)(undefined === this.opaqueAll);
|
|
@@ -363,7 +363,13 @@ class FrameBuffers {
|
|
|
363
363
|
if (undefined === boundColor)
|
|
364
364
|
return;
|
|
365
365
|
if (undefined === this.stencilSet) {
|
|
366
|
+
if (undefined === textures.volClassBlend) {
|
|
367
|
+
throw new Error("Volume classifier blend texture is not defined.");
|
|
368
|
+
}
|
|
366
369
|
if (undefined !== depthMS) { // if multisampling use the multisampled depth everywhere
|
|
370
|
+
if (undefined === textures.volClassBlendMsBuff) {
|
|
371
|
+
throw new Error("Volume classifier blend multisample buffer is not defined.");
|
|
372
|
+
}
|
|
367
373
|
this.stencilSet = FrameBuffer_1.FrameBuffer.create([], depth, [], [], depthMS);
|
|
368
374
|
this.altZOnly = FrameBuffer_1.FrameBuffer.create([], volClassDepth, [], [], volClassDepthMS);
|
|
369
375
|
this.volClassCreateBlend = FrameBuffer_1.FrameBuffer.create([textures.volClassBlend], depth, [textures.volClassBlendMsBuff], [GL_1.GL.MultiSampling.Filter.Nearest], depthMS);
|
|
@@ -488,25 +494,25 @@ class Geometry {
|
|
|
488
494
|
}
|
|
489
495
|
init(textures) {
|
|
490
496
|
(0, core_bentley_1.assert)(undefined === this.composite);
|
|
491
|
-
this.composite = CachedGeometry_1.CompositeGeometry.createGeometry(textures.color
|
|
497
|
+
this.composite = CachedGeometry_1.CompositeGeometry.createGeometry((0, core_bentley_1.expectDefined)(textures.color?.getHandle()), (0, core_bentley_1.expectDefined)(textures.accumulation?.getHandle()), (0, core_bentley_1.expectDefined)(textures.revealage?.getHandle()), (0, core_bentley_1.expectDefined)(textures.hilite?.getHandle()));
|
|
492
498
|
if (undefined === this.composite)
|
|
493
499
|
return false;
|
|
494
500
|
(0, core_bentley_1.assert)(undefined === this.copyPickBuffers);
|
|
495
|
-
this.copyPickBuffers = CachedGeometry_1.CopyPickBufferGeometry.createGeometry(textures.featureId
|
|
501
|
+
this.copyPickBuffers = CachedGeometry_1.CopyPickBufferGeometry.createGeometry((0, core_bentley_1.expectDefined)(textures.featureId?.getHandle()), (0, core_bentley_1.expectDefined)(textures.depthAndOrder?.getHandle()));
|
|
496
502
|
this.clearTranslucent = CachedGeometry_1.ViewportQuadGeometry.create(16 /* TechniqueId.OITClearTranslucent */);
|
|
497
503
|
this.clearPickAndColor = CachedGeometry_1.ViewportQuadGeometry.create(21 /* TechniqueId.ClearPickAndColor */);
|
|
498
504
|
return undefined !== this.copyPickBuffers && undefined !== this.clearTranslucent && undefined !== this.clearPickAndColor;
|
|
499
505
|
}
|
|
500
506
|
enableOcclusion(textures, depth) {
|
|
501
507
|
(0, core_bentley_1.assert)(undefined !== textures.occlusion && undefined !== textures.occlusionBlur && undefined !== textures.depthAndOrder && undefined !== textures.occlusionBlur);
|
|
502
|
-
this.composite.occlusion = textures.occlusion.getHandle();
|
|
503
|
-
this.occlusion = CachedGeometry_1.AmbientOcclusionGeometry.createGeometry(textures.depthAndOrder.getHandle(), depth.getHandle());
|
|
504
|
-
this.occlusionXBlur = CachedGeometry_1.BlurGeometry.createGeometry(textures.occlusion.getHandle(), textures.depthAndOrder.getHandle(), undefined, new core_geometry_1.Vector2d(1.0, 0.0), CachedGeometry_1.BlurType.NoTest);
|
|
508
|
+
(0, core_bentley_1.expectDefined)(this.composite).occlusion = textures.occlusion.getHandle();
|
|
509
|
+
this.occlusion = CachedGeometry_1.AmbientOcclusionGeometry.createGeometry((0, core_bentley_1.expectDefined)(textures.depthAndOrder.getHandle()), (0, core_bentley_1.expectDefined)(depth.getHandle()));
|
|
510
|
+
this.occlusionXBlur = CachedGeometry_1.BlurGeometry.createGeometry((0, core_bentley_1.expectDefined)(textures.occlusion.getHandle()), (0, core_bentley_1.expectDefined)(textures.depthAndOrder.getHandle()), undefined, new core_geometry_1.Vector2d(1.0, 0.0), CachedGeometry_1.BlurType.NoTest);
|
|
505
511
|
const depthAndOrderHidden = (undefined === textures.depthAndOrderHidden ? textures.revealage?.getHandle() : textures.depthAndOrderHidden.getHandle());
|
|
506
|
-
this.occlusionYBlur = CachedGeometry_1.BlurGeometry.createGeometry(textures.occlusionBlur.getHandle(), textures.depthAndOrder.getHandle(), depthAndOrderHidden, new core_geometry_1.Vector2d(0.0, 1.0), CachedGeometry_1.BlurType.TestOrder);
|
|
512
|
+
this.occlusionYBlur = CachedGeometry_1.BlurGeometry.createGeometry((0, core_bentley_1.expectDefined)(textures.occlusionBlur.getHandle()), (0, core_bentley_1.expectDefined)(textures.depthAndOrder.getHandle()), depthAndOrderHidden, new core_geometry_1.Vector2d(0.0, 1.0), CachedGeometry_1.BlurType.TestOrder);
|
|
507
513
|
}
|
|
508
514
|
disableOcclusion() {
|
|
509
|
-
this.composite.occlusion = undefined;
|
|
515
|
+
(0, core_bentley_1.expectDefined)(this.composite).occlusion = undefined;
|
|
510
516
|
this.occlusion = (0, core_bentley_1.dispose)(this.occlusion);
|
|
511
517
|
this.occlusionXBlur = (0, core_bentley_1.dispose)(this.occlusionXBlur);
|
|
512
518
|
this.occlusionYBlur = (0, core_bentley_1.dispose)(this.occlusionYBlur);
|
|
@@ -514,9 +520,9 @@ class Geometry {
|
|
|
514
520
|
enableVolumeClassifier(textures, depth) {
|
|
515
521
|
(0, core_bentley_1.assert)(undefined === this.volClassColorStencil && undefined === this.volClassCopyZ && undefined === this.volClassSetBlend && undefined === this.volClassBlend);
|
|
516
522
|
this.volClassColorStencil = CachedGeometry_1.ViewportQuadGeometry.create(20 /* TechniqueId.VolClassColorUsingStencil */);
|
|
517
|
-
this.volClassCopyZ = CachedGeometry_1.SingleTexturedViewportQuadGeometry.createGeometry(depth.getHandle(), 31 /* TechniqueId.VolClassCopyZ */);
|
|
518
|
-
this.volClassSetBlend = CachedGeometry_1.VolumeClassifierGeometry.createVCGeometry(depth.getHandle());
|
|
519
|
-
this.volClassBlend = CachedGeometry_1.SingleTexturedViewportQuadGeometry.createGeometry(textures.volClassBlend
|
|
523
|
+
this.volClassCopyZ = CachedGeometry_1.SingleTexturedViewportQuadGeometry.createGeometry((0, core_bentley_1.expectDefined)(depth.getHandle()), 31 /* TechniqueId.VolClassCopyZ */);
|
|
524
|
+
this.volClassSetBlend = CachedGeometry_1.VolumeClassifierGeometry.createVCGeometry((0, core_bentley_1.expectDefined)(depth.getHandle()));
|
|
525
|
+
this.volClassBlend = CachedGeometry_1.SingleTexturedViewportQuadGeometry.createGeometry((0, core_bentley_1.expectDefined)(textures.volClassBlend?.getHandle()), 33 /* TechniqueId.VolClassBlend */);
|
|
520
526
|
return undefined !== this.volClassColorStencil && undefined !== this.volClassCopyZ && undefined !== this.volClassSetBlend && undefined !== this.volClassBlend;
|
|
521
527
|
}
|
|
522
528
|
disableVolumeClassifier() {
|
|
@@ -801,7 +807,7 @@ class Compositor extends SceneCompositor {
|
|
|
801
807
|
forceBufferChange() { this._width = this._height = -1; }
|
|
802
808
|
get featureIds() { return this.getSamplerTexture(this._readPickDataFromPingPong ? 0 : 1); }
|
|
803
809
|
get depthAndOrder() { return this.getSamplerTexture(this._readPickDataFromPingPong ? 1 : 2); }
|
|
804
|
-
get _samplerFbo() { return this._readPickDataFromPingPong ? this._fbos.pingPong : this._fbos.opaqueAll; }
|
|
810
|
+
get _samplerFbo() { return this._readPickDataFromPingPong ? (0, core_bentley_1.expectDefined)(this._fbos.pingPong) : (0, core_bentley_1.expectDefined)(this._fbos.opaqueAll); }
|
|
805
811
|
getSamplerTexture(index) { return this._samplerFbo.getColor(index); }
|
|
806
812
|
drawPrimitive(primitive, exec, outputsToPick) {
|
|
807
813
|
if ((outputsToPick && this._primitiveDrawState !== PrimitiveDrawState.NonPickable) ||
|
|
@@ -809,14 +815,14 @@ class Compositor extends SceneCompositor {
|
|
|
809
815
|
primitive.draw(exec);
|
|
810
816
|
}
|
|
811
817
|
clearOpaque(needComposite) {
|
|
812
|
-
const fbo = needComposite ? this._fbos.opaqueAndCompositeAll : this._fbos.opaqueAll;
|
|
818
|
+
const fbo = needComposite ? (0, core_bentley_1.expectDefined)(this._fbos.opaqueAndCompositeAll) : (0, core_bentley_1.expectDefined)(this._fbos.opaqueAll);
|
|
813
819
|
const system = System_1.System.instance;
|
|
814
820
|
system.frameBufferStack.execute(fbo, true, this.useMsBuffers, () => {
|
|
815
821
|
// Clear pick data buffers to 0's and color buffer to background color
|
|
816
822
|
// (0,0,0,0) in elementID0 and ElementID1 buffers indicates invalid element id
|
|
817
823
|
// (0,0,0,0) in DepthAndOrder buffer indicates render order 0 and encoded depth of 0 (= far plane)
|
|
818
824
|
system.applyRenderState(this._noDepthMaskRenderState);
|
|
819
|
-
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, this._geom.clearPickAndColor);
|
|
825
|
+
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, (0, core_bentley_1.expectDefined)(this._geom.clearPickAndColor));
|
|
820
826
|
this.target.techniques.draw(params);
|
|
821
827
|
// Clear depth buffer
|
|
822
828
|
system.applyRenderState(RenderState_1.RenderState.defaults); // depthMask == true.
|
|
@@ -825,7 +831,7 @@ class Compositor extends SceneCompositor {
|
|
|
825
831
|
});
|
|
826
832
|
}
|
|
827
833
|
renderLayers(commands, needComposite, pass) {
|
|
828
|
-
const fbo = (needComposite ? this._fbos.opaqueAndCompositeAll : this._fbos.opaqueAll);
|
|
834
|
+
const fbo = (needComposite ? (0, core_bentley_1.expectDefined)(this._fbos.opaqueAndCompositeAll) : (0, core_bentley_1.expectDefined)(this._fbos.opaqueAll));
|
|
829
835
|
const useMsBuffers = 1 /* RenderPass.OpaqueLayers */ === pass && fbo.isMultisampled && this.useMsBuffers;
|
|
830
836
|
this._readPickDataFromPingPong = !useMsBuffers;
|
|
831
837
|
System_1.System.instance.frameBufferStack.execute(fbo, true, useMsBuffers, () => {
|
|
@@ -841,7 +847,7 @@ class Compositor extends SceneCompositor {
|
|
|
841
847
|
const needComposite = 0 /* CompositeFlags.None */ !== compositeFlags;
|
|
842
848
|
const fbStack = System_1.System.instance.frameBufferStack;
|
|
843
849
|
// Output the first 2 passes to color and pick data buffers. (All 3 in the case of rendering for readPixels() or ambient occlusion).
|
|
844
|
-
let fbo = (needComposite ? this._fbos.opaqueAndCompositeAll : this._fbos.opaqueAll);
|
|
850
|
+
let fbo = (needComposite ? (0, core_bentley_1.expectDefined)(this._fbos.opaqueAndCompositeAll) : (0, core_bentley_1.expectDefined)(this._fbos.opaqueAll));
|
|
845
851
|
const useMsBuffers = fbo.isMultisampled && this.useMsBuffers;
|
|
846
852
|
this._readPickDataFromPingPong = !useMsBuffers; // if multisampling then can read pick textures directly.
|
|
847
853
|
fbStack.execute(fbo, true, useMsBuffers, () => {
|
|
@@ -857,7 +863,7 @@ class Compositor extends SceneCompositor {
|
|
|
857
863
|
this._readPickDataFromPingPong = false;
|
|
858
864
|
// The general pass (and following) will not bother to write to pick buffers and so can read from the actual pick buffers.
|
|
859
865
|
if (!renderForReadPixels) {
|
|
860
|
-
fbo = (needComposite ? this._fbos.opaqueAndCompositeColor : this._fbos.opaqueColor);
|
|
866
|
+
fbo = (needComposite ? (0, core_bentley_1.expectDefined)(this._fbos.opaqueAndCompositeColor) : (0, core_bentley_1.expectDefined)(this._fbos.opaqueColor));
|
|
861
867
|
fbStack.execute(fbo, true, useMsBuffers, () => {
|
|
862
868
|
this.drawPass(commands, 5 /* RenderPass.OpaqueGeneral */, false);
|
|
863
869
|
this.drawPass(commands, 9 /* RenderPass.HiddenEdge */, false);
|
|
@@ -871,7 +877,7 @@ class Compositor extends SceneCompositor {
|
|
|
871
877
|
const fbStack = System_1.System.instance.frameBufferStack;
|
|
872
878
|
const haveHiddenEdges = 0 !== commands.getCommands(9 /* RenderPass.HiddenEdge */).length;
|
|
873
879
|
// Output the linear, planar, and pickable surfaces to color and pick data buffers.
|
|
874
|
-
let fbo = this._fbos.opaqueAndCompositeAll;
|
|
880
|
+
let fbo = (0, core_bentley_1.expectDefined)(this._fbos.opaqueAndCompositeAll);
|
|
875
881
|
const useMsBuffers = fbo.isMultisampled && this.useMsBuffers;
|
|
876
882
|
this._readPickDataFromPingPong = !useMsBuffers; // if multisampling then can read pick textures directly.
|
|
877
883
|
fbStack.execute(fbo, true, useMsBuffers, () => {
|
|
@@ -885,7 +891,7 @@ class Compositor extends SceneCompositor {
|
|
|
885
891
|
});
|
|
886
892
|
this._readPickDataFromPingPong = false;
|
|
887
893
|
// Output the non-pickable surfaces and hidden edges to just the color buffer.
|
|
888
|
-
fbo = this._fbos.opaqueAndCompositeColor;
|
|
894
|
+
fbo = (0, core_bentley_1.expectDefined)(this._fbos.opaqueAndCompositeColor);
|
|
889
895
|
fbStack.execute(fbo, true, useMsBuffers, () => {
|
|
890
896
|
this._primitiveDrawState = PrimitiveDrawState.NonPickable;
|
|
891
897
|
this.drawPass(commands, 5 /* RenderPass.OpaqueGeneral */, false);
|
|
@@ -902,16 +908,16 @@ class Compositor extends SceneCompositor {
|
|
|
902
908
|
// If multisampling then we will use the accumulation texture for featureIDs and a special texture for depthAndOrder since the revealage texture is not the right type for multisampling.
|
|
903
909
|
// First we will need to copy what's in the pick buffers so far into the hidden pick buffers.
|
|
904
910
|
System_1.System.instance.applyRenderState(this._noDepthMaskRenderState);
|
|
905
|
-
fbo = (useMsBuffers ? this._fbos.pingPongMS : this._fbos.pingPong);
|
|
911
|
+
fbo = (useMsBuffers ? (0, core_bentley_1.expectDefined)(this._fbos.pingPongMS) : (0, core_bentley_1.expectDefined)(this._fbos.pingPong));
|
|
906
912
|
fbStack.execute(fbo, true, useMsBuffers, () => {
|
|
907
|
-
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, this._geom.copyPickBuffers);
|
|
913
|
+
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, (0, core_bentley_1.expectDefined)(this._geom.copyPickBuffers));
|
|
908
914
|
this.target.techniques.draw(params);
|
|
909
915
|
});
|
|
910
916
|
if (useMsBuffers)
|
|
911
917
|
fbo.blitMsBuffersToTextures(false, 1); // only want to blit the depth/order target
|
|
912
918
|
// Now draw the hidden edges, using an fbo which places their depth/order into the hidden pick buffers.
|
|
913
919
|
// Since we are not writing to the actual pick buffers we let this._readPickDataFromPingPong remain false.
|
|
914
|
-
fbo = this._fbos.opaqueAndCompositeAllHidden;
|
|
920
|
+
fbo = (0, core_bentley_1.expectDefined)(this._fbos.opaqueAndCompositeAllHidden);
|
|
915
921
|
this._primitiveDrawState = PrimitiveDrawState.Pickable;
|
|
916
922
|
fbStack.execute(fbo, true, useMsBuffers, () => {
|
|
917
923
|
this.drawPass(commands, 9 /* RenderPass.HiddenEdge */, false);
|
|
@@ -957,7 +963,7 @@ class Compositor extends SceneCompositor {
|
|
|
957
963
|
}
|
|
958
964
|
}
|
|
959
965
|
const needComposite = 0 /* CompositeFlags.None */ !== compositeFlags;
|
|
960
|
-
const fbo = (needComposite ? this._fbos.opaqueAndCompositeColor : this._fbos.opaqueColor);
|
|
966
|
+
const fbo = (needComposite ? (0, core_bentley_1.expectDefined)(this._fbos.opaqueAndCompositeColor) : (0, core_bentley_1.expectDefined)(this._fbos.opaqueColor));
|
|
961
967
|
const useMsBuffers = fbo.isMultisampled && this.useMsBuffers;
|
|
962
968
|
const system = System_1.System.instance;
|
|
963
969
|
const fbStack = system.frameBufferStack;
|
|
@@ -1028,21 +1034,21 @@ class Compositor extends SceneCompositor {
|
|
|
1028
1034
|
const fbStack = System_1.System.instance.frameBufferStack;
|
|
1029
1035
|
if (renderForReadPixels || needAO) {
|
|
1030
1036
|
this._readPickDataFromPingPong = true;
|
|
1031
|
-
fbStack.execute(needComposite ? this._fbos.opaqueAndCompositeAll : this._fbos.opaqueAll, true, this.useMsBuffers, () => {
|
|
1037
|
+
fbStack.execute(needComposite ? (0, core_bentley_1.expectDefined)(this._fbos.opaqueAndCompositeAll) : (0, core_bentley_1.expectDefined)(this._fbos.opaqueAll), true, this.useMsBuffers, () => {
|
|
1032
1038
|
this.drawPass(commands, 5 /* RenderPass.OpaqueGeneral */, true, 20 /* RenderPass.VolumeClassifiedRealityData */);
|
|
1033
1039
|
});
|
|
1034
1040
|
}
|
|
1035
1041
|
else {
|
|
1036
1042
|
this._readPickDataFromPingPong = false;
|
|
1037
|
-
fbStack.execute(needComposite ? this._fbos.opaqueAndCompositeColor : this._fbos.opaqueColor, true, this.useMsBuffers, () => {
|
|
1043
|
+
fbStack.execute(needComposite ? (0, core_bentley_1.expectDefined)(this._fbos.opaqueAndCompositeColor) : (0, core_bentley_1.expectDefined)(this._fbos.opaqueColor), true, this.useMsBuffers, () => {
|
|
1038
1044
|
this.drawPass(commands, 5 /* RenderPass.OpaqueGeneral */, false, 20 /* RenderPass.VolumeClassifiedRealityData */);
|
|
1039
1045
|
});
|
|
1040
1046
|
}
|
|
1041
1047
|
}
|
|
1042
1048
|
renderIndexedClassifierForReadPixels(cmds, state, renderForIntersectingVolumes, needComposite) {
|
|
1043
1049
|
this._readPickDataFromPingPong = true;
|
|
1044
|
-
const fbo = (renderForIntersectingVolumes ? (needComposite ? this._fbos.idsAndZComposite : this._fbos.idsAndZ)
|
|
1045
|
-
: (needComposite ? this._fbos.idsAndAltZComposite : this._fbos.idsAndAltZ));
|
|
1050
|
+
const fbo = (renderForIntersectingVolumes ? (needComposite ? (0, core_bentley_1.expectDefined)(this._fbos.idsAndZComposite) : (0, core_bentley_1.expectDefined)(this._fbos.idsAndZ))
|
|
1051
|
+
: (needComposite ? (0, core_bentley_1.expectDefined)(this._fbos.idsAndAltZComposite) : (0, core_bentley_1.expectDefined)(this._fbos.idsAndAltZ)));
|
|
1046
1052
|
System_1.System.instance.frameBufferStack.execute(fbo, true, false, () => {
|
|
1047
1053
|
System_1.System.instance.applyRenderState(state);
|
|
1048
1054
|
this.target.techniques.execute(this.target, cmds, 5 /* RenderPass.OpaqueGeneral */);
|
|
@@ -1051,29 +1057,29 @@ class Compositor extends SceneCompositor {
|
|
|
1051
1057
|
}
|
|
1052
1058
|
clearTranslucent() {
|
|
1053
1059
|
System_1.System.instance.applyRenderState(this._noDepthMaskRenderState);
|
|
1054
|
-
System_1.System.instance.frameBufferStack.execute(this._fbos.clearTranslucent, true, false, () => {
|
|
1055
|
-
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, this._geom.clearTranslucent);
|
|
1060
|
+
System_1.System.instance.frameBufferStack.execute((0, core_bentley_1.expectDefined)(this._fbos.clearTranslucent), true, false, () => {
|
|
1061
|
+
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, (0, core_bentley_1.expectDefined)(this._geom.clearTranslucent));
|
|
1056
1062
|
this.target.techniques.draw(params);
|
|
1057
1063
|
});
|
|
1058
1064
|
}
|
|
1059
1065
|
renderTranslucent(commands) {
|
|
1060
|
-
System_1.System.instance.frameBufferStack.execute(this._fbos.translucent, true, false, () => {
|
|
1066
|
+
System_1.System.instance.frameBufferStack.execute((0, core_bentley_1.expectDefined)(this._fbos.translucent), true, false, () => {
|
|
1061
1067
|
this.drawPass(commands, 8 /* RenderPass.Translucent */);
|
|
1062
1068
|
});
|
|
1063
1069
|
}
|
|
1064
1070
|
getBackgroundFbo(needComposite) {
|
|
1065
|
-
return needComposite ? this._fbos.opaqueAndCompositeColor : this._fbos.opaqueColor;
|
|
1071
|
+
return needComposite ? (0, core_bentley_1.expectDefined)(this._fbos.opaqueAndCompositeColor) : (0, core_bentley_1.expectDefined)(this._fbos.opaqueColor);
|
|
1066
1072
|
}
|
|
1067
1073
|
pingPong() {
|
|
1068
|
-
if (this._fbos.opaqueAll.isMultisampled && this.useMsBuffers) {
|
|
1074
|
+
if ((0, core_bentley_1.expectDefined)(this._fbos.opaqueAll).isMultisampled && this.useMsBuffers) {
|
|
1069
1075
|
// If we are multisampling we can just blit the FeatureId and DepthAndOrder MS buffers to their textures.
|
|
1070
|
-
this._fbos.opaqueAll
|
|
1071
|
-
this._fbos.opaqueAll
|
|
1076
|
+
this._fbos.opaqueAll?.blitMsBuffersToTextures(false, 1);
|
|
1077
|
+
this._fbos.opaqueAll?.blitMsBuffersToTextures(false, 2);
|
|
1072
1078
|
}
|
|
1073
1079
|
else {
|
|
1074
1080
|
System_1.System.instance.applyRenderState(this._noDepthMaskRenderState);
|
|
1075
|
-
System_1.System.instance.frameBufferStack.execute(this._fbos.pingPong, true, this.useMsBuffers, () => {
|
|
1076
|
-
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, this._geom.copyPickBuffers);
|
|
1081
|
+
System_1.System.instance.frameBufferStack.execute((0, core_bentley_1.expectDefined)(this._fbos.pingPong), true, this.useMsBuffers, () => {
|
|
1082
|
+
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, (0, core_bentley_1.expectDefined)(this._geom.copyPickBuffers));
|
|
1077
1083
|
this.target.techniques.draw(params);
|
|
1078
1084
|
});
|
|
1079
1085
|
}
|
|
@@ -1090,29 +1096,29 @@ class Compositor extends SceneCompositor {
|
|
|
1090
1096
|
renderAmbientOcclusion() {
|
|
1091
1097
|
const system = System_1.System.instance;
|
|
1092
1098
|
// Render unblurred ambient occlusion based on depth buffer
|
|
1093
|
-
let fbo = this._fbos.occlusion;
|
|
1099
|
+
let fbo = (0, core_bentley_1.expectDefined)(this._fbos.occlusion);
|
|
1094
1100
|
this.target.beginPerfMetricRecord("Compute AO");
|
|
1095
1101
|
system.frameBufferStack.execute(fbo, true, false, () => {
|
|
1096
1102
|
System_1.System.instance.applyRenderState(RenderState_1.RenderState.defaults);
|
|
1097
|
-
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, this._geom.occlusion);
|
|
1103
|
+
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, (0, core_bentley_1.expectDefined)(this._geom.occlusion));
|
|
1098
1104
|
this.target.techniques.draw(params);
|
|
1099
1105
|
});
|
|
1100
1106
|
this.target.endPerfMetricRecord();
|
|
1101
1107
|
// Render the X-blurred ambient occlusion based on unblurred ambient occlusion
|
|
1102
|
-
fbo = this._fbos.occlusionBlur;
|
|
1108
|
+
fbo = (0, core_bentley_1.expectDefined)(this._fbos.occlusionBlur);
|
|
1103
1109
|
this.target.beginPerfMetricRecord("Blur AO X");
|
|
1104
1110
|
system.frameBufferStack.execute(fbo, true, false, () => {
|
|
1105
1111
|
System_1.System.instance.applyRenderState(RenderState_1.RenderState.defaults);
|
|
1106
|
-
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, this._geom.occlusionXBlur);
|
|
1112
|
+
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, (0, core_bentley_1.expectDefined)(this._geom.occlusionXBlur));
|
|
1107
1113
|
this.target.techniques.draw(params);
|
|
1108
1114
|
});
|
|
1109
1115
|
this.target.endPerfMetricRecord();
|
|
1110
1116
|
// Render the Y-blurred ambient occlusion based on X-blurred ambient occlusion (render into original occlusion framebuffer)
|
|
1111
|
-
fbo = this._fbos.occlusion;
|
|
1117
|
+
fbo = (0, core_bentley_1.expectDefined)(this._fbos.occlusion);
|
|
1112
1118
|
this.target.beginPerfMetricRecord("Blur AO Y");
|
|
1113
1119
|
system.frameBufferStack.execute(fbo, true, false, () => {
|
|
1114
1120
|
System_1.System.instance.applyRenderState(RenderState_1.RenderState.defaults);
|
|
1115
|
-
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, this._geom.occlusionYBlur);
|
|
1121
|
+
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, (0, core_bentley_1.expectDefined)(this._geom.occlusionYBlur));
|
|
1116
1122
|
this.target.techniques.draw(params);
|
|
1117
1123
|
});
|
|
1118
1124
|
this.target.endPerfMetricRecord();
|
|
@@ -1214,11 +1220,11 @@ class Compositor extends SceneCompositor {
|
|
|
1214
1220
|
(0, core_bentley_1.assert)(false, "Failed to initialize occlusion textures");
|
|
1215
1221
|
return false;
|
|
1216
1222
|
}
|
|
1217
|
-
if (!this._fbos.enableOcclusion(this._textures, this._depth, this._depthMS)) {
|
|
1223
|
+
if (!this._fbos.enableOcclusion(this._textures, (0, core_bentley_1.expectDefined)(this._depth), this._depthMS)) {
|
|
1218
1224
|
(0, core_bentley_1.assert)(false, "Failed to initialize occlusion frame buffers");
|
|
1219
1225
|
return false;
|
|
1220
1226
|
}
|
|
1221
|
-
this._geom.enableOcclusion(this._textures, this._depth);
|
|
1227
|
+
this._geom.enableOcclusion(this._textures, (0, core_bentley_1.expectDefined)(this._depth));
|
|
1222
1228
|
}
|
|
1223
1229
|
else {
|
|
1224
1230
|
this._geom.disableOcclusion();
|
|
@@ -1236,9 +1242,9 @@ class Compositor extends SceneCompositor {
|
|
|
1236
1242
|
return false;
|
|
1237
1243
|
if (!this._textures.enableVolumeClassifier(width, height, this._antialiasSamples))
|
|
1238
1244
|
return false;
|
|
1239
|
-
if (!this._geom.enableVolumeClassifier(this._textures, this._depth))
|
|
1245
|
+
if (!this._geom.enableVolumeClassifier(this._textures, (0, core_bentley_1.expectDefined)(this._depth)))
|
|
1240
1246
|
return false;
|
|
1241
|
-
this.enableVolumeClassifierFbos(this._textures, this._depth, this._vcAltDepthStencil, this._depthMS, this._vcAltDepthStencilMS);
|
|
1247
|
+
this.enableVolumeClassifierFbos(this._textures, (0, core_bentley_1.expectDefined)(this._depth), this._vcAltDepthStencil, this._depthMS, this._vcAltDepthStencilMS);
|
|
1242
1248
|
this._haveVolumeClassifier = true;
|
|
1243
1249
|
}
|
|
1244
1250
|
else {
|
|
@@ -1319,7 +1325,7 @@ class Compositor extends SceneCompositor {
|
|
|
1319
1325
|
this.renderLayers(commands, needComposite, 7 /* RenderPass.TranslucentLayers */);
|
|
1320
1326
|
this.target.endPerfMetricRecord();
|
|
1321
1327
|
if (needComposite) {
|
|
1322
|
-
this._geom.composite.update(compositeFlags);
|
|
1328
|
+
(0, core_bentley_1.expectDefined)(this._geom.composite).update(compositeFlags);
|
|
1323
1329
|
this.target.beginPerfMetricRecord("Render Translucent");
|
|
1324
1330
|
this.clearTranslucent();
|
|
1325
1331
|
this.renderTranslucent(commands);
|
|
@@ -1397,7 +1403,7 @@ class Compositor extends SceneCompositor {
|
|
|
1397
1403
|
// (If *only* overlays exist, then clearOpaque() above already took care of this).
|
|
1398
1404
|
if (haveRenderCommands) {
|
|
1399
1405
|
const system = System_1.System.instance;
|
|
1400
|
-
system.frameBufferStack.execute(this._fbos.opaqueColor, true, this.useMsBuffers, () => {
|
|
1406
|
+
system.frameBufferStack.execute((0, core_bentley_1.expectDefined)(this._fbos.opaqueColor), true, this.useMsBuffers, () => {
|
|
1401
1407
|
system.applyRenderState(RenderState_1.RenderState.defaults);
|
|
1402
1408
|
system.context.clearDepth(1.0);
|
|
1403
1409
|
system.context.clear(GL_1.GL.BufferBit.Depth);
|
|
@@ -1674,14 +1680,14 @@ class Compositor extends SceneCompositor {
|
|
|
1674
1680
|
}
|
|
1675
1681
|
renderIndexedVolumeClassifier(cmdsByIndex, needComposite) {
|
|
1676
1682
|
// Set the stencil for the given classifier stencil volume.
|
|
1677
|
-
System_1.System.instance.frameBufferStack.execute(this._fbos.stencilSet, false, this.useMsBuffers, () => {
|
|
1678
|
-
this.target.pushState(this._vcBranchState);
|
|
1679
|
-
System_1.System.instance.applyRenderState(this._vcSetStencilRenderState);
|
|
1683
|
+
System_1.System.instance.frameBufferStack.execute((0, core_bentley_1.expectDefined)(this._fbos.stencilSet), false, this.useMsBuffers, () => {
|
|
1684
|
+
this.target.pushState((0, core_bentley_1.expectDefined)(this._vcBranchState));
|
|
1685
|
+
System_1.System.instance.applyRenderState((0, core_bentley_1.expectDefined)(this._vcSetStencilRenderState));
|
|
1680
1686
|
this.target.techniques.executeForIndexedClassifier(this.target, cmdsByIndex, 6 /* RenderPass.Classification */);
|
|
1681
1687
|
this.target.popBranch();
|
|
1682
1688
|
});
|
|
1683
1689
|
// Process the stencil for the pick data.
|
|
1684
|
-
this.renderIndexedClassifierForReadPixels(cmdsByIndex, this._vcPickDataRenderState, true, needComposite);
|
|
1690
|
+
this.renderIndexedClassifierForReadPixels(cmdsByIndex, (0, core_bentley_1.expectDefined)(this._vcPickDataRenderState), true, needComposite);
|
|
1685
1691
|
}
|
|
1686
1692
|
renderVolumeClassification(commands, compositeFlags, renderForReadPixels) {
|
|
1687
1693
|
// Sometimes we need to render the classifier stencil volumes one at a time, if so draw them from the cmdsByIndex list
|
|
@@ -1719,8 +1725,8 @@ class Compositor extends SceneCompositor {
|
|
|
1719
1725
|
this.target.techniques.execute(this.target, cmds, 5 /* RenderPass.OpaqueGeneral */);
|
|
1720
1726
|
}
|
|
1721
1727
|
else {
|
|
1722
|
-
this.target.pushState(this._vcBranchState);
|
|
1723
|
-
System_1.System.instance.applyRenderState(this._vcDebugRenderState);
|
|
1728
|
+
this.target.pushState((0, core_bentley_1.expectDefined)(this._vcBranchState));
|
|
1729
|
+
System_1.System.instance.applyRenderState((0, core_bentley_1.expectDefined)(this._vcDebugRenderState));
|
|
1724
1730
|
this.target.techniques.execute(this.target, cmds, 6 /* RenderPass.Classification */);
|
|
1725
1731
|
this.target.popBranch();
|
|
1726
1732
|
}
|
|
@@ -1748,7 +1754,7 @@ class Compositor extends SceneCompositor {
|
|
|
1748
1754
|
const needAltZ = (doColorByElement && !doColorByElementForIntersectingVolumes) || needOutsideDraw;
|
|
1749
1755
|
let zOnlyFbo = this._fbos.stencilSet;
|
|
1750
1756
|
let volClassBlendFbo = this._fbos.volClassCreateBlend;
|
|
1751
|
-
let volClassBlendReadZTexture = this._vcAltDepthStencil
|
|
1757
|
+
let volClassBlendReadZTexture = (0, core_bentley_1.expectDefined)(this._vcAltDepthStencil?.getHandle());
|
|
1752
1758
|
let volClassBlendReadZTextureFbo = this._fbos.altZOnly;
|
|
1753
1759
|
if (!needAltZ) {
|
|
1754
1760
|
// Initialize the blend texture and the stencil.
|
|
@@ -1765,15 +1771,15 @@ class Compositor extends SceneCompositor {
|
|
|
1765
1771
|
zOnlyFbo = this._fbos.altZOnly;
|
|
1766
1772
|
volClassBlendFbo = this._fbos.volClassCreateBlendAltZ;
|
|
1767
1773
|
(0, core_bentley_1.assert)(undefined !== volClassBlendFbo);
|
|
1768
|
-
volClassBlendReadZTexture = this._depth
|
|
1774
|
+
volClassBlendReadZTexture = (0, core_bentley_1.expectDefined)(this._depth?.getHandle());
|
|
1769
1775
|
volClassBlendReadZTextureFbo = this._fbos.stencilSet;
|
|
1770
1776
|
if (this._antialiasSamples > 1 && undefined !== this._depthMS && this.useMsBuffers)
|
|
1771
1777
|
volClassBlendReadZTextureFbo.blitMsBuffersToTextures(true, -1); // make sure that the Z buffer that we are about to read has been blitted
|
|
1772
1778
|
// Copy the current Z into the Alt-Z. At the same time go ahead and clear the stencil and the blend texture.
|
|
1773
1779
|
fbStack.execute(volClassBlendFbo, true, this.useMsBuffers, () => {
|
|
1774
1780
|
this.target.pushState(this.target.decorationsState);
|
|
1775
|
-
System_1.System.instance.applyRenderState(this._vcCopyZRenderState);
|
|
1776
|
-
this.target.techniques.draw((0, ScratchDrawParams_1.getDrawParams)(this.target, this._geom.volClassCopyZ)); // This method uses the EXT_frag_depth extension
|
|
1781
|
+
System_1.System.instance.applyRenderState((0, core_bentley_1.expectDefined)(this._vcCopyZRenderState));
|
|
1782
|
+
this.target.techniques.draw((0, ScratchDrawParams_1.getDrawParams)(this.target, (0, core_bentley_1.expectDefined)(this._geom.volClassCopyZ))); // This method uses the EXT_frag_depth extension
|
|
1777
1783
|
System_1.System.instance.bindTexture2d(RenderFlags_1.TextureUnit.Zero, undefined);
|
|
1778
1784
|
this.target.popBranch();
|
|
1779
1785
|
});
|
|
@@ -1781,26 +1787,29 @@ class Compositor extends SceneCompositor {
|
|
|
1781
1787
|
if (renderForReadPixels) {
|
|
1782
1788
|
// Set the stencil for all of the classifier volumes.
|
|
1783
1789
|
System_1.System.instance.frameBufferStack.execute(this._fbos.altZOnly, false, this.useMsBuffers, () => {
|
|
1784
|
-
this.target.pushState(this._vcBranchState);
|
|
1785
|
-
System_1.System.instance.applyRenderState(this._vcSetStencilRenderState);
|
|
1790
|
+
this.target.pushState((0, core_bentley_1.expectDefined)(this._vcBranchState));
|
|
1791
|
+
System_1.System.instance.applyRenderState((0, core_bentley_1.expectDefined)(this._vcSetStencilRenderState));
|
|
1786
1792
|
this.target.techniques.execute(this.target, cmds, 6 /* RenderPass.Classification */);
|
|
1787
1793
|
// After we create the stencil we need to clear the Z for the next step (so also must turn on z writing temporarily).
|
|
1788
|
-
this._vcSetStencilRenderState.flags.depthMask = true;
|
|
1789
|
-
System_1.System.instance.applyRenderState(this._vcSetStencilRenderState);
|
|
1794
|
+
(0, core_bentley_1.expectDefined)(this._vcSetStencilRenderState).flags.depthMask = true;
|
|
1795
|
+
System_1.System.instance.applyRenderState((0, core_bentley_1.expectDefined)(this._vcSetStencilRenderState));
|
|
1790
1796
|
System_1.System.instance.context.clearDepth(1.0);
|
|
1791
1797
|
System_1.System.instance.context.clear(GL_1.GL.BufferBit.Depth);
|
|
1792
|
-
this._vcSetStencilRenderState.flags.depthMask = false;
|
|
1798
|
+
(0, core_bentley_1.expectDefined)(this._vcSetStencilRenderState).flags.depthMask = false;
|
|
1793
1799
|
this.target.popBranch();
|
|
1794
1800
|
System_1.System.instance.bindTexture2d(RenderFlags_1.TextureUnit.Two, undefined);
|
|
1795
1801
|
System_1.System.instance.bindTexture2d(RenderFlags_1.TextureUnit.Five, undefined);
|
|
1796
1802
|
});
|
|
1803
|
+
if (undefined === this._vcColorRenderState || undefined === this._vcBranchState) {
|
|
1804
|
+
throw new Error("this._vcColorRenderState or this._vcBranchState is undefined");
|
|
1805
|
+
}
|
|
1797
1806
|
this.target.pushState(this._vcBranchState);
|
|
1798
1807
|
this._vcColorRenderState.flags.depthTest = true;
|
|
1799
1808
|
this._vcColorRenderState.flags.depthMask = true;
|
|
1800
1809
|
this._vcColorRenderState.flags.cull = true;
|
|
1801
1810
|
this._vcColorRenderState.flags.blend = false;
|
|
1802
1811
|
this.setAllStencilOps(this._vcColorRenderState, GL_1.GL.StencilOperation.Keep); // don't clear the stencil so that all classifiers behind reality mesh will still draw
|
|
1803
|
-
this.target.activeVolumeClassifierTexture = this._geom.volClassCopyZ
|
|
1812
|
+
this.target.activeVolumeClassifierTexture = this._geom.volClassCopyZ?.texture;
|
|
1804
1813
|
if (this._antialiasSamples > 1 && undefined !== this._depthMS && this.useMsBuffers)
|
|
1805
1814
|
this._fbos.stencilSet.blitMsBuffersToTextures(true, -1); // make sure that the Z buffer that we are about to read has been blitted
|
|
1806
1815
|
this.renderIndexedClassifierForReadPixels(cmds, this._vcColorRenderState, false, needComposite);
|
|
@@ -1820,8 +1829,8 @@ class Compositor extends SceneCompositor {
|
|
|
1820
1829
|
// Set the stencil using all of the volume classifiers. This will be used to do the outside and/or the inside if they need to be done.
|
|
1821
1830
|
// If we are not modifying the outside and the inside is using color-by-element for intersecting volumes, then the stencil will get set later.
|
|
1822
1831
|
fbStack.execute(zOnlyFbo, false, this.useMsBuffers, () => {
|
|
1823
|
-
this.target.pushState(this._vcBranchState);
|
|
1824
|
-
System_1.System.instance.applyRenderState(this._vcSetStencilRenderState);
|
|
1832
|
+
this.target.pushState((0, core_bentley_1.expectDefined)(this._vcBranchState));
|
|
1833
|
+
System_1.System.instance.applyRenderState((0, core_bentley_1.expectDefined)(this._vcSetStencilRenderState));
|
|
1825
1834
|
this.target.techniques.execute(this.target, cmds, 6 /* RenderPass.Classification */);
|
|
1826
1835
|
this.target.popBranch();
|
|
1827
1836
|
System_1.System.instance.bindTexture2d(RenderFlags_1.TextureUnit.Two, undefined);
|
|
@@ -1832,6 +1841,9 @@ class Compositor extends SceneCompositor {
|
|
|
1832
1841
|
if (this._antialiasSamples > 1 && undefined !== this._depthMS && this.useMsBuffers)
|
|
1833
1842
|
volClassBlendReadZTextureFbo.blitMsBuffersToTextures(true, -1); // make sure that the Z buffer that we are about to read has been blitted
|
|
1834
1843
|
fbStack.execute(volClassBlendFbo, false, this.useMsBuffers, () => {
|
|
1844
|
+
if (undefined === this._geom.volClassSetBlend || undefined === this._vcColorRenderState) {
|
|
1845
|
+
throw new Error("this._geom.volClassSetBlend or this._vcColorRenderState is undefined");
|
|
1846
|
+
}
|
|
1835
1847
|
this._geom.volClassSetBlend.boundaryType = CachedGeometry_1.BoundaryType.Outside;
|
|
1836
1848
|
this._geom.volClassSetBlend.texture = volClassBlendReadZTexture;
|
|
1837
1849
|
this.target.pushState(this.target.decorationsState);
|
|
@@ -1858,6 +1870,9 @@ class Compositor extends SceneCompositor {
|
|
|
1858
1870
|
if (this._antialiasSamples > 1 && undefined !== this._depthMS && this.useMsBuffers)
|
|
1859
1871
|
volClassBlendReadZTextureFbo.blitMsBuffersToTextures(true, -1); // make sure that the Z buffer that we are about to read has been blitted
|
|
1860
1872
|
fbStack.execute(volClassBlendFbo, false, this.useMsBuffers, () => {
|
|
1873
|
+
if (undefined === this._geom.volClassSetBlend || undefined === this._vcColorRenderState) {
|
|
1874
|
+
throw new Error("this._geom.volClassSetBlend or this._vcColorRenderState is undefined");
|
|
1875
|
+
}
|
|
1861
1876
|
this._geom.volClassSetBlend.boundaryType = CachedGeometry_1.BoundaryType.Inside;
|
|
1862
1877
|
this._geom.volClassSetBlend.texture = volClassBlendReadZTexture;
|
|
1863
1878
|
this.target.pushState(this.target.decorationsState);
|
|
@@ -1876,13 +1891,16 @@ class Compositor extends SceneCompositor {
|
|
|
1876
1891
|
const nxtCmds = cmdsByIndex.slice(i, i + numCmdsPerClassifier);
|
|
1877
1892
|
// Set the stencil for this one classifier.
|
|
1878
1893
|
fbStack.execute(zOnlyFbo, false, this.useMsBuffers, () => {
|
|
1879
|
-
this.target.pushState(this._vcBranchState);
|
|
1880
|
-
System_1.System.instance.applyRenderState(this._vcSetStencilRenderState);
|
|
1894
|
+
this.target.pushState((0, core_bentley_1.expectDefined)(this._vcBranchState));
|
|
1895
|
+
System_1.System.instance.applyRenderState((0, core_bentley_1.expectDefined)(this._vcSetStencilRenderState));
|
|
1881
1896
|
this.target.techniques.execute(this.target, nxtCmds, 6 /* RenderPass.Classification */);
|
|
1882
1897
|
this.target.popBranch();
|
|
1883
1898
|
});
|
|
1884
1899
|
// Process the stencil. Just render the volume normally (us opaque pass), but use blending to modify the source alpha that gets written to the blend texture.
|
|
1885
1900
|
fbStack.execute(volClassBlendFbo, true, this.useMsBuffers, () => {
|
|
1901
|
+
if (undefined === this._vcColorRenderState || undefined === this._vcBranchState) {
|
|
1902
|
+
throw new Error("this._vcColorRenderState or this._vcBranchState is undefined");
|
|
1903
|
+
}
|
|
1886
1904
|
this.target.pushState(this._vcBranchState);
|
|
1887
1905
|
this._vcColorRenderState.blend.color = [1.0, 1.0, 1.0, 0.35];
|
|
1888
1906
|
this._vcColorRenderState.blend.setBlendFuncSeparate(GL_1.GL.BlendFactor.One, GL_1.GL.BlendFactor.ConstAlpha, GL_1.GL.BlendFactor.Zero, GL_1.GL.BlendFactor.Zero);
|
|
@@ -1899,6 +1917,9 @@ class Compositor extends SceneCompositor {
|
|
|
1899
1917
|
if (this._antialiasSamples > 1 && undefined !== this._depthMS && this.useMsBuffers)
|
|
1900
1918
|
this._fbos.stencilSet.blitMsBuffersToTextures(true, -1); // make sure that the Z buffer that we are about to read has been blitted
|
|
1901
1919
|
fbStack.execute(volClassBlendFbo, false, this.useMsBuffers, () => {
|
|
1920
|
+
if (undefined === this._vcColorRenderState || undefined === this._vcBranchState) {
|
|
1921
|
+
throw new Error("this._vcColorRenderState or this._vcBranchState is undefined");
|
|
1922
|
+
}
|
|
1902
1923
|
// For coloring the inside by element color we will draw the inside using the the classifiers themselves.
|
|
1903
1924
|
// To do this we need to first clear our Alt-Z. The shader will then test and write Z and will discard
|
|
1904
1925
|
// anything that is in front of the reality model by reading the Z texture from the standard Z buffer (which has the reality mesh Z's in it).
|
|
@@ -1914,7 +1935,7 @@ class Compositor extends SceneCompositor {
|
|
|
1914
1935
|
System_1.System.instance.applyRenderState(this._vcColorRenderState);
|
|
1915
1936
|
System_1.System.instance.context.clearDepth(1.0);
|
|
1916
1937
|
System_1.System.instance.context.clear(GL_1.GL.BufferBit.Depth);
|
|
1917
|
-
this.target.activeVolumeClassifierTexture = this._geom.volClassCopyZ
|
|
1938
|
+
this.target.activeVolumeClassifierTexture = this._geom.volClassCopyZ?.texture;
|
|
1918
1939
|
this.target.techniques.execute(this.target, cmds, 5 /* RenderPass.OpaqueGeneral */);
|
|
1919
1940
|
this.target.activeVolumeClassifierTexture = undefined;
|
|
1920
1941
|
this._vcColorRenderState.flags.depthTest = false;
|
|
@@ -1938,8 +1959,8 @@ class Compositor extends SceneCompositor {
|
|
|
1938
1959
|
if (!doColorByElement && cmdsSelected.length > 0 && insideFlags !== core_common_1.SpatialClassifierInsideDisplay.Hilite) { // assume selected ones are always hilited
|
|
1939
1960
|
// Set the stencil using just the hilited volume classifiers.
|
|
1940
1961
|
fbStack.execute(this._fbos.stencilSet, false, this.useMsBuffers, () => {
|
|
1941
|
-
this.target.pushState(this._vcBranchState);
|
|
1942
|
-
System_1.System.instance.applyRenderState(this._vcSetStencilRenderState);
|
|
1962
|
+
this.target.pushState((0, core_bentley_1.expectDefined)(this._vcBranchState));
|
|
1963
|
+
System_1.System.instance.applyRenderState((0, core_bentley_1.expectDefined)(this._vcSetStencilRenderState));
|
|
1943
1964
|
if (needAltZ) {
|
|
1944
1965
|
// If we are using the alternate Z then the stencil that goes with the original Z has not been cleared yet, so clear it here.
|
|
1945
1966
|
System_1.System.instance.context.clearStencil(0);
|
|
@@ -1950,9 +1971,15 @@ class Compositor extends SceneCompositor {
|
|
|
1950
1971
|
});
|
|
1951
1972
|
if (this._antialiasSamples > 1 && undefined !== this._depthMS && this.useMsBuffers)
|
|
1952
1973
|
this._fbos.altZOnly.blitMsBuffersToTextures(true, -1); // make sure that the Z buffer that we are about to read has been blitted
|
|
1974
|
+
if (undefined === this._fbos.volClassCreateBlend) {
|
|
1975
|
+
throw new Error("this._fbos.volClassCreateBlend is undefined");
|
|
1976
|
+
}
|
|
1953
1977
|
fbStack.execute(this._fbos.volClassCreateBlend, false, this.useMsBuffers, () => {
|
|
1978
|
+
if (undefined === this._geom.volClassSetBlend || undefined === this._vcColorRenderState) {
|
|
1979
|
+
throw new Error("this._geom.volClassSetBlend or this._vcColorRenderState is undefined");
|
|
1980
|
+
}
|
|
1954
1981
|
this._geom.volClassSetBlend.boundaryType = CachedGeometry_1.BoundaryType.Selected;
|
|
1955
|
-
this._geom.volClassSetBlend.texture = this._vcAltDepthStencil
|
|
1982
|
+
this._geom.volClassSetBlend.texture = (0, core_bentley_1.expectDefined)(this._vcAltDepthStencil?.getHandle()); // need to attach the alt depth instead of the real one since it is bound to the frame buffer
|
|
1956
1983
|
this.target.pushState(this.target.decorationsState);
|
|
1957
1984
|
this._vcColorRenderState.flags.blend = false;
|
|
1958
1985
|
System_1.System.instance.applyRenderState(this._vcColorRenderState);
|
|
@@ -1968,6 +1995,9 @@ class Compositor extends SceneCompositor {
|
|
|
1968
1995
|
volClassBlendFbo.blitMsBuffersToTextures(false); // make sure the volClassBlend texture that we are about to read has been blitted
|
|
1969
1996
|
}
|
|
1970
1997
|
fbStack.execute(fboColorAndZ, false, this.useMsBuffers, () => {
|
|
1998
|
+
if (undefined === this._vcBlendRenderState || undefined === this._geom.volClassBlend) {
|
|
1999
|
+
throw new Error("this._vcBlendRenderState or this._geom.volClassBlend is undefined");
|
|
2000
|
+
}
|
|
1971
2001
|
this.target.pushState(this.target.decorationsState);
|
|
1972
2002
|
this._vcBlendRenderState.blend.setBlendFuncSeparate(GL_1.GL.BlendFactor.SrcAlpha, GL_1.GL.BlendFactor.Zero, GL_1.GL.BlendFactor.OneMinusSrcAlpha, GL_1.GL.BlendFactor.One);
|
|
1973
2003
|
System_1.System.instance.applyRenderState(this._vcBlendRenderState);
|
|
@@ -1982,13 +2012,16 @@ class Compositor extends SceneCompositor {
|
|
|
1982
2012
|
if (undefined !== flashedClassifierCmds && !doColorByElement) {
|
|
1983
2013
|
// Set the stencil for this one classifier.
|
|
1984
2014
|
fbStack.execute(this._fbos.stencilSet, false, this.useMsBuffers, () => {
|
|
1985
|
-
this.target.pushState(this._vcBranchState);
|
|
1986
|
-
System_1.System.instance.applyRenderState(this._vcSetStencilRenderState);
|
|
2015
|
+
this.target.pushState((0, core_bentley_1.expectDefined)(this._vcBranchState));
|
|
2016
|
+
System_1.System.instance.applyRenderState((0, core_bentley_1.expectDefined)(this._vcSetStencilRenderState));
|
|
1987
2017
|
this.target.techniques.executeForIndexedClassifier(this.target, flashedClassifierCmds, 5 /* RenderPass.OpaqueGeneral */);
|
|
1988
2018
|
this.target.popBranch();
|
|
1989
2019
|
});
|
|
1990
2020
|
// Process the stencil to flash the contents.
|
|
1991
2021
|
fbStack.execute(fboColorAndZ, true, this.useMsBuffers, () => {
|
|
2022
|
+
if (undefined === this._vcColorRenderState || undefined === this._geom.volClassColorStencil) {
|
|
2023
|
+
throw new Error("this._vcColorRenderState or this._geom.volClassColorStencil is undefined");
|
|
2024
|
+
}
|
|
1992
2025
|
this.target.pushState(this.target.decorationsState);
|
|
1993
2026
|
this._vcColorRenderState.blend.color = [1.0, 1.0, 1.0, this.target.flashIntensity * 0.2];
|
|
1994
2027
|
this._vcColorRenderState.blend.setBlendFuncSeparate(GL_1.GL.BlendFactor.ConstAlpha, GL_1.GL.BlendFactor.Zero, GL_1.GL.BlendFactor.One, GL_1.GL.BlendFactor.One);
|
|
@@ -2001,7 +2034,7 @@ class Compositor extends SceneCompositor {
|
|
|
2001
2034
|
}
|
|
2002
2035
|
renderHilite(commands) {
|
|
2003
2036
|
const system = System_1.System.instance;
|
|
2004
|
-
system.frameBufferStack.execute(this._fbos.hilite, true, false, () => {
|
|
2037
|
+
system.frameBufferStack.execute((0, core_bentley_1.expectDefined)(this._fbos.hilite), true, false, () => {
|
|
2005
2038
|
// Clear the hilite buffer.
|
|
2006
2039
|
system.context.clearColor(0, 0, 0, 0);
|
|
2007
2040
|
system.context.clear(GL_1.GL.BufferBit.Color);
|
|
@@ -2011,7 +2044,7 @@ class Compositor extends SceneCompositor {
|
|
|
2011
2044
|
// Process planar classifiers
|
|
2012
2045
|
const planarClassifierCmds = commands.getCommands(18 /* RenderPass.HilitePlanarClassification */);
|
|
2013
2046
|
if (0 !== planarClassifierCmds.length) {
|
|
2014
|
-
system.frameBufferStack.execute(this._fbos.hiliteUsingStencil, true, false, () => {
|
|
2047
|
+
system.frameBufferStack.execute((0, core_bentley_1.expectDefined)(this._fbos.hiliteUsingStencil), true, false, () => {
|
|
2015
2048
|
system.applyRenderState(this._opaqueRenderState);
|
|
2016
2049
|
this.target.techniques.execute(this.target, planarClassifierCmds, 18 /* RenderPass.HilitePlanarClassification */);
|
|
2017
2050
|
});
|
|
@@ -2020,22 +2053,22 @@ class Compositor extends SceneCompositor {
|
|
|
2020
2053
|
const vcHiliteCmds = commands.getCommands(16 /* RenderPass.HiliteClassification */);
|
|
2021
2054
|
if (0 !== vcHiliteCmds.length && undefined !== this._vcBranchState) {
|
|
2022
2055
|
// Set the stencil for the given classifier stencil volume.
|
|
2023
|
-
system.frameBufferStack.execute(this._fbos.stencilSet, false, false, () => {
|
|
2024
|
-
this.target.pushState(this._vcBranchState);
|
|
2025
|
-
system.applyRenderState(this._vcSetStencilRenderState);
|
|
2056
|
+
system.frameBufferStack.execute((0, core_bentley_1.expectDefined)(this._fbos.stencilSet), false, false, () => {
|
|
2057
|
+
this.target.pushState((0, core_bentley_1.expectDefined)(this._vcBranchState));
|
|
2058
|
+
system.applyRenderState((0, core_bentley_1.expectDefined)(this._vcSetStencilRenderState));
|
|
2026
2059
|
this.target.techniques.execute(this.target, vcHiliteCmds, 10 /* RenderPass.Hilite */);
|
|
2027
2060
|
this.target.popBranch();
|
|
2028
2061
|
});
|
|
2029
2062
|
// Process the stencil for the hilite data.
|
|
2030
|
-
system.frameBufferStack.execute(this._fbos.hiliteUsingStencil, true, false, () => {
|
|
2031
|
-
system.applyRenderState(this._vcPickDataRenderState);
|
|
2063
|
+
system.frameBufferStack.execute((0, core_bentley_1.expectDefined)(this._fbos.hiliteUsingStencil), true, false, () => {
|
|
2064
|
+
system.applyRenderState((0, core_bentley_1.expectDefined)(this._vcPickDataRenderState));
|
|
2032
2065
|
this.target.techniques.execute(this.target, vcHiliteCmds, 10 /* RenderPass.Hilite */);
|
|
2033
2066
|
});
|
|
2034
2067
|
}
|
|
2035
2068
|
}
|
|
2036
2069
|
composite() {
|
|
2037
2070
|
System_1.System.instance.applyRenderState(RenderState_1.RenderState.defaults);
|
|
2038
|
-
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, this._geom.composite);
|
|
2071
|
+
const params = (0, ScratchDrawParams_1.getDrawParams)(this.target, (0, core_bentley_1.expectDefined)(this._geom.composite));
|
|
2039
2072
|
this.target.techniques.draw(params);
|
|
2040
2073
|
}
|
|
2041
2074
|
getRenderState(pass) {
|