A Unity ID allows you to buy and/or subscribe to Unity products and services, shop in the Asset Store and participate
in the Unity community.
Discussion in 'Works In Progress' started by chingwa, Nov 17, 2013.
Wow, looking good!
but ugh, I didn't realize i was at the bottom of the page already, I'm just gonna re-post the pic here for those who don't want to click back one page...
I'd say you're getting a pretty convincing start on actual waves to shore realism,
probably the best to date I've seen. I've often wondered when this was going to
happen. Now, if I can reproduce it in my project, I will be even more convinced.
Thanks again Don, I think you'll find it easy to use. It's mostly automatic, but of course you'll be able to tweak certain settings to get it looking the best in your project. I just uploaded a video of it in action, it's short unfortunately because Premiere was freaking out and corrupting the video stream, but I managed to get about 15 seconds of non-Whacked video...
There are a lot of specular highlights in the foamy area. Perhaps that's because of the clear areas in between, but it makes the foam look a bit like plastic.
Another thing that might improve the look is to give the foam a slight yellow tint. At least, that helped for my water shaders.
Well, for sure you are dealing with a very complex interaction in real life, though it appears so simple.
Are the swells created by the actual underwater terrain depth?
How's the frame rate with this feature?
This wave is great for my projet !!!!
RC-1290 - Good call on the yellow tint. And yes, the specular is showing through the breaks in the foam. perhaps the foam could have a bit of shading though, or it's own (duller) specular to keep it from looking pasted on.
Don Gray - yes the scene depth is calculated for at start, and the waves use this calculation to determine how close they are to the shoreline. There really isn't any extra overhead for this as the waves shaders already had a displacing function and a getHeight function being performed... so there isn't a framerate hit while you're in play mode. The only hit is for the depth calculation when you start the scene. the resolution can be controlled as well, so for a 256res calculation I don't have any noticeable delay. For a 2048res calculation there is a delay of about 2 seconds when the scene starts. This can be recalculated during play mode if you want, though usually there isn't any reason to.
laurent.clave - Man, that scene looks so good you gotta tell me about how you're rendering your clouds, it looks great. I think you'll like the shoreline waves a lot, stay tuned, beta 8 is coming SOON.
It's looking great! And now I dont have to thing one up hah - one thing I WILL say was your foam on my beta accurued by the wave's height and width, when it should accrue through the waves steepness (thats the impresion i got anyways)
Things have been a little slow on my front cause of waiting for shader features to be added (a custom code node in shaderforge) and now ive started the work towards the 'demo' as a whole soon. Almost tempted to make it lengthy and tell a story directly related to the story im trying to tell in my big project, cept thousands of years later. Gonna start fundraising first though!
I use Environment Gator for the clouds system. It's great plugin
I don't think you need specular on the foam, but you might want smaller (normal map with more high frequency detail?) or less specular near the foam, because the water is a lot more turbulent there. Or anything else that makes the final screen color of the specular more distinct from the foam.
In all fairness, I'm not talking for experience in that area because my own water shader doesn't use textures for foam yet. They're just a yellow-grey diffuse, and specular is grey.
Soon the beta 8 ?
Yes, soon. I'm finding the closer things get to being "done" that the longer they take to finish.
I ran into some issues that I now need to backtrack and fix... everything was working great in forward rendering, then switching to deferred now broke the shaders (sigh) Unity why are you like this? Actually this is a source of most of my development issues.... inconsistencies in how Unity handles different platforms and rendering. BAH! But don't worry, beta 8 is imminent
No problem chingwa and thank you for your support
Hello, nice looking water you've got here!
I've got a couple quick questions.
Does it require Unity Pro?
Is it appropriate for making oceans aka does it support tiling so that I could make an infinite ocean for example?
It doesn't require Unity Pro, but it does look best with the pro version due to having rendertexture feature and z-buffer access. etc. This just allows more realistic visuals but the other features such as buoyancy and interaction will work in the free version of Unity just fine.
The upcoming version of the beta has a working ocean option for dx11 systems, and there will be the same option for dx9 in the following update. it handles tiling, etc automatically so you just put the surface in your scene and then set it to "infinite ocean" mode and "you're good to go"
Wow, sounds great! Thanks for the quick reply.
If I'm not mistaken, do I just purchase the original Suimono and then I will have access to this newer version?
A follow up question:
As far as syncing the water over multiple users via, say, photon unity networking, so as to have the wave heights match up so that it looks believable. Do you think this is possible? I'm just hoping at this point, amazing product regardless!
Yeah the beta isn't up on the store, but if you buy the current version you can follow the link on the first page of this thread to then sign up for the beta.
As far as networking, this is a great question, and one that has never been brought up. I have to say that this has not been tested, I don't believe this will work directly out of the box.... but it seems it could be feasible with a little extra coding. if you sync the water surface position and the scrolling positions over the network I would think that the rest of the system would pick up on either end and render both players in the correct positions... but again, not tested.
If I get to the point of testing it over a network, I'll definitely report on how it goes.
Alright another couple questions.
Can you create water bodies via script in real time?
Is the buoyancy looking a little less jittery than the latest video just yet?
Sure, you can create water at run time... there isn't a "built in" way to do this, but should be able to do it like you can create any other object at runtime. simply store a reference to the surface prefab and then call instantiate.
The only caveat is that when the water instantiates it builds a depth map of your scene which can take a second or two depending on your settings.... this would cause a stutter effect, but you can turn off this feature, or make your own prefab without the depth generation component and instantiate that instead.
Buoyancy is the same as in the latest video... you can tweak the settings to get a less jittery effect (it's just a tradeoff between thebouyant upwards force and the angular drag of your boat physics), but I haven't made any code updates to it as of yet.
Great, okay thanks again for the clarification. Looking forward to the next update!
Any updates on beta 8 chingwa?
I guess I should apologize as I had meant to get beta 8 out last weekend There have been some physics coding setbacks in regards to the new shoreline waves which have been giving me some real headaches. I think I'll release version 8 without this for now, and continue working on the physics interaction for beta 9 instead. There are a number of bugfixes and other additions and I don't want to hold them up for this one issue any longer.
I need to put a couple finishing touches then on the new fx system and run through and do a final compatability test and I'll put up version 8 for download. I should be able to have this out this coming sunday. (finger's crossed)
No problem, you do not have to apologize!
Hi All, there's a new BETA version ready for download...
There were a number of additions and bugfixes I've been working on for this release. A few of the main features that are the Infinite Ocean setting is now working in dx11 (and partially working in dx9), shoreline waves have been redesigned and reimplemented, and I've incorporated a new Modular fx system that allows much more control over the splash and ripple effects, as well as.... boat wakes! Actually the system is robust enough to allow you to add your own particle fx as well, the only limit is your imagination.
There's also a new demo that is a little more realistic and interesting. It's still a work-in-progress, and I plan to build it into a little "mini-game" environment showing off multiple types of water and effects that can be achieved with Suimono 2, but for the meantime you'll have to be happy just driving a boat around.
I'm currently going through the documentation and writing some much needed updates and should have a more up to date version posted tomorrow, including information regarding the new fx system.
Download Here: http://www.tanukidigital.com/suimono/beta
UPDATE: 3/30/2014 - 2.0 Beta Version 8 released
NEW - Infinite 3D Ocean feature now works on DX11 (partially working on dx9)
NEW - Shoreline Waves calculation implemented (+ 2 new shoreline presets)
NEW - Work-in-progress demo with controllable boat.
NEW - Major performance increases on Android and iOS builds.
NEW - Rewritten iOS and Android shaders. (still needs testing)
NEW - FX System component now exposes all particle effects.
NEW - FX Object allows you to place effects and audio anywhere in your scene.
NEW - "Use Dark Skin" option to explicitly switch between dark and light Editor UIs.
NEW - Force Amount setting to buoyancy object.
NEW - "Include Presets in build" option.
NEW - exposed "Auto Tessellation" option, switches between sized-based tessellation or user specified tessellation.
NEW - Presets and preset transitions can now be accessed in builds.
NEW - Added "Enable Caustics on Mobile" option under the performance tab, this is now off by default.
CHANGE - Presets no longer overwrite Surface Type index setting.
CHANGE - Module and Surface prefabs now automatically disconnect themselves from the prefab reference once in scene.
CHANGE - Default Mesh Collider now simplified for performance.
CHANGE - Default cube reflections now matches demo scene skybox.
CHANGE - Updated surface normal textures for improved wave rendering.
FIX - Improved reflective cubemap rendering when dynamic reflections is disabled.
FIX - Turned depth rendering back on in dx9 shader.
FIX - Flipped Rendering on OSX.
FIX - Preset Transitions no longer throw an error.
FIX - Preset Transitions now morph colors correctly.
FIX - shader references now referenced correctly in builds (removes pink water error).
FIX - dx11 water shader now works properly in build (fixed out-of-range float issue / pink-water error).
FIX - Effects plane no longer clips with occluding objects/terrain.
FIX - surface and refration effects now can blend completely out at shoreline.
FIX - wave displacement sometimes inadvertently stopped functioning.
Note: There is one caveat regarding the new shoreline wave generation, currently there are no physics calculation happening with the waves, so buoyancy, and splashes will not function accurately where the shoreline waves are rendering. I hope to have this fixed and all the physics operating correctly in the next beta update.
Awesome! Very excited.
This has me in a very good mood, will be tested soon
It's always better but I noticed that I have the same problem ...
When I copy the preset "dx11 ocean waves blue" the foam disappears.
I use Unity Version Target == unity pro DX11
Hi Thundertruck, can you walk me through exactly what you're doing? I tried the below on my end...
1) made a new project (Unity 4.34, dx11)
2) import the latest release.
3) set Unity Version target to dx11
4) press "play"...
5) click on the "dx11 ocean waves blu" preset
6) press the "+new" button at the bottom of presets (this should make a copy of the current preset settings)
7) click on the new "my custom preset" preset
8 ) rename and make any settings changes.
Perhaps, the problem is that you aren't pressing play... there are certain settings which don't work in the editor such as depth rendering and foam rendering (blame the unity editor camera for this one), because of this I recommend to always play your scene so you can see what the water surface looks like in-game, then making any tweaks to the settings or presets while the scene is still playing.
Try it out, and let me know how it works for you.
Finally got around to purchasing it. Looking forward to giving the beta a go
So on iOS, there water is only flat -- no 3D waves? The Deep Wave Height slider doesn't have any effect.
You still can do vertex displacement with fiew sinus instructions anyway.
[EDIT] Darn it, wrong thread! I though I was writing an other one about water shaders! ^^
Okay so I have some potential bug reports:
When I load up the newest version, add in the module prefab and change the unity version to "unity" (as I don't have pro), it doesn't update the shaders. Then of course, nothing functions with the surface prefab (the script doesn't even check) and the water remains pink and motionless. Even if I try manually changing the shaders it doesn't seem to do anything.
Error after adding in the surface:
Errors after hitting play:
Oddly enough, the demo scene seems to be working properly as far as I have seen, even changing the shaders properly when I change the unity version.
I then tried the older 7.5 version which seems to be working properly so far, but I'm really looking forward to being able to use the infinite oceans and new updates. Hope this helps!
EDIT: After testing out the 8.0 demo scene versus the 7.5 demo scene (both with the dx11 ocean waves blu preset), for whatever reason the 8.0 one is very jittery and not so great looking while the 7.5 one looks good and runs smoothly.
EDIT 2: Quick question. How do I increase the size of the water plane (besides scaling it via x and z as I want to keep the mesh level of detail)?
Thanks for the error reports. I've done some testing here on my end, and while I don't get the exact same errors you do, I get similar errors... however, I ONLY get these errors when I try installing version 8.0 on top of 7.5 or an earlier version. If I go into my 7.5 project, delete the "Suimono - Water System2" folder completely, and THEN import the 8.0 package, all is well.
This might also be why 8.0 is running jittery... if you have errors in the console it may be slowing down the performance. Can you try deleting and then reimporting as above?
The only way to enlarge the plane is to change the x/z scale... but as you've seen the resolution of the mesh also scales up. The way around this is to add in tessellation.... but I removed tessellation from the basic/indie shader as I thought it wasn't working in the free version of Unity... I'll go back and double check this today, stay tuned.
gecko - Unfortunately for now there aren't 3d waves on mobile... but I intend to work all mobile issues out for the next version. the mobile version will never look as good as the full pro version obviously, but I'm sure it's possible to get the wave displacement working. Sorry for the delay!
Tatoforever - there's a cure for this condition, called "Coffee"
I get the same results whether I load up 8.0 first in a new or existing project, or if I delete all the files of 7.5 and then load up 8.0.
So apparently you can do tessellation in Unity Indie. I'll put together a dx11 enabled version of the basic shader ASAP.
OK, let me know the following and I'll do some additional testing... are you using Unity 4.3.4? are you on Mac or PC?
I'm on PC and I updated Unity quite recently so I imagine it's the most recent version. I'll double check that later tonight when I'm home but I'm almost certain.
now it works, I had to duplicate after pressing play...
Anyway the new ocean is almost perfect!
I continue tests
Thundertruck - great, glad it's working! Let me know if you run into any further issues
Yep, I have 4.3.4f1, the latest update.
JulianS - I've emailed you a hotfix file that may fix your errors... let me know how it goes!
All - If anyone else is having errors or weird behavior with the latest beta let me know. I'll be issuing a hotfix file to fix a couple problems as soon as I know it's working correctly.
Thanks! It seems to load up the shaders now. The waves still seem very jittery for some reason, and especially in the infinite ocean setting. I may just have the settings wrong, but this is what the default dx11 blu water looks like for me as loaded:
They look and move much better in 7.5 for whatever reason.
EDIT: The picture doesn't seem to load so I'll email it to you.
Perhaps this has been addressed earlier regarding the beta08 but I downloaded it today and imported into Unity. It instantly corrupted my terrain colors. Made everything a dull light yellow color. There's nothing unusual about the terrain - I generated it with Terrain Composed and I'm not using any special shaders yet like the relief terrain pack.Also, I immediately got errors when I put the main suimono module into my project. Perhaps there's new instructions I've not read yet...
Oops - I meant to say i generated the terrain with Terrain Composer...typo
Had a bit of time with beta 8 earlier, your starting settings are always so unsuitable for showing off this system's strengths aha, after i'd got it more to my taste i loved it, looks really nice, lots of control, the shore effects work great, controlling the boat over big waves was tonnes of fun, really looking forwards to playing with that more, i'm looking forwards to getting back to water again now although land needs to take precedence for a little bit i think.. it'll all come together at the end anyways
Wayne256 - yes, I accidentally left my custom terrain shader in the latest beta release, sorry!! You can simply go into the "Suimono/_demo_beta/terrain/shaders/" folder and delete the "FirstPass" shader file. Sorry for the confusion! As for the crashes and errors, I've issued a hotfix patch that should fix these (or, you can re-download the latest beta again, as I incorporated the changes into their as well). If you didn't get the hotfix file then just send me an email at konnichiwa[at]tanukidigital.com and I'll get it to you asap.
Incidentally I'll probably be putting out at an 8.1 version in the next couple of days with some additional shader updates and error fixes.
lazygunn - Awesome! I too have spent a lot of time just boating around those high waves
I have to agree with lazygunn that your showcase scene's settings are somewhat unsuitable for showing off this system's strengths.
I'm playing with it the last couple of days and have progressed in several aspects, including the buoyancy system.
One thing that puzzles me however is the waves refresh rate; although I have a steady 50-60 fps in the demo scene provided,
I see that the waves still have a low-fps 'jaggy' feeling. This is more obvious if you disable the camera movement script or even observe it in the editor's scene view. Is there a setting I miss?
Also, the boat's reflection is somewhat misleading and disturbing, maybe it should be displayed only in local y, what do you think?