Re: Advice on lightmaps in game engines
on 12-17-2007 09:31 PM
While I'm sure a number of people on this forum can (and should) give their advice and experience, since this is for your studio/game, let me give some better advice than what our ideas of implementation may give. Level lightmapping is much better handled programmaticly and procedurally when building levels. Every surface needs its own lightmap space and instances of the same object need their own unique space. It is possible to set this up in advance, such as creating your level in max, unwrapping all the objects with a second UV channel, and baking- obviously there are limitations but this is what I would do for a one-shot deal such as a tech demo. However this isn't a tech demo (AFAIK) so whatever a good solution you find, it will be not be handled by the artists. It will be handled by the engine (at runtime or pre-rendered/calculated. Whatever the implementation of a usable and flexible system will be by programmers.
My suggestion is, find a programmer who has done this before- if there are none at your studio, then ask around, as this has been a common thing. However there just isn't much for an artist to do on this aspect, since it should be independent of the content pipeline for the most part. The programmer will be doing most of the work but it is always helpful to have an artist watching, since this is, after all, about graphics.
But to answer your question directly: most lightmapping solutions I know (either in-engine or software plugins I don't know about (Maya2008 I think has one?)) handle lightmaps the same way: create a second UV channel for all geo and give all geo unique UV's in that uv space. Then render the lightmap. Multitexturing is required, no other way to do it I can think of if you're not doing vertex-baked lighting.
If you want to do more research, the best bet it, look around at other engines that have good lightmapping solutions and look for papers (here, I'm sure, forum members can come through with papers they've found or read), but also look at engines that don't have great lightmapping, for ideas, and also lightmapping plugins/baking apps.