Virtual environment modelling presents a number of challenges that are not evident in traditional CAD. Firstly, a virtual environment may contain a wide range of objects. If, for example, one is generating a virtual environment of a small town, it is apparent that a great number of different objects must be created for the representation to be both interesting and believable. In CAD, one generally concentrates on a main object or a small number of objects. Another important difference in VE modelling is that objects in the environment will have their own, possibly complex, behaviours. These behaviours may also change in response to real time events such as collisions. In CAD objects are generally stationary, or will only have simple motions such as rotations. A further addition is that the objects in the environment must also be able to interact with the viewer. This can occur when the user collides with the model. For example, if one presents an object, such as a tree, that collides with the avatar model it would not be appropriate for the viewer to be able to walk through the model. Similarly, one of the great strengths of VEs is the interaction between objects and the user. The user should be able to manipulate various objects within the scene by picking them and moving them at will.
All of these additional facets place extra demand on the modelling software and techniques that must be used. Of particular relevance here is the idea of reusability. This idea suggests that objects can be used in a number of environments, which means that it must be possible for the model to be easily extracted from the environment, and that standard ways of recording and transmitting the objects are used. These ideas suggest that hierarchical modelling techniques are the most appropriate for use in VEs. A further consideration is that the modeler must be aware of the behaviours that may be required when modelling the object. This is clearly an area that cannot be catered for if one is using models obtained from a database.
There are a wide variety of modelling packages available. Different flavours offer support for different applications. These are classified below.
Traditional CAD systems were developed to support the product design lifecycle. As a result, the emphasis was on model accuracy. Modelling was traditionally carried out in wire-frame, orthographic projection, with the results being explicitly rendered by the user for clarity or presentation purposes. CAD packages tend to make use of splines for modelling surfaces. As stated previously, this may not be desirable for current simulation systems, which rely on hardware rendering of polygons for performance.
AutoCAD, Pro Engineer and CATIA are typical examples of traditional CAD systems.
A variation on the traditional CAD package has been widely used to develop virtual environments for presentation purposes (e.g. Motion pictures, television advertisements, etc.). These packages tend to include features for animation and high definition rendering (e.g. ray tracing and radiosity). Again, the models can be either polygonal or spline based. Like traditional CAD models these models are not necessarily designed to work in real-time. Animations are recorded by stop frame recording techniques, similar to those used in traditional animation. However, the emphasis is on the ascetic whereas in CAD the emphasis is on accuracy. For example presentation packages use photographic textures to enhance the realism in the scene. Alias Wavefront and 3D Studio are popular examples of such a system.
There are a number of packages which enable the user to develop models for real-time simulation applications. The models are polygonal and optimised for performance. The hierarchical organisation of the object database (see section 2.3.1) enables the user to optimise the model in terms of the graphics pipeline (see section 4.3). In some systems the interface enables the user to view a perspective (or parallel) view of the environment in real-time. The models can be rendered as solid gouraud shaded, textured polygons during the modelling process. Systems may include a number of different features tailored to the simulation community. For example, smoke trains for aircraft and road building interfaces for driving simulation. The success of these features depends on the level of support offered by the conversion software included with the VR development package. MultiGen and Medit are popular examples of real-time simulation model development packages.
As the performance capacities of current hardware improve, so these three application areas will begin to merge. Already CAD packages are offering walkthrough software, where the user can develop a high definition rendered animated walkthrough featuring the product. Simulation modelling packages offer limited hierarchical animation. There are still multiple formats within each of the categories, but attempts are being made to establish standards (e.g. OpenFlight). It will certainly be some time before a standard is developed which bridges the gap between all three application areas. The main problem being the representation of the surface. Whether that is spline or polygon based is currently determined by hardware restrictions.
One of the major features of a modelling package is the interface. The ability to render shaded and textured surfaces in real-time enables the user to intuitively visualise the scene content. This will inevitably improve across the product range as hardware performance increases. Currently modelling packages are largely tied to 2D interaction devices (mouse, digitising tablet etc.). As the technology associated with 3D interaction devices matures, there will inevitably be a migration to these devices. With this, there will be a merging of modelling packages and VR development languages. This is likely to be managed by a visual programming philosophy which will enable the user to build up a world in one process. World building design methodologies will need to be established to support this.
Although some of the techniques developed in computer animation are of use to designers of virtual environments, much of the VE research carried out so far has concentrated on geometrical techniques. Computer animation techniques may be applicable if one considers that objects must be able to move in a realistic way and change their physical state.
The major issue associated with these ideas is that in the VE, the creator does not have total control over events, unlike an animation, where the animator can decide exactly what will occur.
In the VE the behaviour of an object is not determined in isolation, but is the product of a complex interaction of environmental influences. These influences include the boundaries of the environment itself, static and dynamic objects within the environment, and the obstacles and unpredictable events that may occur. All of these factors will have an influence on the objects motion and must be considered when the motion is specified.
Graphics Multimedia Virtual Environments Visualisation Contents