water_global_base
A water_base material simulates water and other liquids. It can be applied to object water and water meshes.
The water_base material performs quad tessellation of the water surface. But you should take into account that not the whole water surface is tessellated. In fact, we have two part of the water: inner that is tessellated (always under the camera) and outer that is not. Different parameters allows you to specify the distance of tessellated grid under the camera and the rate of decrementing the tessellation factor.
States
In the States tab you can set rendering passes and available options. Enabling some of the states activates additional textures and parameters in the Textures and Parameters tabs respectively.
FieldSpacer Interaction
FieldSpacer interaction state enables the influence of FieldSpacer object on water object.
Choppy Waves
Choppy waves state provides more realistic wave with sharp crests.
Choppy waves state disabled. |
Choppy waves state enabled. |
Underwater DOF
Underwater DOf adds an additional blur effect for underwater and overwater splice to make the waterline looks more plausible.
High quality waterline state disabled. |
High quality waterline state enabled. |
Planar Reflection
Planar Reflection allows you to use planar reflections on the water surface instead of SSR. It is better to use it on undisturbed water.
Map Size
Map Size Map size parameter specifies the size of the reflection map: the higher the value, the better the quality is.
Available sizes of the map are:
- 128 — creates a reflection image with 128x128 resolution.
- 256 — creates a reflection image with 256x256 resolution.
- 512 — creates a reflection image with 512x512 resolution.
- 1024 — creates a reflection image with 1024x1024 resolution.
- 2048 — creates a reflection image with 2048x2048 resolution.
- 4096 — creates a reflection image with 4096x4096 resolution.
- Quart height — creates a reflection image with the resolution height/4xheight/4, where height is an application window height.
- Half height — creates a reflection image with the resolution height/2xheight/2, where height is an application window height.
- Height — creates a reflection image with the resolution heightxheight, where height is an application window height.
Textures
Foam
Foam texture specifies the foam on the water. It will be written into the diffuse buffer.
The engine twice samples the foam texture to create plausibility of the real world foam behavior.
The texture is 1-channeled.
Normal Detail
Normal Detail map stores normal information required to achieve an additional (detail) effect of Normal Mapping. Normal map helps to create ripples (cats-paw effect) on the water surface.
With absolutely white normal map |
With ripple-simulated normal map |
The texture is 2-channeled:
- RG values store two components of a surface normal.
- B value is calculated based on the R and G values in run-time.
Depth LUT
Depth LUT is a LUT texture, which shows the color of the bottom. Depending on the depth, the engine chooses the color of the water and multiply it to water generated LUT texture. This generated LUT shows how deep the photon goes through the water to till complete scattering.
The texture is 4-channeled:
- RGB values store color.
- A value is used for creating "transparent" water near the shore. In other words, it defines the fog density.
Height
Height texture is used to create a height displacement for waves. By using height texture, the engine creates waves on the water surface. The engine performs triple access to the texture.
The texture is 1-channeled:
- R value defines the height of the wave.
Parameters
Geometry Parameters
Max Tessellation Factor
Tessellation factors determine how much to subdivide each patch.
Tessellation factor is set to 1 |
Tessellation factor is set to 16 |
Tessellation Exponent
Tessellation Exponent parameter is in charge of rate of tessellation factor changing. It specifies how fast the tessellation will fades from the center point of inner water to outer.
Tessellation Distance
The engine doesn't performs the tessellation of whole water surface because it would significantly affect performance. In fact, we have two parts of the water: inner (always under the camera) and outer. This parameter specifies the size of the inner water grid - the part of the water that will be tessellated.
Procedural Normal Blur
Procedural Normal Blur parameter specifies the ratio of the procedurally generated normals' blurring. The lower the value, the more blurred (hence, more flatten) the water surface will be.
Procedural Normal Weakening
Procedural Normal Weakening parameter specifies the ratio of procedurally generated normal weakening.
Choppiness Force
Choppiness Force parameter specifies the sharpness of the wave crests. If the Choppy Waves is enabled, the engine takes the vertices near the wave crest and move them closer to the crest and recalculate their normals to make them look more plausible. This parameter specifies the force of that contraction.
Choppiness Normal Blur
Choppiness Normal Blur parameter specifies how moved vertices' normals will be blurred.
Choppiness Normal Weakening
Choppiness Normal Weakening parameter sets the weakening of the normals for choppiness.
Waves Animation Parameters
Waves for water_mesh material are created by using the height map. The engine performs sampling from this height map and creates the waves by using simple formula:
A*H1 + B*H2 + C*H3
In the formula given above, H1, H2, H3 are samplings from height map, A, B, C are Height Scale parameters.
Additional ripples (cats-paw effect) are created by using normal detail map.
Wave 0 UV Transform
This parameter specifies the transformation of the first height map sampling.
First two parameters mean the scale texture coordinates, along the X and Y axes. Third and forth specify the wind direction.
Wave 0 Height Scale
This parameters sets the height scale of the first height map sampling.
Wave 1 UV Transform
This parameter specifies the transformation of the second height map sampling.
First two parameters mean the scale texture coordinates, along the X and Y axes. Third and forth specify the wind direction.
Wave 1 Height Scale
This parameters sets the height scale of the second height map sampling.
Wave 2 UV Transform
This parameter specifies the transformation of the third height map sampling.
First two parameters mean the scale texture coordinates, along the X and Y axes. Third and forth specify the wind direction.
Wave 2 Height Scale
This parameters sets the height scale of the third height map sampling.
Detail 0 UV Transform
This parameter specifies the transformation of the first detail map sampling.
First two numbers mean the, third and forth specify the wind direction.
Detail 0 Intensity
This parameters sets the intensity of the first detail normal map sampling.
Detail 1 UV Transform
This parameter specifies the transformation of the first detail map sampling.
First two numbers mean the, third and forth specify the wind direction.
Detail 1 Intensity
This parameters sets the intensity of the second detail normal map sampling.
Foam Parameters
Patch 0 UV Size
As the engine samples the foam texture twice, this parameter specifies the size of the first foam texture patch.
Patch 0 UV Speed
This parameter sets the speed of the first foam patch.
Patch 1 UV Size
This parameter specifies the size of the second foam texture patch.
Patch 1 UV Speed
This parameter sets the speed of the second foam texture patch.
Wave Contrast
Wave Contrast parameter sets the contrast of foam mask,
Wave Intensity
Wave Intensity parameter specifies the foam intensity on the wave crests.
Shoreline Intensity
Wave Intensity parameter specifies the foam intensity near shores or different objects in water.
Subsurface Scattering Parameters
Color
This parameter specifies the Subsurface Scattering (SSS) color.
Ambient Intensity
Ambient Intensity parameter sets the intensity of the light ray for whole water. It used to simulate SSS for whole water. The lower the value, the faster the ray will dissipate in water.
Intensity Through Waves
Intensity Through Waves parameter sets the intensity of the light ray that goes through the waves. The lower the value, the faster the ray will dissipate in water.
Intensity Around Foam
Intensity Around Foam parameter sets the the intensity of the SSS near the foam.
Exponent Around Foam
Exponent Around Foam parameter specifies the rate of intensity around foam parameter changing.
Underwater Parameters
Underwater parameters specifies the underwater part of the water_base material.
The final color of the underwater is calculated by this formula:
FinalColor = FogColor * SunLighting^(1/FogSunLighting) + FogColor * EnvLighting^(1/FogEnvLighting)
FogColor, FogSunLighting, FogEnvLighting are parameters that you can specify in the material. Other parameters (Sun and Environment lighting) are calculated according to the sun lighting and environment lighting of the scene. In fact, this formula define how sun lighting and environment lighting affect the final underwater color.
Fog Transparency
Fog Transparency parameter specifies the transparency of the underwater fog. The higher the value, the more transparent the underwater fog will be.
Fog Color
Fog Color parameter defines the fog color. Sun and Environment lightings will affect this parameters to create the final underwater fog color.
Fog Lighting Depth
Fog Lighting Depth parameter sets the distance in units, where the light will affect the underwater color. If the camera moves down deeper than the given value there will be no light.
Fog Environment Lighting
Fog Environment Lighting parameter specifies how the environment lighting will affect the final underwater color.
Fog Sun Lighting
Fog Environment Lighting parameter specifies how the environment lighting will affect the final underwater color.
Bottom Color LUT Scale
Bottom Color LUT Scale parameter is a multiplier for the Depth LUT. It will "stretch" the LUT texture length.
Bottom Color LUT Offset
Bottom Color LUT Offset parameter sets the offset of the Depth LUT texture.
Waterline Size
Waterline Size parameter specifies the thickness of the line that divides overwater and underwater.
Other Parameters
Env Reflection Roughness
Env Reflection Roughness parameter specifies the environment reflection roughness of the water surface. It helps to tweak the water surface appearance related to the environment.
Refraction Scale
Refraction Scale parameter sets the scale of the water refraction. The light moves slower in water and faster in air, that's why we see the refraction of object in the water. This parameter specifies the scale of the water refraction.
Planar Reflection
Mask
Mask specifies the viewport mask of the reflection camera.
Distance
Distance from the reflection camera to the object that will be reflected. In other words, the distance equals the distance from camera to the reflective surface plus the distance from object to reflective surface.
Pivot Offset
Pivot offset specifies the position of the pivot point.