Search Unity

Unity Realtime Reflections and GI and realism Exploration

Discussion in 'Made With Unity' started by HeliosDoubleSix, Sep 2, 2014.

  1. Zomby138

    Zomby138

    Joined:
    Nov 3, 2009
    Posts:
    659
    @AcidArrow Then why spend any time fixing Beast at all?
     
  2. Baldinoboy

    Baldinoboy

    Joined:
    Apr 14, 2012
    Posts:
    1,526
    If Enlighten is a finished product that is.
    Hopefully Enlighten will be fully functional before they bring in the next lighting system;).
     
  3. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,788
    Next Lighting system???
     
  4. Baldinoboy

    Baldinoboy

    Joined:
    Apr 14, 2012
    Posts:
    1,526
    I am just saying that Unity tends to go to something new before finishing what they had. Hopefully Enlighten will be Unitys' lighting system from now on. It probably will be since it works with mobile devices so well.
     
  5. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,788
    Ah right.... i see, yes that happen . . :p
     
  6. blueivy

    blueivy

    Joined:
    Mar 4, 2013
    Posts:
    633
    I always believed enlighten would be fully realtime sooner or later.
     
    shkar-noori likes this.
  7. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,749
    I don't know what bug Helios refers to, but I'm assuming so that it's also fixed for 4.6.

    And I'm not sure where this Unity always switches things comes from.

    They had... No GI lightmapping solution, then Beast for 3.x and 4.x and now Enlighten.

    Beast was bought by Autodesk and its development has slowed down a lot. It's quickly becoming outdated. So staying with it for much longer isn't doing Unity a lot of favors.

    Unity either had to make their own solution, or find a partner with good tech, who is willing to work with them. It seems they have found that with Geomerics/Arm.
     
  8. p87

    p87

    Joined:
    Jun 6, 2013
    Posts:
    318
    any tips on getting UV's to play nice with enlighten? I'm having a lot of issues with bleeding... looks horrible
     
  9. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,749
    Enlighten likes as few islands as possible. It even merges things as much as it can. Take a look at the settings in Lighting > Object while having a mesh selected.
     
    p87 likes this.
  10. HeliosDoubleSix

    HeliosDoubleSix

    Joined:
    Jun 30, 2013
    Posts:
    148
    Not last I looked it was only fixed in 5 where they are removing it, hence the hilarity, this is made worse by the fact the current Enlighten implementation in 5 does not handle dynamic objects in the shadow of a baked light as it moves from foreground to background passing from realtime to baked, they are looking into this after 5, so basically the only place that situation works is in the beta using Beast, any other version of Unity cannot do that nor in Unity 5 Release version

    There are a ton of contributing factors, it is a source of constant pain, yes fewer islands helps but it is impossible to have only one island, and even then other objects bleed onto other objects. What state that will be in by release I am unsure, one thing to note is all objects in the same 'system' basically are put onto one light map texture which means objects within that can bleed onto other objects inside, so say you had a really bright cube and it got placed in the same system as your wall on the other side of the room, the bright light from the cube can bleed onto the wall as it shares the same lightmap, in that specific case you can specify the system manually for the cube and it will get it's own private lightmap then making it impossible for it to bleed. Problems like that should just not happen IMO and it is a bug and should be fixable by Unity and very well may be fixed by release... I hope!
     
    hippocoder and p87 like this.
  11. thempus

    thempus

    Joined:
    Jul 3, 2010
    Posts:
    61
    I was asking people the other day for some kind of tool that would fix this type of problem, I explain it in detail on this thread http://forum.unity3d.com/threads/3d-scanning-for-3d-scenes.266659/
     
  12. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,749
    I'm still not 100% sure what the bug is. (I'm not arguing that there isn't a bug, I'm just not clear on what it is). From the original post I understand that it has something to do with shadow distance and the blending of dual lightmaps.
     
  13. Zomby138

    Zomby138

    Joined:
    Nov 3, 2009
    Posts:
    659
    It's that you have 2 lightmaps, but only one set of lightprobes. The lightprobes are based on the near lightmap, and are incorrect for the far one.
     
  14. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,749
    Ah, okay that makes sense.

    I think in 5 lightprobes are updated in real time, which is probably why the bug is fixed and why it's not backported to 4.x.
     
  15. blueivy

    blueivy

    Joined:
    Mar 4, 2013
    Posts:
    633
    Any more screenshots of you playing with the gi?
     
  16. HeliosDoubleSix

    HeliosDoubleSix

    Joined:
    Jun 30, 2013
    Posts:
    148
    Oh many many screen shots, glorious screen shots, which I cannot show yet as I am working with Unity now to produce shiny show off material, so will post them when it is ready, so super busy, I can't wait to reveal the work they have been doing, and of course showing off my own little contribution
     
    blueivy and shkar-noori like this.
  17. blueivy

    blueivy

    Joined:
    Mar 4, 2013
    Posts:
    633
    Wow! Now you have me pumped :D
     
    shkar-noori likes this.
  18. shkar-noori

    shkar-noori

    Joined:
    Jun 10, 2013
    Posts:
    833
    give us, give us all the screenshots, now with the real-time reflections of beta14 :D
     
  19. blueivy

    blueivy

    Joined:
    Mar 4, 2013
    Posts:
    633
    Do non static objects cast indirect shadows?
     
  20. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,749
    No, they don't contribute to the GI.
     
  21. HeliosDoubleSix

    HeliosDoubleSix

    Joined:
    Jun 30, 2013
    Posts:
    148
    None static objects have no interaction with the bounce lighting at all ( apart from lights )

    They can cast realtime shadows as per usual if the light is set to realtime, and can take receive approximated lighting from the scene via light probes placed manually around the scene

    also realtime shadows are limited right now, you cannot do truly soft / area / penumbra type shadows in realtime, for that they need to be baked still. but they do have a new choice foo realtime shadow types being 'blur' or 'PCF5x5'
     
  22. blueivy

    blueivy

    Joined:
    Mar 4, 2013
    Posts:
    633
    Hm ok that's what I figured. And helio, do you know if the soft penumbra shadows are ever going to be realtime? from my understanding that's a hard thing to do.
     
    shkar-noori likes this.
  23. HeliosDoubleSix

    HeliosDoubleSix

    Joined:
    Jun 30, 2013
    Posts:
    148
    Ray tracing is easy, the hard part is making it fast, UE4 added support for such recently, though that has much higher spec requirements than Unity typically targets. I know the people at Geometrics / Enlighten have dabbled in this area, and technology PowerVR can do such things as it is basically a ray tracer that works on mobile ( Unity are working with them in future but they are currently not aiming to use the general ray tracing tech such as for reflections or shadows, So no one is talking about it yet at Unity, well not to me at least, but one day... one day :)
     
  24. blueivy

    blueivy

    Joined:
    Mar 4, 2013
    Posts:
    633
    Aww :( I thought enlighten was working on some super secret area light shadows that they were planning on adding because you said they weren't in "yet". I know they have a presentation where they had some realtime area light shadows working with shadow maps, I wonder if there still working on those.
     
  25. janpec

    janpec

    Joined:
    Jul 16, 2010
    Posts:
    3,520
    Please share with us when you have something ready, looks like Enlighten is only hope for GI in Unity.
    Btw whats your opinion on quality of UE4 GI? I think its amazing, and so far i have to say its quality is far better than what i have seen in Unity so far in terms of Enlighten shoots. Not sure how much more its stretched on performance impact in comparision with Unity however, would be interesting to know.
     
  26. HeliosDoubleSix

    HeliosDoubleSix

    Joined:
    Jun 30, 2013
    Posts:
    148
    Well I'm sure they are working on that, and other even more spectacular realtime goodness yet to be imagined by the likes of mere mortals, but when and if that is added to Unity and at what performance penalty remains to be determined, Unity seems to have a strong focus on supporting all devices, arguably that is not a focus, but the point is they focus on tech they can bring to the most devices / people, Enlighten is a tech that runs in a lot of places and scales down very well, area shadows are not going to be 'cheap' for all devices till some time in the future, by which point the tech will probably be finished polished and added to Unity :) , problem is we will all have aged a year or two, some of us even more

    In case people were not aware, Directional Specular addition to the recent beta, is pretty cool, and even cooler reflection stuff is on it's way, improving the shiny for everyone

    It basically means an indirect light source such as a wall that is made bright from sun hitting it, or in this case some illuminous cubes will affect the specular reflection in a shiny floor, here made to look a little 'brushed' effect, like a moon over a rippling ocean at night. The quality of this depends on the Irradiance Budget and Quality settings more than normal lighting, basically the quality of your lighting affects the quality of these reflections, and naturally I have it dialled up to 11 here resulting in 180mb of compressed lighting data.

    ( edit this is not the amaze balls work I am doing for Unity, but a test :-D )
    Video shows off how it interacts as you move around, it does not stutter in reality, just my lazy video capturing skills


    UnityScreenSnapz008.jpg UnityScreenSnapz013.jpg

    And here with and without the effect:
    UnityScreenSnapz019.jpg UnityScreenSnapz020.jpg
     
    Last edited: Nov 25, 2014
    John-G and blueivy like this.
  27. HeliosDoubleSix

    HeliosDoubleSix

    Joined:
    Jun 30, 2013
    Posts:
    148
    UE4 is impressive, targeted at a small range of high end devices that can run it, the current GI situation is baked only, very nice baked though. The realtime side of things for UE4 last I checked was they were working on something amazing and realtime but then the 'new' consoles came out and they could not run it fast enough, so they shelved it and made it a hidden option of sorts for experimental use and begun instead to work on something a bit less ambitious, no idea when that is expected to be ready. And of course you can use Enlighten with UE4 too but you have to pay for a license separately. Enlighten as far as I see it is the only solution that can target low end devices, that is it's key strength, the super high quality totally realtime solutions are not ready for use on anything but the highest end desktops for now, and by the time that becomes a standard spec to target well.. Enlighten will likely have something to announce by then that competes with that too.. my guess
     
  28. blueivy

    blueivy

    Joined:
    Mar 4, 2013
    Posts:
    633
    Wow! Enlighten is really going to change the way Unity games will look, and it's probably going to be the determining factor when unity 5 releases. Can't wait to see more :D
     
    shkar-noori likes this.
  29. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,749
    Nice images and demonstration but I really dislike that (RGBM decoding I guess?) artifact:

    UnityScreenSnapz020.png

    Hope it's fixable and not inherent to enlighten.
     
  30. HeliosDoubleSix

    HeliosDoubleSix

    Joined:
    Jun 30, 2013
    Posts:
    148
    Yah that's a recently added bug, it should not do it and will get fixed :)
     
  31. blueivy

    blueivy

    Joined:
    Mar 4, 2013
    Posts:
    633
    I know enlighten handles destructible objects, but what is the workflow to set that up?
     
  32. HeliosDoubleSix

    HeliosDoubleSix

    Joined:
    Jun 30, 2013
    Posts:
    148
    It isn't, Enlighten can do it, but no workflow is setup for that yet, I think that will be added later after 5's release, but everything is as always subject to change when talking about unreleased software
     
  33. blueivy

    blueivy

    Joined:
    Mar 4, 2013
    Posts:
    633
    I'm excited for the enlighten real time cubemap feature that's planned after unity 5's release. Do you know anymore about that?
     
  34. 0tacun

    0tacun

    Joined:
    Jun 23, 2013
    Posts:
    245
    It looked like the gi is a bit "lagging" behind. How does it look with a flickering light source e.g. a candlelight? Is it useable?
     
  35. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,749
    Since a candlelight is mainly direct light and not indirect, it will not update the GI too much anyway.

    From what I've seen, GI starts to lag a bit the higher precompute resolution you have, since it has more data to update with lighting changes. The reason it "lags" is because it does it parallel to whatever else happens to the game so you get a smooth framerate.
     
    0tacun likes this.
  36. Carpe-Denius

    Carpe-Denius

    Joined:
    May 17, 2013
    Posts:
    842
    I like the idea of you doing something "amazeballs" for unity. Your work looks really good and unity needs some good artwork for showcasing.
     
  37. HeliosDoubleSix

    HeliosDoubleSix

    Joined:
    Jun 30, 2013
    Posts:
    148
    Right what AcidArrow says, flickering will instantly affect the immediate illumination but secondary bounces update over time thus slight lag, faster at lower quality naturally, I have it set to 10-20x higher than you would realistically use it, effects like lightning flashes and such do pose a problem though, but then you could use custom shaders to fake it perfectly well if you were so inclined, or just have a large none GI ambient light flicker near by

    Thanks, I obviously agree with everything you said ;-)
     
    0tacun likes this.
  38. HeliosDoubleSix

    HeliosDoubleSix

    Joined:
    Jun 30, 2013
    Posts:
    148
    I have tried to use it, but smashed my face into my hands too many times getting it to behave, because it is kinda broken at the moment at least on my machine

    to be honest I would not get excited about cube maps or box projection as they are terrible approximations useful in only small handful of situations, great for dynamic objects moving around your scene, terrible for large surfaces like walls and floors, and box projection is only useful if your room is a box, which kinda limits it's scope

    they are working on other things though which are way more exciting Enlighten powered reflections which depend on the quality of your GI, and Screen Space Reflections, though again when and if we will see these, could be post 5 release
     
  39. blueivy

    blueivy

    Joined:
    Mar 4, 2013
    Posts:
    633
    @HeliosDoubleSix
    I wonder if something like voxel come tracing could be used to have dynamic objects contribute to the gi. It could be used to cast indirect shadows and color bleeding. Do you think this is feasible?
     
  40. HeliosDoubleSix

    HeliosDoubleSix

    Joined:
    Jun 30, 2013
    Posts:
    148
    Theres a whole alphabet soup of completely realtime GI solutions being worked on in various engines, however they all have very high system requirements, even then casting soft area shadows is a separate issue as it requires much finer calculation than is typically possible in realtime using bounced light even on the highest end machines, you basically need full on ray tracing just for the shadows, so you could add that on top of Enlighten in theory using ray tracing tech ( from the likes of PowerVR on mobile or Nvidia Optix using CUDA ) just for soft shadows directly from realtime lights ( high quality indirect shadowing from bounced light would still be too intensive I think ) I think this is what UE4 have effectively done combined with 'Distance Fields' to speed it up but requires DX11 I think and even then can only use that optimisation on static objects
     
  41. blueivy

    blueivy

    Joined:
    Mar 4, 2013
    Posts:
    633
    I think I misspoke :p what I meant was, take this video for example

    Say if I were to set the red cube as a dynamic object, it wouldn't bounce light into the scene when it's lit or have that dark contact shadow on the wall. But I was wondering if voxelizing the dynamic objects would be feasible, because it would essentially solve the dynamic object not contributing to the gi problem. I know soft area shadows are too fine for this, it's the indirect shadows which voxels can provide.
     
  42. HeliosDoubleSix

    HeliosDoubleSix

    Joined:
    Jun 30, 2013
    Posts:
    148
    Sure it works, but as far as Unity adding anything like that, I don't think Unity themselves would be interested due to memory / performance requirements, I guess in theory you could take a basic realtime GI solution and try and marry it with Enlighten to get best of both instead of trying to make EVERYTHING dynamic GI and just use a custom realtime GI for only the box and immediate area around it while using Enlighten for everything else, though by the time you got that working nicely Enlighten may well beat you to the punch and release something, also Livenda are working on something that could solve that issue with SpectraGI but that will work entirely separate from the benefits of Enlighten, if and when it comes out. Enlighten does currently have some dynamic capabilities but I am not sure on the limitations of those and again those will not be part of 5's release AFAIK, sit tight, someone will solve it all within a year from now I bet :)
     
    Last edited: Nov 28, 2014
    blueivy likes this.
  43. Zomby138

    Zomby138

    Joined:
    Nov 3, 2009
    Posts:
    659
    @blueivy I wanna know how they did the light shaft in that video.
     
  44. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,749
  45. HeliosDoubleSix

    HeliosDoubleSix

    Joined:
    Jun 30, 2013
    Posts:
    148
    AcidArrow likes this.
  46. blueivy

    blueivy

    Joined:
    Mar 4, 2013
    Posts:
    633
    I definitely agree! This is just the beginning of a lot of cool things, I can't imagine what unity has on the roadmap now that dynamic gi is the default lighting solution. :D And the people at Unity need to shake Livenda and see what magical GI solution they had in store :p
     
    Last edited: Nov 28, 2014
  47. kurylo3d

    kurylo3d

    Joined:
    Nov 7, 2009
    Posts:
    1,123
    havent heard from livenda in a long time... sounds to me like they were in over their head.
     
  48. FogGobbler

    FogGobbler

    Joined:
    Mar 25, 2009
    Posts:
    147
    Don´t want to turn this thread into another "Livenda-dead or alive" thread, but I guess it´s as dead a doornail :-( .
     
  49. HeliosDoubleSix

    HeliosDoubleSix

    Joined:
    Jun 30, 2013
    Posts:
    148
    Who knows, maybe one more post about Livenda being !£$In$ useless at connecting with the community might hammer the message home, people get very emotional when it comes to their choice of global illumination :)
     
  50. kurylo3d

    kurylo3d

    Joined:
    Nov 7, 2009
    Posts:
    1,123
    so far ive been very pleased with unitys enlighten.