OpenSim changes physics and meshing defaults

Wednesday, September 16, 2009
By justincc

After a week of discussion on the OpenSim user and development mailing lists we’ve decided to change the default physics and meshing engines.  If you already have a working OpenSim installation with explicit settings for these defaults then you won’t notice any changes.

The physics engine change

The old default physics engine was something called “basicphysics”.  If anything, the name is a bit misleading since basicphysics actually does no physics at all!  Not only did it not implement any dynamic effects such as gravity, but all objects were phantom no matter what their settings.

As of Git revision 077d01 (16th September 2009, post 0.6.6), this has been replaced by the Open Dynamics Engine (ODE) physics plugin as the new default in bin/OpenSim.ini.example.  ODE isn’t perfect in OpenSim, but it is enormously better than basicphysics, since it handles solid objects, collisions and all other kinds of goodies.

One drawback with ODE is that the DLL cannot currently be compiled for a 64 bit Window system.  Therefore, people using a 64 bit version of Windows will need to execute

bin/OpenSim.32BitLaunch.exe

rather than

bin/OpenSim.exe

to launch the region simulator.  We felt that the advantages of changing to ODE outweighed the disadvantages.

The mesher change

The other default that we changed at the same time as the physics plugin is something called the mesher (as set in the meshing parameter under the [Startup] section of the OpenSim.ini/OpenSim.ini.example file).  The mesher provides the mesh that governs collision detection between objects.

The old default was the ‘ZeroMesher’.  Like ‘basicphysics’, it actually does no meshing at all but punts the decision to the physics engine.  Unfortunately, this means you can end up with very basic meshes (possibly just boxes) which don’t even rotate with the object.

The new default is the Meshmerizer as developed by Dahlia Trimble, a fellow OpenSim core developer.  This properly handles complex prims using triangle meshes.  In other words, it allows you to create objects with holes in the middle that you can actually walk through :).  It’s a little more memory and processor hungry than ZeroMesher but again the advantages of proper object meshing by default outweigh the disadvantages.

Final words

As usual, these changes have been made to the bleeding edge Git trunk version of OpenSim.  However, hopefully they will make the initial user experience in the next released verson of OpenSim a little smoother.

6 Responses to “OpenSim changes physics and meshing defaults”

  1. [...] This post was mentioned on Twitter by Justin Clark-Casey. Justin Clark-Casey said: OpenSim changes physics and meshing defaults - http://bit.ly/UofAD [...]

    #696
  2. Woohoo! I’m sure this will be of help to first-time installers. Having a system install out of the box with no physics was no fun. :)

    #702
  3. @Snoots - In fact, your Mantis 4107 (http://opensimulator.org/mantis/view.php?id=4107) added enough weight for me to push this through, so thanks :). I agree about the documentation problems you talk about too - unfortunately the cruft has built up and it’s now a big job for any one person to shift, especially if they weren’t the original coders of the changes.

    #714
  4. [...] modulo physics Open Dynamics Engine foi implementado como default. Com isto os usuários do Windows 64 bits terão que o usar o executável OpenSim.32BitLaunch.exe [...]

    #1311
  5. Has anyone come up with a Windows x64 version of OpenSim that works? This is becoming a very frustrating waste of precious resources. In order for me to run a mere 452 regions, I have to start up 8 instances of OpenSim in 32 bit mode which just chokes my little quad core, and eats up about 4 gigs of extra RAM. Do you know if anyone has ported it to Havok, or if Unreal’s SDK can be used to fix this?

    #4487
  6. @Myron - I’m not sure I would call 452 regions on a single machine a mere number!

    As far as I know, no one has yet implemented a Havok or Unreal physics plugin. Unfortunately, physics devs are very thin on the ground and I hear that there are significant problems in getting ODE to compile properly for 64 bit in Windows. It’s not an area I’m very familiar with.

    #4508

Leave a Reply

About me

Hi, I'm Justin Clark-Casey, an OpenSim core developer and professional software engineer.

On the Linden Lab grid I go by the name of Lulworth Beaumont. On other grids I'm just plain old Justin Clark-Casey.

I'm currently working as a freelance consultant specializing in OpenSim. If you're interested in learning more then please read the Hire Me page. Thanks!

Twitter Updates

Posting tweet...

Powered by Twitter Tools