|
|
lg3d-wonderland
|
| Summary | Collaboration platform for lg3d |
|---|---|
| Categories | None |
| License | GNU General Public License (GPL) |
| Owner(s) | deronj, hideya, kaplanj, krishna_gadepalli, paulby |
Project Wonderland is a 3D scene manager for creating collaborative virtual worlds. Within those worlds, users can communicate with high-fidelity, immersive audio and can share live applications such as web browsers, OpenOffice documents, and games. A number of Wonderland video demos and interviews are available in the News section below.
The vision for this multi-user virtual environment is to provide an environment that is robust enough in terms of security, scalability, reliability, and functionality that organizations can rely on it as a place to conduct real business. Organizations should be able to use Wonderland to create a virtual presence to better communicate with customers, partners, and employees. Individuals should be able to do their real work within a virtual world, eliminating the need for a separate collaboration tool when they wish to work together with others. Individuals should also be able to tailor portions of the world to adapt to their work needs and to express their personal style. The types of collaborations that can happen within the space will eventually include audio communication, live desktop applications of all kinds, and collaborative creation of world content (both graphical and procedural).
One important goal of the project is for the environment to be completely extensible. Developers and graphic artists can extend the functionality to create entire new worlds, new features in existing worlds, or new behaviors for objects and avatars. The art path for Wonderland is also open. The eventual goal is to support content creation within the world, but in the shorter term, the goal is to support importing art from open source 3D content creation tools as well as professional 3D modeling and animation applications. More information about content creation tools can be found on the project wiki:
There are a variety of ways to participate actively in the Project Wonderland community. Anyone with an interest is welcome to join the Wonderland interest forum:
Developers may wish to volunteer for one of the many features included on our wish list:
Alternately, they may propose and implement features of their own devising. Those with 3D graphic design skills are invited to create new content and animations. User interface designers can help us to invent or refine interaction techniques for collaboration in the 3D world. We invite everyone with an interest in this project to suggest new feature and content ideas. Please add these to the wiki as you think of them and volunteer to help out.
MPK20 is the first virtual world created using the Wonderland scene manager. All the artwork for this Sun Labs project is provided here as an example. See the Sun Labs web site for more information and screen shots:
We are still focused on developing, integrating and testing key system components so there are no binary builds of the project available at the moment. If you are comfortable, however, building projects from source with ant, you can download and run the system on your machine. Both the server and client will run happily together on a single modern machine with a good graphics card.
The build system makes a few assumptions about the location of various systems on which this project relies. To make life easy, follow the directory hierarchy described here.
export CVSROOT=:pserver:<java.net username>@dev.java.net:/cvs
cvs logincvs co lg3d-core lg3d-demo-apps cvs co lg3d-wonderland cd lg3d-core ; ant cd ../lg3d-wonderland ant run-sgs'ant run'Build problems? We rely on a very recent version of Java3D which is included in the files you downloaded. If you experience build problems, you probably have Java 3D installed in the JDK. You should remove Java 3D from the JDK (or replace it with the latest Java 3D 1.5.1 nightly build). Also, see special instructions for building on Mac OS X.
Note the build.properties file includes the IP address of the server. Normally this is set to 127.0.0.1 (localhost) for testing, but if you want to run the client and server on different machines you should create a new file (if it does not already exist) called my.build.properties and set the property sgs.server
Project Wonderland relies on the following projects for key technologies.
The ability to run X11 applications inside the virtual world and share them between users is an important feature of Wonderland.
Click here for instructions on how to use this feature.
Wonderland X11 App Sharing uses a special X server known as the "X Remote Window (XRW) Server." This server is similar to an VNC server except it handles windows separately. That is, instead of just displaying an entire X desktop inside the virtual world it allows windows to be individually integrated into the virtual world. This allows X windows to be treated as first class objects in the world. For example, these windows can be moved into different locations in the world and do not even have to reside in the same plane. They have complete freedom of movement and orientation.
The source code for XRW is contained in the Xorg master git repository in a branch called
wonderland-dev. To obtain this code, do the following:
git clone git://anongit.freedesktop.org/git/xorg/xserver
Most of the XRW code lies in the directory
cd xserver
git checkout wonderland-dev
xserver/hw/vfb.
This code is licensed under the MIT License.