Search Unity

PlayWay Water - high quality water system

Discussion in 'Assets and Asset Store' started by zuzzu, Oct 9, 2015.

  1. zuzzu

    zuzzu

    Joined:
    Feb 2, 2013
    Posts:
    404
    The new render modes should be compatible with all image-based effects except those that render through command buffers just before the opaque image effects. So far the only assets that I'm aware that render this way is Simul TrueSky and some versions of Screen Space Reflections from the Cinematic Effects package.

    Keeping it short - it most likely is compatible, but I can't say for sure.

    Of course, please send me your invoice number through the private messaging system and I will respond with a download link.
     
  2. TechDeveloper

    TechDeveloper

    Joined:
    Sep 5, 2016
    Posts:
    75
    I can confirm it works well with "Volumetric Fog & Mist". I use it daily and it never has problems.
     
    trilobyteme and hopeful like this.
  3. TechDeveloper

    TechDeveloper

    Joined:
    Sep 5, 2016
    Posts:
    75
    Hello Zuzzu, any chance you would be making an Unreal engine version of this?

    We're considering using Unreal for our next project but one negative at the moment is not having this awesome water system.
     
  4. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    26,096
  5. TechDeveloper

    TechDeveloper

    Joined:
    Sep 5, 2016
    Posts:
    75
  6. zuzzu

    zuzzu

    Joined:
    Feb 2, 2013
    Posts:
    404
    I have no such plans for now, sorry. It's written completely in C# and would have to be made from the scratch for any other engine.

    I'm really excited about this and have plans to ensure compatibility in a few weeks, if there are any issues.
     
    AdamGoodrich and hippocoder like this.
  7. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    26,096
    And in recent times, I'm pretty sure Unity looks better at times.
     
  8. lionroot

    lionroot

    Joined:
    May 1, 2014
    Posts:
    8
    Hello, I’m trying to get my water setup similar to your pictures





    and also similar to the video in little devil inside

    https://ksr-video.imgix.net/assets/005/487/841/1dbb847252cc4ad1c01580a64bd515d8_h264_high.mp4

    I’m trying to keep the sides looking smooth, while letting the surface move up and down. You can see the ripple effects on the bottom.



    I’m on a mac, with os 10.12 and an ATI Radeon HD 5770 1024 MB.

    Whenever I try using the volume scene to study it, I get errors saying it’s not supported



    I’m on Unity 5.4.2, and GPU skinning is off.
     
  9. zmaxz

    zmaxz

    Joined:
    Sep 26, 2012
    Posts:
    143
    Hi!!
    Do you have any plan for "dynamic ripples" ?
     
  10. bome99

    bome99

    Joined:
    Sep 14, 2009
    Posts:
    105
    Hi Zuzu.
    I love playerway water!

    You mention it is able to use Unity's Screen Space Reflection, how do I enable that?
    Can I set the water to use Deferred some how?

    Cheers
    Bo
     
  11. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    26,096
    I was thinking I'd like to use reflection probes, is this possible also (for perf)... in fact what are the recommended settings for best quality/performance on low end desktops? :)

    Appreciate the work put into this.
     
  12. RampantCoyote

    RampantCoyote

    Joined:
    Aug 28, 2013
    Posts:
    2
    I'm posting this one on behalf of a co-worker who is having forum problems right now:

    There is a problem with masking and scaling when displaying water in a viewport taking up only part of the screen. The error, most likely in the water shader, seems to have something to do with the screen and viewport sizes being referenced improperly in place of each other. In the sample project, I’ve added a box, the water in non-infinite mode, an additive area, and a subtractive area. The border polygons are drawn properly, but the water surface is not.

    To see the problem, use the sliders in the sample project. Adjust the viewport to something below full screen, then use the other slider to move the viewport around. You can see that the clipping error depends directly on the position of the viewport, and has a strange scaling artifact as if the water surface is scaled down twice.

    The problem occurs the same way with infinite water with a hole in it, or with a scene with a single additive water chunk. It also messes up the display of shadows, where the shadows work fine when there is no water in the scene. The example project doesn’t have any objects to cast shadows on the scene, but a simple box above the existing box would demonstrate the problem. I assume the shadow problem is just an odd side-effect of the main issue.

    Our goal is to use either a picture-in-picture effect, or to render multiple cameras tiled on a single screen, so a viewport smaller than the full screen (0,0,1,1) is required.

    PWwaterprob.png

    He's got a sample project file if that would be handy.

    Anyway - any ideas on what he can do to fix this?
     
  13. brisingre

    brisingre

    Joined:
    Nov 8, 2009
    Posts:
    274
    This looks like it might be able to meet my needs, but I've got a couple of questions before I purchase.

    -Is there a more current demo than the one linked on the asset store page? There's mention of one in this thread, but the links don't work.
    -How well does it handle small volumes of water? Like 80% of what you do in my game is look at fishtanks, I need it to look good in a fishtank. It seems like you can use additive and subtractive volumes to make the water conform to the tank, and you render at least something on the edges, so you're already way ahead of anything else that exists for Unity. But all the screenshots of additive volumes in this thread are much, much bigger than the tanks in my game. How well does it handle being only a few feet deep and a few feet thick?
    -Does it look weird when you look at one water volume through another water volume? (I've attached a screenshot of what I mean.)
    -Has anyone tested this with HX Volumetric Lighting?
    -What's the current status of rivers? I'd like to have rivers.

    Thanks!
    -Lou
     

    Attached Files:

    Last edited: Oct 25, 2016
  14. clackad

    clackad

    Joined:
    Jul 11, 2016
    Posts:
    2
    Extremely well-made assets. but I am having some big problems with it.
    Ship physics do not work properly.
    My ship is not a sailing. She has an engine and there are my problems.
    The ship move into the water when the speed increases.
    so, I was simply trying the code below.
    _rbShip.AddForce(transform.forward * 10f * Input.GetAxis("Vertical") * _rbShip.mass, ForceMode.Force);
    this time the ship flew over the sky.
    Is there ship ctrl script for modern ship?
     
  15. iddqd

    iddqd

    Joined:
    Apr 14, 2012
    Posts:
    412
    Is this asset fully HTC Vive compatible or are there currently VR bugs?

    Thanks
     
  16. CaptainMurphy

    CaptainMurphy

    Joined:
    Jul 15, 2014
    Posts:
    746
    We have tested the 2.0 beta with the Rift and in the default shader mode it works, but with any post processing it can get a bit buggy when using deferred. I am trying to create a simple repro project to send to the dev right now, but in all it does look good in VR.
     
    iddqd likes this.
  17. CaptainMurphy

    CaptainMurphy

    Joined:
    Jul 15, 2014
    Posts:
    746
    @zuzzu
    Gah, page refreshed or something and hit submit for me....

    Ok, so the problem I am running into with the beta is that I can only use the default render queue in builds and that doesn't work with some of the opaque effects I have. Anyone else seen this?



    It only happens to my image when the water camera is on the camera stack. I have tested with and without a ton of different effects and cannot make it go away. It only happens on builds, btw.
     
  18. zuzzu

    zuzzu

    Joined:
    Feb 2, 2013
    Posts:
    404
    I apologize for the late response. It was a tough week :oops:

    It seems that the new "AMD Radeon Crimson Edition Beta" drivers cause disco effect on the water ;) I'm going to patch it this week. Let your users know that it will be fixed soon.

    I will look into it very soon. It's most probably some issue with this feature on Mac. It should work on all 3.0+ GPUs in general.

    In the beta releases you can render water as an opaque image effect. It writes all GBuffer data in a tricky way and thus it is compatible with image effects that depend on it, including SSR.

    Reflection probes are pretty fast. Standard shader uses them on all platforms - even SM 2.0 (at least when I've last checked).

    You should be aware though that water rendered with a regular means (the Asset Store version) is a regular transparent shader rendered in a forward mode. It means it can use only two reflection probes at a time so it's best to either use just a few of them or even just one "sky" probe.

    In beta releases you can render water internally in deferred mode and thus it's lit per pixel with any number of them.


    Thank you for a report.

    I think that I've managed to fix this in the code following your description of what happens, but I would prefer to confirm this. I would appreciate, if you could share the sample project for convenience.

    1. You are right, thank you. I will build a new one.

    2. It's rather fine to use it for small tanks. In UBOOT I use it for small ballast tanks attached to the ship and to flood the compartments inside the ship (video). You can just buy and try it, I don't ask questions when it comes to refunds.

    3. Yes and that's not fixable sadly. Earlier I've kept a separate buffer for each such water object, but it turned our to be too heavy in the end. Right now all waters share the same screen space buffers to render inside volumes and thus only the closest water per-pixel is rendered.

    5. Straight rivers are fine, but there are still no flow maps.

    Is the Z-axis of your ship oriented correctly? Try transform.up or transform.right.

    It works fine with Vive, but you may want to use the beta releases for it. There are substantial improvements.

    I've never seen this before. Let me ask a few questions to narrow the cause down a bit.

    1. What's your GPU?
    2. Are you sure that this happens with both - forward and deferred water render mode?
    3. Does this pattern animate or is it static?

    Thanks in advance.
     
  19. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    26,096
    was thinking maybe vertex based flow maps would be a good idea for rivers, as texture based ones tend to have a fair amount of waste texture space... maybe it's faster too?
     
    ftejada likes this.
  20. CaptainMurphy

    CaptainMurphy

    Joined:
    Jul 15, 2014
    Posts:
    746
    It happens on both and is a very animated effect. I think I have it figured out though. I kept making new projects and putting the exact same effect in place until I finally got it to happen again. It turns out that the real cause is using a LoadSceneAsync in Additive mode. The system apparently tries to modify the camera in some way and since the currently active main camera is set in the other scene it must be applying the effects there. By making the load a Single mode both render modes appear to work ok. This problem is not exclusive to Playway as I have started to see all sorts of fun problems like this, including the reflection camera getting made in the wrong scene, the call for Camera.main in Start() calling the wrong one, and when the loading scene gets removed that the camera is gone thus the code throws an error about there not being a texture/object/camera anymore. It seems like a massive oversight for Unity as far as the initialize not having an overload to say what scene to initialize the object in. As it is now I do a check to see what scene the parent is in, then move the camera to the current scene under a parent object just to make sure it is in the right one.

    For now our fix is to make the load Single mode, but would love to see a correction made for it to work well with Additive. It may just take a few changes to make sure the camera is set either manually or allow it to be 'reset' when it can't find the camera anymore and make it go through that start process again.
     
  21. zuzzu

    zuzzu

    Joined:
    Feb 2, 2013
    Posts:
    404
    I've managed to drastically improve spectrum sampling precision for very big storms. I've uploaded a minor beta update (b4.6) with these changes.

    I'm still working on a full Mac support for b5.

    This may be a good approach. There is one downside that it won't work with a boundless water though.

    Thanks, I should be able to track this down using your description.
     
  22. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    26,096
    Yeah, but with rivers you probably want someone to supply some kind of mesh for it, I mean it could go downhill or all sorts really... flat games are a bit rubbish :D
     
  23. zuzzu

    zuzzu

    Joined:
    Feb 2, 2013
    Posts:
    404
    I would like to try to use them for shores, but I'm still not sure about this. There is hard to solve UV discontinuity issue around islands etc. In the end it may be just for rivers indeed.
     
  24. sadicus

    sadicus

    Joined:
    Jan 28, 2012
    Posts:
    225
    Unity 5.4.1 TrueSky Alpha and NUAJ 1.3 do not (currently) work with Ceto or Playway.
    Is there a fix, or perhaps another realistic cloud / Atmosphere asset that will work?
     
  25. nocanwin

    nocanwin

    Joined:
    May 7, 2009
    Posts:
    143
    I too am looking for non-planar support. Any chance it might get added? Is it even possible with this type of shader?
     
  26. IronDuke

    IronDuke

    Joined:
    May 13, 2014
    Posts:
    132
    I have a question. A buoyancy system I tried was unable to handle really big ships. How well can this thing's buoyancy simultaneously handle a dozen ships the size of Yamato?

    --IronDuke
     
  27. 8bitgoose

    8bitgoose

    Joined:
    Dec 28, 2014
    Posts:
    204
    @IronDuke You may need to write your own buoyancy system. The simple one he implements is okay, but if you want realism, you are going to have to go above and beyond.
     
  28. SquadraCorse

    SquadraCorse

    Joined:
    May 28, 2014
    Posts:
    12
    I'm using the PlayWay Water beta with Enviro Sky/Weather. The attached images are from my test project (based on the RTP3 Terrain Demo).

    I also had the non-beta version working with TrueSky Alpha. Seems like that took some tweaking but it did work. I'll let you know if I remember what it was that I changed to make TrueSky work with PlayWay. (Seems like it might have been a tip I found in the UniStorm troubleshooting documentation.)

    Beach_2016.11.04_002_Partly_Cloudy_Sunrise.jpg Beach_2016.11.04_003_Partly_Cloudy_Afternoon.jpg
     
  29. IronDuke

    IronDuke

    Joined:
    May 13, 2014
    Posts:
    132
    I'll really just need it to move with the waves correctly. Basically, the buoyancy system shouldn't be using a flat plane, it should be using the actual waves, but apart from that, I can kludge most of the parameters to fake a lot of the "realism." The game is being aimed at a more casual audience than FSX, after all. Whether it can handle a lot of big ships is the real question.

    --IronDuke
     
  30. chainsawpenguin

    chainsawpenguin

    Joined:
    Sep 28, 2014
    Posts:
    106
    Good morning, team!

    I'm trying to get the underwater effect to be... I don't know, "less messy" or something.

    Is there a way to reduce the amount of blurring and discoloration? I have set the Blur Quality and the Camera Blur Scale to zero, but objects more than about ten meters from the camera are completely fogged out.

    Also, the camera doesn't seem to be applying the "wet lens" effect when it transitions out of the water. Do I need to add any component to my camera other than "Water Camera" and "Underwater IME" to see this effect properly?

    Finally, any thoughts on how to add caustics to underwater objects?

    Any guidance or suggestions would be appreciated!
     
  31. KarelA

    KarelA

    Joined:
    Dec 30, 2008
    Posts:
    412
  32. KarelA

    KarelA

    Joined:
    Dec 30, 2008
    Posts:
    412
    Yes. You also need to add Water Drops IME script to camera. Add Wet Lens Normal Map to the normal map field and you should be good to go.
     
  33. 8bitgoose

    8bitgoose

    Joined:
    Dec 28, 2014
    Posts:
    204
    I don't know if you'll have heard, but Ceto Ocean has been discontinued by the publisher. Looks like @zuzzu just pulled into the lead for water shaders in Unity. Let's all be super nice to him so he keeps on making this awesome asset!
     
    elbows and Voodoo_ZA like this.
  34. Voodoo_ZA

    Voodoo_ZA

    Joined:
    Mar 18, 2013
    Posts:
    132
    Well said 8bitgoose! I was shocked to see CetoOcean deprecated in my assets list. I lost "to me" a lot of money as an one man team and was really sad to see the developer leave. I really hope that Playwater will continue and be the best ocean/water/shader system, it will be my next big purchase when I have saved enough!
     
  35. zelgo

    zelgo

    Joined:
    Jun 26, 2016
    Posts:
    39
    fingers crossed for a black friday sale ;)

    not that it's not worth $100 but my credit card is already hot to the touch :eek:
     
  36. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,010
    No telling what Unity will do, but they appear to have backed away from all the madness and holiday sales they used to have. In the past year there's been the daily sale and Level 11, and not much else.
     
  37. IronDuke

    IronDuke

    Joined:
    May 13, 2014
    Posts:
    132
    I dunno... I've been getting a lot of madness sale emails over the last year.

    --IronDuke
     
  38. FluffyMustard

    FluffyMustard

    Joined:
    Nov 15, 2016
    Posts:
    1
    Hey zuzzu, got a few questions if you don't mind!

    I'm using HTC Vive // Unity 5.4.2f1

    1. In gameplay mode I can see that reflections on water become weaker the more I tilt my head up to the point when they simply disappear, is there any way to fix that?
    2. Water sorting layer seems to be different in each eye (but that might be because of Fog Volume)
    3. Could you explain in detail how do i make a ship wave trail? Assuming the ship is not moving (but i want to make it seem as if it does), if that's even possible...
    4. Also if i wish to make it rain, do you have any idea how i can make the rain drops create a ripple on the watter? I tried making my particle system to create another particle ripples when colliding with anything but it doesn't collide with water.

    I know that a few questions might sound silly but please bear with me
     
    Last edited: Nov 15, 2016
  39. electric_jesus

    electric_jesus

    Joined:
    Mar 8, 2015
    Posts:
    31
    Hello @zuzzu,
    I have a couple of stupid questions about PlayWay Water features. I would appreciate your help.
    1) Asset description claims that underwater effect makes distant objects blurry, but I couldn't find distance blur settings. Blur option on Water Profile seems to change the overall picture blur, that does not depend on distance to object. How do I set up distance blur?
    2) Is there a way to make water partially transparent from underwater point of view in PlayWay Water? Or even simulate the "Snell's Window" effect? See the attached pic.
     
    Last edited: Nov 18, 2016
  40. zuzzu

    zuzzu

    Joined:
    Feb 2, 2013
    Posts:
    404
    I will respond to all messages in a few days. I'm having troubles with my internet connection this week. Thank you for your patience.
     
  41. digimbyte

    digimbyte

    Joined:
    Jun 23, 2012
    Posts:
    38
    one of the main problems I have is how to tweak the water shader so it's more visible under water instead of a black fog - I'd like to add swimming and deep sea diving to my game.

    Does anyone have any advice or suggestions on tweaking it so water is slightly darker or contrast?
    because wet land should look darker then dry

    on a side note, Testing out in unity 5.5 Beta. there are some errors.

    Code (CSharp):
    1. Assets/PlayWay Water/Scripts/Editor/WaterEditor.cs(51,141): error CS0117: `PlayerSettings' does not contain a definition for `virtualRealitySupported'
    2. Assets/PlayWay Water/Scripts/Editor/WaterProjectSettingsEditor.cs(28,36): error CS0117: `PlayerSettings' does not contain a definition for `GetScriptingDefineSymbolsForGroup'
    3. Assets/PlayWay Water/Scripts/Editor/WaterProjectSettingsEditor.cs(49,36): error CS0117: `PlayerSettings' does not contain a definition for `GetScriptingDefineSymbolsForGroup'
    4. Assets/PlayWay Water/Scripts/Editor/WaterProjectSettingsEditor.cs(56,19): error CS0117: `PlayerSettings' does not contain a definition for `SetScriptingDefineSymbolsForGroup'
    thought you'd like to know before it comes out
     
  42. emrys90

    emrys90

    Joined:
    Oct 14, 2013
    Posts:
    489
    @zuzzu I recently upgraded to the newest version on the asset store, and having some problems with the underwater effects. In the previous version when the camera was partially underwater, the part above water was rendered normally with no effects. In this version when the camera is partially in water for me it's having a lot of flashing effects on it. Not sure how else to describe it. It's basically alternating between the screenshot I attached and normal clear sky.

    Actually, it's not just when partially underwater. It's when it's in the water at all. In the water project settings I changed the Water Colliders Layer to Water, which is the same layer Water is on. Water Temp Layer is blank, if any of that matters.
     

    Attached Files:

  43. zuzzu

    zuzzu

    Joined:
    Feb 2, 2013
    Posts:
    404
    There is another update to the beta. It fixes planar reflections issues that I've introduced in the previous beta release, fixes ortographic projection and wettable shaders for the latest Unity releases and generally adds many small improvements. Beta still doesn't support Mac, sorry. I've encountered some additional issues while working on it.

    I've attached a patch. Please let me know, if that fixes it.

    You can control visibility under the water, by modifying "Absorption (Underwater IME)" property in your water profile.

    1. There is no distance blur, sorry. I've removed it at some point, but I will probably implement it back in a few months.
    2. Snell's Window is now correctly seen in the beta releases.

    1. and 2. Do you use the stable version? I don't recommend using it with Vive. VR issues are not fixable without the changes introduced in the beta, so it will have to stay like this for some time sadly.

    3. I'm working on this as we speak. Keep your fingers crossed ;)

    4. PhysX doesn't support any form of dynamic meshes. You may assume that water is at y = 0 (it works pretty well unless you render a storm). I'm going to implement my own rain soon, because rains made with Particle Systems are too taxing for the CPU in my projects.

    Thanks. I've had many points in the past when all I've thought about was to abandon this asset. I have a full understanding for scrawk's decision.

    It's in the past though. I'm not going to abandon it, no worries.

    Please use the patch that I've attached to this post and let me know, if that fixes this issue. If it does, I will upload it to the asset store. Thanks!

    It's definitely possible. That would probably introduce some small, but noticeable performance cost though. I would have to remove many optimizations for the scripting and the shader. I may implement this at some point in the future, but it may take some time until I will get to this point.

    I think that it's an easy fix for the TrueSky, but I would need to get a copy of it to implement this.

    You may try to do this for yourself. Currently, TrueSky renders through a command buffer that executes during BeforeImageEffectOpaque. You would need to remove this command buffer from the automated execution at this point and execute it manually inside a custom image effect with [ImageEffectOpaque] flag.

    This fix will work only with the beta releases of the water though, because this issue is probably not fixable for regular transparent shaders.
     

    Attached Files:

    FluffyMustard likes this.
  44. emrys90

    emrys90

    Joined:
    Oct 14, 2013
    Posts:
    489
    @zuzzu Thanks! That seems to have fixed it.
     
  45. emrys90

    emrys90

    Joined:
    Oct 14, 2013
    Posts:
    489
    Actually, it's still happening. I'm not sure why it didn't happen when I tried it after replacing the files you sent, but I haven't changed any water settings since then and it's happening again.

    I can't reproduce it in a build at the moment, so it might only be happening in the editor.
     
    Last edited: Nov 22, 2016
  46. IronDuke

    IronDuke

    Joined:
    May 13, 2014
    Posts:
    132
    Oh heh, sorry if I was unclear.:oops: I don't have your water system yet; the buoyancy system I was referring to is some random open source thingy I found with a google search. I was just wondering how good your system is at handling large numbers of big ships, since that's critical to the project I'm working on.
    Thanks for the reply nonetheless.:D

    --IronDuke
     
  47. zuzzu

    zuzzu

    Joined:
    Feb 2, 2013
    Posts:
    404
    No worries, I will send you a second patch tomorrow.

    I've noticed that I've already addressed this in the beta releases and that fix is easy to isolate.

    Yeah uhm... it was a real issue before, that I've fixed in the beta releases ;) I've thought that you are referring to it :D

    I don't think that physics are going to be a bottleneck with my water system, but who knows. There are around 200 ships on this screenshot, each one uses 8 samples per physics step and it runs at stable 60 fps. It would probably run a bit less impressively in a fully fledged game, but still I can't imagine why someone would need to get close to these numbers.

    upload_2016-11-22_23-16-52.png
     
  48. IronDuke

    IronDuke

    Joined:
    May 13, 2014
    Posts:
    132
    Hah, that is exactly what I needed! Thanks! As for why I need that, well... it's sikrit. :D

    --IronDuke
     
  49. electric_jesus

    electric_jesus

    Joined:
    Mar 8, 2015
    Posts:
    31
    @zuzzu
    Thank you for your reply! Could you please attach a screenshot of the waterplane seen from below with Snell's window created with PlayWay Water?
     
  50. zuzzu

    zuzzu

    Joined:
    Feb 2, 2013
    Posts:
    404

    Attached Files:

unityunity