aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
diff options
context:
space:
mode:
authorKitto Flora2009-09-30 19:07:18 +0200
committerKitto Flora2009-09-30 19:07:18 +0200
commit07df0e0ab0c69633a6afec8d05cccc117656d3d9 (patch)
tree3048cc38b313e255cbf03fa3e2900e28cadc47c9 /OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
parentAnd another merge issue (diff)
parentFix loading modules with alternate configurations and ports into ROBUST. (diff)
downloadopensim-SC_OLD-07df0e0ab0c69633a6afec8d05cccc117656d3d9.zip
opensim-SC_OLD-07df0e0ab0c69633a6afec8d05cccc117656d3d9.tar.gz
opensim-SC_OLD-07df0e0ab0c69633a6afec8d05cccc117656d3d9.tar.bz2
opensim-SC_OLD-07df0e0ab0c69633a6afec8d05cccc117656d3d9.tar.xz
Merge branch '0.6.7-post-fixes' into vehicles
Diffstat (limited to 'OpenSim/Region/Physics/OdePlugin/ODEPrim.cs')
-rw-r--r--OpenSim/Region/Physics/OdePlugin/ODEPrim.cs17
1 files changed, 3 insertions, 14 deletions
diff --git a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
index 34844c0..86ed3bd 100644
--- a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
+++ b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
@@ -97,7 +97,6 @@ namespace OpenSim.Region.Physics.OdePlugin
97 97
98 // private float m_tensor = 5f; 98 // private float m_tensor = 5f;
99 private int body_autodisable_frames = 20; 99 private int body_autodisable_frames = 20;
100 private IMesh primMesh = null;
101 100
102 101
103 private const CollisionCategories m_default_collisionFlags = (CollisionCategories.Geom 102 private const CollisionCategories m_default_collisionFlags = (CollisionCategories.Geom
@@ -825,14 +824,10 @@ namespace OpenSim.Region.Physics.OdePlugin
825 } 824 }
826 } 825 }
827 826
828 IMesh oldMesh = primMesh; 827 float[] vertexList = mesh.getVertexListAsFloatLocked(); // Note, that vertextList is pinned in memory
828 int[] indexList = mesh.getIndexListAsIntLocked(); // Also pinned, needs release after usage
829 829
830 primMesh = mesh; 830 mesh.releaseSourceMeshData(); // free up the original mesh data to save memory
831
832 float[] vertexList = primMesh.getVertexListAsFloatLocked(); // Note, that vertextList is pinned in memory
833 int[] indexList = primMesh.getIndexListAsIntLocked(); // Also pinned, needs release after usage
834
835 primMesh.releaseSourceMeshData(); // free up the original mesh data to save memory
836 831
837 int VertexCount = vertexList.GetLength(0)/3; 832 int VertexCount = vertexList.GetLength(0)/3;
838 int IndexCount = indexList.GetLength(0); 833 int IndexCount = indexList.GetLength(0);
@@ -859,12 +854,6 @@ namespace OpenSim.Region.Physics.OdePlugin
859 return; 854 return;
860 } 855 }
861 856
862 if (oldMesh != null)
863 {
864 oldMesh.releasePinned();
865 oldMesh = null;
866 }
867
868 // if (IsPhysical && Body == (IntPtr) 0) 857 // if (IsPhysical && Body == (IntPtr) 0)
869 // { 858 // {
870 // Recreate the body 859 // Recreate the body