Widening Wonderland’s Web

June 29, 2010

The Glassfish Web Server that is built into Open Wonderland is already extensively used to administer the Wonderland virtual world server. For example, it’s responsible for providing the first page you see when you point your web browser at an Open Wonderland installation. When you click on the ‘Launch’ link, it provides the Java Web Start functionality, and when you click on the ‘Server Admin’ link it provides you with the list of tasks to manage various aspects of the server, such as placemarks, WebDAV content and user groups.

The Open Wonderland Module Warehouse is now becoming more populated with examples that extend the behaviour of the client or the virtual world server by the addition of extra cells or plugins. But what about extending the behaviour of the web server?

One of the features we want to introduce as part of the +Spaces project is to use web services as a means of controlling the behaviour of the virtual world server. As a simplified demonstration, we’ve created a Web-based Poster Module that provides users with a web page for editing and deleting the contents of wonderland poster objects. It is installed just like a regular Wonderland module, but doesn’t show up anywhere on the client or the server. Instead, it causes an extra option to be added to the list of tasks on the Wonderland Server Admin web page: Manage Posters.

The following video provides an example of it in use.

The code to develop the module borrows extensively from the core xapps-config module (in wonderland/modules/tools/xapps-config) and the module itself is available to download from the Module Warehouse. The source for the module is also available from the public +Spaces SVN repository (details below).

One significant difference between this module and the xapps-config module is that no authentication is required to manage the posters. For the purposes of an example, this is OK; however, for more information about authentication, take a look at the source code for the xapps-config module.

Since my last posting on example polling apps, I’ve uploaded the modules to the Module Warehouse. The source for them is also available from the +Spaces SVN repository.

Accessing the +Spaces SVN Repository

The instructions to access the +Spaces SVN repository are very similar to those for accessing the additional Open Wonderland modules. The requirements are identical: you must have first downloaded and compiled the Open Wonderland source, following these instructions. I’m going to follow the example of the tutorial and assume that you have checked out the core wonderland workspace and the wonderland-modules workspace into a directory named ~/src/trunk. Below, you will create the +Spaces wonderland modules as a sibling to both the core wonderland workspace and the wonderland-modules workspace (that is, both directories have the same parent directory in the file system).

Inside a terminal window, execute the following commands:

% cd ~/src/trunk
% svn checkout http://gforge.grid.ece.ntua.gr/svn/spacespublic/trunk/UEssex/wonderland-modules +spaces-modules

This will create a directory called +spaces-modules that is a sibling to the wonderland and wonderland-modules directories. At the moment, the +spaces-modules directory contains only four modules: three of the polling demos and the poster control module described above.


ViWo 2010

June 29, 2010

I have just agreed to serve on the Program Committee for ViWo 2010, the workshop on virtual worlds for academic, organizational, and life-long learning. The workshop will be held in Malaysia at the end of November. I would encourage those of you in Asia to submit a paper. It would be great to see as many Wonderland-related submissions as possible. Six to eight page paper submissions are due on August 27, 2010.

Wonderland–CVE Bridge

June 25, 2010

I have received a number of guest blog posts from students in Japan and China. This article is the first in a series describing some interesting work being done at the University of Aizu in Japan.

Wonderland-CVE Bridge

By Rasika Ranaweera, Doctoral student, University of Aizu, Japan

The Wonderland–CVE Bridge allows any device that can connect to our CVE server to communicate with Wonderland regardless of any architectural differences. The Wonderland client consists of Avatar System, which is responsible for controlling avatars, including gestures. We used the Avatar client plug-in which initializes avatars to initialize the Wonderland–CVE Bridge.

CVE Bridge image

Bridge in action with NTT DoCoMo iappli i·Con mobile interface

What is CVE?

The CVE is a Java client-server protocol developed by the Spatial Media Group of the University of Aizu. Clients connect to a session server host via channels and when clients need to communicate with each other they subscribe to the same channel. The CVE server captures updates from session clients and multicasts (actually replicated unicast) to other clients via relevant channels. An extensibility “extra parameter” can also be used to exchange information other than position details. This architecture allows multi-modal displays to collaborate with each other, including mobile applications, motion platforms, map interfaces, spatial sound, and stereographic displays.

CVE System Schematic

CVE Bridge System Schematic

CVE Clients

Mobile Interfaces

We have tested the bridge communication with mobile phone interfaces programmed with J2ME on the NTT DoCoMo iappli mobile phone platform. For instance, “Musaic” controls narrowcasting in virtual concerts including local spatialization, µVR4U2C features panoramic images and intensity modulated music, i·Con controls narrowcasting in virtual chat spaces, and i·Con-s models a chromastereoptic spiral spring for such panoramic interfaces.

Rotary Motion Platform

We imported a roller coaster model to Wonderland world and let the avatar walk on the path. Then with some modifications we recorded the avatar location periodically and saved to an xml file. With another application called “Script Interpreter,” the location events can be streamed to the CVE server and trigger the motion platform, so that a user-delegated avatar can ride the roller coaster while the real user can feel proprioceptive sensation through the motion platform.


“Multiplicity” is a workstation-based narrowcasting interface. An arbitrary number of avatars can be instantiated and dynamically associated with respective users at runtime. Attributes of narrowcasting privacy functions extend figurative avatars to denote the invoked filters. Multiplicity features “mute”, “deafen”, “select”, and “attend” functions, which allow controlling the avatar in a shared conference space. The bridge can now synchronize Wonderland avatars, but in the future we intend to implement narrowcasting functions to Wonderland avatar system.

