interreality.org [VOS]
[Home] [About] [Screenshots]
[Download] [News]
[Documentation]
[Forums] [IRC] [Mailing Lists]
[Bug Reporting] [Wiki]

What is Interreality?

Interreality is working to develop a new kind of on-line software to allow people to collaborate, communicate and create using dynamic, distributed data. This software is called the Virtual Object System, or VOS.

It is a general purpose system, designed to be extensible to many kinds of applications and to represent many kinds of data. The primary application focus of Interreality is developing multiuser collaborative 3D virtual environments. A secondary project is using VOS as a content management system for websites (this site uses it, for example). However, there are many other application possabilities for the platform, both for structuring data as well as structuring computation, such as web content management; high level sensor data network with user interface; user interface to multiple databases; and more.

Our mission is to create software that:

What is VOS?   →Advantages of using VOS   →More information   →Download   →Project personel and history  

What is VOS?

VOS is free, open source software for creating distributed object-oriented data structures (a distributed object system), for dynamic collaboration between applications and users.

The core concept of VOS is that of polymorphic vobjects linking to each other to form data structures, which send asynchronous messages to each other to trigger events and behaviors, or to communicate change in state. Programs using VOS can construct networks or parts of networks of objects, manipulate them, and respond to changes. Vobjects can be combined, recombined, and rearranged dynamically on-line to make changes to the system; vobjects can be used in any number of different contexts, even different applications; vobjects can exist on any network host, or in any program, or be implemented in different languages; vobjects logically operate concurrantly in multiple threads or proceses, without worrying about locks or other synchronization issues -- vobjects can structure data, computation, or both, and VOS applications can take advantage of multicore hardware, and multi-computer clusters.

VOS is really a stack of software technologies, and programmers may use individual components, but they combine to form a complete platform:

diagram showing VOS software components and their relationships
  1. VOS Infrastructure Protocol (VIP) - A sophisticated, efficient, and reliable transport protocol based on UDP, permitting multiple prioritized channels of information to be transferred in parallel over a single logical connection. Read more about VIP here.
  2. Virtual Object System (VOS) - The core library, providing an object-oriented programming interface to describe, interlink and manipulate polymorphic objects locally and over the network (using VIP), and to process events correctly in parallel threads. Read more about the VOS design here.
  3. For 3D virtual environment applications, the Abstract 3D Layer (A3DL) is a standard set of extensions on top of VOS (object types) for representing 3D data, such as meshes, lights and materials. Read more about A3DL here.
  4. For 3D virtual environment applications, the Crystal Space VOS Plugin (CSVOSA3DL) is a plugin to the Crystal Space 3D Engine library which simplifies loading scene described using A3DL into the CS engine. Read more about Crystal Space plugin here.
  5. Interreality/3D client program - Our main end-user application, built using all the technologies described above (and a few others). This is the client program users will use to view, explore, and also edit 3D worlds. Other tools operate at this level as well, such as the mesh shell.
  6. (For web applications, a VOS extension serves as a web server, gathering VOS Vobjects into XML or HTML documents and sending them to the web browser. This web server runs in a server daemon called omnivos in combination with any other VOS extensions and services required.)

To look at it another way, the VOS component stack is analogous to the technologies that make up the World Wide Web: VIP is like TCP; VOS is like HTTP; A3DL is like HTML; CSVOSA3DL is like an HTML rendering engine such as Gecko, KHTML, or the Windows HTML rendering or presentation framework libraries; Ter'Angreal is like the web browser. However, VOS has been designed from top to bottom for more dynamic, active applications, multiuser 3D worlds in particular.

VOS Advantages

Both users and developers benefit from a fully open platform. All components — development libraries, servers, clients — are freely downloadable and full source code is available under open source licenses. VOS is designed to support any number of interlinked servers running anywhere on the internet; It costs nothing to run a virtual world and there are no limits on what your virtual world can be or do. VOS is designed for future extension for new core features as well as custom applications working together with standard tools.

For users

For software developers

More Information

For more information about the VOS system, and about how to program with VOS, see Creating Intereality and the documentation page.

In particular, see:

Please contact us at info.UOejt@interreality.org if you have any questions, or have a particular need or idea and are interested in finding out how Interreality and VOS can help.

Download Example Code and SDK

Today the VOS design is mostly complete and is the basis for other Interreality projects such as 3D virtual environments. We are now working on some key improvements to the implementation of VOS and some aspects of the protocol and object system design. We invite users and developers interested in testing and exploring VOS to download libraries and applications and let us know what you think and get involved in development on the mailing lists and IRC channel, or sign up for the announcement list to be informed of future releases.


About The Interreality Developers

The project leaders are Peter Amstutz (design and implementation of VOS core libraries, design and implementation of VIP networking protocol, implementation of applications including mesh, hypervos, A3DL, CSA3DL and TerAngreal), and Reed Hedges (metaobject libraries, hypervos, TerAngreal, VRML server, mesh).

Contributors include Lalo Martins (Python scripting support); Karsten Otto, Freie Universität Berlin Institut für Informatik, (old VOP protocol maintainence, Java support, documentation); Neil Mosafi (contributor to CSA3DL and TerAngreal), and several other supporters doing testing and bug reporting, helping with planning and design, and more.

A complete list of people who contributed code to VOS can be found in the AUTHORS file in source code package.

Commercial Support

If your company or organization is interested in discussing paid support and consulting, contract custom software development, sponsoring general VOS development or implementation of specific features, or hosting of VOS-based services, please contact us at info.UOejt@interreality.org.

History

VOS has been in the works for several years now. Here is a brief history of our work.

Subscribe to the announcements list for occasional notification of new software releases and general Interreality project news

Email Address:

Or, visit the announcements forum to view news and announcements, or subscribe to the announcements RSS feed.