Virtual World Building Tools, Methods, and Philosophy
by
Lane Abenroth
Dongmei Gui
Christian Scholz
March 10, 1999
Prepared to partially fulfill the requirements of INDE 543 as taught by Professor Tom Furness
Building Virtual Worlds
The main thrust of this report is to examine the process by which VR architects can manufacture VR worlds. The report begins with a discussion of the components of a Virtual World. A world can be broken down into several layers—the more layers in the world, the more realistic it will be. After the scope of a world has been determined, actual construction of the world must take place, most often using pre-existing software. While most world creation is currently done from without the virtual world, the software discussed in this document is examined for its native world-creation ability, as well as for the potential its methods and operations have for application within a virtual world to aid in constructing that virtual world. A variety of software systems are examined, ranging from CAD applications to virtual world creation kits to game world development tools. This report will then discuss some of the more philosophical aspects of virtual world construction and the process of world design.
A virtual reality system consists of three basic components or subsystems: VR engine, I/O channels, and user(s). The VR engine handles dynamic model loading, graphics rending, acoustic updating, hepatic providing etc. It interacts with user through I/O channels. User can control the input to VR engine through certain devices, and feel the output generated by VR engine, displayed or realized via output channels. Their relationships are shown in the following picture:
Figure 1: Components of Virtual World
User as a part of the VR system is axiomatic. Without a user, there is no way for people to know what the virtual world is, how it works.
VR engine here means a set of objects and rules governing the objects. Here "object" includes not only mechanical, but also its data and capability. Object is autonomous. It acts in its own way and doesn’t need specific instruction from outside. VR engine is the heart of a virtual reality world, how it behaves determines how much reality the user can feel through the I/O channels.
Also important are I/O channels, with which user can influence the virtual world and see the results. Input channels are usually devices that can convert user’s actions to system recognizable commands (a process like perception), which may incur certain movements /changes inside the VR system as the result. The result then can be output through different output devices (a process like reaction).
The two processes described above for VR engine are just counterparts of the two processes for user. What user perceives is the VR system’s response/reaction, what the VR system perceives is the user’s action/response. There may be a beginning of who initiated an action, but this is not important, the point here is VR engine is actually the same level object as the user. Then the natural conclusion is that VR engine should contain the same model the user has (in his/her mind).
As we all know, the VR engine part is the most significant part that we need work on. To make a VR engine works better: interpret more user action, and output near real results, we need to make the VR engine works like the real world that in user’s mind, ideally. However, in fact, we cannot build a real world that the user has in his mind, so what we can do is to build the virtual world possibility similar to what the user’s world is.
As of describing what a real world is, we have our tools: mathematical modeling. The figure1 shows different level of modeling we can do to characterize the virtual world we build. Previous research and applications have achieved a lot in modeling the world in geometric level. But we can see from the picture, there are still several levels of modeling to the "real" world need to be achieved.
The basic layer is geometry. At this level, the model only contains the most elementary, crucial information about the virtual world, from the user’s perspective. The information includes shape of virtual objects (polygons, triangles, vertices) as well as their appearance (texture, surface reflection coefficients, color), location, and so on.
To build virtual world in this level, you can do it "from scratch" using graphics libraries, you can also buy existing models from commercial databases. When the objects needed are not parts of existing database, you can choose 3-D digitizer, which can be used to get 3-D point information, wire frame vertices, curves and faces. Another way to create custom objects is to use world-building software, such as VRML world creators, CAD packages, game development tools, photographic analysis tools etc. Most of them can import from/export to different format. With them User can interactively create the object’s model. Finally, a more recent way is to edit and build the virtual world while immersed in the virtual world. The following table summarizes the various methods to model 3-D object geometry.
Table 1: Methods for Modeling 3D Object Geometry
METHOD |
FEATURE |
EXAMPLES |
Standard graphics libraries |
Tedious, requires skill |
GL, XGL [Silicon Graphics Inc.] PHIGS [ANSI] |
Commercial 3-D databases |
Vertices list, connectivity, static model |
Viewpoint Inc., etc |
3-D Digitizers |
Allow custom models |
Mira Imaging, Polhemus Inc., etc |
VRML World Creator CAD programs Game development tools Photographic analysis |
Interactive. May have object shape, texture library, template etc. |
VR Creator I-DEAS, Pro/E, SolodEdge WorldCraft 3Dbuilder |
Immerse VR builder |
Interactive, complex simulations, Immerse |
Division Ltd., Dimension, Ltd., etc |
(Adapted from Virtual Reality Technology, John Wiley & Sons, 1994)
Simply specifying an object "static" 3-D geometry is not sufficient. We need to handle object movement and different perspectives. The move of the Object in space can be represented as translation, rotations and scaling. If objects move, then the transformation becomes a function of time. There may be instance when we need to verify that objects do not collide with each other. This involves calculating the relative position of the objects.
But everything is just abstract, no weight, no internal structure, no material construction, and no special behavior. To sum up, they possess no real physical features that a real object should have. People have done a lot of job at this level; it is relatively a mature level comparing to others. We have object library that contains pre-built objects (may include shapes, textures, behaviors, sounds etc.) ready to use for constructing a virtual world.
For example, if we build a simple underwater world with a water tank, several fishes and some zooplanktons. In this level, the water can be transparent, not existing at all. The fish can just be like a fish, it doesn’t require it to swim like a fish, and zooplanktons are no more small dots in the space. But VR is to be used more than video games or simulated "flyby", so we need go further.
A higher level is physical level. The laws of physics dominate here. The behavior of everything in this level should be abided by basic laws of physics, or kinematics, narrowly speaking. Objects may have internal structures, and certain forces bind them together. In certain circumstances, these internal structures can corrupt under certain laws too. The environment must be modeled too. All subjects interact with the environment, and should follow the laws of physics.
Virtual objects are modeled physically by specifying their mass, weight, inertia, surface texture (smooth or rough), compliance (hard or soft), deformation mode (elastic or plastic) etc. These features are merged with geometrical modeling and behavior laws to form a more realistic virtual model.
Using above example, the fish’s movement should show the water resistance, the lighting condition should be different at different places of pool (depth, distance related), and so on. However, at this level, how fish swims is not defined, say, a fish can move either forward or backward, eat or vomit zooplanktons. Thermodynamics defines the time arrow, but it is not necessarily be used at this level. How fish acts to get the food and how zooplanktons reproduce themselves (or added by the VR engine) will not have an effect on the output. However, the real life experience requires a better virtual world be abided by the laws of biology, ecology, and more…
This level gives more restriction or rules to the virtual world. We have to obey laws of thermodynamics, chemistry, as well as biology and ecology. There should be a biological model of the fish, beside the physical model. Also we need an ecological model of the environment, in addition to the material model. For each live thing, we need to have the algorithm for its behavior. This can be obtained from the achievements of animal behavior research. This part is the hardest, and we may even don’t know exactly what the algorithm is -- like what algorithm is for human behavior? But for lower intelligent animals, we do know a lot, and they can be used to program the behavior of these animals. The virtual world will be more complicated and there are more interactions within the virtual world itself. Much more computation power is required for each object in the model, and they need to be synchronized well to output to user.
At this level, the fish won’t swim randomly, they will distribute themselves according to the distribution of food, and they won’t always swim, they have their own way of life. They are "really" - in a sense - a life form. Ecological rules will maintain the food chain, limit the population of fish, and do what you put into the model.
User interaction will be better served at this level, because there are more restrictions to make it real. If user immerses into the system as a bigger fish, the other fishes will probably flee when seeing this monster. Then what the user sees will be a nicer virtual world, than what is in level 2.
The ultimate virtual world is the real world we live. How to replicate a real world in computer requires ultimate understanding of human intelligence and the essential construction of human society and the laws governing our behaviors. This, in fact, is a high level biological thing, but since we, human beings, are also part of it, it makes the system distinguished from other biological systems that are purely the subjects under our observation and control.
At this level, you can really construct a world that user cannot tell it from. However, at this stage of computer science and technology, it is just a sci-fi topic now.
The four levels of modeling are not separate; each lower level is contained in higher levels by adding more restrictions, rules, and details of the object. Currently, we did pretty well at the geometry level, and there are some good jobs done at physics level, at least partially, we don’t have any good work done at the biology level. So, it’d be great to design and build a virtual world that lives at biology level, the user may feel hard to tell it’s true of not if it is beautifully done (like a virtual fish tank).
There are currently hundreds of different programs that can be used to create virtual worlds and objects. Each one is slightly different, but they all perform the same task: to create virtual objects that may or may not have any basis in reality. This section will examine CAD packages, Virtual World Creators, 3D game development packages, and 3D/2D construction packages. All four genres of program can be used to make virtual objects and worlds, although the approach and end product will differ.
CAD packages (I-DEAS, Pro/E, SolidEdge, UniGraphics)
With VR being used more and more in architecture and engineering fields to provide product visualization and rapid prototyping, several major CAD packages have begun offering export and import options for VRML files. Additionally, as with trueSpace4, some of the CAD packages have made substantial improvements in interface design, allowing for heightened drawing productivity.
The VRML support included in most CAD systems is only on the object level, and does not include support for creating or exporting VR worlds. This is due to the fact that engineering CAD systems are, by and large, intended to model single parts or assemblies of single parts. One could, theoretically, make a world assembly and export that, but it would be just as easy to use a true VR world creator instead and use part objects created in the CAD systems. Several different CAD systems will be investigated in the following paragraphs.
SDRC markets I-DEAS, which is a high-end, fully featured design package. I-DEAS contains a solid modeler, assembler, drafter, FEA module, CAM module, and numerous other applications designed to offer an engineer everything needed to carry a design from start to finish. The interface is one of the better icon-driven systems in existence, and commands are context sensitive to reduce menu clutter. Panning, Zooming, and Rotating are all completely transparent commands that can be executed at any time with incredible ease. In fact, mouse-driven view manipulation using the I-DEAS keyboard shortcuts is faster than using most 3D controllers, such as the SpaceBall. I-DEAS is capable of exporting drawings, dimension, PMI, and hyperlinks to VRML files. It also supports web connectivity of parts from within the design environment, allowing a design to take on a global nature. It would not be a stretch to say that one could create a VR world contained within a product design—it would be a world without visible inhabitants, but the objects in it would be in a constant state of change, and the users of the world would be able to interact with each other via the objects (parts) in the world. PTC markets Pro/Engineer, a rival to I-DEAS. Until very recently (version 20), Pro/E sported one of the most poorly-designed interfaces available in CAD software (featuring infinite cascading menus). It now uses an icon-based approach similar to I-DEAS and most standard Windows programs. Pro/E is also able to export parts and assemblies to VRML files, and it automatically generates four VRML files of varying detail for each part exported. This allows a user to use many detailed parts in a VRML assembly, yet substitute in low-resolution proxies should the processing demands exceed the capabilities of the machine.Solid-Edge is marketed by
UniGraphics Solutions as a low-end solid modeler designed to compete with AutoCAD and SolidWorks. It has what is perhaps the fastest interface of any CAD package. Recent tests by independent firms measured the number of commands, keystrokes, and mouse clicks needed by users of several CAD packages, and Solid-Edge beat the next closest competitor by over 30%. This is the result of an icon-driven approach combined with a highly intelligent cursor that attempts to sense the design intent of the user and filter out all non-essential options. It is an extremely easy program to learn, and is ideal for engineers creating parts and assemblies on Wintel machines. Solid-Edge is also capable of exporting to VRML format. Additionally, it offers full OLE support, which provides a way to link parts to other programs. It would be possible to generate objects for 3D worlds in real-time based on parameters taken from those worlds.Figure 2: Solid-Edge Screen Interface demonstrating the lack of menu clutter
CAD packages may offer a rather complicated way to produce virtual world objects, but the perhaps the greatest contribution they make to the field of VR world building is in the realm of interfaces. Due to the fierce competition among CAD packages to be the most productive software on the market, a number of very intuitive interfaces have been created that would be an excellent basis for a VR world building application.
A VRML World Creator is an application used to create VRML worlds. The author is usually presented with an interactive user interface from which the author can add, delete, and modify scene content. Most standard world creators come with libraries of pre-generated content that can be placed into a VRML world, as well as provide a means of creating new content for placement. Additionally, a VRML WC should be able to provide a means to script behaviors and events involving objects inhabiting the VRML world.
PLATINUM VRCreator is one such authoring tool that lets users create VRML 2.0 content that can be experienced through any platform supporting a VRML 2.0-compliant viewer.VRCreator is designed to be powerful yet easy to use. It comes with a library of over 1,000 drag-and-drop resource objects (including 3D models, colors, textures, sounds, and JavaScript behaviors) that can be used to create state-of-the-art VRML content. Users can easily create interactive animations using VRCreator's keyframe editor. VRCreator's embedded runtime viewer allows users to review their content within the authoring environment.
Experienced developers familiar with VRML 2.0 can use a host of powerful tools that allow for more rapid content development. Users can create their own custom objects using VRCreator's powerful 3D modeler and can create custom behaviors using the built-in Route Editor. VRCreator provides access to VRML 2.0 scene graph, allowing users to edit properties of VRML 2.0 nodes. It also provides graphical editors for the VRML 2.0 Switch and LOD nodes, assisting users in optimizing the performance of their VRML content.
Another popular VRML World Creator is
Caligari’s trueSpace4, which is primarily a 3D modeling and animation suite that boasts some innovative interface enhancements. trueSpace4 is capable of developing models for all popular 3D modeling/rendering/animation packages, as well as for VRML 2.0 worlds.A number of trueSpace4’s enhancements are interface-related. Caligari’s idea was to take the standard menu and icon driven interface and meld it with the 3D workspace in which objects were created. This allows the user to immerse themselves more completely in the creation of their objects, as they are not forced to leave the workspace as often to select menu items. Instead, they simply initiate the commands from the workspace using a floating tool palette or "widgets". Widgets, as Caligari calls them, are small 3D objects that act as context-sensitive icons. When an object, face, vertex or any other modifiable feature is selected, a string of widgets will be strung out like beads on a string from the selection. As the mouse cursor is dragged over each one, it begins spinning to indicate it has the command focus. Some widgets can be clicked to yield yet another widget string that angles off in a new direction. In the pictures below, both the tool palette and the widgets can be seen.
Figure 3: Caligari trueSpace4 interfaces—command palette (left) and widget strings (right)
The interface that trueSpace4 sports is certainly unique among 3D modeling packages available, and such interface features would be invaluable in a 3D design environment.
Game Development Tools (WorldCraft)
One area that has perhaps been overlooked by much of the VR community is that of entertainment. Many "VR" games have been released, and most have been rather disappointing flops. The first VR games came into existence in the 1980’s in the form of MUDs, or Multi-User Dungeons. These were text-based online games in which participants had avatars that were defined through text descriptions and numerical statistics. They could interact competitively or cooperatively with other players. These worlds were very popular in certain circles, but the technical know-how needed to access them was involved, and prohibited many computer users from playing them.
In 1992, IdSoftware released Wolfenstein 3D, which placed the player in a private 3D world. The world was populated with "Nazis" and the goal was, as with many computer games, to kill them all. It was rather simple in its execution, but it was the first 3D, first person POV (FPPOV) be released, and it was released partially as shareware. This boosted its popularity tremendously. Another selling point was that map editors existed, and players were able to generate their own virtual worlds.
In 1993, IdSoftware released Doom, which upped the ante on 3D FPPOV games. Doom featured decidedly more complex geometry than any previous FPPOV, and it also offered multiplayer support for up to eight people. For the first time ever, ordinary people could participate together in a virtual world on their home computers. Predictably, the first thing most people did was kill each other, although options for cooperative play were included. Doom initially offered only LAN, modem, and serial support, but through the use of Kali (which allowed you to simulate a LAN over TCP/IP), players were soon able to meet over the Internet for cooperative or "deathmatch" play. As with Wolfenstein, it was not long before several editors appeared and players were again making new worlds for their use. Since Doom sported much more advanced geometry options, it was possible to make models of well-known locales for use in on-line play.
In 1996, IdSoftware released Quake, which took the FPPOV game to the next level. Until Quake, the worlds featured in Doom and its ilk were all "planar"—a player could only look straight ahead or at slight angles of elevation or depression. Worlds had to be "ramblers"—like a rambler-style house, they could not possess any floors or items that existed on top of other items. For this reason, bridges, porches, second floors, basements, spiral staircases, etc. were all impossible. This was due to the fact that the games defined objects through a 2D mask rather than a 3D one. Quake, however, defined its worlds in true 3D. This meant that the user could look everywhere—up, down, left, right, etc. The user could also walk over bridges, climb onto rotating parts, etc. It was so real that motion cues (player weapon bob, velocity-dependent footsteps, etc.) had to be put in to keep people from becoming ill when moving through it. Along with additional multiplayer support, Quake also offered OGL and 3dFX graphics acceleration, which took the realism to new heights. Another feature new to FPPOV games was that of customization of all aspects of the game. Players were soon writing code that generated new monsters and weapons, as well as useful tools for navigating the virtual worlds (a grappling hook, for one). Other players designed modifications (or mods, as they are called) that allowed players to work in teams to overcome obstacles. They were able to do this because the game designers implemented a programming language (Quake C) into the product.
In 1997, IdSoftware released Quake II, which was simply an improvement of Quake and offered none of the groundbreaking advances that Quake and Doom had. One year later, Valve Software released HalfLife, which was based on the Quake II engine. HalfLife supported 32-player support and some of the most realistic environments found in an FPPOV. It was also the first FPPOV game to include a world editor on the install disc. WorldCraft 2.0, as it was called, was actually a shareware editor that had begun as an effort to edit Quake maps and had evolved into a multi-game map editor.
WorldCraft allows users to create game worlds from scratch using simple primitives. If a user creates a detailed room or object, it can be saved in a library for use in other worlds. The interface is quite clumsy in many ways, but it allows the user to have full control over every aspect of world creation. Users can build structures that are dynamic (buildings with walls that collapse, towers that can be knocked over to form bridges, etc.), objects that possess scripting (characters that one can interact with, for example), and atmospheric effects that are dependent on structure material (footsteps in a steel corridor will sound metallic and will echo, footsteps on sand will sound crunchy and muffled). While these worlds are not VRML worlds, they possess a stunning amount of detail, and benefit from the higher graphics speed that the game engines provide.
Figure 4: WorldCraft 2.0 Interface
Figure 5: HalfLife worlds created using WorldCraft 2.0
While FPPOV game editors lack much in the way of a streamlined interface, they are noteworthy for the complexity of the worlds that they generate. It would be easy to dismiss the medium as frivolous, except that the computer entertainment industry keeps pushing the technological envelope to new heights, and because of this, gaming gains far more exposure than most other VR applications to the general public.
While FPPOV games provide some of the more realistic and immersive VR environments in entertainment, there is another approach to Virtual Worlds that has far more depth and detail, if not the realism, than FPPOV games. The game is called Ultima Online, and it is the single largest multi-player world in existence on this planet, with 100,000 users at last count.
UO is based on a fantasy role-playing game that has existed for over a decade, and has seen 8 reincarnations during that time. In UO, participants are presented with a top-down isometric view of the world that is centered on their avatar. They can choose to do whatever they wish in this world. Some participants choose a life of adventuring or thievery. Others become accomplished shepherds or carpenters. Some avatars purchase houses and furnish them, whereas others purchase a house and rent floorspace to merchants. UO is possibly the only online game where one can lead a completely peaceful existence as a skilled craftsman in a rural village.
What is most notable about UO is that it does allow the world to be modified in real-time by participants in the world. This would be the ultimate in virtual world construction. Of course, the UO building options are limited, but the ability to place one’s own structures in such a large and dynamic world is definitely a step in the right direction.
Photographic Analysis (3Dbuilder)
There are two basic methods that a computer can use to represent a 3D object: polygon/vector-based pictures and raster pictures. Polygon/vector-based pictures are created by using mathematical formulas to manipulate large collections of polygons and other vector-based constructs that are stitched together to approximate a real object. Due to the fact that this approach uses many small polygonal planes to approximate all manner of shapes, polygon pictures tend to have a "blocky" feel to them that is only alleviated by increasing the number of polygons used to simulate the object.
The second method uses pre-generated raster images that can be indexed and accessed to provide whatever viewpoint is desired. The obvious downside to this is that you would need an infinite number of fairly large files to account for all viewing angles. The benefit to rasterized images is that they possess a high degree of detail that polygon models are hard pressed to duplicate.
By using both methods in conjunction with each other, it is possible to generate highly-detailed models of objects that have all the speed of polygon models and the detail levels of raster images. By mapping a rasterized texture onto a polygon face, it is possible to transfer the detail of the raster image onto the polygon object. Texture mapping, as it is called, is used quite commonly to lend an air of realism to CAD models by mapping material surface textures onto part models. Other forms of mapping can also be used. Bump mapping allows the user to project a topographic map of a surface onto a polygon model. Opacity mapping allows the user to specify areas of differing transparency on a polygon model.
If one wishes to generate accurate replicas of real-world objects in VR, it is necessary to record the physical dimensions of the object as well as its "textures". This could be a very tedious process, as the object must be measured and drawn, and then its textures must be photographed and transferred to the model.
3D Builder is a tool that allows a user to take many photographs of real-world objects and then build the objects in question from the photographs. The user specifies which vertices are visible in each view of the object, and then performs a massive geometry analysis to determine what the 3D structure of the object is. This allows the user to create both the model and the textures from the same photo.Virtual World Design Philosophy
The challenges faced by creators of virtual worlds are note purely technological. Indeed, as the technology of virtual reality has advanced, a more difficult challenge has been revealed: Our ability to build complex worlds rich in detail and content often outstrips our ability to give them meaning. Indeed, the process of designing a meaningful VE is more challenging than actually constructing it. While the technological advances in software and hardware have reduced the time to construct a VR world from days and weeks to hours, it is now clear that VR is more than the construction of reality inside a computer. Davis et al succinctly questions classical definitions of VR as insufficient to address new problems and limitations.
What do we gain by making a virtual physical construction? Nothing, unless we abandon some of the simplistic assumptions about virtuality. We are faced with a rich variety of choices. What should inform those choices? Even supposing that the replication of reality were possible in VR, there would be many occasions when there was little to gain by doing so.
Even in applications such as computer-based training (CBT) where the accurate replication of reality is useful, Johnson et al claim that "…it is not sufficient to focus just on maximizing the fidelity of the object renderings and behaviors. One must also consider how the environment supports the delivery of instruction, and facilitates the effective learning experiences."
For virtual worlds to be meaningful places where people are enriched for the experience, designers must acknowledge that is not enough, nor even possible, to replicate the physical world. Photorealism, perfect image registration, multi-modal high-bandwidth interfaces and other technological breakthroughs will be wasted if virtual worlds have no deeper meaning than the average video game.
Basic design considerations of virtual environments
Ideally, constructing virtual worlds is an intentional process based upon the designers thoughtful (hopefully) analysis of the project. The designer is confronted by a dizzying array of software, hardware and research with very little guidance in how to use these tools effectively to create ‘place’ from mere ‘space’. The first step is to identify the key characteristics of VR by which we can begin to measure the effectiveness of the project. Heim (1998) refers to the ‘The Three "I"s of virtual reality’: immersiveness, interactivity, and intensity of information. Davis (1996) identifies the following key characteristics of VR:
Spatiality - how the designer makes use of space.
Virtuality – telepresence, or the sense of ‘being there’.
Representation – the link between spatiality and virtuality.
The choices made by the designer about how a virtual world should appear to the user and what the user may do there should be based upon what the virtual world represents. In other words, the manner in which space is used should mean something to the person experiencing it.
Physical architecture as metaphor for virtual architecture
Architects employ the means and methods of that discipline to transform a geographic location into a place that expresses certain social values. Recent definitions of architecture extend these means and methods to the transformation of virtual space. Campbell (1996) offers his notable hypotheses concerning how constraints, architectural parti, hyper-links, making of place and cognition influence the design and construction of virtual worlds. Virtual worlds impose a different set of constraints upon the designer than the physical world. These differences arise from the complete absence of natural laws that guide the design of physical spaces. While there is no gravity, property lines, climate or geographic boundaries, designers of virtual worlds are primarily constrained by technology. This relative lack of constraints on virtual design simultaneously creates new possibilities and imposes new responsibilities for the designer. For instance, the acoustics of a virtual environment are not dependent on the geometry or material characteristics of the space. It is possible to create the visual ambience of a street café with the acoustic characteristics of a small jazz club. Instead of using point sources of light, it would be possible to create spaces where the walls themselves are luminous. Yet the designer must also be aware that the absence of physical laws in virtual spaces can create problems for the visitor. The lack of gravity eliminates the main sources of spatial orientation and kinematic cues, so it is important that the virtual space be designed to afford the user sufficient navigational cues to compensate. The use of textual signage may be a problem where a VE is open to visitors from different cultures and languages. In this case, Campbell recommends using "…abstract architectural elements and environmental cues which transcend cultural interpolations to aid in the navigation of virtual architecture." (Campbell, 1996). In Campbell’s virtual gallery (Fig 1), differences in spatial proportions between the various chambers create a sense that each chamber serves a different function than the others.
Figure 6.
Exterior View of Gallery. Courtesy Dace Campbell:Figure 2 demonstrates Campbell’s use of color progressions and fogging as a navigational aid.
Figure 7. View of the Circulation Spine, Connecting to the Galleries. Courtesy Dace Campbell, http://www.hitl.washington.edu/people/dace/portfoli/thesis/document/circ1.gif
A unique feature of Campbell’s virtual galleries is that there are no explicit cues for spatial orientation or direction. Each chamber within the gallery has proportions that imply which direction is up or down, but there is no correspondence in these references between rooms. While this is interesting from the designers perspective, it is not clear if this approach affords the user more benefit than maintaining a consistent mapping of spatial orientation throughout the environment.
Intelligent VR design tools: wizards, templates and libraries
Historically, the emphasis within the field of VR has been upon improving the tools used to construct virtual worlds. CAD, 3D graphics, VRML and game editors and other world building software tools have been extensively improved to afford the user much greater efficiency and speed in the construction process, as well as to take advantage of the latest advances in hardware capability. For several years now, entire libraries of colors, textures, surfaces, scenes, lighting schemes, primitive solids and even detailed objects have been standard features of many 3D graphics packages. Recently, several software packages have included more advanced functionality to further improve the speed and efficiency of virtual world building, as well as aid in the actual design process. 3D Webmaster from Superscape is a real-time, interactive 3D authoring tool for creating complete 3D Web sites. 3D Webmaster's Warehouse includes 800 ready-made virtual clip art (VCA)objects, 500 textures, 600 behaviors and 200 sounds that make it quick and easy to create 3D worlds. Smooth-shading, advanced texturing, z-buffering, fog and transparency are all effects which can be created in 3D Webmaster worlds. These worlds can be integrated into VRML, Java or Java Script web sites. Figure 3 demonstrates the selection of pre-built virtual worlds available in 3D Webmaster.
Figure 8. Library of virtual world templates. Courtesy of Superscape, http://www.3dwebmaster.com/features/index.htm
3D Webmaster also includes a library of object, texture and sound templates (Fig 4).
Figure 9. Library of object, texture and sound templates. Courtesy of Superscape, http://www.3dwebmaster.com/features/index.htm
While this is but one example, it is representative of a growing trend in world building software to de-mystify the world building process. We believe that future iterations of a complete world building package will feature "world wizards" to suggest design advice that includes appropriate spatial and directional cues, depth cues, customizable acoustic profiles, avatars and the best environment for a particular application. Beyond the current libraries of color, textures, scenes and objects, there are growing needs for design tools that can create multi-cultural, multi-lingual environments quickly and easily.
As the capability of the internet and the average computer user increases, so to will the complexities of the worlds we build and the need for useful tools to navigate in them. It is not too difficult to imagine virtual worlds, even virtual universes so vast and complex that we must rely on a "virtual GPS" system to keep from getting lost.
Similarly, there will surely arise the issues of ownership, property rights and zoning disputes that are associated with the real world. How will we determine who has what rights in any given virtual world? If one creates a structure within a virtual world, should another person allowed to change it at will? While these and similar issues are beyond the scope of the design tools per se, it seems as though there are some possible design solutions. For example, it might be that VRML other authoring languages could be altered to accommodate "virtual DNA tagging". The creator’s identity and location would be encoded as an attribute of the world or object, as would any other permissions, behaviors or other parameters specified by the creator. This would allow a one to create a world, or an object within a world and retain sole ownership, even if the world or object is located on another computer. The creator could specify allowable changes to certain attributes or behaviors, and provide a method of securing permissions to change others. For instance, if a visitor to a virtual world is given permission to build a 3D sculpture or display a painting in a MUD, that person may elect to allow others to change the location of the object without prior approval, but not the appearance or size of the object.
As the functionality of world building software improves, and as the computational capability of the average computer increases, builders of virtual worlds must be ever more cognizant of the consequences of their decisions. New generations of world building software will accommodate the expanding range of design possibilities. and make the tools of design and construction readily accessible to non-expert users. Clearly, architects and other design professions will continue to play a crucial and expanding role in guiding the development of these tools.
As mentioned above, there are currently many different techniques that can be used to generate Virtual Worlds. The Virtual World developer must first start with an idea of the level of abstraction that the world will possess. After establishing this, the developer must decide what medium and what tools they will use to create the world. Lastly, the developer must use architectural skills to design a Virtual World that is pleasing to the eye and that possesses meaning to the user.
It was mentioned that the software discussed in this paper would be reviewed with an eye towards the future. It is the authors’ belief that people will one day be able to construct Virtual Worlds from within. This will be possible through an interface that allows both augmented or true virtual reality. This will allow a world to be completely virtual, or based on existing real-world locales. Users will be able to manage libraries of pre-made objects and environments that will allow rapid fabrication of new worlds. The tools that are used to manipulate the world and its objects will be context sensitive, much like modern CAD tools. Lastly, the worlds created will have all the realism and immersiveness of current computer games—even as they are created!
References
Azuma, R. "A Survey of Augmented Reality", Presence: Teleoperators and Virtual Environments, Cambridge: MIT Press, 1997. Annotation: This section presents a survey of research and technologies related to AR. It presents current applications in medicine, industry, visualization, robot path planning entertainment, the military. Two main types of AR are identified as "optical see-through" and video-capture. Discusses the problems with image registration associated with static and dynamic errors.
|
Batchelor, B.G., Whelan, P. Intelligent Vision Systems for Industry, London: Springer-Verlag, 1997. Annotation: This is a reference text for industrial applications of machine vision systems. Relevant topics include color image recognition and edge detection. Discusses the use of histograms and scattergrams which are analyzed and stored in look-up tables. Discusses several example algorithms written in Prolog+ that are used to "teach" a vision system how to recognize target objects based upon the HSI parameters of an observed object. Also discusses Prolog+ algorithms used in pattern and edge detection.
|
Campbell, Dace. "Design in Virtual Environments Using Architectural Metaphor." Thesis. 1996. Online. Internet. Available: http://www.hitl.washington.edu/people/dace/portfoli/thesis/document/intro.htmlAnnotation: This paper represents a graduate thesis exploring the application of the principles and methods of physical architecture to the design of virtual spaces. Topics include the use of color, geometry, proportions and lighting to provide spatial and directional cues in the absence of natural laws. A virtual gallery is presented as a demonstration of these principles.
|
Cooke, Christopher; Stansfield, Sharon . Interactive graphical model building using telepresence and virtual reality. Proceedings – IEEE International Conference on Robotics and Automation pt 2 May 8-13 1994 1994 . p 1436-1440 1050-4729Annotation: This paper presents a prototype system developed at Sandia National Laboratories to create and verify computer-generated graphical models of remote physical environments. The goal of the system is to create an interface between an operator and a computer vision system so that graphical models can be created interactively. Virtual reality and telepresence are used to allow interaction between the operator, computer, and remote environment.
|
Davis, Stephen B., Huxor, A., Lansdown, J. "The Design of Virtual Environments with Particular Reference to VRML." Advisory Group on Computer Graphics: 1996. 81 pp. Online. Internet. Available: http://www.man.ac.uk/MVC/SIMA/vrml_design/title.htmlAnnotation: This paper discusses the relevant elements the design of virtual environments. The authors discuss the role of sensory integration, psycho-social implications of spatial design, information theory and architectural metaphors.
|
Halflife.gamedesign.net
Annotation: HalfLife Editing Resource Center—This site is a resource center for people wishing to make worlds for the HalfLife computer game (www.valvesoftware.com). It has advice and resources for general download. HalfLife is based on the Quake2 gaming engine and incorporates graphical features such as texture mapping, volumetric lighting, and transparency. The engine is designed to be multi-player, and supports up to 32 people in one world. HalfLife ships with the WorldCraft 2.0 editor, which uses a 3-view interface to allow users to draw various simple geometric shapes that can be combined to form more complex objects. In addition to simple geometry creation, scripting of events and virtual entities can be done too.
|
Heim, Michael. "Virtual Realism." New York: Oxford Press, 1998. Annotation: The book presents a broad exploration of virtual reality topics and is intended for a general audience. |
http://vrml.sdsc.edu/cgi-bin/display.cgi?category=Content+Development+-+World+Builders
Annotation: The VRML Repository—This site presents links to assorted providers of VR world-crafting software, particularly VRML-enabled ones.
|
Johnson, L., Rickel, R., Stiles, R. "Integrating Pedagogical Agents into Virtual Environments." 31 pp. Online. Internet. Http://aims.parl.com/~vet/presence/presence.htm.Annotation: This paper explores software applications incorporating autonomous instructional agents into virtual simulations. The paper describes the spatial design features of the instructional environment and the agents to maximize effectiveness. |
Mascarenhas, Rajesh; Karumuri, Dinkar; Buy, Ugo; Kenyon, Robert. Modeling and analysis of a virtual reality system with time Petri nets. Proceedings - International Conference on Software Engineering Apr 19-25 1998 1998 IEEE Comp Soc p 33-42 0270-5257Annotation: Applied a timed extension of Petri nets to modeling and analysis of the CAVETM1 virtual environment at the University of Illinois at Chicago. Petri-net-based tools can effectively support the development of reliable virtual environments.
|
Maxwell, Delle; Graham, Clay; Blair, David; Maxwell, Delle; Waldrop, James . Building compelling VRML worlds, Proceedings of the ACM SIGGRAPH Conference on Computer Graphics Aug 4-9 1996 1996 p 511-512.Annotation: This panel proposes to explore and compare several different directions in large-scale sites built using VRML that show what 3D on the Web can offer: multimedia, and responsive, changeable, and expandable worlds.
|
Moccozet,L., Kalra, P. "Interactive and Controlled Synthesis of 3D Irregular Shapes", Virtual Worlds and Multimedia. Ed. Nadia Thalmann, West Sussex: Wiley and Sons, 1993. 179-197. This chapter presents a review of literature on 3D solid object synthesis and control in virtual environments. It discusses creation of objects from initial primitive shapes by editing vertices of the shapes. Two classes of deformations are discussed, local and global, and associating materials with polygon shapes is also discussed. The author describes a six-degree of freedom input device (called the Spaceball) used in conjunction with the mouse. The mouse is used primarily for object selection and manipulation while the Spaceball is a navigational tool. The Spaceball is also used to steer objects in virtual space. A resolution controller provides the ability to change the number of polygons making up the surface of the object. The application discussed involves constructing virtual actors and modifying the facial expressions of the actors.
|
Peretti, Jonah H.; Cowett, Mark; Charvet, Casey . Historical role-playing in virtual worlds: VRML in the history curriculum and beyond, Computer Graphics (ACM) v 31 n 3 Aug 1997 ACM p 64-65 0097-8930Annotation: An educational world-building project supported by virtual reality is presented.
|
Rander, Peter; Narayanan, P.J.; Kanade, Takeo . Virtualized reality: constructing time-varying virtual worlds from real world events. Proceedings of the IEEE Visualization Conference Oct 19-24 1997 1997. p277-283Annotation: Virtualized Reality is a platform not only for image-based rendering but also for 3D scene manipulation.
|
Schmalstieg, Dieter; Gervautz, Michael. Modeling and rendering of outdoor scenes for distributed virtual environments. ACM Symposium on Virtual Reality Software and Technology, Proceedings, VRST Sep 15-17 1997 1997 Sponsored by: ACM SIGCHI; SIGGRAPH ACM p 209-215Annotation: present an approach for modeling and real-time rendering of outdoor scenes, for use in virtual reality applications such as flight simulators and multi-user virtual environments. The models are based on a procedural representation using directed cyclic graphs. It allows to represent extremely complex scenes with little memory and modeling effort.
|
Springer, Scott L.; Gadh, Rajit. Haptic feedback for virtual reality computer aided design. American Society of Mechanical Engineers, Design Engineering Division (Publication) DE v 94 Nov 16-21 1997 1997 Sponsored by: ASME ASME p 1-8 Annotation: A new approach to shape modeling has been proposed which incorporates a virtual reality (VR) design interface. The interface includes multimodal input/output systems consisting of speech input, auditory output, spatial input, and three dimensional stereographic display output. Aside from these, additional output mode is provided in the form of haptic or touch sensation to more efficiently and intuitively interact with concept solid models.
|
Stork, David G., ed. HAL’s Legacy: 2001’s Computer as Dream and Reality, Cambridge: MIT Press, 1997. Annotation: HAL’s Legacy—This book was published in 1997, the "birthdate" of the infamous computer featured in the movie and book "2001: A Space Odyssey". The book examines how the state of computer technology predicted for 1997 in the book differs from what is actually in existence in 1997. Discussions of how machines interpret speech and visual cues are included. This information can be used to aid in augmented reality application.
|
Whyte, Jennifer; Bouchlaghem, Dino; Thorpe, Tony. Visualize residential development using desktop virtual reality. Proceedings of the IEEE Symposium on Information Visualization Jul 29-31 1998 1998 Sponsored by: IEEE IEEE p 40-43Annotation: At Loughborough University a prototype visualization of a residential development was produced, and then shown to different types of housing developer to obtain feedback regarding the relevance of the approach as well as suggestions for future developments. After giving an overview of current CAD and visualization use in the industry, this paper presents the practical VR work done, and the conclusions drawn from interviews with housing developers following presentation of this work.
|
www.3dconstruction.com
Annotation: 3D Construction Company—This site is home to 3D-Builder, a piece of software that can construct 3D models of objects by analyzing a series of photographs of the object taken from different viewpoints. A user takes a sequence of photos and, on each photo, locates common vertices. The software then takes these vertices and applies a complex mathematical solver routine to establish 3-space coordinates for each vertex. It then connects them with edges and builds faces off of those edges. This could possibly supplement edge-detection routines…
|
www.caligari.com
Annotation: Caligari Corporation—Caligari markets trueSpace 4, which is a modeling/rendering package that has VRML capabilities. The user interface is entirely 3D, with 3D tool palettes that float on your workspace. They offer a demo download that we will investigate. It appears, from the screenshots on the web site, that it has a context-sensitive menu system. This system allows you to select an object, and then it displays all the possible commands one can perform on that object—stretched out in a line normal to the object. This allows for a very uncluttered workspace, resulting in a clearer view of what is being built. |
www.ptc.com
Annotation: Parametric Technologies Corp.—PTC markets Pro/Engineer, which is a solid modeler that is capable of exporting VRML files.
|
www.sdrc.com
Annotation: Structural Dynamics Research Corporation—SDRC markets the I-DEAS solid modeling and design software, which—like Pro/E—is able to export to VRML file formats. I-DEAS has one of the most intuitive navigation systems found in a CAD package, and presents a good example of streamlined interface technology. The implementation of the mouse in I-DEAS is so well done that it is faster to use the mouse than 3-D SpaceBall controllers.
|