## The Underwater Ocean Environment
### Simulating Plankton
The distribution of the particles can be seen in the 2D projection and in the 3D projection given in Figure 20. In those images, we can see that the initial velocity setup gives smooth transition in terms of particle density as we go deeper. This behaviour imitates the natural preference of plankton to the light coming from the surface. In order to control the number of particles, we choose a uniformly distributed lifetime between 80 to 500 s. The trade-off, in this case, is that since the particles are constantly emitted, we need to control the number of live particles and this is done by the LifeTime parameter. This is obviously different behaviour than a real plankton particle which usually lives much longer than 80 s. However, due to dynamically changing lighting coming from the refraction on the surface of the water, we do occasionally see some sparkling effect which can be simulated with the addition and removal of particles as described above. In terms of visibility, plankton particles constantly move, but in a dynamic scene where the camera is also moving that should not be too significant. In contrast, although having shorter lifetime values will let the particle system stabilize faster it will come with the cost of increasing sparkling effect due to shorter lifetime of the particles and will require more particles to be emitted to preserve the same amount of living particles as with a longer lifetime value. Figure 20: View of the particle emitter setup as a flat rectangular box with initial velocities pointing to the negative Z axis direction. (**a**) shows the particles in the X-Y plane. (**b**) shows a 3D view of the box emitter setup. The shape and the texture of the plankton can be complex depending on the type of the organism but since they are still relatively small we use an ellipsoid approximation of the shape. The ellipsoid shape gives us some asymmetry around the middle axes aligned to the world frame which will create an asymmetric backscatter effect. To generate the ellipsoid shape we generated a new material (Figure 21) based on a \"RadialGriadientExponential\" component which basically means that it exponentially reduces the intensity based on the distance from the centre. The result is then multiplied by the particular colour and fed as a base colour and opacity. The partial opacity makes rendering of the particle to be even more realistic by simulating the transparency of the plankton. In the particle engine, we choose to generate the particles with different random scaling around the X axis. The random scaling together with random initial orientation will create randomly oriented floating ellipsoids. Figure 22 shows the final zooplankton simulation result. Figure 21: A blueprint of the zooplankton material in the Unreal Engine’s material editor. The left pane shows the final result and on the right the generator blueprint of the plankton material. The RadialGradientExponential component is multiplied by the particle colour (input to the blueprint) and fed as a basic colour an opacity. Figure 22: Simulated Zooplankton of different sizes and shape. The zooplankton have the appearance of snowflakes with some backscatter illumination. The scene uses a strobe light and sunlight. Finally, to simulate motion blur in computer graphics, usually, multiple images or pixels (or subframes) are taken and averaged [44]. The blurring can affect the whole image in case of camera movement or just moving objects inside the field of view if the camera is stable. In the unreal engine, we can control the intensity of the blurring by adjusting the motion blur amount parameter. In Figure 23, we can see a real image that we took underwater as an example of motion blur of plankton and a simulated image done by rotating the simulated camera around the Z axis.