@cesium/engine 14.0.0 → 16.0.0
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/Build/Workers/{chunk-WVNLSTOF.js → chunk-2TQ64T4I.js} +2 -2
- package/Build/Workers/{chunk-ED6GLQTK.js → chunk-34EWMUFG.js} +1 -1
- package/Build/Workers/{chunk-HEZHXDYB.js → chunk-4LHK6E47.js} +1 -1
- package/Build/Workers/{chunk-7EO56M5R.js → chunk-5TN3LG2T.js} +2 -2
- package/Build/Workers/{chunk-7ZB2RVIQ.js → chunk-6B7KGA5P.js} +16 -19
- package/Build/Workers/{chunk-3QLSKXKF.js → chunk-B75OO2DU.js} +7 -10
- package/Build/Workers/{chunk-Q4ZVWJXX.js → chunk-COOLDICB.js} +9 -11
- package/Build/Workers/{chunk-3PIZQT3I.js → chunk-CQNYYX3N.js} +4 -4
- package/Build/Workers/{chunk-JPDKYBLF.js → chunk-CUJH7PS5.js} +27 -29
- package/Build/Workers/{chunk-CI2HEJFC.js → chunk-EAWYQ44R.js} +39 -41
- package/Build/Workers/{chunk-SDIDRZDG.js → chunk-EJJDBH5W.js} +7 -7
- package/Build/Workers/{chunk-5KWRW7YL.js → chunk-EO44CO62.js} +2 -2
- package/Build/Workers/{chunk-N2XAJBC6.js → chunk-EOIUWEAK.js} +26 -28
- package/Build/Workers/{chunk-YJX7X577.js → chunk-ERKJ7IWJ.js} +21 -23
- package/Build/Workers/{chunk-J7IH4EYI.js → chunk-ESED7XBA.js} +13 -16
- package/Build/Workers/{chunk-F4CUH4MR.js → chunk-FW2OX42E.js} +18 -21
- package/Build/Workers/{chunk-FX4R4MTH.js → chunk-GH6I7PBY.js} +6 -9
- package/Build/Workers/{chunk-FYGLNDKG.js → chunk-GQVSADCI.js} +19 -22
- package/Build/Workers/{chunk-TY4DKOWR.js → chunk-ICU72UPR.js} +4 -4
- package/Build/Workers/{chunk-DT5NFR5C.js → chunk-ILVAXLMC.js} +7 -7
- package/Build/Workers/{chunk-ZGFIT57T.js → chunk-KKV6XBF5.js} +27 -23
- package/Build/Workers/{chunk-HKHQ3EDR.js → chunk-KV6TEHXY.js} +4 -4
- package/Build/Workers/{chunk-B4GSRXE3.js → chunk-LCSH4ZOB.js} +7 -10
- package/Build/Workers/{chunk-LNSWJ43X.js → chunk-M5J3S3HY.js} +17 -26
- package/Build/Workers/{chunk-LJBJM6VI.js → chunk-NB6D74SQ.js} +6 -6
- package/Build/Workers/{chunk-4CHMVQTQ.js → chunk-NREPBWCX.js} +14 -14
- package/Build/Workers/{chunk-PWF4EY5P.js → chunk-OD4Q7HE5.js} +4 -4
- package/Build/Workers/{chunk-77XPS7ZA.js → chunk-OMFZ4IN6.js} +15 -24
- package/Build/Workers/{chunk-HUFQVUMY.js → chunk-OMZGZVHI.js} +12 -17
- package/Build/Workers/{chunk-LOZ4NKY3.js → chunk-ORIMMEHO.js} +18 -20
- package/Build/Workers/{chunk-5S5OOA6U.js → chunk-OWLBD6BL.js} +1 -1
- package/Build/Workers/{chunk-VCNOFQYH.js → chunk-PB6SE3SZ.js} +9 -12
- package/Build/Workers/{chunk-3JBEPBPL.js → chunk-PT6U7UNY.js} +25 -30
- package/Build/Workers/{chunk-G3BVMPWG.js → chunk-RWAFHSX3.js} +2 -2
- package/Build/Workers/{chunk-KHWLAQVA.js → chunk-S2NKKWYE.js} +1 -1
- package/Build/Workers/{chunk-FFBJDW4A.js → chunk-S3IQBSIB.js} +6 -6
- package/Build/Workers/{chunk-3LYROPON.js → chunk-SCUQTTCN.js} +16 -19
- package/Build/Workers/{chunk-ZMNLEL6W.js → chunk-TBSA4MNF.js} +5 -8
- package/Build/Workers/{chunk-EWDGNOJE.js → chunk-TEUGW455.js} +9 -12
- package/Build/Workers/{chunk-XK4OP6VA.js → chunk-TL5YKZJF.js} +33 -41
- package/Build/Workers/{chunk-KM6MITPF.js → chunk-V4Y7C25O.js} +46 -42
- package/Build/Workers/{chunk-OMXHEJTK.js → chunk-VNDECE6N.js} +2 -2
- package/Build/Workers/{chunk-LS3KVHYY.js → chunk-VVTAI2TN.js} +6 -9
- package/Build/Workers/{chunk-WEHZP4SE.js → chunk-VXAAIRJ7.js} +129 -146
- package/Build/Workers/{chunk-MVM4JV5U.js → chunk-WGIOUM2S.js} +9 -12
- package/Build/Workers/{chunk-JHBPC4LK.js → chunk-XF6EBVKV.js} +7 -7
- package/Build/Workers/{chunk-D7ZBZPHV.js → chunk-XMKE4XB2.js} +5 -5
- package/Build/Workers/{chunk-7UHKH6M3.js → chunk-YA4XALD5.js} +34 -36
- package/Build/Workers/{chunk-KSYBJA4M.js → chunk-YFXXUW6U.js} +6 -12
- package/Build/Workers/{chunk-Z3QWTHI7.js → chunk-YL26OJCG.js} +21 -23
- package/Build/Workers/{chunk-K4AH3TDT.js → chunk-ZLJDDRGB.js} +14 -17
- package/Build/Workers/combineGeometry.js +21 -22
- package/Build/Workers/createBoxGeometry.js +15 -16
- package/Build/Workers/createBoxOutlineGeometry.js +20 -25
- package/Build/Workers/createCircleGeometry.js +26 -28
- package/Build/Workers/createCircleOutlineGeometry.js +19 -21
- package/Build/Workers/createCoplanarPolygonGeometry.js +38 -42
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +34 -36
- package/Build/Workers/createCorridorGeometry.js +42 -49
- package/Build/Workers/createCorridorOutlineGeometry.js +36 -43
- package/Build/Workers/createCylinderGeometry.js +17 -18
- package/Build/Workers/createCylinderOutlineGeometry.js +23 -25
- package/Build/Workers/createEllipseGeometry.js +23 -24
- package/Build/Workers/createEllipseOutlineGeometry.js +16 -17
- package/Build/Workers/createEllipsoidGeometry.js +16 -17
- package/Build/Workers/createEllipsoidOutlineGeometry.js +15 -16
- package/Build/Workers/createFrustumGeometry.js +15 -16
- package/Build/Workers/createFrustumOutlineGeometry.js +18 -21
- package/Build/Workers/createGeometry.js +22 -25
- package/Build/Workers/createGroundPolylineGeometry.js +34 -42
- package/Build/Workers/createPlaneGeometry.js +19 -21
- package/Build/Workers/createPlaneOutlineGeometry.js +12 -13
- package/Build/Workers/createPolygonGeometry.js +45 -50
- package/Build/Workers/createPolygonOutlineGeometry.js +39 -44
- package/Build/Workers/createPolylineGeometry.js +33 -40
- package/Build/Workers/createPolylineVolumeGeometry.js +37 -44
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +32 -39
- package/Build/Workers/createRectangleGeometry.js +41 -51
- package/Build/Workers/createRectangleOutlineGeometry.js +28 -33
- package/Build/Workers/createSimplePolylineGeometry.js +29 -34
- package/Build/Workers/createSphereGeometry.js +17 -20
- package/Build/Workers/createSphereOutlineGeometry.js +16 -19
- package/Build/Workers/createTaskProcessorWorker.js +3 -3
- package/Build/Workers/createVectorTileClampedPolylines.js +12 -13
- package/Build/Workers/createVectorTileGeometries.js +21 -22
- package/Build/Workers/createVectorTilePoints.js +11 -12
- package/Build/Workers/createVectorTilePolygons.js +19 -20
- package/Build/Workers/createVectorTilePolylines.js +12 -13
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +20 -23
- package/Build/Workers/createVerticesFromHeightmap.js +31 -58
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +17 -18
- package/Build/Workers/createWallGeometry.js +30 -35
- package/Build/Workers/createWallOutlineGeometry.js +28 -33
- package/Build/Workers/decodeDraco.js +10 -11
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
- package/Build/Workers/decodeI3S.js +10 -16
- package/Build/Workers/transcodeKTX2.js +50 -46
- package/Build/Workers/transferTypedArrayTest.js +1 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +19 -20
- package/Source/Core/ApproximateTerrainHeights.js +2 -3
- package/Source/Core/ArcGISTiledElevationTerrainProvider.js +6 -6
- package/Source/Core/AxisAlignedBoundingBox.js +2 -3
- package/Source/Core/BingMapsGeocoderService.js +2 -2
- package/Source/Core/BoundingRectangle.js +7 -8
- package/Source/Core/BoundingSphere.js +10 -11
- package/Source/Core/BoxGeometry.js +7 -7
- package/Source/Core/BoxOutlineGeometry.js +7 -9
- package/Source/Core/Cartesian2.js +4 -5
- package/Source/Core/Cartesian3.js +7 -8
- package/Source/Core/Cartesian4.js +6 -7
- package/Source/Core/Cartographic.js +5 -6
- package/Source/Core/CatmullRomSpline.js +2 -2
- package/Source/Core/CesiumTerrainProvider.js +11 -14
- package/Source/Core/CircleGeometry.js +2 -2
- package/Source/Core/CircleOutlineGeometry.js +2 -2
- package/Source/Core/Clock.js +7 -10
- package/Source/Core/Color.js +28 -28
- package/Source/Core/ColorGeometryInstanceAttribute.js +4 -5
- package/Source/Core/ComponentDatatype.js +4 -6
- package/Source/Core/CoplanarPolygonGeometry.js +8 -10
- package/Source/Core/CoplanarPolygonOutlineGeometry.js +5 -5
- package/Source/Core/CorridorGeometry.js +15 -20
- package/Source/Core/CorridorOutlineGeometry.js +10 -15
- package/Source/Core/Credit.js +1 -2
- package/Source/Core/CullingVolume.js +1 -2
- package/Source/Core/CustomHeightmapTerrainProvider.js +3 -3
- package/Source/Core/CylinderGeometry.js +7 -7
- package/Source/Core/CylinderOutlineGeometry.js +7 -7
- package/Source/Core/DistanceDisplayCondition.js +4 -5
- package/Source/Core/DistanceDisplayConditionGeometryInstanceAttribute.js +2 -3
- package/Source/Core/EarthOrientationParameters.js +4 -4
- package/Source/Core/EllipseGeometry.js +17 -23
- package/Source/Core/EllipseOutlineGeometry.js +12 -15
- package/Source/Core/Ellipsoid.js +7 -8
- package/Source/Core/EllipsoidGeodesic.js +1 -2
- package/Source/Core/EllipsoidGeometry.js +15 -15
- package/Source/Core/EllipsoidOutlineGeometry.js +15 -15
- package/Source/Core/EllipsoidRhumbLine.js +3 -4
- package/Source/Core/EllipsoidTangentPlane.js +1 -2
- package/Source/Core/EllipsoidTerrainProvider.js +4 -4
- package/Source/Core/EllipsoidalOccluder.js +2 -3
- package/Source/Core/FeatureDetection.js +1 -2
- package/Source/Core/Frozen.js +24 -0
- package/Source/Core/FrustumGeometry.js +7 -8
- package/Source/Core/FrustumOutlineGeometry.js +3 -4
- package/Source/Core/GeographicProjection.js +1 -2
- package/Source/Core/GeographicTilingScheme.js +6 -12
- package/Source/Core/Geometry.js +4 -7
- package/Source/Core/GeometryAttribute.js +3 -3
- package/Source/Core/GeometryAttributes.js +2 -2
- package/Source/Core/GeometryInstance.js +4 -6
- package/Source/Core/GeometryInstanceAttribute.js +3 -3
- package/Source/Core/GeometryPipeline.js +3 -4
- package/Source/Core/GoogleEarthEnterpriseMetadata.js +13 -24
- package/Source/Core/GoogleEarthEnterpriseTerrainData.js +9 -12
- package/Source/Core/GoogleEarthEnterpriseTerrainProvider.js +3 -3
- package/Source/Core/GoogleGeocoderService.js +2 -2
- package/Source/Core/GregorianDate.js +8 -9
- package/Source/Core/GroundPolylineGeometry.js +8 -8
- package/Source/Core/HeadingPitchRange.js +3 -4
- package/Source/Core/HeadingPitchRoll.js +3 -4
- package/Source/Core/Heap.js +3 -4
- package/Source/Core/HeightmapTerrainData.js +22 -38
- package/Source/Core/HeightmapTessellator.js +21 -37
- package/Source/Core/HermitePolynomialApproximation.js +1 -2
- package/Source/Core/HermiteSpline.js +5 -5
- package/Source/Core/ITwinPlatform.js +66 -12
- package/Source/Core/Iau2006XysData.js +8 -10
- package/Source/Core/IntersectionTests.js +1 -2
- package/Source/Core/Interval.js +2 -4
- package/Source/Core/Ion.js +1 -1
- package/Source/Core/IonGeocoderService.js +6 -10
- package/Source/Core/IonResource.js +6 -6
- package/Source/Core/JulianDate.js +11 -12
- package/Source/Core/LinearSpline.js +2 -2
- package/Source/Core/ManagedArray.js +2 -3
- package/Source/Core/Math.js +36 -27
- package/Source/Core/Matrix2.js +7 -8
- package/Source/Core/Matrix3.js +12 -13
- package/Source/Core/Matrix4.js +28 -28
- package/Source/Core/MorphWeightSpline.js +2 -2
- package/Source/Core/NearFarScalar.js +6 -7
- package/Source/Core/Occluder.js +1 -2
- package/Source/Core/OffsetGeometryInstanceAttribute.js +3 -4
- package/Source/Core/OpenCageGeocoderService.js +1 -2
- package/Source/Core/OrientedBoundingBox.js +7 -8
- package/Source/Core/OrthographicFrustum.js +6 -6
- package/Source/Core/OrthographicOffCenterFrustum.js +4 -4
- package/Source/Core/PerspectiveFrustum.js +8 -8
- package/Source/Core/PerspectiveOffCenterFrustum.js +4 -4
- package/Source/Core/PlaneGeometry.js +5 -5
- package/Source/Core/PolygonGeometry.js +16 -19
- package/Source/Core/PolygonGeometryLibrary.js +27 -6
- package/Source/Core/PolygonOutlineGeometry.js +11 -14
- package/Source/Core/PolygonPipeline.js +5 -6
- package/Source/Core/PolylineGeometry.js +10 -15
- package/Source/Core/PolylinePipeline.js +7 -14
- package/Source/Core/PolylineVolumeGeometry.js +8 -13
- package/Source/Core/PolylineVolumeOutlineGeometry.js +7 -12
- package/Source/Core/QuantizedMeshTerrainData.js +12 -16
- package/Source/Core/Quaternion.js +7 -8
- package/Source/Core/QuaternionSpline.js +2 -2
- package/Source/Core/Ray.js +2 -3
- package/Source/Core/Rectangle.js +18 -19
- package/Source/Core/RectangleGeometry.js +17 -25
- package/Source/Core/RectangleGeometryLibrary.js +1 -1
- package/Source/Core/RectangleOutlineGeometry.js +10 -13
- package/Source/Core/Request.js +6 -6
- package/Source/Core/RequestScheduler.js +4 -6
- package/Source/Core/Resource.js +13 -16
- package/Source/Core/S2Cell.js +2 -3
- package/Source/Core/ScreenSpaceEventHandler.js +1 -2
- package/Source/Core/ShowGeometryInstanceAttribute.js +1 -2
- package/Source/Core/Simon1994PlanetaryPositions.js +9 -9
- package/Source/Core/SimplePolylineGeometry.js +8 -11
- package/Source/Core/SphereGeometry.js +1 -2
- package/Source/Core/SphereOutlineGeometry.js +1 -2
- package/Source/Core/Spherical.js +4 -5
- package/Source/Core/Spline.js +1 -2
- package/Source/Core/SteppedSpline.js +2 -2
- package/Source/Core/TaskProcessor.js +2 -9
- package/Source/Core/TerrainData.js +1 -1
- package/Source/Core/TerrainEncoding.js +4 -11
- package/Source/Core/TerrainMesh.js +1 -3
- package/Source/Core/TerrainProvider.js +1 -1
- package/Source/Core/TexturePacker.js +166 -0
- package/Source/Core/TileProviderError.js +1 -2
- package/Source/Core/TimeInterval.js +7 -7
- package/Source/Core/TimeIntervalCollection.js +7 -7
- package/Source/Core/Tipsify.js +5 -5
- package/Source/Core/Transforms.js +10 -15
- package/Source/Core/TranslationRotationScale.js +3 -6
- package/Source/Core/VRTheWorldTerrainProvider.js +5 -5
- package/Source/Core/VertexFormat.js +10 -10
- package/Source/Core/VerticalExaggeration.js +1 -1
- package/Source/Core/VideoSynchronizer.js +6 -6
- package/Source/Core/WallGeometry.js +8 -11
- package/Source/Core/WallOutlineGeometry.js +7 -10
- package/Source/Core/WebMercatorProjection.js +1 -2
- package/Source/Core/WebMercatorTilingScheme.js +5 -11
- package/Source/Core/arrayRemoveDuplicates.js +1 -2
- package/Source/Core/clone.js +1 -3
- package/Source/Core/combine.js +1 -2
- package/Source/Core/createWorldBathymetryAsync.js +3 -3
- package/Source/Core/createWorldTerrainAsync.js +4 -4
- package/Source/Core/defaultValue.js +20 -1
- package/Source/Core/destroyObject.js +1 -5
- package/Source/Core/getAbsoluteUri.js +1 -2
- package/Source/Core/getMagic.js +1 -2
- package/Source/Core/getStringFromTypedArray.js +2 -3
- package/Source/Core/loadImageFromTypedArray.js +2 -6
- package/Source/Core/oneTimeWarning.js +1 -2
- package/Source/Core/writeTextToCanvas.js +10 -13
- package/Source/DataSources/BillboardGraphics.js +27 -53
- package/Source/DataSources/BillboardVisualizer.js +3 -3
- package/Source/DataSources/BoxGraphics.js +13 -18
- package/Source/DataSources/CallbackPositionProperty.js +1 -2
- package/Source/DataSources/Cesium3DTilesetGraphics.js +6 -8
- package/Source/DataSources/CheckerboardMaterialProperty.js +2 -2
- package/Source/DataSources/CompositePositionProperty.js +1 -2
- package/Source/DataSources/ConstantPositionProperty.js +1 -2
- package/Source/DataSources/CorridorGraphics.js +23 -35
- package/Source/DataSources/CylinderGraphics.js +18 -25
- package/Source/DataSources/CzmlDataSource.js +34 -60
- package/Source/DataSources/DataSourceClock.js +12 -13
- package/Source/DataSources/DataSourceCollection.js +2 -3
- package/Source/DataSources/DataSourceDisplay.js +2 -5
- package/Source/DataSources/EllipseGraphics.js +26 -40
- package/Source/DataSources/EllipsoidGeometryUpdater.js +1 -2
- package/Source/DataSources/EllipsoidGraphics.js +21 -32
- package/Source/DataSources/Entity.js +7 -9
- package/Source/DataSources/EntityCluster.js +53 -28
- package/Source/DataSources/EntityView.js +1 -2
- package/Source/DataSources/GeoJsonDataSource.js +12 -12
- package/Source/DataSources/GeometryUpdater.js +12 -17
- package/Source/DataSources/GeometryVisualizer.js +2 -3
- package/Source/DataSources/GpxDataSource.js +4 -7
- package/Source/DataSources/GridMaterialProperty.js +2 -2
- package/Source/DataSources/GroundGeometryUpdater.js +1 -2
- package/Source/DataSources/ImageMaterialProperty.js +2 -2
- package/Source/DataSources/KmlDataSource.js +84 -158
- package/Source/DataSources/LabelGraphics.js +27 -56
- package/Source/DataSources/LabelVisualizer.js +1 -2
- package/Source/DataSources/ModelGraphics.js +29 -63
- package/Source/DataSources/ModelVisualizer.js +1 -2
- package/Source/DataSources/NodeTransformationProperty.js +2 -2
- package/Source/DataSources/PathGraphics.js +10 -12
- package/Source/DataSources/PlaneGraphics.js +13 -15
- package/Source/DataSources/PointGraphics.js +17 -32
- package/Source/DataSources/PolygonGraphics.js +28 -45
- package/Source/DataSources/PolylineDashMaterialProperty.js +2 -2
- package/Source/DataSources/PolylineGeometryUpdater.js +9 -14
- package/Source/DataSources/PolylineGlowMaterialProperty.js +2 -2
- package/Source/DataSources/PolylineGraphics.js +16 -23
- package/Source/DataSources/PolylineOutlineMaterialProperty.js +2 -2
- package/Source/DataSources/PolylineVisualizer.js +2 -3
- package/Source/DataSources/PolylineVolumeGraphics.js +15 -17
- package/Source/DataSources/PositionPropertyArray.js +1 -2
- package/Source/DataSources/Property.js +1 -2
- package/Source/DataSources/PropertyBag.js +1 -2
- package/Source/DataSources/RectangleGraphics.js +23 -35
- package/Source/DataSources/Rotation.js +4 -5
- package/Source/DataSources/SampledPositionProperty.js +2 -3
- package/Source/DataSources/SampledProperty.js +6 -11
- package/Source/DataSources/StaticGroundPolylinePerMaterialBatch.js +1 -2
- package/Source/DataSources/StripeMaterialProperty.js +2 -2
- package/Source/DataSources/TimeIntervalCollectionPositionProperty.js +1 -2
- package/Source/DataSources/VelocityOrientationProperty.js +1 -2
- package/Source/DataSources/VelocityVectorProperty.js +1 -2
- package/Source/DataSources/WallGraphics.js +15 -23
- package/Source/DataSources/createPropertyDescriptor.js +2 -3
- package/Source/DataSources/exportKml.js +11 -14
- package/Source/Renderer/Buffer.js +5 -5
- package/Source/Renderer/ClearCommand.js +2 -2
- package/Source/Renderer/ComputeCommand.js +3 -3
- package/Source/Renderer/Context.js +22 -37
- package/Source/Renderer/CubeMap.js +6 -6
- package/Source/Renderer/CubeMapFace.js +11 -12
- package/Source/Renderer/DrawCommand.js +14 -25
- package/Source/Renderer/Framebuffer.js +3 -3
- package/Source/Renderer/FramebufferManager.js +25 -39
- package/Source/Renderer/MultisampleFramebuffer.js +2 -2
- package/Source/Renderer/RenderState.js +63 -92
- package/Source/Renderer/Renderbuffer.js +4 -4
- package/Source/Renderer/Sampler.js +2 -2
- package/Source/Renderer/ShaderBuilder.js +2 -3
- package/Source/Renderer/ShaderProgram.js +3 -3
- package/Source/Renderer/ShaderSource.js +3 -3
- package/Source/Renderer/Texture.js +16 -15
- package/Source/Renderer/TextureAtlas.js +802 -0
- package/Source/Renderer/UniformState.js +6 -11
- package/Source/Renderer/VertexArray.js +14 -23
- package/Source/Renderer/VertexArrayFacade.js +7 -11
- package/Source/Scene/Appearance.js +4 -4
- package/Source/Scene/ArcGisMapServerImageryProvider.js +23 -37
- package/Source/Scene/ArcGisMapService.js +1 -1
- package/Source/Scene/B3dmParser.js +2 -3
- package/Source/Scene/BatchTableHierarchy.js +6 -13
- package/Source/Scene/Billboard.js +105 -182
- package/Source/Scene/BillboardCollection.js +140 -224
- package/Source/Scene/BillboardLoadState.js +44 -0
- package/Source/Scene/BillboardTexture.js +348 -0
- package/Source/Scene/BingMapsImageryProvider.js +6 -6
- package/Source/Scene/BoxEmitter.js +1 -2
- package/Source/Scene/BufferLoader.js +2 -2
- package/Source/Scene/Camera.js +45 -64
- package/Source/Scene/CameraFlightPath.js +6 -6
- package/Source/Scene/Cesium3DContentGroup.js +2 -2
- package/Source/Scene/Cesium3DTile.js +3 -4
- package/Source/Scene/Cesium3DTileBatchTable.js +6 -49
- package/Source/Scene/Cesium3DTileFeatureTable.js +2 -3
- package/Source/Scene/Cesium3DTilePointFeature.js +10 -18
- package/Source/Scene/Cesium3DTileStyle.js +4 -7
- package/Source/Scene/Cesium3DTilesVoxelProvider.js +419 -137
- package/Source/Scene/Cesium3DTileset.js +77 -143
- package/Source/Scene/Cesium3DTilesetMetadata.js +3 -3
- package/Source/Scene/Cesium3DTilesetStatistics.js +0 -1
- package/Source/Scene/CircleEmitter.js +2 -3
- package/Source/Scene/ClassificationPrimitive.js +15 -26
- package/Source/Scene/ClippingPlaneCollection.js +7 -12
- package/Source/Scene/ClippingPolygon.js +1 -2
- package/Source/Scene/ClippingPolygonCollection.js +4 -4
- package/Source/Scene/CloudCollection.js +9 -11
- package/Source/Scene/Composite3DTileContent.js +1 -2
- package/Source/Scene/ConeEmitter.js +1 -2
- package/Source/Scene/ContentMetadata.js +2 -2
- package/Source/Scene/CreditDisplay.js +5 -9
- package/Source/Scene/CumulusCloud.js +9 -15
- package/Source/Scene/DebugAppearance.js +7 -7
- package/Source/Scene/DebugCameraPrimitive.js +5 -5
- package/Source/Scene/DebugModelMatrixPrimitive.js +6 -8
- package/Source/Scene/DepthPlane.js +1 -2
- package/Source/Scene/DirectionalLight.js +2 -3
- package/Source/Scene/DiscardMissingTileImagePolicy.js +2 -2
- package/Source/Scene/DynamicEnvironmentMapManager.js +15 -24
- package/Source/Scene/EllipsoidPrimitive.js +11 -19
- package/Source/Scene/EllipsoidSurfaceAppearance.js +11 -15
- package/Source/Scene/Expression.js +1 -0
- package/Source/Scene/FrameRateMonitor.js +12 -21
- package/Source/Scene/FrustumCommands.js +2 -3
- package/Source/Scene/Geometry3DTileContent.js +9 -16
- package/Source/Scene/Globe.js +3 -4
- package/Source/Scene/GlobeSurfaceTileProvider.js +9 -18
- package/Source/Scene/GlobeTranslucencyState.js +12 -25
- package/Source/Scene/GltfBufferViewLoader.js +4 -4
- package/Source/Scene/GltfDracoLoader.js +2 -2
- package/Source/Scene/GltfImageLoader.js +2 -2
- package/Source/Scene/GltfIndexBufferLoader.js +5 -5
- package/Source/Scene/GltfJsonLoader.js +2 -2
- package/Source/Scene/GltfLoader.js +22 -37
- package/Source/Scene/GltfLoaderUtil.js +11 -11
- package/Source/Scene/GltfPipeline/addDefaults.js +37 -64
- package/Source/Scene/GltfPipeline/addToArray.js +1 -3
- package/Source/Scene/GltfPipeline/moveTechniqueRenderStates.js +2 -5
- package/Source/Scene/GltfPipeline/parseGlb.js +1 -5
- package/Source/Scene/GltfPipeline/removeUnusedElements.js +1 -2
- package/Source/Scene/GltfPipeline/updateVersion.js +28 -49
- package/Source/Scene/GltfStructuralMetadataLoader.js +5 -6
- package/Source/Scene/GltfTextureLoader.js +3 -3
- package/Source/Scene/GltfVertexBufferLoader.js +5 -5
- package/Source/Scene/GoogleEarthEnterpriseImageryProvider.js +2 -2
- package/Source/Scene/GoogleEarthEnterpriseMapsProvider.js +3 -4
- package/Source/Scene/GridImageryProvider.js +10 -13
- package/Source/Scene/GroundPolylinePrimitive.js +11 -22
- package/Source/Scene/GroundPrimitive.js +13 -24
- package/Source/Scene/GroupMetadata.js +2 -2
- package/Source/Scene/I3SDataProvider.js +10 -15
- package/Source/Scene/I3SNode.js +1 -6
- package/Source/Scene/I3SSublayer.js +1 -2
- package/Source/Scene/I3SSymbology.js +2 -3
- package/Source/Scene/I3dmParser.js +1 -2
- package/Source/Scene/ITwinData.js +11 -6
- package/Source/Scene/ImageBasedLighting.js +2 -2
- package/Source/Scene/ImageryLayer.js +42 -71
- package/Source/Scene/ImageryLayerCollection.js +2 -3
- package/Source/Scene/Implicit3DTileContent.js +3 -4
- package/Source/Scene/ImplicitAvailabilityBitstream.js +2 -5
- package/Source/Scene/ImplicitMetadataView.js +2 -2
- package/Source/Scene/ImplicitSubtree.js +10 -15
- package/Source/Scene/ImplicitSubtreeCache.js +3 -3
- package/Source/Scene/ImplicitSubtreeMetadata.js +2 -2
- package/Source/Scene/InstanceAttributeSemantic.js +1 -1
- package/Source/Scene/IonImageryProvider.js +3 -3
- package/Source/Scene/KeyframeNode.js +16 -2
- package/Source/Scene/Label.js +19 -36
- package/Source/Scene/LabelCollection.js +218 -196
- package/Source/Scene/MapboxImageryProvider.js +4 -4
- package/Source/Scene/MapboxStyleImageryProvider.js +5 -5
- package/Source/Scene/Material.js +14 -20
- package/Source/Scene/MaterialAppearance.js +12 -18
- package/Source/Scene/Megatexture.js +145 -82
- package/Source/Scene/MetadataClass.js +4 -4
- package/Source/Scene/MetadataClassProperty.js +11 -14
- package/Source/Scene/MetadataEnum.js +4 -7
- package/Source/Scene/MetadataEnumValue.js +2 -2
- package/Source/Scene/MetadataSchema.js +4 -4
- package/Source/Scene/MetadataSchemaLoader.js +2 -2
- package/Source/Scene/MetadataTable.js +2 -2
- package/Source/Scene/MetadataTableProperty.js +17 -31
- package/Source/Scene/Model/AlphaPipelineStage.js +1 -2
- package/Source/Scene/Model/B3dmLoader.js +15 -26
- package/Source/Scene/Model/BatchTexturePipelineStage.js +1 -2
- package/Source/Scene/Model/ClassificationModelDrawCommand.js +2 -2
- package/Source/Scene/Model/CustomShader.js +10 -14
- package/Source/Scene/Model/Extensions/Gpm/GltfMeshPrimitiveGpmLoader.js +3 -3
- package/Source/Scene/Model/FeatureIdPipelineStage.js +1 -5
- package/Source/Scene/Model/GeoJsonLoader.js +5 -8
- package/Source/Scene/Model/I3dmLoader.js +13 -21
- package/Source/Scene/Model/MaterialPipelineStage.js +1 -2
- package/Source/Scene/Model/Model.js +41 -63
- package/Source/Scene/Model/ModelAnimation.js +5 -6
- package/Source/Scene/Model/ModelAnimationChannel.js +2 -2
- package/Source/Scene/Model/ModelAnimationCollection.js +4 -4
- package/Source/Scene/Model/ModelArticulation.js +2 -2
- package/Source/Scene/Model/ModelArticulationStage.js +2 -2
- package/Source/Scene/Model/ModelDrawCommand.js +3 -3
- package/Source/Scene/Model/ModelFeatureTable.js +3 -9
- package/Source/Scene/Model/ModelLightingOptions.js +3 -3
- package/Source/Scene/Model/ModelNode.js +1 -1
- package/Source/Scene/Model/ModelRuntimeNode.js +2 -2
- package/Source/Scene/Model/ModelRuntimePrimitive.js +2 -2
- package/Source/Scene/Model/ModelSceneGraph.js +2 -2
- package/Source/Scene/Model/ModelSkin.js +2 -2
- package/Source/Scene/Model/ModelUtility.js +5 -1
- package/Source/Scene/Model/PickingPipelineStage.js +1 -2
- package/Source/Scene/Model/PntsLoader.js +6 -6
- package/Source/Scene/Model/PointCloudStylingPipelineStage.js +1 -5
- package/Source/Scene/Model/PrimitiveOutlineGenerator.js +2 -2
- package/Source/Scene/Model/SelectedFeatureIdPipelineStage.js +2 -3
- package/Source/Scene/Model/TextureUniform.js +5 -8
- package/Source/Scene/Model/VaryingType.js +2 -2
- package/Source/Scene/Model/pickModel.js +4 -5
- package/Source/Scene/Moon.js +5 -5
- package/Source/Scene/OpenStreetMapImageryProvider.js +7 -7
- package/Source/Scene/OrderedGroundPrimitiveCollection.js +1 -2
- package/Source/Scene/Particle.js +11 -17
- package/Source/Scene/ParticleBurst.js +5 -5
- package/Source/Scene/ParticleSystem.js +24 -54
- package/Source/Scene/PerInstanceColorAppearance.js +8 -8
- package/Source/Scene/PerformanceDisplay.js +3 -3
- package/Source/Scene/PickFramebuffer.js +4 -5
- package/Source/Scene/Picking.js +3 -4
- package/Source/Scene/PntsParser.js +1 -2
- package/Source/Scene/PointCloud.js +6 -12
- package/Source/Scene/PointCloudShading.js +9 -18
- package/Source/Scene/PointPrimitive.js +11 -21
- package/Source/Scene/PointPrimitiveCollection.js +6 -14
- package/Source/Scene/Polyline.js +5 -5
- package/Source/Scene/PolylineCollection.js +5 -10
- package/Source/Scene/PolylineColorAppearance.js +7 -11
- package/Source/Scene/PolylineMaterialAppearance.js +7 -11
- package/Source/Scene/PostProcessStage.js +2 -2
- package/Source/Scene/PostProcessStageComposite.js +3 -6
- package/Source/Scene/Primitive.js +21 -42
- package/Source/Scene/PrimitiveCollection.js +4 -4
- package/Source/Scene/PrimitivePipeline.js +1 -2
- package/Source/Scene/PropertyAttribute.js +2 -2
- package/Source/Scene/PropertyAttributeProperty.js +4 -4
- package/Source/Scene/PropertyTable.js +2 -2
- package/Source/Scene/PropertyTexture.js +2 -2
- package/Source/Scene/PropertyTextureProperty.js +4 -4
- package/Source/Scene/QuadtreePrimitive.js +84 -66
- package/Source/Scene/QuadtreeTile.js +170 -0
- package/Source/Scene/ResourceCache.js +11 -11
- package/Source/Scene/ResourceCacheKey.js +11 -11
- package/Source/Scene/Scene.js +66 -40
- package/Source/Scene/ScreenSpaceCameraController.js +10 -20
- package/Source/Scene/ShadowMap.js +15 -15
- package/Source/Scene/ShadowVolumeAppearance.js +1 -2
- package/Source/Scene/SingleTileImageryProvider.js +4 -4
- package/Source/Scene/SkyAtmosphere.js +1 -2
- package/Source/Scene/SkyBox.js +1 -2
- package/Source/Scene/SpatialNode.js +4 -11
- package/Source/Scene/SphereEmitter.js +2 -3
- package/Source/Scene/StructuralMetadata.js +2 -2
- package/Source/Scene/SunLight.js +4 -4
- package/Source/Scene/SupportedImageFormats.js +4 -4
- package/Source/Scene/TileBoundingRegion.js +4 -5
- package/Source/Scene/TileBoundingS2Cell.js +3 -4
- package/Source/Scene/TileCoordinatesImageryProvider.js +5 -5
- package/Source/Scene/TileMapServiceImageryProvider.js +18 -27
- package/Source/Scene/TileMetadata.js +2 -2
- package/Source/Scene/TilesetMetadata.js +2 -2
- package/Source/Scene/TimeDynamicImagery.js +2 -2
- package/Source/Scene/TimeDynamicPointCloud.js +8 -10
- package/Source/Scene/TweenCollection.js +13 -16
- package/Source/Scene/UrlTemplateImageryProvider.js +11 -15
- package/Source/Scene/Vector3DTileClampedPolylines.js +1 -2
- package/Source/Scene/Vector3DTileContent.js +16 -20
- package/Source/Scene/Vector3DTileGeometry.js +1 -2
- package/Source/Scene/Vector3DTilePoints.js +2 -5
- package/Source/Scene/Vector3DTilePolygons.js +2 -3
- package/Source/Scene/Vector3DTilePolylines.js +1 -2
- package/Source/Scene/Vector3DTilePrimitive.js +9 -13
- package/Source/Scene/VoxelBoxShape.js +14 -8
- package/Source/Scene/VoxelCell.js +6 -5
- package/Source/Scene/VoxelContent.js +171 -107
- package/Source/Scene/VoxelCylinderShape.js +69 -69
- package/Source/Scene/VoxelEllipsoidShape.js +17 -8
- package/Source/Scene/VoxelMetadataOrder.js +24 -0
- package/Source/Scene/VoxelPrimitive.js +134 -79
- package/Source/Scene/VoxelProvider.js +22 -29
- package/Source/Scene/VoxelRenderResources.js +26 -7
- package/Source/Scene/VoxelShape.js +10 -3
- package/Source/Scene/VoxelTraversal.js +260 -180
- package/Source/Scene/WebMapServiceImageryProvider.js +17 -24
- package/Source/Scene/WebMapTileServiceImageryProvider.js +7 -10
- package/Source/Scene/createElevationBandMaterial.js +4 -4
- package/Source/Scene/createGooglePhotorealistic3DTileset.js +8 -16
- package/Source/Scene/createOsmBuildingsAsync.js +3 -6
- package/Source/Scene/createTangentSpaceDebugPrimitive.js +4 -6
- package/Source/Scene/createWorldImageryAsync.js +3 -3
- package/Source/Scene/findContentMetadata.js +2 -5
- package/Source/Scene/findTileMetadata.js +2 -5
- package/Source/Scene/parseBatchTable.js +1 -5
- package/Source/Scene/parseFeatureMetadataLegacy.js +2 -2
- package/Source/Scene/parseStructuralMetadata.js +2 -2
- package/Source/Scene/processVoxelProperties.js +3 -0
- package/Source/Shaders/GlobeFS.glsl +10 -1
- package/Source/Shaders/GlobeFS.js +10 -1
- package/Source/Shaders/Voxels/Megatexture.glsl +4 -16
- package/Source/Shaders/Voxels/Megatexture.js +4 -16
- package/Source/Shaders/Voxels/Octree.glsl +44 -7
- package/Source/Shaders/Voxels/Octree.js +44 -7
- package/Source/Shaders/Voxels/VoxelFS.glsl +9 -15
- package/Source/Shaders/Voxels/VoxelFS.js +9 -15
- package/Source/Shaders/Voxels/convertUvToCylinder.glsl +15 -15
- package/Source/Shaders/Voxels/convertUvToCylinder.js +15 -15
- package/Source/Widget/CesiumWidget.js +17 -25
- package/Source/Workers/createGeometry.js +1 -2
- package/Source/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +1 -2
- package/Source/Workers/decodeI3S.js +1 -5
- package/Source/Workers/transcodeKTX2.js +1 -2
- package/index.d.ts +231 -92
- package/index.js +315 -310
- package/package.json +3 -3
- package/Build/Workers/chunk-TVL3F7IU.js +0 -39
- package/Source/Scene/TextureAtlas.js +0 -558
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import BoxGeometry from "../Core/BoxGeometry.js";
|
|
2
2
|
import Cartesian3 from "../Core/Cartesian3.js";
|
|
3
3
|
import Check from "../Core/Check.js";
|
|
4
|
-
import
|
|
4
|
+
import Frozen from "../Core/Frozen.js";
|
|
5
5
|
import defined from "../Core/defined.js";
|
|
6
6
|
import destroyObject from "../Core/destroyObject.js";
|
|
7
7
|
import DeveloperError from "../Core/DeveloperError.js";
|
|
@@ -69,7 +69,7 @@ import VertexArray from "./VertexArray.js";
|
|
|
69
69
|
* @private
|
|
70
70
|
*/
|
|
71
71
|
function CubeMap(options) {
|
|
72
|
-
options =
|
|
72
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
73
73
|
|
|
74
74
|
//>>includeStart('debug', pragmas.debug);
|
|
75
75
|
Check.defined("options.context", options.context);
|
|
@@ -267,7 +267,7 @@ CubeMap.prototype.copyFace = function (frameState, texture, face, mipLevel) {
|
|
|
267
267
|
0,
|
|
268
268
|
texture.width,
|
|
269
269
|
texture.height,
|
|
270
|
-
|
|
270
|
+
mipLevel ?? 0,
|
|
271
271
|
);
|
|
272
272
|
framebuffer._unBind();
|
|
273
273
|
framebuffer.destroy();
|
|
@@ -314,7 +314,7 @@ CubeMap.faceNames = function () {
|
|
|
314
314
|
* @private
|
|
315
315
|
*/
|
|
316
316
|
function loadFace(cubeMapFace, source, mipLevel) {
|
|
317
|
-
mipLevel =
|
|
317
|
+
mipLevel = mipLevel ?? 0;
|
|
318
318
|
const targetFace = cubeMapFace._targetFace;
|
|
319
319
|
const size = Math.max(Math.floor(cubeMapFace._size / 2 ** mipLevel), 1);
|
|
320
320
|
const pixelFormat = cubeMapFace._pixelFormat;
|
|
@@ -572,7 +572,7 @@ CubeMap.prototype.loadMipmaps = function (source, skipColorSpaceConversion) {
|
|
|
572
572
|
}
|
|
573
573
|
//>>includeEnd('debug');
|
|
574
574
|
|
|
575
|
-
skipColorSpaceConversion =
|
|
575
|
+
skipColorSpaceConversion = skipColorSpaceConversion ?? false;
|
|
576
576
|
const gl = this._context._gl;
|
|
577
577
|
const texture = this._texture;
|
|
578
578
|
const textureTarget = this._textureTarget;
|
|
@@ -622,7 +622,7 @@ CubeMap.prototype.loadMipmaps = function (source, skipColorSpaceConversion) {
|
|
|
622
622
|
* });
|
|
623
623
|
*/
|
|
624
624
|
CubeMap.prototype.generateMipmap = function (hint) {
|
|
625
|
-
hint =
|
|
625
|
+
hint = hint ?? MipmapHint.DONT_CARE;
|
|
626
626
|
|
|
627
627
|
//>>includeStart('debug', pragmas.debug);
|
|
628
628
|
if (this._size > 1 && !CesiumMath.isPowerOfTwo(this._size)) {
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import Check from "../Core/Check.js";
|
|
2
|
-
import defaultValue from "../Core/defaultValue.js";
|
|
3
2
|
import defined from "../Core/defined.js";
|
|
4
3
|
import DeveloperError from "../Core/DeveloperError.js";
|
|
5
4
|
import PixelFormat from "../Core/PixelFormat.js";
|
|
@@ -273,12 +272,12 @@ CubeMapFace.prototype.copyFromFramebuffer = function (
|
|
|
273
272
|
width,
|
|
274
273
|
height,
|
|
275
274
|
) {
|
|
276
|
-
xOffset =
|
|
277
|
-
yOffset =
|
|
278
|
-
framebufferXOffset =
|
|
279
|
-
framebufferYOffset =
|
|
280
|
-
width =
|
|
281
|
-
height =
|
|
275
|
+
xOffset = xOffset ?? 0;
|
|
276
|
+
yOffset = yOffset ?? 0;
|
|
277
|
+
framebufferXOffset = framebufferXOffset ?? 0;
|
|
278
|
+
framebufferYOffset = framebufferYOffset ?? 0;
|
|
279
|
+
width = width ?? this._size;
|
|
280
|
+
height = height ?? this._size;
|
|
282
281
|
|
|
283
282
|
//>>includeStart('debug', pragmas.debug);
|
|
284
283
|
Check.typeOf.number.greaterThanOrEquals("xOffset", xOffset, 0);
|
|
@@ -363,11 +362,11 @@ CubeMapFace.prototype.copyMipmapFromFramebuffer = function (
|
|
|
363
362
|
height,
|
|
364
363
|
level,
|
|
365
364
|
) {
|
|
366
|
-
xOffset =
|
|
367
|
-
yOffset =
|
|
368
|
-
width =
|
|
369
|
-
height =
|
|
370
|
-
level =
|
|
365
|
+
xOffset = xOffset ?? 0;
|
|
366
|
+
yOffset = yOffset ?? 0;
|
|
367
|
+
width = width ?? this._size;
|
|
368
|
+
height = height ?? this._size;
|
|
369
|
+
level = level ?? 0;
|
|
371
370
|
|
|
372
371
|
//>>includeStart('debug', pragmas.debug);
|
|
373
372
|
Check.typeOf.number.greaterThanOrEquals("xOffset", xOffset, 0);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import Frozen from "../Core/Frozen.js";
|
|
2
2
|
import defined from "../Core/defined.js";
|
|
3
3
|
import PrimitiveType from "../Core/PrimitiveType.js";
|
|
4
4
|
|
|
@@ -22,19 +22,16 @@ const Flags = {
|
|
|
22
22
|
* @private
|
|
23
23
|
*/
|
|
24
24
|
function DrawCommand(options) {
|
|
25
|
-
options =
|
|
25
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
26
26
|
|
|
27
27
|
this._boundingVolume = options.boundingVolume;
|
|
28
28
|
this._orientedBoundingBox = options.orientedBoundingBox;
|
|
29
29
|
this._modelMatrix = options.modelMatrix;
|
|
30
|
-
this._primitiveType =
|
|
31
|
-
options.primitiveType,
|
|
32
|
-
PrimitiveType.TRIANGLES,
|
|
33
|
-
);
|
|
30
|
+
this._primitiveType = options.primitiveType ?? PrimitiveType.TRIANGLES;
|
|
34
31
|
this._vertexArray = options.vertexArray;
|
|
35
32
|
this._count = options.count;
|
|
36
|
-
this._offset =
|
|
37
|
-
this._instanceCount =
|
|
33
|
+
this._offset = options.offset ?? 0;
|
|
34
|
+
this._instanceCount = options.instanceCount ?? 0;
|
|
38
35
|
this._shaderProgram = options.shaderProgram;
|
|
39
36
|
this._uniformMap = options.uniformMap;
|
|
40
37
|
this._renderState = options.renderState;
|
|
@@ -48,23 +45,15 @@ function DrawCommand(options) {
|
|
|
48
45
|
|
|
49
46
|
// Set initial flags.
|
|
50
47
|
this._flags = 0;
|
|
51
|
-
this.cull =
|
|
52
|
-
this.occlude =
|
|
53
|
-
this.executeInClosestFrustum =
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
this.
|
|
58
|
-
|
|
59
|
-
false
|
|
60
|
-
);
|
|
61
|
-
this.castShadows = defaultValue(options.castShadows, false);
|
|
62
|
-
this.receiveShadows = defaultValue(options.receiveShadows, false);
|
|
63
|
-
this.pickOnly = defaultValue(options.pickOnly, false);
|
|
64
|
-
this.depthForTranslucentClassification = defaultValue(
|
|
65
|
-
options.depthForTranslucentClassification,
|
|
66
|
-
false,
|
|
67
|
-
);
|
|
48
|
+
this.cull = options.cull ?? true;
|
|
49
|
+
this.occlude = options.occlude ?? true;
|
|
50
|
+
this.executeInClosestFrustum = options.executeInClosestFrustum ?? false;
|
|
51
|
+
this.debugShowBoundingVolume = options.debugShowBoundingVolume ?? false;
|
|
52
|
+
this.castShadows = options.castShadows ?? false;
|
|
53
|
+
this.receiveShadows = options.receiveShadows ?? false;
|
|
54
|
+
this.pickOnly = options.pickOnly ?? false;
|
|
55
|
+
this.depthForTranslucentClassification =
|
|
56
|
+
options.depthForTranslucentClassification ?? false;
|
|
68
57
|
|
|
69
58
|
this.dirty = true;
|
|
70
59
|
this.lastDirtyTime = 0;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Check from "../Core/Check.js";
|
|
2
|
-
import
|
|
2
|
+
import Frozen from "../Core/Frozen.js";
|
|
3
3
|
import defined from "../Core/defined.js";
|
|
4
4
|
import destroyObject from "../Core/destroyObject.js";
|
|
5
5
|
import DeveloperError from "../Core/DeveloperError.js";
|
|
@@ -82,7 +82,7 @@ function attachRenderbuffer(framebuffer, attachment, renderbuffer) {
|
|
|
82
82
|
* @constructor
|
|
83
83
|
*/
|
|
84
84
|
function Framebuffer(options) {
|
|
85
|
-
options =
|
|
85
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
86
86
|
|
|
87
87
|
const context = options.context;
|
|
88
88
|
//>>includeStart('debug', pragmas.debug);
|
|
@@ -115,7 +115,7 @@ function Framebuffer(options) {
|
|
|
115
115
|
*
|
|
116
116
|
* @see Framebuffer#destroy
|
|
117
117
|
*/
|
|
118
|
-
this.destroyAttachments =
|
|
118
|
+
this.destroyAttachments = options.destroyAttachments ?? true;
|
|
119
119
|
|
|
120
120
|
// Throw if a texture and renderbuffer are attached to the same point. This won't
|
|
121
121
|
// cause a WebGL error (because only one will be attached), but is likely a developer error.
|
|
@@ -5,7 +5,7 @@ import Renderbuffer from "./Renderbuffer.js";
|
|
|
5
5
|
import RenderbufferFormat from "./RenderbufferFormat.js";
|
|
6
6
|
import Sampler from "./Sampler.js";
|
|
7
7
|
import Texture from "./Texture.js";
|
|
8
|
-
import
|
|
8
|
+
import Frozen from "../Core/Frozen.js";
|
|
9
9
|
import defined from "../Core/defined.js";
|
|
10
10
|
import DeveloperError from "../Core/DeveloperError.js";
|
|
11
11
|
import PixelFormat from "../Core/PixelFormat.js";
|
|
@@ -32,20 +32,14 @@ import PixelFormat from "../Core/PixelFormat.js";
|
|
|
32
32
|
* @constructor
|
|
33
33
|
*/
|
|
34
34
|
function FramebufferManager(options) {
|
|
35
|
-
options =
|
|
36
|
-
this._numSamples =
|
|
37
|
-
this._colorAttachmentsLength =
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
this.
|
|
43
|
-
this._depth = defaultValue(options.depth, false);
|
|
44
|
-
this._depthStencil = defaultValue(options.depthStencil, false);
|
|
45
|
-
this._supportsDepthTexture = defaultValue(
|
|
46
|
-
options.supportsDepthTexture,
|
|
47
|
-
false,
|
|
48
|
-
);
|
|
35
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
36
|
+
this._numSamples = options.numSamples ?? 1;
|
|
37
|
+
this._colorAttachmentsLength = options.colorAttachmentsLength ?? 1;
|
|
38
|
+
|
|
39
|
+
this._color = options.color ?? true;
|
|
40
|
+
this._depth = options.depth ?? false;
|
|
41
|
+
this._depthStencil = options.depthStencil ?? false;
|
|
42
|
+
this._supportsDepthTexture = options.supportsDepthTexture ?? false;
|
|
49
43
|
//>>includeStart('debug', pragmas.debug);
|
|
50
44
|
if (!this._color && !this._depth && !this._depthStencil) {
|
|
51
45
|
throw new DeveloperError(
|
|
@@ -59,14 +53,8 @@ function FramebufferManager(options) {
|
|
|
59
53
|
}
|
|
60
54
|
//>>includeEnd('debug');
|
|
61
55
|
|
|
62
|
-
this._createColorAttachments =
|
|
63
|
-
|
|
64
|
-
true,
|
|
65
|
-
);
|
|
66
|
-
this._createDepthAttachments = defaultValue(
|
|
67
|
-
options.createDepthAttachments,
|
|
68
|
-
true,
|
|
69
|
-
);
|
|
56
|
+
this._createColorAttachments = options.createColorAttachments ?? true;
|
|
57
|
+
this._createDepthAttachments = options.createDepthAttachments ?? true;
|
|
70
58
|
|
|
71
59
|
this._pixelDatatype = options.pixelDatatype;
|
|
72
60
|
this._pixelFormat = options.pixelFormat;
|
|
@@ -118,7 +106,7 @@ FramebufferManager.prototype.isDirty = function (
|
|
|
118
106
|
pixelDatatype,
|
|
119
107
|
pixelFormat,
|
|
120
108
|
) {
|
|
121
|
-
numSamples =
|
|
109
|
+
numSamples = numSamples ?? 1;
|
|
122
110
|
const dimensionChanged = this._width !== width || this._height !== height;
|
|
123
111
|
const samplesChanged = this._numSamples !== numSamples;
|
|
124
112
|
const pixelChanged =
|
|
@@ -152,17 +140,15 @@ FramebufferManager.prototype.update = function (
|
|
|
152
140
|
throw new DeveloperError("width and height must be defined.");
|
|
153
141
|
}
|
|
154
142
|
//>>includeEnd('debug');
|
|
155
|
-
numSamples = context.msaa ?
|
|
156
|
-
pixelDatatype =
|
|
157
|
-
pixelDatatype
|
|
158
|
-
this._color
|
|
159
|
-
?
|
|
160
|
-
: undefined
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
this._color ? defaultValue(this._pixelFormat, PixelFormat.RGBA) : undefined,
|
|
165
|
-
);
|
|
143
|
+
numSamples = context.msaa ? (numSamples ?? 1) : 1;
|
|
144
|
+
pixelDatatype =
|
|
145
|
+
pixelDatatype ??
|
|
146
|
+
(this._color
|
|
147
|
+
? (this._pixelDatatype ?? PixelDatatype.UNSIGNED_BYTE)
|
|
148
|
+
: undefined);
|
|
149
|
+
pixelFormat =
|
|
150
|
+
pixelFormat ??
|
|
151
|
+
(this._color ? (this._pixelFormat ?? PixelFormat.RGBA) : undefined);
|
|
166
152
|
|
|
167
153
|
if (this.isDirty(width, height, numSamples, pixelDatatype, pixelFormat)) {
|
|
168
154
|
this.destroy();
|
|
@@ -274,7 +260,7 @@ FramebufferManager.prototype.update = function (
|
|
|
274
260
|
};
|
|
275
261
|
|
|
276
262
|
FramebufferManager.prototype.getColorTexture = function (index) {
|
|
277
|
-
index =
|
|
263
|
+
index = index ?? 0;
|
|
278
264
|
//>>includeStart('debug', pragmas.debug);
|
|
279
265
|
if (index >= this._colorAttachmentsLength) {
|
|
280
266
|
throw new DeveloperError(
|
|
@@ -286,7 +272,7 @@ FramebufferManager.prototype.getColorTexture = function (index) {
|
|
|
286
272
|
};
|
|
287
273
|
|
|
288
274
|
FramebufferManager.prototype.setColorTexture = function (texture, index) {
|
|
289
|
-
index =
|
|
275
|
+
index = index ?? 0;
|
|
290
276
|
//>>includeStart('debug', pragmas.debug);
|
|
291
277
|
if (this._createColorAttachments) {
|
|
292
278
|
throw new DeveloperError(
|
|
@@ -304,7 +290,7 @@ FramebufferManager.prototype.setColorTexture = function (texture, index) {
|
|
|
304
290
|
};
|
|
305
291
|
|
|
306
292
|
FramebufferManager.prototype.getColorRenderbuffer = function (index) {
|
|
307
|
-
index =
|
|
293
|
+
index = index ?? 0;
|
|
308
294
|
//>>includeStart('debug', pragmas.debug);
|
|
309
295
|
if (index >= this._colorAttachmentsLength) {
|
|
310
296
|
throw new DeveloperError(
|
|
@@ -319,7 +305,7 @@ FramebufferManager.prototype.setColorRenderbuffer = function (
|
|
|
319
305
|
renderbuffer,
|
|
320
306
|
index,
|
|
321
307
|
) {
|
|
322
|
-
index =
|
|
308
|
+
index = index ?? 0;
|
|
323
309
|
//>>includeStart('debug', pragmas.debug);
|
|
324
310
|
if (this._createColorAttachments) {
|
|
325
311
|
throw new DeveloperError(
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Check from "../Core/Check.js";
|
|
2
|
-
import
|
|
2
|
+
import Frozen from "../Core/Frozen.js";
|
|
3
3
|
import defined from "../Core/defined.js";
|
|
4
4
|
import destroyObject from "../Core/destroyObject.js";
|
|
5
5
|
import DeveloperError from "../Core/DeveloperError.js";
|
|
@@ -29,7 +29,7 @@ import Framebuffer from "./Framebuffer.js";
|
|
|
29
29
|
* @constructor
|
|
30
30
|
*/
|
|
31
31
|
function MultisampleFramebuffer(options) {
|
|
32
|
-
options =
|
|
32
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
33
33
|
|
|
34
34
|
const {
|
|
35
35
|
context,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import BoundingRectangle from "../Core/BoundingRectangle.js";
|
|
2
2
|
import Color from "../Core/Color.js";
|
|
3
|
-
import
|
|
3
|
+
import Frozen from "../Core/Frozen.js";
|
|
4
4
|
import defined from "../Core/defined.js";
|
|
5
5
|
import DeveloperError from "../Core/DeveloperError.js";
|
|
6
6
|
import WebGLConstants from "../Core/WebGLConstants.js";
|
|
@@ -89,122 +89,93 @@ function validateStencilOperation(stencilOperation) {
|
|
|
89
89
|
* @private
|
|
90
90
|
*/
|
|
91
91
|
function RenderState(renderState) {
|
|
92
|
-
const rs =
|
|
93
|
-
const cull =
|
|
94
|
-
const polygonOffset =
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
const
|
|
99
|
-
const
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
const
|
|
104
|
-
|
|
105
|
-
const
|
|
106
|
-
|
|
107
|
-
const
|
|
108
|
-
const stencilTest = defaultValue(rs.stencilTest, defaultValue.EMPTY_OBJECT);
|
|
109
|
-
const stencilTestFrontOperation = defaultValue(
|
|
110
|
-
stencilTest.frontOperation,
|
|
111
|
-
defaultValue.EMPTY_OBJECT,
|
|
112
|
-
);
|
|
113
|
-
const stencilTestBackOperation = defaultValue(
|
|
114
|
-
stencilTest.backOperation,
|
|
115
|
-
defaultValue.EMPTY_OBJECT,
|
|
116
|
-
);
|
|
117
|
-
const sampleCoverage = defaultValue(
|
|
118
|
-
rs.sampleCoverage,
|
|
119
|
-
defaultValue.EMPTY_OBJECT,
|
|
120
|
-
);
|
|
92
|
+
const rs = renderState ?? Frozen.EMPTY_OBJECT;
|
|
93
|
+
const cull = rs.cull ?? Frozen.EMPTY_OBJECT;
|
|
94
|
+
const polygonOffset = rs.polygonOffset ?? Frozen.EMPTY_OBJECT;
|
|
95
|
+
const scissorTest = rs.scissorTest ?? Frozen.EMPTY_OBJECT;
|
|
96
|
+
const scissorTestRectangle = scissorTest.rectangle ?? Frozen.EMPTY_OBJECT;
|
|
97
|
+
const depthRange = rs.depthRange ?? Frozen.EMPTY_OBJECT;
|
|
98
|
+
const depthTest = rs.depthTest ?? Frozen.EMPTY_OBJECT;
|
|
99
|
+
const colorMask = rs.colorMask ?? Frozen.EMPTY_OBJECT;
|
|
100
|
+
const blending = rs.blending ?? Frozen.EMPTY_OBJECT;
|
|
101
|
+
const blendingColor = blending.color ?? Frozen.EMPTY_OBJECT;
|
|
102
|
+
const stencilTest = rs.stencilTest ?? Frozen.EMPTY_OBJECT;
|
|
103
|
+
const stencilTestFrontOperation =
|
|
104
|
+
stencilTest.frontOperation ?? Frozen.EMPTY_OBJECT;
|
|
105
|
+
const stencilTestBackOperation =
|
|
106
|
+
stencilTest.backOperation ?? Frozen.EMPTY_OBJECT;
|
|
107
|
+
const sampleCoverage = rs.sampleCoverage ?? Frozen.EMPTY_OBJECT;
|
|
121
108
|
const viewport = rs.viewport;
|
|
122
109
|
|
|
123
|
-
this.frontFace =
|
|
110
|
+
this.frontFace = rs.frontFace ?? WindingOrder.COUNTER_CLOCKWISE;
|
|
124
111
|
this.cull = {
|
|
125
|
-
enabled:
|
|
126
|
-
face:
|
|
112
|
+
enabled: cull.enabled ?? false,
|
|
113
|
+
face: cull.face ?? WebGLConstants.BACK,
|
|
127
114
|
};
|
|
128
|
-
this.lineWidth =
|
|
115
|
+
this.lineWidth = rs.lineWidth ?? 1.0;
|
|
129
116
|
this.polygonOffset = {
|
|
130
|
-
enabled:
|
|
131
|
-
factor:
|
|
132
|
-
units:
|
|
117
|
+
enabled: polygonOffset.enabled ?? false,
|
|
118
|
+
factor: polygonOffset.factor ?? 0,
|
|
119
|
+
units: polygonOffset.units ?? 0,
|
|
133
120
|
};
|
|
134
121
|
this.scissorTest = {
|
|
135
|
-
enabled:
|
|
122
|
+
enabled: scissorTest.enabled ?? false,
|
|
136
123
|
rectangle: BoundingRectangle.clone(scissorTestRectangle),
|
|
137
124
|
};
|
|
138
125
|
this.depthRange = {
|
|
139
|
-
near:
|
|
140
|
-
far:
|
|
126
|
+
near: depthRange.near ?? 0,
|
|
127
|
+
far: depthRange.far ?? 1,
|
|
141
128
|
};
|
|
142
129
|
this.depthTest = {
|
|
143
|
-
enabled:
|
|
144
|
-
func:
|
|
130
|
+
enabled: depthTest.enabled ?? false,
|
|
131
|
+
func: depthTest.func ?? WebGLConstants.LESS, // func, because function is a JavaScript keyword
|
|
145
132
|
};
|
|
146
133
|
this.colorMask = {
|
|
147
|
-
red:
|
|
148
|
-
green:
|
|
149
|
-
blue:
|
|
150
|
-
alpha:
|
|
134
|
+
red: colorMask.red ?? true,
|
|
135
|
+
green: colorMask.green ?? true,
|
|
136
|
+
blue: colorMask.blue ?? true,
|
|
137
|
+
alpha: colorMask.alpha ?? true,
|
|
151
138
|
};
|
|
152
|
-
this.depthMask =
|
|
153
|
-
this.stencilMask =
|
|
139
|
+
this.depthMask = rs.depthMask ?? true;
|
|
140
|
+
this.stencilMask = rs.stencilMask ?? ~0;
|
|
154
141
|
this.blending = {
|
|
155
|
-
enabled:
|
|
142
|
+
enabled: blending.enabled ?? false,
|
|
156
143
|
color: new Color(
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
),
|
|
162
|
-
equationRgb: defaultValue(blending.equationRgb, WebGLConstants.FUNC_ADD),
|
|
163
|
-
equationAlpha: defaultValue(
|
|
164
|
-
blending.equationAlpha,
|
|
165
|
-
WebGLConstants.FUNC_ADD,
|
|
166
|
-
),
|
|
167
|
-
functionSourceRgb: defaultValue(
|
|
168
|
-
blending.functionSourceRgb,
|
|
169
|
-
WebGLConstants.ONE,
|
|
170
|
-
),
|
|
171
|
-
functionSourceAlpha: defaultValue(
|
|
172
|
-
blending.functionSourceAlpha,
|
|
173
|
-
WebGLConstants.ONE,
|
|
174
|
-
),
|
|
175
|
-
functionDestinationRgb: defaultValue(
|
|
176
|
-
blending.functionDestinationRgb,
|
|
177
|
-
WebGLConstants.ZERO,
|
|
178
|
-
),
|
|
179
|
-
functionDestinationAlpha: defaultValue(
|
|
180
|
-
blending.functionDestinationAlpha,
|
|
181
|
-
WebGLConstants.ZERO,
|
|
144
|
+
blendingColor.red ?? 0.0,
|
|
145
|
+
blendingColor.green ?? 0.0,
|
|
146
|
+
blendingColor.blue ?? 0.0,
|
|
147
|
+
blendingColor.alpha ?? 0.0,
|
|
182
148
|
),
|
|
149
|
+
equationRgb: blending.equationRgb ?? WebGLConstants.FUNC_ADD,
|
|
150
|
+
equationAlpha: blending.equationAlpha ?? WebGLConstants.FUNC_ADD,
|
|
151
|
+
functionSourceRgb: blending.functionSourceRgb ?? WebGLConstants.ONE,
|
|
152
|
+
functionSourceAlpha: blending.functionSourceAlpha ?? WebGLConstants.ONE,
|
|
153
|
+
functionDestinationRgb:
|
|
154
|
+
blending.functionDestinationRgb ?? WebGLConstants.ZERO,
|
|
155
|
+
functionDestinationAlpha:
|
|
156
|
+
blending.functionDestinationAlpha ?? WebGLConstants.ZERO,
|
|
183
157
|
};
|
|
184
158
|
this.stencilTest = {
|
|
185
|
-
enabled:
|
|
186
|
-
frontFunction:
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
backFunction: defaultValue(stencilTest.backFunction, WebGLConstants.ALWAYS),
|
|
191
|
-
reference: defaultValue(stencilTest.reference, 0),
|
|
192
|
-
mask: defaultValue(stencilTest.mask, ~0),
|
|
159
|
+
enabled: stencilTest.enabled ?? false,
|
|
160
|
+
frontFunction: stencilTest.frontFunction ?? WebGLConstants.ALWAYS,
|
|
161
|
+
backFunction: stencilTest.backFunction ?? WebGLConstants.ALWAYS,
|
|
162
|
+
reference: stencilTest.reference ?? 0,
|
|
163
|
+
mask: stencilTest.mask ?? ~0,
|
|
193
164
|
frontOperation: {
|
|
194
|
-
fail:
|
|
195
|
-
zFail:
|
|
196
|
-
zPass:
|
|
165
|
+
fail: stencilTestFrontOperation.fail ?? WebGLConstants.KEEP,
|
|
166
|
+
zFail: stencilTestFrontOperation.zFail ?? WebGLConstants.KEEP,
|
|
167
|
+
zPass: stencilTestFrontOperation.zPass ?? WebGLConstants.KEEP,
|
|
197
168
|
},
|
|
198
169
|
backOperation: {
|
|
199
|
-
fail:
|
|
200
|
-
zFail:
|
|
201
|
-
zPass:
|
|
170
|
+
fail: stencilTestBackOperation.fail ?? WebGLConstants.KEEP,
|
|
171
|
+
zFail: stencilTestBackOperation.zFail ?? WebGLConstants.KEEP,
|
|
172
|
+
zPass: stencilTestBackOperation.zPass ?? WebGLConstants.KEEP,
|
|
202
173
|
},
|
|
203
174
|
};
|
|
204
175
|
this.sampleCoverage = {
|
|
205
|
-
enabled:
|
|
206
|
-
value:
|
|
207
|
-
invert:
|
|
176
|
+
enabled: sampleCoverage.enabled ?? false,
|
|
177
|
+
value: sampleCoverage.value ?? 1.0,
|
|
178
|
+
invert: sampleCoverage.invert ?? false,
|
|
208
179
|
};
|
|
209
180
|
this.viewport = defined(viewport)
|
|
210
181
|
? new BoundingRectangle(
|
|
@@ -737,7 +708,7 @@ function applySampleCoverage(gl, renderState) {
|
|
|
737
708
|
const scratchViewport = new BoundingRectangle();
|
|
738
709
|
|
|
739
710
|
function applyViewport(gl, renderState, passState) {
|
|
740
|
-
let viewport =
|
|
711
|
+
let viewport = renderState.viewport ?? passState.viewport;
|
|
741
712
|
if (!defined(viewport)) {
|
|
742
713
|
viewport = scratchViewport;
|
|
743
714
|
viewport.width = passState.context.drawingBufferWidth;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Check from "../Core/Check.js";
|
|
2
|
-
import
|
|
2
|
+
import Frozen from "../Core/Frozen.js";
|
|
3
3
|
import defined from "../Core/defined.js";
|
|
4
4
|
import destroyObject from "../Core/destroyObject.js";
|
|
5
5
|
import DeveloperError from "../Core/DeveloperError.js";
|
|
@@ -10,7 +10,7 @@ import RenderbufferFormat from "./RenderbufferFormat.js";
|
|
|
10
10
|
* @private
|
|
11
11
|
*/
|
|
12
12
|
function Renderbuffer(options) {
|
|
13
|
-
options =
|
|
13
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
14
14
|
|
|
15
15
|
//>>includeStart('debug', pragmas.debug);
|
|
16
16
|
Check.defined("options.context", options.context);
|
|
@@ -20,12 +20,12 @@ function Renderbuffer(options) {
|
|
|
20
20
|
const gl = context._gl;
|
|
21
21
|
const maximumRenderbufferSize = ContextLimits.maximumRenderbufferSize;
|
|
22
22
|
|
|
23
|
-
const format =
|
|
23
|
+
const format = options.format ?? RenderbufferFormat.RGBA4;
|
|
24
24
|
const width = defined(options.width) ? options.width : gl.drawingBufferWidth;
|
|
25
25
|
const height = defined(options.height)
|
|
26
26
|
? options.height
|
|
27
27
|
: gl.drawingBufferHeight;
|
|
28
|
-
const numSamples =
|
|
28
|
+
const numSamples = options.numSamples ?? 1;
|
|
29
29
|
|
|
30
30
|
//>>includeStart('debug', pragmas.debug);
|
|
31
31
|
if (!RenderbufferFormat.validate(format)) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Check from "../Core/Check.js";
|
|
2
|
-
import
|
|
2
|
+
import Frozen from "../Core/Frozen.js";
|
|
3
3
|
import defined from "../Core/defined.js";
|
|
4
4
|
import DeveloperError from "../Core/DeveloperError.js";
|
|
5
5
|
import TextureMagnificationFilter from "./TextureMagnificationFilter.js";
|
|
@@ -10,7 +10,7 @@ import TextureWrap from "./TextureWrap.js";
|
|
|
10
10
|
* @private
|
|
11
11
|
*/
|
|
12
12
|
function Sampler(options) {
|
|
13
|
-
options =
|
|
13
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
14
14
|
|
|
15
15
|
const {
|
|
16
16
|
wrapS = TextureWrap.CLAMP_TO_EDGE,
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import Check from "../Core/Check.js";
|
|
2
2
|
import clone from "../Core/clone.js";
|
|
3
3
|
import defined from "../Core/defined.js";
|
|
4
|
-
import defaultValue from "../Core/defaultValue.js";
|
|
5
4
|
import DeveloperError from "../Core/DeveloperError.js";
|
|
6
5
|
import ShaderDestination from "./ShaderDestination.js";
|
|
7
6
|
import ShaderProgram from "./ShaderProgram.js";
|
|
@@ -122,7 +121,7 @@ ShaderBuilder.prototype.addDefine = function (identifier, value, destination) {
|
|
|
122
121
|
Check.typeOf.string("identifier", identifier);
|
|
123
122
|
//>>includeEnd('debug');
|
|
124
123
|
|
|
125
|
-
destination =
|
|
124
|
+
destination = destination ?? ShaderDestination.BOTH;
|
|
126
125
|
|
|
127
126
|
// The ShaderSource created in build() will add the #define part
|
|
128
127
|
let line = identifier;
|
|
@@ -281,7 +280,7 @@ ShaderBuilder.prototype.addUniform = function (type, identifier, destination) {
|
|
|
281
280
|
Check.typeOf.string("identifier", identifier);
|
|
282
281
|
//>>includeEnd('debug');
|
|
283
282
|
|
|
284
|
-
destination =
|
|
283
|
+
destination = destination ?? ShaderDestination.BOTH;
|
|
285
284
|
const line = `uniform ${type} ${identifier};`;
|
|
286
285
|
|
|
287
286
|
if (ShaderDestination.includesVertexShader(destination)) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Check from "../Core/Check.js";
|
|
2
|
-
import
|
|
2
|
+
import Frozen from "../Core/Frozen.js";
|
|
3
3
|
import defined from "../Core/defined.js";
|
|
4
4
|
import destroyObject from "../Core/destroyObject.js";
|
|
5
5
|
import DeveloperError from "../Core/DeveloperError.js";
|
|
@@ -63,7 +63,7 @@ function ShaderProgram(options) {
|
|
|
63
63
|
}
|
|
64
64
|
|
|
65
65
|
ShaderProgram.fromCache = function (options) {
|
|
66
|
-
options =
|
|
66
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
67
67
|
|
|
68
68
|
//>>includeStart('debug', pragmas.debug);
|
|
69
69
|
Check.defined("options.context", options.context);
|
|
@@ -73,7 +73,7 @@ ShaderProgram.fromCache = function (options) {
|
|
|
73
73
|
};
|
|
74
74
|
|
|
75
75
|
ShaderProgram.replaceCache = function (options) {
|
|
76
|
-
options =
|
|
76
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
77
77
|
|
|
78
78
|
//>>includeStart('debug', pragmas.debug);
|
|
79
79
|
Check.defined("options.context", options.context);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import Frozen from "../Core/Frozen.js";
|
|
2
2
|
import defined from "../Core/defined.js";
|
|
3
3
|
import DeveloperError from "../Core/DeveloperError.js";
|
|
4
4
|
import CzmBuiltins from "../Shaders/Builtin/CzmBuiltins.js";
|
|
@@ -329,7 +329,7 @@ function combineShader(shaderSource, isFragmentShader, context) {
|
|
|
329
329
|
* @private
|
|
330
330
|
*/
|
|
331
331
|
function ShaderSource(options) {
|
|
332
|
-
options =
|
|
332
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
333
333
|
const pickColorQualifier = options.pickColorQualifier;
|
|
334
334
|
|
|
335
335
|
//>>includeStart('debug', pragmas.debug);
|
|
@@ -347,7 +347,7 @@ function ShaderSource(options) {
|
|
|
347
347
|
this.defines = defined(options.defines) ? options.defines.slice(0) : [];
|
|
348
348
|
this.sources = defined(options.sources) ? options.sources.slice(0) : [];
|
|
349
349
|
this.pickColorQualifier = pickColorQualifier;
|
|
350
|
-
this.includeBuiltIns =
|
|
350
|
+
this.includeBuiltIns = options.includeBuiltIns ?? true;
|
|
351
351
|
}
|
|
352
352
|
|
|
353
353
|
ShaderSource.prototype.clone = function () {
|