Cesium in 2013 - Visual Quality


Part of our mission is for Cesium to have the best possible visual quality. As a graphics enthusiast, this is particularly dear to me. The biggest improvement we have planned is 3D models (part of the Content discussion).

There are several other important areas that I’d like to see as priorities allow:

  • Terrain Ambient Occlusion - AO makes areas in valleys darker than areas widely exposed to the sun. This significantly improves the overall look.
  • Data-Driven Renderer - The DDR enabled us to add culling (for performance) and multi-frustum rendering (for eliminating z-fighting artifacts) to all primitives, while making rendering code easier to write. However, we have only seen some of the possibilities I’d like to see cube-map generation for reflection and refraction, and a shadow mapping pass. These effects are widely used in games, but not often seen in virtual globes. Let’s change that.
  • Post-Processing Effects - In a hackathon project, we saw what was possible with screen-space post-processing effects. Some of these, namely brightness, contrast, and gamma, have made their way into imagery layers. In 2013, I’d like to see a scriptable post-processing framework for effects like fog, glow, depth of field, and motion blur. Again, these are widely used in games, but rarely seen in virtual globes.
  • Materials and Lighting - The material system if off to a nice start, allowing us to describe the appearance of surfaces. We need materials on polylines and perhaps imagery layers, as well as a flushed out lighting system.
  • Columbus View Architecture - under-the-hood this needs significant cleanup.
    What visual quality improvements are most important to you?



To add another one to the list…

We should experiment with per-fragment surface imagery LOD selection/blending. In other words, when rendering the imagery on a terrain tile, compute the desired level of detail as a continuous function per fragment and use that to blend between the two adjacent imagery levels of detail. This should eliminate the hard line that is visible with many imagery providers, like Bing Maps, that have very different-looking imagery in adjacent LODs.


Ah, yes. Good call. I’m definitively interested in this and curious to see how it looks with labels.