Announcement

Collapse
No announcement yet.

[Dynamic GI in UE4] Unity 5 Free with Enlighten

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • replied
    Originally posted by Chariots
    Enlighten requires static geometry, anything that is spawned at runtime cannot influence the GI, and if you delete any static geometry during runtime, it will continue to participate in GI. In time, Unity could add some limited runtime modification, but fundamentally, Enlighten requires static geometry, so any changes or movements during runtime would have to be precomputed as well. Unity uses it as a baking/preview tool and a sort of hybrid DGI, and that suits it very well.

    DFGI and LPV are true dynamic solutions. Good or bad, they work with any geometry thrown at them, static or not doesn't really matter to them. I'm not sure about how VXGI goes about this, but it is supposed to be more dynamic than SVOGI, maybe someone can chime in about how it works with runtime generated geometry?
    VXGI uses cascaded 3d textures (as voxel structures), where color values are directly written to and the textures are directly read in a forward shader by cone tracing. This makes it about a magnitude faster than SVOGI because it doesn't need to do any complicated octree traversals (which was very expensive). Now voxelization is the fastest part of the algorithm and from my own tests, is comparatively negligible.

    The cascades are just different LOD 3D textures, in VXGI, these are view dependent so immediately surrounding the viewer and the direction of view, the most hi-res 3D texture is used, then cascaded over it is a series of larger lower-res 3D textures, which allows for objects further away to still receive GI, but at a lesser detail. This is almost exactly the same technology as that used in the Tomorrow Children (except they don't use view-dependency because it does produce artifacts).

    It is fully dynamic - when you add geometry to the scene, its color values immediately overwrite the original color values in that space in the voxel textures - so you can use textures that have all sorts of colors, which will be captured in detail in the voxel textures. You can have a texture that has a pattern of thin lines as a different color, then set that as emissive to get detailed emissive lighting.
    Last edited by gboxentertainment; 03-05-2015, 05:59 PM.

    Leave a comment:


  • replied
    For VXGI:
    https://forums.unrealengine.com/show...l=1#post213061
    Follow these steps, but instead of Flex use VXGI (it's the same process).
    When executing setup.bat (or .sh/.command) select "No" when it asks to overwrite your changed files (the Nvidia branch comes with an own nvapi as far as I remember it).

    Greetings,
    Dakraid

    Leave a comment:


  • replied
    Originally posted by ZuiQuan View Post
    P.S. If anyone could direct me to how and where to download VXGI for Unreal, I'd be most appreciative.
    I am interested in this as well.

    Leave a comment:


  • replied
    Originally posted by Crow87 View Post
    I downloaded the U3D5 PLE yesterday and had a go with it. Wasn't exactly blown away. The dynamic indirect only works on static objects, which is nice, but not really that impressive. Having it work with fully dynamic scenes however would be much more impressive - and it seems like the Subway demo Geometrics posted on their YouTube channel covers that - and in the massively more workflow-friendly Unreal Editor...
    The subway demo is also mostly static geometry. I believe Unreal's own good-old irradiance cache is used for dynamic objects (like the rocks in the demo)(even if it's not the irradiance cache, the lighting on the rocks looks considerably worse than on the precalculated static geo). AFAIK any Enlighten integration requires precalculation for static objects, no matter which integration/engine.

    P.S. If anyone could direct me to how and where to download VXGI for Unreal, I'd be most appreciative. (EDIT!: Apprently, through GitHub. Oh well.)
    Last edited by ZuiQuan; 03-05-2015, 12:28 PM.

    Leave a comment:


  • replied
    I downloaded the U3D5 PLE yesterday and had a go with it. Wasn't exactly blown away. The dynamic indirect only works on static objects, which is nice, but not really that impressive. Having it work with fully dynamic scenes however would be much more impressive - and it seems like the Subway demo Geometrics posted on their YouTube channel covers that - and in the massively more workflow-friendly Unreal Editor...

    Leave a comment:


  • replied
    I've been fiddling with Unity five for the past couple of days. And Enlighten is just plain incredible, awesome, unbelievable even. Especially at higher settings. It takes a fair bit of time to precalculate, but so worth it. Why I, personally, would really-really like to have a similar solutions in UE is not just because of the in-game dynamic lighting options, but because how quickly you can iterate on your lighting, even if you decide to bake it in the end. In Unity you can now get the lighting just right and then simply bake the final result to a traditional lightmap with your preferred settings, without the need to adjust-bake-adjust-bake, trying desperately to get the final result just right. No amount of preview-quality baking in UE can substitute that. I like UE a lot, but this eats a lot of time in my workflow, time which could be more artistic becomes drudgery of endless waiting cycles.
    P.S. There is a Unity arch-viz-like video on youtube which can make anyone a believer - http://www.youtube.com/watch?v=Fr4H0crCb0E.
    Last edited by ZuiQuan; 03-05-2015, 05:33 AM.

    Leave a comment:


  • replied
    Originally posted by DaveFace View Post
    Just to point out, Unreal is not open-source, as Epic charge a royalty fee for commercial use of the engine. Semantics, I know.



    Unfortuantely I think a lot of people are confusing Enlighten for a fully dynamic solution, because that's how they advertise it - but there is baking involved. It's not like DFAO / DFGI which run in realtime (minus the computation of the distance fields).

    VXGI looks like a great solution in theory, but since it's going to be artificially limited to high-end Nvidia cards I don't see it being of any use for games. You're having to manage an entire lighting solution / pipeline which can't run on either console and well over half of PC users.
    ive always regretted buying a ps4.

    http://www.dualshockers.com/2014/09/...p-screenshots/
    Last edited by gboxentertainment; 03-04-2015, 10:15 AM.

    Leave a comment:


  • replied
    Originally posted by TheJamsh View Post
    Anything built directly into and shipped with the Engine has to be open-source now.
    Just to point out, Unreal is not open-source, as Epic charge a royalty fee for commercial use of the engine. Semantics, I know.

    Originally posted by gboxentertainment View Post
    I've tried the Enlighten solution in unity - was not impressed at all. Its a half-baked solution. The only difference between it and a fully baked solution is that you can move a light around and get the gi effect. If you change a material color, it has to be re-baked again.

    VXGI on the other hand is fully dynamic and is efficient because it uses view-dependent cascaded 3D textures, where color is directly written and directly read from these textures. Multiple bounces (effectively unlimited) can be incorporated easily by an extra cone tracing pass within the voxelization shader. Sure you need a top graphics card to run it - but it can also be scaled very well by lowering voxel resolution, reducing number of cones - the quality loss is not significantly noticeable for diffuse (i have been able to run my own implementation of voxel cone tracing gi on a gtx485m laptop).
    Unfortuantely I think a lot of people are confusing Enlighten for a fully dynamic solution, because that's how they advertise it - but there is baking involved. It's not like DFAO / DFGI which run in realtime (minus the computation of the distance fields).

    VXGI looks like a great solution in theory, but since it's going to be artificially limited to high-end Nvidia cards I don't see it being of any use for games. You're having to manage an entire lighting solution / pipeline which can't run on either console and well over half of PC users.

    Leave a comment:


  • replied
    Originally posted by 3dlight View Post
    I'm aware of Unreal working on DistanceField GI... but that is only one bounce, and to my knowledge, has no timeframe. I would love to use specifically the Enlighten solution, since it does exist... somewhere

    Thanks for the pointer on VXGI. I wasn't aware there was an integration I could download. I'll have to take a look at that!

    Andrew
    I've tried the Enlighten solution in unity - was not impressed at all. Its a half-baked solution. The only difference between it and a fully baked solution is that you can move a light around and get the gi effect. If you change a material color, it has to be re-baked again.

    VXGI on the other hand is fully dynamic and is efficient because it uses view-dependent cascaded 3D textures, where color is directly written and directly read from these textures. Multiple bounces (effectively unlimited) can be incorporated easily by an extra cone tracing pass within the voxelization shader. Sure you need a top graphics card to run it - but it can also be scaled very well by lowering voxel resolution, reducing number of cones - the quality loss is not significantly noticeable for diffuse (i have been able to run my own implementation of voxel cone tracing gi on a gtx485m laptop).

    Leave a comment:


  • replied
    Originally posted by 3dlight View Post
    I'm aware of Unreal working on DistanceField GI... but that is only one bounce, and to my knowledge, has no timeframe. I would love to use specifically the Enlighten solution, since it does exist... somewhere

    Thanks for the pointer on VXGI. I wasn't aware there was an integration I could download. I'll have to take a look at that!

    Andrew
    Be aware that VXGI is also limited to one bounce.

    Leave a comment:


  • replied
    Ok, that makes sense. Thanks.

    As for Geomatics/Enlighten... they, like any other tech company has to evaluate whether large numbers at a lower price vs small numbers at a higher price make sense. In the case of Unity, I'm sure Unity paid a good deal to Geomatics to incorporate the tech... but on a per-user basis, the price is the average of 0 and whatever number of actual licenses they sell for pro users. That's probably not a lot of money in Geomatics' pockets per Unity user. I can see a reasonably-priced UE4 plugin doing nice business. I keep hearing it's crazy-expensive... but I haven't heard what that price IS. I have some money to throw at good lighting. What's the deal? It's time to come out of secrecy, and charge me for it! If anyone knows who to contact for current pricing, please let me know, as they have zero contact info on their site.

    Leave a comment:


  • replied
    Originally posted by 3dlight View Post
    I guess I don't fully understand. Can a 3rd party not sell a closed-source plugin due to UE4 being open-source?
    They can, but they have to do it off of their own backs like SpeedTree and Algorithmic (Substance Designer) do. Enlighten is the same, it's just cray-expensive last time I looked at it and you have to send off an application of some kind. Anything built directly into and shipped with the Engine has to be open-source now.

    Leave a comment:


  • replied
    So was reading through several threads about dynamic GI here on the forums. Just one general question for the gurus. I´ve seen a demonstration of imperfect shadow mapping back in 2008.
    The result is stunning, but it looks like it was never implemented into a realtime engine. Well maybe the name changed. But I wonder.. why ?
    https://www.youtube.com/watch?v=Pdp3rfyFF14

    Leave a comment:


  • replied
    I guess I don't fully understand. Can a 3rd party not sell a closed-source plugin due to UE4 being open-source?

    Leave a comment:


  • replied
    Its still not opensource

    Enlighten and the other middle ware provider could do with libraries/import libraries, like the available integrations do. They choose not to do it, its not a limitation on our side if the table (apart from deals Epic could make).

    Leave a comment:

Working...
X