Introduction
While passive weighted props are effective at increasing performance
and immersion, their main issue lies in their lack of generality.
A game with multiple objects requires multiple passive
props and would require the user to constantly break immersion in order to swap props. However,
certain props are able to change their weight and feel
using internal motors. These provide what is
known as dynamic passive haptic feedback.
Swifty is a wireless dynamic haptic prop that
uses a stepper motor to raise and lower a
weighted ring. This ring is also attached to a
surrounding bellows, allowing Swifty to change both
its centre of mass and air resistance. Swifty provides an
implementation that not only more closely matches the actual
haptic properties of a held object but also increases the
differences in haptic feedback between items in the same
virtual environment
Promo Video
Design & Construction
Swifty consists of a clear plexiglass pipe capped on either end with 3D printed parts, leading to a total length of 61cm. Haptic props cannot safely be much longer than that since swinging a long object while wearing a headset is a recipe for disaster. An internal belt runs the length of the pipe and is fixed to a bearing at the top and a NEMA-14 style stepper motor at the bottom. A stepper motor allows a high level of control in the movement of the weight and while powered has a holding torque that keeps the weight in place when the prop is swung.
A small groove runs down the majority of the pipe which allows a bolt to connect the belt system to an outer ring. This ring contains 5 steel ball bearings. These bearings not only act as the weight but also reduce the friction between the ring and the pipe. The outer ring has four arms that connect to a thin outermost ring that serves as the mounting point for the prop's bellows system. The bellows is made from flexible aluminium ducting that is able to expand and shrink, increasing and decreasing the total air resistance of the prop. Swifty's cylindrical bellows improves on previous dynamic props that used flat surfaces to increase air resistance, as these types of surfaces only work if the prop is swung in the correct orientation.
Swifty is controlled by a NodeMCU, which connects to a WiFi network and establishes a UDP connection with the Unity virtual environment. The NodeMCU sends direction and step data to a A4988 stepper motor driver which controls the movement of the NEMA-14. The entire prop is powered by an attached powerbank which allows Swifty to be completely wireless. The tracking of the prop is done by an attached HTC Vive Tracker. The tracker and powerbank and be easily unscrewed from the prop and charged when needed.
Virtual Environment
In order to test the effectiveness of Swifty, a virtual food slicing game was created. This game can be played with a standard VR controller or Swifty and places the user in the middle of a medieval village. The user starts off with a small one-handed short sword but can switch to a large double-handed sword by reaching over their shoulder, which mimics drawing a sword from a back sheath. Swifty expands/shrinks based on which sword has just been drawn.
Once the game starts, various food items are launched from two barrels and arc towards the player at a random height and speed. The user needs to slice the incoming food using their sword. If a food/sword collision is detected the food item is sliced in two along the cut line accompanied by a particle and sound effect.
Evaulation & Testing
Due to the ongoing COVID-19 pandemic large scale user testing had to be abandoned in favour of a small scale heuristic evaluation. This paired with some physical measures of Swifty’s performance provides an idea of the effectiveness of the prop.
Evaluators reported that Swifty created a highly immersive virtual environment, and it felt as if they were wielding an object of similar size to what was displayed virtually. There was noticeable difference between the long and short sword, and wielding them felt like different experiences. The biggest problem was the holding torque of the motor. If swung too hard the weighted ring would move up the shaft. This created an audible sound which was distracting and meant the prop could end up fully extended at the wrong time.
As seen in the table, taken from the final report, Swifty performs very similarly to exisiting dynamic passive haptic feedback props. These props all conducted user experiments which showed that they were effective at increasing immerision and presence. The results of the evaluation show that Swifty provided a realistic level of haptic feedback, this matches the expected results when comparing Swifty to existing props.
Limitations & Future Work
The experience of using Swifty was negatively impacted by the limited holding torque of the stepper motor. Not being able to freely swing the prop and the negative impact of a sudden unexpected weight shift meant that a user had to be constantly aware of how forcefully they were moving the prop. This could be fixed by upgrading to stronger stepper motor or the use of a gear system that is non-backdrivable that can only be operated by the stepper, as seen in other exisiting props.
While we were able to get a good idea of the effectiveness of Swifty this can be further investigated with a larger user experiment. Once it becomes safe to do so, an experiment with an improved version of Swifty with 30-40 participants should further show the viability of the prop
Conclusion
We presented Swifty a Dynamic Passive Haptic Feedback prop that implements the proven systems of weight and air resistance adjustment into a new design that combines the benefits of previous examples into a single wireless device. Despite the inability to do a large user experiment due to COVID-19, by comparing it to existing props as well as a heuristic evaluation we were able to show that Swifty is more immersive and enjoyable than a standard VR controller.