24
The Studierstube Augmented Reality Project Dieter Schmalstieg [email protected] Vienna University of Technology, Austria Anton Fuhrmann VRVis Research Center for Virtual Reality and Visualization, Vienna, Austria * Gerd Hesina Vienna University of Technology, Austria Zsolt Szalavári Vienna University of Technology, Austria L. Miguel Encarnação Fraunhofer CRCG, Inc., Providence, Rhode Island, U.S. Michael Gervautz Imagination GmbH, Vienna, Austria * Werner Purgathofer Vienna University of Technology, Austria * Work done while at Vienna University of Technology Abstract This paper describes Studierstube, an augmented reality system developed over the past four years at Vienna University of Technology, Austria, in extensive collaboration with Fraunhofer CRCG, Inc. in Providence, Rhode Island, U.S. Our starting point for developing the Studierstube system was the belief that augmented reality, the less obtrusive cousin of virtual reality, has a better chance of becoming a viable user interface for applications requiring manipulation of complex three- dimensional information as a daily routine. In essence, we are searching for a 3D user interface metaphor as powerful as the desktop metaphor for 2D. At the heart of the Studierstube system, collaborative augmented reality is used to embed computer-generated images into the real work environment. In the first part of this paper, we review the user interface of the initial Studierstube system, in particular the implementation of collaborative augmented reality, and the Personal Interaction Panel, a two-handed interface for interaction with the system. In the second part, an extended Studierstube system based on a heterogeneous distributed architecture is presented. This system allows the user to combine multiple approaches--augmented reality, projection displays, ubiquitous computing--to the interface as needed. The environment is controlled by the Personal Interaction Panel, a two-handed pen-and-pad interface, which has versatile uses for interacting with the virtual environment. Studierstube also borrows elements from the desktop, such as multi-tasking and multi-windowing. The resulting software architecture resembles in some ways what could be called an “augmented reality operating system.” The presentation is complemented by selected application examples.

The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

The StudierstubeAugmented Reality Project

Dieter [email protected] University ofTechnology, Austria

Anton FuhrmannVRVis Research Center forVirtual Reality and Visualization,Vienna, Austria*

Gerd HesinaVienna University ofTechnology, Austria

Zsolt SzalaváriVienna University ofTechnology, Austria

L. Miguel EncarnaçãoFraunhofer CRCG, Inc.,Providence, Rhode Island, U.S.

Michael GervautzImagination GmbH, Vienna,Austria*

Werner PurgathoferVienna University ofTechnology, Austria

* Work done while at Vienna University ofTechnology

Abstract

This paper describes Studierstube, an augmented realitysystem developed over the past four years at ViennaUniversity of Technology, Austria, in extensivecollaboration with Fraunhofer CRCG, Inc. in Providence,Rhode Island, U.S. Our starting point for developing theStudierstube system was the belief that augmentedreality, the less obtrusive cousin of virtual reality, has abetter chance of becoming a viable user interface forapplications requiring manipulation of complex three-dimensional information as a daily routine. In essence, weare searching for a 3D user interface metaphor aspowerful as the desktop metaphor for 2D. At the heart ofthe Studierstube system, collaborative augmented realityis used to embed computer-generated images into thereal work environment. In the first part of this paper, wereview the user interface of the initial Studierstubesystem, in particular the implementation of collaborativeaugmented reality, and the Personal Interaction Panel, atwo-handed interface for interaction with the system. Inthe second part, an extended Studierstube system basedon a heterogeneous distributed architecture is presented.This system allows the user to combine multipleapproaches--augmented reality, projection displays,ubiquitous computing--to the interface as needed. Theenvironment is controlled by the Personal InteractionPanel, a two-handed pen-and-pad interface, which hasversatile uses for interacting with the virtual environment.Studierstube also borrows elements from the desktop,such as multi-tasking and multi-windowing. The resultingsoftware architecture resembles in some ways what couldbe called an “augmented reality operating system.” Thepresentation is complemented by selected applicationexamples.

Page 2: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

1. IntroductionStudierstube is the German term for the

“study room” where Goethe’s famous character,Faust, tries to acquire knowledge andenlightenment (Goethe, 1808). We chose thisterm as the working title for our efforts todevelop 3D user interfaces for future workenvironments. Most virtual reality systems oftoday are tailored to the needs of a single, veryspecific application that is highly specialized forthat purpose. In contrast, the Studierstube projecttries to address the question of how to use three-dimensional interactive media in a general workenvironment, where a variety of tasks are carriedout simultaneously. In essence, we are searchingfor a 3D user interface metaphor as powerful asthe desktop metaphor for 2D.

Our starting point for developingStudierstube was the belief that augmented reality(AR), the less obtrusive cousin of virtual reality(VR), has a better chance than VR of becoming aviable user interface for applications requiringinformation manipulation as a daily routine.Today’s information workers are required tocarry out a large variety of tasks, butcommunication between human co-workers hasan equally significant role. Consequently,Studierstube tries to support productivity,typically associated with the desktop metaphor,as well as collaboration, typically associated withcomputer supported cooperative workapplications. To fulfill these needs, theframework therefore has taken on many functionsof a conventional operating system in addition tobeing a graphical application.

At the heart of the Studierstube system,collaborative AR is used to embed computer-generated images into the real work environment.AR uses display technologies such as see-throughhead-mounted displays (HMDs) or projectionscreens to combine computer graphics with auser’s view of the real world. By allowing

multiple users to share the same virtualenvironment, computer supported cooperativework in three dimensions is enabled.

This paper gives an overview of the variousavenues of research that were investigated in thecourse of the last four years, and how they relateto each other. The intent of this paper is toprovide a summary of this rather extensiveproject as well as an introduction to the approachof blending augmented reality with elements fromother user interface paradigms to create a newdesign for a convincing 3D work environment.In the first part of this paper, we review the coreuser interface technologies of the initialStudierstube work, in particular theimplementation of collaborative augmentedreality, and the Personal Interaction Panel, a twohanded-interface for interaction with the system.

In the second part, we present an extendedcollaborative 3D interface that unites aspects ofmultiple user interface paradigms: augmentedreality, ubiquitous computing, and the desktopmetaphor. In the third part, we illustrate our workby reviewing some selected experimentalapplications that were built using Studierstube.Finally, we discuss how Studierstube is related toprevious work, and draw conclusions.

2. Interaction in augmented realityThe initial Studierstube system as described

in (Schmalstieg et al., 1996) and (Szalavári et al.,1998a) was among the first collaborativeaugmented reality systems to allow multiple usersto gather in a room and experience a sharedvirtual space that can be populated with three-dimensional data. Head-tracked HMDs alloweach user to choose an individual viewpoint whileretaining full stereoscopic graphics. This isachieved by rendering the same virtual scene forevery user’s viewpoint (or more precisely, forevery user’s eyes), while taking the users’ trackedhead positions into account.

Page 3: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

Collaborators may have different preferencesconcerning the chosen visual representation of thedata, or they may be interested in differentaspects. It is also possible to render customizedviews of the virtual scene for every user thatdiffer in aspects other than the viewpoint (forexample, individual highlighting or annotations).At the same time, co-presence of users in thesame room allows natural interaction (talking,gesturing etc.) during a discussion. Thecombination of real world experience with thevisualization of virtual scenes yields a powerfultool for collaboration (Figure 1).

Figure 1: Two collaborators wearing see-throughdisplays are examining a flow visualization data set

2.1 The Personal Interaction PanelThe Personal Interaction Panel (PIP) is a

two-handed interface used to control Studierstubeapplications (Szalavári & Gervautz, 1997). It iscomposed of two lightweight hand-held props, apen and a panel, both equipped with magnetictrackers. Via the see-through HMD, the props areaugmented with computer generated images, thusinstantly turning them into application-definedinteraction tools similar in spirit to the virtualtricorder of Wloka & Greenfield (1995), only

using two hands rather than one. The pen andpanel are the primary interaction devices.

The props’ familiar shapes, the fact that auser can still see his or her own hands, and thepassive tactile feedback experienced when thepen touches the panel make the device convenientand easy to use. Proprioception (Mine et al.,1997) is readily exploited by the fact that usersquickly learn how to handle the props and canremember their positions and shapes. A furtheradvantage is that users rarely complain aboutfatigue as they can easily lower their arms andlook down on the props.

Figure 2: The Personal Interaction Panel allows two-handed interaction with 2D and 3D widgets in

augmented reality

