DFDS
Role: Programming, 3D modelling, Animation, Interaction Design and Optimization
Summary
Mooring on a ship is a dangerous procedure that require the crew to be aware of their surroundings and often results in deadly accidents. In this project we were asked to create a safety simulation for Maersk to address the issues onboard their ships, specifically the lack of hand signalling as well as not being able to learn from mistakes in real life. The training simulation was developed for the Oculus Quest with motion controllers. Crew members get to experience a mooring scenario in a safe environment that allows for mistakes. It was important that we replicated the procedures onboard the ship in a believable way i.e. using physics to simulate the ropes and replicating the physical interfaces that the crew will have to operate during mooring. The crew members will communicate with NPC's using a walkie-talkie while also receiving instructions from the captain.
My Contributions
- Lead programmer / the only programmer
- Tool development to increase productivity such as a project structure generator that uses recursion to search through all folders and suggest common folders in the correct locations (now used across the entire team).
- Proposed and created a shared tools repository in the company (now used in all projects).
- Implementation of input system for Oculus GO controllers
- Priority cue selection system for easier selection of small targets
- Procedural animation system for callouts (saved a lot of time)
- Optimization of audio files to decrease load time from around a minute down to a few seconds.
- Optimization of 3D models for Oculus GO.
- 3D modelling of the Oculus GO controller since the default one has weird shading artifacts.
- 2D graphics design for the virtual arrow buttons on the controller.
- Loading screen + radial shader for animated load icon
- Implementation of 360 degree video player
- Animations for the controller tutorials