From c75fa8b8a1c4ba9235074e84f9a363483c5220f7 Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Wed, 8 Feb 2012 15:28:13 +0000 Subject: changes in physics manager, needed for UbitODE --- OpenSim/Region/Physics/Manager/PhysicsActor.cs | 19 +++++++++++++++++++ OpenSim/Region/Physics/Manager/PhysicsScene.cs | 10 +++++++++- 2 files changed, 28 insertions(+), 1 deletion(-) (limited to 'OpenSim/Region/Physics') diff --git a/OpenSim/Region/Physics/Manager/PhysicsActor.cs b/OpenSim/Region/Physics/Manager/PhysicsActor.cs index 0587054..e1a68be 100644 --- a/OpenSim/Region/Physics/Manager/PhysicsActor.cs +++ b/OpenSim/Region/Physics/Manager/PhysicsActor.cs @@ -68,6 +68,17 @@ namespace OpenSim.Region.Physics.Manager } } + public struct ContactData + { + public float mu; + public float bounce; + + public ContactData(float _mu, float _bounce) + { + mu = _mu; + bounce = _bounce; + } + } /// /// Used to pass collision information to OnCollisionUpdate listeners. /// @@ -143,6 +154,14 @@ namespace OpenSim.Region.Physics.Manager get { return new NullPhysicsActor(); } } + + public virtual bool Building { get; set; } + + public virtual ContactData ContactData + { + get { return new ContactData(0, 0); } + } + public abstract bool Stopped { get; } public abstract Vector3 Size { get; set; } diff --git a/OpenSim/Region/Physics/Manager/PhysicsScene.cs b/OpenSim/Region/Physics/Manager/PhysicsScene.cs index 514d9ad..3db71e5 100644 --- a/OpenSim/Region/Physics/Manager/PhysicsScene.cs +++ b/OpenSim/Region/Physics/Manager/PhysicsScene.cs @@ -225,7 +225,7 @@ namespace OpenSim.Region.Physics.Manager } public virtual void Combine(PhysicsScene pScene, Vector3 offset, Vector3 extents) {} - + public virtual void CombineTerrain(float[] heightMap, Vector3 pOffset) {} public virtual void UnCombine(PhysicsScene pScene) {} /// @@ -263,5 +263,13 @@ namespace OpenSim.Region.Physics.Manager { return new List(); } + + public virtual void RaycastActor(PhysicsActor actor, Vector3 position, Vector3 direction, float length, RaycastCallback retMethod){} + public virtual void RaycastActor(PhysicsActor actor, Vector3 position, Vector3 direction, float length, int Count, RayCallback retMethod) { } + public virtual List RaycastActor(PhysicsActor actor, Vector3 position, Vector3 direction, float length, int Count) + { + return new List(); + } + } } -- cgit v1.1