The asymmetric two-handed interactionexploits Guiard’s observations (1987) thathumans often use the non-dominant hand(holding the panel) to provide a frame ofreference for the fine-grained manipulationscarried out with the dominant hand (holding thepen). Many of the interaction styles we havedesigned take advantage of this fact.

However, the panel not only provides aframe of reference, but also a natural embeddingof 2D in 3D (Figure 2). Many of the artifacts weencounter in real life, such as TV remote controlsor button panels on household items such asmicrowave ovens, are essentially two-

Page 4: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

dimensional. The PIP approach with its tactilefeedback on the panel’s surface resembles thosereal world artifacts better than naïve VRapproaches such as flying menus. Consequently,the PIP provides a way to transpose many usefulwidgets and interaction styles from the desktopmetaphor into augmented reality. Such “2.5D”widgets such as buttons, sliders or dials providethe bread-and-butter of interaction.

Figure 3: A gesture is used to create a torus in CADesk

However, the PIP’s direct and expressiveinteraction language has much more to offer:- Object manipulation: The pen is used as a

six-degree-of-freedom pointer for objectmanipulation in three dimensions. Objects caneither be manipulated directly in the virtualspace, on the panel, or in any combination ofthe two. A user can instantly establish suchcombinations by overlaying the fixed-worldframe of reference with the frame of referencedefined by the panel, for example, bydragging and dropping objects from a paletteto the virtual scene.

- Gestural interaction: Perhaps the mostfundamental function of a pen and panel isgesturing, i.e., writing and drawing. As notedby (Poupyrev et al., 1998), using the panel asa surface for the gestures is an efficient modeof input in virtual environments, and evenmore so in AR where a user can see his or herhands while gesturing. Delimiting the area forgestures on the panel’s surface allowssimultaneous symbolic input and direct objectmanipulation. Figure 3 shows CADesk(Encarnação et al., 1999a), a solid modelingtool that has been enhanced with gesture-

based interaction using the Studierstubeframework (Encarnação et al., 1999b).

Figure 4: The panel is used to position a clipping planethat cuts away a portion from the volumetric scan of a

human skull

Figure 5: The panel is swept through an aggregation ofparticle data. During the sweep, a filter is applied to the

underlying raw data, which produces aural feedbackthat can assist the user in detecting structures in the

data sets that are not visible to the human eye.

- Surface tool: The panel, a two-dimensionalphysical shape that extends in three-dimensional space, can be interpreted as ahand-held plane or planar artifact. It can beused as a screen showing still images,animations, flat user interfaces (compareAngus & Sowizral, 1995), or live imagestaken from the real or virtual environment(like the screen of a digital camcorder). Forexample, in the MediDesk application(Wohlfahrter et al., 2000), the panel can beused to slice a volumetric model to obtain “X-ray plates” (Figure 4). Map-type tools such asworlds-in-miniature (Pausch et al., 1995) canuse the panel as a ground plane. The panel

Page 5: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

can also be used to apply filters to the datasamples penetrated when sweeping the panelthrough a data set (Encarnação et al., 2000).Such filters can produce new visualrepresentations of the underlying data sets orother kinds of feedback, such as sonification(Figure 5).

2.2 Privacy in Augmented RealityThe personal in Personal Interaction Panel

was chosen to emphasize how its use allows usersto leverage the advantages of collaborativeaugmented reality: Holding and manipulating thePIP puts a user in control of the application. Ifonly one PIP is used, contention for control isresolved using social protocols such as passing onthe PIP. In contrast, giving each user a separatePIP allows concurrent work. Although usingmultiple PIPs requires the system software toresolve the resulting consistency issues, users canfreely interact with one or multiple data sets,because every user gets a separate set of controlson his or her PIP. Fuhrmann & Schmalstieg(1999) describe how interface elements can, butneed not be shared by users or applicationinstances.

The concept of personal interaction incollaborative environments is tied to the issue ofprivacy – users do not necessarily desire all theirdata to be public (Butz et al., 1998). Fortunately,a display architecture that supports independentper-user displays such as ours can be configuredto use subjective views (Smith & Mariani, 1997)with per-user variations to a common scenegraph. One user may display additionalinformation that is not visible for the user’scollaborators, for example if the additionalinformation is confusing or distracting for otherusers, or if privacy is desired (considerhighlighting or private annotations). We foundthe PIP to be a natural tool for guarding suchprivate information: For privacy, a user can makeinformation on the panel invisible to others. This

idea was explored in (Szalavári et al., 1998b) forcollaborative games to prevent users fromcheating (Figure 6).

Figure 6: Personal displays secure privacy whenplaying Mahjongg – the left player (top view) cannot seehis opponent’s tile labels and vice versa (bottom view)

2.3 Augmented Reality for the Virtual TableplatformNormally, AR is associated with see-through

or video-based HMDs. Unlike HMDs, largestereo back-projection screens viewed withshutter glasses, such as used in CAVE (Cruz-Neira et al., 1993), wall, or workbench (Krüger etal., 1995) setups, offer significantly betterviewing quality, but cannot produceaugmentation, as opaque physical objects willalways occlude the back projection1. Toovercome this restriction, we developed a setupthat achieves a kind of inverse augmented reality,

1 Note that this discussion does not consider front projection,which is capable of producing so-called spatially augmentedreality, but suffers from a different set of technical complexities.

Page 6: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

or augmented VR, for the Virtual Table (VT), aworkbench-like device, through the use oftransparent pen and panel props made fromPlexiglas (Schmalstieg et al., 1999).

Figure 7: The Personal Interaction Panel combinestactile feedback from physical props with overlaidgraphics to form a two-handed general-purpose

interaction tool for the Virtual Table.

Using the information from the trackersmounted to shutter glasses and props, theworkstation computes stereoscopic off-axisprojection images that are perspectively correctfor the user’s head position. This property isessential for the use of AR as well as augmentedVR, since the physical props and their virtualcounterparts have to appear aligned in 3D (Figure7). Additional users with shutter glasses can sharethe view with the leading user, but theyexperience some level of perspective distortion.Also the virtual panel will not coincide with itsphysical counterpart.

The material for the pen and pad wasselected for minimal reflectivity, so that withdimmed lights – the usual setup for working withthe VT – the props become almost invisible.While they retain their tactile property, in theuser’s perception they are replaced by thegraphics from the VT (Figure 8).

Our observations and informal user studiesindicate that virtual objects can even appearfloating above the Plexiglas surface, and that

conflicting depth cues resulting from suchscenarios are not perceived as disturbing. Minorconflicts occur only if virtual objects protrudefrom the outline of the prop as seen by the userbecause of the depth discontinuity. The mostsevere problem is occlusion from the user’shands. Graphical elements on the pad are placedin a way so that such occlusions are minimized,but they can never be completely avoided.

Figure 8: Transparent pen and pad for the Virtual Tableare almost invisible and replaced by computer graphics

in the user’s perception (Stork & de Amicis, 2000)

Using the transparent props, the Studierstubesoftware was ported to the VT platform.Applications could now be authored once anddisplayed on different platforms. One lesson welearned in the process was that the format andproperties of the display strongly influenceapplication design, much like a movie convertedfrom Cinemascope to TV must be edited forcontent.

It was only after a working prototype of theVT setup was finished that we realized that atransparent panel affords new interaction stylesbecause the user can see through it:- Through-the-plane tools: The panel is

interpreted as a two-dimensional framedefining a frustum-shaped volume. A singleobject or set of objects contained in thatvolume instantly becomes subject to further

Page 7: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

manipulation – either by offering contextsensitive tools such as widgets placed at thepanel’s border, or by 2D gestural interactionon the panel’s surface. For example, Figure 9shows the application of a „lasso“ tool forobject selection.

Figure 9: The lasso tool allows users to select objects

in 3D by sweeping an outline in 2D on the pad. Allobjects whose 2D projection from the current viewpoint

is contained in the outline are selected.

- Through-the-window tools: The transparentpanel is interpreted as a window into adifferent or modified virtual environment.This idea includes 3D magic lenses (Viega etal., 1996) such as X-ray lenses (Figure 10),that are essentially modified versions of themain scene, but also SEAMS (Schmalstieg &Schaufler, 1998), which are portals todifferent scenes or different portions of thesame scene. A recent extension to the windowtools is proposed in (Stoev et al., 2000): Thepanel acts as a lens into a separate locale ofthe virtual environment, the pen is used tomove the scene underneath.

Figure 10: Different applications of through-the-windowtools: (top) X-ray lens, (middle) focus lens that locally

increases density of streamlines in a flow visualization,(bottom) portal to a different version of a scene

