Heres a very rough demo I made a couple of years ago, showing realtime
This is old, and parts of the code might be ugly or just plain buggy :)
The demo uses tesselation to calculate the shadows.
I was in the progress of writing a simpler (and much faster) tesselation
than what OpenGL supplies, as the tesselation takes much of the rendering
time, but I never got time for it.
The dark shadows from the internal light is only partially calculated, ie no
shadow is cast on the wall.
And no shadows are calculated from the light in the corner.
The EXE and sourcecode (250KB) for BCB5 can be downloaded from
To navigate and alter settings
Cursor Move around
+/- Sun intensity
L Toggle lights
S Toggle shadows
F Toggle fog
Shift+Cursor Move slowly around
Shift +/- Light intensity
Ctrl+Cursor Head tilt and height
Alt+Cursor Time of day
Alt +/- Texture offset
Hope this is of some interrest