## The Underwater Ocean Environment
### Simulating Plankton  
The movement of plankton is dependent on ocean currents and currents created by moving object like fish movement or even robotic arm movement can shift the water from side to side which in turn will create a visible movement of plankton. We ignore the hydrodynamics affects that plankton might have on an ROV, we assume that the water are relatively clear and the main mass is pure water. The visual effects of the plankton on the other hand is significant as can be seen in the real image Figure 14.  
Figure 18: Dirt mask added to the simulation. This dirt mask was added to simulate dirt accumulated on the camera port. Phytoplankton are microscopic photosynthesisising organisms. Therefore they are not visible directly to the naked eye. Due to the chlorophyll content in their cells, the green pigment is sometimes noticeable. We can find them in the upper layer of a large body of water exposed to sunlight. Interestingly enough, their optical properties can be simulated using Exponential Height Fog [41]. Exponential Height Fog creates more fog density in low places of a scene and less density in other places. Exponential Height Fog provides two fog colours which are used to differentiate upper and lower layers of the atmosphere. We can use this effect to our advantage by choosing a green colour for the surface level of the sea and the blue colour to deeper layers. The transition between the colours is smooth. Figure 19 shows the final result of simulating only Phytoplankton using the Fog component in Unreal Engine. We present two images for comparison: one is a simulated output and the other is a real image taken underwater. To simulate zooplankton, which are larger and more visible particles, we used the Unreal Engine 4 particle engine [43]. In general, particle systems or engines consist of several important parts. First is the emitter which is responsible for releasing the particles. We can also control the shape of the emitter  
Figure 19: Simulating phytoplankton mist. The **upper** image is a real image taken underwater in Florida’s east side [42]. The **bottom** image was simulated using Unreal Engine’s “Exponential Height Fog” component. In both images, we can see the distance attenuation effect of the fog where distant objects are less visible. Both images used the sunlight as the main source of light. and the direction the particles are distributed. Secondly, particle dynamics specify the way the particles move through space. The particles may be randomly distributed, move along a curvilinear path, move under the influence of forces or combinations of the above. Thirdly, physical characteristics of the particles define the shapes of the particles which can be changed over time, the texture used to describe the particles, their static mesh and so on. In addition, we can also control the time of life of the particles which can be used for example to keep the system stable around a specific amount of particles. To simulate the plankton's dynamic behaviour, we chose a flat box shape emitter which will be located close to the surface of the water. The emitter dimension was chosen to be 100 \(\times\) 100 \(\times\) 1 m. The XY dimension represents our region of interest due to obvious reasons it cannot be set to infinity. The Z dimension represents the depth and the extent where there is enough sunlight to enable photosynthesis. The initial velocity is chosen to be uniformly distributed where \(V_{x}\in U(-1,1),V_{y}\in U(-1,1),V_{z}\in U(1,-10)\). Under these conditions, the plankton will move randomly around the surface of the water with some preference to move to deeper layers. In that case, if the camera is not pointed directly to the emitter, the particles will slowly move in to the field of view of the camera. We assume that there are only small microcurrents that affect the movement of the plankton. This is obviously not always the case but we can later add more emitters that can simulate different underwater currents.