3. Convergence of user interfacemetaphorsDuring the work on the original Studierstube

architecture, we rapidly discovered new

Page 8: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

promising avenues of research, which could notbe investigated using the initial limited design.From about 1998 on, we therefore concentratedour efforts at re-engineering and extending theinitial solutions to construct a second-generationplatform building on what we had learned. Thesupport for the VT platform, as detailed in the lastsection, was the first outcome of this work.

It gradually became clear that augmentedreality – even in a collaborative flavor – was notsufficient to address all the user interfacerequirements for the next generation 3D workenvironment we had in mind. We needed to mixand match elements from different user interfacemetaphors. A vision of converging different userinterface paradigms evolved (Figure 11). Inparticular, we wanted to converge AR withelements from ubiquitious computing and thedesktop metaphor.

Ubiquitious ComputingMany different devices

Multiple locations

Augmented RealityUsers bring their computers

Multiple users share a virtual space

Desktop MetaphorConvenient & established

Multi-tasking of applicationsMulti-windowing system

? Convergence?

Figure 11: The latest Studierstube platform combinesthe best elements from augmented reality, ubiquitous

computing, and the desktop metaphor

In contrast to AR, which is characterized byusers carrying computing and display tools toaugment their environment, ubiquitouscomputing (Weiser, 1990) denotes the idea ofembedding many commodity computing devicesinto the environment, thus making continuousaccess to networked resources a reality. The VTplatform, although hardly a commodity, is aninstance of such a situated device. Yet there areother devices such as personal digital assistants

(PDAs) that blur the boundaries between AR andubiquitous computing. We are interested inexploring possible combinations of a multitude ofsimultaneously or alternatively employeddisplays, input, and computing infrastructures.

While new paradigms such as AR andubiquitous computing enable radical redesign ofhuman-computer interaction, it is also very usefulto transpose knowledge from establishedparadigms, in particular from the desktop, intonew interaction environments. Two-dimentionalwidgets are not the only element of the desktopmetaphor that we consider useful in a 3D workenvironment. Desktop users have long grownaccustomed to multi-tasking of applications thatcomplement each other in function. In contrast,many VR software toolkits allow thedevelopment of multiple applications for thesame execution environment using an abstractapplication programmer’s interface (API);however, the execution environment usuallycannot run multiple applications concurrently.Another convenient feature of desktopapplications is that many of them support amultiple document interface (MDI), i.e. workingwith multiple documents or data setssimultaneously, allowing comparison andexchange of data among documents. The use of2D windows associated with documents allowsconvenient arrangement of multiple documentsaccording to a user’s preferences. While theseproperties are established in the desktop world,they are not exclusive to it and indeed useful toenhance productivity in a 3D work environmentas well.

The latest version of the Studierstubesoftware framework explores how to transposethese properties into a virtual environment(Schmalstieg et al., 2000). The design is built onthree key elements: users, contexts, and locales.

Page 9: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

3.1 UsersSupport for multiple collaborating users is a

fundamental property of the Studierstubearchitecture. While we are most interested incomputer-supported face-to-face collaboration,this definition also encompasses remotecollaboration. Collaboration of multiple usersimplies that the system will typically incorporatemultiple host computers – one per user. However,Studierstube also allows multiple users to interactwith a single host (e.g. via a large screen or amulti-headed display), and a single user tointeract with multiple computers at once (bysimultaneous use of multiple displays). Thisdesign is realized as a distributed systemcomposed of different computing, input (PIP) andoutput (display) devices that can be operatedsimultaneously.

3.2 ContextsThe building blocks for organizing

information in Studierstube are called contexts. Acontext encloses the data itself, the data’srepresentation and an application that operates onthe data. It therefore roughly corresponds to anobject-oriented implementation of a document ina conventional desktop system. Users onlyinteract within those contexts, so the notion of anapplication is completely hidden from the user. Inparticular, users never have to “start” anapplication; they simply open a context of aspecific type. Conceptually, applications arealways “on” (Kato et al., 2000).

In a desktop system, the data representationof a document is typically a single 2D window.Analogously, in our three-dimensional userinterface, a context’s representation is defined asa three-dimensional structure contained in a box-shaped volume – a 3D-window (Figure 12). Notethat unlike its 2D counterpart, a context can beshared by any group of users.

Figure 12: Multiple document interface in 3D – the rightwindow has the user’s focus – indicated by the dark

window frame – and can be manipulated with thecontrol elements on the PIP.

Every context is an instance of a particularapplication type. Contexts of different types canexist concurrently, which results in multi-taskingof multiple applications. Moreover, Studierstubealso allows multiple contexts of the same type,thereby implementing an MDI. Multiple contextsof the same type are aware of each other and canshare features and data. For example, consider theminiature stages of the Storyboarding application(section 8), which share the “slide sorter” view.

3.3 LocalesLocales correspond to coordinate systems in

the virtual environment. They usually coincidewith physical places, such as a lab or conferenceroom or part of a room, but they can also beportable and linked to a user’s position or usedarbitrarily—even overlapping locales in the samephysical space are allowed and used. Byconvention, every display used in a Studierstubeenvironment shows the content of exactly onelocale, but one locale can be assigned to multipledisplays. Every context can—but need not—bereplicated in every locale, i.e. it can appear, atmost, once in every locale. All replicas of aparticular context are kept synchronized by

Page 10: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

Studierstube’s distribution mechanism (section6).

3.4 Context vs. localeAt first glance, it may not be obvious why a

separation of contexts and locales is necessary.For example, the EMMIE system (Butz et al.,1999) envelops users and computers in a singleenvironment called “ether,” which is populatedby graphical data items. An item’s locale alsodefines its context and vice versa. All displaysshare the same physical locale. While thisapproach is simple to understand and easy toimplement, the interaction design does not scalewell with the number of data items and users: Asthe number of data items increases, it becomesincreasingly difficult to arrange them so that allusers have convenient access to all data items thatthey are interested in. Data items may beoccluded or out of reach for convenientinteraction. Even a fully untethered setup ofdisplays and devices may be inconvenient if theenvironment is structured in a way that forcesusers to walk around in order to access frequentlyrequired data. The larger the user group is, themore likely it becomes that two users that are notin close proximity will compete for a particulardata item, making optimal placement difficult orimpossible. Moreover, remote collaboration isruled out by the single locale approach, as theposition of a particular data item will often beinaccessible to a remote user.

In contrast, Studierstube separates contextsand locales for increased flexibility. Everydisplay uses a separate locale, i.e., a scene withan independent coordinate system. A context isplaced in a locale by assigning to the context‘s3D-windows a particular position within thelocale. This approach allows for several strategiesregarding the arrangement of contexts in therelevant locales.

A strategy of making a context availableexclusively in one locale is equivalent to the

single locale approach, with the exception that thelocale is broken up into disjointed parts. Again,users may not be able to access desired contexts(Figure 13, top). In contrast, a strategy ofreplicating every context in every localeguarantees convenient access to a context, butquickly leads to display clutter (Figure 13,middle).

A B C

Locale 1Locale 2

A, C?B?, C

A BC

C

Locale 1Locale 2

A, CB, C

AAB

BCC

Locale 1Locale 2

A, CB, C

Figure 13: (top) A global arrangement of items cannotfulfill all needs. (middle) Full replication of all items

leads to display clutter. (bottom) On-demand replicationof items allows convenient customization of locales.

Page 11: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

Therefore replication of a context in a givenlocale is optional: There may be at most onereplica of a given context in a given locale. Thisstrategy allows a user to arrange a convenientworking set of contexts in his or her preferreddisplay (Figure 13, bottom). If the displays areconnected to separate hosts in a distributedsystem, only those hosts that replicate a contextneed to synchronize the context’s data. If it canbe assumed that working sets typically do notexceed a particular size, the system will scalewell.

Yet in many situations it is desirable to shareposition and configuration over displayboundaries. Studierstube thus allows locales to beshared over displays. More precisely, multipledisplays can have independent points of view, butshow images of an identical scene graph.

LAN

Host 2

Host 3

Host 1

virtualtable

Locale B

Locale A

Figure 14: Multiple locales can simultaneously exist inStudierstube. They can be used to configure differentoutput devices and to support remote collaboration.

This allows for collaborative augmentedreality settings as introduced in section 2, but

even for more complex setups such as a largeprojection screen display augmented by graphicsfrom a see-through HMD. Figure 14 shows anon-trivial example involving one context, twolocales, three displays, and four users.

4. Implementation of the userinterface

