Cesium in 2014

In the spirit of the Cesium in 2013 threads, I’ll make some concise predictions about 2014 to keep everyone up-to-date and hopefully spark discussion.

In 2013, we released a new version every month. Statistics don’t tell the full story, but there are 249 users on this forum (up from 180 in July) and 326 github stars (up from 110 at the end of 2012). There are 30 contributors, including developers from AGI, NICTA, EU Edge, Raytheon IIS, Evax Software, and individuals who contributed on their own or through the Google Summer of Code or ESA Summer of Code in Space programs. Of course, not all 30 contributors are currently active. AGI continues to support the majority of development. Cesium was presented at FOSS4G NA and SIGGRAPH, including demos in the AMD booth. Some of our early rendering techniques were covered in GPU Pro 4. NICTA developed Doarama and AGI used Cesium for NORAD Tracks Santa again and for the Cygnus spacecraft mission. In the community spirit, we changed the main website url to cesiumjs.org. @CesiumJS is now on twitter.

For 2014, several features are already in progress:

  • Terrain - we’ll see the new terrain format in the meshTerrain branch, which significantly improves performance, in an official release. AGI will release a commercial terrain server for private networks and for using your own data.
  • 3D models - the implementation in the gltf branch is already pretty stable. We shipped it to millions of users for NORAD Tracks Santa. We’ll see this in an official Cesium release in early 2014. We are likely to release it even before the glTF spec reaches 1.0 since the open-source COLLADA-to-glTF converter makes glTF mostly an implementation detail.
  • KML - The kml branch already exceeds the capabilities of the KML-to-CZML converter. We’ll see this in an official release along with popup balloons (branch) and significant performance gains for static data in CZML/GeoJSON/TopoJSON (branch).
  • There’s also been progress on the navigation widget and label declutter, which both need work before being released.

Although we haven’t started these, I expect we’ll see them in 2014:

  • Camera - both simplifications to the API and improved functionality like avoiding collision with terrain and models. #1060
  • Dynamic Buffers - a faster and more flexible way to draw dynamic data. #932
  • Renderer - as we continue to improve the low-level renderer, we’ll continue to see performance improvements and most likely visual quality improvements like shadows.
  • Polygons and Polylines - in order to turn terrain on by default, we need vector data to conform to terrain.
  • CZML - we’ll see improvements to the spec and Cesium implementation.
  • Tutorials - the current tutorials only cover a small subset of Cesium. We’ll see more tutorials covering the missing areas, especially as the API for those areas stabilize, and tutorials on the overall Cesium design like the now dated Architecture Guide.

As for a 1.0, our thinking hasn’t changed since the start of 2013. As things organically stabilize and interest builds, we’ll brand a 1.0. It’s likely to be in 2014, but not guaranteed.

On the WebGL front, we continue to see broader support, especially on Android and in IE 11 to some extent. We also see WebGL 2 features becoming available as extensions. We continue to adopt these, mostly for performance and visual quality improvements.

We’re always interested in your thoughts so please reply with feedback and ideas.



I know I sent this out over the holidays, but more discussion is welcome now that most folks are back in the office.