Adam Frisby

Archive for the ‘terrain’ tag

Vehicles, Sculpty Terrain, Megaregions

with 6 comments

Sculpty Megaregion Terrain

Kitto Flora deserves some major kudos for recent developments with OpenSim vehicles. Not only do they work, but the revised car script I toyed with earlier today – was actually quite usable; and dare I say it? good. All of this is thanks to Kitto’s work refining and improving the vehicle functions and how they interrelate with the internal ODE physics engine.

I could speculate here, and say if you were a decent vehicle coder – you could probably do some amazing things with OpenSim these days. So what happens if you combine these new vehicles, with Teravus’s recent mega regions code, and my sculpty terrain code (with mods from nebadon)? This. (Recommend jumping to about 4:40)

(Edit: Added a new link to the video – 22/09/09)

I probably do not need to go into too much detail here – the above is a 3x3 megaregion, using 576 physical sculpts, Kitto’s latest ODE mods & vehicle script – running on a home users cable connection; with several people driving around at once. Not only does it work – it suprisingly works well. I expect a more skilled texture artist could pull some amazing things off with the sculpty terrain code – the terrain is just a quick output from L3DT done by Nebadon.

The vehicle code isnt in trunk quite yet – but if you ask around in #osgrid, I’m sure someone can point you to the github account where you can get the ODE patches. I’m sure much like mega-regions, it will be in trunk soon enough.

Sculpty Megaregion Terrain

Credits: Kitto Flora (vehicles), Teravus (megaregions), Nebadon (video, hosting, testing, sculpty terrain), Bri Hasp & Hiro Protagonist (hosting & testing), Myself (sculpty terrain generator).

Written by Adam Frisby

September 22nd, 2009 at 6:37 am

OpenSim Megaregions

with 29 comments

Mega Region

One of the single most common requests for OpenSim has been “I want bigger regions” – coming originally from an ActiveWorlds background, I wholeheartedly agree.

Space is still a major constraint – and while OpenSim allows you to run multiple regions within a single simulator – it’s a poor comparison because crossing region borders, even within the same machine are a complicated and error-prone process; requiring the client to disconnect and reconnect at least once. This preventing any kind of “instant” handoff on a technical level. Megaregions are a new bit of code that solves this problem by side-stepping it (a.k.a cheating).

Regions within the same simulator process can be ‘combined’ via the new RegionCombinerModule; to the client all the regions that existed in the server previously become ‘neighbours’ rather than full regions in their own right; while the original region takes authority over the combined original space. Objects get coordinates that no longer resemble 0,0-255,255, they now can reach values such as “1077,2099″, and likewise your avatar and any positional coordinates you see reflect this new larger domain.

The result is you can use these combined regions to make ‘megaregions’ that exceed the original 256×256 bounds. I personally have tested both 512×512 and 2048×2048 regions (comprised of 4 and 64 original regions respectively) and it is awesome. For vehicles I can see this being a very impressive and useful new feature – eliminating border crossings makes for bigger racetracks and faster speeds. Sailors can build oceans that aren’t equivilent to a lake-in-the-backyard, and if my estimate of 5MB per empty region holds true at scales larger than 64 regions in size; then it’d be possible to build a 4km x 4km ocean on a server with less than 2GB of RAM (equivilent to about 256 sims normally).

Pictures are of course essential for this post – the first picture below has me selecting a 65,536sqm parcel for comparison — everything you can see in the picture is but a small fraction of a single region. (11 cells are visible, of a total of 64)

megaregion2

…and a slightly larger picture of the same sim showing a few more cells at once.

OpenSim Megaregions

Finally, I recorded some video of vehicles playing around on one of these megaregions (from a slightly earlier version when the largest regions were a bit smaller). This is in OpenSim trunk now; however it does have some known issues – so I wouldnt do anything resembling production work on this code for a long while until it has been more properly tested. I’d like to do some more testing with this and vehicles at a later date however, as OpenSim/ODE’s support for vehicles has improved dramatically in the last few months.

Written by Adam Frisby

September 8th, 2009 at 10:40 am

Posted in OpenSim

Tagged with , , ,

 

You need to log in to vote

The blog owner requires users to be logged in to be able to vote for this post.

Alternatively, if you do not have an account yet you can create one here.

Powered by Vote It Up