If you start researching rendering realistic atmospheres for planets, the rabbit hole goes very deep. Having been on this particular dive a few times now, I figured it’s time to actually publish some notes - partly for my own later reference, but hopefully also of use to others.
Isn’t it just great when the GLSL compiler adds unexpected padding between fields in a buffer, and the only way you can tell is that your rendering is broken in weird ways? Having lost a couple of hours to one such bug, I decided I needed a way to quickly catch that sort of error.
A couple of weeks ago I participated in a 48-hour game jam hosted by PlayFab here in Seattle, with fellow procedural planet veteran Alex Peterson, my good friend and composer Leo Langinger, and the fortunate last minute addition of artist Brent Rawls.
When Google VP Vint Cerf warned that increased dependence on technology could lead to a ‘digital dark age’, he merely echoed the concern of everyone involved in the preservation of information in a digital world. While it is expedient to dismiss his claim as sensationalist and/or paranoid, Google’s announcement yesterday that they are closing down the Google Code source code repositories provides an unfortunate echo to his cries.
I have been playing around with distance field rendering, inspired by some of Iñigo Quílez’s work. Along the way I needed to define analytic distance functions for a number of fairly esoteric geometric primitives, among them the logarithmic spiral:
I recently installed the beta of Microsoft Office 2010, and the first thing that struck me is how it performs noticeably worse on my 3.0 GHz quad-core gaming PC, than Office ’98 performed on a now 12-year-old PowerBook G3, powered by a little 250 MHz PPC processor.
You can probably guess the next stage of this anecdote… Office ’98 on that G3 performed ever-so-slightly worse than Office 4.0 on a truly ancient PowerBook 180, which sported a fantastic (for the time) 33 MHz Motorola 68030 CPU.
I just posted a quick youtube video to demonstrate the current state of the planet renderer. This is early development stuff, and the eye candy is minimal, but it should give you some idea of the scope.