Diana Phillips Mahoney
Large-scale, high-resolution displays are the latest rage in computer graphics, promising to change the way people and groups work with computer images and each other. Interactive walls and immersive rooms offer new approaches to data visualization and collaboration and provide a higher-resolution medium for exploring many levels of detail. Preparing visual data for these environments, however, invites new challenges related to the size, resolution, brightness, contrast, and orientation of the display. Additionally, because traditional user-interface metaphors such as the window/keyboard/mouse standard are ill-suited to large-scale displays, they must be replaced with more intuitive tools geared specifically to the environments.
Such is the goal of researchers in the Computer Science Depart ment at Stanford University who have developed a "virtual" graphics system to meet the unique needs of large displays. The scalable system, which supports multiple, simultaneous rendering streams from local and remote sites, makes the number of computers, graphics subsystems, and projectors used to create the display environment irrelevant to the application developer. It also uses a unique transparent layering system rather than windows to manage the screen.
By using transparent layers rather than conventional windows, Stanford's distributed graphics system provides developers with greater flexibility in designing intuitive interfaces for large-scale display media. An example, below, is the use of overlay option boxes that appear on the display without obscuring the underlying data.
The display project actually came about as a way to support another research group at Stanford focusing on human-computer interaction, including the design of appropriate interaction techniques for large, high-resolution displays. To facilitate this investigation, Greg Humphreys and his colleagues in the Computer Science Department designed a tiled, back-projected display called the "Interactive Mural," which uses an overlapping array of eight projectors connected to a high-performance graphics system that back-project onto a diffuse screen to form a 6-by-2-foot display area. Each projector has a resolution of 1024-by-768.
|By using transparent layers rather than conventional windows, Stan ford's distributed graphics system provides developers with greater flexibility in designing intuitive interfaces for large-scale display me dia. An example, below, is the use of overlay |
The researchers developed the virtual graphics system to drive the display. Through the system, a single large display is created by overlapping multiple projectors and feathering along the seams of the resulting projection areas. The system, which may be partitioned across multiple machines, "virtualizes" the distributed graphics resources, including variable numbers of computers, graphics cards, and video output ports. This is important, says Humphreys, be cause it enables applications to run without modification regardless of the actual physical configuration of the devices. "Right now, we have eight PCs, each with a projector connected to it. They're entirely separate. Yet the display, to the application programmer, appears as one logical device." This means that a programmer writing code for this system does not need to consider the display configuration to program an application. "The programmer doesn't have to know whether the display is running on a network of workstations or on a supercomputer or on three supercomputers. He or she just knows the display is this many pixels wide by this many pixels tall."
The programmer also doesn't need to worry about the area on the display where the projector output overlaps. This can be a nagging problem with traditional projection-based display systems, because the overlap areas are twice as bright as the normal projection area. "Some commercial vendors have solved this problem by creating special hardware that makes the [projection] signal dimmer near the edge. With our graphics system, we don't need custom hardware. We're able to achieve the same result in software, and the programmer doesn't have to do anything," says Humphreys.
|Researchers at remote sites can share complex data, such as these scientific visualizations, without concern for the underlying display configuration. The virtual graphics system supports multiple, simultaneous rendering streams from local and remote site|
A particularly significant characteristic of the virtual graphics system is its reliance on transparent layers rather than conventional windows for the display interface. The layers behave like windows in that they are rectangular areas stacked back to front, which the application developer manages and draws into. Unlike opaque windows, which obscure the contents of underlying windows, the layers are completely transparent, except areas that are drawn on, which are partially transparent. "This provides a lot of flexibility," says Humphreys. " I could have two applications running at the same time, each of which has one layer. You can actually have the two applications render graphics and have the results blended together to form one final image, which is difficult to do in today's graphics systems." This capability enables such effects as overlay menus, whereby a popup menu appears over the data being manipulated. "Because it is partially transparent, it wouldn't obscure the data being visualized. But it would give the user a way to make choices without a fixed interface, like menus dropping down from the top, which might not be appropriate for the kind of interaction the application calls for.
Among the applications Humphreys sees this display system being most useful for is the visualization of complex datasets. "Often, with the large datasets people want to look at, there's a macro/micro thing going on. They might want to step back and get an overview of the big picture, then physically walk closer to see the detail. They need the high resolution and display real estate to be able to do this," he says.
An additional objective of the system, says Humphreys, is the ability to provide such flexibility in support of multiple remote applications. "We went to great pains to make sure applications could be run over networks to support activities like remote collaboration, where you display a dataset remotely on a large display like this and multiple people interact with the data simultaneously."
To further investigate the collaborative potential of the display technology, Humphreys is currently working with researchers in Stanford's Civil Engineering department. "We're looking at combining display technologies to help construction engineers and contractors plan and manage large-scale building projects."
To this end, the group has built a room full of various types of displays, including a tabletop display and tiled front and side displays. "You could imagine having a 3D model of a building on the table, some sort of timeline on the front display, and charts and CAD drawings on the side wall, then giving the various people involved in the project tools to manipulate these things. When they make changes to one piece of data, everything else would change in concert." Some implementation of the distributed graphics system would be well suited to such an environment, says Humphreys, "so we're now looking at providing software for application developers to write effective programs for environments that have multiple displays and multiple input devices."
The biggest obstacle Humphreys and his team must overcome in further developing the display technology is the breakdown of traditional interaction metaphors when moving data from a workstation monitor to the large-scale media. "We know that the keyboard and mouse are not what we want. Our challenge is to figure out how to interact with these things and how to write software that lets application programmers take advantage of different interaction methods. Determining the right interaction meta phor is the only way we're going to be able to get compelling applications running on displays like this."
Diana Phillips Mahoney is chief technology editor of Computer Graphics World.