4.1 Software architectureStudierstube’s software development

environment is realized as a collection of C++classes built on top of the Open Inventor (OIV)toolkit (Strauss & Carey, 1992). The richgraphical environment of OIV allows rapidprototyping of new interaction styles. The fileformat of OIV enables convenient scripting,overcoming many of the shortcomings ofcompiled languages without compromisingperformance. At the core of OIV is an object-oriented scene graph storing both geometricinformation and active interaction objects. Ourimplementation approach has been to extend OIVas needed, while staying within OIV’s strongdesign philosophy (Wernecke, 1994).

This has led to the development of twointertwined components: A toolkit of extensionsof the OIV class hierarchy—mostly interactionwidgets capable of responding to 3D events—anda runtime framework which provides thenecessary environment for Studierstubeapplications to execute (Figure 15). Togetherthese components form a well-defined applicationprogrammer’s interface (API), which extends theOIV API, and also offers a convenientprogramming model to the applicationprogrammer (section 7).

Page 12: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

App3App2App1

DIV

Runtime

Widgets

context managm

ent

Open Inventor

User level

Studierstubekernellevel

systemlevel

graphicshardware

. . .StbAPI

Figure 15: The Studierstube software is composed of aninteraction toolkit and runtime system. The latter isresponsible for managing context and distribution.

Applications are written and compiled asseparate shared objects, and dynamically loadedinto the runtime framework. A safeguardmechanism makes sure that only one instance ofeach application’s code is loaded into the systemat any time. Besides decoupling applicationdevelopment from system development, dynamicloading of objects also simplifies distribution, asapplication components can be loaded by eachhost whenever needed. All these features are notunique to Studierstube, but they are rarely foundin virtual environment software.

By using this dynamic loading mechanism,Studierstube supports multi-tasking of differentapplications (e.g. a medical visualization and a3D modeler) and also an MDI.

Depending on the semantics of theassociated application, ownership of a contextmay or may not privilege a user to performcertain operations on the information (such asobject deletion). Per default, users present in thesame locale will share a context. Per default, acontext is visible to all users and can bemanipulated by any user in the locale.

4.2 Three-dimentional windowsThe use of windows as an abstraction and

interaction metaphor is an established conventionin 2D GUIs. Its extension to three dimensions canbe achieved in a straightforward manner (Tsao &Lumsden, 1997): Using a box instead of arectangle seems to be the easiest way ofpreserving the well-known properties of desktopwindows when migrating into a virtualenvironment. It supplies the user with the samemeans of positioning and resizing the displayvolume and also defines its exact boundaries.

A context is normally represented in thescene by a 3D window, although a context isallowed to span multiple windows. The 3D-window class is a container associated with auser-specified scene graph. This scene graph isnormally rendered with clipping planes set to thefaces of the containing box so that the content ofthe window does not protrude from the window’svolume. Nested windows are possible, althoughwe have found little use for them. The window isnormally rendered with an associated“decoration” that visually defines the window’sboundaries and allows it to be manipulated withthe pen (move, resize etc). The color of thedecoration also indicates whether a window isactive (and hence receives 3D events from thatuser). Like their 2D counterparts, 3D-windowscan be minimized (replaced by a three-dimensional icon on the PIP to save space in acluttered display), and maximized (scaled to fillthe whole work area). Typically, multiplecontexts of the same type will maintainstructurally similar windows, but this decision isat the discretion of the application programmer.

4.3 PIP sheetsStudierstube applications are controlled

either via direct manipulation of the datapresented in 3D-windows, or via a mixture of 2Dand 3D widgets on the PIP. A set of controls onthe PIP— a PIP sheet—is implemented as an

Page 13: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

OIV scene graph composed primarily ofStudierstube interaction widgets (such as buttons,etc.). However, the scene graph may also containgeometries (e. g., 2D and 3D icons) that conveythe user interface state or can be used merely asdecoration.

Every type of context defines a PIP sheettemplate, a kind of application resource. Forevery context and user, a separate PIP sheet isinstantiated. Each interaction widget on the PIPsheet can therefore have a separate state. Forexample, the current paint color in an artisticspraying application can be set individually byevery user for every context. However, widgetscan also be shared by all users and/or all contexts.Consequently, Studierstube’s 3D event routinginvolves a kind of multiplexer between windowsand users’ PIP sheets.

5. Hardware support5.1 Displays

Studierstube is intended as an applicationframework that allows the use of a variety ofdisplays, including projection based devices andHMDs. There are several ways of determiningcamera position, creating stereo images, setting avideo mode etc. After some consideration, weimplemented an OIV compatible viewer with aplug-in architecture for camera control anddisplay mode.

The following display modes are supported:- Field sequential stereo: Images for left/right

eye output in consecutive frames- Line interleaved stereo: Images for left/right

eye occupy odd/even lines in a single frame- Dual screen: Images for left/right eye are

output on two different channels- Mono: The same image is presented to both

eyesThe following camera control modes are

supported:

- Tracked display: Viewpoint and displaysurface are moving together and are tracked(usually HMD)

- Tracker head: A user’s viewpoint (head) istracked, but the display surface is fixed (suchas a workbench or wall)

- Desktop: The viewpoint is either assumedstationary, or can be manipulated with amouseThis approach, together with a general off-

axis camera implementation, allows runtimeconfiguration of almost any available displayhardware. Table 1 shows an overview of somedevices that have evaluated so far.

Trackeddisplay

Trackedhead

Desktop

Fieldsequential

SonyGlasstron

Virtual Table Fishtank VRwith shutterglasses

Lineinterleaved

i-glasses VREXVR2210projector

i-glasses w/ohead tracking

Dual screen i-glassesProtec

Single userdual-projectorpassive stereow/head track.

Multi-userdual-projectorpassive stereo

Mono i-glasses(mono)

Virtual Table(mono)

Desktopviewer

Table 1: All combinations of camera control and displaymodes have distinct uses.

5.2 TrackingA software system like Studierstube that

works in a heterogeneous distributedinfrastructure and is used in several research labswith a variety of tracking devices requires anabstract tracking interface. The approach taken bymost commercial software toolkits is toimplement a device driver model, therebyproviding an abstract interface to the trackingdevices, while hiding hardware dependent codeinside the supplied device drivers. While such amodel is certainly superior to hard-coded device

Page 14: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

support, we found it insufficient for our needs invarious aspects:- Configurability: Typical setups for tracking

in virtual environments are very similar in thebasic components, but differ in essentialdetails such as the placement of trackersources or the number and arrangement ofsensors. The architecture allows theconfiguration of all of those parametersthrough simple scripting mechanisms.

- Filtering: There are many necessaryconfiguration options that can becharacterized as filters, i.e., modifications ofthe original data. Examples include geometrictransformations of filter data, prediction,distortion compensation, and sensor fusionfrom different sources.

- Distributed execution and decoupledsimulation: Processing of tracker data canbecome computationally intensive, and itshould therefore be possible to distribute thiswork over multiple CPUs. Moreover, trackerdata should be simultaneously available tomultiple users in a network. This can beachieved by implementing the trackingsystem as a loose ensemble of communicatingprocesses, some running as service processeson dedicated hosts that share thecomputational load and distribute theavailable data via unicast and multicastmechanisms, thereby implementing adecoupled simulation scheme (Shaw et al.,1993).

- Extensibility: As a research system,Studierstube is frequently extended with newexperimental features. A modular, object-oriented architecture allows the rapiddevelopment of new features and uses themtogether with existing ones.The latest version of tracking support in

Studierstube is implemented as an object-orientedframework called OpenTracker (Reitmayr &Schmalstieg, 2000), which is available as open

source. It is based on a graph structure composedof linked nodes: source nodes deliver trackerdata, sink nodes consume data for furtherprocessing (e. g. to set a viewpoint), whileintermediate nodes act as filters. By adding newtypes of nodes, the system can easily be extended.Nodes can reside on different hosts and propagatedata over a network for decoupled simulation. Byusing an XML (Bray et al., 2000) description ofthe graph, standard XML tools can be applied toauthor, compile, document, and script theOpenTracker architecture.

6. Distributed executionThe distribution of Studierstube requires that

for each replica of a context, all graphical andapplication-specific data is locally available. Ingeneral, applications written with OIV encode allrelevant information in the scene graph, soreplicating the scene graph at each participatinghost already solves most of the problem.

6.1 Distributed shared scene graphToward that aim, Distributed Open Inventor

