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

[Next-Gen Soft-Shadows 2] Sophisticated dynamic penumbra Shadows for Unity

Discussion in 'Assets and Asset Store' started by tatoforever, Nov 8, 2016.

?

Would you like to buy this on the Asset Store? If so, how much?

Poll closed Jul 10, 2017.
  1. I like it to be priced between 20 to 10$.

    56.8%
  2. I like it to be priced between 10 to 5$.

    39.0%
  3. Zero $, I'm not interested, I love my Unity's default aliased, pixelated horrid-shadows.

    4.2%
  1. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    Folks,
    I'm trying to push out PCSS for directional shadows alongside Contact-Shadows altogether in v1.3 (should be finished this week). After that, only performance/optimizations/minor updates will be performed on NGSS 1.x as we are moving it already to ScriptableRenderLoops.
    NGSS 2.0 will come in the future as a custom renderer for Unity and you'll have 15$ discount if you bought NGSS 1.X. I'm thinking pricing it 30$ at the very beginning and rise the price as future features are added.
     
    nxrighthere, ZJP, brisingre and 2 others like this.
  2. greengremline

    greengremline

    Joined:
    Sep 16, 2015
    Posts:
    183
    How far in the future is Unity planning on implementing ScriptableRenderLoops?
     
  3. Kolyasisan

    Kolyasisan

    Joined:
    Feb 2, 2015
    Posts:
    397
    Didn't you say recently that you won't be able to implement directional PCSS until Render Loops arrive? Or am I missing something?
     
  4. Lex4art

    Lex4art

    Joined:
    Nov 17, 2012
    Posts:
    445
    Wow! What's on the plate for NGSS 2.0? )
     
  5. chiapet1021

    chiapet1021

    Joined:
    Jun 5, 2013
    Posts:
    605
    I believe from the Unite video, it will be officially part of Unity 2017's first release, which is currently slated for June.
     
  6. yellowelephant

    yellowelephant

    Joined:
    Aug 7, 2014
    Posts:
    7
    Hey bought your asset and it sure looks really awesome.
    I have one question though (maybe I am just too blind to see it) but is the Shadow Strength (in terms of "transparency") completely gone when using Soft Shadows + Directional Light or is there another way for me to adjust the shadow transparency while using soft shadows.
     
  7. Flurgle

    Flurgle

    Joined:
    May 16, 2016
    Posts:
    389
    @tatoforever To be honest, I hope you keep the price low to keep it accessible to all. This is one asset that brings Cryengine / UE4 feel. We need more people using this. Can't wait for v2 though
     
    tatoforever likes this.
  8. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    So to summary
    a) NGSS 1.x at 15$
    b) NGSS 2.x start at 30$ and grow with futures

    Fine for me if NGSS 1.x is not abandoned. :)
     
  9. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,676
    I think 1.5 will be abandoned, as I would naturally expect all the new development is going to go into NGSS 2.0.

    My guess is that when 2.0 comes out, 1.5 will be deprecated, but still available for download by those who purchased it. I've seen this pattern of upgrading in the asset store before.
     
  10. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    Folks v1.3 update got delayed for this week (doing final touch-ups). ^^
    Now regarding NGSS development, NGSS 2.0 won't be a separate product it will be the same only built with ScriptableRenderLoop. Anyone who already own v1.x will have the choice to upgrade to 2.0 for 15$ more. NGSS 1.x will remain a shadow library only product. NGSS 2.0 will be the whole shadow library in v1.x plus more shadow features and lighting features (Forward+ renderer etc).
    Again, it will work with anything that works with standard shaders with the bonus that setup will be only select the renderer and you won't have to tweak shadows penumbra with Strength value anymore. :)
    EDIT Forgot to mention that NGSS v1.x will be supported till ScriptableRenderLoops became a standard Unity feature (out from Experimental state).
     
    Last edited: Apr 3, 2017
    nxrighthere, punk, OCASM and 3 others like this.
  11. No0B25

    No0B25

    Joined:
    May 2, 2016
    Posts:
    70
    Does that mean ScriptableRenderLoops can go as far as to enable a completely custom renderer without the need for Unity's source code? That would be pretty huge, because it would also mean that there could be potential performance benefits if done by seasoned coders.

    I really don't want to come across as rude or something, but do you feel that you would be up to such a task? I mean, would you be doing this on your own? Your plans sound like they have lots of potential and ambition and I'd like to know whether others and I could depend on it when time comes.
     
    tatoforever likes this.
  12. Flurgle

    Flurgle

    Joined:
    May 16, 2016
    Posts:
    389
    @No0B25 From my understanding yes. ScriptableRenderLoop basically represents the "Singularity" moment for Unity's graphics engine. To be honest, this could draw in a huge amount of people from Cryengine, UE, and custom engines
     
    tatoforever likes this.
  13. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    @No0B25
    Yes, that's the whole Idea with ScriptableRenderLoops, it's already possible to create custom renderers somewhat rigid or limited (The Lab from Valve it's a good example) but ScriptableRenderLoops allows you to do whatever you want in whatever order you like.
    It is not as big as it seems, still you need to know how graphics, shaders and rendering pipeline works but there's a huge low level work already done by Unity Engine. It is not that much different from a C++ renderer, the real difference is that you are kinda writing it in a higher level, C#. You kinda tells the engine to draw things in a given camera in a given order (basic form).
    We've already made one for our mobile game and we're moving it to PC/Consoles with ScriptableRenderLoops as we speak.
     
    Lex4art, No0B25 and punk like this.
  14. nbac

    nbac

    Joined:
    Jul 7, 2015
    Posts:
    267
    thanks for the shadows ;D
     
    punk and tatoforever like this.
  15. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    @nbac
    I'm looking for my jaw, it dropped on the floor. :D
    In all seriousness, everything looks great in that video. :)

    PS: Thanks for the NGSS showcase too. :cool:
     
  16. Flurgle

    Flurgle

    Joined:
    May 16, 2016
    Posts:
    389
    @nbac nice version :) I'm working on the same scene, will post it one day.
     
  17. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,676
    @tatoforever - With the different shadowing solutions you're coming up with ... is there or will there be a way to get shadows on transparencies, like water?
     
  18. nbac

    nbac

    Joined:
    Jul 7, 2015
    Posts:
    267
    i really would like to see that! please let me know when you got to show something!
     
  19. nbac

    nbac

    Joined:
    Jul 7, 2015
    Posts:
    267
    sure thing i am really excited to get my hands on 1.3
     
  20. TheMasonX

    TheMasonX

    Joined:
    Nov 9, 2012
    Posts:
    27
  21. zelmund

    zelmund

    Joined:
    Mar 2, 2012
    Posts:
    437
    very good result =)
    all works fine
    no impact on performance
    is it necesary to have tag "MainCamera" on cameras in scene? or it can be avoided in future?
     
    TheMasonX likes this.
  22. TheMasonX

    TheMasonX

    Joined:
    Nov 9, 2012
    Posts:
    27
    Thanks! I'm pretty happy with how performance friendly it turned out to be, though I've got a few ideas to boost it a bit more anyways haha. And yeah, the camera thing can actually be removed entirely. I tried something or other with the depth+normals and forgot to remove that when I figured out a better way without them haha.
     
    Kolyasisan and punk like this.
  23. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    Nice work, but given that you will be asked many questions about your tool the best would be to open a new subject, to avoid hijacking this one. ;)
     
    tatoforever and punk like this.
  24. Flurgle

    Flurgle

    Joined:
    May 16, 2016
    Posts:
    389
    Awesome, maybe you and @tatoforever can collaborate and build us an industry superior shadows solutions to make the Unity engine THE go to for high fidelity graphics of the future :)
     
    punk likes this.
  25. Kolyasisan

    Kolyasisan

    Joined:
    Feb 2, 2015
    Posts:
    397
    It's really nice! So far I can't see a big performance impact, it's pretty little for us. Shadows look superb. Close Fit mode is broken, a lot of artifacts start to appear, but I suppose it's natural as it probably was designed to work with Stable Fit.
     
  26. wetcircuit

    wetcircuit

    Joined:
    Jul 17, 2012
    Posts:
    1,409
    I do a lot of figures in close ups, and anti-aliased jagged hair shadows have been the worst….

    You can see how soft the hair shadow looks on her shoulder. Thanks!

    Unity - Main Camera 2017-04-08 at 22.40.22.png
     
    nxrighthere, hopeful and punk like this.
  27. AlanMattano

    AlanMattano

    Joined:
    Aug 22, 2013
    Posts:
    1,501
    I like it! Thanks for the product!

    When I rotate pitching my camera in X up down, the shadow changes shape. So in VR can give you a strange effect shadow. I change the player settings from "Close" to "Stable Fit" and it fixes the problem.

    I wish to enable and disable this feature in the game. So that the player can decide the type of shadows.
    Code (CSharp):
    1. GraphicsSettings.SetCustomShader
    Looks like do not include an option for screen space shadow.
    How to achieve this via scripting? Can you provide a scene example?

    PS: Can you add one more option?
    Using directional light I wish my shadows sharper at the base of the object and softer far away from the object. The sun is more than one directional light. Is a kind of area light far away. So there is there is more softness smoothness shadow when the shadow is far from the object. Here is my example. In this example, I make 3 directional lights with a maximum of 1° degree in Y. I divided the intensity in 3. Is more computationally expensive but improves realism.

    upload_2017-4-9_10-36-56.png
     
    Last edited: Apr 10, 2017
  28. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    Hi Alan, :)
    This is normal with directional soft shadows when cascade splits are enabled, here are some possible solutions:
    1 - You can either make the shadows less soft to make cascade transition less visible
    2 - Set cascades distance larger (to push a bit further cascade transitions)
    3 - Or disable cascade entirely (no splits, no transitions visible)
    The technique you are describing is called PCSS, it makes shadows harder - softer depending on distance between shadow caster and receiver. Which is being added right now to directional lights on NGSS v1.3 (That's why it got delayed to week btw). Point Light shadows already have support for PCSS.
    Also, in version 1.3 you have contact shadows which does a similar thing on screen space and avoids petter panning and bias problems.
    [EDIT]
    @AlanMattano
    Just realized you where talking to MasonX, thought you where talking about NGSS so my suggestion may not work.
     
    Last edited: Apr 10, 2017
    AlanMattano likes this.
  29. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    Folks,
    As already explained, version v1.3 have been delayed to this week to include PCSS alongside contact shadows. Which you'll be able to switch between them at will. We already have PCSS support on point light shadows, this week on Directional shadows and in the near future on spot lights too.
     
    Last edited: Apr 10, 2017
    Flurgle, AlanMattano and punk like this.
  30. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    I saw that few days ago, pretty neat.
    PS: Btw, 64 taps it's a bit too much don't you think? We only do 16/25 (soon 32 as an option).
     
    Last edited: Apr 10, 2017
  31. ekergraphics

    ekergraphics

    Joined:
    Feb 22, 2017
    Posts:
    257
    Can this plugin help me with the inaccurate default shadows of Unity?


    Notice the light area along the bottom corner of the inside of the tray.


    Notice how the entire bottom of the tray disappears when you get closer to the table (yet still not touching).


    Also, I'm worried about the replacing of the default files in Unity I've read about. What are the details surrounding that? Do you have to affect an entire installation or can it be done on a per project basis?
     
  32. thelebaron

    thelebaron

    Joined:
    Jun 2, 2013
    Posts:
    851
    It would affect your entire unity install but its really just replacing two(i think, it was a while since I did it) shaders. You can easily back them up into a zip file.
     
  33. thelebaron

    thelebaron

    Joined:
    Jun 2, 2013
    Posts:
    851
    I just tried making a similar open box and testing out how it looked in unity, got the same problems. Seems to be a bias issue, setting it to 0.02 fixed it for a box that was the size of a capsule, but on a smaller scale box it was still pretty ugly. If you could scale up your project it might fix your problems but then again that might introduce other issues.
     
  34. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    @roberteker
    It can help you, you have to make sure object scale is set right (1unit = 1metter).
    Also, upcoming NGSS version (v1.3 coming this week) will support contact shadows (screen space raymatched shadows) which completely removes any petter panning and bias issues with such shadows.
    NGSS install is a per Unity / per project setup. First you have to replace on Unity directory one shader library (this is done per install) and then you have to delete your shader cache folder on your project (so Unity will import the new shadow libraries). Then for directional shadows replacement is done in a per project basis (through Unity Editor menu).
     
    Last edited: Apr 11, 2017
  35. ekergraphics

    ekergraphics

    Joined:
    Feb 22, 2017
    Posts:
    257
    Thank you for your replies.

    The project is for VR and the models are sourced from CAD, so the scale is absolutely right and verified 1:1. But that also means that a 3mm wall thickness is 0.003 which I've seen cause issues in other places too. But I'm guessing we're getting more and more VR projects these days, so perhaps a more general solution is required for projects littered with these very small numbers.

    I will await 1.3 to make a purchase then.
     
  36. NeatWolf

    NeatWolf

    Joined:
    Sep 27, 2013
    Posts:
    924
    Hi there!

    I bought the package some time ago but still haven't had the chance to use it as I'm currently busy on another project.

    Yet! :)

    I'd love to know if it's going to support billboarded grass and trees shadows (maybe also some DX11 grass around here in the store).

    One thing that I generally really miss is shadow distance-falloff. So that even a direct light such as the sun isn't going to project the shadow of the tip of a traffic light during the day as sharp as the one on the base.
    But, I believe this is almost totally achieveded or achievable with the current builds, setting a large penumbra value.

    would it be possible, insted, to have shadows that actually fade away with distance between casting object point and receiving surface point, such as the area lights shadows of 3DS Max?

    I'm really looking forward to using this asset, even just for admiring it in action! :)
     
  37. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    Yes, for that you would have to enable contact shadows on your light (coming soon in v1.3). And you have to make sure your grass/tree shaders writes to depth.
    Those are well known shadowmap problems, few techniques are already available to alleviate such artifacts (normal/slope based bias, reverse zdepth, increase shadowmap size, increase depth precision, raymatched shadows, etc). Contact Shadows (aka screen-space raymatched shadows) should allow you to fill that gap and it naturally makes a pseudo PCSS for free as it makes shadows hard at contact (close to caster). After v1.3 I will focus on artifacts improvements for local lights (point/spot).
    This technique is called PCSS, it's already supported on point lights since v1.0 and directional lights from v1.3 which should be available this week. I'm cleaning up light scripts and it should be good for production. :)
    A combination of PCSS and contact shadows should give you pretty good results and fix any petter-panning and bias issue.
     
    NeatWolf and punk like this.
  38. NeatWolf

    NeatWolf

    Joined:
    Sep 27, 2013
    Posts:
    924
    Thanks!

    That is the best answer I could have hoped for!
    I'm really glad to have purchased your asset :)

    By the time I'll be able to use it effectively I'm pretty sure I'm going to find all these improvements - to the already great results I can appreciate just by looking at pics at vids!

    I have 2 more questions, one moving to higher end platforms, the other moving on the opposite side.

    How does the asset perform on VR/AR, and on mobile?

    Is it fully iOS/Win (Android?) cross compatible?

    Of course I'm not pretending to have complex scenes on mobile, but, for instance, a simple showcase about an object, with a single non-blob low-res light would be nice to have :)

    Are there any particular prerequisites to have the soft shadows running (OS, Unity version, hardware, drivers) ?
     
  39. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    @NeatWolf
    Hi again,
    VR/AR and Mobile will depend entirely of one factor. How many lights you have casting shadows. Not just with NGSS, even without it. On VR consoles it's recommended to have no more than 12 spot lights and 2 point lights (active and visible). On PC VR you can easily double that (Depending on targeting hardware).
    Regarding mobile, well Unity does not support spot/point shadows on mobile last time I checked (only directional shadows) and NGSS works with native C++ renderer feature set so only directional NGSS shadows are available on mobile and do recommend a maximum of 1 directional light casting shadows.
    Upcoming versions will provide a quality settings to add/remove more taps per fragment (16/25/32) so it should give you more choice between quality and speed.
    Let me know if you need more info.

    Regards,
     
    ilmario, buttmatrix and NeatWolf like this.
  40. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    Hi,
    Can the plugin do contact shadows ?
     
  41. No0B25

    No0B25

    Joined:
    May 2, 2016
    Posts:
    70
    In the upcoming version, yes.
     
    Flurgle, NeatWolf and zenGarden like this.
  42. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    Version 1.3 coming this week yes.
     
    Flurgle, Jick87 and HerrDarko like this.
  43. RolfBertram_dot_me

    RolfBertram_dot_me

    Joined:
    Mar 1, 2011
    Posts:
    128
    Does not work for iOS? When I switch platform to iOS, it does not work. This is not clearly pointed out in the Asset store description. Or am I missing a setting?
     
    Last edited: Apr 15, 2017
  44. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    Hi,
    This have been fixed in v1.3, It currently works, email support with your invoice number for the fixed version.
     
    toto2003 likes this.
  45. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    Folks,
    Submission completed, you can email later at night for pre-release versions (I'll answer them all tomorrow). If it's your first time emailing for pre-releases (support) please provide your invoice number. Allow few hours for first-time check up.
    Version 1.3 features contact shadows and PCSS for directional lights. PCSS is already supported on Point lights. Up next spot lights PCSS (will probably skip entirely as it's already provided on ScriptableRenderLoop version). Up next performance and quality sets for shadows and shadows artifacts improvements (v1.4-1.5) and that will do it for first cycle of NGSS. Next one will be the new v2 on ScriptableRenderLoops.
     
    buttmatrix, OCASM, Teh_Lemon and 7 others like this.
  46. abatcat

    abatcat

    Joined:
    Feb 8, 2015
    Posts:
    70
  47. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    One of the available volumetric lighting package on the Asset Store works out of the box the other you have to override a small value on their package (it's explained in the documentation). If you ever need helps you can always email support and we can do it quickly for you. :)
     
  48. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    Folks,
    I've been having a bit of trouble with my email server lately. Some of your emails are getting trought, others are being blocked and sent to spam folders. You'll start to receive replies from us slowly. We are trying to solve that as fast as we can so we can provide pre-release before it hit the store.
    Worst case scenario, you will have to wait a couple of more days and update will be available on the store.
    As always, thanks for your stellar support and patience. :)
     
  49. canek

    canek

    Joined:
    Sep 13, 2014
    Posts:
    21
    Hello,

    Using version 1.1, and double checking that everything is installed as per the guide (for both point/spot and directional), I see no difference between the Unity directional light shadows and NGSS. The strength slider changes the overall transparency on both and there's no extra softness added. Switching between hard and soft makes almost no difference. The target is set to iOS but it seems that it also happens when the target is switched to desktop. Are directional shadows supposed to feather the same way as point/spot do when moving the strength slider? Anyone experiencing this? I'm using unity 5.6. Spot and point lights work fine.

    Otherwise, NGSS is a game changer for visual quality in Unity! Well done!
     
    Last edited: Apr 20, 2017
  50. Flurgle

    Flurgle

    Joined:
    May 16, 2016
    Posts:
    389
    @canek did you go to the graphics settings, and manually set the internal screen space shadow shader?