Stylized Water 2 – Underwater Rendering docs

Stylized Water 2 - Underwater Rendering (Extension)

Stylized Water 2 - Underwater Rendering (Extension)
Version: 1.1.0

2.Getting Started #

Base asset

At this point you should already have the Stylized Water 2 asset installed. The Underwater extension will import directly into its folder. Without this installed first, you’ll be posed with at least one unsolvable console error.

Refunds can not be issued failing to acknowledge that this is an extension asset (mentioned on the store page 4 times). An alarming amount of users buy only the extension, without owning the water shader. This is not covered by the Asset Store refund policy (EULA).

The minimum version requirement of the Stylized Water 2 base asset is v1.5.0. You may get script/shader console errors when using an older version. Always try to update to the minimum required version

Initial set up

To enable underwater rendering in a scene, go to Window → Stylized Water 2 → Set up underwater renderer.

If there is only 1 water object in the scene, the water material and level will be automatically configured for you. Assign the water material that is used in the scene, and set the water level to match the Y-position (in world-space) of the water mesh.

Notifications with quick-fix buttons will be displayed if any other set up is required.

You’re now set! The waterline and underwater fog will automatically render once the bottom of the screen touches the water.

On the water material you’ll now find two paramaters, specific to the shading of the underwater surface

Future work

As of the v1.0.4 a large part of the graphics have been reworked, next to vastly improved performance, landing on a definitive version. Though there is still room for future enhancements.

  • Directional caustics support for versions older than Unity 2020.2
  • Option to use fast directional caustics (by reconstructing the required depth normals texture from depth)
  • Disable rendering when in prefab edit mode
  • C# API to change the water material and level more easily (this could be used in conjunction with triggers)
  • Refraction masking for objects between the camera and water, when viewed from below
  • Rework shading for underwater surface to include internal reflections
  • Boundary rendering. Injects a hidden sphere into the fog, to avoid the end of the game world being visible in the distance.


  • Camera entry/exit effects: Water washing over the screen when moving out of the water. And/or splashes as it enters the water. This all needs to be scalable and based on how fast the camera hits the water, otherwise it’s too basic.
  • Rendering of water volumes (eg. boxes). Given the fact that this moves much of the rendering onto scene objects, it would require a large revamp. This may be considered if there is a sufficient demand for it and revenue to meet the development time.
Yes No Suggest edit
Last updated on August 4, 2023
6 of 7 users found this section helpful
Suggest Edit