(DIV) was developed (Hesina et al., 1999) as anextension—more a kind of plug-in—to OIV. TheDIV toolkit extends OIV with the concept of adistributed shared scene graph, similar todistributed shared memory. From the applicationprogrammer's perspective, multiple workstationsshare a common scene graph. Any operationapplied to a part of the shared scene graph will bereflected by the other participating hosts. All thishappens to the application programmer in analmost completely transparent manner bycapturing and distributing OIV’s notificationevents.

Modifications to a scene graph can either beupdates of a node’s fields, i.e., attribute values, orchanges to the graph’s topology, such as addingor removing children. All these changes to thescene graph are picked up by an OIV sensor andreported to a DIV observer which propagates the

Page 15: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

changes via the network to all hosts that have areplica of the context’s scene graph, where themodifications are duplicated on the remote scenegraph by a DIV listener (Figure 16).

Figure 16: Example of a field update in a master-slaveconfiguration. (1) User triggers an action by pressing a

button. (2) Corresponding callback is executed andmodified field1 of node2. (3) Event notification is

propagated upwards in scene graph and observed bysensor. (4) Sensor transmits message to slave host. (5)

Receiver picks up message and looks upcorresponding node in internal hash table. (6) Slave

node is modified.

On top of this master/slave mechanism forreplication, several network topology schemescan be built. A simple reliable multicastingscheme based on time stamps is used to achieveconsistency.

6.2 Distributed context managementA scene graph shared with DIV need not be

replicated in full—only some portions can beshared, allowing local variations. In particular,every host will build its own scene graph fromthe set of replicated context scene graphs.

These locally varied scene graphs allow forthe management of locales by resolvingdistributed consistency on a per-context basis.There exists exactly one workstation, which ownsa particular context and will be responsible forprocessing all relevant interaction concerning theapplication. This host’s replica is called themaster context. All other hosts may replicate thecontext as a slave context.

The slave contexts’ data and representation(window, PIP sheet etc.) stay synchronized over

the whole life span of the context for everyreplica.

The replication on a per-context basisprovides coarse-grained parallelism. At the sametime the programming model stays simple and theprogrammer is relieved of solving difficultconcurrency issues since all relevant computationcan be performed in a single address space.

The roles that contexts may assume (masteror slave) affect the status of the context’sapplication part. The application part of a mastercontext is active and modifies context datadirectly according to the users’ input. In contrast,a slave context’s application is dormant and doesnot react to user input. For example, no callbacksare executed if widgets are triggered. Instead, aslave context relies on updates to be transmittedvia DIV. When the application part changes thescene graph of the master context, DIV will pickup the change and propagate it to all slavecontexts to keep them in sync with the mastercontext. This process happens transparentlywithin the application, which uses only the mastercontext’s scene graph.Note that context replicas can swap roles (e. g.,by exchanging master and slave contexts toachieve load balancing), but at any time theremay only be one master copy per replicatedcontext.

Because the low-level replication of contextdata is taken care of by DIV, the high-levelcontext management protocol is fairly simple: Adedicated session manager process serves as amediator among hosts as well as a known point ofcontact for newcomers. The session managerdoes not have a heavy workload compared to thehosts running the Studierstube user interface, butit maintains important directory services. Itmaintains a list of all active hosts and whichcontexts they own or subscribe to, and itdetermines policy issues, such as load balancing,etc.

Page 16: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

Finally, input is managed separately bydedicated device servers (typically PCs runningLinux), which also perform the necessaryfiltering and prediction. The tracker data is thenmulticast in the LAN, so it is simultaneouslyavailable to all hosts for rendering.

7. Application programmer’sinterfaceThe Studierstube API imposes a certain

programming model on applications, which isembedded in a foundation class, from which allStudierstube applications are derived. Byoverloading certain polymorphic methods of thefoundation class, a programmer can customizethe behavior of the application. The structureimposed by the foundation class supportsmultiple contexts.

sghkjkl lksdfj lkjf dgdfsghhj fhjgjkdflhjlskd jgflkjsdfgkjvakltj i4trrtgdfs;lghjksdl;fhkl;sgkdh dfsgkjdsfkjg

dfgdsfghjsdghkljgfhjklg hkhjlkjnlkjl;kfjg;lksdfjbhl;kjsl

ykbjm ll;rth fhjdlfghkk

kjhjjlknjkljhjkhfdjkhgseizr

uivhseuityb hiouyi jrtjhrnthj si

jitosjhimthibmriptmbdnoi

ijniojniojfoijiojhgiojfdghiomdfoimhnifgjosdjigoijdiosfhdfghklj hh h jhjhjh jkh jh iu iuh uihiuh uhiuhij h‘ji hnjn nun nn

kj lkjlkji

window application

PIPsheet(per user)

sghkjkl lksdfj lkjf dgdfsghhj fhjgjkdflhjlskd jgflkjsdfgkjvakltj i4trrtgdfs;lghjksdl;fhkl;sgkdh dfsgkjdsfkjg

dfgdsfghjsdghkljgfhjklg h

khjlkjnlkjl;kfjg;lksdfjbhl;kjslykbjm ll;rth fhjdlfghkk

kjhjjlknjkljhjkhfdjkh

Context 1

Context 2

Figure 17: A context is implemented as a node in thescene graph, as are windows and PIP sheets. This

allows for the organization of all relevant data in thesystem in a single hierarchical data structure.

Each context can be operated in both mastermode (normal application processing) and slavemode (same data model, but all changes occurremotely through DIV). The key to achieving all

of this is to make the context itself a node in thescene graph. Such context nodes are implementedas OIV kit classes. Kits are special nodes that canstore both fields, i.e., simple attributes, and childnodes, both of which will be considered part ofthe scene graph and thus implicitly be distributedby DIV. Default parts of every context are at leastone 3D-window node, which is itself an OIV kitand contains the context’s “client area” scenegraph, and a set of PIP sheets (one for eachparticipating user). In other words, data,representation, and application are all embeddedin a single scene graph (Figure 17), which can beconveniently managed by the Studierstubeframework.

To create a useful application with all theproperties mentioned above, a programmer needonly create a subclass of the foundation class andoverload the 3D-window and PIP sheet creationmethods to return custom scene graphs.Typically, most of the remaining application codewill consist of callback methods responding tocertain 3D events such as a button press or a 3Ddirect manipulation event. Although theprogrammer has the freedom to use anything thatthe OIV and Studierstube toolkits offer, anyinstance data is required to be stored in thederived context class as a field or node, orotherwise it will not be distributed. However, thisis not a restriction in practice, as all basic datatypes are available in both scalar and vectorformats as fields, and new types can be createdshould the existing ones turn out to be insufficient(a situation that has not occurred to us yet).

Note that allowing a context to operate ineither master and slave mode has implications onhow contexts can be distributed: It is notnecessary to store all master contexts of aparticular type at one host. Some master contextsmay reside on one host, some on another host—inthat case, there usually will be correspondingslave contexts at the respective other host, whichare also instances of the same kit class, but

Page 17: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

initialized to function as slaves. In essence,Studierstube’s API provides a distributedmultiple document interface.

8. ApplicationsTo evaluate the Studierstube platform, a

number of applications were developed and arestill being developed. They cover a variety offields, for example, scientific visualization(Fuhrmann et al., 1998), CAD (Encarnação et al,1999a), and landscape design (Schmalstieg et al.,1999). In this section, three application examplesare chosen to highlight the platform’s strengths:Section 8.1 discusses storyboard, a multi-userdesign system, section 8.2 presents MediDesk, amedical visualization tool, and section 8.3describes Construct3D, a geometry educationtool.

8.1 Storyboard designTo demonstrate the possibilities of a

heterogeneous virtual environment, we chose theapplication scenario of storyboard design. Thisapplication is a prototype of a cinematic designtool. It allows multiple users to concurrently workon a storyboard for a movie or drama. Individualscenes are represented by their stage sets, whichresemble worlds in miniature (Pausch et al.,1995).

Every scene is represented by its owncontext and embedded in a 3D-window. Userscan manipulate the position of props in the sceneas well as the number and placement of actors(represented by colored board game figures), andfinally the position of the camera (Figure 18).

All contexts share an additional large slideshow window, which shows a 2D image of theselected scene from the current camera position.By flipping through the scenes in the givensequence, the resulting slide show conveys thevisual composition of the movie.

Alternatively, a user may change the slideshow to a “slide sorter” view inspired by current

presentation graphics tools, where each scene isrepresented by a smaller 2D image, and thesequence can be rearranged by simple drag anddrop operations. The slide sorter comes closest tothe traditional storyboard used incinematography. It appears on the PIP for easymanipulation as well as on the larger projectionscreen.

