2D Internet in 3D Internet – or better APIs?

During the Virtual Worlds Think Tank last Thursday, I got to thinking about what the 3D Internet may mean. I was considering some of the limitations of Linden’s current engine, which is one of the technologies that may move us in the right direction.

Linden have stated that they want to put the Mozilla engine (Gecko) inside Second Life. This is potentially a great move. Right now, in order to display a web page on a prim or surface, you have to take a snapshot of the page on some proxy outside of SL, and then grab and render the image inside SL. By putting the browser inside the engine, you potentially have access to all the richness of the browser as an application platform.

But, let’s wait for a minute and think about how useful this is. I’m a 3D person in RL, sitting at a 2D computer interface which enables me to deal with information. Now I start using Second Life or some similar technology, and all of a sudden I’m looking at a 3D representation of myself moving around a 3D environment – a 3D Internet, if you will.

So, if we just put the browser inside that environment… don’t we have a 3D person in RL looking at 2D screen… which contains a 3D person in SL looking at a 2D screen?

You can already perform an HTTP request from within LSL (the scripting language of Second Life). This is great – standards-based integration, providing a way of getting data from the rest of the Internet into the environment, to enrich any objects that are built there. Our own epredator Potato and colleagues have been using this to get data from various external systems, to great effect.

The problem with llHttpRequest is that once you’ve got the response, you have no easy way of parsing it. There’s no XML parser in LSL – you are back to good old-fashioned string parsing. This makes SOAP/HTTP calls cumbersome to impractical; it’s a good argument for REST-based services, but even then, if you are getting back anything more than a tokenised string, it can be a pain to deal with.

To me, the point of this exciting new environment is that we can present information in an entirely new way. Once the current stability issues are sorted out, I’d really like to see LL make it easier to deal with the information that we can pull in from the outside world. An Embedded web browser would be cool, but I think it (partially) misses the point.

Technorati tags: , , , , , , , , , , ,

3 thoughts on “2D Internet in 3D Internet – or better APIs?”

  1. I agree.

    While not being able to get 2D content onto 3D surfaces in Second Life is sometimes a pain (there are options, like XyText, but they all have limitations), I think making it too easy to put web content directly onto anything would be a bad idea: it’d just be too easy to be lazy and stick with outdated ways of doing things.

    Adding more built in support for dealing with external services would be far more valuable. And if something works better in 2D, then I’m happy to use a traditional web browser, making full use of my screen, instead of squinting at a mini screen withing a screen.

  2. Agree partly 😉

    Although your argument is reasonable, and certainly points out that having a 2D browser inside a 3D environment will not be the end of the story, I do believe that a great advantage can be achieved, because integrating the 2D Internet in the 3D world makes it more convenient to do “everything” in the 3D world. Ultimately people might then shift over from 2D (old) browsing to only 2ndlive interacting. Or what about putting 3D artifacts on 2D web pages – for those in 2ndlive able to grab and toy around with the object/product ? Would you not agree, that then maybe some more “old fashioned 2D browser users” would decide to switch over. To do a shift from 2D to 3D we need a smooth transition, no matter how redundant seeing 2D browser window in a 3D world on a 2D screen by a 3D human is 🙂

  3. Fair point, ja b. I’m not saying that we shouldn’t have the option of using a 2D browser, and your suggestion that it can help move people to a 3D world is a good one. I’m just saying that we should stop looking at the online world and the way that information is presented there as a flat surface 😉

Leave a Reply