Author Topic: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview  (Read 10376 times)

Chingwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1596
    • View Profile
    • Tanuki Digital
UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« on: October 14, 2015, 11:57:39 PM »
Hello All,

A preview version of the upcoming Suimono version 2.1.1 is now ready for download...

Download Here: http://www.tanukidigital.com/download

While the final version of 2.1.1 is nearing completion, I thought it best to go ahead and put out this preview for those who are interested in seeing what's coming up, as well as get some feedback and bug/compatability reports before moving on to the final release version.  Version 2.1.1 is a large release and incorporates many changes and new features.  I know many of you have been waiting a long time and I apologize for all the delays.  This has been a complicated process, but I think the updates will be beneficial to all and ultimately worth the extra time.

A NOTE ABOUT INSTALLATION:
Since this is a major upgrade it's recommended to delete your current Suimono scene objects, and then completely delete the Suimono folder in the Project list before installing this update.  Also as you'll see below in the notes the Preset system has changed format.  This means that your current presets will not work and will have to be recreated in the new system (sorry!)  The new preset system is more flexible though, and is much more forgiving for these types of changes going forward.  You also now have the ability to easily backup and share individual presets, simply by trading the .txt preset files located in the Resource folder.

CHANGES TO SETUP PROCESS:
The setup process is the same as before, but with the addition of step 4 and 5 below.
  • Drag the SUIMONO_Module prefab into your scene.
  • Drag the SUIMONO_Surface prefab into your scene.
  • Add your main scene camera to the 'scene camera object' slot on the module.
  • (NEW!) Add your main scene directional light to the 'scene light object' slot on the module.
  • (NEW!) Go to your scene camera object and add the Suimono Underwater Effect component by going to Component-->Image Effects-->Suimono-->UnderwaterFX

Also note that on first install, Suimono 2.1.1 adds a few new layers to your project.  These are used for specific effects and Suimono Surfaces now uses these instead of the built-in 'water' layer.

WHAT'S NEW IN 2.1.1:
There are countless updates and changes that have been made to improve the system, but below I will go through the major changes and additions.
  • Completely rewritten water shader and wave effects.
  • Water surface waves can now be modulated based on Beaufort wave scale (0-12), from still to calm to stormy.
  • New Underwater Effect, now contained in an Image Effect component that get's added to camera.
  • Improved Edge Blending effects.  Water surfaces now blend correctly at the edges, including foam, depth, caustics, and refraction giving a much more natural look to the water.
  • New Caustic system with better performance and more realistic rendering.  Can optionally be modulated by color and light direction based on the scene light object.  Also can now be activated/color tinted on a per-water surface basis.
  • ReWritten Preset system. Each preset is now contained within it's own file, which can be backed up (and shared!) as needed.  This is a more more stable and flexible compared to the previous system.  However, If you use custom presets, they will need to be reformulated.
  • New Shoreline system.  Setting up where you want shoreline waves and foam to be generated is now customizable with the new 'ShorelineObject' prefab.  See notes below for setup instructions.
  • New Integrated normals displacement/refraction effects, most notably on the ripple effect.
  • New Trail system allows for water displacement and foam trail/wake effects. See demo character for example. (still work-in-progress)
  • Improved foam rendering.  Edge foam now blends properly with shoreline and other objects and renders into the distance.
  • Improved Buoyancy and GetHeight() performance, allowing more concurrent function calls without dragging down system performance.
  • Improved performance and stability.  My tests here have seen a 10fps performance increase (depending on scene/settings) and is also much more stable with far less random and allocated GC spiking.
  • Graphics auto-switching.  Dx9 and Dx11 versions are now determined automatically and should switch based on the computer and Unity settings automatically.  This should remove most instances of "pink" water due to the wrong shaders being loaded.
  • Rendering Parity between Forward/Deferred/Legacy Deferred.


