I think this can be achieved with shadow mapping or with shadow volumes via a shader. The advantage of shadow mapping is that it is independent of scene geometry while usings shadow volumes, this is a required option. With shadow volumes you'll need a dll were you should create the object's silhouette which helps to locate level geometry in relationship with the shader where it should than create the shadow with a certain volume adapted to the level geometry.
But where there are advantages, there are alos disadvantages. Shadow mapping may not require any information related the scene geometry but it seems to cast out much more pixelised shadows, where as shadow volumes have a moiré effect.

Hope that gave you an overal idea OB But it's off course a nice theory but the practical side is as you've mentioned, far from easy. I'm trying to achieve shadow mapping through a shader with 3dgs because I'm not very familiar when it comes to writing a dll or sort like I'll post a topic which will be related to this one in the 'far' future.

Cheers

Frazzle


Antec® Case
Intel® X58 Chipset
Intel® i7 975 Quad Core
8 GB RAM DDR3
SSD OCZ®-VERTEX2 3.5 x4 ; HD 600 GB
NVIDIA® GeForce GTX 295 Memory 1795GB