Search Unity

SUIMONO 2.0 - Interactive Water System

Discussion in 'Assets and Asset Store' started by chingwa, Jan 6, 2015.

  1. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @GMax Not quite yet. :D The problem with experiments is that they tend to give a lot of false-positives... in the beginning they're very exciting, until you start to consider all the requirements that need to fit into them, or restrictions that start popping up the further you research. Hopefully I'll have some news soon though.
     
    Shodan0101 likes this.
  2. rpg_gamer

    rpg_gamer

    Joined:
    Nov 28, 2012
    Posts:
    214
    hey there good sir, I have a question about using suimono with ufps, or something that is happening to me. In the water, I seem to have a giant reflection of the player's arms showing up.
     
  3. Stormy102

    Stormy102

    Joined:
    Jan 17, 2014
    Posts:
    495
    That's probably a layering issue. Make sure that the UFPS weapons layer is excluded from Suimono's reflections layer
     
  4. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @rpg_gamer Yes @Stormy102 is likely correct. Make sure the weapon layer is not being calculated in the reflections layer AND make sure it isn't being calculated in the Transparency layer too (on the Module object)!
     
  5. ksam2

    ksam2

    Joined:
    Apr 28, 2012
    Posts:
    1,079
    Hi chingwa,

    I want to ask if that is possible to put a discount for those that own Tenkoku sky! I bought Tenkoku sky before but It didn't satisfied me I never use it and I've bought another sky cycle. if there was a discount for Tenkoku users that would heal my heart a bit :D 65$ is expensive to lose in my country. :(
     
    Last edited: Jan 15, 2017
    Shodan0101 likes this.
  6. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @ksam2 Unfortunately, I don't offer discounts on Suimono/Tenkoku. I have considered doing 'bundle' sales in the past, but the Asset Store doesn't offer very good tools to do this, unfortunately. I'll send you a PM though, and maybe we can work something out.
     
  7. lezan_

    lezan_

    Joined:
    Nov 27, 2016
    Posts:
    50
    Hello,
    I have some problems with Suimono Advacend Demo. I am using Suimono 2.1.2 and Unity 5.4.3f1.
    I was looking to Suimono_Surface_River, but when I active it I receive a couple of errors:

    NullReferenceException: Object reference not set to an instance of an object
    Suimono.Core.cameraTools.CameraUpdate () (at Assets/SUIMONO - WATER SYSTEM 2/SCRIPTS/cameraTools.cs:299)
    Suimono.Core.cameraTools.Start () (at Assets/SUIMONO - WATER SYSTEM 2/SCRIPTS/cameraTools.cs:103)

    NullReferenceException: Object reference not set to an instance of an object
    Suimono.Core.SuimonoObject.LateUpdate () (at Assets/SUIMONO - WATER SYSTEM 2/SCRIPTS/SuimonoObject.cs:390)

    Any idea?
     

    Attached Files:

  8. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @lezan_ I'm not sure what those errors are about, but I'll take a look on my end.
     
  9. lezan_

    lezan_

    Joined:
    Nov 27, 2016
    Posts:
    50
    Looking into cameraTools.cs line 299 refering to a surface, something like "where is my mesh?"
     
  10. vladstorm_

    vladstorm_

    Joined:
    Nov 26, 2013
    Posts:
    184
    Hi, you plugin looks amazing.
    do you have a VR support?
     
  11. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @Horz I don't recommend Suimono for VR. While there are some that are using it in VR without trouble, I think most people will see issues, at least initially, due to the way water transparency and reflections are calculated.
     
  12. vladstorm_

    vladstorm_

    Joined:
    Nov 26, 2013
    Posts:
    184
    interesting. i just checked the old version and its like super broken in VR/ from the way reflections work / I have strong stroboscope effect
    Some things are probably fixed in the latest version but not sure the things for VR tho.

    Nevertheless, this is the best ocean sin I found so far for unity.
    Especially the SSS emulation is amazing. Thats what makes this plugin very special from the others. I didn't see SSS in other ocean sim unity plugins. Also I'd say this ocean sim is more artistic rather than realistic. There are other ocean sims on Asset Store which look more realistic but again SSS gives this plugin 100 points )

    I hope it works in VR.
     
    Shodan0101 likes this.
  13. MikeyUchiha

    MikeyUchiha

    Joined:
    Jan 8, 2011
    Posts:
    109
    I just added SUIMONO to a brand new project that has Unistorm in it. I attached the Camera from Unistorm but for some reason SUIMONO will not play any sounds above or under water. I made sure the Audio Listener is turned on and the sound works great if I use Aquas.
     
  14. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @MikeyUchiha does Unistorm affect the scene camera in any way? Perhaps Suimono is not accurately tracking the appropriate camera? In the Suimono module configuration section try setting the camera mode to manual and dragging the appropriate camera into the slot?
     
  15. Kiwi-Hawk

    Kiwi-Hawk

    Joined:
    Jul 17, 2015
    Posts:
    288
    Kia ora

    I finally got this to work out of the box,.. don't ask me what lol but it does not drop my through the terrain any more and I have tree water levels. a sea and two lakes. To make one of the lake work right I need a custom mesh for the sea. As per all Island the sea goes right round the island, to do that we have one plane covers all the terrain at the sea level. My lower level lake is a plane of the correct size for that lake, problem is that the lake bed is round the same height as the sea floor and so I get a lake surface and under water I get a sea surface because the sea is a slightly lower level the the lake. I have made a custom mesh with proCore which is a 2048x2048 plane with a hole cut in the center to use as a sea mesh, this way the sea will not pass under the lake. But the custom mesh option does NOT like my mesh sadly so I don't know what I need to do to make an usable mesh. Is there something I must do to convert this mesh to what I can use?.

    Sadly Unity does not have BSP volumes like UE4 that are invisible but cut space's in surfaces which would be great in this case. so close yet so far
     
    Teila likes this.
  16. MikeyUchiha

    MikeyUchiha

    Joined:
    Jan 8, 2011
    Posts:
    109
    This is exactly what I did. I tried both automatic and manual. I'm pretty sure that Unistorm doesn't do anything to the camera but I could be wrong. It does have birds chirping randomly in the background.
     
  17. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    You'll be able to tell whether Suimono is tracking the camera properly if it switches to the underwater view when you go below the surface.

    I'm not sure what else would be causing this issue though. You've double-checked the 'enable sounds' and volume setting on the Suimono module I assume?
     
  18. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @Kiwi-Hawk When you use the custom mesh option what happens? Does it just not show the water surface? Or does it show it in the wrong location/orientation? Or do you get an error int he console?
     
  19. MikeyUchiha

    MikeyUchiha

    Joined:
    Jan 8, 2011
    Posts:
    109
    Yes, I'm sure that enable sounds was turned on. I do get the underwater view correctly but no sound.
     
  20. Kiwi-Hawk

    Kiwi-Hawk

    Joined:
    Jul 17, 2015
    Posts:
    288
    It just will no except the ProCore mesh I'm thinking because it creates a perfab, you can get ProBuilder free if you wish to play with it. I maybe need to make an FBX and import it, thought I could use the in Unity asset tool I had brought
     
  21. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    I have the full version of proBuilder and have used it in the past for these types of things. One thing you need to realize is that probuilder keeps it's mesh object in scene memory... they are not actually saved in your project. What you need to do is to save your ProBuilder object as a mesh in your project... you should then be able to use that as a custom mesh in Suimono.

    Luckily, I have included a component in Suimono that does just this! Go to the SCRIPTS folder and drag the utility_SaveMesh component onto your probuilder mesh. Then, give it a mesh name in the 'Use Name' field and press the 'save asset' button. This will save just the mesh as an aobject in the Suimono/Mesh folder... which you'll then be able to use with Suimono.

    I do recommend using 3d software to create meshes though, as it gives you more control .
     
  22. Kiwi-Hawk

    Kiwi-Hawk

    Joined:
    Jul 17, 2015
    Posts:
    288
    Kia ora

    Thank you, I wonder of it's worth the thought for future version to have an optional mesh for those who might need a sea mesh for an island with lakes in, just a thought, bit of a bonus feature for your asset maybe

    Even after dropping the script onto it I still got a prefab Suimono didn't like so I'll bang out an FBX
     
    Teila likes this.
  23. Kiwi-Hawk

    Kiwi-Hawk

    Joined:
    Jul 17, 2015
    Posts:
    288
    I cheated, well tried to I got https://forum.unity3d.com/threads/mesh-merge-and-splice.249208/ and I made four mesh's and tiled them to form the sea with a hole in the center to allow for my lakes. The above asset was to merge the mesh's back to one so I had one drawcall not four, seems it merge's by material, and selecting all four sea mesh's I get a count of 0 materials, so I guess that not gonna work less I take a three drawcall hit
     
  24. MikeyUchiha

    MikeyUchiha

    Joined:
    Jan 8, 2011
    Posts:
    109
    @chingwa Do you have any ideas how to resolve this issue? I've double checked and the sounds are all enabled. But I hear nothing when I go underwater.
     
  25. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @MikeyUchiha I'm really not sure... if you're willing to package up a small project that shows this issue and send it to me then I'll be a happy to look at it directly and see if I can locate the problem. You can send download links to me at konnichiwa@tanukidigital.com
     
  26. MikeyUchiha

    MikeyUchiha

    Joined:
    Jan 8, 2011
    Posts:
    109
    I found out the issue. I had to set Scene Track Object to my Player. I only set up the Camera. Now I'm running into the problem where the Foam doesn't come up correctly. It looks really ugly.

    See this picture.

    SuimonoIssue.PNG
     
  27. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @MikeyUchiha Are you using a shoreline object in your scene, or is that just the normal Suimono foam on the surface?
     
  28. Kiwi-Hawk

    Kiwi-Hawk

    Joined:
    Jul 17, 2015
    Posts:
    288
    Kia ora

    Sadly I had to make 8 tiles because I have not managed to get the plane with the hole in to to work, and the mesh merge tool use's materials to pick what can be merged ans shows ) materials when all the sea tiles are selected. I guess because your using shaders and no materials as such

    This is the mesh I made
    https://www.dropbox.com/s/fvojw212mnpis5o/Seawater.7z?dl=0
     
    Last edited: Jan 29, 2017
  29. Kiwi-Hawk

    Kiwi-Hawk

    Joined:
    Jul 17, 2015
    Posts:
    288
    Kia ora

    I finally got it sorted, the doc's did not mention that the mesh saved would be in the mesh's dir,. I was looking for it in the hierarchy and beside the imported mesh
     
  30. sashabcro

    sashabcro

    Joined:
    Dec 22, 2016
    Posts:
    13
    Ok i got this but I DONT KNOW HOW TO USE IT :S and there are 0 tutorials on YouTube :S so can someone point me for noob guide? Othervise i willg ive lower star because of it :S
     
  31. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @sashabcro To get up and running I'd follow the basic steps below...

    1) drag a SuimonoModule object (from the prefabs folder) into your scene. You will need one of these in any scene where you want to use Suimono water.
    2) drag a SuimonoSurface object (from the prefabs folder) into your scene and size / position where you want it.
    3) Play your scene.
    4) on the SuimonoSurface you'll be able to adjust lots of settings to get a customized look. Once you're happy with the water make sure to go down to the 'presets' tab and press the 'New' button in order to save all your current settings into a new preset.
    5) Stop your scene. Go to the Surface and make sure to select your new prefab in the list and it will load those settings next time you play your scene.

    These are the basic steps to using Suimono. If you want an ocean, as opposed to a pond or lake, then go to the surface and switch the 'surface type' to 'Infinite 3D Ocean'. It will then render out to the edges of your scene when you play your scene. If you have any specific questions then let me know and I'll be happy to help. You can also contact me via email or via the dedicated help forum, which you'll find links to in the readme file.

    You can also read the documentation pdf here:
    http://www.tanukidigital.com/suimono/documentation

    Also there's no need to resort to 'threats' of giving a bad rating... I do my best to respond and help those who've purchased Suimono and all my other Asset Store products. I am a one-person operation, and am a human-being (not a monolithic corporation), and every star rating greatly affects my livelihood. Please consider for the future.
     
    AdamGoodrich and TeagansDad like this.
  32. sashabcro

    sashabcro

    Joined:
    Dec 22, 2016
    Posts:
    13
    Ok thank you, but when i put everything inside my scene all water is pink :S
     
  33. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    Well, if you give me some more info I'm sure we can figure out why. Did you download the latest from the asset store? (should be version 2.1.3) What version of Unity are you using? Perhaps there was a glitch in the download... I recommend going to the Textures/mat_water_surface material and making sure the shader is set to 'Suimono2/surface'.
     
  34. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    864
    Hi again,
    As you know I'm currently using Ceto in my project. But actually I bought suimono for the first try in my game.
    It was not very good looking then, but now it looks great. Just there is one big issue for me by using suimono.
    In my game, there could be a lot of shallows and near sea level beaches. Ceto have an auto shore mask script using depth info to mask the ocean surface's wave height. For example, the shallower the water is, the lower the wave height. And it can cut sea surface out under islands. This function is quite essential for my game, for I need more violent waves in deep ocean and a steady shoreline to avoid water pop out from sand beach.
    Since Ceto now have a reflection problem with Tenkoku, I'm trying to use suimono for my ocean solution instead.
    I found the shoreline method in suimono is a bit inconvenient. The shoreline object is more like a plane and it has fixed resolution, it will not be precise enough if I scale it too much. I can use one shoreline object for each of my terrain tile, so this should not be a problem.
    But the normalize shoreline feature is not very useful against big waves, the normalized area seems just reach the terrain's edge, and under the terrain the waves still pop up through.
    Is it possible for you to make the shoreline method based on terrain's heightmap?
    Use scripts attached to terrains to calculate heights, and mask out the areas of water surface under the terrain.
    What's in your plan for future suimono updates? I'm quite interested.
     
    Shodan0101 likes this.
  35. mz2021

    mz2021

    Joined:
    Sep 11, 2016
    Posts:
    17
    I'm super interested in this asset, but sad to see comments saying it doesn't work on the HTC Vive. Any plans to support SteamVR in the future? This totally has all the features I need for my project.
     
  36. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @mariamism Currently I don't recommend Suimono to people who's focus is VR. It has some inherent incompatabilities with VR cameras, as it generates reflection and transparency data from 1 fixed location. This confuses the 2 VR cameras causing rendering artifacts.

    I don't have solid plans on future VR support yet.
     
    mz2021 likes this.
  37. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @Harekelas Just FYI, you can add as many shoreline objects as you want. If resolution is an issue, you can scale them down and add multiples per terrain object.

    The normalize waves feature is intended exactly for the purpose you describe... where you can have large waves in deep water, but smaller waves near the shoreline. Perhaps the default depth settings on the shoreline object is not generating a wide enough shoreline for your scene? I'll take another look at this and make sure it's working as intended... waves definitely should not be popping up through terrain.
     
  38. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    864
    The result is still strange:
    I used the deep dark ocean preset of suimono, and the shoreline objectas this result:
    SuimonoShoreline1.jpg
    Then I changed the shoreline normalize value to 1, and the water still pop up from terrain:
    SuimonoShoreline.jpg
    And the underwater trigger seems to be wrong too. I can be sometimes treated as underwater when I walk along the shore while the water level is still under my feet.
    Hope to see a better solution of shoreline controlling.
    As I can tell, the color of the shoreline object under the terrain is also black, the same color for full height tesselation. This may be the cause of this problem, maybe you can set the tessellation weight to 0 when it's under a terrain, and use the depth information to gradurally increase the tessellation weight to 1 at a customized depth of the water.
    Here is a glance of Ceto's solution of the shoreline mask, may be helpful:
    upload_2017-2-17_18-55-59.png
     
  39. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    OK I see exactly what you mean here. You're right the "under terrain" rendering on the shoreline is defaulting to black which is turn upsetting the wave normalization once it moves inland. I'll have a fix for this incorporated into the next update for sure. The shore mask options from Ceto are also interesting, Clip Mask especially.... I'll take a look at incorporating some of these things in Suimono.
     
    Stormy102 and BackwoodsGaming like this.
  40. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @Harekelas By the way, you CAN increase the shoreline texture resolution... click in the 'debug mode' checkbox, then go to the cam_LocalShore child object and you can change the default resolution from 256, to whatever. This option should really be adjustable in the main UI though. I'll add this too.
     
    BackwoodsGaming likes this.
  41. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    864
    Good to hear! Look forward to the next suimono update!
    And wondering if I can just stick the shoreline object to player and calculate depth continuously to keep the view right, or I should give a shoreline object for each terrain when it is generated and only calculate once on the generation.
    Which one do you think is less performance consuming?
    BTY my game normally have 9 terrain tiles at a time, each terrain is 512 height resolution.
     
  42. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    By default the each shoreline object renders depth when it is first enabled in the scene, so there shouldn't be much cost after the initial load. You can set the update mode to continuous instead, but this will definitely cause a performance hit... how much of a hit just depends how much of your scene the shoreline is rendering against.

    I'd not considered attaching it to the player. You would need to turn on continuous mode, and it's possible you would get some undesirable artifacts in the depth rendering as you move around, especially with a low depth resolution. You could try it, sure, but I wouldn't be surprised if it didn't pan out :D
     
  43. Danirey

    Danirey

    Joined:
    Apr 3, 2013
    Posts:
    548
    Hi, I'm having some troubles trying to make buoyancy work. The demo scene works perfectly, but in my scene using the same objects and parameters, the objects fall to the deep....
    I've made prefabs from the demo scene to use them in my scene and they fall in the same way. If I use a prefab from my scene in the demo scene it works perfectly.

    Could you tell me if any external parameter could interfere with the buoyancy system?

    Thanks
     
  44. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @Danirey This is most likely because the default 'activation range' might not be high enough. This setting judges the distance to your camera and deactivates buoyancy outside the range. This was done for performance reasons, but I think the default setting is too low. Try raising this really high (like 2000) just to make sure and try it again?
     
  45. Danirey

    Danirey

    Joined:
    Apr 3, 2013
    Posts:
    548
    Thanks, i'll try that.
     
  46. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    864
    for my game uses procedural generated terrains. So new terrain tiles will be generated during runtime, is it possible to attach a shoreline object to each terrain tile and let them be enabled/disabled with the terrain tile, and calculate the depth info once when a terrain tile is initialized?
    Also, I'm not quite happ with the current big wave calculation, it is a bit repetitive, and doesn't look quite like an ocean :(
    Is it calculated by algorithm or texture based? For I see Suimono can let me use my own wave texture, don't know what kind of texture is needed if I want a custom wave setting?
     
  47. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    I think attaching a shoreline object to a terrain would be possible as long as you're able to either able to put in the applicable SuimonoSurface reference so it knows what height to render from. Alternatively you can uncheck the 'auto y-position' if you instead set theShorelineObject to be the exact Y-position of the water.

    The waves are calculated by texture, and then they are sampled and mixed together. The large ocean wave textures would be the 'Deep Waves' texture option.

    The system expects custom textures to have normal information in the RGB channels, and grayscale height information in the A channel. Because of this you need to make sure your custom texture is NOT marked as 'Normal' in the texture input settings, because Unity automatically strips away the A and remixes the RGB channels internally. Keep your custom textures just marked as 'Texture' with Read/Write enabled. You can see the default normal textures at the bottom of the /TEXTURES folder as a guide.
     
  48. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    864
    Get it Thanks a lot!
    And another question, despite the waves still can pop up from terrain, it has another problem: when I stand in the shallow that shoreline feature created, the suimono surface is normalized and calm, but the underwater effect still can show up when a high wave is supposed to cover the camera(but in fact it is not due to the shoreline normalization). I think it is a bug about the shoreline that need to be fixed. Will you look into it and fix it in the next update?
    Look forward to a better shoreline Suimono!
     
  49. trilobyteme

    trilobyteme

    Joined:
    Nov 18, 2016
    Posts:
    309
    Hi - I'm interested in using Suimono for an upcoming project and after watching videos and skimming documentation, I have a couple questions - both have to do with scooping out or ignoring sections of a scene. The project I'm planning involves a series of islands as well as a number of boats.

    Is there a way to 'scoop out' or ignore the area inside the hull of a boat? I'd like to add pirate ships with decks below sea level, but am not sure if Suimono would allow me to do that.

    Is there a way to ignore the area of an island? On one of the islands I am interested in building a cave system, and on another a series of mineshafts. Can this be done, and if so... is it a difficult task?

    Thanks in advance!
     
  50. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    @trilobyteme This is a great question, and is not often asked. Unfortunately, there is not currently a way in Suimono to do what you're asking. Alternatively, for an island you could use a custom mesh with a hole cutout for your island, this would give you the ability to go under the water level into your terrain, but it's not really the way I recommend using Suimono (you'll probably lose a lot of mesh detail doing it this way, which will affect water wave resolution). However, on a moving object like a boat, there isn't a way to remove a section of the water. I will keep this under advisement for possible future updates.