Ocean system
-
We've recently completed ocean system.
Unlike most other open-world games, where ocean is quite simple, we had to go one step further.
Usually, ocean is a big plane that clips through the world. Any underwater effects or tests if a player should be swimming are based simply on altitude: above water surface you don't swim, below water surface you swim.
In our world, this implementation would make it impossible for a player to carve tunnels below ocean surface, so we voxelized ocean.
Ocean hugs around the shores, and fills all cavities it finds, however, if a player is in a dry tunnel, this area does not get submerged.