STILL TO-DO:
  • Preset-to-preset transitions have been temporarily disabled.  This feature will be ready in the final 2.1.1 version.
    Move water transition screen effects (splash/droplets) to the On-Camera UnderwaterFX component for better compositing.
    Finalize the trail/wake system. (still needs some rendering error fixes and custom UI/Options).
    Improved height-wave foam rendering.


SETTING UP NEW SHORELINE SYSTEM:
The new ShorelineObject prefab determines where you want shoreline to render in your scene.  You can place as many shoreline objects into your scene as you wish, and they can be scaled and rotated to fit your terrain and objects.  There is a sample shorelineObject setup in the demo scene for guidance.  I should have better instructions available in the documentation pdf and a demonstration setup video soon.
  • drag a ShorelineObject prefab into your scene.
  • drag the Suimono Surface you want it to affect onto the 'Attach to surface' slot.
  • press the 'Debug Mode' button to show the shoreline rendering limits.
  • use normal unity controls to scale and rotate the object until it fits the terrain/objects in your scene.
  • adjust the sliders to control depth rendering (red is the wave area, and green is the shoreline)
  • when you're done editing, uncheck the 'Debug Mode' button again.


WHEW!  That's a lot to write (and read!).  For those who are brave enough to jump in and test out this preview I'm very interested in hearing what you think overall, and how this update performs for you.  As you guys are testing I'll be putting the final touches onto 2.1.1 and updating the documentation with all these new changes.  I also plan to create a setup video of how to incorporate suimono and the new shoreline system into your projects.

As always, let me know if you have problems/questions/feedback etc, either by email or on the forums!

All the best,
Justin Kellis
Tanuki Digital

ddnharris

  • Jr. Member
  • **
  • Posts: 53
    • View Profile
Re: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« Reply #1 on: October 15, 2015, 03:10:17 AM »
Hi Justin,

thanks for the update- I've done a quick check. Unfortunately the demo looks a bit odd (Suimono_bug01 and 02), and I get the error:

SyncFence has not been called on the JobFence. Usually you either forgot to call SyncFence or ClearFenceWithoutSync depending on the desired behaviour.

In my own scene, with completely new module and surface, I get the error above, and also:

NullReferenceException: Object reference not set to an instance of an object
SuimonoModule.FixedUpdate () (at Assets/SUIMONO - WATER SYSTEM 2/SCRIPTS/SuimonoModule.js:679)

I bought SSAO Pro on special today, and the new Suimono surface adversely affects the effect (Suimono_Off, Suimono_On), sometimes it also renders over the reflections (Suimono SSAO). Current stable version of Suimono works fine.

Finally, I can't seem to get surface textures/ normal maps to show, either in the demo or my own scene (Suimono Sunlight) which means I don't get the lovely glittering sun effect on the surface. Running a GTX 970, DX11 project, Windows 10.

ddnharris

  • Jr. Member
  • **
  • Posts: 53
    • View Profile
Re: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« Reply #2 on: October 15, 2015, 03:14:59 AM »
Also get funky shadows- I think this is related to the same depth issues as the SSAO has?

Chingwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1596
    • View Profile
    • Tanuki Digital
Re: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« Reply #3 on: October 15, 2015, 08:26:20 AM »
@ddnharris thank you for testing!  I can confirm that on occasion I also have seen the missing normals issue, where the water surface goes completely smooth.  On my end it's very inconsistent though... so I'll be playing a scene for a few minutes just fine and then after messing with some settings the normals disappear.  I'm still trying to get to the bottom of this issue.

You are definitely seeing some weird issues in the demo.  I've also never come across the "SyncFence" error you mentioned.  Does it matter whether you're in Forward/Deferred/ or Legacy Deferred?

ddnharris

  • Jr. Member
  • **
  • Posts: 53
    • View Profile
Re: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« Reply #4 on: October 15, 2015, 02:40:43 PM »
Hi Justin,

