Archive for the 'OpenSim' Category

Nov 19 2008

Immersive 3D article in BAAMA Journal – GIS in OpenSim and Second Life

The San Francisco Bay Area Automated Mapping Association is our local URISA chapter, and publishes a twice-yearly journal that covers some interesting local geospatial projects.  The latest,  BAAMA Journal Volume 2, Issue 2 was released today for GIS Day.  It contains one article that provides an overview of the work blogged here: “IMMERSIVE 3D SIMULATOR-BASED GIS: SHARING THE 3D EXPERIENCEThe shot below details Mulford Hall on the UC Berkeley campus where our local GIS Day event was held again this year.  Thanks to the GIF, ASPRS, and BAAMA organizers!

Detail of 1:16 Level 2 model, in Second Life Agni grid, Amida region, on 2008 11 19 GIS Day

Detail of 1:16 Level 2 model, in Second Life Agni grid, Amida region, on 2008 11 19 GIS Day

No responses yet

Nov 17 2008

Countdown to GIS Day

I’m finding little time for keeping the OpenSim instance current.  For me, there’s been a lot of problems with the more recent (last six weeks) versions simply working on first try.  Also, since I have so many hours invested in the content that was created at rev 5411 that I’m a bit skittish with the bleeding edge updates.

Most recently, I’ve had the experience at of having only a single region be accessible at a time with the latest 1.21.6 SL viewer.  So I vacillate between thinking “how convenient and attractive to use hosted Second Life Grid servers” and the hot-rodder thoughts “My 40-region sim is worth $7525 up front and $1610/month in tier for a nonprofit, so I can be tough.”  I do tire of keeping the OpenSim server up and running with its load of content, yet with this real-world economy even avatars need to be frugal, no?

Thanks to Misty Rhoades

Thanks to Gualala neighbor Misty Rhodes for background

No responses yet

Oct 30 2008

GIS Day Video of Miniature OpenSim Builds in Second Life

One thing about these tiny builds is that they’re easy to see from one end to the other, so why not make a video of these miniature builds in Second Life?  I offer this for the amusement of Geospatial Information Service (or Geographic Information Systems if you prefer) folks who may be introducing themselves to immersive 3D.  International GIS Day will be here in a couple of weeks, so I’m posting this now.

 I’ve also challenged myself to improve my video production standards.  Who knows, maybe more than 1300 people will view it if I make it more fun to watch with a bit of editing and title-based metadata?  Nothing deep is intended with the score, it just caught my attention as matching the length of the machinima rushes tonight.

I’ve tried to improve the video with some titles to explain what’s being seen at the Level 1 (bare earth with draped ortho) 1:42-scale build, Level 2 (first-return reflective LiDAR gridded surface with draped ortho) 1:16-scale build, and Level 3 (full immersive 3D vector features in Second Life primitives with real world textures) 1:3-scale build.

If the embedded link does not work, the video is hereколи под наем which is at

One response so far

Oct 28 2008

Glimpses of Berkurodam in Second Life for GIS Day

The 10th annual GIS day is arriving on 2008 11 19, and an article on the techniques that I’ve been blogging may be published on that day. In anticipation of that article, I’ve taken some time to upload selected strips of the Open Berkurodam model that has been built at 1:1.024 scale on 40 OpenSim simulator regions to Second Life. In that way, many more people may find this work and take a closer look.

In the article are three terms I’m suggesting be used for work that involves translation of GIS data into immersive 3D simulator environments: Level 1 build, Level 2 build, and Level 3 build. Level 1 is like Google Earth or MS Virtual Earth, basically bare earth gridded terrain with draped orthoimagery. Level 2 is what I’ve got as a placeholder in the Open Berkurodam 40-region 1:1-scale build, with a reflective LiDAR gridded surface draped with orthoimagery. Level 3 is just standard immersive 3D vector features that fill so much of Second Life, but in the special case of an immersive 3D build based on GIS-grade scaled mapping of building exteriors and possibly interiors.

The Level 3 build was what inspired my efforts starting back in October 2006 (Darb Dabney just has his second Rez-day celebration), but the Level 2 seems like the most important one for actual civic builds, because the grid of LiDAR data brings full-scale, full coverage data to hold the place and fill the mass of both buildings and trees, until one can afford to create the Level 3 build.

