Great job!
For those who are interested in the different shadow techniques, the pros and cons are:
* the opacity map is based on pre-rendered geometry for a certain situation (all shadowing geometry forms a 'box with holes')
-> if that assumption is true, the opacity map is exact, to the degree that the geometry is open and more spread out (the Cub wings for instance) it will gradually fail, for a situation without inside or outside it won't really work that well
* the shadow map is based on an extra pass rendering the geometry in-sim to a texture based on relative sun position
-> short of any optics effects, that always gives the correct shadows
From that we can note:
Opacity mapPros* very fast and framerate friendly
* able to do variable blur shadows, semi-transparent shadows, tinted glass, caustics
* no flickering
Cons * needs extra developer work
* not applicable to all situations
Shadow mapPros* produces always correct shadows
* works 'out of the box'
Cons* can't handle transparency
* costs more performance
* tends to flicker
But... we can have the best of both worlds, since we'll keep the option to run opacity map on a surface (which disables the shadow map for it) - so in situations where the opacity map is applicable, we can use it, and otherwise use the shadow map.