Cesium v1.57 Release Notes

Release Date: 2019-05-01 // about 5 years ago
  • ➕ Additions :tada:
    • 👌 Improved 3D Tiles streaming performance, resulting in ~67% camera tour load time reduction, ~44% camera tour load count reduction. And for general camera movement, ~20% load time reduction with ~27% tile load count reduction. Tile load priority changed to focus on loading tiles in the center of the screen first. Added the following tileset optimizations, which unless stated otherwise are enabled by default. #7774
      • Added Cesium3DTileset.cullRequestsWhileMoving option to ignore requests for tiles that will likely be out-of-view due to the camera's movement when they come back from the server.
      • Added Cesium3DTileset.cullRequestsWhileMovingMultiplier option to act as a multiplier when used in culling requests while moving. Larger is more aggressive culling, smaller less aggressive culling.
      • Added Cesium3DTileset.preloadFlightDestinations option to preload tiles at the camera's flight destination while the camera is in flight.
      • Added Cesium3DTileset.preferLeaves option to prefer loading of leaves. Good for additive refinement point clouds. Set to false by default.
      • Added Cesium3DTileset.progressiveResolutionHeightFraction option to load tiles at a smaller resolution first. This can help get a quick layer of tiles down while full resolution tiles continue to load.
      • Added Cesium3DTileset.foveatedScreenSpaceError option to prioritize loading tiles in the center of the screen.
      • Added Cesium3DTileset.foveatedConeSize option to control the cone size that determines which tiles are deferred for loading. Tiles outside the cone are potentially deferred.
      • Added Cesium3DTileset.foveatedMinimumScreenSpaceErrorRelaxation option to control the starting screen space error relaxation for tiles outside the foveated cone.
      • Added Cesium3DTileset.foveatedInterpolationCallback option to control how screen space error threshold is interpolated for tiles outside the foveated cone.
      • Added Cesium3DTileset.foveatedTimeDelay option to control how long in seconds to wait after the camera stops moving before deferred tiles start loading in.
    • ➕ Added new parameter to PolylineGlowMaterial called taperPower, that works similar to the existing glowPower parameter, to taper the back of the line away. #7626
    • ➕ Added Cesium3DTileset.preloadWhenHidden tileset option to preload tiles when tileset.show is false. Loads tiles as if the tileset is visible but does not render them. #7774
    • Added support for the KHR_texture_transform glTF extension. #7549
    • ➕ Added functions to remove samples from SampledProperty and SampledPositionProperty. #7723
    • ➕ Added support for color-to-alpha with a threshold on imagery layers. #7727
    • ➕ Add CZML processing for heightReference and extrudedHeightReference for geoemtry types that support it.
    • 📚 CesiumMath.toSNorm documentation changed to reflect the function's implementation. #7774
    • ➕ Added CesiumMath.normalize to convert a scalar value in an arbitrary range to a scalar in the range [0.0, 1.0]. #7774
    🛠 Fixes :wrench:
    • 🛠 Fixed an error when loading the same glTF model in two separate viewers. #7688
    • 🛠 Fixed an error where clampToHeightMostDetailed or sampleHeightMostDetailed would crash if entities were created when the promise resolved. #7690
    • 🛠 Fixed an issue with compositing merged entity availability. #7717
    • 🛠 Fixed an error where many imagery layers within a single tile would cause parts of the tile to render as black on some platforms. #7649
    • 🛠 Fixed a bug that could cause terrain with a single, global root tile (e.g. that uses WebMercatorTilingScheme) to be culled unexpectedly in some views. #7702
    • 🛠 Fixed a problem where instanced 3D models were incorrectly lit when using physically based materials. #7775
    • 🛠 Fixed a bug where glTF models with certain blend modes were rendered incorrectly in browsers that support ImageBitmap. #7795