So now at the SIMGIS land in Stanford, there is both a Level 1 model (bare earth terrain with draped orthoimagery) of the entire 40-region sim at a reduced 1:42 scale, as well as a Level 2 model (gridded LiDAR first-return surface with draped orthoimagery) from the Berkeley BART station up Center Street, and on to the UC Berkeley Campus at Mulford Hall at a reduced 1:16 scale. It’s fun to see these tiny models, and it helps to convey some of the value that OpenSim offers those of us who would publish entire cities. A copy of these two models has also been placed in Amida, just across the channel from Gualala.

My selection of that path between BART and Mulford Hall was made to offer an entertaining Level 2 swath for those who would be taking transit to an ASPRS – BAAMA – GIF GIS Day event.

First the view in Second Life from Amida toward Gualala, with my Level 1 (1:42 scale), Level 2 (1:16 scale), and Level 3 (1:3 scale) (full immersive vector features with interiors) models of the downtown Berkkeley BART area. Second is the view of the SIMGIS Stanford site, with the same Level 1 (1/42-scale) and Level 2 (1/16-scale) builds.

Level 1 (1/42 scale) at base, Level 2 (1/16 scale) and Level 3 (1/3 scale) in distance

Level 1 (1/42 scale) at base, Level 2 (1/16 scale) and Level 3 (1/3 scale) in distanceAnd here's a view of the new SIMGIS Stanford region site, as viewed from Hawthorne region. The Level 1 model 1/42-scale is just above the water, and the Level 2 model 1/16-scale is above it.

Level 1 (1/42-scale) above water, and Level 2 (1/16-scale) above that.

Level 1 (1/42-scale) above water, and Level 2 (1/16-scale) above that.

No responses yet

Sep 15 2008

Second Life, OpenSim, and Civic Mirror Worlds

Published by under OpenSim,SL In General

From here on the west coast of the USA, the world has seemed a bit tumultuous in the past four weeks. In a more compact and local way, this has been a time of review and reflection for me. This week I drafted an article for a local GIS Journal to review some of the explorations I’ve made since 2006 of how to create a civic-scale Mirror World. The deadline for the article has motivated me toward a bit more recapitulation on this topic than I’d expected.

My interest in the topic was first kicked off by media attention given to Linden Lab around the registration of the one-millionth resident for Second Life. I checked it out, made a rapid getaway from Orientation Island in around 30 minutes, and within a week or so the broad outlines of some intersections between GIS data and Multi-User Virtual Environments (MUVE) were taking shape in my thoughts. By Summer 2007, I’d made a fairly complex build on the mainland of the Berkeley BART station, and realized how hard it would be to justify the tier for 500 regions to host, much less build out, the entire city. But by October, I’d learned how OpenSim would solve the issue of tier, if only it were possible to make a build efficiently.

Then meshes arrived in the form of sculptie prims, and when an opportunity arose to collaborate with IBM on a multi-region terrain, I devised a way to drape orthoimagery over the region terrain. This Summer 2008 I was able to do that with LiDAR data that draped orthoimagery over terrain, buildings, and trees. The past year has been very much focused on OpenSim for me with this activity.

But behind the week-to-week excitement of OpenSim growth, and even before that, there has been a steady stream of good new stuff from Linden Lab–a stream that I haven’t reflected on so much. First off, the confluence of LibSL’s stabilization by the end of 2006, the open sourcing of the Second Life client in early 2007, and the initiation of OpenSim shortly afterward, together made possible the environment that I’m, if not taking for granted, really expecting to be there for awhile. Meanwhile, back in Second Life, there’s been integration of VoIP, new HAVOK physics, way cool Windlight enhancements to the SL client, a growth in land area that just keeps on going, plus new Openspace regions.

For reasons unrelated to my journal-article recapitulation, today I enjoyed a pleasant visit with a Linden person. It was more time to chat about civic Mirror World applications with a Linden than I’d ever had before, either in-world or real-world. In the course of our conversation, seeing the eyes of someone who is among those directly and personally impacted by OpenSim in the sense of unrealized revenue growth for Linden Lab, I gained an awareness of what is perhaps the largest contribution of Linden Lab to the OpenSim community. That would be Linden forbearance.

