aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.Inventory.cs3
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.cs12
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs6
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneObjectPart.cs19
-rw-r--r--OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPlugin.cs13
-rw-r--r--OpenSim/Region/Physics/BulletXPlugin/BulletXPlugin.cs66
-rw-r--r--OpenSim/Region/Physics/Manager/PhysicsActor.cs8
-rw-r--r--OpenSim/Region/Physics/Manager/PhysicsScene.cs12
-rw-r--r--OpenSim/Region/Physics/OdePlugin/OdePlugin.cs19
-rw-r--r--OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs19
10 files changed, 114 insertions, 63 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs
index a0c9a50..17f7566 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs
@@ -456,6 +456,7 @@ namespace OpenSim.Region.Environment.Scenes
456 AddEntity(group); 456 AddEntity(group);
457 group.AbsolutePosition = pos; 457 group.AbsolutePosition = pos;
458 SceneObjectPart rootPart = group.GetChildPart(group.UUID); 458 SceneObjectPart rootPart = group.GetChildPart(group.UUID);
459 bool UsePhysics = ((rootPart.ObjectFlags & (uint)LLObject.ObjectFlags.Physics) > 0);
459 if ((rootPart.ObjectFlags & (uint) LLObject.ObjectFlags.Phantom) == 0) 460 if ((rootPart.ObjectFlags & (uint) LLObject.ObjectFlags.Phantom) == 0)
460 { 461 {
461 PrimitiveBaseShape pbs = rootPart.Shape; 462 PrimitiveBaseShape pbs = rootPart.Shape;
@@ -466,7 +467,7 @@ namespace OpenSim.Region.Environment.Scenes
466 rootPart.AbsolutePosition.Z), 467 rootPart.AbsolutePosition.Z),
467 new PhysicsVector(rootPart.Scale.X, rootPart.Scale.Y, rootPart.Scale.Z), 468 new PhysicsVector(rootPart.Scale.X, rootPart.Scale.Y, rootPart.Scale.Z),
468 new Quaternion(rootPart.RotationOffset.W, rootPart.RotationOffset.X, 469 new Quaternion(rootPart.RotationOffset.W, rootPart.RotationOffset.X,
469 rootPart.RotationOffset.Y, rootPart.RotationOffset.Z)); 470 rootPart.RotationOffset.Y, rootPart.RotationOffset.Z), UsePhysics);
470 } 471 }
471 } 472 }
472 } 473 }
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index d02f3e3..9eb3a71 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -533,6 +533,7 @@ namespace OpenSim.Region.Environment.Scenes
533 { 533 {
534 AddEntityFromStorage(prim); 534 AddEntityFromStorage(prim);
535 SceneObjectPart rootPart = prim.GetChildPart(prim.UUID); 535 SceneObjectPart rootPart = prim.GetChildPart(prim.UUID);
536 bool UsePhysics = ((rootPart.ObjectFlags & (uint)LLObject.ObjectFlags.Physics) > 0);
536 if ((rootPart.ObjectFlags & (uint) LLObject.ObjectFlags.Phantom) == 0) 537 if ((rootPart.ObjectFlags & (uint) LLObject.ObjectFlags.Phantom) == 0)
537 rootPart.PhysActor = phyScene.AddPrimShape( 538 rootPart.PhysActor = phyScene.AddPrimShape(
538 rootPart.Name, 539 rootPart.Name,
@@ -541,7 +542,7 @@ namespace OpenSim.Region.Environment.Scenes
541 rootPart.AbsolutePosition.Z), 542 rootPart.AbsolutePosition.Z),
542 new PhysicsVector(rootPart.Scale.X, rootPart.Scale.Y, rootPart.Scale.Z), 543 new PhysicsVector(rootPart.Scale.X, rootPart.Scale.Y, rootPart.Scale.Z),
543 new Quaternion(rootPart.RotationOffset.W, rootPart.RotationOffset.X, 544 new Quaternion(rootPart.RotationOffset.W, rootPart.RotationOffset.X,
544 rootPart.RotationOffset.Y, rootPart.RotationOffset.Z)); 545 rootPart.RotationOffset.Y, rootPart.RotationOffset.Z), UsePhysics);
545 } 546 }
546 MainLog.Instance.Verbose("Loaded " + PrimsFromDB.Count.ToString() + " SceneObject(s)"); 547 MainLog.Instance.Verbose("Loaded " + PrimsFromDB.Count.ToString() + " SceneObject(s)");
547 } 548 }
@@ -582,6 +583,7 @@ namespace OpenSim.Region.Environment.Scenes
582 rootPart.ObjectFlags += (uint) LLObject.ObjectFlags.Phantom; 583 rootPart.ObjectFlags += (uint) LLObject.ObjectFlags.Phantom;
583 } 584 }
584 // if not phantom, add to physics 585 // if not phantom, add to physics
586 bool UsePhysics = ((rootPart.ObjectFlags & (uint)LLObject.ObjectFlags.Physics) > 0);
585 if ((rootPart.ObjectFlags & (uint) LLObject.ObjectFlags.Phantom) == 0) 587 if ((rootPart.ObjectFlags & (uint) LLObject.ObjectFlags.Phantom) == 0)
586 rootPart.PhysActor = 588 rootPart.PhysActor =
587 phyScene.AddPrimShape( 589 phyScene.AddPrimShape(
@@ -589,7 +591,7 @@ namespace OpenSim.Region.Environment.Scenes
589 rootPart.Shape, 591 rootPart.Shape,
590 new PhysicsVector(pos.X, pos.Y, pos.Z), 592 new PhysicsVector(pos.X, pos.Y, pos.Z),
591 new PhysicsVector(shape.Scale.X, shape.Scale.Y, shape.Scale.Z), 593 new PhysicsVector(shape.Scale.X, shape.Scale.Y, shape.Scale.Z),
592 new Quaternion()); 594 new Quaternion(), UsePhysics);
593 } 595 }
594 } 596 }
595 597
@@ -669,6 +671,7 @@ namespace OpenSim.Region.Environment.Scenes
669 AddEntity(obj); 671 AddEntity(obj);
670 672
671 SceneObjectPart rootPart = obj.GetChildPart(obj.UUID); 673 SceneObjectPart rootPart = obj.GetChildPart(obj.UUID);
674 bool UsePhysics = ((rootPart.ObjectFlags & (uint)LLObject.ObjectFlags.Physics) > 0);
672 if ((rootPart.ObjectFlags & (uint) LLObject.ObjectFlags.Phantom) == 0) 675 if ((rootPart.ObjectFlags & (uint) LLObject.ObjectFlags.Phantom) == 0)
673 rootPart.PhysActor = phyScene.AddPrimShape( 676 rootPart.PhysActor = phyScene.AddPrimShape(
674 rootPart.Name, 677 rootPart.Name,
@@ -677,7 +680,7 @@ namespace OpenSim.Region.Environment.Scenes
677 rootPart.AbsolutePosition.Z), 680 rootPart.AbsolutePosition.Z),
678 new PhysicsVector(rootPart.Scale.X, rootPart.Scale.Y, rootPart.Scale.Z), 681 new PhysicsVector(rootPart.Scale.X, rootPart.Scale.Y, rootPart.Scale.Z),
679 new Quaternion(rootPart.RotationOffset.W, rootPart.RotationOffset.X, 682 new Quaternion(rootPart.RotationOffset.W, rootPart.RotationOffset.X,
680 rootPart.RotationOffset.Y, rootPart.RotationOffset.Z)); 683 rootPart.RotationOffset.Y, rootPart.RotationOffset.Z), UsePhysics);
681 primCount++; 684 primCount++;
682 } 685 }
683 } 686 }
@@ -734,6 +737,7 @@ namespace OpenSim.Region.Environment.Scenes
734 AddEntityFromStorage(obj); 737 AddEntityFromStorage(obj);
735 738
736 SceneObjectPart rootPart = obj.GetChildPart(obj.UUID); 739 SceneObjectPart rootPart = obj.GetChildPart(obj.UUID);
740 bool UsePhysics = ((rootPart.ObjectFlags & (uint)LLObject.ObjectFlags.Physics) > 0);
737 if ((rootPart.ObjectFlags & (uint) LLObject.ObjectFlags.Phantom) == 0) 741 if ((rootPart.ObjectFlags & (uint) LLObject.ObjectFlags.Phantom) == 0)
738 rootPart.PhysActor = phyScene.AddPrimShape( 742 rootPart.PhysActor = phyScene.AddPrimShape(
739 rootPart.Name, 743 rootPart.Name,
@@ -742,7 +746,7 @@ namespace OpenSim.Region.Environment.Scenes
742 rootPart.AbsolutePosition.Z), 746 rootPart.AbsolutePosition.Z),
743 new PhysicsVector(rootPart.Scale.X, rootPart.Scale.Y, rootPart.Scale.Z), 747 new PhysicsVector(rootPart.Scale.X, rootPart.Scale.Y, rootPart.Scale.Z),
744 new Quaternion(rootPart.RotationOffset.W, rootPart.RotationOffset.X, 748 new Quaternion(rootPart.RotationOffset.W, rootPart.RotationOffset.X,
745 rootPart.RotationOffset.Y, rootPart.RotationOffset.Z)); 749 rootPart.RotationOffset.Y, rootPart.RotationOffset.Z), UsePhysics);
746 } 750 }
747 751
748 public void SavePrimsToXml2(string fileName) 752 public void SavePrimsToXml2(string fileName)
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
index 2f746b2..39f4e5c 100644
--- a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
@@ -438,7 +438,8 @@ namespace OpenSim.Region.Environment.Scenes
438 dupe.RootPart.AbsolutePosition.Z), 438 dupe.RootPart.AbsolutePosition.Z),
439 new PhysicsVector(dupe.RootPart.Scale.X, dupe.RootPart.Scale.Y, dupe.RootPart.Scale.Z), 439 new PhysicsVector(dupe.RootPart.Scale.X, dupe.RootPart.Scale.Y, dupe.RootPart.Scale.Z),
440 new Quaternion(dupe.RootPart.RotationOffset.W, dupe.RootPart.RotationOffset.X, 440 new Quaternion(dupe.RootPart.RotationOffset.W, dupe.RootPart.RotationOffset.X,
441 dupe.RootPart.RotationOffset.Y, dupe.RootPart.RotationOffset.Z)); 441 dupe.RootPart.RotationOffset.Y, dupe.RootPart.RotationOffset.Z),
442 dupe.RootPart.PhysActor.IsPhysical);
442 } 443 }
443 444
444 List<SceneObjectPart> partList = new List<SceneObjectPart>(m_parts.Values); 445 List<SceneObjectPart> partList = new List<SceneObjectPart>(m_parts.Values);
@@ -977,7 +978,8 @@ namespace OpenSim.Region.Environment.Scenes
977 m_rootPart.AbsolutePosition.Z), 978 m_rootPart.AbsolutePosition.Z),
978 new PhysicsVector(m_rootPart.Scale.X, m_rootPart.Scale.Y, m_rootPart.Scale.Z), 979 new PhysicsVector(m_rootPart.Scale.X, m_rootPart.Scale.Y, m_rootPart.Scale.Z),
979 new Quaternion(m_rootPart.RotationOffset.W, m_rootPart.RotationOffset.X, 980 new Quaternion(m_rootPart.RotationOffset.W, m_rootPart.RotationOffset.X,
980 m_rootPart.RotationOffset.Y, m_rootPart.RotationOffset.Z)); 981 m_rootPart.RotationOffset.Y, m_rootPart.RotationOffset.Z),
982 m_rootPart.PhysActor.IsPhysical);
981 } 983 }
982 } 984 }
983 985
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
index 38eaf90..d0edff3 100644
--- a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
@@ -672,6 +672,15 @@ namespace OpenSim.Region.Environment.Scenes
672 //Silently ignore it - TODO: FIXME Quick 672 //Silently ignore it - TODO: FIXME Quick
673 } 673 }
674 674
675 if (UsePhysics)
676 {
677 AddFlag(LLObject.ObjectFlags.Physics);
678 }
679 else
680 {
681 RemFlag(LLObject.ObjectFlags.Physics);
682 }
683
675 if (IsPhantom) 684 if (IsPhantom)
676 { 685 {
677 AddFlag(LLObject.ObjectFlags.Phantom); 686 AddFlag(LLObject.ObjectFlags.Phantom);
@@ -694,18 +703,10 @@ namespace OpenSim.Region.Environment.Scenes
694 AbsolutePosition.Z), 703 AbsolutePosition.Z),
695 new PhysicsVector(Scale.X, Scale.Y, Scale.Z), 704 new PhysicsVector(Scale.X, Scale.Y, Scale.Z),
696 new Quaternion(RotationOffset.W, RotationOffset.X, 705 new Quaternion(RotationOffset.W, RotationOffset.X,
697 RotationOffset.Y, RotationOffset.Z)); 706 RotationOffset.Y, RotationOffset.Z), UsePhysics);
698 } 707 }
699 } 708 }
700 709
701 if (UsePhysics)
702 {
703 AddFlag(LLObject.ObjectFlags.Physics);
704 }
705 else
706 {
707 RemFlag(LLObject.ObjectFlags.Physics);
708 }
709 if (IsTemporary) 710 if (IsTemporary)
710 { 711 {
711 AddFlag(LLObject.ObjectFlags.TemporaryOnRez); 712 AddFlag(LLObject.ObjectFlags.TemporaryOnRez);
diff --git a/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPlugin.cs b/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPlugin.cs
index f26b9a1..7c2bbf4 100644
--- a/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPlugin.cs
+++ b/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPlugin.cs
@@ -101,9 +101,14 @@ namespace OpenSim.Region.Physics.BasicPhysicsPlugin
101 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position, 101 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position,
102 PhysicsVector size, Quaternion rotation) 102 PhysicsVector size, Quaternion rotation)
103 { 103 {
104 return null; 104 return this.AddPrimShape(primName, pbs, position, size, rotation, false);
105 } 105 }
106 106
107 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position,
108 PhysicsVector size, Quaternion rotation, bool isPhysical)
109 {
110 return null;
111 }
107 112
108 public override void Simulate(float timeStep) 113 public override void Simulate(float timeStep)
109 { 114 {
@@ -186,6 +191,12 @@ namespace OpenSim.Region.Physics.BasicPhysicsPlugin
186 _acceleration = new PhysicsVector(); 191 _acceleration = new PhysicsVector();
187 } 192 }
188 193
194 public override bool IsPhysical
195 {
196 get { return false; }
197 set { return; }
198 }
199
189 public override bool Flying 200 public override bool Flying
190 { 201 {
191 get { return flying; } 202 get { return flying; }
diff --git a/OpenSim/Region/Physics/BulletXPlugin/BulletXPlugin.cs b/OpenSim/Region/Physics/BulletXPlugin/BulletXPlugin.cs
index 7159754..5a2b22c 100644
--- a/OpenSim/Region/Physics/BulletXPlugin/BulletXPlugin.cs
+++ b/OpenSim/Region/Physics/BulletXPlugin/BulletXPlugin.cs
@@ -387,6 +387,11 @@ namespace OpenSim.Region.Physics.BulletXPlugin
387 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position, 387 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position,
388 PhysicsVector size, AxiomQuaternion rotation) 388 PhysicsVector size, AxiomQuaternion rotation)
389 { 389 {
390 return this.AddPrimShape(primName, pbs, position, size, rotation, false);
391 }
392 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position,
393 PhysicsVector size, AxiomQuaternion rotation, bool isPhysical)
394 {
390 PhysicsActor result; 395 PhysicsActor result;
391 396
392 switch (pbs.ProfileShape) 397 switch (pbs.ProfileShape)
@@ -651,10 +656,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin
651 656
652 public override PhysicsVector Position 657 public override PhysicsVector Position
653 { 658 {
654 get 659 get { return _position; }
655 {
656 return _position;
657 }
658 set 660 set
659 { 661 {
660 lock (BulletXScene.BulletXLock) 662 lock (BulletXScene.BulletXLock)
@@ -666,10 +668,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin
666 } 668 }
667 public override PhysicsVector Velocity 669 public override PhysicsVector Velocity
668 { 670 {
669 get 671 get { return _velocity; }
670 {
671 return _velocity;
672 }
673 set 672 set
674 { 673 {
675 lock (BulletXScene.BulletXLock) 674 lock (BulletXScene.BulletXLock)
@@ -689,31 +688,16 @@ namespace OpenSim.Region.Physics.BulletXPlugin
689 } 688 }
690 public override PhysicsVector Size 689 public override PhysicsVector Size
691 { 690 {
692 get 691 get { return _size; }
693 { 692 set { lock (BulletXScene.BulletXLock) { _size = value; } }
694 return _size;
695 }
696 set
697 {
698 lock (BulletXScene.BulletXLock)
699 {
700 _size = value;
701 }
702 }
703 } 693 }
704 public override PhysicsVector Acceleration 694 public override PhysicsVector Acceleration
705 { 695 {
706 get 696 get { return _acceleration; }
707 {
708 return _acceleration;
709 }
710 } 697 }
711 public override AxiomQuaternion Orientation 698 public override AxiomQuaternion Orientation
712 { 699 {
713 get 700 get { return _orientation; }
714 {
715 return _orientation;
716 }
717 set 701 set
718 { 702 {
719 lock (BulletXScene.BulletXLock) 703 lock (BulletXScene.BulletXLock)
@@ -723,29 +707,29 @@ namespace OpenSim.Region.Physics.BulletXPlugin
723 } 707 }
724 } 708 }
725 } 709 }
726 public virtual float Mass 710 public virtual float Mass
727 { get { return 0; } } 711 {
712 get { return 0; }
713 }
728 public RigidBody RigidBody 714 public RigidBody RigidBody
729 { 715 {
730 get 716 get { return rigidBody; }
731 {
732 return rigidBody;
733 }
734 } 717 }
735 public Vector3 RigidBodyPosition 718 public Vector3 RigidBodyPosition
736 { 719 {
737 get { return this.rigidBody.CenterOfMassPosition; } 720 get { return this.rigidBody.CenterOfMassPosition; }
738 } 721 }
722
723 public override bool IsPhysical
724 {
725 get { return false; }
726 set { return; }
727 }
728
739 public override bool Flying 729 public override bool Flying
740 { 730 {
741 get 731 get { return flying; }
742 { 732 set { flying = value; }
743 return flying;
744 }
745 set
746 {
747 flying = value;
748 }
749 } 733 }
750 public override bool IsColliding 734 public override bool IsColliding
751 { 735 {
diff --git a/OpenSim/Region/Physics/Manager/PhysicsActor.cs b/OpenSim/Region/Physics/Manager/PhysicsActor.cs
index f1d0f84..bfe1d0b 100644
--- a/OpenSim/Region/Physics/Manager/PhysicsActor.cs
+++ b/OpenSim/Region/Physics/Manager/PhysicsActor.cs
@@ -58,6 +58,8 @@ namespace OpenSim.Region.Physics.Manager
58 58
59 public abstract Quaternion Orientation { get; set; } 59 public abstract Quaternion Orientation { get; set; }
60 60
61 public abstract bool IsPhysical {get; set;}
62
61 public abstract bool Flying { get; set; } 63 public abstract bool Flying { get; set; }
62 64
63 public abstract bool IsColliding { get; set; } 65 public abstract bool IsColliding { get; set; }
@@ -100,6 +102,12 @@ namespace OpenSim.Region.Physics.Manager
100 get { return PhysicsVector.Zero; } 102 get { return PhysicsVector.Zero; }
101 } 103 }
102 104
105 public override bool IsPhysical
106 {
107 get { return false; }
108 set { return; }
109 }
110
103 public override bool Flying 111 public override bool Flying
104 { 112 {
105 get { return false; } 113 get { return false; }
diff --git a/OpenSim/Region/Physics/Manager/PhysicsScene.cs b/OpenSim/Region/Physics/Manager/PhysicsScene.cs
index 3f08234..13591ea 100644
--- a/OpenSim/Region/Physics/Manager/PhysicsScene.cs
+++ b/OpenSim/Region/Physics/Manager/PhysicsScene.cs
@@ -45,7 +45,9 @@ namespace OpenSim.Region.Physics.Manager
45 public abstract void RemovePrim(PhysicsActor prim); 45 public abstract void RemovePrim(PhysicsActor prim);
46 46
47 public abstract PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position, 47 public abstract PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position,
48 PhysicsVector size, Quaternion rotation); 48 PhysicsVector size, Quaternion rotation); //To be removed
49 public abstract PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position,
50 PhysicsVector size, Quaternion rotation, bool isPhysical);
49 51
50 public abstract void Simulate(float timeStep); 52 public abstract void Simulate(float timeStep);
51 53
@@ -82,9 +84,13 @@ namespace OpenSim.Region.Physics.Manager
82 return PhysicsActor.Null; 84 return PhysicsActor.Null;
83 } 85 }
84*/ 86*/
85
86 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position, 87 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position,
87 PhysicsVector size, Quaternion rotation) 88 PhysicsVector size, Quaternion rotation) //To be removed
89 {
90 return this.AddPrimShape(primName, pbs, position, size, rotation, false);
91 }
92 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position,
93 PhysicsVector size, Quaternion rotation, bool isPhysical)
88 { 94 {
89 MainLog.Instance.Verbose("NullPhysicsScene : AddPrim({0},{1})", position, size); 95 MainLog.Instance.Verbose("NullPhysicsScene : AddPrim({0},{1})", position, size);
90 return PhysicsActor.Null; 96 return PhysicsActor.Null;
diff --git a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
index 82b94db..f1db034 100644
--- a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
+++ b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
@@ -300,7 +300,12 @@ namespace OpenSim.Region.Physics.OdePlugin
300 300
301 301
302 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position, 302 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position,
303 PhysicsVector size, Quaternion rotation) 303 PhysicsVector size, Quaternion rotation) //To be removed
304 {
305 return this.AddPrimShape(primName, pbs, position, size, rotation, false);
306 }
307 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position,
308 PhysicsVector size, Quaternion rotation, bool isPhysical)
304 { 309 {
305 PhysicsActor result; 310 PhysicsActor result;
306 311
@@ -510,6 +515,12 @@ namespace OpenSim.Region.Physics.OdePlugin
510 parent_scene.actor_name_map[Shell] = (PhysicsActor)this; 515 parent_scene.actor_name_map[Shell] = (PhysicsActor)this;
511 } 516 }
512 517
518 public override bool IsPhysical
519 {
520 get { return false; }
521 set { return; }
522 }
523
513 public override bool Flying 524 public override bool Flying
514 { 525 {
515 get { return flying; } 526 get { return flying; }
@@ -758,6 +769,12 @@ namespace OpenSim.Region.Physics.OdePlugin
758 prim_geom = d.CreateTriMesh(parent_scene.space, _triMeshData, parent_scene.triCallback, null, null); 769 prim_geom = d.CreateTriMesh(parent_scene.space, _triMeshData, parent_scene.triCallback, null, null);
759 } 770 }
760 771
772 public override bool IsPhysical
773 {
774 get { return false; }
775 set { return; }
776 }
777
761 public override bool Flying 778 public override bool Flying
762 { 779 {
763 get { return false; //no flying prims for you 780 get { return false; //no flying prims for you
diff --git a/OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs b/OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs
index cad66d7..7a43a0a 100644
--- a/OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs
+++ b/OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs
@@ -120,7 +120,12 @@ namespace OpenSim.Region.Physics.PhysXPlugin
120 } 120 }
121 121
122 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position, 122 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position,
123 PhysicsVector size, Quaternion rotation) 123 PhysicsVector size, Quaternion rotation) //To be removed
124 {
125 return this.AddPrimShape(primName, pbs, position, size, rotation, false);
126 }
127 public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, PhysicsVector position,
128 PhysicsVector size, Quaternion rotation, bool isPhysical)
124 { 129 {
125 return AddPrim(position, size, rotation); 130 return AddPrim(position, size, rotation);
126 } 131 }
@@ -193,6 +198,12 @@ namespace OpenSim.Region.Physics.PhysXPlugin
193 _character = character; 198 _character = character;
194 } 199 }
195 200
201 public override bool IsPhysical
202 {
203 get { return false; }
204 set { return; }
205 }
206
196 public override bool Flying 207 public override bool Flying
197 { 208 {
198 get { return flying; } 209 get { return flying; }
@@ -305,6 +316,12 @@ namespace OpenSim.Region.Physics.PhysXPlugin
305 _prim = prim; 316 _prim = prim;
306 } 317 }
307 318
319 public override bool IsPhysical
320 {
321 get { return false; }
322 set { return; }
323 }
324
308 public override bool Flying 325 public override bool Flying
309 { 326 {
310 get { return false; //no flying prims for you 327 get { return false; //no flying prims for you