Open Wonderland FAQ
- General Questions
- Download, Install, and Run
- Content Creation and Application Sharing
- Getting Involved
Open Wonderland is a 100% Java, free and open-source toolkit for building 3D interactive virtual worlds.
Nothing! If you use the version provided on the open source site, then both the server and client software are free. Wonderland is licensed under the GNU General Public License v2.0 + Classpath Exception. See the Licensing section below for more details.
Yes, assuming someone has set up a Wonderland server for you, or you have good enough system administration skills to set up your own Wonderland server. Wonderland is primarily a toolkit for developers to create virtual worlds for others, but the version of Wonderland you can download from the open source project (see Binary Downloads page) has a rich set of features targetted at end users.
Open Wonderland was initally developed and funded by Sun Microsystems. Since February 2010, it has become an entirely community-focused project with the Open Wonderland Foundation providing a small amount of financial support as well as coordinating the efforts of the community. You can find our logos here.
No. Open Wonderland is experimental technology that is in its early stages of development. The Open Wonderland Foundation does not have access to QA testing, documentation, marketing, or other resources typically associated with a product group.
Version 0.5 is currently in an "early access" release and available to the public.
You can either download a binary build from the Binary Builds page or download source code following the instructions in the tutorial Download, Configure, Build and Run from the Wonderland v0.5 Source. The binary download includes both the client and server software. Users do not need to download the client software separately: when they first connect to your server, the client software is automatically downloaded and cached using the Java™Web Start technology.
For the Wonderland client, you will need a modern PC (1.5Ghz+, 1GB RAM) with hardware-accelerated OpenGL drivers installed. For Solaris and Linux we strongly recommend Nvidia cards/drivers. In our experience, Nvidia drivers are more stable and feature complete than others. You will also need an accelerated graphics card, typically geared towards running 3D games. We recommend a graphics card with 256MB of video memory for the best performance, but 128MB should also work.
The minimum requirements for a Wonderland server suitable for software development are the same as the requirements for running the client. A Wonderland server plus one or two clients can comfortably run on a high-end desktop or laptop. For an installation that supports multiple users, you will need a server-class computer. For optimum performance, you can run different Wonderland services on separate servers.
Since Open Wonderland is based upon Java, the client will run on Windows, Mac OS X, Linux, and Solaris. For the X11 application sharing feature to be enabled (this enables you to run applications such as Firefox, Open Office, and NetBeans), the Wonderland server must be running on either Linux or Solaris. Note that 2D Java applications such as the shared whiteboard, multi-user PDF Viewer, sticky notes, web cam viewer, or video player will work when the server is run on any platform.
We have found that it is best to be connected to wired ethernet (not wireless) over at least a DSL-speed link.
To run the client browser, you'll need the Java Runtime Environment (JRE) version 6.
You can download Java for free at: http://developers.sun.com/downloads/top.jsp#javase.
Open Wonderland uses a Java technology called "Java Web Start," so if users connect to a publicly available world hosted over the internet, they do not need to explicitly download the client software. Typically, those who run a Wonderland virtual world will publish a URL; simply point your web browser to that URL, click on the Launch button, and the client software will download automatically (and be cached on your client for future use). Refer to the tutorial Launching Wonderland Clients using Java Web Start for more details.
Thanks to a donation from St. Paul College, the Open Wonderland Foundation runs two community servers. The OWL Events server hosts developer meetings every Wednesday, in addition to other periodic events. Upcoming events are published on the OWL Facebook Events page. For exploring on your own, please visit the OWL Demonstration World. Volunteers are available to provide guided tours of this space. If you would like to schedule a guided tour, please contact us.
Sure! Visit our Binary Download page to download the latest software release. To test things out, you can run both the client and server on your desktop or laptop computer. At this point you are crossing over the boundary from an "end user" to a "system administrator" of Wonderland. Consult the Open Wonderland documentation wiki for complete instructions on how to configure Wonderland.
The Wonderland server installation comes with a web-based Server Adminstration console. The tutorial, Open Wonderland v0.5 Web-Based Administration, provides details on the features included in the Server Adminstration console and how to use them.
Here is the list of standard ports that Wonderland uses to talk with the server. Some of these port ranges are configurable, so this list may not apply to all Wonderland servers.
TCP 10200 - 10300
UDP 10000 - 10200
There are multiple ways to add new content to a Wonderland world. Each server has a set of 2D and 3D applications installed. These can be accessed by selecting Insert --> Object... from the menu. This will allow you to add new 2D applications to the world, such as a shared whiteboard or sticky notes. It also allows you to add 3D applications, such as a virtual Audio Recorder or a virtual Video Camera.
Drag and drop is also an easy way to add new content. You can drag and drop 2D images in .jpg, .png, or .gif format. You can also drag and drop PDF documents and 3D models in Google Earth (.kmz) format. It is fun to explore the thousands of free 3D models in the Google 3D Warehouse. The ones marked with a blue ribbon are ready to download in .kmz format, but others can easily be exported to .kmz using the free version of Google SketchUp.
For more information, refer to the Content Developer section of the Open Wonderland documentation wiki.
Wonderland supports two types of 2D applications. The first type is 2D Java applications. These include a multi-user whiteboard, a multi-user slide show view for PDF documents, sticky notes, a web cam viewer, and others. These applications were written specifically to run in a multi-user environment. We call them "share-aware" since they can be used by multiple people at the same time.
The other type of 2D applications you can run inside a Wonderland world are X11 applications. These refer to applications that run on Linux systems and include popular programs such as Firefox, Open Office, and NetBeans. While multiple people in a virtual world can watch someone editing in one of these applications, these are single-user applications that require control to be passed from one user to the next. X11 applications that are already installed on your server can be configured to launch within Wonderland by using the Server Administration console.
Once you have 2D or 3D content added to a world, you can use the in-world tools to position, rotate, and scale the objects. You can also add functionality to the objects by applying capabilities. For example, you can turn an object into a sound-proof area, you can add audio to an object, or you can turn it into a clickable link. Other capabilies include the ability turn an object into a portal or into a container for easily grouping objects together. You can also apply security properties to any object. For more information, see the Open Wonderland Capabilities video.
Detailed instructions are provided in the tutorial Building a Open Wonderland World from Scratch.
Open Wonderland is an open platform that supports the use of most open source and commercial 3D modeling tools that can export to the Collada format. Google SketchUp is one of the most popular and easiest to use free tools that works well with Wonderland. Blender is another free tool which is more complex, but allows you to create higher-fidelity 3D models that take greater advantage of Wonderland's high-end graphics rendering capabilities. You can also use commercial modeling tools such as Maya or 3D Studio Max from Autodesk.
A module is the equivalent to a plugin in other environments - it is a way to extend the functionality of Open Wonderland. A module can include artwork, Java code, assembled worlds, or other resources. Examples of modules include a Virtual Microphone which amplifies an avatar's voice, a Top View Map which shows what the world looks like from above, and a Video Recorder that captures video from in-world interactions. Many more modules can be found in the Module Warehouse.
The Module Warehouse is part of the Wonderland web site that allows you to find modules created by other people and add links to your own modules to share with others.
Not necessarily. The Module Warehouse includes both free, open source modules and modules available for sale.
If you haven't already done so, navigate to the Module Warehouse page and create a user account. Make sure you are logged in. Then click on the "Contribute" link. You will be asked to fill out details about your modules as well as provide a link. You can either provide a link directly to a .jar file that Warehouse users can download directly, or you can provide a link to your own ecommerce or other site. Please be sure to add documentation when you contribute a new module, either on the module page or in the form of a link.
Once you have downloaded a module from the Warehouse and saved it on your computer, you will need to have adminstrator access to your Wonderland server. There is a simple web-based tool for uploading and installing new modules in your Wonderland server. See the Managing Modules section of the Open Wonderland v0.5 Web-Based Administration tutorial for details.
That depends on what the module does. If the module adds a new 2D or 3D application to the world, it will typically be available by selecting Insert --> Object. Some modules add new capabalities to the world. In this case, the new functionality will be listed in the Capabilities dialog that you can access using the "Object Editor." Other modules may add menu items or may extend the Wonderland server in ways that are not visible in the user interface.
Open Wonderland is licensed under the GNU General Public License (GPL) v2 with the "Classpath" exception. You may find the original text of the GPL v2 license using the following link: GNU General Public License v2
The Classpath exception was developed by the Free Software Foundation's GNU/Classpath Project (see http://www.gnu.org/software/classpath/license.html). It allows you to link an application available under any license to a library that is part of software licensed under GPL v2, without that application being subject to the GPL's requirement to be itself offered to the public under the GPL.The pertinent text of the "Classpath" exception to the GPL v2 license is:
"CLASSPATH" EXCEPTION TO THE GPL VERSION 2
Linking this library statically or dynamically with other modules is making a
combined work based on this library. Thus, the terms and conditions of the GNU
General Public License Version 2 cover the whole combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent modules,
and to copy and distribute the resulting executable under terms of your
choice, provided that you also meet, for each linked independent module,
the terms and conditions of the license of that module. An independent
module is a module which is not derived from or based on this library. If
you modify this library, you may extend this exception to your version of
the library, but you are not obligated to do so. If you do not wish to do
so, delete this exception statement from your version.
Certain source files distributed by the Open Wonderland Foundation are
also subject to the above clarification and special exception to the
GPL Version 2, but only where the Open Wonderland Foundation has expressly
included in the particular source file's header the words "The Open
Wonderland Foundation designates this particular file as subject to the
"Classpath" exception as provided by the Open Wonderland Foundation in the
License file that accompanied this code."
The Open Wonderland Foundation wants community members and commercial vendors to share any improvements and/or bug fixes they make to the Open Wonderland code base itself. The GPL v2 license supports this objective.
Open Wonderland includes a well-defined "module" system. Third-parties may develop modules for Open Wonderland that incorporate custom world designs and extensions to Open Wonderland using its APIs. We want everyone, both non-commercial community members and commercial vendors, to be able to build and redistribute these proprietary world designs and extensions to Open Wonderland as they see fit. The addition of the "Classpath" exception to the GPL v2 license allows developers to license their independently developed modules that are not derivatives of and do not contain portions of Open Wonderland code as they see fit under license terms other than GPLv2. Modules need not be licensed under the GPL v2 license terms, unless they are derivatives of or contain portions of Open Wonderland code.
I am experimenting with Open Wonderland and modified its core libraries. Must I make my modifications available?
It depends. If you have not redistributed the software outside of your organization, then you are not required to make your modifications to the Open Wonderland core libraries publicly available -- the license terms of GPL v2 apply only when the software is distributed outside of your organization. It does not apply when you are merely using the code (or modified code) internally within your organization on its facilities.
If you have redistributed the core Open Wonderland libraries that you have modified, then the GPL v2 license terms apply. (See "Terms and Conditions for Copying, Distribution and Modification" in the GNU General Public License v2). Note that allowing users located outside your organization and off its facilities to connect to your Wonderland server over the Internet constitutes a distribution of the Open Wonderland software, because as part of the process, clients download your modified Open Wonderland core libraries.
To continue the example above, now consider that in order to implement the "poster" cell type, you need to add functionality to the Open Wonderland core library classes (e.g. the base "Cell" class). The GPL v2 licensing terms apply to these modifications if you have distributed your modified Open Wonderland software outside of your organization.
Project Wonderland v0.4 is licensed under the GNU General Public License (GPL) v2. It does not include the classpath exception. The license was changed in Project Wonderland v0.5 to include the classpath exception and the classpath exception is being maintained for Open Wonderland.
There are nearly limitless possibilities with Wonderland. Once you have become a proficient end user, and possess the necessary visual design or software engineering skills, you can build new worlds and even extend the core functionality of the Wonderland software. We maintain a comprehensive documentation wiki site that describes these advanced topics.
There are many ways for both software developers and others to get involved. We invite you to read Wonderblog, the official Wonderland blog and add your comments or feedback. We also invite you to read, post questions, and help answer questions on the Wonderland Discussion Forum. Another great way to get involved is to help test new software versions. Refer to the Testing 101 guide for more information on how you can help with this important task.
If you are a Java developer, you can create new modules and share them with the community through the Module Warehouse. You can also help by localizing the Wonderland software to work in your native language. Experienced developers may also wish to contribute to the Wonderland core code.
By signing the agreement, you assign the Open Wonderland Foundation joint ownership of the copyright of your code, text, or other content. Without this joint ownership, the Open Wonderland Foundation could not bundle and distribute the code and documentation or create binary releases.