Businesses are increasingly globalized, with subsequent growth of distributed multicultural teams. Especially in response to economic downturns, enterprises are exploring virtual worlds to augment their existing collaboration environments. IBM has a long history of exploring virtual worlds technologies for businesses and non-profit organizations (see Resources).
In this series, learn how virtual worlds can be applied within an enterprise to save money and time. Explore their relationship to Service-Oriented Architecture (SOA), and how you can use virtual worlds to support distributed teams in many business activities. Several examples of IBM experience in building virtual spaces are included.
This first article briefly explores the history of virtual worlds and introduces the notion of virtual spaces. Learn about usage patterns and technologies that contributed to the rise of virtual spaces development in IBM, and compare and contrast them with virtual worlds. This article examines six platforms that were either used to successfully build virtual spaces or were explored for specific functions. The platforms are: Active Worlds, Forterra OLIVE, OpenSimulator, Second Life, Torque and Unity3D.
In Part 2 you'll learn about: virtual spaces built for remote mentoring between multicultural teams; training and large events; scenario-based rehearsals; white-board brainstorming; multilingual collaboration with instantaneous translation; integration of social networking tools; and systems monitoring. Examine social aspects, technologies used, architecture, business value, and lessons learned. Explore the benefits of an SOA-based approach to virtual spaces.
Part 3 will examine the ongoing development and future direction of virtual worlds standards, interoperability between homogeneous regions and heterogeneous virtual worlds, emerging architectures, multi-channel collaboration (including mobile), mixed reality, and analytics and event processing.
The rise of virtual worlds
Virtual worlds are not a recent development. Thirty-five years ago, the first digital 3D multi-user first person shooter game Maze War introduced the concept of online players as eyeball "avatars." The mid-1980s brought multi-user dungeons (MUD), which later grew into a successful massively multiplayer online game (MMOG) industry with names such as World of Warcraft, City of Heroes, and EverQuest II. In addition to goal-oriented games, social spaces (such as AlphaWorld, Blacksun, ThePalace, Traveler, and WorldsAway) and virtual worlds (Second World and There) started to surface.
Social spaces and non-game virtual worlds created new opportunities for enterprises to exploit these technologies and features within the firewall.
Table 1. Opportunities for enterprises
|Features introduced||Enterprise opportunities suggested by the features|
|MMOG|| Avatar (presence)|
| Individualization, exploration of multicultural environments.|
Business rehearsals, team building through games.
Test-oriented learning, problem solving.
|Social Spaces||Social interactions and connections||Connecting time and geographically distributed teams, expertise location, remote mentoring, social networking, collaboration.|
|Virtual Worlds|| Persistent 3D spaces|
| Immersion, 2D/3D and real life integration,
complex systems management, data visualization.|
History of virtual worlds environment in IBM
In early 2006, small teams of innovators around IBM began exploring virtual worlds' technologies for business enablement.
The IBM 2006 InnovationJam, an online brainstorming session that brought together more than 150,000 IBMers, family members, business partners and clients from 104 countries, identified the 3D Internet as one of top 10 focus areas for new business.
IBM opened public islands in Second Life and helped clients conduct business inside virtual worlds. IBM also built secure virtual spaces behind its firewall to exploit these emerging technologies and usage patterns for training, collaboration, immersive events, remote mentoring, business rehearsals, new employee orientation, joint software development, and other business areas.
Virtual universe community
The virtual universe community (VUC) grew out of an enthusiast community and established its charter shortly after the 2006 IBM InnovationJam. The community brings together virtual world enthusiasts, developers, innovators, and those interested in learning more about usage of virtual worlds.
The VUC is run as a guild with two elected guildmasters, volunteer leaders, and virtual worlds experts who help drive the direction and initiative of the community, which has members from different geographies, cultures, and business perspectives. The goal is to find relevance and quick adoption of virtual worlds for business, learning, and even social occasions. These volunteers help connect people and technologies, mentor, build, improve, and showcase various virtual space solutions both inside and outside of IBM. They use regular meetings, stress tests, and the Friday Field Trip program to encourage virtual world exploration and adoption.
Awareness of the community is maintained with numerous channels, including forums, blogs, virtual meetings, conferences, and an @ibmvuc twitter account.
Virtual Spaces are 3D collaborative immersive environments that are available for a specific period of time to better enable core business processes. They:
- Are built on virtual worlds technologies, and are integrated with enterprise back-end systems, 2D Web and, eventually, physical world.
- Support secure and private interactions within the enterprise, and deliver business value to participants.
- Can support both structured interactions (for example, training sessions where students complete predefined activities and are evaluated) and unstructured business interactions (collaborative events).
- Are an emerging concept. Some of the desired attributes have yet to be fully developed and demonstrated.
As virtual spaces enabled by different technologies are built, the focus is on four important characteristics (four "I's"), as described in Table 2.
Table 2. Four "I" characteristics of virtual spaces
|Description||Examples of IBM virtual spaces implementation|
|Integration||Linking virtual spaces with physical world, 2D Web (both Inter- and intranet), enterprise back-end systems, and mobile devices.|| Integration with IBM intranet (called w3)
services and plug-ins (for example, IBM internal directory BluePages).|
Demonstration of connectivity between virtual spaces, mobile channels, and sensors (Part 2 of this series will have more detail).
|Interaction||Real time collaboration leveraging Web 2.0 and social networking attributes.||Real time interactions enabled by integration with Web 2.0 services and plug-ins (such as Bluecard, an employee's digital calling card that includes a picture, a title, and summary contact information) and applications such as Beehive, an internal Facebook-like social site.|
|Immersion||Exploitation of senses and community to gain perception of being part of the environment.|| Detailed and purposeful builds, such as the IBM
Academy of Technology (AoT) islands (see Resources).|
Augmented reality proof-of-concept (Part 3 will have more detail).
|Interoperability||Navigation between multiple virtual worlds and spaces.||Agent service that enables a seamless user experience when moving between unconnected OpenSim grids (Part 3 will have more detail).|
IBM's use of virtual spaces
Within the enterprise, IBM used virtual spaces to enhance activities in different areas. Table 3 summarizes capabilities and benefits of different virtual spaces applications that IBM has implemented.
Table 3. Use of virtual places to enable business activities
|Events|| From small team meetings to large formal
conferences, poster sessions, slide presentations, informal social gatherings.|
| Engaging broader audience.|
Reduced travel and "down" time.
Eliminate meeting expenses, telephone charges.
| IBM Academy of Technology Conference|
IBM Research 2009 kickoff
Human Capital Management university
Team meeting in Sametime 3D
|Mentoring and knowledge exchange|| Integration with enterprise directory.|
Private (location proximity–based) chat.
Social spaces and games to build stronger connections.
| Remote interaction with SMEs.|
Cross cultural and cross generational networking.
Exchange of knowledge.
| Metaverse managers speed mentoring.|
Corporate learning group speed mentoring in Second Life.
|New employee orientation|| Content co-creation as a teaming activity.|
Exploration of career opportunities.
| Establish quick connections with new and
Engaging way to teach company history, culture.
Practice English and presentation skills.
|Fresh Blue program in China and India|
|Rehearsals|| Simulation of complex business activities.|
Execution, recording, and playback of business scenarios.
| Efficient on-the-job learning in safe social environment.|
Remote interaction with SME'.
|Software development|| Artifact representation.|
Visualize software team activities.
| Enable globally-distributed teams.|
Visibility into presence and work of the team.
Modeling without advanced skills.
|Bluegrass - Rational Jazz Team Concert IDE Plug-in|
|Systems management|| Simulation of systems usage and loads (such as
Visual representation of servers, racks, networking, power and cooling equipment.
Alerts rendering through integration with systems management software (such as IBM Tivoli).
| Remote monitoring, problem determination and resolution.|
Remote systems management.
Modeling and simulations of space, power, and cooling planning.
Simulation of disaster recovery scenarios.
|Energy efficient data center|
Metaverse Leadership Data Center
|White-board brainstorming|| Brainstorming across different virtual spaces
and channels, including Metaverse, OpenSim, Sametime, Web.|
REST-style API for additional third-party development.
| Boost productivity by generating, categorizing,
and capturing ideas. Generate solutions without limitations of physical
spaces and time.|
Ideas shared across different media channels in real time (Web 2D/and 3D).
Data mining with persisted ideas.
| Metaverse – Brainshare application integration|
IBM Sametime 3D with “sticky” notes
Instead of standardizing on one platform, IBM teams evaluated and experimented with a wide range of technologies to understand their strengths and weaknesses while applying them to assorted business scenarios. This section describes, in alphabetical order, Active Worlds, Forterra OLIVE™, OpenSim, Second Life, Torque, and Unity3D.
Released in late 1990s, Active Worlds (AW) is an older 3D virtual world platform. AW provides both hosted and stand-alone solutions with scalability claims of up to 65,000 simultaneous users. The client environment is modeled after the Web browser concept, with many familiar controls to help offset the learning curve of the virtual world experience. AW allows user-created content to be imported from industry standard modeling tools. It comes with VoIP support, native media display capabilities, Web browser integration, and customizable avatars.
The scripting capabilities of AW allow for animation, sound, event and bot creation, synchronization, and control. The SDK is available on Windows and Linux as a C API. The AW grassroots community has helped to wrapper this API for PHP, .Net, and Ruby, with a Java implementation in the works. The SDK provides the ability for much better back end interactions using scripts and events triggered in AW. You can relatively quickly create a fully immersed experience with customized actions, bots, and hooks into the enterprise service infrastructure. This capability has been used to create plug-ins, such as one for uploading and displaying presentations in world.
AW is an appealing platform for generating virtual spaces based on specific events and scenarios. Content can easily be imported, controlled, and hooked into the enterprise. It also has a one-time pay structure, and high scalability.
Within IBM, AW has been used frequently for holding events and collaboration activities. For example, IBM's Greater China Group (GCG) recently held a graduation ceremony for 120 members of a management initiative, as shown below.
Figure 1. Greater China Group G100 Graduation
By using AW, their meeting was more cost effective, allowed broader participation, and had features and activities that may be prohibitive in the real world.
AW was also used by IBM Human Resources to host a four-day Learning Summit to reach out to learning professionals within IBM to discuss application of virtual social worlds in the education and training industry. Over 230 attendees used a combination of virtual worlds and wikis to communicate. They captured and shared their thoughts and ideas about corporate learning, grades K-12, and higher education industries.
On-Line Interactive Virtual Environment (OLIVE) by Forterra targets enterprise users. It includes out-of-the-box virtual meeting spaces, voice integration, video and audio streaming, machinima recording, content creation capabilities such as a scene editor, and predefined inventory with clothing, furniture, and other objects. OLIVE also comes with an SDK that lets you create and control content to fit your business needs.
Figure 2. Forterra OLIVE with IBM Sametime
You can animate avatars with emotions and gestures using either GUI control push
buttons (such as "Clap"), or special commands in the chat window (
'smile). In the avatar profile you can enter more information about your
avatar, including links to Web-based profile pages. Combined with spatially accurate
voice integration, avatars help make the in-world experience more real and
OLIVE makes collaboration easier with desktop sharing using a shared screen object. It can also share a Power Point presentation as an application. With multiple screens, you can share Power Point on one screen (limited to the resolution of the Shared Screen object (1024x768)) with an OLIVE client on another screen. You can enter presentation mode in full screen and run it as-is with animations and transitions, all while being in the OLIVE client and participating in-world. Another virtual collaboration feature is the ability to play streamed video from a Windows Media server.
OLIVE comes with the following base content:
- Products: objects such as clothing.
- Scenes: static objects, such as buildings, streets, and trees.
- Actives: actions that can be performed by the avatars or objects.
- Editor templates: allow you to add new objects using the scene editor tool.
The OLIVE client contains a base content pack that includes a default world called Zville and scenes called peninsulacity2 and conf_layouts. Additional sample content includes Meetings, Medical, Army, Navy, and FirstResponder. For example, the meeting content has a variety of conference facilities and products beyond the base pack. Content packs generally include matching products such as uniforms, equipment, and scenes. Content packs are installed on the server, and are downloaded and installed by all the clients.
Most of the content is customizable using Schema, an XML-based language. Schema can be used to create existents, or data objects that are the foundation of content objects. The customization can be done by creating new Schema documents or by modifying existing documents. Other content enhancements are done through C++ and a rich set of classes and interfaces.
Integration with IBM Lotus Sametime is achieved through a plug-in that lets you schedule and launch into a virtual meeting space from a Sametime chat session.
A virtual meeting scheduler that runs in a Web browser lets you schedule meetings and incorporate them into your calendar. In addition to a traditional date and time selection, the scheduler allows you to choose the kind of meeting room, and the type of furniture and accommodations inside.
The integration with the Sharable Content Object Reference Model (SCORM) makes OLIVE
a good candidate for virtual learning. The SCORM configuration is invoked by the
/scorm and starts up with the basic interface. The
e-learning content is then displayed in a Web browser (currently Internet Explorer 6
or 7 only). The sharable content objects (SCO) are represented in OLIVE by lesson
books, instructor books, and local lesson objects. The SCO content is displayed in
the browser and is seen side-by-side with the OLIVE client window.
OLIVE is used by IBM early adopters for team events and meetings.
The OpenSimulator project, or OpenSim, started early in 2007 when a small group of developers began writing a 3D application server compatible with the Second Life™ client. The goal is to provide a flexible and modular base that you can use to create and customize your own virtual world. OpenSim is released under a Berkeley Software Distribution (BSD) license, making it both open source and commercially friendly. It can be installed on Windows, Linux, or Mac OSX, and it's easy to set up and run.
Figure 3. OpenSim and Brainshare integration
Compatibility with the Second Life client has been an advantage for people with Second Life content creation and scripting skills. Just like Second Life, OpenSim allows in-world content creation and scripting using LSL (Linden Scripting Language), or OSL (OpenSim Scripting Language) as it's called in OpenSim. OSL provides many existing LSL functions and has additional scripting capabilities, such as dynamic texture drawing features. OpenSim also supports other in-world scripting languages, including C#, which lets you use standard C# libraries to perform operations such as XML parsing.
Figure 4. Sametime 3D board with sticky notes
The recent appearance of alternative clients such as the Idealist viewer, and inclusion of the new client protocol Metaverse Exchange Protocol (MXP), aid a long-term goal of OpenSim to become a flexible virtual worlds platform accessible by multiple clients (or some say the Apache of virtual worlds).
Since OpenSim is open source you can extend the code base and include new functions to allow integration with enterprise systems, products, or other virtual spaces. Improvements are contributed back into the public OpenSim code base to benefit the larger community. Several IBMers worked with the community and contributed to the OpenSim project development early on, and this interest has been amplified by the growing use of the OpenSim platform within IBM.
IBM has an internal OpenSim grid with over 30 regions. There are many more regions not connected to this main grid. Applications developed include: Sametime 3D meeting spaces, brainstorming, calendaring, language translation, desktop sharing and presentation tools. Many of these use existing internal systems that expose their functions by way of Web services.
Second Life is where IBM's use of virtual worlds first evolved in early 2006. Second Life shares several key philosophies with Web 2.0, such as built-in social networking capabilities through the friends and groups features. User created content is the foundation of Second Life; people can make and distribute objects, clothing, and scripted items. A permissions system lets the creator specify that their item is copyable and whether the next owner can modify it. The creator can mark an item for sale and specify the number of Linden dollars they want to charge. In this thriving economy, Linden dollars can be withdrawn from Second Life and converted to U.S. dollars.
Figure 5 shows how Second Life was used by IBM to create a poster session.
Figure 5. IBM Academy of Technology poster session
In Second Life the overall world is known as the "grid" in which land is divided into regions of 256x256 meters. Regions can be subdivided into smaller parcels, each of which can have a different owner. The parcel owner can specify who has access to the land and what permissions they have. For example, whether they can build or run scripted objects. The owner can also choose to enable media options for their land, including video and audio streams, or private voice channels.
As a business platform, Second Life provided a place for IBMers from across the world to meet, socialize, and make new business connections. It also allows formation of IBM groups both for communication purposes and for access control to private areas of land.
From a technical point of view, Second Life also provides a platform where collaborative applications can be developed and deployed. The advantage of creating an application in a 3D social environment such as Second Life is that it's automatically presence-enabled. You can see who is using it and interact with them at the same time. It supports text chat, voice functions, and avatar customization. 3D models are created by combining and manipulating primitive object shapes and assigning textures to them.
The process for collaborative building projects is enabled by Second Life's ideal in-world building tools. These primitive objects can be assigned behavior by using LSL, which provides a range of functions for dealing with Avatars: communication, data, physics and many other functions for interacting with the world. Resources has more about LSL in Second Life.
As use of Second Life grew in IBM, it highlighted the need for an environment inside the firewall where IBMers could share confidential material. IBM, in partnership with Linden Labs, set up several SecondLife regions within the IBM firewalls specifically for hosting the IBM Academy of Technology conference (followed by other events). Linden Labs has since announced the alpha of their stand-alone Second Life server (codenamed Nebraska), which IBM has installed and is testing for events, collaboration, learning, and other business needs.
IBMers are using Second Life for:
- Meetings and events with both internal and external participants
- Team building
- Training and education
- Product marketing
- Demonstrations, such as the green data center
- Visualizing complex structures
and much more.
The Torque Game Engine (TGE) is a networked multi-player game engine with support for Windows, Linux, and Mac OS X. Flexible licensing and access to actual engine source code let you enhance and develop new features. TGE's scripting support allows for customization and content creation, which were both important in our selection of TGE. As a game engine, it lacked capabilities required in business and social context. Using TGE, our team developed 3D models and built our own framework to implement Metaverse -- a virtual spaces environment fully behind the firewall, and integrated with the intranet.
One of the first tasks was to integrate the Metaverse authentication process with the IBM Bluepages intranet login. The team could then store and retrieve avatar information and events, and connect them to real people. While in world, an avatar has a user selected name and a Bluecard that identifies business information.
To enhance collaboration, we added social network visualization representing social connections extracted from existing applications such as Beehive, an IBM internal social networking site. You can attach services objects that are 3D representations of Web services to perform certain functions (for example, displaying your local weather report on an in-world object). In Metaverse you can share documents streamed from other Web servers using existing Web services. We integrated with other IBM applications, such as the brainstorming tool BrainShare, where we used its exposed REST-style APIs. The ideas generated are shared in real time with those on the Web interface and from a Sametime plug-in chat window. In Metaverse you can schedule meetings on demand and create conference rooms dynamically. The conference rooms have a presentation screen for displaying shared documents.
Figure 6. Virtualization and workload visualization
Another space implemented in TGE was a green data center that models a real data center complete with racks, floor cooling, and remote server monitoring. The data center model allows lab monitoring without physical access, and enables the modeling of future additions.
A research project called Bluegrass built a software collaboration tool as an Eclipse plug-in. The tool modeled software projects using "sandboxes" and "trees" so that avatars can gather around to see and discuss code in a 3D environment.
Figure 7. Metaverse remote mentoring
The Metaverse was also adopted by IBMers to hold events, meet new people, and learn. For example, you could learn and network during remote mentoring sessions where you talk to someone in a meeting space with private proximity-based chat.
Figure 8. Presentations projection in Unity3D
Within IBM, Unity3D is being used to prototype lightweight dynamic spaces. It offers potential to provide an interface that's browser accessible, easy-to-use, and that can be tailored to fit the business need.
Table 4 summarizes the virtual spaces platforms that were discussed in this section.
Table 4. Virtual spaces platforms and their use in IBM
|Platform||Selection considerations||Use in IBM Enterprise|
|Forterra OLIVE||Quick on-boarding|
Pre-built spaces and presentation facilities
|Pilot deployment for early adopters includes team meetings and small events|
|OpenSim|| Familiar interface for Second Life
Wide scope for IBM community involvement and contribution
BSD licensing means anyone can get involved in development
| Meetings and small events|
Interoperability between regions
Data center modeling and management
|Second Life|| Publicly accessible and familiar to some users
| Events and meetings|
Interoperability with OpenSim
| Torque|| Simple interface|
Low workstation requirements
Control for 2D integration
| Remote mentoring|
Data center modeling
|Unity3D|| Web browser based deployment|
Light weight and customizable
|Proof-of-concepts to demonstrate 2D-3D integration and interoperability between worlds|
The global economic downturn provides a compelling driver for change, accelerates our transformation, and challenges some of the old ways of doing business. Our experiments in virtual spaces have already demonstrated tangible cost savings, as well as softer benefits in different areas of our business. Near-term projects include integration of virtual spaces with collaboration tools, video, and mobile technology to minimize the need for travel.
Yet there are more reasons to use virtual spaces for business enablement. As we build globally integrated enterprise, our communications are constrained by the flat, print-based model of today’s Web. We live in a 3D world and think visually. We need to bridge the gap between the flat Internet and the multi-dimensional reality by exploiting technologies that allow the next generation of immersion and integration between virtual and real worlds.
Stay tuned for Part 2 of these series, which will describe some of the virtual spaces we built in more detail. Learn more about social aspects, technologies used, architecture, business value, and lessons learned. The spaces will include remote mentoring between multicultural teams, training and events, white-board brainstorming, multilingual collaboration with instantaneous translation, integration of social networking tools, and systems monitoring. We'll also explore the benefits of an SOA-based approach to virtual spaces.
We thank Neil Katz for leading the definition of the CIO virtual spaces strategy. We also thank Craig Becker, Linda Ban, Suzy Deffeyes and Thomas Cook for their contribution to development of IBM virtual spaces in Second life and OpenSim. Metaverse would not exist without the hard work of Mike Ackerbauer, Rick Alther, Richard Newhook and Jeffrey Abbott. We also thank many past and present VUC colleagues (too numerous to individually name), and Linden Lab and Forterra representatives who either contributed to the development of virtual spaces in IBM or shared their thoughts in forums, blogs, or directly with authors.
- Read more about IBM and virtual worlds in the News and press.
- "Building a simple yet powerful MMO game architecture, Part 1" (developerWorks, Sep 2008) describes how the IBM educational MMO PowerUp was created.
- Watch "IBM Creates a Virtual "Rehearsal Studio" on YouTube.
- Visit OpenSimulator and learn how to get started.
- Try out the new Idealist viewer for OpenSim.
- Learn more about the new virtual worlds protocol Metaverse eXchange Protocol (MXP).
- Discover the capabilities of the Unity3D engine.
- Read a case study about the Academy of Technology Virtual World Conference held by IBM in Second Life.
- Explore the Active Worlds building platform for virtual worlds.
- Follow the activities of the IBM virtual worlds community on twitter.
- Read more about the evolution of IBM's virtual universe community.
- Peruse a collection of virtual world reports published by IBM.
- This open documentation resource on the Linden Scripting Language used in Second Life is to help scripters of all skill levels.
- Read more about the running of the IBM Academy of Technology multi-day virtual conference.
- Watch clips from the IBM Human Capital Management University held in Second Life.
- Watch the CNBC interview Conferences Go Virtual with Karen Keeter of IBM talking about Sametime 3D.
- See an example of an IBM Virtual Green Data Center.
- Read how the Lotus Sametime 3D project exemplifies how IBM creates software for holding face-to-face meetings in virtual worlds.
- Browse the technology bookstore for books on these and other technical topics.
Get products and technologies
- Download IBM product evaluation versions and get your hands on application development tools and middleware products from DB2®, Lotus®, Rational®, Tivoli®, and WebSphere®.
Dig deeper into SOA and web services on developerWorks
Get samples, articles, product docs, and community resources to help build, deploy, and manage your cloud apps.
Keep up with the best and latest technical info to help you tackle your development challenges.
Software development in the cloud. Register today to create a project.
Evaluate IBM software and solutions, and transform challenges into opportunities.