Search Unity

AQUAS Water/River Set - Water & Rivers for Mobile, VR, Web, Desktop

Discussion in 'Assets and Asset Store' started by dogmachris, Jan 8, 2016.

  1. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    There's a download link for a demo apk in the first post of this thread. However I have to highlight, that certain devices show jagged edges on the shore atm. I'm still trying to figure out, what might be causing this - it it might be an issue with alpha-blended shaders in general - but cannot tell exactly atm.

    There should be a workaround for the time being, if you set the "Depth Transparency" propertyto 0 and only use the "Shore Transparency" property for soft edges.
     
  2. Billu

    Billu

    Joined:
    Mar 21, 2013
    Posts:
    2
    update:
    It's been solved now! I just enabled the DX11 in the project and the water then shows up.

    =======================================

    Hi dogmachris,

    I have encountered the same problem as @bigbrainz. When I create a new Project, the water runs well both using the demo and create my own terrain and drag the water prefab. The problem is when I use it in my existing project, whether running the demo scene or drag the existing water prefab or even creating a new scene in this project, the water prefab is missing. You mentioned DX9, is it project wise setting or computer/graphic card per se? Because I can get it to work in the same computer in different projects, I thought it's project wise. So, can you give me a hint on where to change the DX9 setting?

    BTW, the tree prefab missing problem is caused by the ALiteDemoTerrain, I can get rid of this error by deleting this terrain file or add a tree prefab in this terrain. I don't think this error is pertinent to the missing water prefab issue.


    Thanks!
     
    Last edited: Apr 8, 2016
  3. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,680
    I'm using AQUAS in a new project and I'm seeing the following error:

    Screen position out of view frustum (screen pos 256.000000, 0.000000, 46117.921875) (Camera rect 0 0 256 256)
    UnityEngine.Camera:Render()
    AQUAS_Reflection:OnWillRenderObject() (at Assets/AQUAS/Scripts/AQUAS_Reflection.cs:75)
    UnityEditor.DockArea:OnGUI()

    I think I've seen it before, but I didn't have a chance to ask about it. Any ideas?
     
  4. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    @Billu Was just about to answer, sorry for the delay, but glad you've sorted it out already. :)
    You got it right of course, the DX11 needs to be set in the project settings.
    The problem with the missing tree prefab was because I originally used a tree on the demo terrain, but removed it before uploading the package, to not have any 3rd party asset included. I forgot to remove that tree prefab from the terrain, that's why the message about the missing tree pops up. All you have to do (that is, if you're actually planning to use the demo terrain further), is to select it in the hirarchy and remove the tree from it in the inspector.

    Cheers
     
    Last edited: Apr 11, 2016
    Billu likes this.
  5. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    @magique hm... Try right clicking on the Scene tab and close it, then right click on any other tab and open the scene tab again. If that doesn't work, delete the main camera and create new one. Also check, that the near clipping plane of your camera isn't set zero (please don't get me wrong, I don't think you're an amateur, but things like that happen :D).

    Please let me know, if it worked.
    Cheers
     
    Last edited: Apr 11, 2016
  6. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,680
    It's definitely not the clip plane, but I'll try the other suggestion when I get back to my dev computer this evening.

    One other thing. I noticed that the water isn't working in Forward rendering mode. I don't recall seeing anywhere where this was a limitation so maybe something is broken.
     
  7. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    There's no limitation, the thing is that depth rendering is disabled by default in forward rendering mode, which causes the water to show invisible on platforms that use GL. Make sure the AQUAS_Camera.cs script is attached to the camera. It enables depth rendering in forward rendering mode.
     
  8. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,680
    Ahhh, that was it. Thanks.
     
  9. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,680
    Another question or possibly a feature request depending on the answer. Is it possible to render AQUAS on something other than a WaterBasicPlane? Because this mesh is circular, it limits some interesting use cases. For example, if I wanted to put AQUAS in a square container in the center of a room then you couldn't properly fit the water inside the square because WaterPlaneBasic is circular.
     
  10. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    You can put the material on a standard Unity plane, it should be fine as long as you keep it squared and don't stretch it out too much on one axis.

    The thing with the waterplane is not only that it's circular, it also has a different UV layout, which requires other tiling values for the textures than the a usual squared plane. If you increase the tiling values of the textures by a factor of about 100, a standard Unity plane should work just fine.
     
  11. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    3,680
    Excellent. I was playing with it and couldn't figure out what it needed to work. That did the trick. Awesome.
     
  12. Sigstan

    Sigstan

    Joined:
    Nov 13, 2013
    Posts:
    16
    Hello Chris
    First of all I want to say that I find Aquas to be a really fine water asset. I have been using it together with Gaia and have had good results.

    However I recently added Unistorm to my asset stack and it seems to me that Aquas underwater effects cannot co-exist with Unistorm due to the way Aquas is handling the camera effects. As an example Aquas will grab Sunshafts and disable the effect above water, which will degrade Unistorm visuals significantly, since it is using the Sunshafts effect (with other values, which is another problem). Similar issues applies to some of the other effects like fog.

    I thinking that this will be a common problem with many other assets, so I'm wondering if the effects needed for Aquas underwater can somehow be "contained" as a separate unit that Aquas can enable/disable without affecting existing above water effects used by other assets?
     
    Last edited: Apr 11, 2016
  13. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    Hi @Sigstan - AQUAS grabs the bool value of each image effect in the start method (enabled true/false) and sets it as default value, meaning, that if you go underwater, AQUAS will activate the effects required, and when you dive up, it will reset them to the default value. So if you have the sunshafts enabled at start, it should work, unless I've made a mistake, but I'll check that.

    The thing with the fog is a bit different. I don't know if Unistorm uses the standard Unity fog, but if it doesn't, I guess it uses a custom fog system, that relies on the depth buffer (as most custom fog systems do). The problem with that is, that AQUAS is alpha blended and thus cannot use the depth buffer, so when going underwater, one must disable custom fog systems and re-enable them when afloat to work correctly.

    The bool "underwater" in the "AQUAS_LensEffects" script has a public getter, so you can read it from your own scripts to detect if your camera is underwater or not, and use it as an argument for an if-statement to disable/enable any custom fog system. I'll do a tutorial on this later this week.
     
  14. Sigstan

    Sigstan

    Joined:
    Nov 13, 2013
    Posts:
    16
    Well, that does actually work.
    What confused me was the fact that AQUAS deactivate Sunshafts as part of the quick setup, but manually setting Sunshaft and the other effects correctly before starting the player solves the problem.
    A comparison before and after AQUAS quick setup also showed me that bloom and Camera Far clipping planes were changed from the Unistorm values. Installing Unistorm after AQUAS might solve some of these issues.

    I don't actually know whether Unistorm uses a custom fog system, but I'll look into it.
    Thanks for your advice.
     
  15. montyfi

    montyfi

    Joined:
    Aug 3, 2012
    Posts:
    546
    Just an idea, maybe you should put such dependencies on 3rd party assets into a separate script. I'm sure, for any particular asset in store there is much more people who are not using it, then the opposite. Or even better, separate it, add integration package into your main one. Name it TengokuIntegration and only those who want it would install it. Many asset store authors doing it adding integration with 3rd party assets.
     
  16. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,746
    I second this. As much as I like Aquas, I am getting errors due to 3rd party scripts. Frustrating to say the least.
     
  17. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    Maybe you're right - although Tenkoku is the only asset I wrote such a dependency for - just because it's rather tricky to access its parameters from a C# script. Other than that all I access is image effects from the standard assets and AQUAS's own stuff.

    But I guess even with only one such dependency it's better to have it in an extra script, so I'll do that - thanks for the input. :)
     
    cygnusprojects, jonfinlay and montyfi like this.
  18. nikunjk21

    nikunjk21

    Joined:
    Jan 12, 2014
    Posts:
    21
    Hi,

    We are looking for a water shader for our mobile game. It needs to have blending at edges, ability to change color to dark swamp color, depth and it should look like the water is flowing.

    Please let me know if this shader will work with our game on mobiles with optimal FPS.

    Target platforms are iOS, Android and Windows.

    Thanks,
    Nikunj.
     
  19. gecko

    gecko

    Joined:
    Aug 10, 2006
    Posts:
    2,033
    Is there any possibility of getting this to work on 4.7? I'd pay extra for that work...
     
  20. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    @Nikunj Kareliya except for the flow, AQUAS can do any of the requested. River flow is something planned for v1.3. However AQUAS currently seems to have some issues on certain devices including iOS devices, meaning the shoreline shows jagged. I'm still trying to figure out which devices are affected and to what extent, and trying to find a solution. For performance evaluation, please try the demo APK.
     
  21. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    @gecko AQUAS is all alpha blended, so even if it would work, it would only do so with the Pro Edition of Unity 4.7. However the shaders use some data structures that are not supported in 4.7 and I cannot rewrite them just like that, I'm sorry to say. :(
    You might although consider hiring a freelancer to rewrite AQUAS for you, if you're willing to spend the extra money.
     
  22. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    jonfinlay and Shawn67 like this.
  23. Geoffc

    Geoffc

    Joined:
    Feb 4, 2013
    Posts:
    16
    Has anybody tried this in a small area such as a swimming pool made of 3D cubes? Is the effect still as impressive as it is with a terrain?
     
  24. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    I'll make a scene showing that later today and send you some screenshots. :)
     
  25. 2dgame

    2dgame

    Joined:
    Nov 24, 2014
    Posts:
    83
    This is exactly what I am interested in, aswell.

    I am also worried that you would run into a lot of problems with square water shapes, since, from what I can tell by the videos, the water prefabs seem to be discs.
    Say I wanted to have a water cube surrounded by walls. Wouldn't the water extend through the walls?
     
  26. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    @2dgame If you mean using squared planes, yes, that's no problem. Only difference is the tiling values for the normal textures in the material properties - they need to be set 100 times higher than with the waterplane, because it has a different UV layout. As said above, I'll create a preview, so you can see.
     
    Teila likes this.
  27. VeNoM79

    VeNoM79

    Joined:
    May 13, 2014
    Posts:
    9
    Hi @dogmachris , sorry to bother you but I've just a couple of questions:

    1) Do you have any plans for dynamic ripples? Is there a way to implement them?

    2) I'm trying to pause water movement without using timescale. I'm using shader floats (_SmallWavesSpeed etc.etc.)
    but when I set them to zero, the water change "shape" so I think it's the wrong way to pause/unpause. Do you have any advice?

    Thanks again for this awesome asset and for you help.
     
  28. NeatWolf

    NeatWolf

    Joined:
    Sep 27, 2013
    Posts:
    868
    Hi @dogmachris, I'm interested in purchasing AQUAS but would like to have a few questions answered, please.

    1) Is Aquas limited to water planes? Is there on the roadmap the will to have, for instance, vertex animation to actually animate the surface and the shore perimeter (eg: tessellated planes)?

    2) What if I want to have a big water zone, and other water zones in the terrain with a lower water level? Is this an possible setup? Should I use a perimetral mesh specifically tailored for the situation?

    3) Same as question #1 of @VeNoM79, I'd love to have dynamic surface deformation/normal deformation for ripples. Is this on the roadmap?

    4) Since it features things like water/underwater transition effects, does Aquas also feature audio filters to mimick sound propagation when underwater? Can we hook to some code events to determine when to enable such filters? (eg: an IsUnderwater property or an EntersWater/ExitsWater event?)

    Thanks for your time, I really love the level of realism of your asset!
     
    Last edited: Apr 19, 2016
  29. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    @2dgame @Geoffc I've quickly prototyped two different variations for basin water, one with caustics and one without, but there's more than just those 2 possible solutions. I made them using a standard Unity plane, which is squared, so the waterplane doesn't exceed the pool.

    Version 1
    AQUAS Pool.jpg

    Version 2 AQUAS pool 2.jpg
     
    Arganth, Geoffc and Shawn67 like this.
  30. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    @NeatWolf @VeNoM79
    1. For the time being, AQUAS is limited to waterplanes. Waves are on the agenda, but it's a bit early to say how and when. The next update (1.3) will focus on flowmap support for rivers.

    2. It is possible to have multiple planes at multiple water levels, however AQUAS detects the "plane of interest", by iterating through the present planes and checking if the camera is within the bounds of one of them, which is then set as being the active plane, and that plane is then the indicator for the current water level. This means, that you might get into trouble, if you have waterplanes at different levels that have overlapping bounds on the x- and y-axis. However you could create a single surface by using multiple squared planes as tiles and use integer tiling values on the textures, to ensure seamlessness.

    3. The waves are planned to be a statistical ocean wave simulation (FFT) and I'm not sure, if it'll be possible to mix that with a proper simulation of dynamic ripples, so just to be on the safe side for now, I'd say probably not.

    4. Nope, I'm not an audio expert and didn't even have the idea of using audio filters, sorry, but yes, AQUAS has a bool with a public getter that can easily be accessed from your own scripts, to detect when the camera is underwater. (see the manual and this tutorial for information on how to use your custom underwater actions)

    I hope, I got all your questions right, please let me know, if I misunderstood something.

    Cheers
     
    montyfi and Shawn67 like this.
  31. VeNoM79

    VeNoM79

    Joined:
    May 13, 2014
    Posts:
    9
    @dogmachris sorry, can you please answer my second question? (pause/unpause)
     
  32. NeatWolf

    NeatWolf

    Joined:
    Sep 27, 2013
    Posts:
    868
    Thanks for the quick answer, flowmaps are going to be a nice addition!

    May I suggest to have a uber shader with more than 3 water layers, to be able to cover situations in which the camera can be either very close and very far? From what I get from the first video, you can have a nice setup for closeups or for distant waters, but not both.
     
  33. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    @VeNoM79 I'm so sorry, your second question escaped my notice. Pausing the water movement without the texture offset changing is rather tricky, but you can use timeScale, by simply setting it to something close to 0 and multiply the speed of everything that needs to run at normal speed with the inverse value of the timeScale. It's a workaround, but should get you the desired effect.

    @NeatWolf
    More water layers (supposed you mean textures) unfortunately mean more passes, since shaders in unity allow only a maximum of 4 textures per pass, but I'm already working on another solution, which will use distance based tiling of the normal textures, to avoid visible tiling at far distance and maintain detail at close distance (smoothly fading between the tiling values to keep a natural look). I'll probably be able to add this feature in v1.3 - hopefully by the end of may.

    EDIT: I hope I got you right when you said "layers"???
     
    Last edited: Apr 19, 2016
    NeatWolf and hopeful like this.
  34. NeatWolf

    NeatWolf

    Joined:
    Sep 27, 2013
    Posts:
    868
    Yes, I meant overlayed normal maps. Even the same ones, used more times with different tiling values. If you're working on distance based seamless tiling, I'm sold, perfect solution :)
     
    dogmachris likes this.
  35. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    Yep, that's definitely on the agenda and it'll be fairly soon.
     
  36. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    Again for everyone who needs to know if AQUAS is good for basins and pools, I've prototyped a quick demo video:

     
    Last edited: Apr 19, 2016
  37. ibyte

    ibyte

    Joined:
    Aug 14, 2009
    Posts:
    928
  38. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    No need to apologize, it hasn't been asked before. Strange thing, it's not only the water that is out of order in your take, there's some other things too, that don't seem to work properly. Are you working on DirectX 11 on your machine, or is it by any chance running on DX9? Do you have the same behaviour with the desert scene and/or the WebGL demo?
    Anyway, thanks for going through the effort of running up that mountain, I guess that took you a while. :confused:
    Please let me know if the other scenes work for you.
    Cheers
     
  39. Geoffc

    Geoffc

    Joined:
    Feb 4, 2013
    Posts:
    16
    This is good! Exactly what I need to be able to achieve. Buying now :)
     
    dogmachris likes this.
  40. RonnyDance

    RonnyDance

    Joined:
    Aug 17, 2015
    Posts:
    557
    Just bought AQUAS for this amazing price. Happy to be on board with Adam and other people.
    I am using a different Time of Day system with camera effects so I am pretty eager to see how Aquas will work with it and if I run in some underwarter / camera problems.

    Anyway I am really happy to own an awesome Water System, finally!

    Cheers
    Ronny
     
    dogmachris likes this.
  41. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    Very glad you like it. Just hit me up if you need any help. :)
     
  42. broesby

    broesby

    Joined:
    Oct 14, 2012
    Posts:
    112
    Arghhhhh,...... Chris,... Plz help. I would so much like to buy Aquas on sale as I have wanted it for ages,.. ;)

    But somehow Unity has F***ed up the process of changing credit card information. As I have gotten a new card from the bank I just today discovered that it is totally impossible to change that information anywhere. Other users seem to have the same trouble :eek::mad::oops: I even tried paying with Paypal but I am declined that as well for no reason... I wrote support OFC but it will most likeliy take at least a few days if not more...

    Sorry for writing in here but couldn't find your email....

    Any chance I can get to buy it with a discount when I get my credit card working again??? Plzzz... I have CETO now and love it but would really like Aquas for smaller lakes/ponds and land scenes where I do not need an ocean... ;)


    Best wishes

    Jesper Broesby
    Denmark.
     
  43. Geoffc

    Geoffc

    Joined:
    Feb 4, 2013
    Posts:
    16
    A tutorial on how you did this would be good. I can't get a plane working as the terrain in the aquas window.
     
    Arganth likes this.
  44. ibyte

    ibyte

    Joined:
    Aug 14, 2009
    Posts:
    928
    Yeah I was lured on by the sound of water like a mirage but when I got to the top there was nothing on the other side LOL

    DX11 on a GeForce 760 Win 7. it's repeatable on my machine

    https://gyazo.com/3bb2b69ed969cb485713aa4eb91ddaed

    Tried full screen as well no change

    I do see water in the desert scene. Is the blurriness (is that what they refer to as caustics?) under the water adjustable? It reminds me of swimming without my glasses on :)

    I put Aquas in my cart last night but didn't get back to it until 2 minutes after 9 ... oh well you snooze you lose :)
     
  45. ibyte

    ibyte

    Joined:
    Aug 14, 2009
    Posts:
    928
    When you enter the water there comes a point where the camera is rendering below and above the water line. It's not blurry

    https://gyazo.com/5ca553ff61c2291adaf4f5643d94908f

    - one step farther in and then your fully under water and it's blurry.

    Do you see any way of improving that experience in the future?
     
  46. runningbird

    runningbird

    Joined:
    Sep 3, 2009
    Posts:
    377
    I have the same issue.
     
  47. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    @Geoffc the quick setup reuires a terrain as input (so AQUAS knows where to place the water on the x- and y-axis), so if you don't have a terrain, you have to add a standard unity plane to the scene, position and scale it as you need it and drag and drop the water material on it that you would like to use (in the demo video I used the triple textured water). When using the standard unity plane the tiling properties of the textures in the material settings need to be a lot higher, due to the UV layout of the unity plane being different from the one on the circular waterplane.

    I'll do a video tutorial on how to create these types of water with AQUAS, please give me a day or two, I'll do it asap.
     
  48. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    @ibyte I must say for now I have no idea what might be causing the issue with the invisible water in the demo scene. I'll look into it, but from here I can't see what makes your machine different from others.

    The caustics are not the underwater fog, they're the light effects, that you can see on the ground, especially in shallow water and they too are adjustable (scale, speed, instensity, maximum depth, fade, distance to be seen and so on). The underwater fog is of course adjustable (color & density).
     
  49. dogmachris

    dogmachris

    Joined:
    Sep 15, 2014
    Posts:
    1,202
    @ibyte @runningbird for now AQUAS doesn't have a partly transition to underwater mode, you can only be underwater or afloat. I've already wrapped my head around how I could solve this, however the only solution I've come across so far is one that requires the z-buffer and since AQUAS shaders are alpha-blended, they can't use it, thus I'll have to keep wrapping my head around it for a bit (though I know it must possible somehow).

    I'll keep the thread updated on that.
     
    jonfinlay and runningbird like this.
  50. creat327

    creat327

    Joined:
    Mar 19, 2009
    Posts:
    1,174
    I think the only way would be to use 2 cameras, one that renders the underwater and one that renders the top, maybe do it on a temporary switch while you move up and down and then go back to one camera