Swapping the Demo camera to deferred got rid of the graphical glitches in the screenshot, and removed the SyncFence error. I use the deferred path in my own scenes, hence never got the error there earlier. The demo scene still has no normals or diffuse surface textures, as for my own scene. Interestingly, they do show in the editor window, but disappear on play.

I can now see the new trails and FX in the demo scene, and they look gorgeous btw- really liked the displaced trail behind the character.

Is it likely the SSAO incompatibility is fixable with the new method?

ddnharris

  • Jr. Member
  • **
  • Posts: 53
    • View Profile
Re: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« Reply #5 on: October 15, 2015, 02:42:58 PM »
Ah, cracked the normals issue- turning off HDR in all the non-player Suimono cameras seems to fix it

Chingwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1596
    • View Profile
    • Tanuki Digital
Re: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« Reply #6 on: October 15, 2015, 02:57:07 PM »
It's possible the SSAO is related to the rendering path.  Also possible that 'anti-aliasing' needs to be turned off in the Unity quality settings.  Then of course it's also possible there's a suimono incompatibility somewhere, as it is doing much more off screen render work than before.

I'm glad to hear the other glitches are fixed on your end!  It's good to know the normals may be related to hdr cameras.  I haven't been able to recreate the issue today, but once it comes up again I'll make sure to test the hdr mode and see what's going on.  Was the problem that the suimono camera hdr setting wasn't matching the main scene camera?  Or did they need to be turned to non-hdr regardless?

ddnharris

  • Jr. Member
  • **
  • Posts: 53
    • View Profile
Re: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« Reply #7 on: October 15, 2015, 03:05:13 PM »
Non-HDR regardless- all my player cameras are HDR, linear, deferred. I don't use the AA in quality settings as it's incompatible with camera HDR and linear colourspace.

Aother issue I have is if transparency is off, but reflection is on, with the global ocean. In this case, the far plane doesn't reflect the scene, and objects intersecting the far plane show through the near plane reflection slightly.


ddnharris

  • Jr. Member
  • **
  • Posts: 53
    • View Profile
Re: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« Reply #8 on: October 15, 2015, 03:40:20 PM »
Final bugs for the moment- it seems like there's a lot more jitter on the reflections/transparency with movement again? There also seems to be a lot of z-fighting between the ocean and other geometery- until Unity make it possible to layer deferred cameras, I'm stuck with a near plane of 0.2 and a far plane of 9000, so I'm used to a reasonable amount of z-fighting as a matter of course. However, in the current version of Suimono it's not noticable until you're a long way from the geometry in question, with this beta it occurs right up to the camera.

There's visible intersection between the near and far planes again, the deep dark ocean is a pretty clear example.

Otherwise, it's looking great, the deep dark prefab in particular looks lovely when you shift the two planes apart. Much more convincing transparency, and more convincing scattering of light and foam across the surface. UnderwaterFX look a million times better. Just hope the above issues aren't too difficult to tweak. And to flog a dead horse, I'd really hope for depth-based fx like SSAO to play nicely still!

Chingwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1596
    • View Profile
    • Tanuki Digital
Re: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« Reply #9 on: October 15, 2015, 08:04:01 PM »
Can you post a picture off the reflection problem?  It might simply be that the 'reflection distance' setting isn't set far enough for your scene.  You could set this to match your far clip plane of 9000.

I've noticed some reflection stutter, but only with UFPS so far (not using the built-in unity player controller, or my custom one).  I'm still not sure what aspect is causing this.  Are you using UFPS to control movement?

Now that you mention the plane difference in the deep dark ocean preset, yeah I see it too.  I didn't notice this with the others, I guess I didn't test it with all the presets.  Will look into it!
« Last Edit: October 15, 2015, 08:06:32 PM by Chingwa »

radimoto

  • Newbie
  • *
  • Posts: 6
    • View Profile
