⟵ back to


Lab 2





I created a circular generative maze made of concentric rings. Each ring has one opening in a random location to make each generated maze unique.

I first tinkered with the Hello Wall example to understand the code, particularly the use of force feedback. My approach to designing the maze was to use polar coordinates instead of Cartesian. I found this more useful because the Haply's task space is closer to a radial shape. I could design with the angle and distance from the origin which I found more reflective of the mechanics of the device.

Another key aspect to my approach was procedurally generating each ring with its force feedback and appearance contained in a Ring instance. A challenge I encountered was the example code's use of meters instead of pixels for units, which I am more used to.

Link to the code (modified from the original Hello Wall example).

When moving outwards through the maze, the rings block the user from moving forward except at their opening. To add more of a challenge, I had the Haply pull the user to back a ring if they got too close to an adjacent inner ring barrier (pulled inwards, back to start).
Stills of different generative mazes.

© Derrek Chow 2022