Development

ESLint and Concierge

As an intern on the Cesium team, my work this summer was divided between two projects: packaging our ESLint configuration into a shareable format and creating a GitHub bot to automate common tasks. Style & Syntax Checking with ESLint At Cesium, we like to have our JavaScript code follow a core set of style and syntax guidelines. As a simple...

Read More

Development

Adaptive Subdivision of 3D Tiles

As discussed in our optimized octree algorithm post, a technique for subdividing massive photogrammetry models into tiles must be adaptive to the input to achieve the best performance. New modifications to the 3D tiling pipeline in Cesium Composer allow it to adaptively select a subdivision strategy at each level of a tileset’s tree. A traditional octree subdivision method partitions a...

Read More

Development

Physically-Based Rendering in Cesium

With the arrival of glTF 2.0 support in Cesium 1.36, Cesium unlocked a new range of new features. The most groundbreaking feature added with this wave is the introduction of Physically-Based Rendering (PBR) as the approach for how Ceisum shades glTF models. As a master’s student at the University of Pennsylvania studying Computer Graphics and Game Technology, a lot of...

Read More

Events

SIGGRAPH 2017 Trip Report

It was another fantastic year for Cesium at SIGGRAPH 2017. SIGGRAPH is the premier annual computer graphics conference. Here’s a roundup of all Cesium contributions and Cesium-related events at SIGGRAPH 2017. Cartographics Visualization (Carto) BOF The Carto BOF, organized by Theresa-Marie Rhyne, was the first of many events where the Cesium team presented. This year marks the fifth SIGGRAPH that...

Read More

News

Cesium Version 1.36 Released

We are happy to announce the release of Cesium 1.36. Highlights include: Added glTF 2.0 support, including physically-based material rendering, morph targets, and appropriate updating of glTF 1.0 models to 2.0 Added ClassificationPrimitive which defines a volume and draws the intersection of the volume and terrain or 3D Tiles Added tileLoad event to Cesium3DTileset For the full list of changes,...

Read More

News

Total Solar Eclipses, Visualized and Animated

This is a guest post by Christopher Clark, creator of EclipseTracks.org. - Sarah Later this summer, on August 21, the 70 mile wide shadow of the Moon will race across the continental United States at over 1,500 miles per hour. The sun’s elusive, spectacular corona will be visible in twelve states coast to coast for a few fleeting minutes as...

Read More

Events

Cesium at FOSS4G 2017

Are you as excited about FOSS4G as we are? The schedule is up for this year’s international conference, to be held in Boston, August 14–19, and, as always, Cesium will be all over the conference, from the dedicated 3D geospatial tracks to talks from Cesium users. We’re especially excited to be hosting a number of fantastic Cesium developers, who will...

Read More

Events

Cesium at SIGGRAPH 2017

SIGGRAPH is next week! The conference is July 30 through August 3 in Los Angeles, California. We’ll be there, soaking up all the latest developments in graphics. If you’re hoping to catch a member of the Cesium team, watch for us at the Birds of a Feather (BOF) discussions. Or let me know if you’d like to meet up with...

Read More

Development

Aerometrex and 3D Tiles

AEROmetrex is an Australian company that specializes in collecting and distributing geospatial data, including high quality large-area photogrammetry. In November of 2016, they received a Bentley “Be Inspired” Special Recognition Award for their part in creating a 3D model of the Independence Mall in Philadelphia. This model was used to plan security procedures for Pope Francis’s visit in 2015 and...

Read More

News

The Next Generation of 3D Tiles

Nearly two years ago, we announced the 3D Tiles initiative for streaming massive heterogeneous 3D geospatial datasets. It is amazing and humbling to see how much of it has come to fruition and how a vibrant community has formed around 3D Tiles. With this initial success, we now have the foundation for modern 3D geospatial: Cesium as the canvas, 3D...

Read More

News

Cesium Version 1.35 Released

We are happy to announce the release of Cesium 1.35 and the arrival of 3D Tiles! This is our biggest release since Cesium 1.0 and perhaps ever. Other highlights include: New particle system for effects like smoke, fire, and sparks Time-dynamic support in WMTS For the full list of changes, see the change log. Photogrammetry model of AGI headquarters using...

Read More

News

3D at FOSS4G Europe

FOSS4G Europe is in just a few weeks. It’s no surprise that there will be a number of talks on 3D, which means people will be talking about Cesium. We’re especially excited about Loïc Gasser and Olivier Terral’s talk on Swisstopo’s work with 3D Tiles. Swiss Federal Geoportal uses 3D Tiles to represent both natural and artificial features in the...

Read More

Events

Cesium Summer 2017 Code Sprint

From June 13th to 16th, the Cesium team continued its tradition of the summer code sprint with a trip to Lake Harmony in the Pocono Mountains. With 12 participating Cesium team members and 1 very talented Penn graduate student, this was the team’s largest code sprint to date. Among the exciting projects the team tackled were: post-processing effects, physically-based rendering,...

Read More

News

High-resolution Arctic Terrain with ArcticDEM

ArcticDEM is a project to produce a pan-Arctic Digital Elevation Model at a 2-meter resolution. We’re proud to bring it to Cesium. The data is a collection of time-dependent DEM strips and a seamless terrain mosaic encompassing all land area north of 60 degrees north latitude. It can be distributed without restriction, thanks to collaboration between the National Geospatial-Intelligence Agency...

Read More

News

Srinivas Kaza joins the Cesium team

Today we’re happy to welcome Srinivas Kaza as a summer intern on the Cesium team at AGI. Srinivas is a junior at the Massachusetts Institute of Technology pursuing a BS in Computer Science. For the last year, he has been working with MIT’s Computer Graphics Group on a research project on point cloud rendering, which he plans on continuing next...

Read More

News

Cesium Version 1.34 Released

We are happy to announce the release of Cesium 1.34. This release includes lots of bug fixes for billboards, polylines, and other graphics features as we gear up for a huge 1.35 release with 3D Tiles. For the full list of changes, see the change log. News 3D Tiles adoption is growing. Read about 3D Tiles at work to Tile...

Read More

News

Planet Satellite Imagery in Cesium

The Cesium team has been working with Planet to bring their imagery to the Cesium community. Planet images the entire Earth every day using their own satellites, developed in-house. With this imagery, they’ve built color-balanced, cloud-free whole earth base maps that range from seamless mosaics to automated mosaics produced at frequent intervals. Their time-sliced mosaics allow users to know exactly...

Read More

News

Will Ho joins the Cesium team

Today we’re pleased to welcome William Ho for a summer internship with the Cesium team at AGI. Will is a student at the University of Pennsylvania, where he is working towards a bachelor’s degree in Digital Media Design and is a candidate for a master’s degree in Computer Graphics and Gaming Technology. This past spring he interned at Pixar. Last...

Read More

News

Ottavio Hartman joins the Cesium team

We’re happy to welcome Ottavio Hartman as a summer intern on the Cesium team at AGI. Ottavio is majoring in Cinema Studies and Computer Science at the University of Pennsylvania. We met in my GPU Programming and Architecture course, where he implemented a WebGL Unified Particle System in his final team project. This past spring Ottavio interned at Pixar. Last...

Read More

News

Mohamad Moneimne joins the Cesium team

We’re excited to welcome Mohamad Moneimne to the Cesium team at AGI for a summer internship. Mohamad recently finished his bachelor’s degree in Computer Science from the University of Pennsylvania and is currently working towards a master’s in Computer Graphics and Game Technology. Last summer, he was an intern software developer at COSY Robotics. I met Mohamad at Penn, where...

Read More

Development

The Drone Racing Game in Action

After several months of hard work and fun tinkering, the Cesium team in collaboration with the University of Pennsylvania’s Venturi Labs has finally produced a game worthy of our beautiful Cesium arcade cabinet! Thanks to our all-star team consisting of Venturi Labs Lead Developer Aline Normoyle, University of Pennsylvania graphics masters student Zimeng Yang and Penn professor Stephen Lane, we...

Read More

Events

Upcoming Summer Code Sprint

On June 13th, the Cesium team will be going to the Pocono Mountains for our annual Summer Code Sprint. We like to get away twice a year (once in the summer and once in the winter) so we can dedicate time to working on intensive projects and collaborating on things we might not get a chance to in our normal...

Read More

Development

Duke Using 3D Tiles for Excavation in Vulci

An important area for modern photogrammetry - and by extension, 3D Tiles - is artwork and archaeology. We recently started collaborating with a team from Duke that gathers photogrammetry data of the Vulci archaeological site in Italy. Vulci dates back to before the Roman Empire, and the ruins were famous even in the 19th century as something of an archaeological...

Read More

Events

Analytical Graphics Going to GEOINT 2017

GEOINT 2017 is just two weeks away, June 4–7 in San Antonio, Texas. The symposium, hosted by the United States Geospatial Intelligence Foundation (USGIF), focuses on geospatial for intelligence and defense applications. It attracts more than 4,000 attendees from academia, industry, and government. AGI, the founder of Cesium, will be attending. We’ll host a complimentary course June 4, 2–5 p.m.,...

Read More

Development

GERST Engineers, Agisoft PhotoScan, and 3D Tiles

GERST Engineers (GERST Ingenieure) is a German company that provides various GIS services, including TBview, their own Web-based GIS software. They also produce photogrammetry surveys using Agisoft PhotoScan. We recently started collaborating with them to use our photogrammetry tiling pipeline on their captures. One photogrammetry model was provided to us spread across 3,428 individual COLLADA files with 6,922 images totaling...

Read More

Development

Skipping Levels of Detail

Cesium and 3D Tiles use Hierarchical Level of Detail (HLOD) to adaptively load and refine 3D models. Doing so allows the engine to render low resolution tiles when they are far from the camera and high resolution tiles when they are near the camera. However, standard methods of displaying HLOD models will load every level of resolution up until the...

Read More

News

Cesium Version 1.33 Released

We are happy to announce the release of Cesium 1.33. Highlights include: Added GoogleEarthEnterpriseTerrainProvider and GoogleEarthEnterpriseImageryProvider to use terrain and imagery from Google Earth Enterprise servers. #5189. Support for dashed polylines #5159. Added a depthFailMaterial property to line entities, which allows you to render lines behind terrain and other objects with a different material. #5160 For the full list of...

Read More

News

Katherina Lim Rejoins the Cesium Team

Katherina Lim has rejoined the Cesium team as a part-time regular while she finishes up her degree from Drexel University, where she is a 4th year computer science major with a minor in interactive digital media. Kat has picked up right where she left off and continues to work on Cesium Composer. Learn more about Kat at her LinkedIn page....

Read More

Development

Google Earth Enterprise Terrain and Imagery

Back on March 30th, we announced that we were exploring Google Earth Enterprise support in Cesium, with the initial goal of including terrain and imagery support in a near term Cesium release. I’m happy to say that pull request #5189 is now open on GitHub and should be included with Cesium 1.32 on May 1st. If you have access to...

Read More

Development

Making the Cesium Game Fun

Venturi Labs has been hard at work on the Cesium arcade game! In the past few weeks, we’ve made a lot of progress towards a fun, feature-complete game. Here’s what we’ve been up to. Visuals It wouldn’t be a Cesium game without beautiful visuals that show off the engine’s unique capabilities. To that end, rather than just flying over open...

Read More

Development

SiteSee Photogrammetry and 3D Tiles

SiteSee is an Australian company that provides telecom companies with 3D capture models of their infrastructure, along with AI-based analytics and other tools building on the digital earth vision. We are collaborating with them using the tiling pipeline in Cesium Composer to create 3D Tiles of their datasets. Here is a high-resolution cellphone tower site from SiteSee in Cesium: SiteSee’s...

Read More

Development

Optimizing Spatial Subdivisions in Practice

As outlined in the earlier Spatial Subdivisions post, not all spatial data structures are equal. But how well do our tweaks to the classic quadtree/octree algorithm hold up in practice? In the case of 3D Tiles for streaming to Cesium, we evaluate tilesets using a couple of questions including: How deep is the tileset? Tiles deeper in the tileset take...

Read More

News

Cesium Version 1.32 Released