It’s growing late this evening for me to write much more on this right now. And as I noted, this feels like a tumultuous time for the world as viewed from west-coast USA, so I need my rest for what might be a tough week ahead. But I’ve felt a shift in perspective today, and wonder anew what the future of an operational civic Mirror World will really look like.

No responses yet

Sep 11 2008

Case Study: USGS terrain in OpenSim, a GIS approach

ABSTRACT: When creating sims based on real-world terrain, there’s usually a lot more extent and detail available than is typical when one must hand craft every region landscape. When compared with commercial multi-user virtual environment (MUVE) hosting, OpenSim has extremely low marginal cost for adding more simulator regions. Whenever a real-world region of interest has free 1/3 arc-second DEM data available for download from the USGS seamless server, then with a bit of GIS help from someone at a local university or interested government office, the free DEM data can be converted to a fine 1/10 (1:10) scale sim of terrain in OpenSim. This case study takes an idea posted to a blog, and turns it into a sim of 54-regions in OpenSim based on real-world terrain available at a 10-meter posting interval. To run all the regions, one first obtains OpenSim, then downloads the 54 terrain tiles, the 54 region definition XML files, and a loader script available from this post. The region definition files will likely need to be regenerated with the supplied PHP script to point to your machine’s IP address.

The Case Study tour video is nearly 10 minutes, and if it doesn’t embed in your browser is here at

Two days ago I was intrigued by Brian White’s posting of a Tutorial for real-world terrain in OpenSim and I followed several of his well-documented steps. Then I read all the way to the end of his posting and realized that he wasn’t fully satisfied with the results. I’ve helped a couple of folks with generating specific terrains before, and Orcas looked like an intriguing bit of topography–sort of a miniature version of how I imagine Greenland might look in, say, a couple decades…

So without an intent to cross-talk Brian’s posting, I’ll offer my own parallel perspective on how I’d approach making a recognizable, maybe even fun-to-have-around model of the Orcas Island in OpenSim. Starting from where he did, I’d like to emphasize the profound opportunities for following this approach, as it would work virtually anywhere in the continental USA (CONUS) where the 1/3 arc second seamless DEM is pretty much complete. In other words, what I’ll show here could be applied in an hour or so’s effort to produce an OpenSim version of Yosemite Valley, for example.

First, choose thy locale. The USGS seamless server is a worldwide resource, but the greatest detail available seems to be in the “lower 48” states. A digital elevation model (DEM) with postings on 1/3 arc second interval has samples about every 10 meters in Y (north-south) and more closely spaced than that in X (east-west) everywhere off the equator. The 1/9 arc second data that Brian mentioned was actually not available for Orcas, although some urban areas may have it at this time. In this case, Orcas Island offers a nominal 10-meter DEM downloadable from server.

Second, define thy scale for the sim. If one will be hosting on a commercial sim, even like Linden’s Open Space sims in Second Life’s Agni grid, then there are very strong reasons to scale things down and perhaps pack everything into a single region or four. With OpenSim, unless you’re going to have tons of prims and game-grade dynamics running, it may be possible to balance the number of regions you set up with the terrain quality that you desire. For the Orcas, I downloaded the islands (using the default format which seemed to be an ESRI GRID) and explored them in ESRI ArcGIS. With that I had the sense that I wanted more or less 24 km in X, and 16 km in Y, to cover the Orcas. Since OpenSim allows me to load floating-point terrain samples on a 1 meter posting interval, I knew that my available (1/3 arc second) DEM would support a 1/10-scale sim, analogous to a 1:10 scale map. That way, I would not discard too much of the terrain information on its way into OpenSim.

Third, do the math to tile the regions. It’s not too hard, but it’s fairly unforgiving. After a bit more ArcGIS exploration, I found a way to crop the DEM to exactly 23.04 km in X, and 15.36 km in Y. Sounds wierd, or compulsively precise? Not really. Since each of my terrain samples was planned to be on a 10-meter grid interval in real-world, and my sim scale is 1/10, that means that every region would cover a 2560-meter square, or 2.56 km on a side. The dimensions that I chose were simply six regions north-south and nine regions east-west, for a total of 54 regions of 1:10 scale sim.

