A Multi-user, Multi-modal, Distributed Interaction Framework
Tools: C++, Python, OpenGL, wxWidgets, networking
At the Electronic Visualization Laboratory we developed SAGE, a framework for displaying multiple applications across large, high-resolution displays and any number of computers over the network. Because of this innately distributed nature and the unique requirements of wall displays, there was a need for new interaction paradigms as well as the UI and tools to enable such interaction.
I wanted to allow multiple people to interact with a shared digital medium like a wall display in a way they would with a giant whiteboard. However, a wall display, unlike a whiteboard, gives you all the benefits of a digital medium, like moving things easily, copying, sharing, deleting, saving, organizing different types of content (videos, images, text, websites etc). Since nothing like this existed that will span multiple computers, I designed and developed a distributed UI framework appropriate for tiled display walls that:
- is truly multi-user… multiple people can interact simultaneously
- is multi-modal… supports a variety of interaction devices and new ones can be added easily
- is scalable… adapts in usability and visibility to any display size (desktops to 300Mpixel walls)
- provides tools for content organization
Constantly in Use
These tools were constantly in use in our lab for classes, meetings or work. This allowed me to iteratively add improvements based on my observations of real-world use. Furthermore, they were used by 100+ institutions all over the world.