Page 1 of 1

C.1.4.0pre6: eclipse shadow confusion

Posted: 12.11.2004, 01:51
by selden
The OpenGL 2.0 render path in Celestia v1.4.0pre6 has problems when more than 4 light sources are nearby:
It draws the shadowed object completely black when any shadow touches the surface.

One of my favorite star systems is Castor, which constains six stars in three spectrographic doubles. I made a test case which is similar to Castor but with the most distant pair closer than in reality, and with all of the stars and planets in the same plane.

Here's a picture illustrating the problem:

Image

The top half shows the star system.
The bottom left shows a moon casting its shadow on "Planet YY", but turning it entirely black. The bottom right shows "Planet Castor" being illuminated properly, but just about to be blackened. I had "ambient light" set to "low" so that the blackened objects were still visible.

A 100KB Zip file containing the catalogs and an HTML file containing the corresponding URLs can be downloaded from http://www.lepp.cornell.edu/~seb/celestia/images/six_illum.zip
(It's so big because it includes a copy of the picture, too.)

Posted: 12.11.2004, 06:06
by chris
Thanks for the bug report. The problem is that the OpenGL 2.0 path only supports four light sources, but this limit wasn't being enforced everywhere. The fix is now checked in CVS. At some point, I'll implement multipass rendering so that Celestia can handle an arbitrary number of light sources. However, there aren't any realistic configurations that should require accounting for the light from more than four suns, so it's not high priority work. When there are more than four light sources, only the brightest four are considered.

--Chris

Posted: 12.11.2004, 12:17
by selden
Yup. That fixed it.

Thanks!