Maxwell Sea



Maxwell Sea creates a simulation of the ocean surface based on the Ocean Statistical Spectrum solver (in RealFlow™), that produces a realistic waves simulation from a simple plane. The Ocean Statistical Spectrum solver takes various environmental parameters into account, such as water depth or the surface’s dimensions, to produce a convincing ocean surface with natural wave behavior and a customizable amount of “choppiness”, responsible for the degree of sharpness of the waves. Waves can range from slightly round to distinctly sharp. And as the meshing is only done at render time, it takes up almost no extra space in the scene files sent to render and stored to disk.

It is important to note that Maxwell Sea provides a dynamic (animatable) simulation of a moving sea, but it doesn't calculate the physical interaction of water and solid objects. 

 





Parameters



The Maxwell Sea parameters panel



Geometry

Quality 

Mesh density of the generated plane. The higher this value, the finer the definition but also the higher the Ram consumption. This is the most critical parameter in terms of generation time and Ram consumption. You can choose from 4x4 up to 8192x8192. With each level time and Ram will drastically increase but also creates much finer structures.

Reference Time 

As a dynamic simulation, the sea varies on time based on this parameter. 

Vertical Scale 

A multiplier of the maximum height of the wave. You normally have to adjust this parameter when you are changing the surface’s dimension value - if the dimension of the sea surface is bigger, the vertical scale will be more sensitive, causing larger displacements in the wave surface (you usually will have to lower Vertical Scale when you rise Dimension). Vertical Scale has a strong influence on the credibility of the entire simulation and can also be used for the creation of heavy storms with high waves. For a more realistic look avoid very high values. 



Dimension 

Size in meters of the piece of sea represented. Dimension is closely linked to Vertical Scale (the vertical height of the maximum wave) and Quality parameter - if the Dimension is high the patch of the sea will represent a bigger sized mass of water, so the waves will be higher; Vertical Scale allows to tune up how much the waves displace vertically. If the dimension is higher, but the vertical scale remains the same then the overall wave surface will be more displaced. If you want to represent a big amount of water you should scale the geometry accordingly, rise the Dimension and lower the Vertical Scale depending on how high you want the waves to be.

Dimension 100m
Dimension 150m
Dimension 250m
Different values for Dimension. Click on any image to enlarge

 

Depth 

Depth of the sea bed. This parameter affects the behavior of the waves and their dispersion. Its effect is only noticed if the length of the wave is close to the value of the depth. In these cases this parameter has a decelerating effect on the dispersion of the wave. In most cases you will not see any effects or changes, because the depth used is normally rather high compared to the length of the waves.

Seed 

This number is used to randomly generate the waves simulation. With different seed values it is possible to place the waves at different initial locations. Seed accepts any positive or negative integer value.

Choppyness and Choppy Factor 

One of the main features of statistical waves is the possibility of creating sharp crests for the waves. When enabled, this feature directly influences the sharpness of the waves. Choppy Factor values closer to 0 will produce “rounder” waves, while higher values produces the characteristic sharp crests. Be careful with high values, because the horizontal displacement of the waves can be so strong that inner polygons may turn to the outside, producing intersections and an unwanted look. Being related to the sea size, Choppy Factor strongly depends on Dimension and Vertical Scale. Usually, a value larger than 1 is not necessary.

Choppyness disabled
Choppyness 0.5
Choppyness 1.5
Different values for Choppyness. Click on any image to enlarge

 

Wind

  • Wind Speed: The sea surface is constantly modified by the wind force. This parameter introduces a wind force that directly influences the waves, in meters per second. 

Wind Speed 3m/s
Wind Speed 30m/s
Wind Speed 300m/s
Different values for Wind Speed. Click on any image to enlarge

 

  • Wind Direction: Orientation of the wind force and thus the direction of the waves. 

Wind Direction 0º
Wind Direction 45º
Wind Direction 90º
Different values for Wind Direction. Click on any image to enlarge

 

  • Weight Against Wind: A weighting parameter for waves which traveling direction has some component in the opposite direction of the wind. If Weight Against Wind is set to 0.0 then all waves against the wind are eliminated. If it is set to 1.0 then its normal strength is used. Values in between determine the amount of waves to be eliminated.

Weight Against Wind 0.05
Weight Against Wind 0.5
Weight Against Wind 1
Different values for Weight Against Wind. Click on any image to enlarge

 

  • Wind Alignment: With small values only waves which are totally perpendicular to the waves' direction are removed. When “Wind alignment” is increased, the solver will remove more and more waves; waves which are less perpendicular. If the value is very high, only those waves which are absolutely parallel to the wind direction will remain 

Wind Alignment 0.2
Wind Alignment 2
Wind Alignment 20
Different values for Wind Alignment. Click on any image to enlarge

 

  • Minimum Wave Length: This parameter controls the amount of detail on the surface. Higher values flatten the surface and create fewer ripples. Keep in mind that this parameter is connected to Dimension. When you enter lower values for Dimension, you should also lower Minimum Wave Length, to guarantee that the Maxwell Wave object still shows enough structures.

Minimum Wave Length 0.1m
Minimum Wave Length 1m
Minimum Wave Length 10m
Different values for Minimum Wave Length. Click on any image to enlarge



Understanding Resolution and Dimension

Dimension of the sea piece and Resolution of the displacement map are closely related and you need to keep them in mind to adjust the level of detail in your sea.

In general terms, you can estimate the size of the minimum feature (thus the amount of detail) by using this expression:

Features size [ m ] = Dimension [ m ] / Resolution

The smaller this resulting value (the smaller the wave features), the more detail you were obtaining, but like in any displacement mapping the more effort needed in the map generation and in the surface displacement.

An example: Let’s assume you have created an ocean surface of 400 m side and you are using a map Resolution of 1024 . The smallest feature (the smaller detail) you can observe on this ocean will have a size of 0.39 m according to the formula above:

400 m (Dimension) / 1024 (Resolution) = 0.39 m

Depending on the camera framing, if you need even more detail and smaller structures, you can either raise Resolution or lower Dimension. With higher Resolution, Maxwell will take more time and Ram generate the displacement map and displace the surface.



Tutorial by MaxwellZone

Here is a video tutorial that describes how to make smaller, detailed waves with the Maxwell Sea extension.