WaterVolumes are shape objects which can be used in a variety of different circumstances, such as rivers, lakes, pools, puddles or even oceans.
The "Forest" sample level shipped with the CRYENGINE SDK features several different water volumes.
To learn about adding Logic to Watervolumes, see Moveable Water Volumes.
Params | Descriptions |
---|---|
Width | Specifies how wide the volume is. |
Height | Specifies the height of the volume. |
AreaId | Sets up the ID of the area, so areas with another ID can overlap. |
GroupId | Sets up the Group ID of the area, so areas with another group ID can overlap. |
Priority | Defines the Priority so areas with a higher priority will be processed first. |
Closed | Sets if the area should be closed or if it should be just a line. |
DisplayFilled | Just for visibility in the editor this option defines if the area should be rendered as filled or not. |
DisplaySoundInfo | Enable to expand Sound Obstruction options. |
Agent_height | When Render_voxel_grid is enabled this determines the height - along the y axis - of the grid cells rendered. |
Agent_width | When Render_voxel_grid is enabled this determines the height - along the x axis - of the grid cells rendered. |
Render_voxel_grid | If true, voxel grid will be rendered when helpers are enabled. |
voxel_offset_x | Offset voxel grid on the X axis. |
voxel_offset_y | Offset voxel grid on the Y axis. |
Depth | Specifies how deep the watervolume should be. |
Speed | Specifies at which speed the water should be moving. |
FogDensity | Specifies how dense the underwater fog is. |
FogColor | Lets you choose the underwater fog color. |
FogColorMultiplier | Lets you choose how bright the underwater fog color is. |
FogColorAffectedBySun | If true, SunColor value set in the Time of Day will affect fog color of the water volume. |
FogShadowing | If enabled, surface of watervolume will receive shadows. You can control the shadow darkness, valid input 0-1. r_FogShadowsWater needs to be set to '1' for this to function, which is currently only enabled on Very High Spec. |
CapFogAtVolumeDepth | If false, fog will continue to render below the specified Depth of water volume. |
UScale | Specifies how much the water surface (bump) texture is tiled horizontally. |
VScale | Specifies how much the water surface (bump) texture is tiled vertically. |
ViewDistRatio | See Common Entity Parameters for more information. |
Caustics | See Water Volume Caustics for more information. |
CausticIntensity | See Water Volume Caustics for more information. |
CausticTiling | See Water Volume Caustics for more information. |
CausticHeight | See Water Volume Caustics for more information. |
Advanced | |
FixedVolume | Will trace a ray down to find a 'vessel' entity and 'spill' the requested amount of water into it. For static entities it'll try to boolean-merge any surrounding static that intersect with the first vessel (use "No Dynamic Water" flag on brushes that don't need that) |
VolumeAccuracy | Water level will be calculated until the resulting volume is within this (relative) difference from the target volume (if it's set to 0 it'll run up to a hardcoded iteration limit) |
ExtrudeBorder | Will extrude the border by this distance. It's particularly useful if wave sim in on, since waves can raise the surface and thus reveal open edges if they lie exactly on the vessel geometry |
ConvexBorder | Will take convex hull of the border. Mainly useful if the border would otherwise have multiple contours, which areas don't support |
ObjectSizeLimit | Only object having volume larger than this will take part in water displacement (set in fractions of FixedVolume) |
SimAreaGrowth | If changing water level is expected to make the area expand, the wave sim grid should take it into account from the beginning. This sets the projected growth in fractions of the original size. If wave sim is not used this has no effect |
WaveSimCell | Size of cell for wave simulation (0 means no waves). Can be enabled regardless of whether FixedVolume is used or not |
WaveSpeed | Sets how "fast" the water looks |
WaveDamping | Standard damping |
WaveTimestep | Might need to be decreased to maintain stability if more aggressive values for speed are used |
SimAreaGrowth | If changing water level is expected to make the area expand, the wave sim grid should take it into account from the beginning. This sets the projected growth in fractions of the original size. If wave sim is not used this has no effect |
MinWaveVel | Sleep threshold for the simulation |
HeightLimit | Sets a hard limit on wave height (in WaveSimCell units) |
DepthCells | Sets how deep the moving layer of water is (in WaveSimCell units). Larger values make waves more 'dramatic' |
Resistance | Sets how strongly moving objects transfer velocity to the water |
Water volumes also have special interpretation of helper types (use a_[suffix] to show helpers for areas only). a_g will draw the outline and the tessellated surface, a_gj will draw the wave sim as a checkerboard-like heightfield, a_l will draw the vessel geometry (a union of all overlapping potential vessels) |
Caustics are a great way to give your water volumes a much bigger visual presence and involve them more into the scenes you create. For more info see Water Volume Caustics.
Caustics Off | Caustics On |
---|
Fog Shadows gives real visual depth to your water volumes, also making optional use of the global VolFogShadows function available in the Environment Panel.
Due to a technical limitation, using VolFogShadows will limit the opacity function of the FogShadowing param to be either off or full.
VolFogShadows Disabled | VolFogShadows Enabled |
---|
FogShadowing 0 | FogShadowing 0.25 | FogShadowing 0.5 |
---|
The Depth parameter defines both visual and physical depth of the water volume. Things such as the underwater distortion effect is based off the Depth setting.
Depth 0 | Depth 10 |
---|
With this disabled, the fog settings from the water volume will display infinitely on the Z axis (downwards).
A usage example would be if you had a room that was accessible underneath a watervolume, then you would probably activate this setting to prevent the fog from being seen inside the room.
Depth 0 / Cap Fog False | Depth 0 / Cap Fog True |
---|
Although the Height parameter is not used for Watervolumes, it can be useful for visualizing the edges of the volume which would typically be hidden underground.
Although Speed isn't supported by Watervolumes (because there's no easy way to define direction on an arbitrarily user-designed shape with infinite results) there's an easy way you can 'physicalize' your water volumes.
Rivers support the Speed parameter and can be placed without any visual representation by simply not applying a material to the object. Layering Rivers on top of your Water volumes (remember to match depths!)
When placing Rivers for this use, make sure to keep them straight (the 'Speed' is applied only for the initial vector and cornering is not supported) and overlap where you want them to change course so they don't get stuck.
In the above example, we have three main Rivers (with outside supports to simulate from waterfall) atop the main Watervolume, carrying several RigidBodyEx entities along for a ride.