I’d like to have a GI solution that works on largely untextured surfaces and highly modular geometry. Doesn’t have to be fully-realtime, but would be nice if it were reasonably fast.
As far as I know, trying to use enlighten with highly modular levels results in disaster.
There is at least one interesting NVidia paper I could probably implement, but honestly I’d prefer to be doing something else.
Last I checked, the dev was still hard at work to make SEGI competitive in anything but small indoor levels. He had an impressive roadmap though, and given he is still hard at work to make his GI solution work in bigger outdoor scenes, might one day replace Enlighten as the best bet for GI in Unity.
Which I find quite exciting given Enlightens obvious limitations and pitfalls.
Well, its just in Beta and is still actively been worked on seemingly. Given the current development speed and only a single developer working on it as far as I could tell, I wouldn’t expect a complete solution for bigger environments in the shorter term though.
It seems like he has come up with workarounds to make the GI solution work with compromises in larger environments, though when I looked into it, the compromises where rather big (like you only get GI in the closer surroundings of the camera)…
Maybe give the dev a shout in the forum, he had quite a lot of interest when he started the beta so I guess he should be quite active in the thread. Maybe he can give you more information if his solution would fit your usecase or not.
Sonic Ether is working on voxel cascades for SEGI to accommodate larger scenes. He has an update post somewhere in that thread that discusses progress there with some screenshots. Obviously, it’s still a work in progress with no estimate on when it will be implemented, but it is something he’s working on, at the very least.
EDIT: I’d love to see some sort of runtime GI baking solution as well. Doesn’t have to be fully realtime dynamic, but being able to do some sort of procedural scene generation and baking the GI map at runtime after those steps would be awesome.
Probably not. I want indoor areas with emissive surfaces or point lights. This one seems to be geared towards processing global directional light only.
Depending on your needs it might just be generally better using more lights - certainly it’s faster. You could use deferred and grab lighting buffer, blur and clip to depth or something, making for a manual GI approach that’s fast and fairly predictable diffuse…
Generally I think people focus too heavily on GI when in reality it’s a subtle effect, and you can get similar contributions from reflection probes + AO.
Reflectionprobes sound like a good idea, with untextured geometry a very low resolution should be enough and those can quickly be generated at runtime I’d imagine. Also if a less subtle effect is desired, maybe a custom shader could exaggerate the contribution of the reflectionprobes? And if the modules the building is made up from permit it, some colored areas near strong light sources could just get their own pointlight in the color of the material, to fake bouncelight, maybe?
The current roadmap shows it coming in 5.6, but it’s listed as “at risk”.
SEGI is the next closest option, and Sonic Ether’s assets have been well supported in the past, though he’s currently going through a tough time in his personal life due to an unexpected family illness.
Didn’t he say in his GI thread he might release SESSAO for free because there are so many good SSAO effects around now? If he does I’ll give it a try.
I’m looking forward to his screenspace cast shadows, those looked really great for my usecase.
This is lit with 2 directional lights only. One that shines through the windows and one that shouldn’t contribute anything because it faces the wrong direction, I only forgot to delete that one. So, it should look identical with just one directional light as a sun.
I used the new post effects stack with most features turned on, and a ton of baked reflection probes. You could theoretically bake the probes at runtime, but it’ll take a while.
Also I cheated and added a slight amount of emissive light to all materials (and a larger amount to the emissive light block). And I set ambient light intensity to 0, so that the skybox doesn’t bleed through everything.
No baked GI of any kind.
edit: 1 light, no geometry set to “static”, rebaked all probes