Figure 18: Storyboard application with two users andtwo contexts as seen from a third “virtual” user

perspective, used for video documentation. In thebackground the video projection is visible.

The test configuration consisted of threehosts (SGI Indigo2 and O2 running IRIX,Intergraph TZ1 Wildcat running Windows NT),two users, and two locales (Figure 19). It wasdesigned to show the convergence of multipleusers (real ones as well as virtual ones), contexts,locales, 3D-windows, hosts, displays andoperating systems.

The two users were wearing HMDs, bothconnected to the Indigo2’s multi-channel output,and seeing head-tracked stereoscopic graphics.They were also fitted with a pen and panel each.The Intergraph workstation was driving an LCDvideo projector to generate a monoscopic imageof the slide show on the projection screen(without viewpoint tracking), whichcomplemented the presentation of the HMDs.

Page 18: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

LAN

LAN

Intergraph

O2

Cam.

Proj.

Indigo2

Figure 19: Heterogeneous displays—two userssimultaneously see shared graphics (via their see-

through HMDs) and a large screen projection.

Users were able to perform some privateediting on their local contexts and then update theslide show/sorter to discuss the results. Typically,each user would work on his or her own set ofscenes. However, we chose to make all contextsvisible to both users so collaborative work on asingle scene was also possible. The slide sorterview was shared between both users so globalchanges to the order of scenes in the movie wereimmediately recognizable.

The third host—the O2—was configured tocombine the graphical output (monoscopic) fromStudierstube with a live video texture obtainedfrom a video camera pointed at the users andprojection screen. The O2 was configured torender images for a virtual user whose positionwas identical with the physical camera. Thisfeature was used to document the system onvideo.

The configuration demonstrates the use ofoverlapping locales: The first locale is shared bythe two users to experience the miniature stagesat the same position. This locale is also shared bythe O2, which behaves like a passive observer of

the same virtual space, while a second separatelocale was used for the Intergraph driving theprojection screen, which could be freelyrepositioned without affecting the remainder ofthe system.

8.2 Medical visualizationMediDesk is an application for interactive

volume rendering in the Studierstube system(Wohlfahrter et al., 2000). As the name suggests,its primary use lies in the field of medicalvisualization. Users can load volumetric data sets(typically CT or MRI scans), which are renderedusing OpenGL Volumizer (Eckel, 1998).Volumizer allows interactive manipulation ofvolume data, although it requires a high-end SGIworkstation for reasonable performance.

Figure 20: MediDesk allows interactive manipulation of

volumetric data, such as CT scans.

As with most Studierstube applications, a setof buttons and sliders on the panel allows a userto control the application, such as altering transferfunction parameters (Figure 20). The backside ofthe panel serves special purposes for volumemanipulation: This allows for the design of anintuitive interface for volume rendering, a styleinspired by a medical doctor’s X-ray workplace.

Page 19: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

Figure 21: The lower half of the image shows theannotating of a virtual “X-ray” print taken from the

volume on the upper right.

The use of two-handed interaction formanipulation of medical data has been foundadvantageous in the past (Goble et al., 1995). ThePIP allows a similar approach: The volumetricdata set can be positioned with the pen, while thepanel acts as a clipping plane. The user may alsofreeze one or multiple clipping planes in space toinspect isolated regions of interest. Alternatively,cross-sections can be extracted from the volumewith the panel and subsequently appear (astextures) on the pad, where they can be annotatedwith the pen as if the panel were a notepad. Thesevirtual “X-ray” prints can be attached to aphysical wall for reference (Figure 21).

8.3 Geometry educationConstruct3D is a prototype application for

exploring the use of collaborative augmentedreality in mathematics and geometry education(Kaufmann et al., 2000). More specifically, wewere interested how constructive geometryeducation, which still uses traditional pen-and-paper drawing methods to teach high school andcollege students the basics of three-dimensionalspace, could be implemented in Studierstube. It isimportant to note that this differs from typicalcomputer aided design (CAD) tasks. Userstrained in desktop CAD tools may have a

different background and a different set ofexpectations than students involved in pen andpaper exercises.

Figure 22: A tutor teaches a student how togeometrically construct 3D entities with Construct3D.

To assess the usability of a 3D tool likeStudierstube, we found geometry education aninteresting application field because is not somuch concerned with the final result of themodeling, but rather with the process ofconstruction itself and its mathematicalfoundation. We tried to evaluate the advantagesof actually seeing three-dimensional objects, asopposed to calculating and constructing themusing two-dimensional views. We speculated thatAR would allow a student to enhance, enrich andcomplement the mental pictures of complexspatial problems and relationships that studentsform in their minds when working with three-dimensional objects. By working directly in 3Dspace, it may be possible to comprehend the taskbetter and faster than with traditional methods.

We therefore aimed not at creating aprofessional 3D modeling package but rather atdeveloping a simple and intuitive 3D constructiontool in an immersive AR environment foreducational purposes. The main goal was to keepthe user interface as simple as possible tofacilitate learning and efficient use. The main

Page 20: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

areas of application of the system in mathematicsand geometry education were vector analysis anddescriptive geometry.

Construct3D uses the PIP to offer a palette ofgeometric objects (point, line, plane, box, sphere,cone and cylinder) that can be input using directmanipulation for coordinate specification (pointand click). A coordinate skitter (Bier, 1986) aidsaccurate positioning. The modeling process isconstructive in the sense that more complexprimitives can be assembled from simpler ones(e. g., a plane can be defined by indicating apreviously created point and line). Audiofeedback guides the construction process. The useof transparency for primitives allowed users toobserve necessary details, such as intersections.

With this application, an informal user studywith 14 subjects was conducted. The test sessionconsists of two parts. The first part required eachparticipant to solve a construction example frommathematics education with the help of a tutor inConstruct3D (Figure 22). The example stemsfrom vector analysis as taught in 10th grade inAustria. For high school students, calculating theresults would be lengthy and rather complex. Inthe second part, all subjects completed a briefsurvey. The survey contains an informal sectionabout VR in general and questions aboutConstruct3D.

In general, speculations that AR is a usefultool for geometry education were confirmed. Thesubjects were able to perform the task after a fewminutes of initial instruction. The majority ofcomments regarding the AR interface wereencouraging. Some questions arose about howlarger groups of students could work together (wepartly relate this comment to the current tetheredsetup that has a rather limited working volume).Some comments addressed the technical quality(such as tracking or frame rate). Most studentsconsider AR a useful complement (but notreplacement) to traditional pen and papereducation. Figure 22 also shows how unplanned

uses of the environment can arise—one studentspontaneously placed the printed task descriptionon the PIP, thus “augmenting” her PIP with aphysical layer of information.

9. Related workThe current architecture of Studierstube has

absorbed many different influences and isutilizing—partially enhancing—many differentideas. The most influential areas are augmentedreality, computer supported cooperative work,ubiquitous computing, and heterogeneous userinterfaces. Here the discussion is limited to someof the most influential work:

The Shared Space (Billinghurst et al., 1996;Billinghurst et al., 1998b) project at University ofWashington’s HITLab has—together withStudierstube—pioneered the use of collaborativeaugmented reality. Since then, HITLab hasworked on many innovative applications blendingAR with other components into a heterogeneousenvironment: Easily deployable optical trackingallows to utilize tangible objects for instantaugmentation (Kato et al., 2000), for example, tobuild wearable augmented video conferencingspaces (Billinghurst et al., 1998a) or hybrids ofAR and immersive virtual worlds.

The Computer Graphics and User Interfaceslab at Columbia University has a long reputationfor augmented reality research (Feiner et al.,1993). Their EMMIE system (Butz et al., 1999) isprobably the closest relative to Studierstube. Itenvelops computers and users in a collaborative“ether” populated with graphical data itemsprovided by AR and ubiquitous computingdevices such as HMDs, notebooks, PDAs, andprojection walls. Communication betweenstationary and mobile AR users is facilitated aswell (Höllerer et al., 1999). Except for the localeconcept, EMMIE shares many basic intentionswith our research, in particular concurrent use ofheterogeneous media in a collaborative workenvironment. Like us, (Butz et al., 1999) believe

Page 21: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

that future user interfaces will require a broaderdesign approach integrating multiple userinterface dimensions before a successor to thedesktop metaphor can emerge.

Rekimoto has developed a number of setupsfor multi-computer direct manipulation to bridgeheterogeneous media. In (Rekimoto, 1997), astylus is used to drag and drop data across displayboundaries, while Hyperdragging (Rekimoto &Saitoh, 1999) describes a similar concept thatmerges multiple heterogeneous displays to createa hybrid virtual environment.

