OpenSim
|
This is an incomplete extremely basic physics implementation More...
Public Member Functions | |
void | Initialise (IConfigSource source) |
This is called to initialize the region module. For shared modules, this is called exactly once, after creating the single (shared) instance. For non-shared modules, this is called once on each instance, after the instace for the region has been created. More... | |
void | Close () |
This is the inverse to Initialise. After a Close(), this instance won't be usable anymore. More... | |
void | AddRegion (Scene scene) |
This is called whenever a Scene is added. For shared modules, this can happen several times. For non-shared modules, this happens exactly once, after Initialise has been called. More... | |
void | RemoveRegion (Scene scene) |
This is called whenever a Scene is removed. For shared modules, this can happen several times. For non-shared modules, this happens exactly once, if the scene this instance is associated with is removed. More... | |
void | RegionLoaded (Scene scene) |
This will be called once for every scene loaded. In a shared module this will be multiple times in one instance, while a nonshared module instance will only be called once. This method is called after AddRegion has been called in all modules for that scene, providing an opportunity to request another module's interface, or hook an event from another module. More... | |
override void | Dispose () |
override PhysicsActor | AddPrimShape (string primName, PrimitiveBaseShape pbs, Vector3 position, Vector3 size, Quaternion rotation, bool isPhysical, uint localid) |
override PhysicsActor | AddAvatar (string avName, Vector3 position, Vector3 velocity, Vector3 size, bool isFlying) |
Add an avatar More... | |
override void | RemovePrim (PhysicsActor actor) |
Remove a prim. More... | |
override void | RemoveAvatar (PhysicsActor actor) |
Remove an avatar. More... | |
override void | AddPhysicsActorTaint (PhysicsActor prim) |
override float | Simulate (float timeStep) |
Perform a simulation of the current physics scene over the given timestep. More... | |
override void | GetResults () |
override void | SetTerrain (float[] heightMap) |
override void | DeleteTerrain () |
override void | SetWaterLevel (float baseheight) |
override Dictionary< uint, float > | GetTopColliders () |
Public Member Functions inherited from OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene | |
virtual void | TriggerPhysicsBasedRestart () |
virtual PhysicsActor | AddAvatar (uint localID, string avName, Vector3 position, Vector3 velocity, Vector3 size, bool isFlying) |
Add an avatar More... | |
virtual PhysicsActor | AddAvatar (uint localID, string avName, Vector3 position, Vector3 size, bool isFlying) |
virtual PhysicsActor | AddAvatar (uint localID, string avName, Vector3 position, Vector3 size, float feetOffset, bool isFlying) |
virtual PhysicsActor | AddPrimShape (string primName, PhysicsActor parent, PrimitiveBaseShape pbs, Vector3 position, uint localid, byte[] sdata) |
virtual PhysicsActor | AddPrimShape (string primName, PrimitiveBaseShape pbs, Vector3 position, Vector3 size, Quaternion rotation, bool isPhysical, bool isPhantom, uint localid) |
virtual PhysicsActor | AddPrimShape (string primName, PrimitiveBaseShape pbs, Vector3 position, Vector3 size, Quaternion rotation, bool isPhysical, bool isPhantom, byte shapetype, uint localid) |
virtual PhysicsJoint | RequestJointCreation (string objectNameInScene, PhysicsJointType jointType, Vector3 position, Quaternion rotation, string parms, List< string > bodyNames, string trackedBodyName, Quaternion localRotation) |
virtual void | RequestJointDeletion (string objectNameInScene) |
virtual void | RemoveAllJointsConnectedToActorThreadLocked (PhysicsActor actor) |
virtual void | DumpJointInfo () |
virtual Vector3 | GetJointAnchor (PhysicsJoint joint) |
virtual Vector3 | GetJointAxis (PhysicsJoint joint) |
virtual void | ProcessPreSimulation () |
virtual Dictionary< string, float > | GetStats () |
Get statistics about this scene. More... | |
virtual bool | SupportsRayCast () |
True if the physics plugin supports raycasting against the physics scene More... | |
virtual bool | SupportsCombining () |
virtual void | Combine (PhysicsScene pScene, Vector3 offset, Vector3 extents) |
virtual void | CombineTerrain (float[] heightMap, Vector3 pOffset) |
virtual void | UnCombine (PhysicsScene pScene) |
virtual void | RaycastWorld (Vector3 position, Vector3 direction, float length, RaycastCallback retMethod) |
Queue a raycast against the physics scene. The provided callback method will be called when the raycast is complete More... | |
virtual void | RaycastWorld (Vector3 position, Vector3 direction, float length, int Count, RayCallback retMethod) |
virtual List< ContactResult > | RaycastWorld (Vector3 position, Vector3 direction, float length, int Count) |
virtual object | RaycastWorld (Vector3 position, Vector3 direction, float length, int Count, RayFilterFlags filter) |
virtual bool | SupportsRaycastWorldFiltered () |
virtual List< ContactResult > | RaycastActor (PhysicsActor actor, Vector3 position, Vector3 direction, float length, int Count, RayFilterFlags flags) |
virtual List< ContactResult > | BoxProbe (Vector3 position, Vector3 size, Quaternion orientation, int Count, RayFilterFlags flags) |
virtual List< ContactResult > | SphereProbe (Vector3 position, float radius, int Count, RayFilterFlags flags) |
virtual List< ContactResult > | PlaneProbe (PhysicsActor actor, Vector4 plane, int Count, RayFilterFlags flags) |
virtual int | SitAvatar (PhysicsActor actor, Vector3 AbsolutePosition, Vector3 CameraPosition, Vector3 offset, Vector3 AvatarSize, SitAvatarCallback PhysicsSitResponse) |
virtual object | Extension (string pFunct, params object[] pParams) |
Properties | |
string | Name [get] |
Type | ReplaceableInterface [get] |
override bool | IsThreaded [get] |
Properties inherited from OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene | |
string | PhysicsSceneName [get, set] |
A unique identifying string for this instance of the physics engine. Useful in debug messages to distinguish one OdeScene instance from another. Usually set to include the region name that the physics engine is acting for. More... | |
string | EngineType [get, set] |
A string identifying the family of this physics engine. Most common values returned are "OpenDynamicsEngine" and "BulletSim" but others are possible. More... | |
static PhysicsScene | Null [get] |
RequestAssetDelegate | RequestAssetMethod [get, set] |
virtual float | TimeDilation [get] |
virtual bool | SupportsNINJAJoints [get] |
abstract bool | IsThreaded [get] |
Properties inherited from OpenSim.Region.Framework.Interfaces.IRegionModuleBase | |
string | Name [get] |
Type | ReplaceableInterface [get] |
If this returns non-null, it is the type of an interface that this module intends to register. This will cause the loader to defer loading of this module until all other modules have been loaded. If no other module has registered the interface by then, this module will be activated, else it will remain inactive, letting the other module take over. This should return non-null ONLY in modules that are intended to be easily replaceable, e.g. stub implementations that the developer expects to be replaced by third party provided modules. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene | |
void | Initialise (RequestAssetDelegate m, float[] terrain, float waterHeight) |
virtual void | DoJointMoved (PhysicsJoint joint) |
virtual void | DoJointDeactivated (PhysicsJoint joint) |
virtual void | DoJointErrorMessage (PhysicsJoint joint, string message) |
Events inherited from OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene | |
physicsCrash | OnPhysicsCrash |
JointMoved | OnJointMoved |
JointDeactivated | OnJointDeactivated |
JointErrorMessage | OnJointErrorMessage |
This is an incomplete extremely basic physics implementation
Not useful for anything at the moment apart from some regression testing in other components where some form of physics plugin is needed.
Definition at line 48 of file BasicPhysicsScene.cs.
|
inlinevirtual |
Add an avatar
avName | |
position | |
velocity | |
size | |
isFlying |
Implements OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene.
Definition at line 128 of file BasicPhysicsScene.cs.
|
inlinevirtual |
Implements OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene.
Definition at line 152 of file BasicPhysicsScene.cs.
|
inlinevirtual |
Implements OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene.
Definition at line 117 of file BasicPhysicsScene.cs.
|
inline |
This is called whenever a Scene is added. For shared modules, this can happen several times. For non-shared modules, this happens exactly once, after Initialise has been called.
scene | A Scene |
Implements OpenSim.Region.Framework.Interfaces.IRegionModuleBase.
Definition at line 86 of file BasicPhysicsScene.cs.
|
inline |
This is the inverse to Initialise. After a Close(), this instance won't be usable anymore.
Implements OpenSim.Region.Framework.Interfaces.IRegionModuleBase.
Definition at line 82 of file BasicPhysicsScene.cs.
|
inlinevirtual |
Implements OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene.
Definition at line 241 of file BasicPhysicsScene.cs.
|
inlinevirtual |
Implements OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene.
Definition at line 115 of file BasicPhysicsScene.cs.
|
inlinevirtual |
Implements OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene.
Definition at line 226 of file BasicPhysicsScene.cs.
|
inlinevirtual |
Implements OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene.
Definition at line 249 of file BasicPhysicsScene.cs.
|
inline |
This is called to initialize the region module. For shared modules, this is called exactly once, after creating the single (shared) instance. For non-shared modules, this is called once on each instance, after the instace for the region has been created.
source | A IConfigSource |
Implements OpenSim.Region.Framework.Interfaces.IRegionModuleBase.
Definition at line 69 of file BasicPhysicsScene.cs.
|
inline |
This will be called once for every scene loaded. In a shared module this will be multiple times in one instance, while a nonshared module instance will only be called once. This method is called after AddRegion has been called in all modules for that scene, providing an opportunity to request another module's interface, or hook an event from another module.
scene | A Scene |
Implements OpenSim.Region.Framework.Interfaces.IRegionModuleBase.
Definition at line 108 of file BasicPhysicsScene.cs.
|
inlinevirtual |
Remove an avatar.
actor |
Implements OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene.
Definition at line 145 of file BasicPhysicsScene.cs.
|
inlinevirtual |
Remove a prim.
prim |
Implements OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene.
Definition at line 138 of file BasicPhysicsScene.cs.
|
inline |
This is called whenever a Scene is removed. For shared modules, this can happen several times. For non-shared modules, this happens exactly once, if the scene this instance is associated with is removed.
scene | A Scene |
Implements OpenSim.Region.Framework.Interfaces.IRegionModuleBase.
Definition at line 102 of file BasicPhysicsScene.cs.
|
inlinevirtual |
Implements OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene.
Definition at line 236 of file BasicPhysicsScene.cs.
|
inlinevirtual |
Implements OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene.
Definition at line 245 of file BasicPhysicsScene.cs.
|
inlinevirtual |
Perform a simulation of the current physics scene over the given timestep.
timeStep |
Implements OpenSim.Region.PhysicsModules.SharedBase.PhysicsScene.
Definition at line 156 of file BasicPhysicsScene.cs.
|
get |
Definition at line 231 of file BasicPhysicsScene.cs.
|
get |
Definition at line 60 of file BasicPhysicsScene.cs.
|
get |
Definition at line 65 of file BasicPhysicsScene.cs.