"Developed applications for practicing surgery and CPR"
Tech
- Unity/C#
- Oculus Quest (VR)
- Final IK
Roles
- Lead technical design
- Scripting/Systems
- Sound design
NPC helpers during CPR training
I created shared behaviours for a group of NPCs that change depending on player interaction and what state other NPCs are in. I implemented animations, audio and behaviours using C# and Unity tools.
The player was tasked with telling NPCs what to do while the player starts CPR on the patient.
In the first version the delegation to NPCs was automatically sequential so every time the player interacted with an NPC it was given a unique command. This would later be opened up by allowing for voice commands by the player.
Real and Virtual world connection
All certified CPR training needs to be done on a dummy as the trainee needs to experience how much force they actually need to apply in order to properly perform CPR.
We solved this by putting the dummy and a controller in a shared fixed position IRL and configured the CG-dummy to have the same position as the irl-dummy relative to the controller location.
This also helped immerse the player into the experience where we used audio and in game events to try and stress the player, coming closer to a real life CPR scenario.
Handtracking Interactions
*handtracking lets the user interact with their actual hands instead of controllers
I iterated on several versions of this new kind of input system and they can be separated into two categories.
Gesture based
I developed a tool for recording hand gestures and a system that recognizes the gestures and acts by invoking an event. It was very interesting to find and figure out the most common ways people grab or point toward something while also covering as many edge cases as possible.
Physics based
Using Unitys physics components I configured hands that took the positional data from the handtracking input source and added it to the physics simulation. This enabled accurate collision behaviour and gave the hands a feeling of weight but was not a good way to perform delicate interactions.