<still catching...>
I'm not quite ready to dive into this *very* tasty thread (busy with work :-/ ), but I'd like to mention a couple things to consider. Well, one thing to consider and one response to my name being dropped ;-)
@ MD: While I truly to want to develop procedural, chaotic world generation algos, I'm also very fond of *exceptions*. My original geometry engine proposal (to EA) in the 80's was a combination of DEM for world-mapping and 3D mesh exceptions with persistent deformable states. In regards to NwN, my plan (mentioned a few years ago) was to build areas procedurally *except* for special tilesets that would be constructed monolithically (like OTR's Megatron) and be both single purpose and highly optimized. (My descriptions before were considerably less specific and considerably more ignorant, but still on board with this idea.)
And that leads me to an item for consideration; Batching. That's what it's called in the jME engine, at any rate. This is done both at model creation and at runtime, sometimes even during the graphics update loop. Some of the most impressive terrain systems they are working on are actually calculating the geometry at runtime and batching mesh on the fly.
Joining Heightmaps thread
Marching cubes, triplanar mapping... thread and Awesome Video
(Edit: Had the wrong link on the Awesome video :-P Fixed now)
While the runtime option isn't available to us, an automated utility for examining an area, mod that could ultimately pull all the static mesh and textures (tiles *and * placeables) to produce optimized single use tilesets... that's intriguing :-) If we could still design and *build* with modular bits and pieces and then have a utility go through and optimize/compile as much as practical (starting only with tiles/groups/sets)... that could be amazing :-)
As for shadows in NwN... mostly I feel, like others, they just aren't worth the hassle in the current engine. In the *next* engine though... ;-)
<...the bug>