Fourth, get your DEM gridded. Sure, it comes from USGS that way, but the seamless server works world-wide, and that requires a geographic (Longitude / Latitude) way of defining its coordinates. To do this rigorously, I used Geographic Information Systems (GIS) software to re-project the DEM from geographic, the way it downloaded, into a projected grid [World Geodetic System 1984 (WGS84) datum, Universal Transverse Mercator (UTM) zone 10 north projection, with distances measured in meters]. The UTM grid system is defined world-wide, with the proviso that at any given spot, only one of the sixty (60) grids in the system would be the best choice. For the Orcas, it’s zone 10. For the reprojection process, I used a remote sensing package, Leica ERDAS Imagine that provides precise control over both the reprojection and the resulting data’s sampling interval. I used ERDAS Imagine to grid the UTM-projected DEM into a Cartesian grid of 10-meter interval in both X and Y, and cropped the projected data to 2304 by 1536 samples.

Fifth, dice the DEM. This is necessary for multi-region sims where your grid has more than (and exact multiples of) 256 samples in X or Y. ERDAS Imagine dices, so i used it. If you’re trying this in Photoshop, be sure to keep the pixels in 32-bit (single precision) floating point values, and don’t go to integer grayscale or the flatter terrain will get stair-step artifacts. The naming convention used in ERDAS Imagine starts at the top row and increases downward for Y, and also puts Y first then X in the tile name so that the south-westernmost of the 54 regions is called “orca_6_1”

Sixth, reflect each diced DEM tile, this reverses the direction of samples in Y dimension. What starts out as the top, northernmost row is moved into the bottom-most position, and vice-versa. This does not change the size of the tile, nor any of the gridded elevation values themselves. Another way to describe this is to flip the image around the X axis. ERDAS Imagine has a geometric correction function that allows one to specify this as an affine mapping, which I did. I’d expect that most of the world uses GIMP or Photoshop to do this, too. Although it would appear that this will scramble the terrain, it is necessary to do this to adapt the data to the sequence in which OpenSim reads the terrain file when loading it into the region.

Seventh, export the reflected DEM tiles to f32 raw binary. After trial and error, I found that using IEEE 32-bit single precision float with Motorola “swapped” byte order works for OpenSim. This is true even though my machines (both Windows and Ubuntu) are running Intel processors. Go figure.

Eighth, place the f32 terrain tiles in a directory within OpenSim’s ./bin for easiest referencing in the region definitions. For this case, I have prepared 54 tiles for Orcas that can be downloaded, unzipped, and placed in ./bin

Ninth, create the appropriate region definition XML files in OpenSim’s ./bin/Regions directory. Long before one gets up to 54 terrains, it makes sense to have a bit of code to help this process. I started modifying a sample provided with OpenSim a while ago, and include it, along with 54 region files for Orcas that can be downloaded, unzipped and used to replace your Regions directory.

Tenth, create a command script to load the terrain once your 54 regions are running. I include such a script that can be downloaded and invoked from the OpenSim console with “command-script terrain54.txt”.

Et Voila: A 10-minute tour of most of the sim has been recorded and is being uploaded to YouTube

No responses yet

Aug 28 2008

OpenSim Screen Shots – An OpenBerkurodam-40 Deluge

I took a bit of a rest after the ESRI International User Conference (actually, it was more like catching up with real work). Sadly, I missed out on the call for images by Adam, and I can’t even blame it on there being so many time zones between here and Perth.;^)

So in the interest of sharing stuff in bulk, please accept the following pile of shots. All of them were made from the 40-region OpenBerkurodam (OB40) model that has been taking shape over the past few months. All of them are from the 1.024:1 scale model of the UC Berkeley campus and adjacent downtown environs that have been built (precisely 2.5 square km. worth).

Unlike the attractively detailed SketchUp models one finds for selected UC Berkeley buildings in Google Earth, the OB40 sim has every building, every moderately large tree, a lot of light poles, and even a construction crane imaged in 3D. This was because it was built wholesale with reflective LiDAR data. Lots of data, and very little artistic craft!

The resulting mismatch between the LiDAR bump-map surfaces and the 10-cm natural color orthoimagery that I have draped over them create an effect that is quick, dirty, and very complete. At first glance, one might think that we can’t decide where we are–on the continuum between representational and surrealistic art, or that perhaps the trees have not lichen, but a rather different kind of fungus affecting them. Hey, I’m just saying…

