Contents
Exploiting Virtual Reality Techniques in Education and Training: Technological Issues
4. Developments in VR Technology
4.3 Specific Technological Issues and Requirements (cont)
4.3.3 Software Environment
It is not the purpose of this report to deal with the specific issues of the enabling software. However, it is worth making a few general observations for the sake of completeness.
4.3.3.1 Categorisation
Software for VR systems falls into a number of categories depending upon the role it performs. Software is a key component of any VR system and allows a user to create a virtual environment whilst providing the necessary interaction and visualisation. Different types of software are used for the different stages of the development of a VR system and it is important to understand the different roles of this software. This is extremely important if one has any ambition of developing their own virtual environments. At the moment there are a growing number of software packages that claim to be VR systems. However, this is a very bold statement since the capability of these packages varies enourmously in terms of functionality, usefulness and ease of use. Unfortunately, a number of packages can be classed as nothing more than a CAD system with an animation option.
It is beneficial to categorise the software into several main types. The term software tool is reserved for a particular software utility that performs a specific action such as translation from one CAD standard to another. The main software categories are:
- Modelling systems - 3D object definition (geometry, texture,behaviour, etc.)
- Virtual object database
- Virtual environment authoring system
- Run time environment
4.3.3.2 Modelling systems
A virtual environment comprises a collection of objects that are characterised by geometry, surface appearance (texture, material type) and behavioural representations (physics, dynamics, material properties). A virtual environment is created by combining a collection of objects together and linking them with various behaviours. The software that performs the function of creating databases of objects is refered to as a modelling system. In many respects the visual quality of the virtual environment is a function of the capability of the modelling tool. It is possible to use CAD tools but these are not generally optimised for creating objects for real time use. The best modelling system available today is MultiGen (MultiGen Inc.) which can produce extremely good models for the virtual environment. Other systems are available such as 3D Studio (AutoDesk) at a fraction of the cost but their functionality is limited in comparison. Nevertheless, some extremely good virtual environments can be produced. A key requirement of any modelling system is the ability to import and export models from/to other CAD standards. It can be argued that the creation of virtual objects represents a significant investment of time. Consequently, it will be important to protect this investment against obsolescence.
4.3.3.3 Virtual object databases
It is very important to maintain an object database where various 3D objects can be stored for later use. Given the time it takes to develop really good virtual environments it makes sense to store objects in their native format. Often data translation will loose detail that was in the original model definition.
4.3.3.4 Virtual environment creation
Once a collection of suitable 3D objects have been created it is necessary to link these together to create the virtual environment. Unfortunately, it is not a simple matter to develop a virtual environment. Objects have to be linked together in ways according to the relationships between them. For example, a complex model may consist of a number of smaller components each linked to one another by an object orientated kinematic model. For serious applications constraints are very important and ensure that factors such as mechanical structure are not contraviened. The designer of a virtual environment must define precise relationships between objects and user interaction. For example, the designer must define what happens when the user picks up an object and then lets it go. Does it fall to the ground under the influence of gravity or does it remain suspended in space? Obviously this is an over-simplification of the actual task. Attempting to build virtual environments using conventional programming techniques is an extremely labourious non-cost effective task. Fortunately, a number of programming tools have been developed to make the whole process of creating virtual environments considerably easier. The best of these at the moment is Division’s dVS/dVISE toolset. This software tool is extremely easy to use and yields results very quickly. The time saving potential is an extremely important factor.
4.3.3.5 Run-time environment
The run time environment refers to the software that is executed by the host computer. Ideally this software should be transparent to the user since it has to manage the hardware resources of the host computer. Unfortunately, with some VR systems the user has to optimise the run time environment to improve the performance of the system for a particular application. Clearly, this requires considerable knowledge on the part of the user.
Division’s dVS/dVISE overcomes this complexity by removing the need to worry about the runtime environment. However, if anyone does wish to interact with the system at a lower level then this is also supported.
4.3.4 Networked VR
4.3.4.1 Introduction
Networks play a very important part in modern computing systems and allow the computing infrastructure to be distributed across a local or global network. In particular, the world wide web (WWW) has had a significant effect on the way people now communicate information across the world. Schools, higher education establishments and companies make extensive use of the WWW. The key feature of networks is the potential for moving large amounts of data between different and often incompatible computer systems. This means that computers of all types can share information even though they may be of very different configuration. The evolution of the WWW has made this information more accessible to a wider community than those normally associated with computing.
4.3.4.2 Approaches to Networked VR
There are two different approaches to networked VR:
- VR accessed over a network - eg VRML: There is a growing interest in extending the 2D web browsers to allow 3D interaction and visualisation. The name given to this type of browser is VRML (virtual reality modelling language) and it currently offers a very limited ‘VR’ capability which is accessed via the internet. The future VRML standard (VRML 2.0) will interactive (non real-time) fly throughs of 3D environments. The user moves through the 3D dataset by giving instructions with a conventional mouse. Unfortunately, the update rate is well below that required for any sense of immersion.
The user must access the remote VR server and select the service they require. The remote server then downloads the necessary executable code into the local server from where the student can interact with the virtual environment. It is envisaged that in the future educational establishments will want to make their VR based educational programmes available to others. Anyone with appropriate hardware will be able to access these systems for a subscription fee. The main advantage of this approach is that organisations will be able to access appropriate VR based educational material without having to develop material themselves. It is highly likely that it will be possible to gain access to a very wide variety of educational material in this manner. However, there are a number of issues such as copyright and how much capability will be required in the local system.
- Shared VR environments - eg. dVISE/dVS: The second form of networked VR provides the means of connecting several high performance VR systems together over either local or wide area networks. The advent of wide area networks such as the Internet and higher performance networks such as ISDN make it feasible to connect multiple VR systems together. The advantage of this type of VR system is that users can be physically separated from each other and yet interact in the same virtual environment. The common term for this type of VR system is a shared virtual environment. In essence the virtual environment is distributed over the network and users attach to one another. Each user must maintain their own local copy of the environment which is updated whenever anyone in the shared environment makes a change. Depending on the changes made by a particular user it can take some time for the resulting changes to propagate across the network to all users. This process does not lend itself to real time interaction. Shared virtual environments have so far been restricted to simple applications although it is anticipated that more intensive shared virtual environments will soon emerge. A good example of a well developed shared virtual environment is the SIMNET system developed by the US military. This system allows sophisticated simulation facilities across the world to be linked together to take part in war gaming exercises. Division’s dVS/dVISE supports an embryonic form of networked VR inluding all the protocols to support several simultaneous users.
4.3.4.3 Issues
Networked VR is still in its infancy and its performance is severly limited due to the performance of current network technology.
Copyright issues are already under investigation since this is a major issue in the WWW. It is possible to configure the overall system such that there is a processing split between the remote and local systems. For example, the remote system would transfer only the parts of the VR system that are needed for the VR environment. All interaction with the VR database would be achieved at a local level. The educational programme could be held on the remote server and accessed as required. This arrangement has the advantage that it is easier to control access to the educational material. It would be difficult to pirate such a system.
4.3.5 Technology Obsolescence
In any area where significant technological development is occuring it is crucial to understand the impact that rapid change will bring about. There tends to be annual improvements in underlying VR technology which means that for most systems the average life is of the order of 2-4 years. In a high tech R&D environment this timescale may be even shorter. Interestingly, even after this period the equipment is still generally servicable but will refuse to run the latest software. If the computing strategy is to replace the hardware every 4 four years then it is probable that the operating systems used in the new equipment may not be compatible with the application software that has been developed. For small application programmes such as those written in house this is not normally a problem. However, for larger systems produced externally this can lead to the software not working at all, or at least, only parts of it are left working. The more complicated the application programme the more likely this is to happen. Fortunately, operating system producers try to support a degree of compatibility with earlier generation programmes but in the interests of higher performance it is sometimes necessary to sacrifice compatibility.
Technology obsolescence is a crucial issue in a VR system because of the signifcantly higher investment in system modelling and simulation. For instance the cost of producing complex virtual environments can be so high that it easily dominates the cost of the whole system. This means that there will be significant reluctance to scrap early generation environments just because new hardware is available. System designers must ensure a degree of independancy from the level of technology used by writing high level. Itis necessary to write application software in way that it is genuinely independant of the host technology. Software tools can be used that isolate the user/programmer from the underlying technology.
4.3.6 Human-Computer Interaction Issues
Irrespective of which approach is used to create the virtual environment there are many good reasons why virtual environments should be used to support education and training needs. However, there are concerns that the human-computer aspects of a virtual interface are not fully understood. An poorly designed interface will create difficulties for the user. There are many perceptual issues that need to be investigated and resolved before VR can be used effectively. There are other factors to be considered. For example, teaching engineering students aspects of 3D design presents problems because of the inadequate interaction devices. Currently these devices are largely confined to 2D interaction. In the future, more advanced 3D interaction devices will be required. Derivation of the human factors aspects of the interface in a virtual design environment will be key to determining the type of interaction device and the interaction style employed. People are beginning to make more use of sophisticated computer aided design packages to produce visual representations of their designs. Unfortunately, these packages provide extremely limited context modelling evaluations. People also talk about health and safety issues of VR. Unfortunately, many uninformed people have made judgements about VR systems based on extremely immature technology. Consequently, issues that they report are invalid when newer technology emerges.
Key human factors issues include:
- Visualisation - level of fidelity
- Interaction - style of interaction and technology
- Performance - performance evaluation
- Educational effectiveness
- Which VR concept to use
- Use of multisensory modality
Contents
Graphics Multimedia
Virtual Environments Visualisation
Contents