Search Unity

The Courtyard demo using Realtime GI is out!

Discussion in 'Global Illumination' started by Kuba, Nov 5, 2015.

  1. Kuba

    Kuba

    Moderator

    Joined:
    Jan 13, 2009
    Posts:
    416
    Marco-Sperling likes this.
  2. mgear

    mgear

    Joined:
    Aug 3, 2010
    Posts:
    9,411
    oh no..download speed <~200kbs
     
  3. Kuba

    Kuba

    Moderator

    Joined:
    Jan 13, 2009
    Posts:
    416
    @mgear the players download at 10MB/s for me at home and 15MB/s at Unity HQ. The Asset Store package goes at 2.5MB/s. Neither is amazing, but should be fine for fetching ~380MB and ~900MB respectively.
     
  4. ArachnidAnimal

    ArachnidAnimal

    Joined:
    Mar 3, 2015
    Posts:
    1,815
    Hello,
    Is there any chance Unity will also release a demo for baked GI system?
    Thanks.
     
  5. Kuba

    Kuba

    Moderator

    Joined:
    Jan 13, 2009
    Posts:
    416
    I don't think we'll make a specific demo for baked GI, mostly because it's hard to make baked GI the focus of a demo. The tech is just not that interesting these days, albeit still important. That said, we'll be using the demo above for testing the progressive lightmapper* and if there will be any tweaks to the content needed -- we'll release an update.

    *) that tech is interesting, because of the workflow improvements. :)
     
    ArachnidAnimal likes this.
  6. TwiiK

    TwiiK

    Joined:
    Oct 23, 2007
    Posts:
    1,729
    Found this today. It looks absolutely amazing. And it runs fairly great as well.

    Some neat goodies in there like the planar reflections, the procedural skybox, a few new image effects to play with, and just the entire setup itself.

    That filmic vignette effect looks like it would be awesome for a damage taken effect like in most modern shooters. Loving the lens distort as well.

    I was especially excited seeing as it featured a realtime day night cycle with GI which is something I've been struggling with lately, but I was a bit disappointed to see that the realtime resolution is set to 0.25. I have it at 5 in my scene and that absolutely trashes my performance. I was hoping there was some cool optimization tips in here.

    I realize I probably could and should reduce it in my own scene, but it runs so great as long as the day night cycle is paused, so I was hoping there was a way to optimize it so it ran great when it was cycling as well. But when it's cycling I'm guessing the realtime GI is being updated every frame? I was hoping there was a way to update it manually every second or something instead so I could keep my high resolution and get an acceptable framerate. Or perhaps spread the update out over a second so it doesn't hitch

    I don't really understand the performance in the Courtyard scene though. I can turn off every image effect on the camera and not gain a single fps. What is the bottleneck? In the editor at 1920x1080 I have about 60fps seemingly no matter what I do. :p I'm looking at the stats panel for that number.
     
    Last edited: Nov 15, 2015
  7. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,752
    I was never clear on that, is the progressive lightmapper tech only going to be for previewing purposes, or will it also be used for high quality/high density static lightmaps? (replacing final gather?)
     
  8. radionix3d

    radionix3d

    Joined:
    Oct 25, 2015
    Posts:
    29
    I was wondering about this:

    I've searched for this instruction in the files and found three script files containing this instruction: AgentProperties.cs, MaterialProperties.cs, ColorSwatch.cs

    The issue is that I'm as an artist can't understand what it means and how can I implement it in my own project. I've already heard about this instruction in P.A.M.E.L.A presentation but it's still not clear to me how does it work. I would be very thankful if somebody points me to the right direction.
     
  9. zverozyab

    zverozyab

    Joined:
    Apr 26, 2013
    Posts:
    2
  10. Brainswitch

    Brainswitch

    Joined:
    Apr 24, 2013
    Posts:
    270
    Find the script FrameRate, it's on one of the Cameras I think. It uses Application.targetFrameRate.
     
  11. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    I am aware this is a work in progress, and not a feature ready for production, but the demo has many bugs when running with Unity 5.3 , like lightmap sections flcikering or appearing only on some camera angles

    and meshes vertex visual glitches


    Will it get some fix ?

    The shader used is DirSpecHalfLambert , it doesn't uses Untiy new PBR standard shader, it is because of performance reasons ?

    Will we get a complete video tutorial on how to use real time GI and how to configure it when it will become more developped and usable ?
     
  12. AlanMattano

    AlanMattano

    Joined:
    Aug 22, 2013
    Posts:
    1,501
    Ho yes? it is?
     
    solkar likes this.
  13. solkar

    solkar

    Joined:
    Aug 15, 2012
    Posts:
    38
    Is it working in v5.3.1? I'm trying to load it and Unity just crashes time and time again.
     
  14. solkar

    solkar

    Joined:
    Aug 15, 2012
    Posts:
    38
    Forget it. Rebaking the lights fixed it.
     
  15. AlanMattano

    AlanMattano

    Joined:
    Aug 22, 2013
    Posts:
    1,501
    How do I re-bake the lights in this project?
     
  16. LaneFox

    LaneFox

    Joined:
    Jun 29, 2011
    Posts:
    7,521
    solkar and AlanMattano like this.
  17. AlanMattano

    AlanMattano

    Joined:
    Aug 22, 2013
    Posts:
    1,501
    Thx LaneFox, you mean "Light maps" tab and press "Build"
     
  18. KEngelstoft

    KEngelstoft

    Unity Technologies

    Joined:
    Aug 13, 2013
    Posts:
    1,366
    It will be used for baking static lightmaps, but with interactive previewing capability. More info on this is coming soon.
     
    AcidArrow likes this.
  19. Master-Frog

    Master-Frog

    Joined:
    Jun 22, 2015
    Posts:
    2,302
    I can't even run this on my laptop without getting down to 18 FPS. :/

    So many polygons on the environment... as a point of reference, I was playing Overwatch during the beta without any issues.
     
  20. ArachnidAnimal

    ArachnidAnimal

    Joined:
    Mar 3, 2015
    Posts:
    1,815
    I'm not really sure what HW this demo is intended to run on. Looking at the stats i have:
    10 million triangles
    2500 shadow casters
    3300 batches

    Maybe there is a toned-down version of the demo somewhere?

    courtyard.png

    I would love to run this demo to learn more about how the realtime GI works. Its looks great but unfortunately my computer is not good enough to run this demo.
    j
     
  21. KEngelstoft

    KEngelstoft

    Unity Technologies

    Joined:
    Aug 13, 2013
    Posts:
    1,366
    Did you bake occlusion culling?
     
  22. ArachnidAnimal

    ArachnidAnimal

    Joined:
    Mar 3, 2015
    Posts:
    1,815
    The OC is seems to be working fine:

    oc.jpg


    Note that I'm running v1.0 of the courtyard using Unity 5.2.3.
    I'm going to try out the new version of the courtyard after upgrading to the latest version of unity later on. I'll try it out again.
    I think the issue is just that the geometry is very detailed. For example there's cube shaped items which contains hundreds of triangles. So I'm wonder if maybe this was done intentionally to result in better realtime GI?
    I've already learned quite a bit by exploring this demo.
    I learned about the LODs, lightprobes, water, etc. So it's an excellent learning asset.
     
  23. lejean

    lejean

    Joined:
    Jul 4, 2013
    Posts:
    392
    Honestly this is a pretty bad demo.

    - The hierarchy is a complete mess. (try finding the camera)
    - You used modified shaders for some reason.
    - There's so many custom scripts doing who knows what.
    - If I turn off the tonemapping on the camera the lighting is completely different.

    You need to show how good the enlighten system is without all this nonsense.
    I didn't really learn anything from this demo.
     
    zenGarden likes this.
  24. ArachnidAnimal

    ArachnidAnimal

    Joined:
    Mar 3, 2015
    Posts:
    1,815
    I would like to add to the list of interesting things I find about the courtyard demo:

    1. Almost all meshes have hand-authored 2nd UVs. They are not taking advantage of the automatic generate 2nd UVs. Does this mean we are better off importing our own UVs for realtime GI?
    2. There are all of these light probes through out the scene in areas which aren't needed. For example the staircase has numerous lightprobes going down the stairs. But everything in that particular area is lightmap static. So I don't understand why so many, if any, lightprobes are needed.
    staircaseLighrprobes.jpg
    3. Alot of static geometry is not marked lightmap static, instead they are using lightprobes. I posted about it and got a good response here: http://forum.unity3d.com/threads/li...robes-for-static-objects.411656/#post-2683063
    4. I'm still trying to figure out why the Lambert shader is used instead of the Standard shader. The standard shader is almost not used at all in the courtyard demo (I'm going to try swapping out shaders to see what difference it makes)
    5. They are using both a combination of emission light bulbs, along with spotlights at the same time. Is this because the realtime emission GI is not robust enough yet to simply just handle realtime emission traveling large distances (> 1m)?
    6. I tried dynamically adjusting the emission strength of the WallStripLight material during runtime, and the GI system doesn't update based on the new strength of the emission value. This is behaving more like baked GI, not realtime GI.

    Note that this post is not intended to criticize the Courtyard or the developers, but just to simply gain a better understanding of the best practices for working with the Enlighten system. And knowing, at a minimum, what we need to do in order to make the most of the realtime GI.
     
  25. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,752
    Well, yes. Generate lightmap uvs has always been about covenience, it was never about having better results.

    (And for the record, as far as auto uv algorithms go, I think generate uvs does a pretty good job. I do use it while I'm working on a scene and the models change around too much, but I make my own uvs when I'm close to being done)
     
  26. konsic

    konsic

    Joined:
    Oct 19, 2015
    Posts:
    995
    Question about the demo. When I press play, there is no lighting present as in the Courtyard video on youtube.
    How to lit whole scene ?

     

    Attached Files:

    • cy.JPG
      cy.JPG
      File size:
      185.9 KB
      Views:
      1,669
  27. ekergraphics

    ekergraphics

    Joined:
    Feb 22, 2017
    Posts:
    257
    I must say that as a beginner, I find Unity's use of "realtime GI" really misleading. It's not realtime if you need to bake something and pre-computed is just another word for baking to me.

    We import CAD models into Unity and switch on and off large parts of geometry to display various configurations, with both indoor and outdoor parts in the same scene, and so far, no 5.x "realtime" setting have produced good results for us when we switch on a big chunk of geometry, so we always run with all lighting options off (except shadows).

    I'm still waiting for a third party to implement a proper "realtime GI" solution which supports emissive materials. Meanwhile, I get annoyed every time I see the words Unity and "realtime" in the same sentence, because I know it's not 100% true.
     
  28. UnityLighting

    UnityLighting

    Joined:
    Mar 31, 2015
    Posts:
    3,874

    Unity realtime GI is same as Frostbite game engine and same as all next-gen games made by Frostbite.
    I think realtime GI (Enlighten) is good on Mirror's Edge and similar games. Just we need practice
    Sometimes realtime GI is better than baked in my tests. Also precompute time is much shorter than baked one with high quality.
    Also you can simply change Legacy Self-Illuminated shader color and intensity in realtime and use Light Probes for dynamic objects

    You can use Precomputed Realtime GI even on mobile devices but with True Realtime GI you may needs multi GPU to render in true realtime
     
  29. konsic

    konsic

    Joined:
    Oct 19, 2015
    Posts:
    995
    Help. I have updated Unity to 5.6 but when I hit Generate lighting it says:

    Lighting data asset ‘LightingData’ is incompatible with the current Unity version. Please use Generate Lighting to rebuild the lighting data. Realtime Global Illumination cannot be used until the lighting data is rebuilt.
    UnityEditor.DockArea:OnGUI()

    But this is latest version.
     

    Attached Files:

    • gl1.JPG
      gl1.JPG
      File size:
      173.3 KB
      Views:
      843