diff options
author | UbitUmarov | 2012-12-04 02:46:40 +0000 |
---|---|---|
committer | UbitUmarov | 2012-12-04 02:46:40 +0000 |
commit | b6d29aa124cf1ec1c1dbe6874720e6cc39faf06f (patch) | |
tree | e71a0e511e0b070d4ab28f4012c82860fe99cd48 /OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs | |
parent | raise standing avatar a bit to reduce knees bending on some collisions. (diff) | |
download | opensim-SC-b6d29aa124cf1ec1c1dbe6874720e6cc39faf06f.zip opensim-SC-b6d29aa124cf1ec1c1dbe6874720e6cc39faf06f.tar.gz opensim-SC-b6d29aa124cf1ec1c1dbe6874720e6cc39faf06f.tar.bz2 opensim-SC-b6d29aa124cf1ec1c1dbe6874720e6cc39faf06f.tar.xz |
move characters (avatars) to own collision space, also fixing a problem
with previus code that was still assuming the avatar is g2
Diffstat (limited to 'OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs')
-rw-r--r-- | OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs b/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs index f33fdb4..925900f 100644 --- a/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs +++ b/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs | |||
@@ -708,21 +708,21 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
708 | bot += midsz; | 708 | bot += midsz; |
709 | float topz = bot + topsz * 0.5f; | 709 | float topz = bot + topsz * 0.5f; |
710 | 710 | ||
711 | _parent_scene.waitForSpaceUnlock(_parent_scene.ActiveSpace); | 711 | _parent_scene.waitForSpaceUnlock(_parent_scene.CharsSpace); |
712 | 712 | ||
713 | feetbox = d.CreateBox(_parent_scene.ActiveSpace, feetsx, feetsy, feetsz); | 713 | feetbox = d.CreateBox(_parent_scene.CharsSpace, feetsx, feetsy, feetsz); |
714 | d.GeomSetCategoryBits(feetbox, (uint)m_collisionCategories); | 714 | d.GeomSetCategoryBits(feetbox, (uint)m_collisionCategories); |
715 | d.GeomSetCollideBits(feetbox, (uint)m_collisionFlags); | 715 | d.GeomSetCollideBits(feetbox, (uint)m_collisionFlags); |
716 | 716 | ||
717 | midbox = d.CreateBox(_parent_scene.ActiveSpace, midsx, midsy, midsz); | 717 | midbox = d.CreateBox(_parent_scene.CharsSpace, midsx, midsy, midsz); |
718 | d.GeomSetCategoryBits(midbox, (uint)m_collisionCategories); | 718 | d.GeomSetCategoryBits(midbox, (uint)m_collisionCategories); |
719 | d.GeomSetCollideBits(midbox, (uint)m_collisionFlags); | 719 | d.GeomSetCollideBits(midbox, (uint)m_collisionFlags); |
720 | 720 | ||
721 | topbox = d.CreateBox(_parent_scene.ActiveSpace, topsx, topsy, topsz); | 721 | topbox = d.CreateBox(_parent_scene.CharsSpace, topsx, topsy, topsz); |
722 | d.GeomSetCategoryBits(topbox, (uint)m_collisionCategories); | 722 | d.GeomSetCategoryBits(topbox, (uint)m_collisionCategories); |
723 | d.GeomSetCollideBits(topbox, (uint)m_collisionFlags); | 723 | d.GeomSetCollideBits(topbox, (uint)m_collisionFlags); |
724 | 724 | ||
725 | bonebox = d.CreateBox(_parent_scene.ActiveSpace, bonesx, bonesy, bonesz); | 725 | bonebox = d.CreateBox(_parent_scene.CharsSpace, bonesx, bonesy, bonesz); |
726 | d.GeomSetCategoryBits(bonebox, (uint)m_collisionCategories); | 726 | d.GeomSetCategoryBits(bonebox, (uint)m_collisionCategories); |
727 | d.GeomSetCollideBits(bonebox, (uint)m_collisionFlags); | 727 | d.GeomSetCollideBits(bonebox, (uint)m_collisionFlags); |
728 | 728 | ||
@@ -828,21 +828,21 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
828 | if (topbox != IntPtr.Zero) | 828 | if (topbox != IntPtr.Zero) |
829 | { | 829 | { |
830 | _parent_scene.actor_name_map.Remove(topbox); | 830 | _parent_scene.actor_name_map.Remove(topbox); |
831 | _parent_scene.waitForSpaceUnlock(_parent_scene.ActiveSpace); | 831 | _parent_scene.waitForSpaceUnlock(_parent_scene.CharsSpace); |
832 | d.GeomDestroy(topbox); | 832 | d.GeomDestroy(topbox); |
833 | topbox = IntPtr.Zero; | 833 | topbox = IntPtr.Zero; |
834 | } | 834 | } |
835 | if (midbox != IntPtr.Zero) | 835 | if (midbox != IntPtr.Zero) |
836 | { | 836 | { |
837 | _parent_scene.actor_name_map.Remove(midbox); | 837 | _parent_scene.actor_name_map.Remove(midbox); |
838 | _parent_scene.waitForSpaceUnlock(_parent_scene.ActiveSpace); | 838 | _parent_scene.waitForSpaceUnlock(_parent_scene.CharsSpace); |
839 | d.GeomDestroy(midbox); | 839 | d.GeomDestroy(midbox); |
840 | midbox = IntPtr.Zero; | 840 | midbox = IntPtr.Zero; |
841 | } | 841 | } |
842 | if (feetbox != IntPtr.Zero) | 842 | if (feetbox != IntPtr.Zero) |
843 | { | 843 | { |
844 | _parent_scene.actor_name_map.Remove(feetbox); | 844 | _parent_scene.actor_name_map.Remove(feetbox); |
845 | _parent_scene.waitForSpaceUnlock(_parent_scene.ActiveSpace); | 845 | _parent_scene.waitForSpaceUnlock(_parent_scene.CharsSpace); |
846 | d.GeomDestroy(feetbox); | 846 | d.GeomDestroy(feetbox); |
847 | feetbox = IntPtr.Zero; | 847 | feetbox = IntPtr.Zero; |
848 | } | 848 | } |
@@ -850,7 +850,7 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
850 | if (bonebox != IntPtr.Zero) | 850 | if (bonebox != IntPtr.Zero) |
851 | { | 851 | { |
852 | _parent_scene.actor_name_map.Remove(bonebox); | 852 | _parent_scene.actor_name_map.Remove(bonebox); |
853 | _parent_scene.waitForSpaceUnlock(_parent_scene.ActiveSpace); | 853 | _parent_scene.waitForSpaceUnlock(_parent_scene.CharsSpace); |
854 | d.GeomDestroy(bonebox); | 854 | d.GeomDestroy(bonebox); |
855 | bonebox = IntPtr.Zero; | 855 | bonebox = IntPtr.Zero; |
856 | } | 856 | } |