- Models can be shadowed by spherical bodies. Eclipse shadows appear on irregular bodies just as they do on spherical bodies. Satellites in low earth orbit will slip in and out of shadow as the orbit over the night side of Earth. Irregular objects will still not cast shadows themselves, however; that's work for the future.
- The specular lighting model uses a local viewer; this slightly improves the appearance of specular highlights. It affects both spheres and models.
- Models can use emissive, specular, and normal maps (emissive maps had been supported before)
- There's a new 'per-pixel specular' mode that greatly improves the appearance of specular highlights, especially on models with sharply curved surfaces or low tesselation. The tradeoff is that it's slower. I haven't decided how this mode should be toggled on and off.
- When per-pixel specular mode is on, specular highlights will be rendered correctly on normal mapped surfaces (prior to these changes, the normal map is disregarded for specular lighting, with the surface modification only affecting diffuse lighting--it's fine for oceans, but not generally correct.)
Here's demonstration of per-pixel specular lighting. This 'glossy Mars' is not meant to present a realistic example, although specular highlights can be very useful for visualization of surface relief. I anticipate that per-pixel specular lighting will be much more useful for meshes of spacecraft; I'm still in the process of creating a good demonstration.
No bump map (basic render path) or specular lighting:
![Image](http://www.shatters.net/~claurel/celestia/mars-flat.jpg)
Bump map, per vertex specular lighting (vertex program path)
![Image](http://www.shatters.net/~claurel/celestia/mars-bump.jpg)
Bump map with per pixel specular (OpenGL 2.0 path); this image also demonstrates that the new rendering mode works with multiple light sources.
![Image](http://www.shatters.net/~claurel/celestia/mars-bump-spec.jpg)
The new effects are only available in the OpenGL 2.0 render path.
--Chris