Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Completely Real Time Global Illumination Using Light Propagations

Discussion in 'Assets and Asset Store' started by brilliantgames, Oct 24, 2014.

  1. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    ...and as they say in English...wtf did you just say?
     
  2. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    Lol...oh and arrêter saisissant mes couilles!!! :(

    But seriously yea we're not being anal, as this work right here is marvelous, only that one part (and the rather strong bounce of the red) stood out.
     
  3. Licarell

    Licarell

    Joined:
    Sep 5, 2012
    Posts:
    434
    LOL!!!! Dude don't worry they're safe... HAHA....
     
  4. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    Hahaha yay!!!! :D
     
  5. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Volumetric Lights
    Light your scenes with thousands of dynamic volumetric lights at almost no cost to performance. Use any scale of box shaped volume lights which are inexpensively injected into the GI light volume.

    The screenshots below are the scene from the Sci-Fi pack which contains over 100 volumetric lights. The scene contains no point lights. There is no audible difference in performance from 100 volume lights to 0.





     
  6. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    13,288
    Do the volume lights work on Unity Free ? Also do they also require to change shaders to have them, or will light every item ?

    Thanks
     
  7. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    I mentioned it uses the GI. The volume lights just inject their position and volume into the GI Volume. So yes it will require pro and custom shader.
     
  8. macdude2

    macdude2

    Joined:
    Sep 22, 2010
    Posts:
    686
    Wow! Looks exceptional. Never expected enlighten to have competition, but clearly it does!
     
    jcarpay and shkar-noori like this.
  9. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    13,288
    I see, thanks
     
  10. janpec

    janpec

    Joined:
    Jul 16, 2010
    Posts:
    3,520
    Wow volumetric light example is really fantastic, and the fact that scene has 100 of them on low performance cost is amazing.
     
  11. Pulov

    Pulov

    Joined:
    Feb 20, 2010
    Posts:
    824
    Wow. Latest shots are impresive. GI Lights at no cost. Yeah. That is imprrsive too. Can these cast shadows?
     
  12. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    If the geometry data is available, you can cast fuzzy occlusion shadows. The reason I say that is because the data has to get there somehow, and the only current way for the system to be aware of geometry is through the GI probes(which can be hand placed or attached to lights). Part of the reason I made these is so that you can place black volume lights to act as occluders when you can't afford to place more expensive probes(this also depends if your probes are static or dynamic).

    I should let everyone know these volume lights have some limitations. Because they are injected into the GI you cannot directly control their range. Their range is dependant on their physical size in relation to the world around them. So you can't make a single texel of light(point light) and expect it to have much range.
     
  13. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Happy Halloween everyone! 200 volumetric lights running at 200 fps. :)

     
  14. Hrothvitnir

    Hrothvitnir

    Joined:
    Apr 26, 2013
    Posts:
    109
    Not sure what to make of the pumpkin scene, but the scifi scenes look really good. The discussion on shadow implementation and light fall off vs texel size I think could use some example shots however.

    Also, in the previous thread you mentioned it should be "simple" (or at least possible) to integrate your shaders into other custom shaders. To me that is probably the #1 most important consideration at this point. Hopefully you will keep it in mind.
     
  15. kurylo3d

    kurylo3d

    Joined:
    Nov 7, 2009
    Posts:
    1,123
    I think his point about the pumkin scene was that each one of those pumpkins lit up.. 200 of them.. at 200 fps. In fact... he kind of wrote that above the picture.... lol
     
    Last edited: Nov 2, 2014
  16. marky3d

    marky3d

    Joined:
    May 20, 2014
    Posts:
    6
    Hi,

    I'm sorry to say this system is a complete pipedream and misleading in the way it is represented by the OP.

    I am not going to outline all the hyped up and misleading features the OP has mentioned but just a few.

    First, the use of C# scripting to update i.e to inject the probe capture data into the 'single ' 3d texture is a Significant bottleneck to say the least. Not even considering 'cascade' i.e. multiple 3d textures updating is just silly. The SetPixel CPU <---> GPU will bring down the entire project. Yes you can inject info in to the 3dtexture but updating Hundreds of 'fake' volume lights as the OP mentions in realtime is plain wrong. He seems to have magically found a way to do this better then all the Crytek engineers at NO performance cost... give me a break. Also, a single 3d texture would have to be in the centre location to the active cam, and no way to add cascades.

    Second, the OP mentions infinite bounces, again a crock of you know what. A true GI system, will usually converge to a solution even after two-three bounces. The example scenes provided are single bounce with long propergation. for multiple bounces the GI solution hence the 3D texture will have to be updated multiple times! I.e. the previous solution will need to be injected, Good luck on doing that using C#
    with hundreds of lights (well even anything more than three or four will have riridiculous performance impact)

    Third, he mentions 200 pumpkin lights at the same time. Well yes, with the way he is advertising this and the implementation you can have a million lights:) as they are treated the same as geometry but will be static.

    It seems he has jumped the gun on this and trying his best to come up with methods to cover these major drawback by diverting the attention of everyone with misleading screenshots and explanation.

    I am not trying to be mean, just pointing out the obvious facts. Please also note the Crytek LPV is also a Patented method. Good luck.

    US patent 20110012901
     
  17. Frpmta

    Frpmta

    Joined:
    Nov 30, 2013
    Posts:
    479
    You should better focus on releasing Livenda.
     
  18. marky3d

    marky3d

    Joined:
    May 20, 2014
    Posts:
    6
    [Frpmta, post: 1834227, member: 486677"]You should better focus on releasing Livenda.[/QUOTE]

    niceone, funny how you automatically mention Livenda because I commented on the Jove thread, So what, this is the way I see it,. Read my post, it is logical and known facts, it's not rocket science and obvious that you have affiliation with BG, give me a break Jesus!
     
  19. Baldinoboy

    Baldinoboy

    Joined:
    Apr 14, 2012
    Posts:
    1,526
    Do not start a fight now! Why does there always have to be a fight?

    Let brilliantgames explain and then we will draw our conclusions.
     
    Hrothvitnir, blueivy and marky3d like this.
  20. Frpmta

    Frpmta

    Joined:
    Nov 30, 2013
    Posts:
    479
    You have increased the evidence count to three.
    But I am still interested in LivendaGI.
     
  21. IanStanbridge

    IanStanbridge

    Joined:
    Aug 26, 2013
    Posts:
    334
    Briliant Games could you please release a web player demo showing it in action especially with dynamic objects and reflections. Since this requires unity pro I'm pretty sure that if people just need static scenes with GI or lots of volumetric lighting they would probably use enlighten. I get the impression that unity added enlighten not because they desperately wanted GI but because they needed a new light mapper to replace beast. Enlighten has the benefit of producing perfect GI lightmaps on static scenes while still allowing you to move the lights in them but requires the scenes to be static and baked with fairly long bake times.

    Your system seems to produce slightly less accurate lighting and probably at a higher performance penalty at runtime but can do so without baking meaning that it can be used on dynamic scenes and also to produce reflections from dynamic objects.

    As a result most people would probably use it for this purpose rather than lighting a room with hundreds of lights. I would suggest you show off the dynamic nature of it more as a result.

    Also a lot of people are fairly sceptical of new GI solutions without proof that they work. Rather than posting stills and how many fps you are getting it would be better to simply post the webplayer and let them test of the performance themselves.
     
  22. kurylo3d

    kurylo3d

    Joined:
    Nov 7, 2009
    Posts:
    1,123
    I keep hearing about fairly long bake times, but from what I have seen so far... enlighten is fast as hell. Could be cause im running 4ghz i7 with a gtx980 though lol..
     
  23. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    @marky3d Have you tested making 3d textures? Making a 32,32,32 is completely do-able on the CPU in real time(especially if you do so every 4 frames or so). The volume lights don't take any extra performance, you know why? Because everything that is injected into the volume is added to a buffered list and is all injected at once, the only drawback is creating the 3d texture, so therefore, one volume light is the same draw back as hundreds, even thousands(this includes completely dynamic lights on both CPU and GPU). I have not lied once about the performance results I am getting. When I say it's running 200 FPS, it is running 200 FPS. Right now most of my demos are running at very fast FPS and I am using 64,64,64 textures because I do not have cascading yet. Are you aware that creating three textures of 32,32,32 is less than half the cost of one 64,64,64? Get out your calculator if you don't believe me. ;) Do you want to know why 'infinite' bounces are possible with my system? Because the probes are rendering with the GI shader. If the probes render with the GI shader, they in turn render the reflections occuring, as a result multiplying the bounces each time they render. It's not complicated. :)

    About Crytek's patent. I have scanned through the entire paper, the only thing I am doing exactly the same as them is using a 3d texture. Have they patented 3d textures? :)

    PS, I have also started on making a DX11 implementation using compute shaders to generate the volume. If I get this working it will be blindingly fast. ;)
     
    Last edited: Nov 3, 2014
  24. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Yes my plan for today was getting a video and demo ready. If all goes well should be up by late tonight. If not tomorrow for sure.
     
    8Infinite8, Baldinoboy and blueivy like this.
  25. Frpmta

    Frpmta

    Joined:
    Nov 30, 2013
    Posts:
    479
    fixed :D
     
    shkar-noori and brilliantgames like this.
  26. kurylo3d

    kurylo3d

    Joined:
    Nov 7, 2009
    Posts:
    1,123
    I actually have a question, one thing i like about enlighten is the fact that I could still bake soft shadows... since not every shadow in the real world is striaght line.... depending on the size of a light the shadow can become blurry as distance goes on.

    Do you intend to have anyway to handle this with say area lights(since area lights have size)? Or DX11 shadows?
     
  27. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Don't forget, you can still use enlighten with BG Lights. You would just have completely real time GI and reflections. That being said I have already implemented my own real time soft shadows that actually work on Unity Pro and free. But I doubt they will make the upcoming release. This release is purely GI focused. One thing at a time.
     
    Last edited: Nov 4, 2014
    Baldinoboy likes this.
  28. Hrothvitnir

    Hrothvitnir

    Joined:
    Apr 26, 2013
    Posts:
    109
    Arguing whether it works or not is pointless when the OP hasn't yet released a demo, let alone something on the asset store. We will find out at that time whether its true or not. Unlike certain other attempts at GI, BG is actually telling us something about how it works, or will work, rather than hiding behind some supposed need for absolute secrecy in every detail. I think that should earn him some credibility, and some patience from us.
     
  29. chiapet1021

    chiapet1021

    Joined:
    Jun 5, 2013
    Posts:
    605
    We do still want demos and a reasonable release timeframe, though! :)
     
  30. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Here it is everyone. First video trailer and demonstration. Demo's are coming tomorrow. Enjoy. :)

     
  31. jcarpay

    jcarpay

    Joined:
    Aug 15, 2008
    Posts:
    561
    Impressive!
     
  32. Pulov

    Pulov

    Joined:
    Feb 20, 2010
    Posts:
    824
    Oh yess, this looks really good.

    The building interior is completely lit with skylight leaking trought windows?
     
  33. elias_t

    elias_t

    Joined:
    Sep 17, 2010
    Posts:
    1,367
    Wow! Good job!! Waiting for the realtime demo. (If you do this please add an fps counter)

    Perhaps the outdoor scene could use some extra skylight influence?
     
  34. kurylo3d

    kurylo3d

    Joined:
    Nov 7, 2009
    Posts:
    1,123
    nice. I am waiting for this marky3d guy to eat his words
     
  35. kurylo3d

    kurylo3d

    Joined:
    Nov 7, 2009
    Posts:
    1,123
    Oh question for you. Will this all work with unity5s shader? The one that does it all.. roughness and all that workflow. What i mean when i say roughness... will that work on the reflections? make them blur or sharper?
     
    Last edited: Nov 4, 2014
  36. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Yes there is already full control over roughness. Though I must say, it's hard to make them exceptionally clear with resolution constraints. :D

    But yeah when Unity 5 comes out I'll grab the source code for the default shader and make a copy of it with the GI built into it. Maybe I'll be able to make their shader work in Unity 4 as well. :p

    @Pulov To be honest it actually isn't. For all the windows to have correct skylight coming through there would have to be a probe placed in every area of the room where they could see every window clearly. Instead these are volume lights with 2 probes placed to capture most of the secondary reflections from the volume lights. Shows the power of these volume lights. You can very easily replicate daylight coming through windows at no performance expense. Very happy I implemented these. :)

    PS, if anyone is worried about skylight leaking into indoor areas because of lack of geometry info, do not fear. Instead of placing probes to capture everythying, volume lights can be turned into occluders where you can simply place a large occluding volume light on the roof of the indoor area and it will block out all the skylight. :)
     
    Last edited: Nov 4, 2014
  37. Licarell

    Licarell

    Joined:
    Sep 5, 2012
    Posts:
    434
    Now that's cool!
     
  38. brilliantgames

    brilliantgames

    Joined:
    Jan 7, 2012
    Posts:
    1,937
    Web Demo
    Here is the first official web demo. Remember this is early alpha. The demo is the simple Cornell scene. It's all I can afford to give you at the moment. I will be releasing more complex benchmark type demos in the near future. But for now I need to continue working on this cause demo's take time.

    PS, I apologize on the large download size. For some reason Unity seems to be building it in correctly and is possibly including asset that aren't needed for the demo.

    Right click and go to full screen if you want a more accurate fps reading.

    Web Demo: https://dl.dropboxusercontent.com/u/65183439/SimpleRoomdemo/SimpleRoomdemo.html
     
    Last edited: Nov 5, 2014
  39. IanStanbridge

    IanStanbridge

    Joined:
    Aug 26, 2013
    Posts:
    334
    That demo is seriously impressive especially the performance of it. Is there any penalty for whether an object is moving or not for it to contribute to the global illumination or doesn't it care how many objects are dynamic ? One of the big limitations of Enlighten is that dynamic objects can never contribute to the global illumination they can only receive it. Could you make a scene with all the objects moving in it or perhaps have a moving texture on the walls to show how it performs in a dynamic scene.
     
  40. thoorne

    thoorne

    Joined:
    Jul 22, 2012
    Posts:
    64
    I can't believe that this demo is running on MBA 14 in 60FPS. Impressive. Definitely must have.
     
  41. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    13,288
    Looks amazing :)

    I notice a stepping in light, like flickering at constant intervals, is this adjustable and what performance hit does it have for a completly smooth effect ? Maybe i get the stepping since i am at 17-20fps in my laptop though, so i am not sure would be an issue in a beefier machine.
     
  42. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    Wow that's quite nice :D
     
  43. kurylo3d

    kurylo3d

    Joined:
    Nov 7, 2009
    Posts:
    1,123
    very freakn cool. I will put a build up of the environment im working on when u finally get this thing done. :) Cant wait to try it.
     
  44. Baldinoboy

    Baldinoboy

    Joined:
    Apr 14, 2012
    Posts:
    1,526
    Awesome demo. Was in it for a while:).

    Question about enlighten. Is it realtime at all. It is definitely not dynamic but the way they talk about it it sounds like a slightly more advanced version of beast.

    Can I walk around in a pitch black room with a flashlight and that flashlight lights up more than just where the beam hits? I know I would be able to do this in brilliantgames gi but what about enlighten?
     
  45. kurylo3d

    kurylo3d

    Joined:
    Nov 7, 2009
    Posts:
    1,123
    enlighten lights are dynamic where u can move them.. unlike beast u cant cause its just a lightmap. Enlighten the light bounces react with every light. Its the geometry thats baked so the geometry doesnt move.
     
  46. Licarell

    Licarell

    Joined:
    Sep 5, 2012
    Posts:
    434
    Beefier machine does it too... 60 fps

    3x GTX Titan's, i7 extreme CPU @ 4ghz and 24 gig quad channel...

    Early Alpha... no worries...
     
  47. Baldinoboy

    Baldinoboy

    Joined:
    Apr 14, 2012
    Posts:
    1,526
    Alright. So lights are dynamic but geometry is not. Thanks for letting me know.

    Well it will stay at 60 because VSync is probably enabled. Let me just take a look at your hardware:eek:. Crying out loud that is amazing. If you want you can ship your machine to me and I can test it out:D.
     
  48. IanStanbridge

    IanStanbridge

    Joined:
    Aug 26, 2013
    Posts:
    334
    I don't get any flicker of the lighting. The lighting looks fine to me. Are you sure the thing you are seeing isn't just aliasing of the edges of the geometry because there doesn't appear to be any anti aliasing turned on. Or do you mean it jerks when the camera rotates ? Look at a flat surface and see if it flickers on that too. Also try running it full screen so that the main graphics kernel is used rather than the windows desktop one. I get over 200 fps on my gtx 680 .
     
  49. jcarpay

    jcarpay

    Joined:
    Aug 15, 2008
    Posts:
    561
    Awesome!
     
  50. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    13,288
    I dont know exactly what it is, just a slight up/down in light intensity in a constant way.

    I would not call it flicker, it is more like stepping in calculations, i can also see it clearly updading in steps in the reflection in the sphere. As i said though, i test everything in my laptop first, to see if i can get them to 30fps (or ideally 60fps) and thus use them in my very heavy game, so this is a stress test and is getting 20fps, which is great considering a compute shader version later could easilly be fast enough to use in heavier scenes, at least in rooms.

    I am sure in a normal PC that step may not be visible or be easilly adjusted to update faster.
    .
    EDIT: I will check the full sceen more and get back

    EDIT2: I went fullscreen and now get 13fps and the screen (1280x720) is only covered in the middle (720x720 is rendered i guess), so the effect seems resolution dependent. Plus i get the same stepping. I noticed as i turn the light, both the GI and reflection update almost half a second later.

    Another question is what is the hit in bigger open areas, with a big number of different shaders and items. Can this solution be applied locally in a dynamic way ?
     
    Last edited: Nov 5, 2014