We are happy to announce the release of Cesium 1.32. Highlights include Added support for an orthographic projection in 3D and Columbus view. Added support for custom time-varying properties in CZML. Fixed overlapping billboard blending. For the full list of changes, see the change log. News 3D Tiles has been growing rapidly. For the latest, see What’s new in 3D...

Read More

Development

Optimizing Subdivisions in Spatial Data Structures

Spatial Subdivision techniques are essential in almost all areas of computer graphics, and are very popular in both 2D and 3D digital cartography. In 3D Tiles, they simplify rendering by grouping large amounts of geometry into tiles that are likely to be visible at the same time and provide a hierarchy so not every tile has to be checked when...

Read More

Development

Cesium and Open Source Google Earth Enterprise

Since it is widely used throughout the geospatial industry, it was a big surprise when Google announced the deprecation of Google Earth Enterprise (AKA Fusion or GEE) in 2015. While the Google Earth client remains closed source, the server code has been open sourced under the Apache 2.0 license and is now available on GitHub. Helping users migrate legacy Google...

Read More

News

What's new in 3D Tiles?

In the early days of Cesium, I was able to keep track of all the apps being built with Cesium. As the community grew, I could no longer keep up with each project and interact with everyone individually. It’s a sad but perhaps necessary milestone as a project becomes widely adopted. 3D Tiles has now reached the same point where...

Read More

Events