The Tangible Media Group at MIT hasdeveloped a number of heterogeneous userinterfaces based on the theme of tangible(physical) objects (Ishii & Ulmer, 1997). Forexample, the metaDESK (Ulmer & Ishii, 1997)combines tangible objects with multiple displays,implicitly defining two views into one locale. Theluminous room (Underkoffler, 1999) allowsremote collaboration using embedded displays,while mediaBLOCKS (Ulmer & Ishii, 1998) aretangible containers that roughly correspond tocontexts in Studierstube.

The Office of the Future project at UNC(Raskar et al., 1998a) is concerned with theseamless embedding of computer controlleddisplays into a conventional office environment.This system uses sophisticated front projection toimplement spatially augmented reality (Raskar,1998b), an interesting variety of AR.

CRYSTAL (Tsao & Lumsden, 1997) is asingle-user multi-application platform. While it isagnostic in terms of display media, it pioneers theuse of 3D-windows and multi-tasking ofapplications in virtual environments.

Finally, SPLINE (Barrus et al., 1996) is adistributed multi-user environment. From it theterm “locale” is borrowed, which in SPLINE isused to describe non-overlapping places. WhileSPLINE is neither an AR system nor a 3D workenvironment (according to our use of the term), it

allows multiple users to participate in multipleactivities (i.e., applications) simultaneously.

10. Conclusions and future workStudierstube is a prototype system for

building innovative user interfaces that usecollaborative augmented reality. It is based on aheterogeneous distributed system based on ashared scene graph and a 3D interaction toolkit.This architecture allows for the amalgamation ofmultiple approaches to user interfaces as needed:augmented reality, projection displays, ubiquitouscomputing. The environment is controlled by atwo-handed pen-and-pad interface, the PersonalInteraction Panel, which has versatile uses forinteracting with the virtual environment. We alsoborrow elements from the desktop, such as multi-tasking and multi-windowing. The resultingsoftware architecture resembles in some wayswhat could be called an “augmented realityoperating system.”

Research that is currently in its initial phasewill investigate the possibilities of mobilecollaborative augmented reality. The nameStudierstube (“study room”) may be no longerappropriate for a portable or wearable ARplatform, but a mobile 3D information platformhas exciting new possibilities, such as ad-hocnetworking for instant collaboration ofaugmented users. Our goal is to allow users totake 3D contexts “on the road” and even dockinto a geographically separate environmentwithout having to shut down live applications.

AcknowledgmentsThe Studierstube project is sponsored by the

Austrian Science Fund FWF under contracts no.P12074-MAT and P14470-INF, by theFraunhofer IGD/CRCG Student and ScholarExchange Program, and the Fraunhofer IGDTRADE Virtual Table 1998-1999 Program.Special thanks to Oliver Bimber, Pedro Branco,Hannes Kaufmann, Markus Krutz, Clemens

Page 22: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

Pecinovsky, Roman Rath, Gerhard Reitmayr,Gernot Schaufler, Rainer Splechtna, Stan Stoev,André Stork, Hermann Wurnig, and AndreasZajic for their contributions, and to M. EduardGröller for his spiritual guidance.

Web informationhttp://www.cg.tuwien.ac.at/research/vr/studierstube/

References(Angus & Sowizral, 1995) I. Angus, H. Sowizral.

Embedding the 2D Interaction Metaphor in a Real3D Virtual Environment. Proceedings SPIE, vol.2409, pp. 282-293, 1995.

(Barrus et al., 1996) J. Barrus, R. Waters, R.Anderson. Locales and Beacons: Precise andEfficient Support for Large Multi-User VirtualEnvironments. Proc. VRAIS ‘96, pp. 204-213,1996.

(Bier, 1986) E. Bier. Skitters and Jacks: Interactive3D Positioning Tools. Proc. 1986 ACM Workshopon Interactive 3D Graphics, Chapel Hill, NC, pp.183-196, 1986.

(Billinghurst et al., 1996) M. Billinghurst, S.Weghorst, T. Furness III. Shared Space: AnAugmented Reality Approach for ComputerSupported Collaborative Work, Extended abstractin Proc. of Collaborative Virtual Environments‘(CVE’96), Nottingham, UK, 1996.

(Billinghurst et al., 1998a) M. Billinghurst, J.Bowskill, M. Jessop, J. Morphett. A WearableSpatial Conferencing Space, Proc. ISWC ‘98, pp.76-83, 1998.

(Billinghurst et al., 1998b) M. Billinghurst, S.Weghorst, T. Furness III. Shared Space: AnAugmented Reality Approach for ComputerSupported Collaborative Work, Virtual Reality:Virtual Reality - Systems, Development andApplications, 3(1), pp. 25-36, 1998.

(Bray et al., 2000) T. Bray, J. Paoli, C. Sperberg-McQueen et al. Extensible Markup Language(XML) 1.0. http://www.w3.org/TR/REC-xml/,2000.

(Butz et al., 1998) A. Butz, C. Beshers, S. Feiner. OfVampire Mirrors and Privacy Lamps: PrivacyManagement in Multi-User AugmentedEnvironments. Proc. ACM UIST’98, pp. 171-172,Nov. 1998.

(Butz et al., 1999) A. Butz, T. Höllerer, S. Feiner, B.MacIntyre, C. Beshers. Enveloping Computers andUsers in a Collaborative 3D Augmented Reality,Proc. IWAR ‘99, pp. 1999.

(Cruz-Neira et al., 1993) C. Cruz-Neira, D. Sandin, T.DeFanti. Surround-Screen Projection-Based VirtualReality: The Design and Implementation of theCAVE. Proceedings of SIGGRAPH’93, pp. 135-142, 1993.

(Eckel, 1998) G. Eckel. OpenGL VolumizerProgramming Guide. SGI Inc., 1998.

(Encarnação et al., 1999a) L. M. Encarnação, A.Stork, D. Schmalstieg, O. Bimber. The VirtualTable – A Future CAD Workspace. Proceedings ofthe 1999 CTS (Autofact) Conference, Detroit MI,Sept. 1999.

(Encarnação et al., 1999b) L. M. Encarnação, O.Bimber, D. Schmalstieg, S. Chandler. ATranslucent Sketchpad for the Virtual TableExploring Motion-based Gesture Recognition.Computer Graphics Forum, pp. 277-286, Sept.1999.

(Encarnação et al., 2000) L. M. Encarnação, R.J.Barton III, P. Stephenson, P. Branco, J. Tesch, J.F. Mulhearn. Interactive exploration of theunderwater sonar space in a semi-immersiveenvironment. Submitted for publication, 2000.

(Feiner et al., 1993) S. Feiner, B. MacIntyre, D.Seligmann. Knowledge-Based Augmented Reality.Communications of the ACM, vol. 36, no. 7, pp.53-62, 1993.

(Fuhrmann et al., 1998) A. Fuhrmann, H. Löffelmann,D. Schmalstieg, M. Gervautz. CollaborativeVisualization in Augmented Reality. IEEEComputer Graphics & Applications, Vol. 18, No. 4,pp. 54-59, IEEE Computer Society, 1998.

(Fuhrmann & Schmalstieg, 1999) A. Fuhrmann, D.Schmalstieg. Multi-Context Augmented Reality.Technical report TR-186-2-99-14, ViennaUniversity of Technology, 1999. Available fromftp://ftp.cg.tuwien.ac.at/pub/TR/99/TR-186-2-99-14Paper.pdf

(Goble et al., 1995) J. Goble, K. Hinckley, R. Pausch,J. Snell, N. Kassel. Two-Handed Spatial InterfaceTools for Neurosurgical Planning. IEEE Computer,28(7):20-26, 1995.

Page 23: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

(Goethe, 1808) J. W. von Goethe. Faust. Drama, firstpublished 1808. English translation by D. Lukepublished by Oxford University Press, 1998.

(Guiard, 1987) Y. Guiard. Assymetric Division ofLabor in Human Skilled Bimanual Action: TheKinematic Chain as Model. Journal of MotorBehaviour, 19(4):486-517, 1987.

(Hesina et al., 1999) Hesina G., D. Schmalstieg, A.Fuhrmann, W. Purgathofer. Distributed OpenInventor: A Practical Approach to Distributed 3DGraphics, Proc. VRST ‘99, London, pp. 74-81,Dec. 1999.

