Quality Settings
All global water parameters are located in Unity Project Settings:
Edit → Project Settings → Graphics → KWS Water Settings
Water quality is directly linked to Unity Quality Levels (Very Low … Ultra). This means that when you switch the quality level in Unity, the water system automatically switches to the corresponding settings
Reflection
Reflections in KWS are additive. Screen Space Reflection is rendered first, and where it cannot reflect geometry (off-screen objects, behind water, etc.), the result is complemented by Planar Reflection (if used). This allows combining both methods for a balance of quality and performance
Screen Space Reflection (SSR) – fastest reflection method, even faster than Unity’s native SSR. Works as a screen-space effect, so it only reflects objects visible on the screen. Very efficient but can produce artifacts when geometry is off-screen. ⚠️ Tip: ideal for reflecting small details (rocks, grass, props) without extra rendering cost.

Screen Space Resolution Quality – controls internal resolution of SSR (Low → Ultra). Higher values give sharper reflections but increase GPU load.

Use Screen Space Skybox – by default, SSR also reflects the skybox as part of the screen-space image. Limitation: if the sky is partially blocked by an object (e.g. a tree or a rock), SSR cannot “see” the sky behind it. For example, a cloud or an airplane hidden behind that object won’t appear in the reflection – instead, the object itself will be reflected. If this option is disabled, the system will use Unity’s cubemap-based sky reflections instead, ensuring that the sky is always visible in water reflections, independent of what’s on screen.

Borders Stretching – parameter that stretches reflected pixels near screen edges to reduce artifacts when objects leave the viewport.

Planar Reflection – highly accurate but very expensive. Renders the scene a second time from the water surface point of view. Works only for flat water surfaces at a single height (the height of the Water Manager or Ocean). On surfaces with varying height (rivers, waterfalls), planar reflections will not appear correctly. ⚠️ Tip: use selectively via layers – e.g. reflect mountains and large objects, but exclude small props to save performance.

Planar Shadows – enables rendering of real-time shadows inside planar reflection. Note: doubles the cost of shadow rendering, so it’s recommended only if shadows in reflections are critical (e.g. cinematic shots).

Planar Resolution Quality – sets the resolution of the planar reflection texture (Low / Medium / High / Ultra). Higher values increase sharpness and detail of reflections but cost more GPU memory and performance.

Planar Layers Mask – allows you to restrict which objects are rendered into the planar reflection. Useful for excluding small props, foliage, or particles that don’t contribute much to realism but add significant cost. Recommended to keep only large/important objects (e.g. terrain, buildings, mountains, sky elements). ⚠️ Tip: Planar reflections are very expensive because they render the scene a second time. Always combine with Layers Mask to balance performance and visual quality.
Clip Plane Offset – shifts the reflection clipping plane slightly above/below the water surface to avoid artifacts such as geometry flickering or z-fighting at the waterline. A very small value (like 0.0005) is usually enough. Increasing it too much may cause gaps between water and reflected objects.

Anisotropic Reflections – simulates natural blurring of reflections at long distances. In reality, a single far-away pixel covers thousands of tiny waves, each with different normals. This effect blends them to create smoother, more realistic distant reflections.

High Quality Anisotropic – increases accuracy of anisotropic blending at higher GPU cost
Refraction (View Through Water)
Chromatic aberration of refraction. In practice, it makes shallow areas and wave crests show subtle rainbow-like edges. This effect is not physically based, It works best in clear water (high transparency). If the water is very turbid, dispersion will be less visible. It increases rendering cost slightly, since multiple wavelengths are sampled.

Refraction Resolution – controls the rendering resolution of the underwater world. At a distance, when viewing the water surface with waves, refraction introduces distortion and blur. In this case, lowering resolution can significantly save performance without noticeable visual loss. When the camera is close to the water surface, or when the Underwater Effect is active (camera below water), the system always switches to full resolution. This ensures that fine details of the underwater environment are preserved and not lost due to downscaling. ⚠️ Tip: Use lower resolution for general above-water scenes to optimize performance. Don’t worry about underwater views – the system automatically upgrades to full resolution when needed
Use Dispersion – chromatic aberration of refraction. In practice, it makes shallow areas and wave crests show subtle rainbow-like edges. This effect is not physically based, It works best in clear water (high transparency). If the water is very turbid, dispersion will be less visible. It increases rendering cost slightly, since multiple wavelengths are sampled

Dynamic Waves
Toggles rendering of dynamic wave simulation globally.
When disabled, all dynamic wave simulations (simulation updating, splash particles and foam particles rendering) are turned off in every scene and water zone.

Ocean Foam
Toggles rendering of foam in the ocean globally.
Can reduce overdraw and bandwidth usage when foam is not visually important.

Wet Effect
Wet Effect darkens and adds subtle gloss to surfaces near the waterline so the water blends naturally with terrain and objects.
How it works – A wetness mask is generated around the water surface and applied to nearby geometry. – Areas in contact with water get stronger darkening and specular highlights, then fade out with height/distance using G-buffer in Built-in or Decal buffer in URP/HDRP.
In all pipelines the pass is screen‑space, so large on‑screen water areas and many overlapping zones increase bandwidth and fill‑rate.

