Search Unity

  1. Unity 2019.2 is now released.
    Dismiss Notice

SEGI (Fully Dynamic Global Illumination)

Discussion in 'Assets and Asset Store' started by sonicether, Jun 10, 2016.

  1. Skolstvo

    Skolstvo

    Joined:
    Dec 21, 2015
    Posts:
    107
    @DivergenceOnline

    I'm not criticizing you. It's just that I haven't purchased the asset myself yet, and would like to gauge the performance and tweaking possibilities.

    That said, would it be possible for you to test out a large scene with very primitive proxy meshes for trees and terrain and ignoring everything else for voxelisation. Since the voxelisation is currently dynamic regardless of environment I'm, surprised it should stall on a big scene.
     
  2. elbows

    elbows

    Joined:
    Nov 28, 2009
    Posts:
    2,226
    I will give this a go tonight (UK time).
     
    RB_lashman likes this.
  3. elbows

    elbows

    Joined:
    Nov 28, 2009
    Posts:
    2,226
    I had tremendous fun playing with this asset at the weekend but I doubt that its too useable in many real-world game projects yet, not until some of the most crucial performance-related things in the roadmap are done.
     
  4. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    25,334
    If you say so. I can't speak much about it since I have had a dev kit a few years. But I would consider this generation of consoles to be having upgrades for good reason.
     
    RB_lashman likes this.
  5. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    25,334
    55 fps = 18ms / frame
    28 fps = 35ms / frame

    So you are saying SEGI takes up 17ms, which is indeed severe. What is the hardware?
     
    RB_lashman likes this.
  6. chiapet1021

    chiapet1021

    Joined:
    Jun 5, 2013
    Posts:
    604
    I'd love to know how much of that 17ms is related to the voxelization, so that if/when SEGI supports not revoxelizing while the scene is static, we can anticipate the amount of performance increase.
     
  7. Frpmta

    Frpmta

    Joined:
    Nov 30, 2013
    Posts:
    461
    Hey SonicEther, I remember Nvidia saying something on their VXGI making use of some dedicated voxel processing units that come with Maxwell. Would they also benefit this?
     
  8. elbows

    elbows

    Joined:
    Nov 28, 2009
    Posts:
    2,226
    OK I got a chance to try. It doesn't work. First there is a platform/feature test routine written into one of the scripts that complains and disables the SEGI script on the camera. I then edited the script to bypass this check. But it still doesn't work. No /pinkpurple and no shader errors that I can see, just no GI being added to the scene. So I couldn't say how trivial a fix would be.
     
  9. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,190
    I think it was well clear that this tech won't be too much usable in real game situation with current hardware, anybody who think that is deluding itself, and the hype was despite knowing that. I'm not sure optimization will significantly change that. It will still be an expensive extra edgy feature for limited cases.

    Short of baking!
     
    spraycanmansam and RB_lashman like this.
  10. AurimasBlazulionis

    AurimasBlazulionis

    Joined:
    Aug 13, 2013
    Posts:
    209
    Okay, thanks. Still going to try to mess around with it once I get my hands on it.
     
    RB_lashman likes this.
  11. elbows

    elbows

    Joined:
    Nov 28, 2009
    Posts:
    2,226
    It felt like it might be extremely close to working, but I've no opportunity to explore the issues further myself for a bit.
     
  12. elbows

    elbows

    Joined:
    Nov 28, 2009
    Posts:
    2,226
    I wouldn't go quite that far. But it depends what we mean by current hardware. I don't see a reason why the technique in general, with the right optimisations, should not be viable in theory on a range of upper-end desktop GPU's in pc systems and across a range game level scenarios. Whether this particular implementation becomes as fast is it could be I cannot predict.

    Personally yes I bought it to be part of a bleeding edge experiment, not as something I'd expect to drop into an existing game and have running without dramatic performance impact in June 2016. I have the luxury of being able to craft some experimental scenes around the tech over the summer, during which I expect I'll start to learn the boundary limits when used with a GTX 970 with an ageing i7-2700k.
     
    buttmatrix likes this.
  13. DivergenceOnline

    DivergenceOnline

    Joined:
    Apr 19, 2015
    Posts:
    244
    @hippocoder
    Yup, it's pretty brutal. And i think you'll agree this isn't even a lot of "complex geometry". In fact the trees you see are mostly beyond the range anyway.
    And let's be honest. The difference on the lowest settings is so small it's basically beneath human perception.
    Maybe if my game were made out of white boxes and cones?
    segioff.png segion.png
     
  14. blueivy

    blueivy

    Joined:
    Mar 4, 2013
    Posts:
    498
    I think that's going a little too far. This is the first round of releases for this asset, that will only improve with optimizations over time. Tomorrow children does voxel come tracing on a PS4, so really I think it's just about trading quality for performance. Higher quality = less hardware lower quality= more hardware it can run on.

    That's the power of settings and why I'm excited for future optimizations and the roadmap ahead! :)
     
  15. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,447
    Never mind we're talking about fully dynamic, realtime GI. I remember the days when full scene, realtime shadows were a high-end only feature. Jeez the holy grail of photo-real lighting...

    No, even as a beta this piece of software is exceptional, and yea I only expect to target my 980ti, and certainly not aim for my 980m, which btw SEGI runs quite nicely.
     
    RB_lashman and chiapet1021 like this.
  16. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,190
    Tommorow children is build around the limit of the technique though, that's not the same!

    But I'll rather have the pessimist line than breaking hope. Let great optimization comes as a surprise rather than an expected features, that's the sane approach.
     
  17. chiapet1021

    chiapet1021

    Joined:
    Jun 5, 2013
    Posts:
    604
    Pessimism is not the same as pragmatism. It's almost guaranteed this asset won't be feasible on current gen consoles, but to say it won't ever be usable on current PC hardware is the other extreme.

    The real answer is somewhere in the middle. Where exactly? We'll have to see what magic Sonic Ether weaves.
     
    blueivy and RB_lashman like this.
  18. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,447
    blueivy and RB_lashman like this.
  19. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,190
  20. relax_cage

    relax_cage

    Joined:
    Aug 18, 2015
    Posts:
    1
    My game jam partner and I used SEGI to develop our game I Am Atlas in 32 hours. SEGI was a super useful tool for rapid prototyping in a game in such a compressed time (we had issues running out of time during lightmapping in previous jams). We got an amazing reaction from the Tasjam community and have been encouraged to develop it further. :)

    Link with free download and screenshots:
    https://marmalade.itch.io/i-am-atlas

     
    macdude2, nuverian, amasinton and 3 others like this.
  21. localhost

    localhost

    Joined:
    Dec 9, 2012
    Posts:
    29
    Any idea when the optimizations will come in? Really excellent product but such a performance killer.
     
  22. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,190
    well it does support dynamism rather well
     
  23. Pix10

    Pix10

    Joined:
    Jul 21, 2012
    Posts:
    843
    All games are built around limits.

    Your limits, the limits of the people you work with, and the limits of the platform you're targeting.

    This is amazing work, and so is Tomorrow People, and it'll get better and better. But it doesn't mean anyone should ditch their Smoke & Mirrors tips books any time soon. I'm pretty sure we'll still be faking things and making sacrifices in 20 years time, as expectations rise in line with the technology.

    With that in mind, what's to diss? It's going to be useful to a lot of people and probably inspire some great game ideas. It's what you do with it that counts.
     
    SteveB and RB_lashman like this.
  24. DivergenceOnline

    DivergenceOnline

    Joined:
    Apr 19, 2015
    Posts:
    244
    If you're willing to donate half your FPS, which I doubt anyone making anything larger than a gamejam will.
     
  25. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,190
    Where did I diss anything? I'm pointing that a generic implementation will never be as optimized as a tailored implementation where edge case can simply be design away either in algorithm or in assets ...

    It doesn't diminish their achievement, it just explain why it's not more widespread in arbitrary projects.
     
  26. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,190
    What I meant is that artefact with moving object aren't as dramatic, though I don't know what is the specifics of colors being washed out by the gradient shadows as it does not exist in other demo (might be specific to things they are doing).
     
  27. daville

    daville

    Joined:
    Aug 5, 2012
    Posts:
    250
    This might be obvious and I saw someone asking this on page 3, but got not conclusive answer... so this won't work on consoles right?
     
  28. chiapet1021

    chiapet1021

    Joined:
    Jun 5, 2013
    Posts:
    604
    It seems unlikely that much of the dynamic aspect of SEGI will work on current generation consoles. Certainly not now, without any of the optimizations on the roadmap in place. It seems more likely (although still not guaranteed, obviously) that if/when baking the GI is possible, some version of that might be feasible on consoles.
     
    RB_lashman likes this.
  29. spraycanmansam

    spraycanmansam

    Joined:
    Nov 22, 2012
    Posts:
    247
    EDIT: Mistaken. See post below :)
     
    Last edited: Jun 29, 2016
  30. DivergenceOnline

    DivergenceOnline

    Joined:
    Apr 19, 2015
    Posts:
    244
    I made a statement and supported it with visual evidence in the form of screenshots with the unaltered profiler data overlayed on top.
    If you're choosing you refute that claim and the subsequently admitted evidence, you need to provide your own of you "Getting 60fps" in an "actual game scene" like I've shown. That's how the rules work. Otherwise it's just talk.

    This isn't just someone challenging you to backup your claims. I genuinely really hope that it turns out others are, in fact, able to get usable framerates in actual games, and that it turns out there's something uniquely wrong with what SEGI is doing in my scene and it isn't working correctly. I'd love to be doing something wrong that can be corrected, so please, let's see it.
     
  31. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,190
    Yeah that's definitely an area where I want to be wrong too, I'll be pessimist until proven otherwise :D Give me crow to eat!
     
  32. spraycanmansam

    spraycanmansam

    Joined:
    Nov 22, 2012
    Posts:
    247
    My mistake. I actually went to grab a screenshot for you and realised I was thinking of another scene I had been testing. I've edited my post above accordingly :) I don't give a rats ass about challenges to be honest (nor was I challenging you in my original post) but I can man up when I'm wrong :)

    SEGI does indeed half the framerate, but like I mentioned, I never expected it to be game-ready and no one else should at this point either.
     
    Last edited: Jun 29, 2016
  33. DivergenceOnline

    DivergenceOnline

    Joined:
    Apr 19, 2015
    Posts:
    244
    Damnit. I was hoping you'd make me look like an asshole with something checkmarked that i shouldn't have checkmarked or something lol
     
    Zuntatos and spraycanmansam like this.
  34. Vadya_Rus

    Vadya_Rus

    Joined:
    Oct 23, 2013
    Posts:
    8
    Firstly I want to thank Cody for all of his work on the GI system. It's an absolute blast to work with. In the video below, I thought I'd share my little experiment with SEGI with you all. I'm running this with two Nvidia GTX 760s in SLI. The lighting in the scene is achieved via the directional light and emissive materials. Not a single point or spot light exists within the scene.

     
    Last edited: Jun 30, 2016
    SteveB, RB_lashman, Arganth and 5 others like this.
  35. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,301
    RB_lashman and blueivy like this.
  36. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,190
    Well that validate even more real world situation, not as many artifact at all if any!
     
    RB_lashman likes this.
  37. DivergenceOnline

    DivergenceOnline

    Joined:
    Apr 19, 2015
    Posts:
    244
    What did you use for SSR?
     
  38. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,190
    I love this question :D
     
    macdude2 likes this.
  39. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    That scene looks great! I'd appreciate it if people mentioned their hardware, and possibly shaders used, when showing demos to help get an idea of where to shoot for getting something good going.
     
    RB_lashman and DivergenceOnline like this.
  40. Vadya_Rus

    Vadya_Rus

    Joined:
    Oct 23, 2013
    Posts:
    8
    Actually I didn't use any form of SSRR. All the reflections are achieved with SEGI. You can have a look at my effects stack below.



    You make a valid point. My hardware is as follows:

    Intel Core i7 3770K at 4.0GHz
    24GB RAM
    Nvidia GTX 760 with 4GB GDDR5 VRAM (2-way SLI)
     
    buttmatrix, pcg and RB_lashman like this.
  41. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,267
    I am developing a game with procedural levels. This asset look great.

    Would it be possible to keep the generated voxels from frame to frame? To increase speed. My light sources does not move.

    I know it could be an issue with moving characters etc.
     
    RB_lashman likes this.
  42. Arganth

    Arganth

    Joined:
    Jul 31, 2015
    Posts:
    280
    you can turn off the GI updates.
    havent played around much with it
    but you can basically "sample" the scene with the "ultra" settings
    then turn it off and profit ;)
     
    buttmatrix and RB_lashman like this.
  43. chiapet1021

    chiapet1021

    Joined:
    Jun 5, 2013
    Posts:
    604
    Not having to revoxelize while the scene is static is one of the optimizations (or maybe a set of optimizations) Cody has planned. I'm hoping he can expose some sort of "revoxelize()" method so that we can manually tell the client to regenerate the voxels when a specific event occurs (e.g., I add or remove a mesh from the scene).
     
    RB_lashman likes this.
  44. chiapet1021

    chiapet1021

    Joined:
    Jun 5, 2013
    Posts:
    604
    Wait, you can do this now already?
     
    RB_lashman likes this.
  45. Vadya_Rus

    Vadya_Rus

    Joined:
    Oct 23, 2013
    Posts:
    8
    Yes. It's possible and all the reflections will display properly. Except when the camera/player exits the voxel volume.
     
    Arganth, RB_lashman and chiapet1021 like this.
  46. chiapet1021

    chiapet1021

    Joined:
    Jun 5, 2013
    Posts:
    604
    Ah interesting!
     
    Arganth and RB_lashman like this.
  47. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,267
    How much memory is it using?
    Could anyone check the profiler to see the time used when the realtime GI(voxel generation) is switched off?
     
  48. scheichs

    scheichs

    Joined:
    Sep 7, 2013
    Posts:
    66
    One could make a script that enables SEGI for one frame when the camera leaves a certain inner bounding box (probably half the voxel volume). It's cool to have fully reflections for static geometry and "area lights".
     
    RB_lashman likes this.
  49. scheichs

    scheichs

    Joined:
    Sep 7, 2013
    Posts:
    66
    Low - around 80MB
    High - around 550MB

    Time for the GI light pass (without GI update) is around 3ms on my Geforce 970
     
    RB_lashman likes this.
  50. chiapet1021

    chiapet1021

    Joined:
    Jun 5, 2013
    Posts:
    604
    I wonder how much of a pop there is in performance cost when enabling or disabling SEGI like that. Sorry, I'm at work right now, and my PC is having booting issues anyway, which hopefully will be resolved in the next couple days.
     
    RB_lashman likes this.