Can I create lightmaps at runtime?

I'm working on a geo-mod style system, destructible buildings etc. If I change the meshes included in a building, what's the best way I can update the lighting to be realistic and fast? I find the realtime lights a bit jagged for my taste and maybe they're too computationally expensive. I'm guessing I will have to make my own functions for calculating lightmap data and create my own lightmap shaders... I can calculate a bit each frame (I'm doing that for the mesh destruction anyway), then swap out the textures once calculated.

My question is this: am I making life too complicated? Is there an easier/better way? I am thinking of getting Unity 3 Pro - is the realtime lighting of a good enough quality and fast enough to handle this? I do however want to publish to iPhone so I guess I need lightmaps anyway...

So that's about five questions in one!

maybe this can help. it uses VPL data and shadowmaps.

Clicking on your "lightmap" tag, I got this answer as the first. So, with the included methods in Unity, it isn't possible to bake the lightmap at runtime.

What you could do is baking several lightmaps in the editor - one for the normal building, one for the destructed one, and then only swap these textures.

You are making life too complicated, yes. Unity 3's Deferred Rendering should make using pixel lights much faster, and the quality will be improved from Unity 2

On the other hand, you want to build on iPhone - I'm not sure if deferred lighting will work, but forward rendering should still be faster than unity 2, and look better.

There shouldn't really be any need to bake lightmaps at runtime, which would be excessively slow anyway (Especially on an iPhone if it were even possible, you'd be waiting an hour to get similar results to a few point lights)