[Opensim-dev] A modest proposal

dan miller danbmil99 at yahoo.com
Sat Sep 22 12:21:19 UTC 2007


> on physics:  I am strongly of the opinion that we should *not* globalize
> physics at this point (ie have one physics scene for multiple regions)

I've thought about this some more, and my opinion has changed somewhat. 
Given a few caveats, I think it *is* reasonable to have a PhysicalScene
correspond to more than a single region in some cases.  The caveats are as
follows:

* There needs to be explicit information about which regions are valid
within the area covered by the physics instance.  This was going to be a
problem within-region eventually, as we need a way to restrict access to
certain parcels, based on permissions.  Point being that the physics has to
build virtual walls or something to restrict agent movement to legal areas.

* It shouldn't be the physics plugin's job to worry about region/scene vs
physical coordinates.  If we go down this path, we'll need a functional
layer that consistently translates back and forth between the region & scene
coordinates to a coordinate system that encompasses the entire physical
scene.

* It should be flexible, and up to the administrator to decide how physics
is distributed among regions.  This will be a big area of future
optimization and load balancing, and each user's physical platform,
userbase, and application focus will have a huge impact on how they want to
set things up.

* It is not advisable, at least with ODE, to try to have the physics engine
cover too much virtual territory.  I have no idea how much area is too much,
but in general these engines aren't designed to do simulations over
kilometers of virtual terrain while maintaining accuracy in the millimeter
region.  How they scale will be very particular to each engine, so again
flexibility is key.  A large grid will almost surely need more than one
physical scene instance to work reliably, at least with the engines I'm
aware of.

There's no need to do any of this right away, unless we feel it's a major
priority.  The main point is, a physics instance can handle more than
256x256 meters, but probably not enough to handle a huge chunk of disparate
regions.

-dan




More information about the Opensim-dev mailing list