@cesium/engine 24.0.0 → 26.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-6WLHJFD3.js → chunk-3VFEWOBI.js} +59 -32
- package/Build/Workers/{chunk-UQU4RXLT.js → chunk-424RNO3D.js} +50 -45
- package/Build/Workers/chunk-4MGMYHOO.js +147 -0
- package/Build/Workers/{chunk-AMIHNSST.js → chunk-4S7IE3LB.js} +2 -2
- package/Build/Workers/{chunk-J6AW5YHS.js → chunk-52JDLOEM.js} +14 -14
- package/Build/Workers/{chunk-6RMS4S72.js → chunk-54I6Y66F.js} +6 -6
- package/Build/Workers/{chunk-C6P4IG5P.js → chunk-6YEE6JDR.js} +6 -6
- package/Build/Workers/{chunk-72VYSVEW.js → chunk-7J2HKPRH.js} +11 -10
- package/Build/Workers/{chunk-7O5XJTVE.js → chunk-7WM2PX4V.js} +5 -5
- package/Build/Workers/{chunk-5A2SW66E.js → chunk-ACXQXN46.js} +16 -16
- package/Build/Workers/{chunk-VLDEUTOP.js → chunk-AYKR4VBR.js} +2 -2
- package/Build/Workers/{chunk-YQFTYQMZ.js → chunk-C6J67V5A.js} +3 -2
- package/Build/Workers/{chunk-D4EJ2NXG.js → chunk-C6KNZ7T4.js} +17 -17
- package/Build/Workers/{chunk-7MDYBRYJ.js → chunk-CFQP6LYM.js} +4 -4
- package/Build/Workers/{chunk-YAOZMOFL.js → chunk-CXOYE2WM.js} +5 -5
- package/Build/Workers/{chunk-B6SCUUFP.js → chunk-CZEYZU4N.js} +10 -10
- package/Build/Workers/{chunk-NPF7SSHZ.js → chunk-DBOEKL43.js} +7 -7
- package/Build/Workers/{chunk-44EMEGKW.js → chunk-DDWSZVMY.js} +5 -5
- package/Build/Workers/{chunk-7X322WP2.js → chunk-DOBXCNC3.js} +13 -13
- package/Build/Workers/{chunk-JCI63T3K.js → chunk-E7VQ76KE.js} +6 -6
- package/Build/Workers/{chunk-7TYLCBGK.js → chunk-EBSIOBXY.js} +12 -10
- package/Build/Workers/{chunk-GQUNK2XC.js → chunk-EF2QYXGA.js} +14 -14
- package/Build/Workers/{chunk-BJD6QGXZ.js → chunk-EPYXRCDB.js} +12 -12
- package/Build/Workers/{chunk-63SIWPLS.js → chunk-F6QDY6HU.js} +13 -13
- package/Build/Workers/{chunk-XY6HMDGI.js → chunk-FRQZECAO.js} +5 -5
- package/Build/Workers/{chunk-VMVOUQ5J.js → chunk-G7PXZRVF.js} +7 -7
- package/Build/Workers/{chunk-N65BAKSH.js → chunk-INUEEEQA.js} +8 -8
- package/Build/Workers/{chunk-7QRFIKWQ.js → chunk-IRBKFCEJ.js} +2 -2
- package/Build/Workers/{chunk-UIGVOKKI.js → chunk-IYOUHCZB.js} +3 -2
- package/Build/Workers/{chunk-5GXYJQ2K.js → chunk-J6BWOHUF.js} +3 -3
- package/Build/Workers/{chunk-A47HVBC5.js → chunk-KFSTQKNM.js} +7 -7
- package/Build/Workers/{chunk-EV3VGO6Y.js → chunk-KKOSKAZB.js} +17 -17
- package/Build/Workers/{chunk-6MPGQEHA.js → chunk-KSSWJIZW.js} +2 -2
- package/Build/Workers/{chunk-DHKPFLSJ.js → chunk-M3B5JKSM.js} +3 -2
- package/Build/Workers/chunk-MPZHGZU6.js +2342 -0
- package/Build/Workers/{chunk-YJZGW74L.js → chunk-MYP774IS.js} +2213 -1349
- package/Build/Workers/{chunk-LIB2H534.js → chunk-O3EA5HS7.js} +12 -11
- package/Build/Workers/{chunk-ILMFADZA.js → chunk-P3CK7MCY.js} +27 -5
- package/Build/Workers/chunk-Q3PY526V.js +3201 -0
- package/Build/Workers/chunk-QN67VG36.js +973 -0
- package/Build/Workers/{chunk-XJRBB253.js → chunk-QRWGUWI6.js} +11 -11
- package/Build/Workers/{chunk-AF3MU2RL.js → chunk-S4MCOY6I.js} +7 -6
- package/Build/Workers/{chunk-Y7HNNPNK.js → chunk-SMQZZOW6.js} +10 -10
- package/Build/Workers/{chunk-PVV64VFW.js → chunk-TKKIREQ6.js} +3 -2
- package/Build/Workers/{chunk-MKM27KGV.js → chunk-U3ZA64U7.js} +2 -2
- package/Build/Workers/{chunk-2N4KDHS3.js → chunk-UA25D5MX.js} +12 -11
- package/Build/Workers/{chunk-RQNJD3O4.js → chunk-UOOIQ3KX.js} +12 -12
- package/Build/Workers/{chunk-GOQBUCXH.js → chunk-V7VQKN6N.js} +709 -431
- package/Build/Workers/{chunk-LXMCPFFS.js → chunk-VQYETPWC.js} +4 -4
- package/Build/Workers/{chunk-NKT5K3K3.js → chunk-VWV2IJRB.js} +13 -12
- package/Build/Workers/chunk-XZMBNNDX.js +1287 -0
- package/Build/Workers/{chunk-ISY4EZCA.js → chunk-Y57HREW5.js} +4 -4
- package/Build/Workers/{chunk-EDXL4W76.js → chunk-Y5BF6AFU.js} +2 -2
- package/Build/Workers/{chunk-Q3C6VQH6.js → chunk-YLY7NKAB.js} +4 -4
- package/Build/Workers/{chunk-4TIG36AW.js → chunk-ZK3CF7ZD.js} +12 -12
- package/Build/Workers/{chunk-AJLTU6PF.js → chunk-ZP7JMQV4.js} +4 -1
- package/Build/Workers/{chunk-HXJMS2ZI.js → chunk-ZZ46LWL6.js} +1 -1
- package/Build/Workers/combineGeometry.js +24 -24
- package/Build/Workers/createBoxGeometry.js +18 -18
- package/Build/Workers/createBoxOutlineGeometry.js +16 -16
- package/Build/Workers/createCircleGeometry.js +26 -26
- package/Build/Workers/createCircleOutlineGeometry.js +19 -19
- package/Build/Workers/createCoplanarPolygonGeometry.js +33 -33
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +31 -31
- package/Build/Workers/createCorridorGeometry.js +29 -29
- package/Build/Workers/createCorridorOutlineGeometry.js +28 -28
- package/Build/Workers/createCylinderGeometry.js +20 -20
- package/Build/Workers/createCylinderOutlineGeometry.js +18 -18
- package/Build/Workers/createEllipseGeometry.js +26 -26
- package/Build/Workers/createEllipseOutlineGeometry.js +19 -19
- package/Build/Workers/createEllipsoidGeometry.js +19 -19
- package/Build/Workers/createEllipsoidOutlineGeometry.js +18 -18
- package/Build/Workers/createFrustumGeometry.js +18 -18
- package/Build/Workers/createFrustumOutlineGeometry.js +18 -18
- package/Build/Workers/createGeometry.js +24 -24
- package/Build/Workers/createGroundPolylineGeometry.js +175 -118
- package/Build/Workers/createPlaneGeometry.js +16 -16
- package/Build/Workers/createPlaneOutlineGeometry.js +15 -15
- package/Build/Workers/createPolygonGeometry.js +32 -32
- package/Build/Workers/createPolygonOutlineGeometry.js +30 -30
- package/Build/Workers/createPolylineGeometry.js +25 -25
- package/Build/Workers/createPolylineVolumeGeometry.js +31 -31
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +27 -27
- package/Build/Workers/createRectangleGeometry.js +27 -27
- package/Build/Workers/createRectangleOutlineGeometry.js +20 -20
- package/Build/Workers/createSimplePolylineGeometry.js +23 -23
- package/Build/Workers/createSphereGeometry.js +19 -19
- package/Build/Workers/createSphereOutlineGeometry.js +18 -18
- package/Build/Workers/createTaskProcessorWorker.js +3 -3
- package/Build/Workers/createVectorTileClampedPolylines.js +14 -14
- package/Build/Workers/createVectorTileGeometries.js +24 -24
- package/Build/Workers/createVectorTilePoints.js +13 -13
- package/Build/Workers/createVectorTilePolygons.js +22 -22
- package/Build/Workers/createVectorTilePolylines.js +14 -14
- package/Build/Workers/createVerticesFromCesium3DTilesTerrain.js +25 -25
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +22 -22
- package/Build/Workers/createVerticesFromHeightmap.js +24 -23
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +20 -20
- package/Build/Workers/createWallGeometry.js +24 -24
- package/Build/Workers/createWallOutlineGeometry.js +23 -23
- package/Build/Workers/decodeDraco.js +10 -10
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
- package/Build/Workers/decodeI3S.js +10 -10
- package/Build/Workers/gaussianSplatSorter.js +4 -4
- package/Build/Workers/gaussianSplatTextureGenerator.js +4 -4
- package/Build/Workers/incrementallyBuildTerrainPicker.js +10 -10
- package/Build/Workers/transcodeKTX2.js +12 -9
- package/Build/Workers/transferTypedArrayTest.js +1 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +22 -22
- package/Build/Workers/upsampleVerticesFromCesium3DTilesTerrain.js +25 -25
- package/Source/Core/ArcType.js +6 -1
- package/Source/Core/ArticulationStageType.js +5 -1
- package/Source/Core/AssociativeArray.js +100 -94
- package/Source/Core/BoundingSphere.js +1296 -1300
- package/Source/Core/Cartesian2.js +1 -1
- package/Source/Core/Cartesian3.js +2 -3
- package/Source/Core/Cartesian4.js +1 -1
- package/Source/Core/Cartographic.js +257 -249
- package/Source/Core/ClockRange.js +6 -1
- package/Source/Core/ClockStep.js +6 -1
- package/Source/Core/Color.js +844 -835
- package/Source/Core/ComponentDatatype.js +39 -1
- package/Source/Core/CornerType.js +6 -1
- package/Source/Core/Credit.js +121 -124
- package/Source/Core/Ellipsoid.js +637 -660
- package/Source/Core/ExtrapolationType.js +6 -1
- package/Source/Core/GeocodeType.js +6 -1
- package/Source/Core/GeographicProjection.js +74 -74
- package/Source/Core/GeographicTilingScheme.js +179 -198
- package/Source/Core/GeometryOffsetAttribute.js +7 -1
- package/Source/Core/GeometryType.js +7 -1
- package/Source/Core/HeightmapEncoding.js +6 -1
- package/Source/Core/Iau2006XysData.js +24 -13
- package/Source/Core/IndexDatatype.js +3 -1
- package/Source/Core/InterpolationType.js +5 -1
- package/Source/Core/Intersect.js +6 -1
- package/Source/Core/Ion.js +1 -1
- package/Source/Core/IonGeocodeProviderType.js +5 -1
- package/Source/Core/JulianDate.js +850 -848
- package/Source/Core/KeyboardEventModifier.js +6 -1
- package/Source/Core/MapProjection.js +40 -44
- package/Source/Core/Matrix2.js +906 -893
- package/Source/Core/Matrix3.js +1643 -1575
- package/Source/Core/Matrix4.js +2903 -2872
- package/Source/Core/PixelFormat.js +3 -1
- package/Source/Core/PrimitiveType.js +11 -1
- package/Source/Core/Ray.js +62 -60
- package/Source/Core/Rectangle.js +913 -904
- package/Source/Core/ReferenceFrame.js +6 -1
- package/Source/Core/RequestScheduler.js +8 -3
- package/Source/Core/RequestState.js +6 -1
- package/Source/Core/RequestType.js +6 -1
- package/Source/Core/Resource.js +1 -1
- package/Source/Core/ScreenSpaceEventHandler.js +51 -41
- package/Source/Core/ScreenSpaceEventType.js +6 -1
- package/Source/Core/TerrainQuantization.js +6 -1
- package/Source/Core/TilingScheme.js +100 -98
- package/Source/Core/TimeConstants.js +6 -1
- package/Source/Core/TimeStandard.js +6 -1
- package/Source/Core/TrackingReferenceFrame.js +6 -1
- package/Source/Core/Visibility.js +6 -1
- package/Source/Core/VulkanConstants.js +6 -1
- package/Source/Core/WebGLConstants.js +6 -1
- package/Source/Core/WebMercatorProjection.js +108 -109
- package/Source/Core/WebMercatorTilingScheme.js +246 -242
- package/Source/Core/WindingOrder.js +3 -1
- package/Source/Core/createColorRamp.js +37 -0
- package/Source/Core/globalTypes.js +25 -0
- package/Source/DataSources/StaticGroundGeometryPerMaterialBatch.js +1 -0
- package/Source/DataSources/StaticGroundPolylinePerMaterialBatch.js +1 -0
- package/Source/DataSources/StripeOrientation.js +6 -1
- package/Source/Renderer/BufferUsage.js +20 -9
- package/Source/Renderer/Context.js +2 -29
- package/Source/Renderer/DrawCommand.js +435 -403
- package/Source/Renderer/MipmapHint.js +5 -1
- package/Source/Renderer/Pass.js +10 -3
- package/Source/Renderer/PickId.js +44 -0
- package/Source/Renderer/PixelDatatype.js +3 -1
- package/Source/Renderer/RenderbufferFormat.js +5 -1
- package/Source/Renderer/ShaderDestination.js +4 -1
- package/Source/Renderer/TextureMagnificationFilter.js +3 -1
- package/Source/Renderer/TextureMinificationFilter.js +3 -1
- package/Source/Renderer/TextureWrap.js +5 -1
- package/Source/Renderer/createUniform.js +346 -239
- package/Source/Renderer/createUniformArray.js +494 -381
- package/Source/Scene/AlphaMode.js +5 -1
- package/Source/Scene/ArcGisBaseMapType.js +6 -1
- package/Source/Scene/ArcGisMapService.js +1 -1
- package/Source/Scene/AttributeType.js +3 -1
- package/Source/Scene/Axis.js +3 -1
- package/Source/Scene/BingMapsStyle.js +6 -1
- package/Source/Scene/BlendEquation.js +6 -1
- package/Source/Scene/BlendFunction.js +6 -1
- package/Source/Scene/BlendOption.js +6 -1
- package/Source/Scene/BlendingState.js +6 -1
- package/Source/Scene/BufferLoader.js +0 -2
- package/Source/Scene/BufferPoint.js +1 -0
- package/Source/Scene/BufferPointCollection.js +17 -1
- package/Source/Scene/BufferPolygon.js +3 -2
- package/Source/Scene/BufferPolygonCollection.js +13 -1
- package/Source/Scene/BufferPolyline.js +1 -0
- package/Source/Scene/BufferPolylineCollection.js +5 -1
- package/Source/Scene/BufferPrimitiveCollection.js +210 -43
- package/Source/Scene/CameraEventAggregator.js +30 -18
- package/Source/Scene/CameraEventType.js +6 -1
- package/Source/Scene/Cesium3DTile.js +54 -1
- package/Source/Scene/Cesium3DTileColorBlendMode.js +6 -1
- package/Source/Scene/Cesium3DTileContent.js +195 -254
- package/Source/Scene/Cesium3DTileContentFactory.js +10 -2
- package/Source/Scene/Cesium3DTileContentState.js +6 -1
- package/Source/Scene/Cesium3DTileContentType.js +3 -1
- package/Source/Scene/Cesium3DTileFeature.js +289 -306
- package/Source/Scene/Cesium3DTileOptimizationHint.js +6 -1
- package/Source/Scene/Cesium3DTilePass.js +5 -1
- package/Source/Scene/Cesium3DTilePointFeature.js +433 -511
- package/Source/Scene/Cesium3DTileRefine.js +6 -1
- package/Source/Scene/Cesium3DTileVectorFeature.js +586 -0
- package/Source/Scene/Cesium3DTileset.js +46 -6
- package/Source/Scene/ClassificationType.js +3 -1
- package/Source/Scene/CloudType.js +3 -1
- package/Source/Scene/ColorBlendMode.js +4 -1
- package/Source/Scene/Composite3DTileContent.js +254 -292
- package/Source/Scene/CullFace.js +6 -1
- package/Source/Scene/DepthFunction.js +6 -1
- package/Source/Scene/DynamicAtmosphereLightingType.js +3 -1
- package/Source/Scene/EdgeDisplayMode.js +50 -0
- package/Source/Scene/Empty3DTileContent.js +100 -132
- package/Source/Scene/EquirectangularPanorama.js +1 -0
- package/Source/Scene/ExpressionNodeType.js +6 -1
- package/Source/Scene/GaussianSplat3DTileContent.js +436 -478
- package/Source/Scene/GeoJsonPrimitive.js +874 -0
- package/Source/Scene/Geometry3DTileContent.js +151 -185
- package/Source/Scene/GltfBufferViewLoader.js +0 -2
- package/Source/Scene/GltfDracoLoader.js +0 -2
- package/Source/Scene/GltfImageLoader.js +0 -3
- package/Source/Scene/GltfIndexBufferLoader.js +0 -4
- package/Source/Scene/GltfJsonLoader.js +0 -2
- package/Source/Scene/GltfLoader.js +109 -5
- package/Source/Scene/GltfLoaderUtil.js +14 -0
- package/Source/Scene/GltfSpzLoader.js +0 -2
- package/Source/Scene/GltfStructuralMetadataLoader.js +0 -2
- package/Source/Scene/GltfTextureLoader.js +0 -2
- package/Source/Scene/GltfVertexBufferLoader.js +0 -4
- package/Source/Scene/HeightReference.js +5 -1
- package/Source/Scene/HorizontalOrigin.js +6 -1
- package/Source/Scene/ImageryProvider.js +1 -1
- package/Source/Scene/ImageryState.js +6 -1
- package/Source/Scene/Implicit3DTileContent.js +179 -214
- package/Source/Scene/ImplicitSubdivisionScheme.js +3 -1
- package/Source/Scene/InstanceAttributeSemantic.js +3 -1
- package/Source/Scene/IonWorldImageryStyle.js +6 -1
- package/Source/Scene/JobType.js +6 -1
- package/Source/Scene/LabelStyle.js +6 -1
- package/Source/Scene/MVTDataProvider.js +147 -0
- package/Source/Scene/MapMode2D.js +6 -1
- package/Source/Scene/MetadataComponentType.js +3 -1
- package/Source/Scene/MetadataSchemaLoader.js +0 -2
- package/Source/Scene/MetadataSemantic.js +6 -2
- package/Source/Scene/MetadataType.js +3 -1
- package/Source/Scene/Model/B3dmLoader.js +0 -3
- package/Source/Scene/Model/CustomShaderMode.js +3 -1
- package/Source/Scene/Model/CustomShaderTranslucencyMode.js +5 -1
- package/Source/Scene/Model/EdgeVisibilityPipelineStage.js +78 -337
- package/Source/Scene/Model/Extensions/Gpm/PpeSource.js +5 -1
- package/Source/Scene/Model/Extensions/Gpm/StorageType.js +5 -1
- package/Source/Scene/Model/GeoJsonLoader.js +0 -2
- package/Source/Scene/Model/I3dmLoader.js +0 -3
- package/Source/Scene/Model/InstancingPipelineStage.js +1 -1
- package/Source/Scene/Model/LightingModel.js +5 -1
- package/Source/Scene/Model/MaterialPipelineStage.js +184 -3
- package/Source/Scene/Model/Model.js +34 -0
- package/Source/Scene/Model/Model3DTileContent.js +424 -458
- package/Source/Scene/Model/ModelDrawCommand.js +31 -3
- package/Source/Scene/Model/ModelReader.js +474 -3
- package/Source/Scene/Model/ModelRuntimePrimitive.js +2 -1
- package/Source/Scene/Model/ModelType.js +3 -1
- package/Source/Scene/Model/ModelUtility.js +4 -0
- package/Source/Scene/Model/PntsLoader.js +4 -3
- package/Source/Scene/Model/StyleCommandsNeeded.js +3 -1
- package/Source/Scene/Model/UniformType.js +5 -1
- package/Source/Scene/Model/VaryingType.js +5 -1
- package/Source/Scene/Model/createVectorTileBuffersFromModelComponents.js +500 -139
- package/Source/Scene/Model/pickModel.js +94 -299
- package/Source/Scene/ModelAnimationLoop.js +6 -1
- package/Source/Scene/ModelAnimationState.js +6 -1
- package/Source/Scene/ModelComponents.js +47 -2
- package/Source/Scene/Multiple3DTileContent.js +291 -334
- package/Source/Scene/PrimitiveState.js +7 -1
- package/Source/Scene/QuadtreeOccluders.js +20 -15
- package/Source/Scene/QuadtreeTile.js +547 -541
- package/Source/Scene/QuadtreeTileLoadState.js +6 -1
- package/Source/Scene/QuadtreeTileProvider.js +159 -175
- package/Source/Scene/ResourceLoader.js +0 -1
- package/Source/Scene/ResourceLoaderState.js +7 -1
- package/Source/Scene/Scene.js +26 -0
- package/Source/Scene/SceneMode.js +4 -1
- package/Source/Scene/ShadowMode.js +3 -1
- package/Source/Scene/SkyBox.js +1 -1
- package/Source/Scene/SplitDirection.js +6 -1
- package/Source/Scene/StencilFunction.js +6 -1
- package/Source/Scene/StencilOperation.js +6 -1
- package/Source/Scene/TerrainState.js +7 -1
- package/Source/Scene/TileState.js +7 -1
- package/Source/Scene/Tileset3DTileContent.js +113 -146
- package/Source/Scene/Tonemapper.js +5 -1
- package/Source/Scene/UrlTemplate3DTilesDataProvider.js +499 -0
- package/Source/Scene/Vector3DTileContent.js +205 -234
- package/Source/Scene/VectorGltf3DTileContent.js +131 -61
- package/Source/Scene/VertexAttributeSemantic.js +3 -1
- package/Source/Scene/VerticalOrigin.js +6 -1
- package/Source/Scene/VoxelBoxShape.js +12 -6
- package/Source/Scene/VoxelContent.js +2 -0
- package/Source/Scene/VoxelCylinderShape.js +39 -38
- package/Source/Scene/VoxelEllipsoidShape.js +46 -96
- package/Source/Scene/VoxelMetadataOrder.js +6 -1
- package/Source/Scene/VoxelPrimitive.js +159 -175
- package/Source/Scene/VoxelProvider.js +64 -90
- package/Source/Scene/VoxelShapeType.js +3 -1
- package/Source/Scene/buildVectorGltfFromMVT.js +1059 -0
- package/Source/Scene/buildVoxelCustomShader.js +199 -0
- package/Source/Scene/decodeMVT.js +634 -0
- package/Source/Scene/renderBufferPointCollection.js +124 -127
- package/Source/Scene/renderBufferPolygonCollection.js +122 -122
- package/Source/Scene/renderBufferPolylineCollection.js +386 -238
- package/Source/Shaders/BufferPointMaterialFS.glsl +1 -0
- package/Source/Shaders/BufferPointMaterialFS.js +1 -0
- package/Source/Shaders/BufferPointMaterialVS.glsl +19 -9
- package/Source/Shaders/BufferPointMaterialVS.js +20 -10
- package/Source/Shaders/BufferPolygonMaterialVS.glsl +13 -4
- package/Source/Shaders/BufferPolygonMaterialVS.js +14 -5
- package/Source/Shaders/BufferPolylineMaterialVS.glsl +16 -2
- package/Source/Shaders/BufferPolylineMaterialVS.js +17 -3
- package/Source/Shaders/Builtin/Constants/passCesium3DTileEdgesDirect.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passCesium3DTileEdgesDirect.js +11 -0
- package/Source/Shaders/Builtin/Constants/passOverlay.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passOverlay.js +1 -1
- package/Source/Shaders/Builtin/CzmBuiltins.js +4 -0
- package/Source/Shaders/Builtin/Functions/computeTextureTransform.glsl +24 -0
- package/Source/Shaders/Builtin/Functions/computeTextureTransform.js +25 -0
- package/Source/Shaders/Model/ConstantLodStageFS.glsl +60 -0
- package/Source/Shaders/Model/ConstantLodStageFS.js +62 -0
- package/Source/Shaders/Model/ConstantLodStageVS.glsl +12 -0
- package/Source/Shaders/Model/ConstantLodStageVS.js +13 -0
- package/Source/Shaders/Model/EdgeVisibilityStageVS.glsl +0 -1
- package/Source/Shaders/Model/EdgeVisibilityStageVS.js +0 -1
- package/Source/Shaders/Model/MaterialStageFS.glsl +46 -20
- package/Source/Shaders/Model/MaterialStageFS.js +46 -20
- package/Source/Shaders/Voxels/convertLocalToBoxUv.glsl +0 -1
- package/Source/Shaders/Voxels/convertLocalToBoxUv.js +0 -1
- package/Source/Shaders/Voxels/convertLocalToCylinderUv.glsl +7 -9
- package/Source/Shaders/Voxels/convertLocalToCylinderUv.js +7 -9
- package/Source/Shaders/Voxels/convertLocalToEllipsoidUv.glsl +7 -17
- package/Source/Shaders/Voxels/convertLocalToEllipsoidUv.js +7 -17
- package/Source/Widget/CesiumWidget.js +11 -4
- package/index.d.ts +595 -343
- package/index.js +392 -378
- package/package.json +3 -3
- package/Build/Workers/chunk-DVB56LG7.js +0 -114
- package/Build/Workers/chunk-HKUES6UG.js +0 -2357
- package/Build/Workers/chunk-HRHRYFHS.js +0 -940
- package/Build/Workers/chunk-KLPGTXS3.js +0 -642
- package/Build/Workers/chunk-ZBZRTRJB.js +0 -1829
|
@@ -2,9 +2,13 @@ import defined from "../../Core/defined.js";
|
|
|
2
2
|
import Cartesian3 from "../../Core/Cartesian3.js";
|
|
3
3
|
import Cartesian4 from "../../Core/Cartesian4.js";
|
|
4
4
|
import Matrix3 from "../../Core/Matrix3.js";
|
|
5
|
+
import Matrix4 from "../../Core/Matrix4.js";
|
|
6
|
+
import Transforms from "../../Core/Transforms.js";
|
|
5
7
|
import ShaderDestination from "../../Renderer/ShaderDestination.js";
|
|
6
8
|
import Pass from "../../Renderer/Pass.js";
|
|
7
9
|
import MaterialStageFS from "../../Shaders/Model/MaterialStageFS.js";
|
|
10
|
+
import ConstantLodStageVS from "../../Shaders/Model/ConstantLodStageVS.js";
|
|
11
|
+
import ConstantLodStageFS from "../../Shaders/Model/ConstantLodStageFS.js";
|
|
8
12
|
import AlphaMode from "../AlphaMode.js";
|
|
9
13
|
import ModelComponents from "../ModelComponents.js";
|
|
10
14
|
import VertexAttributeSemantic from "../VertexAttributeSemantic.js";
|
|
@@ -61,6 +65,25 @@ MaterialPipelineStage.process = function (
|
|
|
61
65
|
const material = primitive.material;
|
|
62
66
|
const { model, uniformMap, shaderBuilder } = renderResources;
|
|
63
67
|
|
|
68
|
+
if (!defined(uniformMap.u_constantLodDistance)) {
|
|
69
|
+
uniformMap.u_constantLodDistance = function () {
|
|
70
|
+
const boundingSphere = model.boundingSphere;
|
|
71
|
+
const camera = frameState.camera;
|
|
72
|
+
|
|
73
|
+
if (defined(boundingSphere) && defined(camera)) {
|
|
74
|
+
const distance = Cartesian3.distance(
|
|
75
|
+
camera.positionWC,
|
|
76
|
+
boundingSphere.center,
|
|
77
|
+
);
|
|
78
|
+
// Clamp to a minimum small distance to avoid calling log2(0) in shader
|
|
79
|
+
return Math.max(distance, 0.1);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
// Return a fallback distance before camera/bounding sphere are available
|
|
83
|
+
return 1.0;
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
|
|
64
87
|
// Classification models only use position and feature ID attributes,
|
|
65
88
|
// so textures should be disabled to avoid compile errors.
|
|
66
89
|
const hasClassification = defined(model.classificationType);
|
|
@@ -78,6 +101,7 @@ MaterialPipelineStage.process = function (
|
|
|
78
101
|
defaultNormalTexture,
|
|
79
102
|
defaultEmissiveTexture,
|
|
80
103
|
disableTextures,
|
|
104
|
+
renderResources,
|
|
81
105
|
);
|
|
82
106
|
|
|
83
107
|
if (defined(material.specularGlossiness)) {
|
|
@@ -87,6 +111,7 @@ MaterialPipelineStage.process = function (
|
|
|
87
111
|
shaderBuilder,
|
|
88
112
|
defaultTexture,
|
|
89
113
|
disableTextures,
|
|
114
|
+
renderResources,
|
|
90
115
|
);
|
|
91
116
|
} else {
|
|
92
117
|
if (
|
|
@@ -131,6 +156,7 @@ MaterialPipelineStage.process = function (
|
|
|
131
156
|
shaderBuilder,
|
|
132
157
|
defaultTexture,
|
|
133
158
|
disableTextures,
|
|
159
|
+
renderResources,
|
|
134
160
|
);
|
|
135
161
|
}
|
|
136
162
|
|
|
@@ -206,6 +232,112 @@ MaterialPipelineStage.process = function (
|
|
|
206
232
|
}
|
|
207
233
|
};
|
|
208
234
|
|
|
235
|
+
/**
|
|
236
|
+
* Process constant LOD extension for a texture
|
|
237
|
+
*
|
|
238
|
+
* @param {ShaderBuilder} shaderBuilder The shader builder to modify
|
|
239
|
+
* @param {Object<string, Function>} uniformMap The uniform map to modify.
|
|
240
|
+
* @param {ModelComponents.TextureReader} textureReader The texture to add to the shader
|
|
241
|
+
* @param {string} uniformName The name of the sampler uniform
|
|
242
|
+
* @param {string} defineName The name of the texture for use in the defines
|
|
243
|
+
* @param {PrimitiveRenderResources|undefined} renderResources The render resources
|
|
244
|
+
* @private
|
|
245
|
+
*/
|
|
246
|
+
function processConstantLod(
|
|
247
|
+
shaderBuilder,
|
|
248
|
+
uniformMap,
|
|
249
|
+
textureReader,
|
|
250
|
+
uniformName,
|
|
251
|
+
defineName,
|
|
252
|
+
renderResources,
|
|
253
|
+
) {
|
|
254
|
+
const constantLod = textureReader.constantLod;
|
|
255
|
+
|
|
256
|
+
if (!defined(constantLod)) {
|
|
257
|
+
return;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
// renderResources is required for constant LOD to transform from ECEF/world coordinates to ENU
|
|
261
|
+
if (!defined(renderResources)) {
|
|
262
|
+
return;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
const constantLodDefine = `HAS_${defineName}_CONSTANT_LOD`;
|
|
266
|
+
shaderBuilder.addDefine(constantLodDefine, undefined, ShaderDestination.BOTH);
|
|
267
|
+
|
|
268
|
+
if (!defined(uniformMap.u_constantLodOffset)) {
|
|
269
|
+
shaderBuilder.addDefine(
|
|
270
|
+
"HAS_CONSTANT_LOD",
|
|
271
|
+
undefined,
|
|
272
|
+
ShaderDestination.BOTH,
|
|
273
|
+
);
|
|
274
|
+
|
|
275
|
+
shaderBuilder.addVarying("vec3", "v_constantLodUvCustom");
|
|
276
|
+
|
|
277
|
+
shaderBuilder.addUniform(
|
|
278
|
+
"vec2",
|
|
279
|
+
"u_constantLodOffset",
|
|
280
|
+
ShaderDestination.VERTEX,
|
|
281
|
+
);
|
|
282
|
+
|
|
283
|
+
shaderBuilder.addUniform(
|
|
284
|
+
"float",
|
|
285
|
+
"u_constantLodDistance",
|
|
286
|
+
ShaderDestination.VERTEX,
|
|
287
|
+
);
|
|
288
|
+
|
|
289
|
+
shaderBuilder.addUniform(
|
|
290
|
+
"mat4",
|
|
291
|
+
"u_constantLodWorldToEnu",
|
|
292
|
+
ShaderDestination.VERTEX,
|
|
293
|
+
);
|
|
294
|
+
|
|
295
|
+
shaderBuilder.addFragmentLines(ConstantLodStageFS);
|
|
296
|
+
|
|
297
|
+
const constantLodLines = ConstantLodStageVS.split("\n").filter((line) => {
|
|
298
|
+
return !line.trim().startsWith("//") || line.includes("#");
|
|
299
|
+
});
|
|
300
|
+
shaderBuilder.addFunctionLines("setDynamicVaryingsVS", constantLodLines);
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
const paramsUniformName = `${uniformName}ConstantLodParams`;
|
|
304
|
+
shaderBuilder.addUniform(
|
|
305
|
+
"vec3",
|
|
306
|
+
paramsUniformName,
|
|
307
|
+
ShaderDestination.FRAGMENT,
|
|
308
|
+
);
|
|
309
|
+
|
|
310
|
+
uniformMap[paramsUniformName] = function () {
|
|
311
|
+
return new Cartesian3(
|
|
312
|
+
constantLod.minClampDistance,
|
|
313
|
+
constantLod.maxClampDistance,
|
|
314
|
+
constantLod.repetitions,
|
|
315
|
+
);
|
|
316
|
+
};
|
|
317
|
+
|
|
318
|
+
if (!defined(uniformMap.u_constantLodOffset)) {
|
|
319
|
+
uniformMap.u_constantLodOffset = function () {
|
|
320
|
+
return constantLod.offset;
|
|
321
|
+
};
|
|
322
|
+
|
|
323
|
+
const enuMatrixInverse = Matrix4.clone(Matrix4.IDENTITY);
|
|
324
|
+
let matrixComputed = false;
|
|
325
|
+
|
|
326
|
+
uniformMap.u_constantLodWorldToEnu = function () {
|
|
327
|
+
if (!matrixComputed) {
|
|
328
|
+
const boundingSphere = renderResources.model.boundingSphere;
|
|
329
|
+
if (defined(boundingSphere)) {
|
|
330
|
+
const modelCenter = boundingSphere.center;
|
|
331
|
+
const enuFrame = Transforms.eastNorthUpToFixedFrame(modelCenter);
|
|
332
|
+
Matrix4.inverse(enuFrame, enuMatrixInverse);
|
|
333
|
+
matrixComputed = true;
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
return matrixComputed ? enuMatrixInverse : Matrix4.IDENTITY;
|
|
337
|
+
};
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
|
|
209
341
|
/**
|
|
210
342
|
* Add uniforms and defines for the BENTLEY_materials_line_style extension.
|
|
211
343
|
*
|
|
@@ -426,6 +558,8 @@ function processTextureScale(
|
|
|
426
558
|
* @param {ModelComponents.TextureReader} textureReader The texture to add to the shader
|
|
427
559
|
* @param {string} uniformName The name of the sampler uniform such as <code>u_baseColorTexture</code>
|
|
428
560
|
* @param {string} defineName The name of the texture for use in the defines, minus any prefix or suffix. For example, "BASE_COLOR" or "EMISSIVE"
|
|
561
|
+
* @param {Texture} defaultTexture The default texture to use as a fallback if the texture is not yet loaded
|
|
562
|
+
* @param {PrimitiveRenderResources|undefined} renderResources The render resources
|
|
429
563
|
*
|
|
430
564
|
* @private
|
|
431
565
|
*/
|
|
@@ -436,6 +570,7 @@ function processTexture(
|
|
|
436
570
|
uniformName,
|
|
437
571
|
defineName,
|
|
438
572
|
defaultTexture,
|
|
573
|
+
renderResources,
|
|
439
574
|
) {
|
|
440
575
|
// Add a uniform for the texture itself
|
|
441
576
|
shaderBuilder.addUniform(
|
|
@@ -487,6 +622,16 @@ function processTexture(
|
|
|
487
622
|
defineName,
|
|
488
623
|
);
|
|
489
624
|
}
|
|
625
|
+
|
|
626
|
+
// Process constant LOD extension if present
|
|
627
|
+
processConstantLod(
|
|
628
|
+
shaderBuilder,
|
|
629
|
+
uniformMap,
|
|
630
|
+
textureReader,
|
|
631
|
+
uniformName,
|
|
632
|
+
defineName,
|
|
633
|
+
renderResources,
|
|
634
|
+
);
|
|
490
635
|
}
|
|
491
636
|
|
|
492
637
|
function processMaterialUniforms(
|
|
@@ -497,6 +642,7 @@ function processMaterialUniforms(
|
|
|
497
642
|
defaultNormalTexture,
|
|
498
643
|
defaultEmissiveTexture,
|
|
499
644
|
disableTextures,
|
|
645
|
+
renderResources,
|
|
500
646
|
) {
|
|
501
647
|
const { emissiveFactor, emissiveTexture, normalTexture, occlusionTexture } =
|
|
502
648
|
material;
|
|
@@ -531,14 +677,43 @@ function processMaterialUniforms(
|
|
|
531
677
|
}
|
|
532
678
|
}
|
|
533
679
|
|
|
680
|
+
// Extract base color constant LOD to apply to normal texture
|
|
681
|
+
let baseColorConstantLod;
|
|
682
|
+
if (
|
|
683
|
+
defined(material.metallicRoughness) &&
|
|
684
|
+
defined(material.metallicRoughness.baseColorTexture) &&
|
|
685
|
+
defined(material.metallicRoughness.baseColorTexture.constantLod)
|
|
686
|
+
) {
|
|
687
|
+
baseColorConstantLod =
|
|
688
|
+
material.metallicRoughness.baseColorTexture.constantLod;
|
|
689
|
+
} else if (
|
|
690
|
+
defined(material.specularGlossiness) &&
|
|
691
|
+
defined(material.specularGlossiness.diffuseTexture) &&
|
|
692
|
+
defined(material.specularGlossiness.diffuseTexture.constantLod)
|
|
693
|
+
) {
|
|
694
|
+
baseColorConstantLod =
|
|
695
|
+
material.specularGlossiness.diffuseTexture.constantLod;
|
|
696
|
+
}
|
|
697
|
+
|
|
534
698
|
if (defined(normalTexture) && !disableTextures) {
|
|
699
|
+
// If normal texture AND base color have constant LOD, use base color's constant LOD properties to keep textures in sync
|
|
700
|
+
let normalTextureToProcess = normalTexture;
|
|
701
|
+
if (defined(normalTexture.constantLod) && defined(baseColorConstantLod)) {
|
|
702
|
+
normalTextureToProcess = Object.create(
|
|
703
|
+
Object.getPrototypeOf(normalTexture),
|
|
704
|
+
);
|
|
705
|
+
Object.assign(normalTextureToProcess, normalTexture);
|
|
706
|
+
normalTextureToProcess.constantLod = baseColorConstantLod;
|
|
707
|
+
}
|
|
708
|
+
|
|
535
709
|
processTexture(
|
|
536
710
|
shaderBuilder,
|
|
537
711
|
uniformMap,
|
|
538
|
-
|
|
712
|
+
normalTextureToProcess,
|
|
539
713
|
"u_normalTexture",
|
|
540
714
|
"NORMAL",
|
|
541
715
|
defaultNormalTexture,
|
|
716
|
+
renderResources,
|
|
542
717
|
);
|
|
543
718
|
}
|
|
544
719
|
|
|
@@ -560,8 +735,9 @@ function processMaterialUniforms(
|
|
|
560
735
|
* @param {ModelComponents.SpecularGlossiness} specularGlossiness
|
|
561
736
|
* @param {Object<string, Function>} uniformMap The uniform map to modify.
|
|
562
737
|
* @param {ShaderBuilder} shaderBuilder
|
|
563
|
-
* @param {Texture} defaultTexture
|
|
738
|
+
* @param {Texture} defaultTexture The default texture to use as a fallback if the texture is not yet loaded
|
|
564
739
|
* @param {boolean} disableTextures
|
|
740
|
+
* @param {PrimitiveRenderResources|undefined} renderResources The render resources for the primitive
|
|
565
741
|
* @private
|
|
566
742
|
*/
|
|
567
743
|
function processSpecularGlossinessUniforms(
|
|
@@ -570,6 +746,7 @@ function processSpecularGlossinessUniforms(
|
|
|
570
746
|
shaderBuilder,
|
|
571
747
|
defaultTexture,
|
|
572
748
|
disableTextures,
|
|
749
|
+
renderResources,
|
|
573
750
|
) {
|
|
574
751
|
const {
|
|
575
752
|
diffuseTexture,
|
|
@@ -593,6 +770,7 @@ function processSpecularGlossinessUniforms(
|
|
|
593
770
|
"u_diffuseTexture",
|
|
594
771
|
"DIFFUSE",
|
|
595
772
|
defaultTexture,
|
|
773
|
+
renderResources,
|
|
596
774
|
);
|
|
597
775
|
}
|
|
598
776
|
|
|
@@ -925,8 +1103,9 @@ function processClearcoatUniforms(
|
|
|
925
1103
|
* @param {ModelComponents.MetallicRoughness} metallicRoughness
|
|
926
1104
|
* @param {Object<string, Function>} uniformMap The uniform map to modify.
|
|
927
1105
|
* @param {ShaderBuilder} shaderBuilder
|
|
928
|
-
* @param {Texture} defaultTexture
|
|
1106
|
+
* @param {Texture} defaultTexture The default texture to use as a fallback if the texture is not yet loaded
|
|
929
1107
|
* @param {boolean} disableTextures
|
|
1108
|
+
* @param {PrimitiveRenderResources|undefined} renderResources The render resources for the primitive
|
|
930
1109
|
* @private
|
|
931
1110
|
*/
|
|
932
1111
|
function processMetallicRoughnessUniforms(
|
|
@@ -935,6 +1114,7 @@ function processMetallicRoughnessUniforms(
|
|
|
935
1114
|
shaderBuilder,
|
|
936
1115
|
defaultTexture,
|
|
937
1116
|
disableTextures,
|
|
1117
|
+
renderResources,
|
|
938
1118
|
) {
|
|
939
1119
|
shaderBuilder.addDefine(
|
|
940
1120
|
"USE_METALLIC_ROUGHNESS",
|
|
@@ -951,6 +1131,7 @@ function processMetallicRoughnessUniforms(
|
|
|
951
1131
|
"u_baseColorTexture",
|
|
952
1132
|
"BASE_COLOR",
|
|
953
1133
|
defaultTexture,
|
|
1134
|
+
renderResources,
|
|
954
1135
|
);
|
|
955
1136
|
}
|
|
956
1137
|
|
|
@@ -20,6 +20,7 @@ import ClippingPlaneCollection from "../ClippingPlaneCollection.js";
|
|
|
20
20
|
import ClippingPolygonCollection from "../ClippingPolygonCollection.js";
|
|
21
21
|
import DynamicEnvironmentMapManager from "../DynamicEnvironmentMapManager.js";
|
|
22
22
|
import ColorBlendMode from "../ColorBlendMode.js";
|
|
23
|
+
import EdgeDisplayMode from "../EdgeDisplayMode.js";
|
|
23
24
|
import GltfLoader from "../GltfLoader.js";
|
|
24
25
|
import HeightReference, {
|
|
25
26
|
isHeightReferenceRelative,
|
|
@@ -75,6 +76,11 @@ import ModelImagery from "./ModelImagery.js";
|
|
|
75
76
|
* {@link https://github.com/KhronosGroup/glTF/pull/2514|EXT_mesh_primitive_restart}
|
|
76
77
|
* </li>
|
|
77
78
|
* <li>
|
|
79
|
+
* {@link https://github.com/KhronosGroup/glTF/pull/2479|EXT_mesh_primitive_edge_visibility}
|
|
80
|
+
* (edges are hidden by default; set {@link EdgeDisplayMode} via
|
|
81
|
+
* {@link Model#edgeDisplayMode} or {@link Cesium3DTileset#edgeDisplayMode} to display them)
|
|
82
|
+
* </li>
|
|
83
|
+
* <li>
|
|
78
84
|
* {@link https://github.com/KhronosGroup/glTF/tree/main/extensions/2.0/Vendor/EXT_meshopt_compression|EXT_meshopt_compression}
|
|
79
85
|
* </li>
|
|
80
86
|
* <li>
|
|
@@ -151,6 +157,7 @@ import ModelImagery from "./ModelImagery.js";
|
|
|
151
157
|
* @privateParam {Color} [options.color] A color that blends with the model's rendered color.
|
|
152
158
|
* @privateParam {ColorBlendMode} [options.colorBlendMode=ColorBlendMode.HIGHLIGHT] Defines how the color blends with the model.
|
|
153
159
|
* @privateParam {number} [options.colorBlendAmount=0.5] Value used to determine the color strength when the <code>colorBlendMode</code> is <code>MIX</code>. A value of 0.0 results in the model's rendered color while a value of 1.0 results in a solid color, with any value in-between resulting in a mix of the two.
|
|
160
|
+
* @privateParam {EdgeDisplayMode} [options.edgeDisplayMode=EdgeDisplayMode.SURFACES_ONLY] Controls how edges from the {@link https://github.com/KhronosGroup/glTF/pull/2479|EXT_mesh_primitive_edge_visibility} extension are rendered relative to surface geometry.
|
|
154
161
|
* @privateParam {Color} [options.silhouetteColor=Color.RED] The silhouette color. If more than 256 models have silhouettes enabled, there is a small chance that overlapping models will have minor artifacts.
|
|
155
162
|
* @privateParam {number} [options.silhouetteSize=0.0] The size of the silhouette in pixels.
|
|
156
163
|
* @privateParam {boolean} [options.enableShowOutline=true] Whether to enable outlines for models using the {@link https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Vendor/CESIUM_primitive_outline|CESIUM_primitive_outline} extension. This can be set to false to avoid the additional processing of geometry at load time. When false, the showOutlines and outlineColor options are ignored.
|
|
@@ -417,6 +424,8 @@ function Model(options) {
|
|
|
417
424
|
this._enableDebugWireframe = options.enableDebugWireframe ?? false;
|
|
418
425
|
this._enableShowOutline = options.enableShowOutline ?? true;
|
|
419
426
|
this._debugWireframe = options.debugWireframe ?? false;
|
|
427
|
+
this._edgeDisplayMode =
|
|
428
|
+
options.edgeDisplayMode ?? EdgeDisplayMode.SURFACES_ONLY;
|
|
420
429
|
|
|
421
430
|
// Warning for improper setup of debug wireframe
|
|
422
431
|
if (
|
|
@@ -1204,6 +1213,29 @@ Object.defineProperties(Model.prototype, {
|
|
|
1204
1213
|
},
|
|
1205
1214
|
},
|
|
1206
1215
|
|
|
1216
|
+
/**
|
|
1217
|
+
* Controls how edges from the
|
|
1218
|
+
* {@link https://github.com/KhronosGroup/glTF/pull/2479|EXT_mesh_primitive_edge_visibility}
|
|
1219
|
+
* glTF extension are rendered relative to surface geometry. Primitives that
|
|
1220
|
+
* do not declare the extension are unaffected by this setting.
|
|
1221
|
+
*
|
|
1222
|
+
* @memberof Model.prototype
|
|
1223
|
+
*
|
|
1224
|
+
* @type {EdgeDisplayMode}
|
|
1225
|
+
*
|
|
1226
|
+
* @default EdgeDisplayMode.SURFACES_ONLY
|
|
1227
|
+
*
|
|
1228
|
+
* @experimental This feature is using part of the glTF spec that is not yet final and is subject to change without Cesium's standard deprecation policy.
|
|
1229
|
+
*/
|
|
1230
|
+
edgeDisplayMode: {
|
|
1231
|
+
get: function () {
|
|
1232
|
+
return this._edgeDisplayMode;
|
|
1233
|
+
},
|
|
1234
|
+
set: function (value) {
|
|
1235
|
+
this._edgeDisplayMode = value;
|
|
1236
|
+
},
|
|
1237
|
+
},
|
|
1238
|
+
|
|
1207
1239
|
/**
|
|
1208
1240
|
* Whether or not to render the model.
|
|
1209
1241
|
*
|
|
@@ -2941,6 +2973,7 @@ Model.prototype.destroyModelResources = function () {
|
|
|
2941
2973
|
* @param {Color} [options.color] A color that blends with the model's rendered color.
|
|
2942
2974
|
* @param {ColorBlendMode} [options.colorBlendMode=ColorBlendMode.HIGHLIGHT] Defines how the color blends with the model.
|
|
2943
2975
|
* @param {number} [options.colorBlendAmount=0.5] Value used to determine the color strength when the <code>colorBlendMode</code> is <code>MIX</code>. A value of 0.0 results in the model's rendered color while a value of 1.0 results in a solid color, with any value in-between resulting in a mix of the two.
|
|
2976
|
+
* @param {EdgeDisplayMode} [options.edgeDisplayMode=EdgeDisplayMode.SURFACES_ONLY] Controls how edges from the {@link https://github.com/KhronosGroup/glTF/pull/2479|EXT_mesh_primitive_edge_visibility} extension are rendered relative to surface geometry.
|
|
2944
2977
|
* @param {Color} [options.silhouetteColor=Color.RED] The silhouette color. If more than 256 models have silhouettes enabled, there is a small chance that overlapping models will have minor artifacts.
|
|
2945
2978
|
* @param {number} [options.silhouetteSize=0.0] The size of the silhouette in pixels.
|
|
2946
2979
|
* @param {boolean} [options.enableShowOutline=true] Whether to enable outlines for models using the {@link https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Vendor/CESIUM_primitive_outline|CESIUM_primitive_outline} extension. This can be set false to avoid post-processing geometry at load time. When false, the showOutlines and outlineColor options are ignored.
|
|
@@ -3307,6 +3340,7 @@ function makeModelOptions(loader, modelType, options) {
|
|
|
3307
3340
|
color: options.color,
|
|
3308
3341
|
colorBlendAmount: options.colorBlendAmount,
|
|
3309
3342
|
colorBlendMode: options.colorBlendMode,
|
|
3343
|
+
edgeDisplayMode: options.edgeDisplayMode,
|
|
3310
3344
|
silhouetteColor: options.silhouetteColor,
|
|
3311
3345
|
silhouetteSize: options.silhouetteSize,
|
|
3312
3346
|
enableShowOutline: options.enableShowOutline,
|