An application was developed in Unreal Engine 5.4 together with the MetaXR plugin, to allow for easy switching between Motion Controllers and Hand Tracking. Test scenarios were also developed in a modular fashion, similar to the way Lyra Game Sample implements the inventory fragments for items.
The application also made use of the SerialCom plugin for Unreal Engine, which allowed me to facilitate the communication between the application and custom haptic device.
After reading previous papers, one thing stood out to me. There were mentions of potentially adding haptics to hand tracking to improve its usability. So I set off to try and find out if that will improve it. This led to the development of the custom haptic device in the form of a Glove. This device was developed with the help of Gerald High, Abertay Univerisity's Engineering Services Technician.
Now that I had the haptic glove and the application that has code that send data to it, I needed to write the software that would run on the haptic device. This led to me to learning how to use Arduino IDE and write efficient code that can update multiple motors for a given duration, while also updating the speed at which they vibrate. I got to learn about unions in C++, as well why proper byte alignment is required.
During the development of this project I faced many challenges, but one of the most important ones in my opinion was developing the hardware device, as it was my first time even attempting to do something like that. I had previously tinkered with building computers, but it is not the same. I had to learn a lot about the different requirements, options, specifications and devices that exists. I got to learn how to properly solder and how to approach creating a hardware device.