Topics

Sunday, March 25, 2012

Seas and skies

In the last post I mentioned how my shaders crashed under the new version of Houdini. I'm glad to report that I have re-worked them to work with H12, and in the process deepened my understanding of VEX shader networks. I've also managed to remove the rendering artifacts and shader errors, mainly by not assuming that unconnected inputs will have the correct default values applied. Subsequently, I have also refined various aspects and added new features to my Earth shaders.

The two most significant additions are the simulation of forward scattering in the atmosphere and anisotropy in the specular highlight of the ocean, as seen in the following work-in-progress snapshots:

The atmosphere scatters more light as the Sun gets behind it, an effect attributed to Mie scattering of light by particles in the air

The specular reflection of the Sun is stronger at more glancing angles, a behavior called the Fresnel effect. The shape of the highlight also elongates as the Sun nears the horizon, mimicking how the Sun reflected in the ocean looks during sunsets

Tuesday, March 6, 2012

Progress update

Just last week, Side Effects Software launched Houdini 12 and it's full of cool bells and whistles. I downloaded the Apprentice version and did a quick test with my Earth scene, expecting rendering speed improvements but my shaders just keep crashing the Mantra renderer. More on that in a later post...

Meanwhile, here are the latest updates with NASA photos for comparison. All are Houdini 11 renders with only exposure and gamma adjustments, mild sharpening and no color correction, down sampled to 8-bit JPG from 32-bit EXR renders.

For the more observant, those tiny white dots are a strange rendering artifact which I have yet to figure out how to remove :(
This is a closeup of the above shot. It may not be obvious, but the land, clouds and atmosphere are lit with sunset colors near the terminator
NASA photo

Still in the process of balancing colors, but I'm reaching a point where setting the right exposure alone allows me to match different reference photos without the need for much color correction
NASA photo (Apollo 11)

 
NASA photo (Apollo 11)
  
I drastically reduced the amount of cloud coverage. Remember all my data is based on NASA's BMNG 2005 release, and they have tons of clouds everywhere. I need new data and a new way of implementing atmosphere and clouds ^^;;
NASA photo

 Let's check the baseline I set in September 2011:

1. Accurate proportions - approximated using equatorial and polar radii
2. Axial tilt - this is a no brainer ^^;
3. Terminator reddening - faked
4. Atmospheric scattering - faked
5. Volumetric clouds - faked
6. Displacement mapped topography - done

In addition I've also implemented:

1. Location sensitive direct sunlight and ambient lighting colors (sunset lighting at the terminator)
2. Faked atmospheric refraction of sunlight causing the terminator line to shift back a few degrees
3. Atmosphere with altitude-based density falloff (non-physically based)
4. Specularity for inland rivers and lakes
5. City lights for night exposures

I'm happy with my progress considering I have no shader writing skills and very little Houdini experience prior to taking up this project. Still, it's a long way to go before the closeups can look convincing.