The OB40 model was demonstrated live on two and three higher-end laptops running the standard Second Life client; they had NVIDIA Quadro graphics cards and they did OK. The sculpties imaged a little bit differently than they do with fully approved graphics cards but the client never crashed outright.

Some senior ESRI system folks got a look and a see of what OpenSim was about with GIS data loaded into it. Several public safety people expressed some interest in the possibilities. The presentation was not at a booth, but rather in a corner of the showroom floor given to the “User Applications Fair” that was a spot for about 32 non-commercial folks to show their stuff. Strictly speaking, the ESRI software was not the application on display, but without the ESRI (and ERDAS) software, I wouldn’t have been able to get my GIS data loaded into OpenSim in time for the conference.

What sort of shocked me in terms of response was a huge non-linearity in acceptance based on the age of the person viewing the demonstration. At one point, I was describing some obscure details with an experienced GIS person, and within 15 seconds, a group of three teen-aged 4H Club members (I’d seen them in another part of the conference) sat themselves down without questions or introductions and began going all over the place 3X. They had no questions about the SL client interface, the purpose of the OB40 sim, or any of that. They just sat down and started exploring.

For me, the experience of seeing the 4H kids using OB40 intuitively provided great hope that some day not too far off, people will just accept a Multi-User Virtual Environment (MUVE) as readily as I would read a map from the American Automobile Association (AAA). I mean, for me there’s some effort involved in using the SL client, although at this point it is about as familiar to my hands as the ‘vi’ editor is—I just use it, kind of like reading a book without mouthing the words. But for the younger people who interacted with OpenSim, the interface did not seem hardly present for them, they focused at once on the content and enjoyed it for just the fun.

OK, enough blather – I’ll try and share all the shots, including some that did not make it to San Diego. The actual date for all of the shots was 20080731.
Shattuck Ave and Center Street in Berkeley, view westerly

This is downtown Berkeley, the BART station, same area that has been modeled at 1:3 scale in Second Life Agni grid, Gualala region. In Gualala, everything has been built in detail by hand, with custom real-world texture shots. In OB40, the scale is nominally 1:1, but at the moment only a LiDAR drape fills the region (and 39 adjacent regions, too.) There is an avatar above the Power Bar building, the tower on the left.

Pictometry-style shot of Civic Center

This is synthetic “MS Virtual Earth” or Pictometry high-angle view of the Martin Luther King Jr. Civic Center building, Berkeley’s city hall. There is an avatar on the near-left side of the roof, enjoying a brown-bag lunch.

Shattuck Ave and Hearst St, view Swly

This is Shattuck Ave and Hearst St, view SWly. Oscar’s hamburger grill is on the right with all the ducting on the roof.

Berkeley Arts Magnet school

View Wly across Shattuck Ave toward the Berkeley Arts Magnet school campus.

Farms in Berkeley

View toward Oxford St, near sunrise. Strawberry fields in foreground.

Farms In Berkeley?  You bet!

Farms in Berkeley? Indeed, this strawberry field was imaged on 2006 07 01 just a couple of blocks from the UC campus. View SEly near sunrise.

View up Hearst toward Euclid

View uphill on Hearst St towards Euclid, northerly side of UC Berkeley campus. TECHNICAL DETAIL: in the far distance toward sunrise, there are huge eggs floating above the ground, but textured with the orthoimagery. These are the LiDAR megaprims after they have received their photo texture, but before they have rezzed with their bump map. Depending on bandwidth, how much of the model the client may have already visited and cached, and the phase of the (virtual) moon, it might take anywhere from 15 seconds to a minute or two for the bump maps to fully rez out when one arrives near a region. When shooting these pictures, and typically in OB40, I keep the SL client viewing out 512 meters with “ultra” quality graphcs.

LBNL synchotron view Ely

Above the top of Hearst, the Lawrence Berkeley National Laboratory (LBNL) sychotron and nearby buildings, view Ely, including some really large Blue Gum (eucalyptus) trees.

Foothill student residences, view Sly

Below LBNL, the Foothill student residences, with Sather Tower in view, far right

