3dm: a three dimensional modeler using a head-mounted display

Upload: srlresearch

Post on 30-May-2018

230 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/9/2019 3DM: A Three Dimensional Modeler Using a Head-Mounted Display

    1/5

    3DM: A Three Dimensional ModelerUsing a Head-Mounted DisplayJeff Butterworth, Andrew Davidson,Stephen Hench and T. Marc Olano

    Department of Computer Science, Sitterson HallUniversity of North CarolinaChapel Hill, NC 27599-3 175Abstract

    3dm is a three dimensional (3D) surface modelingprogram that draws techniques of model manipulation fromboth CAD and drawing programs and applies them tomodeling in an intuitive way. 3dm uses a head-mounteddisplay (HMD) to simplify the problem of 3D modelmanipulation and understanding. A HMD places the user inthe modeling space, making three dimensional relationshipsmore understandable. As a result, 3dm is easy to learn how touse and encourages experimentation with model shapes.1 Introduction

    The use of interactive 3D environments hasincreased the demand for complex 3D models.[9] The 3Denvironments that provide a sense of telepresence or virtualreality require a large number of models in order to give theuser the illusion of being in a specific place. This demand formore models has highlighted the fact that most modelingsystems are difficult to use for all but a small number ofexperts.[9] Through identification and removal of some ofthe fundamental obstacles to modeling we hope to make itaccessible to more users.Typical techniques used to select and displayobjects are a major hindrance to 3D modeling.[3] To place anobject in 3D requires six parameters: the position (three) andthe orientation (three). Most modeling systems (modelers)must settle for a 2D mouse augmented by a keyboard for thispurpose. This mismatch results in difficult placement andpicking of objects in modeling space. The display of modelsusually takes the form of a projection onto a 2D monitor.This has the effect o f making spatial relationships unclear.Technological improvements to 3D model display andmanipulation hardware can remove these barriers to modelcreation and understanding.Current virtual reality technology provides one

    solution to more intuitive modeling. A HMD system givesthe ability to understand complex spatial relationships ofmodels by placing the user in the models world. Within thistype of system, a hand-held pointing device supplies userswith the ability to specify 3D relationships through directPermission to copy without fee all or part of this material isgranted provided that the copies are not made or distributed fordirect commerc ial advantage, the ACM copyright notice and thetitle of the publication and its date appear, and notice is giventhat copying is by permission of the Association for ComputingMachinery. To copy otherwise, or to republish, requires a feeand/or specific permission.0 1992 ACM 0-89791-471-6/92/0003/0135...$1.50

    3D manipulation. As a result, the user can build the virtualworld fro m within the virtual world.Our source of inspiration for designing a userinterface for a HMD-based modeler is the current softwareused for 2D modeling. At one time, creating 2D modelsrequired cumbersome CAD programs. This software took along time to learn and often did not provide real-time

    interaction. Now, however, 2D drawings can be manipulatedby even the most casual users of personal computers. Thisrevolution is in part the result of intuitive drawing programslike MacDraw. One of the keys to MacDraws success is itsinherent simplicity. Most work done with it requires noreading or use of the keyboard. Rather, it provides a paletteof tools which is always available next to the model. Tochange modes, the user simply selects the tool from thepalette using the mouse. The process of 3D modeling canbecome more accessible if some of the lessons learned fromthis evaluation of 2D modeling can be applied to 3Dmodeling systems.This paper presents a HMD-based system called3d m which simplifies the task of 3D modeling byimplementing the concepts introduced above. Basictechniques fo r working within 3dms virtual world aredescribed to show how users access the various features. Theimplementation of 3dm is described through a presentationof its most useful commands. Finally, the results of actuallyusing 3dm are presented with an emphasis on new techniquesthat can be applied w ithin other virtual worlds.

    2 Prior WorkA large body of work has been done on 3Dmodeling. Although 3D input devices have been used toenhance modelers, very little modeling has been done with aHMD. Some examples o f modeling with six degree-of-freedom input devices are [l] and [S], but both of those usedtraditional 2D displays. Previous uses of HMD systems have

    concentrated more on exploration of virtual worlds ratherthan creating o r modifying them. Some examples of thiswork with HMDs can bc found in [5].Modeling using a HMD system has been exploredby Clark.[4] Users of Clarks system created parametricsurfaces by manipulating control points on a wire-frame grid.This system highlighted the utility of using a HMD forimproved understanding and interaction with models. LikeClarks system, 3dm relies on a HMD to help simplifymodeling, but 3dms intuitive user interface design alsomakes it easy to learn and use.

  • 8/9/2019 3DM: A Three Dimensional Modeler Using a Head-Mounted Display

    2/5

    3 Implementation3dm was developed using a VPL eyephone as thedisplay device and Polhemus trackers to track the head andhand. A 6D 2-button mouse, developed at UNC-CH, was theinput device. The images were rendered using thePixel-Planes 4 and Pixel-Planes 5 high-performance graphicsengines developed at UNC-CH.[6][7] Currently, all modelscreated with 3dm are made up of hierarchical groups of

    triangles.3.1 User Interface

    In addition to the model, the virtual world of 3dmcontains the components of the user interface. The mostimportant of these are the toolbox and the cursor. The cursorfollows the position of the hand-held mouse, giving the usera sense of hand position in the modeling space. The toolboxis the means by which most actions are performed.Some of the user interface components are simplyhelpful markers that can be turned off, unlike the toolbox andthe cursor, w hich are always visible. The user stands on amagic carpet which marks the boundaries of where thetracking system operates. Remaining within tracker range is

    important because the virtual world will begin to tilt as theuser moves farther out of range. Below the magic carpet lies acheckered ground plane, above which the model is usuallycreated. Additional reference objects, such as coordinateaxes, can be turned on by the user.

    Figure 1: The toolbox as seen by the user.The toolbox initially appears suspended in spacenear the users waist, but it can be moved to a moreconvenient location. The toolbox remains attached to theuser as he or she moves around the modeling space, or it canbe disconnected and left anywhere above the magic carpet.The toolbox is organized into cells containing 3D icons.Each icon represents either a tool, a command, or a toggle.Many of these icons can optionally appear in pulldownmenus at the top of the toolbox in order to reduce clutter.Icons perform actions when they are selected withthe cursor. Tools change the current mode of operation asreflected in the shape of the cursor. For instance, when theuser reaches into the toolbox and selects the flying tool, thecursor takes the form of an airplane. Selecting a commandperforms a single task without changing the current m ode of

    operation. Toggles change some global aspect of 3dm. Anexample is the snap-to grid toggle, which restricts cursormovement to a 3D grid when it is on.Exploring the model provides understanding of its3D shape, so 3dm supports multiple methods of navigatingin the modeling space. The HMD system used for 3dm allowsthe user to walk through the model space a few paces in anydirection. Walking simply does not provide the range of

    movement needed for most models, so 3dm supportsflying, a commonly used method of traveling throughvirtual worlds.[2] Flying consists of translating the userthrough model space in the direction that the cursor ispointing. Flying moves the magic carpet, which carries theuser and the toolbox along. A method of navigation that isthe complement of flying is grabbing the world. Grabbingthe world allows the user to attach the modeling space to thecursor and then drag and rotate it. Grabbing can be used tobring a feature of the world to the user rather than forcing theuser to walk or fly to the feature.Models often require manipulation at vastlydifferent scales. To facilitate this type of work, the user canbe scaled using a process called growing and shrinking. Thisscaling does not affect the model: it changes the usersrelative size with respect to the model. The user could shrinkdown to bird size in order to add eyelashes to a model of anelephant and then grow to the size of a house to alter thesame models legs. Since the user can become disoriented byall of these methods of movement, there is a command thatimmediately returns the user to the initial viewpoint in themiddle of the modeling space.The user receives continuous feedback in a varietyof ways. The HMD system provides all visual inpu t to theuser, so the display must be updated between 15 and 30 timesper second. Even during file loading and other slowoperations, the screen is updated and the head is tracked.Rubber banding is implemented in many situations: whendefining a new triangle, scaling or moving an object, andextruding. Predictive highlighting shows the user whatwould be selected if a mouse button were pressed. Thishighlighting is used in the toolbox, and even moreimportantly, when marking vertices. Whenever the cursor isnear a model, the nearest vertex is highlighted, giving theuser an indication of which vertex would be operated onbefore actually attempting the operation.

    Figure 2 : A triangle being added to a model. Demonstratesrubber banding and snapping to nearby vertices.

    136

  • 8/9/2019 3DM: A Three Dimensional Modeler Using a Head-Mounted Display

    3/5

    3.2 Tools and CommandsAlthough many tools are available in the 3dmtoolbox, it is more useful to understand the general classes oftools supplied to the user than to enumerate all of the specifictools. Most o f these tools were chosen because of theirproven utility in pre-existing modelers.

    3.2.1 Surface CreationSurface creation is the central purpose of most 3Dmodeling, so 3dm provides more than one method forcreating surfaces. A triangle creation tool exists forgenerating both single triangles and triangle strips. Thecorners of these triangles are specified by pointing andclicking the mouse, so the triangles are created in theirdesired locations rather than appearing in a building areaand then being moved into the model space. Preexistingvertices may be used during triangle creation to allowtriangles to share corners or entire edges, making seamlessconnections easy.The extrusion tool supplies a more powerful andmore specialized method of triangle creation. This toolallows the user to either draw a poly-line or select one fromedges already in the model and stretch it out into an extrudedsurface. The extrusion is performed by dragging the leadingedge of the surface with the mouse. Because the mouse can betwisted and translated arbitrarily during the extrusion, itbecomes easy to create complex surfaces with this tool. Inaddition, the leading edge of this new su rface can be scaledand then extruded again as many times as necessary. Thisform o f extrusion can rapidly create such objects as walls,legs, tree trunks, and leaves.The last surface creation too ls facilitate creation ofstandard surface shapes. Currently box, sphere, and cylindertools exist. They each allow the user to interactively stretchout an arbitrarily proportioned wireframe representation of astandard shape. When the wireframe representation has thedesired proportions, it is turned into a triangulated surface.

    3.2.2 EditingSince surfaces are rarely in exactly the desired shapeupon creation, it is important that surface editing be an easyoperation. The most commonly used editing tool is themark/move tool. This tool provides a method of graspingand moving arbitrary portions of the model. Not only canentire objects be grabbed and moved with the mouse, butselected groups of vertices can be moved in order to distortpart of an object. Scaling can also be performed on eitherentire objects or groups of vertices. During both movementand scaling, the user sees the model changing in real time.This interaction decreases the number of edits needed to make

    a desired change. The marking aspects of this tool are used tomark arbitrary portions of the model for operations withother tools.Familiar editing operations fro m drawing programsare a group o f 3dm commands that facilitate rapidexperimental changes. An arbitrary number of triangles orentire objects can be cut, copied, pasted and deleted. Thesecommands provide easy reuse of existing objects.An undo/redo stack is provided for reversing anynumber of operations from any tool or command. ASoperations are performed, the changes they cause to the

    model are stored in the undo/redo stack. The undo commandcan then be used to pop changes off of this stack to undo asmany operations as necessary. These undo operations canthemselves be undone with the redo command. The undo/redocommands encourage experimental changes to the modelbecause no operation can cause permanent damage.3.2.3 Hierarchy

    The hierarchical features of 3dm provide methodsfor organizing complex models. Grouping can be used toassociate triangles and possibly other groups to more easilymanipulate them as a whole. These groups can be insfamed.An instance is similar to a copy of a group that can bearbitrarily translated, rotated, and scaled. However, thedifference between an instance and a copy is that theinstances o f a group are all linked to the same basic shape. Ifthis shape is changed, then the change is reflected in allinstances at once. An example where instancing would beuseful is in a model of a large building. Suppose thathundreds of chairs were in this building. If one model o f achair were instanced many times to make these chairs, then achange to a single chair would be reflected in hundreds ofplaces throughout the building.Groups can be organized into a hierarchyrepresented by a directed acyclic graph. This type ofhierarchy is particularly well-suited to modeling articulatedfigures. The ability to instance groups and impose ahierarchy on them helps to organize models.

    4 ResultsActual modeling sessions have shown that 3dm isefficient f or rapidly prototyping models. Organic shapes,like rocks and trees, have proven to be particularly goodsubjects for 3dm. These shapes are easily created in 3dmbecause it provides a good sense for spatial relationships.Users of 3dm have commented that they feel a sense ofcontrol, because they can reach out and grab any part of the

    model with ease. The ability to make these quickmodifications encourages the user to experiment with shapesuntil they are satisfactory. However, 3dm has shownweakness in the area of constraints and models thattraditional CAD and drawing programs create well. Forinstance, 3dm has no way of keeping two polygons parallel,causing some models to appear irregular.The extrusion tool is an example of a traditionalmodeling tool that has become even more powerfu1 becauseof its use in a HMD framework. In most modeling systems,extrusion is performed by moving one or two spatialparameters at a time. 3dm users often alter many parametersat once during an extrusion by twisting and translating thenew surface. Extrusion in 3dm often consists of many short

    extrusions. In between these short operations the leadingedge of the extruded surface is often scaled and twisted. Theresult is that complex surfaces can be rapidly created with aneasy to use tool.Some initial solutions to 3dms lack of constraintshave been to add toggles in the toolbox for a snap-to grid anda snap-to plane. The snap-to grid constrains the position ofthe cursor to the nodes of a regular 3D grid. The resolution ofthe snap-to grid is dynamically modified to be appropriate tothe users current grown or shrunk size. The snap-toplane gives the ability to constrain cursor movement to 2

    137

  • 8/9/2019 3DM: A Three Dimensional Modeler Using a Head-Mounted Display

    4/5

    dimensions. The snap-to constraints help in making regular the Workshop on Interactive 3D Graphics, Octoberobjects, such as mechanical parts. 1986. Sponsored by ACM SIGGRAPH.5 Conclusion

    3dm draws techniques o f model manipulation from[61

    both CAD and drawing programs and applies them tomodeling in an intuitive way. A HMD modeling system usesthese tools to simplify the problem of 3D modelmanipulation and understanding.

    Fuchs, Henry, Jack Goldfeather, Jeff P. Hultquist, SusanSpach, John D. Austin, Frederick P. Brooks, Jr., JohnG. Eyles, John Poulton. Fast Spheres, Shadows,Textures, Transparencies, and Image Enhancements inPixel-Planes. Computer Graphics, 19(3):111-120,February 1985. SIGGRAPH 85 ConferenceProceedings.3dm is a step toward making 3D modelingaccessible to unsophisticated users. It supports users naturalforms of interaction with objects to give them betterunderstanding of the shapes of their models. Even a noviceuser can understand how to manipulate a model by reachingout and grasping it. Users are encouraged to experiment withmodel shape because 3dm facilitates making rapid changes.The effects of a change to a model can be clearly understoodbecause the user can explore the model using a variety ofintuitive navigation techniques.

    171

    PI

    191

    Fuchs, Henry, John Poulton, John Eyles, Trey Greer,Jack Goldfeather, David Ellsworth. Steve Molnar, GregTurk, Brice Tebbs, Laura Israel. Pixel-Planes 5: AHeterogeneous Multiprocesso r Graphics System UsingProcessor-Enhanced Memories. Computer Graphics,23(3): 79-88, July 1989. SIGGRAPH 89 ConferenceProceedings.

    Advanced users are also empowered by 3dm. Manyof the tools borrowed from existing modeling systemsbecome more powerful when used with a HMD. One source ofincreased utility is the fact that complex operations caninvolve simultaneous modification of many spatialparameters. Examples of tools that take advantage of this areobject placement and extrusion, which both allowcombinations of rotation and translation in a single step.By concentrating more functionality into each operation,fewer ope rations are needed to perform a task and models canbe created faster.

    Sachs, Emanuel, Andrew Roberts, David Stoops. 3-Draw: A Tool for Designing 3D Shapes. IEEE ComputerGraphics & Applications, November 1991, 18-26.Sproull. Robert F. Parts of the Frontier are Hard toMove. Computer Graphics, 22(2):9, March 1990.Symposium on Interactive 3D Graphics.

    6 AcknowledgementsWe would like to thank Rich Holloway and ErikErikson for VLIB and all of their software and hardwaresupport. We would also like to thank Henry Fuchs, FredBrooks, and the whole Pixel P lanes team for supplying us

    with the graphical environment needed to implement 3dm.References111

    PI

    131

    t41

    151

    Badler, Norman I., Kamran H. Manoochehri, DavidBaraff. Multi-Dimensional Input Techniques andArticulated Figure Positioning by Multiple Constraints.Proceedings of the Workshop on Interactive 3DGraphics, October 1986. Sponsored by ACMSIGGRAPH.Blanchard. Chuck, Scott Burgess, Young Harvill, JaronLamer, Ann Lasko, Mark Oberman, M ichael Teitel.Reality Built For Two: A Virtual Reality Tool.Computer Graphics, 22(2):35-36, March 1990.Symposium on Interactive 3D Graphics.Brooks, F rederick P. Jr. Grasping Reality ThroughIllusion: Interactive Graphics Serving Science.Keynote address at the Fifth Conference on Computersand Human Interaction. PubIished in CHI 88Proceedings, May 1988, l-1 1.Clark, James H. Designing Surfaces in 3-D.Commun ications of the ACM. 19(8):454 -460, August1976.Fisher, S. S., M. McGreevy, J. Humphries, W. Robinett.Virtual Environment Display System. Proceedings of

    138

  • 8/9/2019 3DM: A Three Dimensional Modeler Using a Head-Mounted Display

    5/5

    Proceedings1992 Symposium on Interactive 3D GraphicsCambridge, Massachusetts29 March - 1 April 1992Program Co-Chairs

    Marc Levoy Edwin E. CatmullStanford University PixarSymposium Chair

    David ZeltzerMIT Media Laboratory

    Sponsored by the following organizations:Office of Naval ResearchNational Science Foundation

    USA Ballistic Research LaboratoryHewlett-PackardSilicon GraphicsSun MicrosystemsMIT Media Laboratory

    In Cooperation with ACM SIGGRAPH