Kevin Ring
Kevin Ring
Principal Software Engineer, CSIRO Data61
kevin@kotachrome.com
LinkedIn profile Google+ profile GitHub profile Facebook profile
Job
At CSIRO Data61, I lead development of TerriaJS, an open source library for web-based geospatial catalog explorers. I also work on all things CesiumJS.
Publications and Talks
Rendering the Whole Wide World on the World Wide Web
Rendering the Whole Wide World on the World Wide Web
Guest lecture in CIS 565: GPU Programming and Architecture, University of Pennsylvania, December 2013.
A detailed look at the implementation of Cesium's terrain engine, as well as the server-side terrain processing needed for efficient rendering.
World-Scale Terrain Rendering
World-Scale Terrain Rendering
Presented in the Rendering Massive Virtual Worlds course at SIGGRAPH 2013, July 2013.
Terrain datasets for massive worlds - especially those that aim to represent the massive world we call Earth - can easily measure in the terabytes. Add in detailed textures for the surface, such as color maps derived from satellite imagery or aerial photography, and it is not at all uncommon to see datasets measured in the hundreds of terabytes. Such datasets are much too large to fit in memory, and even too large to fit on a local system. Working with these datasets requires effective algorithms for selecting the subset of the world we actually want to render, at an appropriate level-of-detail. This is particularly challenging when we need to use off-the-shelf data whenever possible. We discuss how we solved these problems in Cesium, an open source virtual globe that runs inside a web browser without the need for a plugin.
3D Engine Design for Virtual Globes
3D Engine Design for Virtual Globes, Patrick Cozzi and Kevin Ring
Published by A K Peters / CRC Press, June 2011
Topics include:
  • Rendering globes, planet-sized terrain, and vector data
  • Multithread resource management
  • Out-of-core algorithms
  • Shader-based renderer design
Under the Hood of Virtual Globes
Under the Hood of Virtual Globes, Patrick Cozzi and Kevin Ring
Presented at COM.Geo, May 2011
A two and half hour course exploring the internals of virtual globe applications, based on our book above. The slides are available here.
Open Source
Cesium
Cesium
Source available on GitHub
A 3D virtual globe and 2D map for the web, based on WebGL. My main contributions have been in designing the CZML specification and in designing and implementing streaming terrain rendering. Cesium is free for both commercial and non-commercial use under the Apache 2.0 license.
Voodoo Voice
Voodoo Voice
Source available on GitHub
Allows you to control iTunes for Windows with spoken commands such as "begin play," "next song," and "switch to <name of song in play list>."
OpenGlobe
OpenGlobe
Source available on GitHub
The virtual globe engine we developed for our book.
Blogs
I don't have a personal blog, but I contribute to some.
Cesium Blog
Cesium Blog
News, tips, and implementation details of Cesium, the open-source virtual globe for the web.
Virtual Globe and Terrain Rendering
Virtual Globe and Terrain Rendering
We originally intended this blog to focus on real-time rendering for virtual globes, GIS, planets, massive worlds, and terrain. In reality, the topics are much more diverse and include things like SIGGRAPH, technical writing tips, and teaching computer science, for example.
AGI Blogs
AGI Blogs
The official blog of my employer, Analytical Graphics, Inc.
Also, check out this older (and now discontinued) blog focused on one of the main products I work on, Dynamic Geometry Library.
Color scheme courtesy tvr.