The UC Berkeley Greek Theater, view Ely

The UC Berkeley Greek Theater, site of a great many fine performances over many decades, view Ely, and just Sly of the Foothill residences.

UC Berkeley International House, and California Memorial Stadium

View NEly, of UC Berkeley’s International House, with California Memorial Stadium in background. Avatar is hovering over the cupola of the I-House, sneaking a free look at the football scrimmage (or is it cheerleader camp?) 2006 07 01

View Nly up Piedmont toward I-House

View Nly up Piedmont Ave, in the Greek housing section of campus. View toward International House with California Memorial Stadium in background. Horizontal scale 1.024:1, vertical scale 1:1; those trees have scaled height and bulk thanks to LiDAR first return gridding.

View Wly of UC Berkeley campus near Wurster Hall

UC Berkeley main campus near Bancroft and Piedmont. Large red-roofed building in mid left frame is Boalt Hall, lighter building in right mid-far range is Wurster hall, home of the Urban Planning folks. Here’s looking at you, kids!

Long shot Enely of Sather Tower

Finally, UC Berkeley campus toward LBNL, long shot near Sather Tower. All these shots were from the OB40 sim, sometimes running on

No responses yet

Jul 31 2008

OpenSim LiDAR sculpties – too much of a good thing?

Wow it has been a lot of effort to get the 40 regions built out with their LiDAR surface sculpties. Someday when the process gets automated I’ll look back and likely feel like a fool for not loading the BLOBs in MySQL directly, and coding the XML to load these directly. But I built them by hand, using 64-prim linked sets that covered each region. Region-wide linking works fine when the Admin settings are used to “go to God”. Also there’s a new SL client that works OK and helped a wee bit with the build.

My priority is to create good graphics for large-format display, but I’ve posted a rush of the first end-to end plod by the Ruth named “UC08 Visitor2”. At the moment, I’m still a bit shaky about just how solid the sim will be for demonstration purposes. None of he LiDAR surface sculpties are physical; I’ve been able to turn on ODE. I can’t bear the time to let the sculpties get meshed so there’s none of the cool walking on them, but I have tried boosting the detail settings to 64, in hopes that perhaps the sim will put out 4096 points per sculptie [my bump-maps to define each one are 16K so there’s plenty of info behind the detail boost.

As usual, if YouTube is blocked or you don’t have flash in the browser that you read this with, the video is here:

2 responses so far

Jul 22 2008

OpenSim – First LiDAR reflective DEM sculpties placed

OK, not everyone in the immersive modeling universe has been holding their breath on this one, but hey, I’m happy to say that the production line is fired up and creating 2560 sculptie bumpmaps to inflate the Open Berkurodam sim using LiDAR reflective digital elevation model (DEM). The registration with orthoimagery is not perfect, and small offsets are very distracting, but the first two have been placed, and should illustrate the concept. (Two rezzed, 2558 to go…)

Sather Tower as two reflective digital elevation model sculpties

The reflective DEM sculpties have 16 times greater resolution (that’s resolution as NURB point density) than the underlying terrain megaprims. This means that for the 40-region Open Berkurodam sim, there are 160 terrain megaprims, and 160 tiles of 10-cm orthoimagery. The reflective DEM sculpties number 2560 and will be textured using the same orthoimagery.

Reflective DEM surfaces ride over the tops of trees, rooftops, or any structure. They are defined by the first return of the LiDAR reflected signal. By contrast, the terrain megaprims are based on a model of the last return (in these data up to the seventh return signal) that represents the ground under and around all structures and trees.

No responses yet

Jul 18 2008

OpenSim terrain megaprims – OB40 bare earth

Things are busy and the presentation deadline approaches for the server. Just to show that indeed, stuff has been going on, take a look at how the BARGC server puts out terrain megaprims. What’s seemingly more performant with dual Xeons than the Core2 Duo server is seeing three regions rezzing terrain at once, and getting three regions’ worth of terrain megaprim sculpties hatching all at once.

I’m focusing on the reflective DEM surface with smaller 33-meter megaprims, which will have 16 times the density of sculpty surface. Meanwhile, this evening’s early video is here at

The embed is below (in case you find it blocked)

No responses yet

« Prev - Next »