[Opensim-dev] Call to discussion: Physics plugin retrofactoring.

Teravus Ovares teravus at gmail.com
Tue Nov 6 14:31:49 UTC 2007


With the addition of physical prim, we're starting to notice the limitations
of the existing physics plugin framework.

This is a call to discussion on how to expand the framework to fit our
current needs and our upcoming needs.  Here's an incomplete list of the
needs that our framework isn't filling currently(add as necessary):

1. Differentiation in reporting ground collision vs collision with
another PhysicsActor (needed for scripting & some updates on the
region/region module code)
2. A way to increase the amount of terse updates when a prim is in motion
(needed for making physical prim move smoothly).
3. A way to get/calculate the velocity of the prim that someone has grabbed
(dragged mouse on, not selected in Edit tools [the two methods of moving
prim are different and have two different routines already, but the
information never gets down to the physics engine.]) and ungrabbed. (needed
to be able to 'throw' a physical prim by grabbing it)

Two of the possible ways that it can be done..

1. (Physics Oriented - Where the Scene actively gets updates from the
physics engine) Set up physics events that get raised (With this method, we
also need a physics event subscripion manager..  so the number of events
raised is only what is required to make the system work..   and the massive
amount of events that are raised by the physics engines don't bring the
whole system down.)

2. (Scene Oriented - Where the scene can peek into the physics scene when it
wants) Do basic retrofactoring to:
 2a. Include 1..   (IsCollding would be changed to - CollidingObject and
CollidingGround, and they would be changed to int number of collisions)
 2b. Figure out a way to provide an interface for a PhysicsActor to request
an immediate terse update
 2c. Figure out a way to get the velocity of the grab instead of just
calling the 'Position' method in the physics engine.   Might need a 'grab
parameters' or make use of the 'Velocity' property.

Lets work together on figuring out how to expand the system so that all
current and (foreseeable) future needs are met :D

Best Regard

Teravus
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20071106/5c82d4be/attachment-0001.html>


More information about the Opensim-dev mailing list