Re: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« Reply #10 on: October 16, 2015, 06:22:48 AM »
Testing on Unity 5.3.0b2

Assets/SUIMONO - WATER SYSTEM 2/_DEMO/Suimono2_Advanced_Demo.unity loaded up OK first time on Mac, however it then crashed.
Every attempt to load the demo afterwards then crashes with the following error:

Opening scene 'Assets/SUIMONO - WATER SYSTEM 2/_DEMO/Suimono2_Advanced_Demo.unity'
Unloading 100 Unused Serialized files (Serialized files now loaded: 0)
WARNING: Shader Unsupported: 'Suimono2/surface_under' - Pass 'FORWARD' has no vertex shader
WARNING: Shader Unsupported: 'Suimono2/surface_under' - Pass 'FORWARD' has no vertex shader
WARNING: Shader Unsupported: 'Suimono2/surface_under' - Pass 'SHADOWCASTER' has no vertex shader
WARNING: Shader Unsupported: 'Suimono2/surface_under' - Pass 'META' has no vertex shader
WARNING: Shader Unsupported: 'Suimono2/surface_under' - All passes removed
WARNING: Shader Unsupported: 'Suimono2/surface_test' - Pass 'FORWARD' has no vertex shader
WARNING: Shader Unsupported: 'Suimono2/surface_test' - Pass 'FORWARD' has no vertex shader
WARNING: Shader Unsupported: 'Suimono2/surface_test' - Pass 'SHADOWCASTER' has no vertex shader
WARNING: Shader Unsupported: 'Suimono2/surface_test' - Pass 'META' has no vertex shader
WARNING: Shader Unsupported: 'Suimono2/surface_test' - All passes removed
Receiving unhandled NULL exception
Launching bug reporter
Obtained 72 stack frames.

I'm submitting a bug report to Unity, hopefully it well help speed up support for Unity 5.3

EDIT: deleting the shaders surface_under and surface_test allows Suimono to run on 5.3 without crashing. Obviously breaks a few things but does appear to isolate the issue to these shaders...

Cheers,
Andrew
« Last Edit: October 16, 2015, 07:26:38 AM by radimoto »

Chingwa

  • Administrator
  • Hero Member
  • *****
  • Posts: 1596
    • View Profile
    • Tanuki Digital
Re: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« Reply #11 on: October 16, 2015, 07:50:55 AM »
Thanks for the bug report radimoto!  I usually don't test on Unity beta releases for a variety of reasons, but it's good to know this might possible be a problem in 5.3.  I'll keep my eye out!  I'm not sure why two of the shaders would fail to load properly though, as they all share passes from a common source.  Hopefully it's just a temporary bug.

ddnharris

  • Jr. Member
  • **
  • Posts: 53
    • View Profile
Re: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« Reply #12 on: October 16, 2015, 05:48:08 PM »
Hi, that got the reflection working, thanks.

I do use UFPS in first person mode, but without the dual camera setup. I also switch off all the UFPS scripts while in the aircraft, and the stutter persists- in this case it seems to relate to higher speeds?


MS80

  • Newbie
  • *
  • Posts: 11
    • View Profile
Re: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« Reply #13 on: October 17, 2015, 03:44:46 PM »
I recognized the same issue like ddnharris regarding SSAO! It seems it happens to both, Unitys standard screenspace ambient occlusion and to SSAO Pro, enabling Suimono Surface will break it, disabling Suimono brings it back!
« Last Edit: October 17, 2015, 04:01:22 PM by MS80 »

srahmel

  • Newbie
  • *
  • Posts: 13
    • View Profile
Re: UPDATE: 10/15/2015 - Suimono Version 2.1.1 Preview
« Reply #14 on: October 21, 2015, 06:34:08 PM »
Hi,

my framerate drops about 50% when I activate Suimono 2.1.1 Preview. With some settings the game  even crashes.
It also seems that speed tree etc. hast to be rendered again...

Regards
Sebastian