- Added the fixed Ode.NET.dll
- Adapted code to match the corrected signatures - Fixes Mantis #2934. Hopefully. Note: Physics on linked objects still don't work correctly: It doesn't crash the region anymore, but the example object in the mentioned mantis now falls through the ground.0.6.2-post-fixes
parent
067a9f3d5f
commit
4b760bba79
|
@ -987,8 +987,8 @@ namespace OpenSim.Region.Physics.OdePlugin
|
||||||
|
|
||||||
d.Matrix3 mat = new d.Matrix3();
|
d.Matrix3 mat = new d.Matrix3();
|
||||||
d.RfromQ(out mat, ref quat);
|
d.RfromQ(out mat, ref quat);
|
||||||
d.MassRotate(out m2, ref mat);
|
d.MassRotate(ref m2, ref mat);
|
||||||
d.MassTranslate(out m2, Position.X - prm.Position.X, Position.Y - prm.Position.Y, Position.Z - prm.Position.Z);
|
d.MassTranslate(ref m2, Position.X - prm.Position.X, Position.Y - prm.Position.Y, Position.Z - prm.Position.Z);
|
||||||
d.MassAdd(ref pMass, ref m2);
|
d.MassAdd(ref pMass, ref m2);
|
||||||
}
|
}
|
||||||
foreach (OdePrim prm in childrenPrim)
|
foreach (OdePrim prm in childrenPrim)
|
||||||
|
@ -1025,7 +1025,7 @@ namespace OpenSim.Region.Physics.OdePlugin
|
||||||
// (Position.Z - prm.Position.Z) - pMass.c.Z);
|
// (Position.Z - prm.Position.Z) - pMass.c.Z);
|
||||||
d.GeomSetOffsetWorldRotation(prm.prim_geom, ref mat);
|
d.GeomSetOffsetWorldRotation(prm.prim_geom, ref mat);
|
||||||
//d.GeomSetOffsetRotation(prm.prim_geom, ref mat);
|
//d.GeomSetOffsetRotation(prm.prim_geom, ref mat);
|
||||||
d.MassTranslate(out pMass, -pMass.c.X, -pMass.c.Y, -pMass.c.Z);
|
d.MassTranslate(ref pMass, -pMass.c.X, -pMass.c.Y, -pMass.c.Z);
|
||||||
d.BodySetMass(Body, ref pMass);
|
d.BodySetMass(Body, ref pMass);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -1069,9 +1069,9 @@ namespace OpenSim.Region.Physics.OdePlugin
|
||||||
// (Position.Y - prm.Position.Y) - pMass.c.Y,
|
// (Position.Y - prm.Position.Y) - pMass.c.Y,
|
||||||
// (Position.Z - prm.Position.Z) - pMass.c.Z);
|
// (Position.Z - prm.Position.Z) - pMass.c.Z);
|
||||||
//d.GeomSetOffsetRotation(prim_geom, ref mat2);
|
//d.GeomSetOffsetRotation(prim_geom, ref mat2);
|
||||||
d.MassTranslate(out pMass, -pMass.c.X, -pMass.c.Y, -pMass.c.Z);
|
d.MassTranslate(ref pMass, -pMass.c.X, -pMass.c.Y, -pMass.c.Z);
|
||||||
d.BodySetMass(Body, ref pMass);
|
d.BodySetMass(Body, ref pMass);
|
||||||
|
|
||||||
d.BodySetAutoDisableFlag(Body, true);
|
d.BodySetAutoDisableFlag(Body, true);
|
||||||
d.BodySetAutoDisableSteps(Body, body_autodisable_frames);
|
d.BodySetAutoDisableSteps(Body, body_autodisable_frames);
|
||||||
|
|
||||||
|
|
Binary file not shown.
Loading…
Reference in New Issue