Cesium at GETT (Girls Exploring Tomorrow's Technology)

Over the weekend, the Cesium team participated in GETT 2017. GETT (Girls Exploring Tomorrow’s Technology) is a volunteer organization that encourages young girls to explore careers in science, technology, engineering, and math (STEM). At the annual day-long event, girls in grades 5–10 attend a variety of interactive break-out sessions and walk around the Expo, where women from 60+ organizations showcase...

Read More

Events

Duke Summit on Humanities, GIS, and the Web

Duke University is holding a summit on Humanities, GIS, and the Web March 30–31. The summit, organized by Ed Triplett, will explore digital humanities questions such as, What is the difference between a 3D environment and a 3D Map? How can adding a 3rd dimension help us tell stories about history? How different is a “spatial narrative” project from a...

Read More

Development

Arcade Game 2.0

Cesium has a lot in common with a modern game engine—many real-time rendering features, terrain collision-checking, 2D/3D primitive editing. So what better way to showcase Cesium’s capabilities than to build a game? I’m very pleased to announce that Cesium has partnered with the University of Pennsylvania game incubator, Venturi Labs, to work on an updated version of our arcade game!...

Read More

Events

Locate17 Coming Up

For the third year in a row, AGI, the company that founded Cesium, will be attending the Locate conference, the national conference of the spatial and surveying industries of Australia and New Zealand. Locate17 will be held in Sydney, Australia, April 3–6. This year the conference will be co-located with ISDE10, the conference of the International Society for Digital Earth...

Read More

Development

Streaming 3D Capture Data using 3D Tiles

Advances in photogrammetry, computer vision, and cloud computing have made capturing high resolution 3D scans accessible - most smartphones can now masquerade as portable 3D scanners. We’ve also seen some really amazing datasets come from combining these advances with the swarm of drones taking flight every day, opening all kinds of possibilities for 3D mapping, civil engineering, and the age-old...

Read More

News

Cesium Version 1.31 Released

We are happy to announce the release of Cesium 1.31. Highlights include Added compressed texture support for glTF models and imagery layers. Added support for Scene.pickPosition in Columbus view and 2D. Added support for depth picking translucent primitives when Scene.pickTranslucentDepth is true. Fixed an issue where the camera would zoom past an object and flip to the other side of...

Read More

Events

Cesium at FOSS4G NA 2017

Have you put FOSS4G on your calendar for this summer? The Free and Open Source Software for Geospatial conference will be big this year. The 2017 international FOSS4G conference will be held in Boston and this year will be combined with FOSS4G NA. We’re proud to be a sponsor of the conference. We’ll be going, of course, and we’ll be...

Read More

News

Cesium in Town for GDC

Some of us from the Cesium team will be in San Francisco during the Game Developers Conference. Next Thursday, March 2, join us for the WebGL/WebVR/glTF meetup. Along with Microsoft and Unity, we will be presenting the latest on glTF 2.0 and the glTF ecosystem, including Physically-Based Rendering (PBR) materials. Two of my students at the University of Pennsylvania, Jian...

Read More

Development

Visualizing Massive Models using 3D Tiles

When we talk about “Massive Models,” we basically mean 3D models that are too large to drop right into Cesium as glTF. The model may have too many triangles to render at interactive rates on a common GPU, or the model may be so large that it won’t even fit in memory, never mind bog down rendering. Since Cesium is...

Read More

Events

3D Mapping at TEDxPenn

Our very own Rachel Hwang will be speaking about geospatial data advancements at TEDxPenn. This independently organized, annual TED conference has about 1,000 attendees. This year’s theme is Rise and Run, and Rachel will discuss generating and using 3D maps of our world. Thanks to the ever-growing resource of 3D geospatial data, we now have the 3D data needed to...

Read More

Development

Hierarchical Culling With Children Bounding Volumes

The Problem Hierarchical Level of Detail (HLOD) with 3D Tiles is often accomplished by using replacement refinement. As the camera gets closer to geometry, each tile is replaced by a set of smaller child tiles, each with a higher resolution subset of the geometry. Together, these children present the parent tile’s content in higher detail. Well-structured bounding volumes are essential...

Read More

Events

Winter Bug Bash Trip Report

Here’s to another successful Cesium Bug Bash! Wednesday through Friday of last week, the team visited Bentley Systems headquarters to squash some bugs. For background, Cesium Bug Bashes are short events in which our team focuses on small, but impactful fixes through the codebase. Dan and Ed make a bug fix "even more fixed" These Bug Bashes illustrate a Cesium...

Read More

Development WebGL

WebGL Texture Compression Comparison

We’re adding support for compressed textures to Cesium 1.31 via the DXTn/BCn, ECT1, and PVRTC WebGL extensions. Textures compressed to these formats stay compressed in GPU memory and are decompressed in parallel in hardware on the fly when sampling the texture. The compression algorithms compress at a fixed rate that can be decompressed quickly on random access of the texture....

Read More

Development

Tighter Frustum Culling and Why You May Want to Disregard It

Inaccurate Frustum Culling Many popular frustum culling algorithms, including our own implementation, do not produce completely accurate results when large objects are present in the scene. Large objects located outside but near the corners of the view frustum often pass the frustum culling check even though they are completely out of view. For us, this is important not only for...

Read More

News

Swiss Geospatial Portal Using 3D Tiles

swisstopo, Switzerland’s national mapping agency, is now using 3D Tiles. The agency produces detailed maps of Switzerland and also documents geological, geodesic, and topographical changes in the landscape. As part of the Federal Geoinformation Act to make Swiss geospatial data available for widespread use, swisstopo is implementing 3D Tiles to process its extensive data collection and Cesium to visualize it....

Read More

News

Cesium Version 1.30 Released

We are happy to announce the release of Cesium 1.30. Highlights include The new sampleTerrainMostDetailed function can be used to sample the terrain height using the highest level of detail available at each position. A fix for transparent parts of billboards, labels, and points, so they no longer overwrite parts of the scene behind them. Added support for custom geocoder...

Read More

News

An Update on cesium.com

Back in May, we announced plans for cesiumjs.com, with our goal being to advance the state of the art for 3D geospatial data on the web. We haven’t spoken much about it since then, but that’s because we’ve been focused on making it a reality. We are now rolling out our first round of beta invites, and we thought it...

Read More

News

Cesium Bug Bash

To make progress on bugs of interest to the community and to help ramp up our new teammates, we are organizing a Winter Bug Bash on February 8–10. Once again, our partners at Bentley Systems will be hosting the AGI Cesium team. We need your help identifying bugs that are most important to you! You can help by Adding a...

Read More

News

The Cesium Consortium

We’re pleased to announce that Bentley Systems is joining Analytical Graphics, Inc. (AGI) as a founding member of the new Cesium Consortium. Bentley Systems is adopting Cesium to visualize and interact with highly detailed infrastructure engineering models set in the reality context of their surrounding environment. The digital engineering models are created with Bentley’s MicroStation and BIM applications, and the...

Read More

News

Rachel Hwang joins the Cesium team

We’re thrilled to welcome Rachel Hwang to the Cesium team at AGI as a 3D Software Developer. Rachel just graduated from the University of Pennsylvania with a master’s in computer graphics and game technology. While at Penn she was a teaching assistant for the computer graphics course, and she spent last summer working on VR at Prologue Immersive. Before attending...

Read More

Development

Developing Cesium with GWT and JsInterop

This is a guest post by Serge Silaev about his GWT wrapper, a Java application for developing with Cesium using Google Web Toolkit (GWT) 2.8.0 and JsInterop. The work expands that of Rich Kadel, who introduced a GWT wrapper for Cesium in 2014. - Sarah JavaScript is the most common language for Web development and is suitable for very diverse...

Read More

News

Shehzan Mohammed joins the Cesium team

Welcome to Shehzan Mohammed, who is joining the Cesium team at AGI as a 3D Software Developer today. Shehzan previously worked at ArrayFire, where he used CUDA, OpenCL, and OpenGL for GPU computing applications and helped lead the effort to make the ArrayFire library open source. Shehzan earned a master’s in computer graphics and game technology in 2013 at the...

Read More

News

Austin Eng joins the Cesium team

Today we’re happy to welcome Austin Eng as a spring intern on the Cesium team at AGI. Austin is working on both a bachelor’s degree in computer science and a master’s in computer graphics and game technology at the University of Pennsylvania. Last summer he interned at DreamWorks, and in the summer of 2015 he interned at Disney. At Penn...

Read More

News

Cesium Version 1.29 Released

We are happy to announce the release of Cesium 1.29. Highlights include 3D Model silhouette rendering and 3D Model color/translucency blending. These are great highlighting effects. Label backgrounds to help make labels standout. Fixed translucency in Firefox 50. Fixed texture rotation for RectangleGeometry. For the full list of changes, see the change log. News For the fourth year in a...

Read More

News

NORAD Tracks Santa with Cesium

On Christmas Eve, children and families from around the world will be able to track Santa’s progress in 3D with NORAD Tracks Santa. This is the fourth year Cesium is part of the NORAD Tracks Santa team, and this year tracking Santa will be better than ever! With the many performance improvements made to Cesium within the last year, visitors...

Read More

Events

Winter Code Sprint Trip Report

For this year’s Winter Code Sprint, the Cesium team once again went to the Pocono Mountains for a week of focused work and team building. As a new team member and first-time code sprint participant, this was a great opportunity to get to know the team. Also, as we are encouraged to work on something different from our day-to-day work,...

Read More

News

Cesium on CNN

Cesium is in the news! Jim Sciutto of CNN interviewed Paul Graziani, the CEO of AGI, the company that started Cesium. Their interview was filmed in and about the Commercial Space Operations Center (ComSpOC); the visualizations of the ComSpOC analysis tool are built on Cesium and STK. The news story is about defending US satellite systems. It shows several satellite...

Read More

News

Cesium Version 1.28 Released

We are happy to announce the release of Cesium 1.28. Highlights include Improved terrain/imagery load ordering, which results in a 25% reduction in load times in many cases. Improved billboard, label, and point visual quality. Fixed support on Samsung Galaxy S7 and other systems that do not support the OES_texture_float WebGL extension. Terrain and imagery performance improvements. Left: 1.27. Right:...

Read More

Events

Upcoming Winter Code Sprint

Next week, the Cesium team will be going to the Pocono Mountains for our annual Winter Code Sprint. We like to organize two trips per year where can dedicate time to working on intensive projects and collaborating on things we might not get a chance to in our normal day to day. We have some exciting projects planned! Sean and...

Read More

News

Erik Andersson joins the Cesium team

Today we’re happy to welcome Erik Andersson as a full stack developer on the Cesium team at AGI. He will play a significant roll in our cesiumjs.com development work as well as contributing to core Cesium development. Erik graduated from Linköping University in Sweden with an MS in Computer Science and Engineering and an MS in Industrial Engineering and Management....

Read More

News

Cesium Version 1.27 Released

We are happy to announce the release of Cesium 1.27. Highlights include A slew of bug fixes throughout the codebase thanks to the Cesium Bug Bash. A new HeadingPitchRoll class for making it easier to work with object orientations. Improved KML compatibility. For the full list of changes, see the change log. News 3D Tiles passed the votes to enter...

Read More

News

Cesium Bug Bash Results

We held the first ever Cesium Bug Bash last week, and it was a massive success! For three days, the Cesium team went over to Bentley Systems headquarters and worked on squashing some of the bugs that were most impacting the Cesium community. Cesium Team hard at work at Bentley Systems On day 1 we hit the ground running, tackling...

Read More

News

Penn Students Developing Tools for 3D Tiles

We’re happy to announce that we have two more students from Dr. Chris Murphy’s Open-Source Software Development course, CIS 399, at the University of Pennsylvania who will be contributing to Cesium this fall. In the course students learn about open source software development while simultaneously working on an existing open source project. As their industry mentor, I’ll give them guidance...

Read More

Events

FedGeoDay 2016 Trip Report

Patrick Cozzi, Dan Bagnell, and I represented the Cesium team at FedGeoDay 2016, which took place at the American Red Cross in Washington, DC, on October 13. In addition to attending, Patrick was the conference chair, and we both had the opportunity to emcee some of the sessions. We were also a sponsor. Ray Bauer of NGA giving his keynote...

Read More

Events

AGI International Users Conference

It’s time to register for AGI’s International Users Conference. AGI, the founder of Cesium, is holding its second International Users Conference November 16–18 in Rome, Italy. The free event offers training and presentations on a variety of AGI technologies, including an entire track dedicated to Cesium. The track will guide STK users into enhancing the capabilities of their projects with...

Read More

News

Cesium Version 1.26 Released

We are happy to announce the release of Cesium 1.26. Highlights include Added support for clustering Billboard, Label and Point entities. #4240 Added DistanceDisplayConditions to all primitives to determine the range interval from the camera for when it will be visible. Fixed a bug where viewing a model with transparent geometry would cause a crash. #4378 For the full list...

Read More

Events

LocationTech Tour in Philadelphia

We’re happy to be sponsoring the 2016 LocationTech Tour. The Philadelphia stop is coming up Thursday, October 6, at 6:30 p.m. Come hear Ross Bernet of Azavea share his experience diving into GIS, Dave Cole of Mapbox cover Mapbox Cities, and the Mapzen Search team discuss geocoding. And our very own Hannah Pinkos will be speaking about tracking Santa with...

Read More

Events

Cesium and 3D Geospatial at FedGeoDay

FedGeoDay is just a few weeks away and the schedule is up. Now is a great time to register! We’re happy to see 3D will be a prominent theme of this one-day conference. Talks that focus on Cesium include: Cesium 3D Tiles: An Open Specification for Streaming Massive 3D Geospatial Scenes, Matthew Amato (Cesium). Our very own Matt Amato will...

Read More

News

Mentoring Penn Students Contributing to 3D Tiles

We’re thrilled to have two students from the University of Pennsylvania contributing to Cesium this fall. Judy Weng and Sumit Shyamsukha are both in Dr. Chris Murphy’s Open-Source Software Development course, CIS 399. In the course students learn about open source software development while simultaneously working on an existing open source project. Students have to apply in order to be...

Read More

News Development

Cesium Bug Bash

I’m very excited to announce that we will be hosting the first Cesium Bug Bash! Our friends at Bentley Systems will be hosting the AGI Cesium team for the event on October 19–21. During that time, we’ll be focused on closing as many bugs as we can. We’re also putting an emphasis on fixing bugs that are currently impacting the...

Read More

News Development

3D Tiles and the OGC

Cesium started as a software development effort to bring 3D geospatial to the web. In order to truly realize the potential of 3D on the web, we determined that new open formats were required to efficiently take advantage of 3D’s uniqueness. We introduced CZML, a JSON schema for describing time-dynamic 3D scenes, quantized-mesh for efficiently streaming terrain, and glTF, the...

Read More

News

Cesium Version 1.25 Released

We are happy to announce the release of Cesium 1.25. Highlights include Updated the online model converter. It now converts OBJ models to glTF with obj2gltf, optimizes existing glTF models with the gltf-pipeline, can bake ambient occlusion onto the glTF model, and compress geometry using the glTF WEB3D_quantized_attributes extension. Improved label quality for oblique and italic fonts. See #3782. Improved...

Read More

Development

Baking Ambient Occlusion in the glTF Pipeline

Ambient occlusion, or AO, describes how cracks, crevices, corners, and other small, semi-enclosed spaces tend to be darker than surrounding surfaces under real-world lighting conditions. Their insides are occluded, so ambient light can’t get in. AO adds realism to views rendered in Cesium and other real-time 3D engines and can also be helpful for bringing out details when a scene...

Read More

Development

Using Quantization with 3D Models

The WEB3D_quantized_attributes extension to glTF offers reasonable compression with little to no overhead for decompression. This meets the needs of 3D Tiles in Cesium perfectly because the 3D Tiles engine frequently downloads new tiles based on the view. Quantized 3D model files means smaller files, faster downloads, and less GPU memory usage with no performance degradation. All about Quantization The...

Read More

Events

Cesium at FOSS4G 2016

The global FOSS4G (Free and Open Source Software for Geospatial) conference is just a few weeks away. We’re thrilled to see that Cesium will be a big part of the schedule. These talks and workshops by the community include Cesium: OL3-Cesium: 3D for OpenLayers, by Beraudo Guillaume of Camptocamp. Trying to visualize GIS & BIM information on the web: a...

Read More

Events

SIGGRAPH 2016 Trip Report

We had another great trip to SIGGRAPH, the annual computer graphics conference! We kicked off this year's trip at the co-located Web3D conference. Sean Lilley and I presented the most comprehensive tutorial yet on 3D Tiles. The audience was highly engaged. The slides and sample tilesets are here. Sean presenting the 3D Tiles tutorial at Web3D. There was quite a...

Read More

News

Cesium Version 1.24 Released

We are happy to announce the release of Cesium 1.24. This is a bug fix release after a big Cesium 1.23 release. It is especially worth upgrading if you care about leap seconds as much as we do, as a new leap second was added for December 31, 2016. Also, MapQuest recently discontinued their support for direct tile access, so...

Read More

Events

Cesium at SIGGRAPH 2016

SIGGRAPH is next week! The conference, July 24–28 in Anaheim, California, will cover all things graphics. Be sure to add these Cesium-related events to your schedule: Monday ACM SIGGRAPH Cartographic Visualization (Carto) Birds of a Feather    Monday, 25 July, 1:30 pm–3:00 pm, Anaheim Convention Center, ACM SIGGRAPH Theater, Hall C Sean Lilley will present the latest news on Cesium and...

Read More

Development

Cesium and milsymbol

This is a guest post by Måns Beckman, creator of milsymbol, about using milsymbol with Cesium. A background in military unit symbols is helpful but not essential to understanding this post. - Sarah milsymbol milsymbol is a JavaScript library for creating military unit symbols, described in standard documents such as MIL-STD-2525 for the USA and STANAG APP6 for NATO, that...

Read More

Events

FedGeoDay 2016

We are happy to sponsor the upcoming FedGeoDay conference! FedGeoDay has just posted a call for proposals. This is a fantastic one-day geospatial conference focused on federal government users with an emphasis on open source and open data. Many people in the federal government are using Cesium. This conference is a great place to demonstrate your work to your agency,...

Read More

Events

Cesium BOF at SIGGRAPH 2016

You are invited to the annual Cesium BOF at SIGGRAPH to learn about the latest Cesium development and community news. There will be Cesium swag too. This is the Cesium event of the year! Here’s a preview of the program: Virtual Globes Using WebGL and Cesium Tuesday, July 26, 2016, 10:30 am–12:00 pm Anaheim Convention Center Room 203 B Tom...

Read More

Events

Web3D 2016

Web3D 2016 is coming up July 22–24 in Anaheim, California. Co-located with SIGGRAPH, the conference explores the latest research and developments in web-based interactive 3D graphics. This year’s program, centered on the theme of “3D for all,” has some great presentations, including some that cover glTF. Be sure to attend the tutorial by Sean Lilley and Patrick Cozzi of the...

Read More

Development

Moving GEFS Online from Google Earth to Cesium

This is a guest post by Xavier Tassin, creator of GEFS-online, about his experience migrating from Google Earth to Cesium. - Sarah For five years I have been building GEFS-online, a free flight simulator, on the Google Earth plugin. When Google decided to retire the plugin, I made the move to Cesium as it offered the best alternative. I would...

Read More

News

Cesium Version 1.23 Released

We are happy to announce the release of Cesium 1.23. Highlights include Entities, KML, and GeoJSON terrain clamping. Up to 2x faster polygon triangulation using earcut. CZML consistency and documentation improvements. See the forum post. Ability to rotate the map in 2D. New Google Cardboard Sandcastle example. For more details and the full list of changes, see the change log....

Read More

Events

Summer Code Sprint Trip Report

For the Wednesday through Friday after Memorial Day Weekend, the Cesium team worked from beautiful Wildwood, NJ, down by the shore, for our semiannual code sprint. The code sprint is designed to be three intense days where team members pick projects with immediate impact. It also designed for socialization and ramping up for new team members. This was my first...

Read More

News

Cesium Version 1.22 Released

We are happy to announce the release of Cesium 1.22. This is the fiftieth public release of Cesium, which began with version b5, released in May 2012. This release includes some major visual quality improvements such as: Shadows, including self-shadows and soft-shadows for terrain, 3D models, and geometries, based on the sun position. Improved atmosphere, with day/night fade and hue/saturation/brightness...

Read More

News

Joshua Storm Becker joins the Cesium team

We’re thrilled that Joshua Storm Becker is joining us today as a summer intern on the Cesium team at AGI. This summer, Josh will contribute to the gltf-pipeline and 3D Tiles. Josh is studying computer science at Princeton. While in high school, Josh participated in MIT’s MOSTEC program and worked for the NSA, where he used functional programming to implement...

Read More

News

Gary Li joins the Cesium team

Today we’re happy to welcome Gary Li as a summer intern on the Cesium team at AGI. This summer, Gary will contribute to the gltf-pipeline project, started by his classmate Richard Lee, by adding the ability to prebake ambient occlusion (AO) to create visually appealing 3D buildings in Cesium with 3D Tiles. Gary will also contribute to Cesium’s shadow renderer...

Read More

Development

An Introduction to Cesium Android Apps with Cordova

In this article we will be building a small, mobile Cesium Android app with Cordova from scratch. Cordova is a tool that allows users to build cross-platform mobile apps with web technologies. The major benefits of using Cordova with Cesium are having the ability to run offline and access local files, maintaining the native look and feel of Android, and...

Read More

Events

Analytical Graphics Going to GEOINT 2016

GEOINT 2016 is coming up May 15-18 in Orlando, Florida. This symposium, hosted by the United States Geospatial Intelligence Foundation (USGIF), has more than 4,000 attendees from academia, industry, and government sectors. It focuses on geospatial for intellgience and defense applications. AGI, the founder of Cesium, will be at booth 1232 in the exhibit hall. Come by to see how...

Read More

News

Introducing cesiumjs.com

When we started Cesium in 2011, our goal was to advance the state of the art in 3D on the web and realize the Digital Earth vision. As an open-source project, Cesium has succeeded beyond our wildest dreams. It has become synonymous with 3D geospatial visualization and is the globe of choice across many fields, such as aerospace, defense, smart...

Read More

News

Cesium Version 1.21 Released

We are happy to announce the release of Cesium 1.21. This is mainly a bug fix release as we gear up for 1.22, which will be a major release with shadows. Highlights include: Added ability to import and export Sandcastle example using GitHub Gists. #3795 Added PolygonGraphics.closeTop, PolygonGraphics.closeBottom, and PolygonGeometry options for creating an extruded polygon without a top or...

Read More

Events

See You at FOSS4G NA 2016

FOSS4G NA 2016 is next week! We’re proud that this year Patrick Cozzi is on the organizing committee and that AGI is a sponsor of the conference. There will be a Cesium booth in the exhibit hall, complete with our brand new Cesium arcade machine. Come by to play a game, meet the core development team, and tell us about...

Read More

Events

Locate16 Trip Report

This is a guest post by Daniel Honaker about AGI’s attendance at Locate16. - Sarah What a difference a year makes! Locate15 was held last year in Brisbane, Australia, and it was the first time that AGI attended as an exhibitor. The Locate conference is the national conference of the spatial and surveying industries of Australia and New Zealand. We...

Read More

Events

3D in the Cloud Event in Washington, D.C.

Wednesday, April 27, Autodesk is sponsoring a panel discussion on “3D in the Cloud: What Does it Mean?”. The discussion, in Washington, D.C., will look at using the cloud for hosting and processing 3D data. Cesium lead Patrick Cozzi is both a member and the moderator of the panel. He’ll be discussing the role of 3D open standards in the...

Read More

Development

Share Sandcastle Examples Easily with GitHub Gists

Starting with Cesium 1.21 on May 2, Sandcastle now integrates with the GitHub API for importing and exporting code examples. There are two new buttons in the Sandcastle toolbar: Share and Import Gist. To share code you’ve written in Sandcastle, just click the Share button and copy the link. When you click Share, the code is POSTed to an anonymous...

Read More

News

Catching up on 3D at FOSS4G NA

We’ve been attending FOSS4G NA since the first year Cesium was developed, and we love it. It’s the conference where we meet our users face-to-face, present the latest Cesium developments, and learn about all the great advances in the field. Every year brings a different emphasis to the sessions, reflecting what’s happening in the world of geospatial software. This year,...

Read More

Development

Cesium Continuous Integration

Continuous integration, or CI, is an automated process that occurs whenever a developer commits code to Cesium or opens a pull request. To help guarantee the quality of the code we are writing before it is merged into master, we build and test the code using a continuous integration service called Travis-CI. Travis is a hosted service that checks out...

Read More

Development

An Introduction to Cesium Desktop Apps with Electron

What is Electron? Electron allows users to build cross-platform desktop applications with web technologies. Since Cesium is built purely on web technologies, developers can build Cesium desktop apps with ease thanks to Electron. Electron provides access to the operating system via Node.js and Electron modules. In this article, we will build a small desktop Cesium app with Electron from the...

Read More

News

Cesium Version 1.20 Released

We are happy to announce the release of Cesium 1.20. Here are the highlights of the new release: Added infinite horizontal scrolling in 2D. Improved KML NetworkLink and StyleMap support. Added translucent and colored image support to KML ground overlays. For more details and the full list of changes, see the change log. News A lot has been happening in...

Read More

Development

Cesium Metal Renderer Design for Apple Platforms

This is a guest post by Ryan Walklin about using the Metal renderer with Cesium. - Sarah Cesium is an open-source WebGL-based virtual globe and geospatial visualization library, built with Javascript. It runs extremely well on desktop-class hardware in a browser, but more performance can be gained on mobile by using native languages and APIs. I started porting Cesium to...

Read More

News

Cesium Pro Seminar in Israel

Interest in Cesium is growng all over the world. More than 140 people have already registered for a Cesium seminar in Tel Aviv next month. This full-day seminar is about commercial offerings from AGI, the founder of Cesium, and is offered by Synergy Integration, AGI’s partner in Israel. It will cover open streaming formats, Cesium’s processing and streaming servers, and...

Read More

News

Rob Taglang joins the Cesium team

Rob Taglang has joined the Cesium team as a six month co-op from Drexel University, where he is a junior pursuing a BS/MS Degree in Computer Engineering. Rob will be working all across Cesium to start, and will improve our content generation pipeline for models and 3D Tiles. He brings his experience of working across a wide range of technologies,...

Read More

Development

Drawing on 3D Models and Terrain

In 2D maps, drawing tools are used to draw points, polylines, and polygons in a “John Madden” fashion. In 3D, drawing tools are generally used in the same manner - to annotate the globe’s surface. With Cesium’s Scene.pick and Scene.pickPosition functions, we can reenvision drawing tools for 3D to allow users to draw on terrain, draw on any 3D surface...

Read More

News

New Cesium Terrain Service Covering Pennsylvania

To all the Pennsylvania geo folks out there: The Cesium team has just released a free, hosted, demonstration terrain service of Pennsylvania. Here is a sample app showing off some of my favorite locations. The beautiful 1-meter resolution terrain source comes from PASDA. This service is ready to support any Pennsylvania-focused app that requires super-fast transmission of high-resolution terrain. You...

Read More

News

STK World Terrain Tileset Updated

The STK World Terrain has incorporated the complete SRTM 30 meter resolution dataset published and managed by USGS, which covers most of the globe between 60 north and 60 south. No need to update your URLs; the data was updated on the servers over the weekend. You can browse the data here, or just simply open up your own favorite...

Read More

News

Vricon working with the Cesium team on 3D Tiles

This week the OGC is meeting at the World Bank building in Washington, D.C., to plan, organize, and forge a path for open standards to help support the ever evolving needs of the growing geospatial community. As part of this, Patrick Cozzi, the founder of Cesium, will be presenting 3D Tiles during the Thursday session to the community. 3D Tiles...

Read More

Development

Performance Tips for Visualizing Lots of Points

In Cesium we’ve historically been able to create points using billboards with circles, but now we can create millions of points with the faster, less memory-intensive PointPrimitive and PointPrimitiveCollection, introduced back in Cesium 1.10. Here’s a code sample of 64,800 PointPrimitive objects covering the globe, as well as an image of the result. var viewer = new Cesium.Viewer('cesiumContainer'); var points...

Read More

News

FOSS4G NA Program Announced

The program for FOSS4G NA 2016, coming up in May, is now available. All of the accepted talks look great. We’re especially looking forward to the ones that will be covering Cesium. As you put together your schedule for the conference, be sure to check out these sessions: 3D Tiles: Beyond 2D Tiling, by Sean Lilley, Cesium, and Patrick Cozzi,...

Read More

News

Cesium Version 1.19 Released

We’re pleased to announce the release of Cesium 1.19. Here are the highlights of the new release: Improved KML support including NetworkLink, NetworkLinkControl, and StyleMap. Added ability to zoom to an ImageryLayer. Added Camera.flyHome function for resetting the camera to the home view. For more details and the full list of changes, see the change log. Other Cesium News Website...

Read More

Development

Website Continuous Integration with Travis CI, Jekyll, gulp, and GitHub

We built the Cesium website using Jekyll, a static site generator. Jekyll allows both technical and non-technical content creators to write blog posts and other pages in Markdown format, which Jekyll converts into an HTML page. Some of the other tools we use are Bootstrap for layouts, Less for styling, and gulp for building the site. Using Travis CI, we...

Read More

News

A Day in the Life of a Cesium Developer

Our very own Sean Lilley has been selected to do a live informational interview with students via Twitter. The University of Pennsylvania Career Services regularly invites alumni to tweet throughout a typical day of work. No workday at AGI is merely typical, but Sean will be doing his best to capture just how awesome it is to be a 3D...

Read More

News

Cesium Version 1.18 Released

We’re pleased to announce the release of Cesium 1.18. Here are the highlights of the new release: Reduced the amount of CPU memory used by terrain by ~25% in Chrome. Added a Sandcastle example to “star burst” overlapping billboards and labels. Added VRButton which is a simple, single-button widget that toggles VR mode. Cardboard for mobile is supported. More VR...

Read More

News

Cesium at FOSS4G NA 2016

Proposals are coming in for FOSS4G NA, and we are excited for the conference. The Free and Open Source Software for Geospatial conference is one of our favorite events of the year! The early bird deadline was January 22 (the final proposal deadline is February 8, so there’s still time to get your idea in), and the proposals look great....

Read More

Development

Cesium and webpack

This is a guest post by Mike Macaulay about using the webpack module bundler with Cesium. - Sarah This tutorial will show how you can use the webpack module bundler with Cesium. Some basic knowlege of webpack will be assumed but code samples will be provided for reference. These code samples are located here. There are two ways to use...

Read More

News

glTF Pipeline with Richard Lee

This semester I am happy to be working with Richard Lee, a University of Pennsylvania student studying both Digital Media Design and Computer Graphics and Game Technology. Richard is developing open-source glTF pipeline tools for tasks such as optimizing glTF assets, converting to and from binary glTF, and supporting glTF extensions. We’re using Node.js, so the tools will be available...

Read More

News

Tom Pedbereznak joins the Cesium team

Tom Pedbereznak has joined the Cesium team as a six month co-op from Northeastern University, where he is a 2nd year student in Computer Science with a concentration in Cyber Operations. Tom will be working all across Cesium, including helping out with 3D Tiles. He is very passionate about streamlining and writing well-documented code and plans to bring these skills...

Read More

News

Cesium Version 1.17 Released

We are happy to announce the release of Cesium 1.17. Here are the highlights of the new release: Reduced the amount of GPU and CPU memory used by terrain by using compression. The CPU memory was reduced by up to 40%. Added the ability to manipulate Model node transformations via CZML and the Entity API. See the new Sandcastle example:...

Read More

News

NORAD Tracking Santa with Cesium

Cesium is once again part of the NORAD Tracks Santa team, helping track Santa on his Christmas Eve trip around the globe. You can keep up-to-date on Santa’s current location at www.noradsanta.org. Many of the updates to Cesium over this past year will make the Santa tracking experience better than ever. The screenshots below are based on historical data, as...

Read More

WebGL

Terrain Quantization

In Cesium 1.17, which will be released on January 4, 2016, we have reduced the amount of GPU and CPU memory used by terrain. The overall amount of CPU memory used has been reduced by up to 40%. Once a mesh is created for the quantized mesh or height map terrain data, it is uploaded to the GPU for rendering,...

Read More

News

Cesium Now Officially Available on npm!

Over the past year, a lot of people have started using npm for front-end dependency management, so we thought it was time Cesium officially provided it as an option for our community. Starting with 1.16, which was released December 1, we’ve made Cesium available as an npm module. Getting the latest release of Cesium is now as easy as running...

Read More

News

Welcome to the new CesiumJS.org

Welcome to the new CesiumJS.org! We’ll be the first to admit that our old website was due for a makeover. We’ve had the same one since Cesium started in 2012, and while it’s served us well over the years, it was time for some major renovations. Along with a new look and feel, the new site features a more responsive...

Read More

News

Cesium Version 1.16 Released

We are pleased to announce the release of Cesium 1.16. Here are the highlights: Improved terrain performance by up to 35% by adding fog. See the technical post about it at Graphics Tech in Cesium - Fog. Added terrain exaggeration. Added support for incrementally loading a glTF model’s textures. This allows the model to be visible as soon as possible...

Read More

WebGL

Graphics Tech in Cesium - Fog

We recently added fog to Cesium, which will be in the 1.16 release on December 1. Fog is a graphics technique for fading out distant geometry. Early games introduced fog to hide artifacts of geometry rendered in the distance. Even after it was no longer needed, games continued to support fog because it adds realism to the scene and reduces...

Read More

News

Cesium Version 1.15 Released

We are pleased to announce the release of Cesium 1.15. Highlights include: Support for glTF 1.0 and the KHR_binary_glTF and KHR_materials_common extensions. Also, updated the online model converter to output glTF 1.0. Decreased GPU memory usage in BillboardCollection and LabelCollection by using WebGL instancing. New CZML examples thanks to Tiff Lu and Adam Cole from the University of Pennsylvania. For...

Read More

News

Contribute to FOSS4G NA 2016

The FOSS4G (Free and Open Source Software for Geospatial) conferences mean a lot to us. We were introduced to the community at FOSS4G NA 2012 in Washington, D.C., just a few months before AGI released Cesium as open-source. The conference played a major role in accelerating this initial release. Since then, we have sponsored and presented at every FOSS4G conference...

Read More

WebGL

Graphics Tech in Cesium - Billboard Instancing

We recently added WebGL instancing to Cesium. Instancing is an optimization technique that enables you to render a model multiple times with a single draw call. The definitive use case for Cesium is rendering repeating elements such as trees, vehicles, and satellites in an efficient manner. Since many others have already covered this topic (TojiCode), I’m going to focus on...

Read More

Google Earth Development

CloudAhoy Migration to Cesium

This is a guest post by Andrew Simpson of CloudAhoy about their transition from Google Earth to Cesium. For more info on moving from the GE plugin to Cesium, see the tutorial series. - Sarah CloudAhoy is a web application for pilots to debrief their flights. During the flight we capture GPS and other data via the user’s iPhone, iPad,...

Read More

Events

Poconos Code Sprint Trip Report

The Cesium Fall Code Sprint, an event of intensive, multi-day, collaborative coding and team building, took place October 12-18. We left our usual home at AGI in Exton and rented a house in Lake Harmony in the Pocono Mountains in Eastern Pennsylvania. We got to experience the feeling of autumn in the mountains with its cool days, colorful leaves, and...

Read More

Events

Grace Hopper Trip Report

The 2015 Grace Hopper Celebration (GHC) of Women in Computing was held at the George R. Brown Convention Center in Houston, TX, from Wednesday, October 14, to Friday, October 16. Produced by the Anita Borg Institute (ABI) and presented in partnership with the Association of Computing Machinery (ACM), it is the world's largest technical conference for women in computing and...

Read More

Events

JS.Geo Trip Report

On October 8 we attended JS.Geo. The conference brought together a community of those interested in visualization, analysis, and cartography using JavaScript technologies at the University City Science Center in Philadelphia. This day-long event spotlighted presentations by 26 speakers in total, both scheduled and improvisational. This was our first time attending a conference and our first exposure to the geospatial...

Read More

News

DigitalGlobe's New Cesium-Compatible Maps API

DigitalGlobe’s high resolution imagery, collected by their own satellites, covers the entire earth, with resolutions as high as 30 cm/pixel in some regions. Recently DigitalGlobe released the Maps API product, making it easy for developers to access DigitalGlobe’s image catalog and to integrate that imagery directly into their own applications. Their announcement includes a demo. We’ve tried out the API...

Read More

Development

Hosting Cesium Sandcastle with GitHub Pages

In creating a staging site for our work on adding CZML examples to Sandcastle, Adam and I have come across some best practices for hosting Sandcastle using GitHub Pages. Hopefully, this information can prove useful to others in the Cesium community. Set up GitHub Pages. GitHub Pages supports user sites hosted at http://username.github.io, or project sites hosted at http://username.github.io/repository, where...

Read More

News

Red Bull X-Alps in Cesium

Cesium recently teamed up with Red Bull and Doarama for one of its wildest visualizations yet. The annual Red Bull X-Alps is an intense, multi-day hiking and paragliding race across the Alps. The race course covers about 1,000 km by straight line, though the athletes’ path takes them much farther than that. Fans can follow the race online, seeing the...

Read More

Google Earth Development

Geo-Animate - Moving from Google Earth to Cesium

This is a guest post by Erik Hellstedt, creator of Geo-Animate, about his transition from Google Earth to Cesium. For more info on moving from the GE plugin to Cesium, see the tutorial series. - Sarah I love maps and I love history. Geo-Animate, a site for tinkering with maps and exploring history, began as a hobby. I started out...

Read More

News

Cesium Version 1.14 Released

We are pleased to announce the release of Cesium 1.14. Highlights include: Provided a workaround for Safari 9 where WebGL constants can’t be accessed through WebGLRenderingContext. Added a workaround for Chrome 45, where the first character in a label with a small font size would not appear. #3011 Fixed issues causing the terrain and sky to disappear when the camera...

Read More

Events

AGI Featuring Cesium in its First International Users Conference

This is a guest post by Melissa Honaker, a Systems Engineer at AGI, who is co-organizing the AGI International Users Conference. - Sarah AGI is holding its first International Users Conference in Singapore 7-8 October 2015, and we’ve dedicated an entire track to Cesium. Come hear from other Cesium users from all over the globe and get a deep dive...

Read More

News

Collaboration with University of Pennsylvania

We are happy to have two students from the University of Pennsylvania contributing to Cesium this fall. Tiff Lu and Adam Cole are both in Dr. Chris Murphy’s Open-Source Software Development course, CIS 399. In the course students learn about open source software development while simultaneously working on an existing open source project: in this case, Cesium. As their industry...

Read More

News

Katherina Lim joins the Cesium team

Katherina Lim has joined the Cesium team as a six month co-op from Drexel University, where she is a 3rd year computer science student with a minor in interactive digital media. Kat will largely be working behind the scenes, but expect to see some pull requests into Cesium as well. Learn more about Kat at her LinkedIn page.

Read More

News

Gabrielle Getz joins the Cesium team

Gabrielle Getz has joined the Cesium team as a six month co-op from Drexel University, where she is a 4th year computer science student with a minor in digital media. Gabby will be putting both of her specialties to good use as she sets out to redesign the Cesium website. This is actually Gabby’s second Cesium-related job, as she spent...

Read More

WebGL

Graphics Tech in Cesium - Compute Pass

Cesium is designed to take advantage of GPU hardware. In most cases this means using WebGL to render 3D objects onto the screen. While WebGL is primarily a graphics library, it can be utilized to do more general computing tasks. This concept is called GPGPU, or General-Purpose computing on Graphics Processing Units. GPGPU is also known as GPU computing. The...

Read More

News

Cesium Version 1.13 Released

We are pleased to announce the release of Cesium 1.13. Highlights include: Improved Cesium compatibility on mobile GPUs, such as the Mali-400MP. Support for GroundPrimitive which works much like Primitive but drapes geometry over terrain. Support for z-ordering of GroundPrimitive instances via Scene.groundPrimitives. For more details and the full list of changes, see the change log. Several GroundPrimitives draped over...

Read More

News

Sean Lilley joins the Cesium team

Sean Lilley has joined the Cesium team as a 3D software developer. He will improve Cesium’s graphics engine and help create the 3D Tiles spec. Sean graduated from the University of Pennsylvania, where we met in my GPU Programming and Architecture course, and later worked together on voxel rendering. While at Penn, Sean interned at Electronic Arts and AMD. His...

Read More

Events

SIGGRAPH 2015 Trip Report

AGI's entire Cesium team had the joy of attending SIGGRAPH, the annual computer graphics conference. Our trip kicked off with a night out with many members of the WebGL Community, including folks from Three.js, Sketchfab, Autodesk, NVIDIA, Google, and Khronos. We owe a huge thanks to Eric Haines for co-organizing this. Follow all these awesome people on Twitter. For the...

Read More

News

Sarah Chow joins the Cesium team

Sarah Chow has joined the Cesium team as a freelance editor, with special focus on polishing the Cesium Blog and our Demos and Showcases. A graduate of Brigham Young University with an MA in English, Sarah has 5 years of experience in publishing computer graphics books at A K Peters and CRC Press, where she worked as an acquisition editor....

Read More

News Development

Introducing 3D Tiles

Cesium is the 3D platform for visualizing globes, from every satellite in space to every building in Manhattan to every crater on Mars. To achieve this Digital Earth vision of connecting the world’s geospatial data, we’re excited to introduce our biggest initiative since Cesium itself: 3D Tiles. 3D Tiles are an open specification for streaming massive heterogeneous 3D geospatial datasets....

Read More

WebGL

Fast Hierarchical Culling

As part of adding streaming 3D buildings to Cesium, we implemented some interesting view frustum culling optimizations for bounding volume hierarchies (BVHs). In particular, we implemented plane masking as described by Sýkora & Jelínek in Efficient View Frustum Culling (Section 2.5). In this article, we explain the algorithm, including pseudocode, and share performance results. Overview Generally, when frustum culling nodes...

Read More

News

Cesium Version 1.12 Released

We are pleased to announce the release of Cesium 1.12, featuring a new imagery provider for Mapbox tiles. < > Mapbox Streets and Satellite Imagery on Cesium's World Terrain Highlights include: Added MapboxImageryProvider to load imagery from Mapbox. To use Mapbox imagery, you simply need to provide the MapboxImageryProvider with a mapId and an accessToken. We also added the mapbox.satellite,...

Read More

Events

WebGL Sessions at SIGGRAPH 2015

SIGGRAPH is coming up soon so we’re busy planning our schedule. Here’s the WebGL events the Cesium team is looking forward to. Saturday WebGL Drink    8 pm, Hotel Figueroa Join the Cesium team, WebGL Insights contributors, Eric Haines, me, and others to talk WebGL (cash bar). This is not an official SIGGRAPH event, but we promise we will be...

Read More

Development

Full control of SVG elements in Cesium billboards

This is a guest post by Yonatan Kra of BIKS Intelligence Solutions originally posted on BIKS Blog. BIKS initiates, designs, and develops complex web applications for big data analytics and information & knowledge extraction. Cesium billboards are an easy way to mark a point on the globe with an image. For example: viewer.entities.add({ position: position, billboard: { image: svgUrl }...

Read More

Events

Cesium BOF at SIGGRAPH 2015

You are invited to the annual Cesium BOF at SIGGRAPH to learn about the latest Cesium development and community news. This is the Cesium event of the year! There will be Cesium swag and WebGL Insights giveaways. Virtual Globes Using WebGL and Cesium Tuesday, August 11, 2015, 10:30 am - 12:00 pm Los Angeles Convention Center Room 512 Introduction and...

Read More

News

Cesium Version 1.11 Released

We are pleased to announce the release of Cesium 1.11. This is a significant release with camera, terrain, and imagery improvements, and bug fixes. Highlights include: Camera Improved camera flights. Take them for a spin in Sandcastle. The camera now zooms to the point under the mouse cursor, instead of the center of the canvas. Terrain and Imagery Improved terrain...

Read More

News

Canary Wharf in 3D

We’re happy to release a new demo of the upcoming streaming 3D buildings feature in Cesium: Canary Wharf, London. Canary Wharf with CyberCity 3D buildings and MapBox Streets base layer. In addition to the features in the recent Washington, DC and Cambridge demos, the buildings in Canary Wharf are colored by height as shown above. Some choice views include: One...

Read More

WebGL

Terrain Culling with Oriented Bounding Boxes

Cesium 1.11 will include network and rendering performance improvements for terrain and imagery. Previously, Cesium used bounding spheres around terrain tiles for view frustum culling to avoid processing tiles out of view. In Cesium 1.11, we added support for culling tiles using arbitrarily-oriented bounding boxes. For a quick comparison, this GIF shows both types of bounding volumes for a tile...

Read More

News

Washington, DC in 3D

On Monday, we released a demo of the City of Cambridge with 20,000 buildings. Today, we're excited to release a demo of Washington, DC with 135,000 structures: Dupont Circle. This demo uses several datasets: Over 135,000 measurement-quality structures with rooftops from CyberCity 3D. Zoning, traffic cameras, and metro lines open-data layers from DC.Gov. Base layer map with roads and labels...

Read More

News

Cambridge in 3D

In April, we announced plans for 3D buildings in Cesium. Today, we're happy to share a demo of the City of Cambridge: Harvard Yard in Cesium. This demo uses several datasets: Over 20,000 measurement-quality buildings with rooftops from CyberCity 3D. Zoning, trees, and catch basin layers from the Cambridge GIS department. Base layer map with roads and labels from Bing...

Read More

Development

GSoC Sandcastle Project Overview

This is a guest post by Aditya Raisinghani. He is a student working with the Cesium team remotely from India as part of Google Summer of Code 2015. -Mike LP Hi everyone, My name is Aditya Raisinghani and I’m a Computer Science undergrad at BITS Pilani, India. This summer I’ll be working with the Cesium community to refactor the Cesium...

Read More

News

Cesium Version 1.10 Released

We are pleased to announce the release of Cesium 1.10. Highlights include: Added view query parameter to the CesiumViewer app, which sets the initial camera position using longitude, latitude, height, heading, pitch and roll. For example: http://cesiumjs.org/Cesium/Build/Apps/CesiumViewer/index.html?view=-75.0,40.0,300.0,9.0,-13.0,3.0 Added Billboard.heightReference and Label.heightReference to clamp billboards and labels to terrain. Added support for the CESIUM_binary_glTF extension for loading binary blobs of glTF...

Read More

Development

Faster 3D Models with Binary glTF

Update: This initial work on Binary glTF has led to the KHR_binary_glTF extension, which should be used instead of CESIUM_binary_glTF. Starting with Cesium 1.10, the new Binary glTF extension makes 3D models 10-30% faster to load, especially models with a lot of geometry. To use it, select the Binary glTF option in the Cesium model converter, which will return a...

Read More

News

GSoC Developer Profile - Ayush Khandelwal

I’d like to once again welcome Ayush Khandelwal to the Cesium community for Google Summer of Code 2015! Ayush will be implementing support for the Geography Markup Language (GML) Simple Features Profile (SFP) in Cesium. GML SFP is a common way of representing geospatial vector features like points, lines, and polygons, plus accompanying metadata. In addition to being useful in...

Read More

News

GSoC Developer Profile - Aditya Raisinghani

Aditya Raisinghani is completing his final year at Birla Institute of Technology & Science Pilani, India where he has majored in Computer Science. He’s shown strong interest in geospatial applications and has actively sought out experience with a wide breadth of web technologies. Aditya’s project for the summer is to build a new Sandcastle web application. The key features being:...

Read More

News

GSoC Developer Profile - Abhishek Potnis

This is a guest post by Mike McGann, lead developer for NASA Worldview. - Mike LP Abhishek Potnis is a graduate student at the Indian Institute of Technology, Bombay and is focusing his research efforts on ray tracing based optical canopy reflectance modeling and visualization using high performance computing. He is also a passionate web developer, a member of the...

Read More

News

GSoC Developer Profile - Andre Nunes

We are happy to once again have André Nunes joining the Cesium team as part of Google Summer of Code (GSoC) 2015. If you’ve been a long time Cesium user, you may remember André from his participation in GSoC 2013, where he did an awesome job working on initial KML support. Building on his previous experience, Andre will tackle native...

Read More

News

Kai Ninomiya joins the Cesium team

Kai Ninomiya has joined the Cesium team at AGI for the summer. Kai is a computer science and computer graphics student at the University of Pennsylvania, where he developed a massively parallel path tracer in CUDA and a mesh fracturing algorithm in WebCL. Last summer, Kai worked on VMWare’s OpenGL implementation. In his spare time, he writes ray tracers in...

Read More

WebGL

Graphics Tech in Cesium - The Graphics Stack

Cesium resembles a general graphics engine, but as we move up the layers of abstraction in Cesium, classes become more specific to Cesium’s problem domain: virtual globes. Here, we tour the full low-level Cesium graphics stack and make comparisons to graphics and game engines. As described before, the lowest level of the stack is the Renderer, which is a WebGL...

Read More

WebGL

Graphics Tech in Cesium - Vertex Compression

A common practice in computer graphics is to pack and compress vertex attributes. It reduces the memory footprint, time to transfer data across the bus from the CPU to the GPU, and GPU memory bandwidth at the cost of extra instructions in the vertex shader. Another benefit may be that there are more attributes than the maximum number of vertex...

Read More

WebGL

Graphics Tech in Cesium - Renderer Architecture

Cesium is built on a custom WebGL engine - the Renderer - that we started developing in March 2011 when the WebGL 1.0 spec was released. I consider this a 4th generation renderer because it is based on my experience developing the OpenGlobe Renderer, which Kevin Ring and I used in our virtual globe book [Cozzi11]. That, in turn, was...

Read More

WebGL

Graphics Tech in Cesium - Rendering a Frame

This article traces through Cesium’s Scene.render to explain how Cesium 1.9 renders a frame using its WebGL renderer. Put a breakpoint in Scene.render, run a Cesium app, and follow along. Given Cesium’s focus on visualizing geospatial content, scenes with many different light sources are not common so Cesium uses a traditional forward-shading pipeline. Cesium’s pipeline is unique because it uses...

Read More

Development

New KML Examples

As many of you know, Cesium has supported KML since Version 1.7. It’s been a great success and we’ve been hearing more and more that developers are migrating to Cesium so they can retire their Google Earth applications. To assist in this process, we added some KML examples to our Cesium for Google Earth Developers website. There are now over...

Read More

News

Cesium's New Developer Relations

Hi Everyone, I’m Michael Lodge-Paolini, aka Mike LP and last week I joined Cesium’s core team at AGI as Developer Relations. What that means for all of you is that you now have a point person on Cesium’s core team whose primary responsibility is to get to know you and understand how you use Cesium. I’m going to be active...

Read More

News

Cesium Version 1.9 Released

We are pleased to announce the release of Cesium 1.9. This is mostly a bug fix release on the way to what is shaping up to be a significant 1.10 release. Highlights include: Entity material properties and Material uniform values can now take a canvas element in addition to an image or url. #2667 Fixed a bug which caused Entity.viewFrom...

Read More

News

Google Summer of Code 2015

We are pleased to announce that the Cesium Community will mentor four Google Summer of Code projects. These projects will contribute to core Cesium as well as the ecosystem of examples and demos. Congratulations to the students and mentors! We look forward to your contributions. The projects are: NASA’s Data Curtains from Space Student: Abhishek Potnis, Indian Institute of Technology...

Read More

News Development

3D Buildings in Cesium

This summer, we are rolling out 3D buildings in Cesium with data provided to the Cesium community by CyberCity 3D. This includes 130 km^2 of measurement-quality building geometry with rooftops. In addition, some buildings will be textured. For a preview, check out Seattle in Cesium: Click on individual buildings and zones to see related fields. Turn on and off the...

Read More

Development

Quadtree Cheatsheet

In geospatial apps, quadtrees are widely used for streaming imagery, terrain, vectors, and other data. Here’s a cheatsheet for some common operations for a complete quadtree (all leaf tiles are at the same level). We use the term tile, instead of node, since tile is popular in the geospatial world, and use the term level to define the zero-based depth/scale/zoom-level/z...

Read More

News

Cesium Version 1.8 Released

We are pleased to announce the release of Cesium 1.8. Highlights include: Added a new Sandcastle demo, Interpolation, which illustrates time-dynamic position interpolation options and uses the new VelocityOrientationProperty to orient an aircraft in flight. Added support for the KML visibility element. Added Entity.show, a boolean for hiding or showing an entity and its children. Deprecated the smallterrain tileset. It...

Read More

News

EclipseTracks - Interactive Solar Eclipses with Cesium

This is a guest post by Christopher Clark, creator of EclipseTracks.org, who describes the app and its CZML toolchain. - Patrick This Friday the only total solar eclipse of 2015 will cut between the U.K and Iceland on its way to the north pole. Solar eclipses occur about once every 18 months but their planet-wide nature means any one place...

Read More

News

Cesium Version 1.7.1 Released

We are pleased to announce that Cesium version 1.7.1 is now available for download. This is a patch release that addresses a few specific issues found in 1.7. Below is the complete set of changes. Fixed a crash in InfoBox that would occur when attempting to display plain text. Fixed a crash when loading KML features that have no description...

Read More

News

Cesium Version 1.7 Released

We are pleased to announce that Cesium version 1.7 is now available for download. Here are just a few of the highlights from the release: Added initial support for KML 2.2 via KmlDataSource. Check out the new Sandcastle Demo and the reference documentation for more details. Added support for rendering a water effect on Quantized-Mesh terrain tiles. Added camera-terrain collision...

Read More

News Development

Water World

The Cesium API supports several streaming terrain providers, enabling global 3D terrain visualization in just a few simple lines of code. Two of Cesium’s publicly available terrain tilesets, the STK World Terrain and smallterrain, are produced and maintained by Analytical Graphics Inc (AGI), the founders and core maintainers of Cesium. Previously, we could use the smallterrain tileset for water effects,...

Read More

News Development

New plugin using CartoDB maps in Cesium

This is a guest post by Andrew Hill, Chief Science Officer at CartoDB. - Patrick Putting beautiful and dynamic maps onto a 3D globe has never been easier. Using a little JavaScript, you can now put your favorite CartoDB visualization on a 3D globe. The awesome open source JavaScript API Cesium, authored by AGI, renders 3D maps in the browser...

Read More

Events

Cesium at NCGIS2015

NCGIS is the largest state GIS conference in the US. We were happy to be invited to speak about Cesium. Join us next Thursday, February 26, in Raleigh, NC for our talk: The Rise of 3D GIS on the Web by Patrick Cozzi Abstract: With the introduction of WebGL and the wide availability of fast GPUs on desktop and mobile,...

Read More

Google Earth Development

Cesium for Google Earth Developers, Part II

We’ve moved the content of this tutorial to the new documentation section of the site, here.

Read More

Google Earth Development

Cesium for Google Earth Developers, Part I

We’ve moved the content of this tutorial to the new documentation section of the site, here.

Read More

Events

Cesium at FOSS4G NA 2015

Patrick Cozzi and I will be at the FOSS4G North America 2015 conference in San Francisco from March 8th to the 12th to talk about Cesium. There are two Cesium-related talks this year. Both take place on Web Mapping Day, Thursday, March 12, and are back-to-back in the same room, Regency B, making it easy to attend both. * 1:45pm...

Read More

Google Earth Development

Cycling the Alps migrates to Cesium

This is a guest post by Dennis Wegewijs, creator of Cycling the Alps, who shares his experience moving from the Google Earth plugin to Cesium. - Patrick With Cycling the Alps, you can explore the routes of all cycling climbs in the Alps mountain range with many different visual features. One of these features was a Google Earth fly over...

Read More

Development

Visualizing Spatial Data

We’ve moved the content of this tutorial to the new documentation section of the site, here.

Read More

News

Cesium Version 1.6 Released

We are pleased to announce that Cesium version 1.6 is now available for download. This is our largest release since 1.0. Here are just a few of the many highlights: Fixed an issue with order independent translucency that caused flickering and rendering artifacts on many video cards, particularly Intel GPUs. If you were previously disabling order independent translucency, it should...

Read More

Google Earth Development

Migrating from Earth to Cesium

This is a guest post by Greg Angevine, Founder of Cube Cities Inc.. His company has used the Google Earth plugin for years and has recently built impressive work with Cesium (like this). - Patrick Web developers who are evaluating alternatives to the Google Earth API should look to Cesium for ease of use, impressive visualization capability and broad compatibility...

Read More

What is it like to interview with the Cesium team at AGI?

Given all the excitement around Cesium, AGI has multiple technical openings on the Cesium team. I wanted to give some insight into the interview process. Code Portfolio We don't believe in brainteasers or traditional behavioral interviews. We believe in code. We'll want to see your code portfolio, e.g., perhaps your GitHub profile, before the interview that shows off all the...

Read More

News

Cesium Version 1.5 Released

Cesium version 1.5 is now available for download. Highlights include: Improved GeoJSON, TopoJSON, and general polygon loading performance. Added caching to Model to save memory and improve loading speed when several models with the same url are created. Thanks to Sergio Flores from Inovaworks for his support. Improved the quality of font outlines. Model caching. For a full list of...

Read More

Development

glTF Tips for Artists

This is a guest post by Branden Coker, an artist from AGI with many things to his credit, including the glTF model for NORAD Tracks Santa. Special thanks to 3dben for Blender and 3DS Max tips. - Patrick Cesium uses the web-friendly glTF format for 3D models. Cesium provides an online COLLADA-to-glTF converter that allows us to drag and drop...

Read More

Development

From the real to the virtual world

This is a guest post by Chris Cooper, from NICTA, of Doarama fame. - Patrick A number of Doarama users have expressed interest in augmenting the Cesium WebGL Virtual Globe with custom meshes. For example this might include a 3D model generated from photos captured by a drone. It is now relatively straightforward to capture 3D objects from the real...

Read More

WebGL

WebGL Profiling Tips

Performance is important. Here's our bag of WebGL profiling tips. First, always keep your browser and video-card drivers up-to-date (NVIDIA • AMD). FPS Counters In Chrome, to show an FPS counter, browse to chrome://flags/, check FPS counter, and relaunch. In Firefox, browse to about:config and enable layers.acceleration.draw-fps. (Alternatively, in Cesium, add the stats=true query parameter, e.g., http://cesiumjs.org/Cesium/Build/Apps/CesiumViewer/?stats=true). Running above 60...

Read More

News

Cesium Version 1.4 Released

We are pleased to announce that Cesium version 1.4 is now available for download. Some highlights of this release include: Added support for touch events on Internet Explorer 11 using the Pointer Events API. Added geometry outline width support to the DataSource layer. Improved GeoJSON loading performance. Improved point visualization performance for all DataSources. Other recent news and postings: Patrick...

Read More

News

OpenLayers 3 Adds Cesium

When we first started developing Cesium at AGI, we learned that many Cesium developers were already using OpenLayers. For example, over two years ago, Raytheon developed an OpenLayers 2 adapter for Cesium to aid in adding Cesium to Vega. Likewise, the OpenLayers developers saw significant interest in 3D and Cesium in particular so a goal of OpenLayers 3 was to...

Read More

Events

Upcoming Cesium Talks in Boston

This week, we are hitting the road and heading to one of our favorite cities, Boston. We're visiting the graphics labs at MIT and Harvard, the Center for Geographic Analysis at Harvard, and our friends at Heuristic Labs. We'll post slides for our talks when we are back in town. In the meantime, here are the abstracts. Update: the slides...

Read More

Development

Developing Cesium Applications in Java with Cesium-GWT

This is a guest post by Rich Kadel of Harmonia Holdings Group, LLC describing Cesium-GWT. -jep Maps are an important tool in the toolbox, and Cesium provides the best combination of cross platform compatibility, end-user accessibility (via web delivery), and powerful feature capabilities compared with the plug-in-based alternatives such as Google Earth or NASA WorldWind. JavaScript has evolved into a...

Read More

News

Cesium Version 1.3 Released

We are pleased to announce that Cesium version 1.3 is now available for download. While this is mostly a bugfix release, there were some minor enhancements: Added support to the CesiumTerrainProvider for terrain tiles with more than 64K vertices, which is common for sub-meter terrain. Added Primitive.compressVertices. When true (default), geometry vertices are compressed to save GPU memory. Reduced the...

Read More

News

Cesium is growing and AGI is hiring

Cesium is growing fast. The forum is increasingly busy. Lots of folks are presenting about Cesium at conferences (besides us!). Developers are building Cesium apps in industries that we didn't even realize would benefit from Cesium. Just about every day, I personally get an email from someone new moving to Cesium. AGI, the company who started Cesium, is excited by...

Read More

Google Earth Development

youbeQ - Moving from Google Earth to Cesium

This is a guest post by André Santos on his experience porting the awesome youbeQ app from the Google Earth Plugin to Cesium. For more info on moving from the GE plugin to Cesium, see the tutorial series. - Patrick youbeQ first appeared at the end of 2011, we wanted to build a 3D platform where people could explore the...

Read More

Google Earth Development

Cesium for Google Earth Developers

We updated this tutorial and moved it here.

Read More

Development

World Terrain Lighting

Analytical Graphics, Inc (AGI) is proud to announce that the public STK World Terrain dataset has been updated! This significant update follows the release of the STK Terrain Server v1.0 and includes a number of new features and terrain improvements. You may have noticed back in Cesium 1.0 that we added extensions to the Quantized-Mesh 1.0 format and provided implementation...

Read More

News

Cesium Version 1.2 Released

We are pleased to announce that Cesium version 1.2 is now available for download. Highlights of the 1.2 release include: Added support for the GeoJSON simplestyle specification. (Sandcastle example) Added GeoJsonDataSource.fromUrl to make it easy to add a data source in less code. Added PinBuilder class for easy creation of map pins. (Sandcastle example) Added Color.brighten and Color.darken to make...

Read More

Events

Cesium at FOSS4G 2014

Josh Poley and I will be at the FOSS4G conference next week to talk about Cesium as part of the ecosystem of open-source geospatial software. AGI was awesome to sponsor the conference so we have a booth in the Exhibition Hall with Cesium demos and new Cesium giveaways! Here's the full Cesium-related schedule: Tuesday, September 9. 2:45-3:15 PM: I'm giving...

Read More

News

Cesium Version 1.1 Released

We are pleased to announce that Cesium version 1.1 is now available for download. Highlights of the 1.1 release include: Support for WMTS imagery via WebMapTileServiceImageryProvider. Thanks goes out to Gilles Cébélieu for his first contribution. Added an optional pickFeatures function to the ImageryProvider interface. With supporting imagery providers, such as WebMapServiceImageryProvider, it can be used to determine the rasterized...

Read More

Events

WebGL Sessions at SIGGRAPH 2014

SIGGRAPH 2014 is shaping up to be a great conference for WebGL developers. Here are the highlights. Sunday ACM SIGGRAPH Cartographic Visualization BOF 12:30-2 PM, East Building Room 8 This BOF is organized by Theresa-Marie Rhyne, who will give a talk on applying color theory to geographic visualization. On the WebGL front, Alex Wood is giving a talk on our...

Read More

News

Cesium Version 1.0 Released

I am pleased to announce that Cesium version 1.0 is now available for download. For those readers who may be new to Cesium, Cesium is a JavaScript library for creating 3D globes and 2D maps in a web browser, using WebGL for hardware-accelerated graphics, and is cross-platform, cross-browser, and requires no browser plugin. For more information about Cesium, see our...

Read More

Milestones Leading to Cesium 1.0

As we get close to Cesium 1.0, let's take a quick tour of the 3+ year journey that brought us here. March 2011 - WebGL 1.0: At the Game Developers Conference, Khronos released the WebGL 1.0 spec. This brought plugin-free hardware-accelerated 3D graphics to modern web browsers, making Cesium possible. March 2011 - First commit: Cesium was started by Analytical...

Read More

Events

Cesium at SIGGRAPH 2014

Developers from the Cesium team are heading to the SIGGRAPH conference again this year. On Tuesday, August 12, we are hosting the “Virtual Globes Using WebGL and Cesium” BOF (informal meeting) from 11am-12pm at the Vancouver Convention Centre, East Building, Room 9. This will have a brief introduction to Cesium, the latest news, awesome demos from AGI, NICTA, and Camptocamp,...

Read More

News

Cesium Version B30 Released

Cesium version b30 is now available for download. Highlights include: Support for Internet Explorer 11.0.9 on desktops. For the best results, use the new IE Developer Channel for development. Improved support for CZML reference properties to reduce file size by better sharing data among objects. In extreme cases, we’ve seen CZML files shrink by 80%. See below for an example....

Read More

News

Cesium Version B29 Released

Cesium version b29 is now available for download. This release is primarily a bugfix release, as well as breaking changes as we work towards stabilizing the API for a 1.0 release. In particular: Improved Internet Explorer 11.0.8 support including workarounds for rendering labels, billboards, and the sun. Many low-level Renderer types have been removed from the public Cesium API. They...

Read More

News

Cesium Version B28 Released

Cesium version b28 is now available for download. Highlights include: Terrain selection in the BaseLayerPicker widget. The new NavigationHelpButton widget with instructions for navigating the globe. The new Model.minimumPixelSize property so models can remain visible when the viewer zooms out. Terrain selection. Navigation instructions. Models can remain visible when zoomed out. For a full list of changes, see the change...

Read More

Development

STK World Terrain

I’m pleased to formally announce a new terrain tileset for use with Cesium and other applications: STK World Terrain! STK World Terrain is a seamless mosaic built from a large and growing set of terrain data. It currently includes 10 meter resolution data for the United States, 30 meter data for Europe and Australia (both added just this week!), and...

Read More

News

Cesium Version B27 Released

Cesium version b27 is now available for download. This version includes order-independent transparency (OIT), a new technique that improves the visual quality of overlapping translucent geometry to make it more clear what is in front. Extruded country boundaries and sensors in b26 (before OIT). Using OIT in b27. Note the differences in the blue sensor on the right near the...

Read More

WebGL

Weighted Blended Order-Independent Transparency

A feature soon to be in Cesium is order independent transparency for improved visual quality of transparent geometry. Previously, we used alpha-blending for transparency. The color of transparent geometry is blended with the background. When drawing more than one transparent object, the geometry needed to be sorted back-to-front to correctly blend the geometry color with the background color. Now we...

Read More

News

Cesium Version B26 Released

Cesium version b26 is now available for download. This is our biggest release in quite some time and includes 4 major new features: Added Model primitive for drawing 3D models using glTF. See the tutorial and Sandcastle example. Model support will continue to evolve as the glTF specification is finalized. See the Models roadmap for more details. DynamicScene now makes...

Read More

Development

Cesium 3D Models Tutorial

We’ve moved the content of this tutorial to the new documentation section of the site, here.

Read More

News

Cesium Version B25 Released

Cesium version b25 is now available for download. This release includes several minor improvements and fixes as we ramp up for a big b26 release. For a full list of changes, see the change log. This past month, we also started plugins, which are libraries that add functionality to Cesium. In addition to a few starter plugins from Analytical Graphics,...

Read More

News

Introducing Cesium Plugins

Today we are rolling out Cesium plugins, which are libraries that integrate with Cesium and add functionality. The initial set of plugins include cesium-leap, by Aviture, which adds navigation using the Leap Motion Controller. Plugins have several benefits: Plugins keep core Cesium as lean as possible, e.g., by avoiding large third-party dependencies in Cesium for non-essential features. An ecosystem of...

Read More

WebGL

A Fast Algorithm for Computing SLERP

Spherical linear interpolation, or SLERP, is widely used in computer graphis to interpolate between rotations represented as quaternions. In Cesium, we use it for camera flights and model animations like the dancing reindeer in NORAD Tracks Santa. When there are many animations in a frame, SLERP often shows up on the profiler. It’s not the top bottleneck, but it’s something...

Read More

News

Cesium Version B24 Released

Cesium version b24 is now available for download. Highlights for this release include: The minified, combined Cesium.js file now omits certain DeveloperError checks, to increase performance and reduce file size. When developing your application, we recommend using the unminified version locally for early error detection, then deploying the minified version to production. Added translateEventTypes, zoomEventTypes, rotateEventTypes, tiltEventTypes, and lookEventTypes properties...

Read More

Development

Building a WebGL Santa with Cesium and glTF

Once again, NORAD's santa tracker is built on our WebGL-based Cesium engine. This year, we added an animated 3D model for Santa and his sled and reindeer using glTF, an emerging open-standard runtime asset format. This article describes the content pipeline and runtime optimizations that will bring the model from artist tools to literally millions of web browsers. The art...

Read More

News

Cesium Version B23 Released

Cesium version b23 is now available for download. Highlights for this release include: Added perPositionHeight option to PolygonGeometry and PolygonOutlineGeometry. Added QuaternionSpline and LinearSpline. Added ObjectOrientedBoundingBox. Renamed our main website from cesium.agi.com to cesiumjs.org. For a full list of changes, see the change log.

Read More

Best of the Cesium Blog - Year One

We started the Cesium blog a year ago as a way to publish Cesium news like releases and conference trip-reports, and tech content like tutorials and implementation details. This birthday post compiles the most prominent articles of the past year. Tech Articles Robust Polyline Rendering with WebGL Drawing polylines with nicely connected line segments and custom shading and width is...

Read More

Development

Geometry and Appearances

We’ve moved the content of this tutorial to the new documentation section of the site, here.

Read More

News

Cesium Version B22 Released

Cesium version b22 is now available for download. Highlights for this release include: Added a Geocoder widget to Cesium Viewer and applications that use the Viewer widget. With this new widget, users can type an address or the name of a landmark and Cesium will zoom to that location. New Geocoder widget. Added a GoogleEarthImageryProvider for accessing imagery on a...

Read More

Events

Apps4Philly Hackathon

A couple weekends ago, a few of us from Analytical Graphics Inc (AGI) took a trip into Center City Philadelphia to participate in the Apps4Philly Civic Hackathon. The Apps4Philly event brought public transportation, civic data enthusiasts and developers together to prototype new applications for Philly’s open-data initiative. There is a great open-data movement in Philadelphia, but there is not a...

Read More

Development

GitHub Pull Request Workflows

All of our code in Cesium is reviewed before being merged into master. Since Cesium is on GitHub, we, of course, use pull requests for code reviews and merging. Other than unit tests and having contributors that strive to be craftsmen, code reviews are the biggest reason for our code quality. We have experimented with the granularity of pull requests...

Read More

News

Cesium Version B21 Released

Cesium version b21 is now available for download. New geometry examples in Sandcastle. Highlights for this release include: Added BingMapsApi.defaultKey. If you use Bing Maps, please replace Cesium’s default key with a key obtained from www.bingmapsportal.com. See this post on the forum for more information. Added several simple geometry examples to Sandcastle for easy copy and paste. Added CorridorOutlineGeometry and...

Read More

News

Cygnus Mission Demo

In previous posts I’ve mentioned that aerospace is a part of my day job. Recently, me and Patrick Cozzi were asked to put together a Cesium demo showcasing the Cygnus spacecraft’s mission to the International Space Station. Here’s a screen shot, but you might as well just run the demo. From a technical standpoint, this demo shows off two in-development...

Read More

News

Cesium Version B20 Released

Cesium version b20 is now available for download. Scaling satellite billboards based on distance from camera. Highlights for this release include: Added Billboard.scaleByDistance and NearFarScalar to control Billboard minimum/maximum scale based on Camera distance to Billboard. Refactored the DynamicScene property system to improve the API. #1080 Improved geometry batching performance by moving work to a web worker. Added an outline...

Read More

News

ESA SOCIS 2013 Students Announced

Last month, we posted that Cesium was one of 23 organizations accepted to particpate in the European Space Agency’s 2013 Summer of Code in Space program. Since then, we received a variety of strong applications from eager students, but were only allowed to choose one. Today, we are happy to announce we have selected to work with Ognjen Bubalo over...

Read More

Events

SIGGRAPH 2013 Trip Report

Several Cesium contributors and users were at SIGGRAPH. Here’s the highlights. Virtual Globes Using WebGL and Cesium BOF SIGGRAPH provides rooms for informal meetings called Birds of a Feather or a BOF. This year we started a new Cesium BOF. About 30 folks attended, which is quite good considering it is new and pretty niche. Checkout the slides. Alex Wood...

Read More

News

Cesium Version B19 Released

Cesium version b19 is now available for download. The Geometry and Appearances demo in Sandcastle Highlights for this release include: Added Geometry and Appearances #911. Added a number of new geometry and primitive types related to the above. Added debugging aids for low-level rendering: DrawCommand.debugShowBoundingVolume and Scene.debugCommandFilter. Added Credit and CreditDisplay for displaying credits on the screen. Improved performance and...

Read More

News

Cesium Accepted to ESA Summer of Code in Space

Cesium was accepted to Summer of Code in Space 2013 - a program run by the European Space Agency that offers eligible students stipends over the summer to write code for space-related open source projects. We see this as a great way to grow the Cesium community and help students gain experience and make an impact. Students interested in working...

Read More

Events

Cesium at SIGGRAPH 2013

SIGGRAPH is July 21-25. We are presenting Cesium in four sessions and going under-the-hood in a course. If you are attending, stop by and say hi. Here’s the full Cesium schedule. Tuesday, July 23 Virtual Globes Using WebGL and Cesium BOF 11am-12pm, Room 203 B This BOF (Birds of a Feather) is an informal meeting about Cesium. Come meet the...

Read More

News

Cesium Version B18 Released

Cesium version b18 is now available for download. A TopoJSON file of all United States counties loaded inside of the new Viewer widget. Highlights for this release include: Improved overall performance of streaming imagery. Added initial support for GeoJSON and TopoJSON. (#890, #906) CesiumViewerWidget has been replaced with a new Viewer widget with mixin architecture. This new widget does not...

Read More

Development

MapBox Tiles in Cesium

MapBox creates really attractive maps. To see their maps in a new compelling way, we put together a quick web app with Cesium to view MapBox maps on our 3D globe with global terrain and water, and the sun, sky, and stars. Check it out in a modern web browser: Once you’re running, click the MapBox icon in the upper...

Read More

News

Cesium Version B17 Released

Cesium version b17 is now available for download. A CZML defined sun vector. Highlights for this release include: Added sun visualization. Added support for CZML defined vectors. Added support for OES_vertex_array_object, which improves rendering performance. Improved horizon culling for terrain rendering. See the blog post for more details. Added a new HomeButton widget for returning to the default view of...

Read More

Events

FOSS4G NA Slides

The slides for our FOSS4G NA talk, Cesium: 3D Maps on the Web, are now online. Here is the pdf. We had a packed house with a lot of folks standing. The slides also contain my notes so they are pretty detailed. In addition to introducing Cesium to the open-source geospatial community, the last part discusses our development tools and...

Read More

News

Welcome, Google Summer of Code Students!

As previously mentioned, Cesium joins 177 open source projects in participating in Google Summer of Code this year. Since this is our first year in the program, we weren’t sure what to expect, but we were excited to receive many excellent proposals from over 40 students around the world, making it very difficult to narrow down to the two project...

Read More

Development

Synchronized HTML5 Video with GPS Data

YouTube is littered with first person helmet camera videos of every kind. In fact a quick search turned up approximately 800,000 videos. They’re great at showing some high-intensity action up close and personal. The problem with helmet cam videos is that they lack the ability to convey any information about the bigger picture. Where exactly was the mountain that the...

Read More

WebGL

Computing the horizon occlusion point

Are you sick of horizon culling yet? Great, me neither! Last time, we explained what horizon culling is all about, and showed a very efficient way to test a point for occlusion by an ellipsoid. The objects we want to test for occlusion are rarely simple points, however. In particular, we’d like to be able to test terrain tiles for...

Read More

News

Cesium Version B16 Released

Cesium version b16 is now available for download. Polylines with materials. Highlights for this release include: Added wide polylines that support materials. Added Grid, PolylineOutline, PolylineGlow, PolylineArrow, and Fade materials. Added Simon1994PlanetaryPosition which more accurately computes the position of the sun and moon. Improved rendering performance by minimizing WebGL state calls. This is the first release where the minified and...

Read More

WebGL

Horizon Culling

In developing virtual globes like Cesium, we need to be able to quickly determine when objects in the scene, like terrain tiles, satellites, buildings, vehicles, etc. are invisible and therefore do not need to be rendered. We do view-frustum culling, of course. But another important type of culling is horizon culling. In the figure above, the green points are visible...

Read More

Events

Cesium at the International Space Apps Challenge

This weekend, several of the core Cesium developers attended the 2013 NASA International Space Apps Challenge in Philadelphia, which was the main stage location for the global event. We joined over 9,000 participants around the world in a weekend hackathon to build open-source solutions to space-oriented challenges. Since Cesium is open-source, it was a perfect opportunity to find a challenge...

Read More

WebGL

Robust Polyline Rendering with WebGL

Rendering with Line Primitives We ran into a few problems when using line primitives (LINES, LINE_STRIP, or LINE_LOOP) to render lines. First, the maximum line width when using ANGLE is 1.0. Second, drawing line primitives with lineWidth (without ANGLE) does not join line segments at a shared vertex: The image below shows lines with the two joins mitered: Finally, our...

Read More

Development

Cesium Up and Running

We’ve moved the content of this tutorial to the new documentation section of the site, here.

Read More

News

Cesium Accepted to Google Summer of Code

Cesium was accepted to Google Summer of Code 2013 - a program run by Google that offers students stipends over the summer to write code for an open-source project. We see this as a great way to grow the Cesium community and help students get experience and make an impact. We have an ideas page with about ten potential projects....

Read More

Events

Cesium FOSS4G NA Talk

Our talk on Cesium was accepted to the Free and Open Source Software for Geospatial North America 2013 conference, FOSS4G NA 2013. Here’s the abstract: Cesium: 3D Maps on the Web With WebGL, it is now possible to have hardware-accelerated 3D maps in a web browser without a plugin. In this talk, we present Cesium, an open-source JavaScript library for...

Read More

News

Cesium Version B15 Released

Cesium version b15 is now available for download. Highlights for this release include: A new function, sampleTerrain, which returns terrain heights for a provided list of Cartographic positions. Handling of the new CZML delete property and a corresponding DynamicObjectCollection.removeObject function. Three new widgets written purely in CSS, HTML, and JavaScript. Unlike some of our past widgets, they don’t require Dojo...

Read More

News

Cesium Version B14 Released

Cesium version b14 is now available for download. Terrain rendering and the new animation widget at the bottom. Highlights for this release include: Added support for global terrain visualization using terrain data from multiple sources. When using the CesiumTerrainProvider, the oceans are also rendered with a fancy animated wave effect. See the Terrain and Water Tutorial for more information. Added...

Read More

Development

Cesium Terrain and Water Tutorial

We’ve moved the content of this tutorial to the new documentation section of the site, here.

Read More

Development

Cesium Camera Tutorial

We’ve moved the content of this tutorial to the new documentation section of the site, here.

Read More

News

Asteroid 2012 DA14 Passage

Outer Space is a large part of my day job, so when I heard that asteroid 2012 DA14 was heading for a fly-by of Earth on February 15th, it seemed like the perfect opportunity for a Cesium demo. I think it turned out rather well. One particularly cool aspect of the asteroid passage is how it looks in Columbus View,...

Read More

News

Cesium Version B13 Released

Cesium version b13 is now available for download. An orbit in ICRF and ellipsoids with rim lighting. Highlights for this release include: CZML and Cesium API support for the International Celestial Reference Frame (ICRF), which is useful for drawing satellite orbits and other objects in space. Improvements for Cesium on Android. See the Mobile Compatibility Page. Ability to dynamically change...

Read More

News

Cesium Version B12a Released

Cesium version b12a has been released and is available for download. We’re releasing this version outside of our normal monthly cycle to address several issues that arose after we shipped b12: Firefox 18 doesn’t properly transfer typed arrays to or from Web Workers. The default Bing Maps API key included in Cesium expired. Other highlights of the release: Colors can...

Read More

Development

Imagery Layers Tutorial

We’ve moved the content of this tutorial to the new documentation section of the site, here.

Read More

News

Cesium Version B12 Released

Cesium version b12 has been released and is available for download. Some highlights of the release: Added pinch-zoom, pinch-twist, and pinch-tilt for touch-enabled browsers (particularly mobile browsers). Improved rendering support on Nexus 4 and Nexus 7 using Firefox. Improved camera flights. Added Sandbox example using NASA’s new Black Marble night imagery. Added JulianDate.toIso8601, which creates an ISO8601 compliant representation of...

Read More

News

Black Marble in Cesium

Yesterday, NASA Earth Observatory released a new, high-resolution view of the Earth at night, dubbed the Black Marble. It was straightforward to turn the approximately 400 megabyte image file into a pyramid of image tiles and display it on an interactive, 3D, Cesium globe. Here’s the end result: NASA Black Marble in Cesium You’ll need a WebGL-capable browser such as...

Read More

News

Cesium Version B11 Released

Cesium version b11 has been released and is available for download. Stars and sky Some highlights of the release: Chris Cooper from NICTA contributed Tile Map Service (TMS) support, see the Imagery Layers Sandcastle example. Improved lighting in Columbus view and on polygons, ellipsoids, and sensors. Fixed atmosphere rendering artifacts and improved Columbus view transition. Fixed jitter artifacts with billboards...

Read More

News

NORAD Tracks Santa Tech Preview

As part of the NORAD Tracks Santa team, Analytical Graphics, Inc. is using Cesium to build a 3D web map for visualizing Santa’s location on December 24th as he makes his way around the globe. See it in action on Christmas Eve at www.noradsanta.org. In this post, I’ll share the tech behind the 3D web map. The locations used in...

Read More

Development

Open Source Development Practices

Cesium is the largest open-source project that I’ve contributed to in a substantial way. This is probably true for all of the current contributors. Many of us have worked together for years - developing APIs and even 3D APIs at that - but Cesium is our first take at a serious open source project. Here I’ll share many of our...

Read More

News

Welcome

As part of the new website, we are rolling out this technical blog on Cesium. The most important word there is technical - this is a blog for developers. We will post about best practices for using Cesium and CZML, Cesium implementation details, WebGL, JavaScript, development practices, etc. This will replace the cesium-announce Google group with more frequent and deeper...

Read More