All notable changes to deck.gl will be documented in this file.
Official releases are documented first. Beta releases are listed towards the end of this document.
For details see What's New
- Added line width support to the choropleth layer.
- Layer.calculateInstancePickingColors now gets correct numInstances argument.
- Bumps luma.gl to include Linux fix.
- Move glslify to "dependencies" in package.json
- Fix bool uniform that webgl in certain environment handles it differently
- Fix issue of mercatorEnabled not working on Linux
- Fix issue where 0 opacity is interpreted as default opacity
- Fix issue with printing of layerName in debug messages crashes
- Fixed picking for the choropleth layer
- Added deckgl-overlay canvas ID and customize style support
- Fix document / add customize style support to the canvas (@contra)
- Added per point radius support for the scatterplot-layer
- Fixed primitive distortion bug for the scatterplot and hexagon-layer
- Added non-LatLng coordinate support for
- arc-layer
- choropleth-layer
- line-layer
- scatterplot-layer
- Added line-layer support
- Added per point color support for the scatterplot-layer
- Performance improvement
- Added perspective mode, 3D camera support
- Added unit tests
- Tons of refactoring and performance improvement
- Added precompile support
- Added data deep comparison support
- Added better uniform error message support
- Changed to use the new Luma.gl API
- Moved babel-related libraries from devDependence to dependency
- Changed default blending function (ZERO -> ONE_MINUS_SRC_ALPHA)
- Bug in getNumberInstances
- Retina display support
- Performance refactoring
- Switched the underlying rendering framework to luma.gl
- Fixed picking on retina/regular display
- Initial commit of the open-source version of deck.gl
- Support layerIndex uniform to solve z-fighting
- gl_FragDepth extension to fix Voronoi Layer (#186)
- Remove Scatterplot64(Meters) Layer for now (#188)
- FIX: Made Viewport.getUniforms() overridable and more debuggable
- FIX: METERS mode high precision z coordinate restored
- FIX: METERS mode high precision restored
- REMOVED unfinished GeoJson layer
- FIX: gl.viewport only called when view size changes
- FIX: Uniforms arg on Layer.draw()
- FIX to ChoroplethLayer64 colors
- FIX: METERS MODE
- Viewport now imported from viewport-mercator-project
- Dependency cleanup - several no longer needed dependencies removed
- Doc now serves locally from relative directories
- BREAKING: Removed pickInfo life cycle method - can be handled by pick
- FEATURE: Add
onLayerClick
andonLayerHover
methods to deck.gl wrapper. - FIX: Restore multilayer picking. Fixes #136.
- PERF: Enable Uint8Array color attributes
- Layer.instancePickingColors and Scatterplot.instanceColors now Uint8Arrays
- FIX: Scatterplot lineWidth warning
- FIX: context.viewport = null in draw
- FIX: opacity prop.
- FEATURE: Enables prop diff tracing (deck.log.priority = 1)
- PERF: Defeat spurious redraws
- FIX: compareProps and updateTriggers fixes
- PERF: reduce unnecessary updates
- Doc updates
- FIX: ArcLayer flickering last segments
- FIX: Scatterplot Layer exception
- FIX: Layer lifecycle - initialization/update of sublayers
- Doc update of Layers
- BREAKING CHANGE: Picking API final version. Fixes #115. Fixes #116.
- FIX: Ignore null layers
- FIX: Warns once instead of throws on deprecated props.
- FIX: Pinned babel-plugin-glslify version to avoid broken release
- Remove broken layers (HexagonLayer and PointCloudLayer).
- npm publish failed, no dist
- FEATURE: line width now takes device pixel ratio into account
- FEATURE: New life cycle methods, old methods deprecated
- FIX: Fix for context.viewport initialization order
- FIX:
DeckGL
component now cancels animation loop on unmount. - BREAKING: Removed
blending
prop from react components - FIX: ScreenGridLayer
- FEATURE: ScreenGridLayer now have accessors (getPosition, getWeight) and custom color ramps (minColor, maxColor)
- FEATURE: Adds drawOutline option to ScatterplotLayer.
- FIX: update context.viewport issue #128
- BREAKING: deepCompare prop changed to dataComparator. lodash.isequal dependency removed.
- FIX: Picking in most layers
- FIX: Initialization of sublayers
- Exports more symbols from lib
- 64 bit ExtrudedChoroplethLayer
- 64 bit layers in place
- GLSL library alignement 64 bit projections
- FEATURE:
Layer.pick
lifecycle method - Let's layers take control of picking - FEATURE: Support for Composite Layers
- FEATURE: new GeoJsonLayer - Initial composite layer, only Polygons for now.
- BREAKING: Introducing
context
that is shared between layers. gl and viewport moved from state to context. This implies that apps no longer need to pass {lng,lat,zoom,pitch,bearing} to each layer, only to theDeckGL
react component. - BREAKING: GridLayer renamed to ScreenGridLayer
- BREAKING: All layers now use
assembleShaders
- BREAKING: GLSL
project
package - shader functions renamed to haveproject
prefix, in line with conventions for new shader package system. - MISC: Documentation updates.
- MISC: WebGLRenderer/DeckGl react component cleanup, removed unusued methods.
- FIX: Perspective projection matrix "far plane" now covers negative Z coords
- FEATURE: Improved precision trigonometry library for Intel GPUs
- FEATURE: ChoroplethLayer64
- FEATURE: Experimental "Cone Based" VoronoiLayer
- CHANGE: shaderAssembler system reorganization
- FIX: Now takes layer props into account when generating projection uniforms
- DOCUMENTATION: Article updates
- FIX: Fix broken shader export in beta19
- BREAKING - New GLSL projection methods and assembleShader function. All layers updated.
- FIX - ArcLayer64 flickering fixed by high precision workaround.
- BREAKING: No longer use Camera/Scene to render. Enabler for issue #5.
- BREAKING: Sample layers now available through `import 'deck.gl/samples';
- FEATURE: FP64 layers now exported by default import 'deck.gl'
- BREAKING: DeckGLOverlay renamed to DeckGL:
import DeckGL from 'deck.gl/react';
- FIX: GridLayer
- FEATURE: ChoroplethLayer now renders MultiPolygons and Polygons with holes
- FEATURE: New GLSL library: 64bit emulated floating point
- FEATURE: New layer: ScatterplotLayer64: Sample 64-bit, high precision layer
- FEATUREY: ArcLayer can now specify separate start end end color for each arc.
- FIX: Add high precision version of
tan
as Intel GPU workaround. - INTERNAL: eslint now uses stronger rules. Fix new eslint warnings.
- Breaking change - rename
disableMercatorProject
prop tomercatorEnabled
- Add experimental layers folder
- Add separate import files for experimental layers and viewport import {PointCloudLayer, ...} from 'deck.gl/experimental' import Viewport from 'deck.gl/viewport'
- Add test cases for top-level exports
- Code reorganization
- Revert to 2-series luma.gl (no longer need beta release)
- Viewport improvements
- Breaking Change: Standardize parameters in layers to always expect arrays.
- Remove separate attribute updater definitions to simplify layer subclass creation