aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorTeravus Ovares2008-04-03 04:02:46 +0000
committerTeravus Ovares2008-04-03 04:02:46 +0000
commit2d33bf854f14d7734d70d69304a20c429280d813 (patch)
tree5f28034df86a87520b63dce6f1940dd65d698aa4 /OpenSim
parentSet svn:ignore. (diff)
downloadopensim-SC-2d33bf854f14d7734d70d69304a20c429280d813.zip
opensim-SC-2d33bf854f14d7734d70d69304a20c429280d813.tar.gz
opensim-SC-2d33bf854f14d7734d70d69304a20c429280d813.tar.bz2
opensim-SC-2d33bf854f14d7734d70d69304a20c429280d813.tar.xz
* ODEPlugin: put a limit on the minimum size a prim can be ( scale <=0 ).
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Region/Physics/OdePlugin/ODEPrim.cs17
1 files changed, 12 insertions, 5 deletions
diff --git a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
index 309a767..4e39eb4 100644
--- a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
+++ b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
@@ -160,6 +160,10 @@ namespace OpenSim.Region.Physics.OdePlugin
160 prim_geom = (IntPtr)0; 160 prim_geom = (IntPtr)0;
161 prev_geom = (IntPtr)0; 161 prev_geom = (IntPtr)0;
162 162
163 if (size.X <= 0) size.X = 0.01f;
164 if (size.Y <= 0) size.Y = 0.01f;
165 if (size.Z <= 0) size.Z = 0.01f;
166
163 _size = size; 167 _size = size;
164 m_taintsize = _size; 168 m_taintsize = _size;
165 _acceleration = new PhysicsVector(); 169 _acceleration = new PhysicsVector();
@@ -1296,7 +1300,10 @@ namespace OpenSim.Region.Physics.OdePlugin
1296 //} 1300 //}
1297 string oldname = _parent_scene.geom_name_map[prim_geom]; 1301 string oldname = _parent_scene.geom_name_map[prim_geom];
1298 1302
1299 1303 if (_size.X <= 0) _size.X = 0.01f;
1304 if (_size.Y <= 0) _size.Y = 0.01f;
1305 if (_size.Z <= 0) _size.Z = 0.01f;
1306
1300 // Cleanup of old prim geometry 1307 // Cleanup of old prim geometry
1301 if (_mesh != null) 1308 if (_mesh != null)
1302 { 1309 {
@@ -1485,7 +1492,9 @@ namespace OpenSim.Region.Physics.OdePlugin
1485 d.GeomDestroy(prim_geom); 1492 d.GeomDestroy(prim_geom);
1486 prim_geom = (IntPtr) 0; 1493 prim_geom = (IntPtr) 0;
1487 // we don't need to do space calculation because the client sends a position update also. 1494 // we don't need to do space calculation because the client sends a position update also.
1488 1495 if (_size.X <= 0) _size.X = 0.01f;
1496 if (_size.Y <= 0) _size.Y = 0.01f;
1497 if (_size.Z <= 0) _size.Z = 0.01f;
1489 // Construction of new prim 1498 // Construction of new prim
1490 if (_parent_scene.needsMeshing(_pbs)) 1499 if (_parent_scene.needsMeshing(_pbs))
1491 { 1500 {
@@ -1964,9 +1973,7 @@ namespace OpenSim.Region.Physics.OdePlugin
1964 1973
1965 if (_zeroFlag) 1974 if (_zeroFlag)
1966 { 1975 {
1967 // Supposedly this is supposed to tell SceneObjectGroup that 1976
1968 // no more updates need to be sent..
1969 // but it seems broken.
1970 _velocity.X = 0.0f; 1977 _velocity.X = 0.0f;
1971 _velocity.Y = 0.0f; 1978 _velocity.Y = 0.0f;
1972 _velocity.Z = 0.0f; 1979 _velocity.Z = 0.0f;