(Höllerer et al., 1999) Höllerer T., S. Feiner, T.Terauchi, G. Rashid, D. Hallaway. ExploringMARS: Developing indoor and outdoor userinterfaces to a mobile augmented reality systems,Computers & Graphics, 23(6), pp. 779-785, 1999.

(Ishii & Ulmer, 1997) Ishii H., B. Ulmer. TangibleBits: Towards Seamless Interfaces between People,Bits and Atoms, Proc. CHI ‘97, pp. 234-241, 1997.

(Kato et al., 2000) H. Kato, M. Billinghurst, I.Poupyrev, K. Imamoto, K. Tachibana. VirtualObject Manipulation on a Table-Top AREnvironment. Proc. IEEE and ACM InternationalSymposium on Augmented Reality, 2000.

(Kaufmann et al., 2000) H. Kaufmann, D.Schmalstieg, M. Wagner. Construct3D: A VirtualReality Application for Mathematics and GeometryEducation. To appear in: Journal of Education andInformation Technologies, Kluwer AcademicPublishers, Dordrecht, The Netherlands, 2000.

(Krüger et al., 1995) W. Krüger, C. Bohn, B. Fröhlich,H. Schüth, W. Strauss, G. Wesche. The ResponsiveWorkbench: A Virtual Work Environment. IEEEComputer, vol. 28, no.7, pp. 42-48, 1995.

(Mine et al., 1997) M. Mine, F. Brooks Jr., C. Sequin.Moving Objects in Space: ExploitingProprioception In Virtual-Environment Interaction.Proc. SIGGRAPH ’97, pp. 19-26, 1997.

(Pausch et al., 1995) R. Pausch, T. Burnette, D.Brockway, M. Weiblen. Navigation andLocomotion in Virtual Worlds via Flight into Hand-Held Miniatures, Proc. SIGGRAPH ’95, pp. 399-401, 1995.

(Poupyrev et al., 1998) I. Poupyrev, N. Tomokazu, S.Weghorst. Virtual Notepad: Handwriting inImmersive VR. Proc. of VRAIS’98, 1998.

(Raskar et al., 1998a) R. Raskar, G. Welch, M. Cutts,A. Lake, L. Stesin, H. Fuchs. The office of thefuture: A unified approach to image-basedmodeling and spatially immersive displays, Proc.SIGGRAPH ’98, pp. 179-188, 1998.

(Raskar et al., 1998b) R. Raskar, G. Welch, H. Fuchs.Spatially Augmented Reality. In: Proceedings ofthe First IEEE Workshop on Augmented Reality(IWAR'98), San Francisco, CA, USA, A.K. PetersLtd., 1998.

(Reitmayr & Schmalstieg, 2000) G. Reitmayr, D.Schmalstieg. OpenTracker - An Open SoftwareArchitecture for Reconfigurable Tracking based onXML. To appear as a poster in: IEEE VirtualReality 2001, Yokohama, Japan, March 13-17,2001. Extended version available as technicalreport TR-186-2-00-18, Vienna University ofTechnology, June 2000.

(Rekimoto & Saitoh, 1999) J. Rekimoto, M. Saitoh.Augmented Surfaces: A Spatially ContinuousWorkspace for Hybrid Computing Environments,Proceedings of CHI'99, pp.378-385, 1999.

(Rekimoto, 1997) J. Rekimoto. Pick-and-Drop: ADirect Manipulation Technique for MultipleComputer Environments, Proc. UIST ‘97, pp. 31-39, 1997.

(Schmalstieg & Schaufler, 1998) D. Schmalstieg, G.Schaufler. Sewing virtual worlds together withSEAMS: A mechanism to construct complexvirtual environments. Presence, 8(4): 449-461, Aug.1998.

(Schmalstieg et al., 1996) D. Schmalstieg, A.Fuhrmann, Zs. Szalavari, M. Gervautz.Studierstube - Collaborative Augmented Reality,Proc. Collaborative Virtual Environments ‘96,Nottingham, UK, Sep. 1996.

(Schmalstieg et al., 1999) Schmalstieg D., L. M.Encarnação, Zs. Szalavári. Using Transparent PropsFor Interaction With The Virtual Table, Proc.SIGGRAPH Symp. on Interactive 3D Graphics ‘99,pp. 147-154, Atlanta, GI, April 1999 (patentpending).

(Schmalstieg et al., 2000) D. Schmalstieg, A.Fuhrmann, G. Hesina. Bridging Multiple UserInterface Dimensions with Augmented Reality.Proceedings of the 3rd International Symposium on

Page 24: The Studierstube Augmented Reality Project · 2017. 4. 18. · in (Schmalstieg et al., 1996) and (Szalavári et al., 1998a) was among the first collaborative augmented reality systems

Augmented Reality (ISAR 2000), pp. 20-30,Munich, Germany, Oct. 5-6, 2000.

(Shaw et al., 1993) C. Shaw, M. Green, J. Liang, Y.Sun. Decoupled Simulation in Virtual Reality withthe MR Toolkit. ACM Trans. on InformationSystems, 11(3):287-317, 1993.

(Smith & Mariani, 1997) G. Smith, J. Mariani. UsingSubjective Views to Enhance 3D Applications,Proc. VRST ‘97, pp. 139-146, New York, NY, Sep.1997.

(Stoev et al., 2000) S. Stoev, D. Schmalstieg, W.Strasser. Through-the-lens techniques for remoteobject manipulation, motion and navigation invirtual environments. Submitted for publication,2000.

(Stork & de Amicis, 2000) A. Stork, R. de Amicis.ARCADE/VT - a Virtual Table-centric modelingsystem. Proc. of 4th International ImmersiveProjection Technology Workshop (IPT 2000), June19-20, Ames, Iowa, 2000.

(Strauss & Carey, 1992) P. Strauss, R. Carey. Anobject oriented 3D graphics toolkit, Proc.SIGGRAPH ‘92, pp. 341-347, 1992.

(Szalavári & Gervautz, 1997) Zs. Szalavári, M.Gervautz. The Personal Interaction Panel - A Two-Handed Interface for Augmented Reality,Computer Graphics Forum, 16(3), pp. 335-346,Sep. 1997.

(Szalavári et al., 1998a) Zs. Szalavári, A. Fuhrmann,D. Schmalstieg, M. Gervautz. Studierstube - AnEnvironment for Collaboration in AugmentedReality, Virtual Reality - Systems, Developmentand Applications, 3(1), pp. 37-49, 1998.

(Szalavári et al., 1998b) Zs. Szalavári, E. Eckstein, M.Gervautz. Collaborative Gaming in Augmented

Reality Proceedings of VRST'98, pp.195-204,Taipei, Taiwan, November 2-5, 1998.

(Tsao & Lumsden, 1997) J. Tsao, C. Lumsden.CRYSTAL: Building Multicontext VirtualEnvironments, Presence, 6(1), pp. 57-72, 1997.

(Ulmer & Ishii, 1997) B. Ullmer, H. Ishii. ThemetaDESK: Models and Prototypes for TangibleUser Interfaces. In Proceedings of ACM UIST'97,Banff, Alberta, Canada, pp. 223-232, 1997.

(Ulmer & Ishii, 1998) B. Ullmer, H. Ishii, D. Glas.mediaBlocks: Physical Containers, Transports, andControls for Online Media, Proc. SIGGRAPH ‘98,pp. 379-386, July 1998.

(Underkoffler et al., 1999) J. Underkoffler, B. Ullmer,H. Ishii. Emancipated Pixels: Real-World Graphicsin the Luminous Room. Proc. SIGGRAPH 1999,pp. 385-392, 1999.

(Viega et al., 1996) J. Viega, M. Conway, G.Williams, R. Pausch. 3D Magic Lenses. InProceedings of ACM UIST'96, pp. 51-58. ACM,1996.

(Weiser, 1991) M. Weiser. The Computer for thetwenty-first century. Scientific American, pp. 94-104, 1991.

(Wernecke, 1994) J. Wernecke. The InventorToolmaker : Extending Open Inventor, Release 2.Addison-Wesley, 1994.

(Wloka & Greenfield, 1995) M. Wloka, E. Greenfield:The Virtual Tricoder: A Uniform Interface forVirtual Reality. Proceedings of ACM UIST'95, pp.39-40, 1995.

(Wohlfahrter et al., 2000) W. Wohlfahrter, L. M.Encarnação, D. Schmalstieg. Interactive VolumeExploration on the StudyDesk. Proceedings of the4th International Projection Technology Workshop,Ames, Iowa, USA, June 19-20, 2000.