From: Bram Stolk (
Date: Tue Nov 08 2005 - 14:01:25 CST

John Stone wrote:
> Bram,
> If you're getting all black geometry, it sounds like there's a race
> condition in the CAVE display device with your version of CAVElib.
> Try restarting the program and see if it behaves this way every time or
> if you get correct lighting some of the time. If you get correct lighting
> some of the time, then there's indeed a race condition in the VMD per-wall
> OpenGL initialization with the version of CAVElib you're using. The bad
> news is I don't have a way to solve the problem for you since we don't have
> a CAVE running here currently so I have no way to test. If you want to try
> changing the CaveDisplayDevice.C startup etc to log the sequence of OpenGL
> commands that are being executed, you'll probably find that some OpenGL
> state isn't getting set properly in the slave renderer for one of the eyes.
> Is your CAVE system an active stereo or passive stereo system? From your
> description it sounds like a passive stereo system, but it would be helpful
> to know what the display configuration is so I have some idea what the
> mapping of renderers to projectors/walls is.


It is reliably reproducible, so it does not look like a race.

Also, we have an active stereo CAVE, but we have two projectors per wall,
and the projectors are shuttered. This means that we dont use quad-buffered
stereo, but a non-stereo window per eye, per wall.

I'll have a further look into the code, but my current guess is that
a lightsource is not enabled.

The reason that linesets are drawn OK is probably because lines are
commonly drawn with lighting disabled (not to confuse with a lightsource
that is disabled). Interestingly, if you disable opengl lighting, all geometry
is drawn with lighter colours :-) Lighting only darkens stuff, especially
if no lightsource is present.

More info later,