andrew tanenbaum once remarked that “the network world is a jungle” and back then he was referring to the plethora of network protocols to choose from (anyone remember ISO CONS, TP4, X.25, X.400, the ISO/OSI vs TCP/IP wars, ISODE? ah, those were the days…) — a couple of years later (well, actually more than 20 years later, i’m showing my age) the jungle has become even denser and sometimes it seems we are going to suffocate in it.
looking at virtual worlds, we don’t (yet?) have a jungle but there sure are quite a number of virtual world systems and virtual world “wannabes” out there — raising the questions which ones are really virtual worlds (and which ones are just glorified 3D or worse 2.5D chat systems) and which should we support?
virtual worlds & glorified chat systems
the first question — what features make a system a virtual world system as opposed to a mere embellished chat system with avatars — is, i admit, a bit of a challenge. intuitively, i guess, we are all tempted to state, “i’ll recognise a virtual world when i’m in it.” — which is probably true for most of us, but is not really a good criterium.
what do we expect from a virtual world? well, it has to feel real; that means, it has to be able to draw us in to the virtual world in such a way that we no longer realize that we are not the avatar and also forget that we in fact and in reality sitting in front of a computer with just a tiny window into the virtual world and a rather limited way of interacting with that virtual world — this being drawn in is what we call immersive experience. for me an immersive experience only occurs when i can interact with a credible, 3D world. Credible in this context means that the virtual world at least exhibits similar features to and “behavior” as the “real-life” world i’m living in (is it real, though?):
- 3D: things and scenes before me appear to be three dimensional1
- free movement: i can move about a scenery as i want to and change perspective as i want to
- impact: i can influence and change the environment i (or my avatar) am part of
- interact: there are others “in-world” and we can interact with one another (chat, take a walk together, do things together)
- create, sell & buy: i can create stuff, i can give stuff away, accept stuff from other avatars, i can sell and buy stuff
- physics: the virtual world exhibits limitations2, either by imposing “laws of physics” on objects or by restricting resources (size of an virtual world space) or by restricting my abilities (e.g., how far can i see? how far can i hear?)
those points, i think, establish a baseline of what constitutes a virtual world system. anything below that baseline is a glorified chat system at best, i’d say. anything above that baseline just enhances the experience.
ideal virtual world systems & virtual universes
what would an ideal virtual world system look like? when can we talk of a virtual universe?
obviously, an ideal virtual world should be more than just a virtual world, so what are the features that (i think) make it ideal?
-
real word–virtual world interconnect: first, i’d like to be able to link real world and virtual world. touching an object in the virtual world, for example, could open a browser window (or map a browser window into the virtual world); or the status of an object in the real world should influence the status of one or more objects in the virtual world.
-
internal & external APIs: then, second, we should be able to program the virtual world system from the inside as well as from the outside. this feature, requires that there are in-world and real-world virtual world APIs that allow us to interact with the virtual world at least on the same level as an avatar of that virtual world.
-
property: an ideal virtual world system gives me control over the stuff i own. i can take my belongings and make a backup onto my backup service. i can take my belongings and leave (and join a different virtual world). i can pass on whatever i own to another avatar.
-
self-hosting: next, with an ideal virtual world system i can host my own private virtual world and have complete say over who can access and who cannot access it.
-
virtual universe grid: i can hook up to other, independently operated virtual world systems of (at least) the same type and create a virtual universe grid.
-
cross-platform & accessibility: an ideal virtual world aims for cross-platform coverage and accessibility. i can run the client on a windows system, on an apple OSX system, a linux system, or on a mobile platform. if i’m blind i can use a text-only client. when i’m away from broadband connections i can use reduced graphics clients or even text-only clients.
-
open source: finally, an ideal virtual world gives me open-source3 access to both the client and the grid (server) code.
“so weit, so gut”… the next step will be to try and collect information about existing virtual worlds.
SecondLife, contender to the throne?
SecondLife seems to do quite well in the virtual worlds category. the source code to the client has been open-sourced by linden labs (who own the current SecondLife grid). the server code has been promised by linden labs but that so far has not happened. however, as tao takashi reported on his blog recently, linden labs have instantiated the SL Architecture Working Group recently and invited experts from all over (disclaimer: yours truly is part of it as well) and with the following vision (in the words of zero linden):
We imagine a future where Second Life is able grow beyond the borders of Linden Lab. We see regions running on open source, alternative simulators. We see web services that allow people to build mash-ups of Second Life and the Web. We see organizations being able to integrate their members and their members’ avatars. This is the vision of future Second Life Grid that we want to develop.
Last week we hosted the first Architecture Working Group meeting. Our aim is to build the technology and standards for such a vision by developing them through the direct involvement of Linden Lab, external developers, and the community. The initial group included Residents and organizations active in the technical development of Second Life, as well as virtual worlds in general. We hope it will be the first of an ever expanding process.
thus, we can hope for and, in fact, expect SecondLife to develop over the coming months and years into a fully fledged virtual universe!
OpenSim
OpenSim while in many aspects not quite on par with the SecondLife grid (but making steady progress) has already the concept of foreign grids, providing the first version of a virtual universe!
others…
still need to investigate ActiveWorlds, torque based VWs, & croquet. stay tuned :-)
-
the rendering doesn’t necessarily have to happen on a screen in front of me, though! it can as well take place inside my head: the 1980s apple II colossal cave adventure game (dating further back to the 1970s at least), was completely text based and yet through textual scene descriptions was also immersive! likewise, text-based MU* games exhibit that same immersive quality. ↩
-
though i’m not a 100% sure about that point: wouldn’t a virtual world without limitations (no boundaries, endless resources) still feel real? it might take away some of the fun that we gain from porting real world stuff into virtual worlds — would that lessen the immersive experience (e.g., why have helicopters in virtual worlds when we can as well “fly” or teleport — only because we have fun “flying” a helicopter in-world; even i, who absolutely hates being on-board flying or suspended monstrosities such as planes or cable cars, enjoy flying in virtual worlds…)? ↩
-
under a true OSSL approved license. ↩
