Home General Discussion

Radiosity in video games.

polycounter lvl 9
Offline / Send Message
Blond polycounter lvl 9
Final Gather, Global Illumination and such, there are various way to emulate light bouncing and color blending on a surface. The results are often really beaituful and gives to the whole thing a photorealistic aspect.

cornell_final.jpg


Though, I haven't seen many games taking advantages of that. I know that it's a process that asks tremendous amounts of calculations and that it can only be baked just like it was done in Mirror's Edge.
mirrors-edge-screenshot.jpg

However, just like they managed to emulate AO in real time with SSAO, I heard Unreal Enginge has now the possibility to emulate Light bouncing (Final gather).

I'm not if it's because I don't look at the good games but I havn't seen any game taking advantages of that. Sure, PBR is good but I think real time incorporation of radiosity would be even better.

The only game I know that has some sort of real time final gather in it was Sonic Unleashed and the Uncharted series.



It gave results to vivid colors and environnements that really feels alive and connected. I think cartoonish games should showcase it more to achieve that Pixar-ish look.

What do you think?

sonic-unleashed-20080515041521372.jpg

Replies

  • d1ver
    Offline / Send Message
    d1ver polycounter lvl 14
    CryEngine had Light Propogation Volumes at least since 2009. The guys from Lionhead put it onto UE4 after the SVOGI thing failed for Epic.

    So shortly speaking what you call irradiance has actually been in games for a while now. What I think what you're actually referring to is a clean art style that plays up bounce lighting saturation to increase vibrancy. Which is fantastic art direction decision if you ask me. But I think that in order for it to read as well I think you're implying you gotta minimize visual noise, which not all projects or game styles brave to do or even require tbh.

    If you love vibrant colors, however, I would suggest the latest Devil May Cry - their treatment of color is really something. At least for me.

    Cheers
  • plastix
    Offline / Send Message
    plastix polycounter lvl 4
    d1ver wrote: »
    CryEngine had Light Propogation Volumes at least since 2009.

    Light Propagation Volumes / Irradiance Volumes have been deprecated since CryEngine 3.5 and removed in 3.6.
  • Nox
    Offline / Send Message
    Nox polycounter lvl 5
    Light Propagation Volumes looks like just a way to place many light in order to fake GI. It's nothing like real GI which is very hard to compute in realtime.

    Correct me if I'm wrong.
  • iniside
    Offline / Send Message
    iniside polycounter lvl 6
    d1ver wrote: »
    CryEngine had Light Propogation Volumes at least since 2009. The guys from Lionhead put it onto UE4 after the SVOGI thing failed for Epic.
    Cheers

    LPV created by Lionhead is completly different to what the Crytek implementation has.
    Lionhead version is actually based on Octree Grid. And it has potentioal to support more things that Crytek version (which supported only single diffuse bounce).

    Those possible things include:
    1. Multiple bounces.
    2. Subsurface lighting.
    3. Specular reflections.
    4. Indirect shadowing.

    Thought it is still early in development, and while many of those things are it is quite low quality, because it lacks any sort of cascading.

    LPV is actually great feature and it boggles my mind why Crytek essentialy removed it from engine, instead of improving it.
  • ZacD
    Offline / Send Message
    ZacD ngon master
    What did CryEngine replace LPV with?
  • Skamander
    Offline / Send Message
    Skamander triangle
    ZacD wrote: »
    What did CryEngine replace LPV with?

    From what I've read on crydev.net with environment probes, I believe. But it seems you can turn GI back on if you want.

    EDIT: found the thread where I read that a few days back: http://www.crydev.net/viewtopic.php?f=315&p=1217627
  • Xoliul
    Offline / Send Message
    Xoliul polycounter lvl 14
    Most games do that these days, your probably just don't notice it. Unreal has Lightmass, Frostbite has Enlighten for example.
  • Blond
    Offline / Send Message
    Blond polycounter lvl 9
    Xoliul wrote: »
    Most games do that these days, your probably just don't notice it. Unreal has Lightmass, Frostbite has Enlighten for example.

    Well if they do, it's very subtle because I don't really see it.
    Whenever a character approaches an illuminated object, I'd like to see the diffuse of the object fades onto the character's object.

    For example with Sonic Unleashed or Uncharted, when you are walking on the grass, you can clearly see the character's clothes or body getting a light subtle green color whcih adds a lot.
  • xvampire
    Offline / Send Message
    xvampire polycounter lvl 14
    if you want that kind of effect
    you can do it even in mobile phone nowdays ...

    basically you bake static meshes GI and irradiance, ( using light probe in unity)
    then your dynamic object like sonic or enemies can catch the bounces from the environment.

    it also works with limited dynamic light, like sun light

    Cupisz_Robert_Light_Probe_Interpolation2.jpg
    shadowgun mobile game


    real time GI is completely different beast, that means you should be able to render it in real time, day night moving geo like Sonic and its enemies would cast GI on surrounding environment.
  • JacqueChoi
    Offline / Send Message
    JacqueChoi polycounter
    I think most properly made Xbone/PS4 games have this (as in.. not cross-gen ports).

    I mean, it's essentially one of the most important features of a PBR no?

    The obvious games that have it are:
    Killzone Shadowfall
    Ryse
    Infamous Second Son


    You'll likely see almost all games made for these consoles coming out in the next year will have them.
  • d1ver
    Offline / Send Message
    d1ver polycounter lvl 14
    plastix, Nox, iniside, I appreciate the correction guys. I definitely don't use CryEngine enough to know what's going on with it.

    The Crytek's LPV are however the basis of what Lionhead did:
    http://www.lionhead.com/blog/2014/april/17/dynamic-global-illumination-in-fable-legends/
    Of all the papers on the subject, Crytek's Light Propagation Volumes seemed like the best solution for our game. It was fast, scalable and could also support reflections and secondary occlusion. However, this method was a DirectX 9 implementation, and we felt we could do even better with modern DirectX 11-class hardware and the power of compute shaders.

    We developed an implementation of Light Propagation Volumes, specifically targeted at modern GPUs (such as the one in Xbox One).
  • leleuxart
    Offline / Send Message
    leleuxart polycounter lvl 12
    Global Illumination works for me with DeferredShadingTiled=1(For Transparent objects, which I'm assuming is technically off if there aren't any in the scene). The global strength of it is based off of the multiplier in the Time of Day settings(Defaults at 0 in a new scene), with a setting in each material that controls the strength and color.

    But it does break once you set DeferredShadingTiled to 2, which I think is technically supposed to be the default setting since they just introduced Tiled Deferred rendering? Perhaps it's not default because of issues like this.

    Also, it's my understanding that Environment Probes are used for ambient lighting because they removed the Ambient options in the Time of Day, which only affected the Diffuse, not specular, causing things to look flat. Probes and the new Ambient light affect Diffuse and Specular simultaneously, as well as Ambient lights multiplying the probe strength positively and negatively. They're still used for reflections where SSR doesn't work well enough too.

    Edit: Forgot that it only really works on exteriors, or interiors that receive sun light through VisAreas and Portals :poly127:
  • Blond
    Offline / Send Message
    Blond polycounter lvl 9
    xvampire wrote: »
    if you want that kind of effect
    you can do it even in mobile phone nowdays ...

    basically you bake static meshes GI and irradiance, ( using light probe in unity)
    then your dynamic object like sonic or enemies can catch the bounces from the environment.

    it also works with limited dynamic light, like sun light

    Cupisz_Robert_Light_Probe_Interpolation2.jpg
    shadowgun mobile game


    real time GI is completely different beast, that means you should be able to render it in real time, day night moving geo like Sonic and its enemies would cast GI on surrounding environment.




    Eaxctly, that what I'm talking about and thanks for the picture example.

    I've just watched a tech making of assisins creed 4 and they use the same method. I'm not exactyly sure how these light probes work but that's the effect I'm talking about.

    Though, while it is used,I still think they should somehow ''boost'' it.
    Because most of the time, it is way too subtle to see the color fade effect.

    Of course, it all depends of the artistic direction but for games like AC IV, where the environnments uses vibrant colors, I think they should have really strenthen the radiosity effect.
  • James Ordner
    In addition to the Unity example, Unreal uses a similar, automatic voxel grid system for lighting dynamic objects from static bounces. Here's the docs on it for UE3.
  • marks
    Offline / Send Message
    marks greentooth
    Yeah tons of high-end lighting solutions for games include offline GI these days, in fact if you have one that doesn't you're kinda doing it wrong :p some of them even support realtime GI ( Geomerics Enlighten for example )
  • Obscura
    Offline / Send Message
    Obscura grand marshal polycounter
    To me, this looks far the best solution, even if its a bit expensive on high settings.:
    http://forum.unity3d.com/threads/voxel-cone-traced-lighting-dx11-contest.166827/
    But baked GI (Lightmass/Beast) is usually enough if you don't want many moving lights,day/night cycle, or moving level. And in this case, the mentioned light environment/light probes can work on the small amount of moving things.

    LPV is also a solution, but as I know, unfortunately it works only with directional lights (sun).
    Also, there is image based lighting, which is almost the same as HRD lighting in offline rendering, but it doesn't really a solution, because it has many limitations, and it is hard to set up good when you have a big scene. Toolbag 2 use this, and it works good there, because you are usually rendering single objects or characters in it, and not a full level. It can work in big enwironments too, but setting up the many cubemaps properly would take a lot of time. And the IBL method usually cooperates with dynamic lights in my experience, because it can't do real shadows alone.
Sign In or Register to comment.