The Hedgehog engine(Sonic Unleashed/Generations) had semi-realtime GI for a while.

I don’t know if anyone knew about this, but I thought it was interesting. The Hedgehog engine, the one used in Sonic Unleashed, Generations, and Lost Worlds, had a sort of semi-realtime GI.

http://www.gdcvault.com/play/1428/Global-Illumination-in-SONIC

At the link above is a presentation given in 2009, I think, of the engine. In the left hand column, there are “bookmarks” you can press to go to a certain part in the presentation. A couple of those marks that are insteresting are:

Real-Time Light Samples - at 10:04
Demo - at 26:58
Good example at 34:35 (no bookmark).
Demo - at 35:35
The Future - at 56:18

This engine uses static lights, so static GI, too. But, even so, I’m surprised not any games used this engine (it’s just a graphics engine).

It uses what they call a “GI atlas” and a “light field”. The GI atlas is basically baked GI lightmaps and the light field is what gets the texels around the character, like Sonic. Here’s a picture of what the light map is like: http://info.sonicretro.org/File:Unleashed_dev_072.jpg

You can also see a real-time example at around 36:40 in the video I linked.

You can see a couple of in-game examples of it in action in the attached pictures.

Here’s a couple of sites for some more info:
http://info.sonicretro.org/Hedgehog_Engine

I just thought I’d throw this out there and see what people think. I gotta say, I think I could do this in Blender’s game engine by baking GI, getting texel info, and setting vertex color to amend the GLSL shading.

Attachments



Oh cool,
Well such a shame they didn’t use it to it’s full advantage, then again it’s a sonic game.

You aren’t going to look at something for more than 10 milliseconds so…

The only problem with doing such material effects through code in the BGE is the fact that there’s not really any clear-cut way to make the material unique to all copies of the object (so changes made to one instance won’t change also for the other users).

Other engines nowadays make this a trivial task (including other FOSS solutions like Godot). The BGE also has the same issue with geometry data and I’ve read of users coming up with convoluted workarounds to avoid it.

Lol, there’s truth to that. I have Sonic Unleashed and even though you run very quickly, you can still notice the GI. It’s an overall sort of experience. All three are great games.