Volumetric Lighting
Simulates light scattering inside the water volume – creating visible light beams and a sense of depth below the surface. Most noticeable in clear water under strong sunlight or spotlights.

Resolution Quality – defines the rendering resolution of the volumetric pass. • Higher quality = sharper beams but more expensive. • Lower quality = softer beams with more aliasing but cheaper. ⚠️ Strongly affects performance, especially in scenes with many shadow-casting lights

Iterations – number of slices used to approximate light scattering through the water volume (similar to MRT/CT scan slices). • Each slice requires recalculating all active lights and their shadows. • Higher values produce more accurate volumetric beams with less banding/noise. • Lower values are faster but can look coarse or noisy. ⚠️ Strongly affects performance, especially in scenes with many shadow-casting lights

Use Additional Lights Caustic – enables caustic projection not only from the main directional light (sun) but also from spotlights and point lights located above the water surface and shining down onto the bottom. Useful for artificial lighting (e.g. lamps, torches, projectors shining from above). Works only if the light is positioned above water and points toward the underwater area. Each additional light increases GPU cost since caustics must be recalculated per light. ⚠️ Tip: Use sparingly in scenes with multiple dynamic lights, as performance cost scales with the number of active point/spot lights.

Caustic (Light Patterns on Surfaces)
Caustics simulate light patterns projected onto surfaces under the water – moving bright highlights created when sunlight (or other lights) refracts through waves. This effect is most visible in shallow areas, rivers, and nearshore water, and adds a lot of realism.

Ocean Caustic Resolution – defines the resolution of the ocean caustic texture. Low/Medium/High/Ultra – higher values improve sharpness and detail of caustic patterns, especially in shallow water. Higher resolution increases GPU cost proportionally (more simulation pixels)

Ocean Caustic Filtering – improves caustic sharpness by reducing blurring. Increases GPU usage slightly

Ocean Dispersion – applies chromatic aberration to caustics (slight color splitting into RGB).
Underwater Effect
Uses a fullscreen post-processing pass when the camera is below the water surface using distortion, color absorption, refraction, volumetric lighting, caustic, etc.
Settings:
Toggles rendering of underwater rendering globally.

Mesh Settings
Water surface is rendered using an instanced quadtree mesh (similar to Unity Terrain). This approach provides high detail close to the camera, while using LOD for distant areas. It also uses dynamic frustum culling for vertices, so water outside the camera view is not rendered (unlike a simple grid).

Key Features:
Instanced Quadtree Rendering – dynamically subdivides the mesh near the camera for high detail while reducing resolution in the distance.
Dynamic Frustum Culling – vertices outside of the camera’s frustum are skipped, unlike a traditional static grid, which improves rendering efficiency.
Shared Mesh for All Zones – the ocean and all dynamic simulation zones (except baked zones) use the same continuous mesh.
This allows smooth blending between rivers, lakes, and the ocean surface.
Baked zones use pre-generated meshes and flowmaps for optimization.
LOD System – automatically adjusts detail levels depending on camera distance.
Camera-Centered Projection – the mesh is re-centered around the camera, giving the illusion of an infinite ocean without floating-point precision issues.
Mesh Detailing (Near Camera) Controls the level of detail for the water surface in areas close to the camera. High detail ensures realistic wave shapes and smooth foam rendering in close-ups (first-person cameras, cinematic shots). Increasing detail raises the vertex count and GPU load. Recommended for scenes where the player can closely interact with the water surface. Performance Tip: For third-person games or RTS-style cameras, a medium detail level is usually sufficient and saves performance.

Mesh Detailing (Far Distance) Controls how detailed the mesh remains far from the camera. Lower detail reduces GPU vertex processing at long distances, which are usually covered by fog, haze, or low-contrast water. Higher settings provide smoother wave transitions and reduce visual popping when flying over water with a free camera. Performance Tip: If the game camera rarely looks at the horizon, you can safely lower far-distance detail. For flight simulators or open-world games with wide horizons, keep this setting higher to avoid visible LOD transitions.

Rendering Settings
Controls how water is rendered and integrated with the rest of the scene.
Transparent Sorting Priority – adjusts the render order of transparent objects. Lower values render earlier, higher values render later. Useful if you have multiple transparent assets (like particles, glass, or UI) that overlap with water.

Draw To Depth – writes the water surface into the depth buffer. Required for certain post-processing effects (e.g., Depth of Field, Screen-Space Fog, Depth-based Blur). Without this option, those effects may not correctly recognize the water surface. Increases overdraw cost slightly, so leave it disabled if post-processing doesn’t rely on water depth

Wide-Angle Camera Mode – disables frustum culling for water mesh polygons. Useful for multi-camera setups (e.g., split-screen or portals). Required for very wide field of view cameras where normal culling may incorrectly remove parts of the water surface. Slightly increases GPU load, since more polygons are rendered.

Third-Party Fog Support Select which fog system should blend with water rendering. Native Unity Fog – uses Unity’s built-in fog. Custom/3rd-party integrations – if available, blends water with external fog assets
Last updated