C–VISions: Collaborative Virtual Interactive Simulations

The C-VISions Research Project:
A Distributed Desktop Virtual Reality Environment for Simulation-based Learning

The LELS Lab has been involved in the design and development of a multiuser virtual reality environment to support socialized, collaborative learning. This project was funded by MOE.

Short Description of Project

The research project focuses on the creation of a networked multiuser 3D virtual environment where students from any part of the world can learn experientially and collaboratively in simulation- and articulation-oriented virtual worlds. These worlds are accessed via a virtual world browser. Participants are represented in the form of avatars. Virtual simulation worlds are created where participants can interact with one another and with the objects in the virtual world in realtime. Users are able to navigate through the world, viewing it in either a first-person or third-person perspective. Participants can communicate either via a text-based chat facility or via audio-based chat. Virtual world entities are modeled as objects with 3D model definitions and encapsulated behaviors. The system has been designed and engineered using OO methods, with the intention that the objects should be readily extensible and maintainable. The system has been developed primarily in Java. The graphics engine has been developed using Java3D. There are plans to support other forms of input, such as immersive HMDs and data gloves. The kind of networked environment described here possesses five important features: (1) a shared sense of space; (2) a shared sense of presence; (3) a shared sense of time; (4) a way to communicate; (5) a way to share objects.

Pedagogically, the research work is rooted within the tenets of social constructivism and based, in particular, on the principles of active learning, experiential learning (Kolb, 1984), articulation, and reflective learning. The Experiential Learning Cycle of Kolb is shown below.


Technical Challenges

The kind of system described above is extremely difficult to implement correctly and effectively (Singhal & Zyda, 1999, Networked Virtual Environments, ACM Press). The complexity arises through the interaction of multiple system components where each component makes significant demands on underlying system technologies. The key system technologies required are (high speed and reliable) networking, databases (including distributed databases), graphics (especially modeling and rendering), and user interface design. All technologies are subject to realtime processing requirements while ensuring the integrity and consistency of data shared across the system and the maintenance of shared system state across all clients. The project offers many opportunities for multidisciplinary collaboration amongst academic staff. An exemplar list is shown below:

Networking
• reliable multicast protocol
• realtime demands on networking (latency-related issues)
• performance and optimization issues
• virtual reality transport protocol (vrtp)

Graphics
• fast realtime rendering
• handling of realtime collision detection
• Java3D
• effective motion modeling and rendering of avatars (eg. walk, run, gestures)

Database
• object databases
• multiple concurrent databases
• realtime demands on databases (including maintaining consistency, concurrency control, etc.)

User Interface
• different forms of input interfaces (eg. HMD; data glove, CAVE wand)
• design of human-computer interfaces (eg. interaction style for interacting with virtual world objects)
• design of different user and object representations for virtual environments
• audio (between participants as well as virtual environment ‘surround’ audio)

Architecture/Software engineering/Realtime systems/Performance tuning
• scalability: users and virtual world objects
• supporting heterogeneous client platforms
• failure management (eg. of services; servers)
• development tools and platforms
• multithreaded distributed realtime architectures
• Java-based software engineering
• supporting user-extensible worlds
• OO modeling and methods

Human-Computer Interaction & CSCW/CSCL
• designing distributed interaction

AI and Education
• virtual pedagogical agents

Current Status and Future Work

The C-VISions system was launched as public beta software at the International Conference on Computers in Education 2000 conference held in Taipei, Taiwan, in November 2000. The current version of the software is Version 1.0 which was released on 31 August 2001.

The color snapshots below depicts the present state of the system and gives an indication of what the system presently supports. The project is multi-faceted and embraces many aspects of computer science, thus creating the potential for a focused collaborative research effort. Much work remains to be done in relation to building further learning simultaions and performing empirical evaluations. We envisage that, over time, the range of application areas can be extended to multiuser simulation-based training (both civil as well as military contexts), entertainment, collaborative engineering and design, and e-commerce.

The Battleships World: projectiles in motion


The Vacuum Chamber: physics of falling objects


The Billiard World: principle of conservation of momentum


Video-streaming between clients in C–VISions


Peer-to-peer video conferencing via the virtual world


Collaboration tool: the shared mindmap editor with radar view


Collaboration tool: the shared whiteboard with radar view


Group audio chat and peer-to-peer whisper facilities in C–VISions


Avatar walking and gestures [movies page]

Walking (QuickTime movie: 1.6MB)

Waving (QuickTime movie: 132KB)

Agent-related work


[back to Research page]