aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorJustin Clark-Casey (justincc)2011-07-09 00:35:30 +0100
committerJustin Clark-Casey (justincc)2011-07-09 00:35:30 +0100
commit5e8900dfd058bd103cb6dcf8a57dc94683efd878 (patch)
treea9962c79801fd6a3181fb72d026ae84e5c1097cd
parentWhen loading library asset set, only store an asset if it's different from an... (diff)
downloadopensim-SC_OLD-5e8900dfd058bd103cb6dcf8a57dc94683efd878.zip
opensim-SC_OLD-5e8900dfd058bd103cb6dcf8a57dc94683efd878.tar.gz
opensim-SC_OLD-5e8900dfd058bd103cb6dcf8a57dc94683efd878.tar.bz2
opensim-SC_OLD-5e8900dfd058bd103cb6dcf8a57dc94683efd878.tar.xz
minor: code tidy and inserted log lines for future use.
Unable to get to the bottom of why resizing a mesh fails to properly reset the physics proxy, when toggling phantom does After a mesh is generated, the existing sculptdata is set to zero in PrimitiveBaseShape to save memory When phantom is toggled, the sculptdata is regenerated before remeshing. But on resize, the sculptdata is not regenerated. So clearly, resetting sculptdata is possible, but haven't quite been able to pin down how this is being done when phantom is toggled.
-rw-r--r--OpenSim/Framework/PrimitiveBaseShape.cs46
-rw-r--r--OpenSim/Region/ClientStack/Linden/Caps/ObjectCaps/UploadObjectAssetModule.cs4
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPart.cs1
-rw-r--r--OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs2
-rw-r--r--OpenSim/Region/Physics/Meshing/Meshmerizer.cs5
-rw-r--r--OpenSim/Region/Physics/OdePlugin/ODEPrim.cs52
-rw-r--r--OpenSim/Region/Physics/OdePlugin/OdeScene.cs5
7 files changed, 72 insertions, 43 deletions
diff --git a/OpenSim/Framework/PrimitiveBaseShape.cs b/OpenSim/Framework/PrimitiveBaseShape.cs
index 7b5fb2e..8489ad8 100644
--- a/OpenSim/Framework/PrimitiveBaseShape.cs
+++ b/OpenSim/Framework/PrimitiveBaseShape.cs
@@ -213,6 +213,8 @@ namespace OpenSim.Framework
213 /// <param name="prim"></param> 213 /// <param name="prim"></param>
214 public PrimitiveBaseShape(Primitive prim) 214 public PrimitiveBaseShape(Primitive prim)
215 { 215 {
216// m_log.DebugFormat("[PRIMITIVE BASE SHAPE]: Creating from {0}", prim.ID);
217
216 PCode = (byte)prim.PrimData.PCode; 218 PCode = (byte)prim.PrimData.PCode;
217 ExtraParams = new byte[1]; 219 ExtraParams = new byte[1];
218 220
@@ -613,29 +615,39 @@ namespace OpenSim.Framework
613 } 615 }
614 } 616 }
615 617
616 public byte SculptType { 618 public byte SculptType
617 get { 619 {
620 get
621 {
618 return _sculptType; 622 return _sculptType;
619 } 623 }
620 set { 624 set
625 {
621 _sculptType = value; 626 _sculptType = value;
622 } 627 }
623 } 628 }
624 629
625 public byte[] SculptData { 630 public byte[] SculptData
626 get { 631 {
632 get
633 {
627 return _sculptData; 634 return _sculptData;
628 } 635 }
629 set { 636 set
637 {
638// m_log.DebugFormat("[PRIMITIVE BASE SHAPE]: Setting SculptData to data with length {0}", value.Length);
630 _sculptData = value; 639 _sculptData = value;
631 } 640 }
632 } 641 }
633 642
634 public int FlexiSoftness { 643 public int FlexiSoftness
635 get { 644 {
645 get
646 {
636 return _flexiSoftness; 647 return _flexiSoftness;
637 } 648 }
638 set { 649 set
650 {
639 _flexiSoftness = value; 651 _flexiSoftness = value;
640 } 652 }
641 } 653 }
@@ -849,6 +861,8 @@ namespace OpenSim.Framework
849 861
850 public byte[] ExtraParamsToBytes() 862 public byte[] ExtraParamsToBytes()
851 { 863 {
864// m_log.DebugFormat("[EXTRAPARAMS]: Called ExtraParamsToBytes()");
865
852 ushort FlexiEP = 0x10; 866 ushort FlexiEP = 0x10;
853 ushort LightEP = 0x20; 867 ushort LightEP = 0x20;
854 ushort SculptEP = 0x30; 868 ushort SculptEP = 0x30;
@@ -864,18 +878,21 @@ namespace OpenSim.Framework
864 TotalBytesLength += 16;// data 878 TotalBytesLength += 16;// data
865 TotalBytesLength += 2 + 4; // type 879 TotalBytesLength += 2 + 4; // type
866 } 880 }
881
867 if (_lightEntry) 882 if (_lightEntry)
868 { 883 {
869 ExtraParamsNum++; 884 ExtraParamsNum++;
870 TotalBytesLength += 16;// data 885 TotalBytesLength += 16;// data
871 TotalBytesLength += 2 + 4; // type 886 TotalBytesLength += 2 + 4; // type
872 } 887 }
888
873 if (_sculptEntry) 889 if (_sculptEntry)
874 { 890 {
875 ExtraParamsNum++; 891 ExtraParamsNum++;
876 TotalBytesLength += 17;// data 892 TotalBytesLength += 17;// data
877 TotalBytesLength += 2 + 4; // type 893 TotalBytesLength += 2 + 4; // type
878 } 894 }
895
879 if (_projectionEntry) 896 if (_projectionEntry)
880 { 897 {
881 ExtraParamsNum++; 898 ExtraParamsNum++;
@@ -885,7 +902,6 @@ namespace OpenSim.Framework
885 902
886 byte[] returnbytes = new byte[TotalBytesLength]; 903 byte[] returnbytes = new byte[TotalBytesLength];
887 904
888
889 // uint paramlength = ExtraParamsNum; 905 // uint paramlength = ExtraParamsNum;
890 906
891 // Stick in the number of parameters 907 // Stick in the number of parameters
@@ -905,6 +921,7 @@ namespace OpenSim.Framework
905 Array.Copy(FlexiData, 0, returnbytes, i, FlexiData.Length); 921 Array.Copy(FlexiData, 0, returnbytes, i, FlexiData.Length);
906 i += FlexiData.Length; 922 i += FlexiData.Length;
907 } 923 }
924
908 if (_lightEntry) 925 if (_lightEntry)
909 { 926 {
910 byte[] LightData = GetLightBytes(); 927 byte[] LightData = GetLightBytes();
@@ -919,6 +936,7 @@ namespace OpenSim.Framework
919 Array.Copy(LightData, 0, returnbytes, i, LightData.Length); 936 Array.Copy(LightData, 0, returnbytes, i, LightData.Length);
920 i += LightData.Length; 937 i += LightData.Length;
921 } 938 }
939
922 if (_sculptEntry) 940 if (_sculptEntry)
923 { 941 {
924 byte[] SculptData = GetSculptBytes(); 942 byte[] SculptData = GetSculptBytes();
@@ -933,6 +951,7 @@ namespace OpenSim.Framework
933 Array.Copy(SculptData, 0, returnbytes, i, SculptData.Length); 951 Array.Copy(SculptData, 0, returnbytes, i, SculptData.Length);
934 i += SculptData.Length; 952 i += SculptData.Length;
935 } 953 }
954
936 if (_projectionEntry) 955 if (_projectionEntry)
937 { 956 {
938 byte[] ProjectionData = GetProjectionBytes(); 957 byte[] ProjectionData = GetProjectionBytes();
@@ -946,6 +965,7 @@ namespace OpenSim.Framework
946 Array.Copy(ProjectionData, 0, returnbytes, i, ProjectionData.Length); 965 Array.Copy(ProjectionData, 0, returnbytes, i, ProjectionData.Length);
947 i += ProjectionData.Length; 966 i += ProjectionData.Length;
948 } 967 }
968
949 if (!_flexiEntry && !_lightEntry && !_sculptEntry && !_projectionEntry) 969 if (!_flexiEntry && !_lightEntry && !_sculptEntry && !_projectionEntry)
950 { 970 {
951 byte[] returnbyte = new byte[1]; 971 byte[] returnbyte = new byte[1];
@@ -953,10 +973,7 @@ namespace OpenSim.Framework
953 return returnbyte; 973 return returnbyte;
954 } 974 }
955 975
956
957 return returnbytes; 976 return returnbytes;
958 //m_log.Info("[EXTRAPARAMS]: Length = " + m_shape.ExtraParams.Length.ToString());
959
960 } 977 }
961 978
962 public void ReadInUpdateExtraParam(ushort type, bool inUse, byte[] data) 979 public void ReadInUpdateExtraParam(ushort type, bool inUse, byte[] data)
@@ -1027,7 +1044,6 @@ namespace OpenSim.Framework
1027 extraParamCount = data[i++]; 1044 extraParamCount = data[i++];
1028 } 1045 }
1029 1046
1030
1031 for (int k = 0; k < extraParamCount; k++) 1047 for (int k = 0; k < extraParamCount; k++)
1032 { 1048 {
1033 ushort epType = Utils.BytesToUInt16(data, i); 1049 ushort epType = Utils.BytesToUInt16(data, i);
@@ -1071,7 +1087,6 @@ namespace OpenSim.Framework
1071 _sculptEntry = false; 1087 _sculptEntry = false;
1072 if (!lGotFilter) 1088 if (!lGotFilter)
1073 _projectionEntry = false; 1089 _projectionEntry = false;
1074
1075 } 1090 }
1076 1091
1077 public void ReadSculptData(byte[] data, int pos) 1092 public void ReadSculptData(byte[] data, int pos)
@@ -1100,6 +1115,7 @@ namespace OpenSim.Framework
1100 if (_sculptType != (byte)1 && _sculptType != (byte)2 && _sculptType != (byte)3 && _sculptType != (byte)4) 1115 if (_sculptType != (byte)1 && _sculptType != (byte)2 && _sculptType != (byte)3 && _sculptType != (byte)4)
1101 _sculptType = 4; 1116 _sculptType = 4;
1102 } 1117 }
1118
1103 _sculptTexture = SculptUUID; 1119 _sculptTexture = SculptUUID;
1104 _sculptType = SculptTypel; 1120 _sculptType = SculptTypel;
1105 //m_log.Info("[SCULPT]:" + SculptUUID.ToString()); 1121 //m_log.Info("[SCULPT]:" + SculptUUID.ToString());
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/ObjectCaps/UploadObjectAssetModule.cs b/OpenSim/Region/ClientStack/Linden/Caps/ObjectCaps/UploadObjectAssetModule.cs
index 3809f84..15ed3b3 100644
--- a/OpenSim/Region/ClientStack/Linden/Caps/ObjectCaps/UploadObjectAssetModule.cs
+++ b/OpenSim/Region/ClientStack/Linden/Caps/ObjectCaps/UploadObjectAssetModule.cs
@@ -250,11 +250,9 @@ namespace OpenSim.Region.ClientStack.Linden
250 case 0x40: 250 case 0x40:
251 pbs.ReadProjectionData(extraParam.ExtraParamData, 0); 251 pbs.ReadProjectionData(extraParam.ExtraParamData, 0);
252 break; 252 break;
253
254 } 253 }
255
256
257 } 254 }
255
258 pbs.PathBegin = (ushort) obj.PathBegin; 256 pbs.PathBegin = (ushort) obj.PathBegin;
259 pbs.PathCurve = (byte) obj.PathCurve; 257 pbs.PathCurve = (byte) obj.PathCurve;
260 pbs.PathEnd = (ushort) obj.PathEnd; 258 pbs.PathEnd = (ushort) obj.PathEnd;
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
index cd5046a..307c92a 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
@@ -2958,7 +2958,6 @@ namespace OpenSim.Region.Framework.Scenes
2958 } 2958 }
2959 } 2959 }
2960 2960
2961
2962 public void SculptTextureCallback(UUID textureID, AssetBase texture) 2961 public void SculptTextureCallback(UUID textureID, AssetBase texture)
2963 { 2962 {
2964 if (m_shape.SculptEntry) 2963 if (m_shape.SculptEntry)
diff --git a/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs b/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs
index fcf7e0c..c18c93a 100644
--- a/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs
+++ b/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs
@@ -1001,6 +1001,8 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
1001 1001
1002 private static void ProcessShpSculptData(PrimitiveBaseShape shp, XmlTextReader reader) 1002 private static void ProcessShpSculptData(PrimitiveBaseShape shp, XmlTextReader reader)
1003 { 1003 {
1004// m_log.DebugFormat("[SCENE OBJECT SERIALIZER]: Setting sculpt data length {0}", shp.SculptData.Length);
1005
1004 shp.SculptData = Convert.FromBase64String(reader.ReadElementString("SculptData")); 1006 shp.SculptData = Convert.FromBase64String(reader.ReadElementString("SculptData"));
1005 } 1007 }
1006 1008
diff --git a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs
index e92e97b..b79e1a1 100644
--- a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs
+++ b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs
@@ -540,7 +540,6 @@ namespace OpenSim.Region.Physics.Meshing
540 540
541 profileBegin = 0.5f * profileBegin + 0.5f; 541 profileBegin = 0.5f * profileBegin + 0.5f;
542 profileEnd = 0.5f * profileEnd + 0.5f; 542 profileEnd = 0.5f * profileEnd + 0.5f;
543
544 } 543 }
545 544
546 int hollowSides = sides; 545 int hollowSides = sides;
@@ -660,7 +659,9 @@ namespace OpenSim.Region.Physics.Meshing
660 659
661 public IMesh CreateMesh(String primName, PrimitiveBaseShape primShape, Vector3 size, float lod, bool isPhysical) 660 public IMesh CreateMesh(String primName, PrimitiveBaseShape primShape, Vector3 size, float lod, bool isPhysical)
662 { 661 {
663// m_log.DebugFormat("[MESH]: Creating mesh for {0}", primName); 662#if SPAM
663 m_log.DebugFormat("[MESH]: Creating mesh for {0}", primName);
664#endif
664 665
665 Mesh mesh = null; 666 Mesh mesh = null;
666 ulong key = 0; 667 ulong key = 0;
diff --git a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
index bc839e0..b63168a 100644
--- a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
+++ b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
@@ -38,6 +38,9 @@
38 * switch between 'VEHICLE' parameter use and general dynamics 38 * switch between 'VEHICLE' parameter use and general dynamics
39 * settings use. 39 * settings use.
40 */ 40 */
41
42//#define SPAM
43
41using System; 44using System;
42using System.Collections.Generic; 45using System.Collections.Generic;
43using System.Reflection; 46using System.Reflection;
@@ -746,7 +749,6 @@ namespace OpenSim.Region.Physics.OdePlugin
746 d.GeomSetCollideBits(prim_geom, (int)m_collisionFlags); 749 d.GeomSetCollideBits(prim_geom, (int)m_collisionFlags);
747 } 750 }
748 751
749
750 d.BodyDestroy(Body); 752 d.BodyDestroy(Body);
751 lock (childrenPrim) 753 lock (childrenPrim)
752 { 754 {
@@ -775,7 +777,6 @@ namespace OpenSim.Region.Physics.OdePlugin
775 d.GeomSetCollideBits(prim_geom, (int)m_collisionFlags); 777 d.GeomSetCollideBits(prim_geom, (int)m_collisionFlags);
776 } 778 }
777 779
778
779 Body = IntPtr.Zero; 780 Body = IntPtr.Zero;
780 } 781 }
781 } 782 }
@@ -858,7 +859,7 @@ namespace OpenSim.Region.Physics.OdePlugin
858 859
859 public void ProcessTaints(float timestep) 860 public void ProcessTaints(float timestep)
860 { 861 {
861//Console.WriteLine("ProcessTaints for " + Name); 862Console.WriteLine("ProcessTaints for " + Name);
862 if (m_taintadd) 863 if (m_taintadd)
863 { 864 {
864 changeadd(timestep); 865 changeadd(timestep);
@@ -867,7 +868,7 @@ namespace OpenSim.Region.Physics.OdePlugin
867 if (prim_geom != IntPtr.Zero) 868 if (prim_geom != IntPtr.Zero)
868 { 869 {
869 if (!_position.ApproxEquals(m_taintposition, 0f)) 870 if (!_position.ApproxEquals(m_taintposition, 0f))
870 changemove(timestep); 871 changemove(timestep);
871 872
872 if (m_taintrot != _orientation) 873 if (m_taintrot != _orientation)
873 { 874 {
@@ -885,19 +886,15 @@ namespace OpenSim.Region.Physics.OdePlugin
885 rotate(timestep); 886 rotate(timestep);
886 } 887 }
887 } 888 }
888 //
889 889
890 if (m_taintPhysics != m_isphysical && !(m_taintparent != _parent)) 890 if (m_taintPhysics != m_isphysical && !(m_taintparent != _parent))
891 changePhysicsStatus(timestep); 891 changePhysicsStatus(timestep);
892 //
893 892
894 if (!_size.ApproxEquals(m_taintsize,0f)) 893 if (!_size.ApproxEquals(m_taintsize, 0f))
895 changesize(timestep); 894 changesize(timestep);
896 //
897 895
898 if (m_taintshape) 896 if (m_taintshape)
899 changeshape(timestep); 897 changeshape(timestep);
900 //
901 898
902 if (m_taintforce) 899 if (m_taintforce)
903 changeAddForce(timestep); 900 changeAddForce(timestep);
@@ -925,7 +922,6 @@ namespace OpenSim.Region.Physics.OdePlugin
925 922
926 if (!m_angularlock.ApproxEquals(m_taintAngularLock,0f)) 923 if (!m_angularlock.ApproxEquals(m_taintAngularLock,0f))
927 changeAngularLock(timestep); 924 changeAngularLock(timestep);
928
929 } 925 }
930 else 926 else
931 { 927 {
@@ -1424,10 +1420,11 @@ namespace OpenSim.Region.Physics.OdePlugin
1424 } 1420 }
1425 } 1421 }
1426 1422
1427
1428 lock (_parent_scene.OdeLock) 1423 lock (_parent_scene.OdeLock)
1429 { 1424 {
1430//Console.WriteLine("changeadd 1"); 1425#if SPAM
1426Console.WriteLine("changeadd 1");
1427#endif
1431 CreateGeom(m_targetSpace, _mesh); 1428 CreateGeom(m_targetSpace, _mesh);
1432 1429
1433 if (prim_geom != IntPtr.Zero) 1430 if (prim_geom != IntPtr.Zero)
@@ -1890,6 +1887,10 @@ Console.WriteLine(" JointCreateFixed");
1890 1887
1891 public void changesize(float timestamp) 1888 public void changesize(float timestamp)
1892 { 1889 {
1890#if SPAM
1891 m_log.DebugFormat("[ODE PRIM]: Called changesize");
1892#endif
1893
1893 string oldname = _parent_scene.geom_name_map[prim_geom]; 1894 string oldname = _parent_scene.geom_name_map[prim_geom];
1894 1895
1895 if (_size.X <= 0) _size.X = 0.01f; 1896 if (_size.X <= 0) _size.X = 0.01f;
@@ -1899,8 +1900,9 @@ Console.WriteLine(" JointCreateFixed");
1899 // Cleanup of old prim geometry 1900 // Cleanup of old prim geometry
1900 if (_mesh != null) 1901 if (_mesh != null)
1901 { 1902 {
1902 // Cleanup meshing here 1903 // TODO: Cleanup meshing here
1903 } 1904 }
1905
1904 //kill body to rebuild 1906 //kill body to rebuild
1905 if (IsPhysical && Body != IntPtr.Zero) 1907 if (IsPhysical && Body != IntPtr.Zero)
1906 { 1908 {
@@ -1917,11 +1919,13 @@ Console.WriteLine(" JointCreateFixed");
1917 disableBody(); 1919 disableBody();
1918 } 1920 }
1919 } 1921 }
1922
1920 if (d.SpaceQuery(m_targetSpace, prim_geom)) 1923 if (d.SpaceQuery(m_targetSpace, prim_geom))
1921 { 1924 {
1922 _parent_scene.waitForSpaceUnlock(m_targetSpace); 1925 _parent_scene.waitForSpaceUnlock(m_targetSpace);
1923 d.SpaceRemove(m_targetSpace, prim_geom); 1926 d.SpaceRemove(m_targetSpace, prim_geom);
1924 } 1927 }
1928
1925 d.GeomDestroy(prim_geom); 1929 d.GeomDestroy(prim_geom);
1926 prim_geom = IntPtr.Zero; 1930 prim_geom = IntPtr.Zero;
1927 // we don't need to do space calculation because the client sends a position update also. 1931 // we don't need to do space calculation because the client sends a position update also.
@@ -1941,13 +1945,19 @@ Console.WriteLine(" JointCreateFixed");
1941 mesh = _parent_scene.mesher.CreateMesh(oldname, _pbs, _size, meshlod, IsPhysical); 1945 mesh = _parent_scene.mesher.CreateMesh(oldname, _pbs, _size, meshlod, IsPhysical);
1942 1946
1943 //IMesh mesh = _parent_scene.mesher.CreateMesh(oldname, _pbs, _size, meshlod, IsPhysical); 1947 //IMesh mesh = _parent_scene.mesher.CreateMesh(oldname, _pbs, _size, meshlod, IsPhysical);
1944//Console.WriteLine("changesize 1"); 1948#if SPAM
1949Console.WriteLine("changesize 1");
1950#endif
1945 CreateGeom(m_targetSpace, mesh); 1951 CreateGeom(m_targetSpace, mesh);
1946 } 1952 }
1947 else 1953 else
1948 { 1954 {
1949 _mesh = null; 1955 _mesh = null;
1950//Console.WriteLine("changesize 2"); 1956
1957#if SPAM
1958Console.WriteLine("changesize 2");
1959#endif
1960
1951 CreateGeom(m_targetSpace, _mesh); 1961 CreateGeom(m_targetSpace, _mesh);
1952 } 1962 }
1953 1963
@@ -2030,6 +2040,7 @@ Console.WriteLine(" JointCreateFixed");
2030 prim_geom = IntPtr.Zero; 2040 prim_geom = IntPtr.Zero;
2031 m_log.ErrorFormat("[PHYSICS]: PrimGeom dead for {0}", Name); 2041 m_log.ErrorFormat("[PHYSICS]: PrimGeom dead for {0}", Name);
2032 } 2042 }
2043
2033 prim_geom = IntPtr.Zero; 2044 prim_geom = IntPtr.Zero;
2034 // we don't need to do space calculation because the client sends a position update also. 2045 // we don't need to do space calculation because the client sends a position update also.
2035 if (_size.X <= 0) _size.X = 0.01f; 2046 if (_size.X <= 0) _size.X = 0.01f;
@@ -2039,7 +2050,7 @@ Console.WriteLine(" JointCreateFixed");
2039 2050
2040 if (_parent_scene.needsMeshing(_pbs)) 2051 if (_parent_scene.needsMeshing(_pbs))
2041 { 2052 {
2042 // Don't need to re-enable body.. it's done in SetMesh 2053 // Don't need to re-enable body.. it's done in CreateMesh
2043 float meshlod = _parent_scene.meshSculptLOD; 2054 float meshlod = _parent_scene.meshSculptLOD;
2044 2055
2045 if (IsPhysical) 2056 if (IsPhysical)
@@ -2047,13 +2058,18 @@ Console.WriteLine(" JointCreateFixed");
2047 2058
2048 IMesh mesh = _parent_scene.mesher.CreateMesh(oldname, _pbs, _size, meshlod, IsPhysical); 2059 IMesh mesh = _parent_scene.mesher.CreateMesh(oldname, _pbs, _size, meshlod, IsPhysical);
2049 // createmesh returns null when it doesn't mesh. 2060 // createmesh returns null when it doesn't mesh.
2050//Console.WriteLine("changeshape needed meshing"); 2061#if SPAM
2062Console.WriteLine("changeshape needed meshing");
2063#endif
2051 CreateGeom(m_targetSpace, mesh); 2064 CreateGeom(m_targetSpace, mesh);
2052 } 2065 }
2053 else 2066 else
2054 { 2067 {
2055 _mesh = null; 2068 _mesh = null;
2056//Console.WriteLine("changeshape not need meshing"); 2069
2070#if SPAM
2071Console.WriteLine("changeshape not need meshing");
2072#endif
2057 CreateGeom(m_targetSpace, null); 2073 CreateGeom(m_targetSpace, null);
2058 } 2074 }
2059 2075
diff --git a/OpenSim/Region/Physics/OdePlugin/OdeScene.cs b/OpenSim/Region/Physics/OdePlugin/OdeScene.cs
index 87d22af..f5172aa 100644
--- a/OpenSim/Region/Physics/OdePlugin/OdeScene.cs
+++ b/OpenSim/Region/Physics/OdePlugin/OdeScene.cs
@@ -26,7 +26,7 @@
26 */ 26 */
27 27
28//#define USE_DRAWSTUFF 28//#define USE_DRAWSTUFF
29//#define SPAM 29#define SPAM
30 30
31using System; 31using System;
32using System.Collections.Generic; 32using System.Collections.Generic;
@@ -312,7 +312,6 @@ namespace OpenSim.Region.Physics.OdePlugin
312 #endif 312 #endif
313 } 313 }
314 314
315
316 _watermap = new float[258 * 258]; 315 _watermap = new float[258 * 258];
317 316
318 // Zero out the prim spaces array (we split our space into smaller spaces so 317 // Zero out the prim spaces array (we split our space into smaller spaces so
@@ -2563,7 +2562,6 @@ namespace OpenSim.Region.Physics.OdePlugin
2563 if (pbs.SculptEntry && meshSculptedPrim) 2562 if (pbs.SculptEntry && meshSculptedPrim)
2564 iPropertiesNotSupportedDefault++; 2563 iPropertiesNotSupportedDefault++;
2565 2564
2566
2567 if (iPropertiesNotSupportedDefault == 0) 2565 if (iPropertiesNotSupportedDefault == 0)
2568 { 2566 {
2569#if SPAM 2567#if SPAM
@@ -2703,7 +2701,6 @@ namespace OpenSim.Region.Physics.OdePlugin
2703 { 2701 {
2704 foreach (OdeCharacter character in _taintedActors) 2702 foreach (OdeCharacter character in _taintedActors)
2705 { 2703 {
2706
2707 character.ProcessTaints(timeStep); 2704 character.ProcessTaints(timeStep);
2708 2705
2709 processedtaints = true; 2706 processedtaints = true;