Map Interfaces

Map interfaces such as “PriMap” & “2.5D Map” display the location of sources controlled by different channels and also allow users to select and move the sources and sinks. Regardless of source and sinks, we can control the avatars and get their location updated and displayed on the maps.

About the Team

  • Rasika Ranaweera – Doctoral student of University of Aizu, Japan, whose research interests include multi-modal interfaces, immersive virtual environments, and spatial sound.
  • Senaka Amarakeerthi – Doctoral student of University of Aizu, Japan, whose research interests include emotion recognition and emotion expression using virtual environments.
  • Prof. Michael Cohen – Professor in the Dept. of Computer and Information Systems, University of Aizu, and Director of Spatial Media Group.
  • Prof. Michael Frishkopf – Assoc. Prof. in the Dept. of Music, Associate Director of the Canadian Centre for Ethnomusicology, and Associate Director for Multimedia at FolkwaysAlive!
  • Dr. Nick Nagel – Senior fellow, architect, researcher and developer for the Media Grid Institute and lecturer at the Boston College of Advancing Studies

For More Information

For more information about this project, please refer to the foll0wing publication:

Rasika Ranaweera, Nick Nagel, and Michael Cohen. Wonderland–CVE bridge. In 12th Int. Conf. on Humans and Computers, Dec. 2009, Hamamatsu.

Open Wonderland on FLOSS Weekly

June 11, 2010

I just wanted to let everyone know that I did a video podcast interview on a program called FLOSS Weekly:

FLOSS Weekly 123: Open Wonderland

FLOSS is an acronym for “Free Libre Open Source Software” and the show is hosted by Randal Schwartz. I was pleased to discover that the co-host, Aaron Newcomb, is himself a former Sun employee who had experimented with Wonderland while at Sun. He asked a question about Darkstar during his introduction to the show, which I realized on listening to the show, I neglected to answer. I thought I would take the opportunity do it here.

Project Darkstar, which is game server infrastructure that provides a platform for scalable communications and persistence, was a parallel project to Wonderland in Sun Labs. In fact, it was the Darkstar team that got us started. In 2007, they were looking for a way to demonstrate their server technology. They knew that our Collaborative Environments research team had been inspired by a challenge by then VP for Eco Responsibility Dave Douglas to “build Sun’s next building in the virtual world.” We had gotten as far as forming a reading group to investigate the use of virtual worlds for business collaboration when the Darkstar team asked us if we could quickly pull together a virtual world demo built on top of Darkstar. They needed the demo in three months for their booth at the upcoming Game Developers Conference (GDC). I’m not quite sure how we pulled it off, but we joined forces with the Project Looking Glass team and created both the Wonderland platform as well as the virtual world called “MPK20: Sun’s Virtual Workplace.” Here’s Karl Haberl, who was the manager for both Wonderland and Darkstar, demoing Wonderland for the very first time in the Sun booth at the GDC conference in March 2007:

Like Wonderland, the Darkstar project has continued to thrive as a community-based open source project since our “liberation” from Sun. The forked version of the code is now known as Red Dwarf.  If you would like more information about the current architecture of Wonderland – which has changed substantially since that first demo version –  and how Darkstar / Red Dwarf fits in, there’s a diagram and a brief architectural overview on our Developer Resources page.

Aaron, I hope that helps to answer your question. And thanks for the opportunity to speak on the show!

Polling in Wonderland

June 3, 2010

As part of the +Spaces project, we at the University of Essex have been tasked with the job of exploring ways in which Virtual Worlds like Wonderland could be used to capture users’ responses to polls. As a first step, we identified two dimensions that could characterise a poll:

  • Visibility—other users can determine that a user is engaged in a poll
  • Privacy—other users can determine the answer(s) that a user has given to a poll

Combining these two dimensions gives us four possible kinds of poll. To explore how these might be used, we created some throwaway demos, as follows:

1) An invisible, private poll—the users clicks on an object in the virtual world, which in turn opens a web browser on the user’s client. The url used by the web browser may include the user’s credentials. The video below provides an example.

As an alternative to this approach, the poll could take place in the Heads Up Display (HUD), as shown below.

2) A visible, private poll—the list of users currently taking a poll is displayed in the virtual world, but the user interacts with the poll itself via the HUD. For example:

3) A visible, public poll—the user positions his/her avatar in a location which determines whether s/he agrees with a question. Users can determine that other users are participating in a poll and users’ responses are not private. The video below was inspired by work undertaken by Drew Harry in his InfoSpaces project.

Finally, the last of the four combinations is an invisible, public poll which doesn’t seem to make much sense in a virtual world.

The demos have raised some interesting issues, especially the visible public poll. Questions include:

  • when does the voting finish?
  • if I leave the carpet is my vote lost?
  • will users be persuaded by herd instinct?
  • could I silently leave something behind on the carpet to indicate my vote?

One of the benefits of being to be able to create these demos so easily is that we don’t have to invest too much time in the technology and yet at the same time we are able to use them to prompt our users to come up with questions and ideas.

Please feel free to contact us for more details,

Bernard Horan & Michael Gardner

%d bloggers like this: