"If presidential candidates are representing special interest groups, maybe they should be like NASCAR with the little patches on the back."
- Tom Dobbs

Modern LightMapping
Tuesday, October 11, 2016 | Permalink

Well, it's been a while, but it's time for a demo again!

This time it's a sort of hybrid between Clustered Shading and LightMapping, which essentially forms a lightmapping solution that's compatible with normal mapping, and while the lights need to be stationary, allows most other attributes other than position to be dynamically changed. In this demo you can interact with all the lights, turn them on and off, change color, or switch to an animated mode.

Head over to the 3D section and give it a try!



Enter the code below

Tuesday, October 18, 2016

Hi, I see each light produces one .dds for the lightmap, does that mean if you have 100 lights this method ends to 100 .dds ? How this method scales for a real application ? Thanks

Thursday, October 20, 2016

Yes, a real game engine wouldn't want to do global lightmaps for the entire level with all lights everywhere. For say a typical indoor shooter, you could just subdivide it into chunks, such as a room. But yes, even with a decent subdivision strategy, you will still consume a factor X greater amount of memory than an old-school lightmap. In the best case, X would approach something like the average number of lights hitting an average texel, but likely a bit higher than that. On the other hand, this technique only stores a single 8-bit channel, which could easily compress to BC4. And compared to some recent lightmapping techniques where they store SH or SG coefficients, the storage for this in a typical application would probably be less than that. But with that said, I don't think this technique is for every game, but it could certainly be useful for some.

Saturday, November 19, 2016

Very nice I really like your demos