Friday, May 18, 2007

Some SL Shots...another mash-up too

In previous posts, I'd been talking about "SlIcer". It's really a simple framework, and it's only in rev 1, so don't let me give you the impression that it's more than some Ruby scripts, but I do think SlIcer is illustrating some cool 3D web mash-up ideas.

I am working on interacting with 'mash-up' info in the 3D world, concentrating on a few concepts:

  • Representation, and interaction with spatial information in a 3D environment.
  • Triggering real-world actions from a 3D interface.
  • Creating visualizations of real-world information using primatives in Second Life.
Here are a few simple illustrations I've been working on. First is a 'Mapping Room'...

There are a few things going on in this pic. See that small green sphere above the map? That's a SecondLife part of SlIcer. It's an object sensor/hub. This thing scans for objects in range, and sends an inventory up to the RL server with key, object name, and position. I'm standing on a big map, and on this map are 'counters' for real world objects. The counter closest to me on the right is a representation of a communications truck with a balloon antenna. This has a known name, and using SlIicer, I can hook up a GPS signal from the truck, get the lat/long, as well as other information, and push it into SL to move the truck counter on the map as the real truck moves. It's hard to see, but the object has a balloon that deploys as the real-world balloon deploys. People collaborating on the map in Second Life can walk around, point, etc. This has a couple of benefits:

  • Collaborators in Second Life are able to point, position their avatars, and refer to objects on the maps. This is not possible with other forms of collaboration.
  • Situational information is presented as ambient information. In a funny way, you can create virtual physical devices representing virtual data. How cool is that? As a side-line, our work with AmbientDevices orbs is going to merge in here too, where an orb can reflect information about what is happening in the virtual space.
Note also that SlIcer is keeping track of objects on the map, and it is possible to view the positions of counters as symbols generated by a GIS map server. Individuals in Second Life could move a counter to a particular place on the virtual map, causing real-life GIS to be updated! This works (with some bugs to work out), but it was hosing up when I took the screenshot. There is a media viewer in the above picture that's displaying a 2D barcode link to approx31's's supposed to show a map with the Second Life data as symbols in a GML layer. Just trust me, it does kinda work.

Anyhow, here's another mash-up, attempting to do visualization of data. If only you could load textures on prims dynamically from a URL! This pic shows a tropical storm mash-up. It's a mock-up right now, as I look for a good data source. The idea would be to parse a data stream, such as RSS, that shows current tropical depressions and hurricanes, and depict them on a map. Also shown is a fly-out I'm working on. As it operates now, you click on a storm, and the fly-out rezzes. The flyout uses prims to depict intensity (the red bar), storm directions (the compass rose and pointer), and storm track speed (the blue bar). If I can find a data feed, this could be wrapped up into a stand-alone mash-up!

The storms are prims too, in (real) Second Life they spin and stuff, way cool. It's dumb stuff like that that amuses us programmers.

No comments: