diff options
author | Justin Clark-Casey (justincc) | 2011-12-15 21:57:22 +0000 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2011-12-15 21:57:22 +0000 |
commit | 937c06db54f8152486d37a4ba604ffb3bcdccbb4 (patch) | |
tree | bb8b30c6cdac92c82352fc829ebdf0a6e663cdba /OpenSim/Region/Physics/OdePlugin | |
parent | minor: add some currently commented log lines for use in debugging (diff) | |
download | opensim-SC_OLD-937c06db54f8152486d37a4ba604ffb3bcdccbb4.zip opensim-SC_OLD-937c06db54f8152486d37a4ba604ffb3bcdccbb4.tar.gz opensim-SC_OLD-937c06db54f8152486d37a4ba604ffb3bcdccbb4.tar.bz2 opensim-SC_OLD-937c06db54f8152486d37a4ba604ffb3bcdccbb4.tar.xz |
Code cleanup related to ScenePresence.PhysicsActor and OdeScene/OdeCharacter
Stop hiding RemoveAvatar failure, add log messages when characters are removed through defects or re-added unexpectedly.
Add commented out log lines for future use.
Use automatic property for PhysicsActor for better code readability and simplicity
Diffstat (limited to 'OpenSim/Region/Physics/OdePlugin')
-rw-r--r-- | OpenSim/Region/Physics/OdePlugin/ODECharacter.cs | 6 | ||||
-rw-r--r-- | OpenSim/Region/Physics/OdePlugin/OdeScene.cs | 26 |
2 files changed, 24 insertions, 8 deletions
diff --git a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs index 73c1c02..9c7e0ef 100644 --- a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs +++ b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs | |||
@@ -137,7 +137,7 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
137 | internal IntPtr Body = IntPtr.Zero; | 137 | internal IntPtr Body = IntPtr.Zero; |
138 | private OdeScene _parent_scene; | 138 | private OdeScene _parent_scene; |
139 | internal IntPtr Shell = IntPtr.Zero; | 139 | internal IntPtr Shell = IntPtr.Zero; |
140 | internal IntPtr Amotor = IntPtr.Zero; | 140 | private IntPtr Amotor = IntPtr.Zero; |
141 | private d.Mass ShellMass; | 141 | private d.Mass ShellMass; |
142 | 142 | ||
143 | private int m_eventsubscription = 0; | 143 | private int m_eventsubscription = 0; |
@@ -549,8 +549,8 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
549 | { | 549 | { |
550 | get | 550 | get |
551 | { | 551 | { |
552 | float AVvolume = (float) (Math.PI*Math.Pow(CAPSULE_RADIUS, 2)*CAPSULE_LENGTH); | 552 | float AVvolume = (float)(Math.PI * Math.Pow(CAPSULE_RADIUS, 2) * CAPSULE_LENGTH); |
553 | return m_density*AVvolume; | 553 | return m_density * AVvolume; |
554 | } | 554 | } |
555 | } | 555 | } |
556 | 556 | ||
diff --git a/OpenSim/Region/Physics/OdePlugin/OdeScene.cs b/OpenSim/Region/Physics/OdePlugin/OdeScene.cs index da540fa..afe646c 100644 --- a/OpenSim/Region/Physics/OdePlugin/OdeScene.cs +++ b/OpenSim/Region/Physics/OdePlugin/OdeScene.cs | |||
@@ -1703,7 +1703,6 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1703 | // "[ODE SCENE]: Removing physics character {0} {1} from physics scene {2}", | 1703 | // "[ODE SCENE]: Removing physics character {0} {1} from physics scene {2}", |
1704 | // actor.Name, actor.LocalID, Name); | 1704 | // actor.Name, actor.LocalID, Name); |
1705 | 1705 | ||
1706 | //m_log.Debug("[PHYSICS]:ODELOCK"); | ||
1707 | ((OdeCharacter) actor).Destroy(); | 1706 | ((OdeCharacter) actor).Destroy(); |
1708 | } | 1707 | } |
1709 | 1708 | ||
@@ -1711,11 +1710,12 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1711 | { | 1710 | { |
1712 | if (!_characters.Contains(chr)) | 1711 | if (!_characters.Contains(chr)) |
1713 | { | 1712 | { |
1714 | // m_log.DebugFormat( | ||
1715 | // "[ODE SCENE]: Adding physics character {0} {1} to physics scene {2}", chr.Name, chr.LocalID, Name); | ||
1716 | |||
1717 | _characters.Add(chr); | 1713 | _characters.Add(chr); |
1718 | 1714 | ||
1715 | // m_log.DebugFormat( | ||
1716 | // "[ODE SCENE]: Adding physics character {0} {1} to physics scene {2}. Count now {3}", | ||
1717 | // chr.Name, chr.LocalID, Name, _characters.Count); | ||
1718 | |||
1719 | if (chr.bad) | 1719 | if (chr.bad) |
1720 | m_log.ErrorFormat("[ODE SCENE]: Added BAD actor {0} to characters list", chr.m_uuid); | 1720 | m_log.ErrorFormat("[ODE SCENE]: Added BAD actor {0} to characters list", chr.m_uuid); |
1721 | } | 1721 | } |
@@ -1730,11 +1730,19 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1730 | internal void RemoveCharacter(OdeCharacter chr) | 1730 | internal void RemoveCharacter(OdeCharacter chr) |
1731 | { | 1731 | { |
1732 | if (_characters.Contains(chr)) | 1732 | if (_characters.Contains(chr)) |
1733 | { | ||
1733 | _characters.Remove(chr); | 1734 | _characters.Remove(chr); |
1735 | |||
1736 | // m_log.DebugFormat( | ||
1737 | // "[ODE SCENE]: Removing physics character {0} {1} from physics scene {2}. Count now {3}", | ||
1738 | // chr.Name, chr.LocalID, Name, _characters.Count); | ||
1739 | } | ||
1734 | else | 1740 | else |
1741 | { | ||
1735 | m_log.ErrorFormat( | 1742 | m_log.ErrorFormat( |
1736 | "[ODE SCENE]: Tried to remove character {0} {1} but they are not in the list!", | 1743 | "[ODE SCENE]: Tried to remove character {0} {1} but they are not in the list!", |
1737 | chr.Name, chr.LocalID); | 1744 | chr.Name, chr.LocalID); |
1745 | } | ||
1738 | } | 1746 | } |
1739 | 1747 | ||
1740 | private PhysicsActor AddPrim(String name, Vector3 position, Vector3 size, Quaternion rotation, | 1748 | private PhysicsActor AddPrim(String name, Vector3 position, Vector3 size, Quaternion rotation, |
@@ -1772,7 +1780,7 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1772 | public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, Vector3 position, | 1780 | public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, Vector3 position, |
1773 | Vector3 size, Quaternion rotation, bool isPhysical, uint localid) | 1781 | Vector3 size, Quaternion rotation, bool isPhysical, uint localid) |
1774 | { | 1782 | { |
1775 | // m_log.DebugFormat("[ODE SCENE]: Adding physics prim {0} {1} to physics scene {2}", primName, localid, Name); | 1783 | m_log.DebugFormat("[ODE SCENE]: Adding physics prim {0} {1} to physics scene {2}", primName, localid, Name); |
1776 | 1784 | ||
1777 | return AddPrim(primName, position, size, rotation, pbs, isPhysical, localid); | 1785 | return AddPrim(primName, position, size, rotation, pbs, isPhysical, localid); |
1778 | } | 1786 | } |
@@ -2762,6 +2770,10 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
2762 | { | 2770 | { |
2763 | foreach (OdeCharacter actor in defects) | 2771 | foreach (OdeCharacter actor in defects) |
2764 | { | 2772 | { |
2773 | m_log.ErrorFormat( | ||
2774 | "[ODE SCENE]: Removing physics character {0} {1} from physics scene {2} due to defect found when moving", | ||
2775 | actor.Name, actor.LocalID, Name); | ||
2776 | |||
2765 | RemoveCharacter(actor); | 2777 | RemoveCharacter(actor); |
2766 | actor.DestroyOdeStructures(); | 2778 | actor.DestroyOdeStructures(); |
2767 | } | 2779 | } |
@@ -2832,6 +2844,10 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
2832 | { | 2844 | { |
2833 | foreach (OdeCharacter actor in defects) | 2845 | foreach (OdeCharacter actor in defects) |
2834 | { | 2846 | { |
2847 | m_log.ErrorFormat( | ||
2848 | "[ODE SCENE]: Removing physics character {0} {1} from physics scene {2} due to defect found when updating position and velocity", | ||
2849 | actor.Name, actor.LocalID, Name); | ||
2850 | |||
2835 | RemoveCharacter(actor); | 2851 | RemoveCharacter(actor); |
2836 | actor.DestroyOdeStructures(); | 2852 | actor.DestroyOdeStructures(); |
2837 | } | 2853 | } |