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.
- Bug fix for picking not returning x, y coordinates (#220)
- Performance optimization: prevent redundant data calculation (#222)
- Bug fixes for ScatterplotLayer not being updated with new data prop (#215)
- Performance optimization: prevent fbo from reallocating every time (#217)
- Performance optimization for examples in gh-pages
- Enable blending by default
- Fix syntax highlighting in gh-pages
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