* This increases accuracy when border crossing (the reason is.. the border crossing code will use velocity to predict where the object should be, so setting it to zero. It still looses about 0.0045 per loop.

avinationmerge
teravus 2013-08-23 00:28:36 -05:00
parent bdc48e3e0f
commit 55400ff7be
1 changed files with 7 additions and 7 deletions

View File

@ -644,8 +644,8 @@ namespace OpenSim.Region.Framework.Scenes
// m_group.AbsolutePosition += motionThisFrame; // m_group.AbsolutePosition += motionThisFrame;
m_nextPosition = m_group.AbsolutePosition + motionThisFrame; m_nextPosition = m_group.AbsolutePosition + motionThisFrame;
m_group.AbsolutePosition = m_nextPosition; m_group.AbsolutePosition = m_nextPosition;
if ((m_group.AbsolutePosition.X < 10 || m_group.AbsolutePosition.Y < 10 || m_group.AbsolutePosition.X > Constants.RegionSize - 10 || m_group.AbsolutePosition.Y > Constants.RegionSize - 10))
//m_group.RootPart.Velocity = v; m_group.RootPart.Velocity = v;
update = true; update = true;
} }
@ -736,12 +736,12 @@ namespace OpenSim.Region.Framework.Scenes
m_waitingCrossing = true; m_waitingCrossing = true;
// to remove / retune to smoth crossings // to remove / retune to smoth crossings
if (m_group.RootPart.Velocity != Vector3.Zero) //if (m_group.RootPart.Velocity != Vector3.Zero)
{ //{
m_group.RootPart.Velocity = Vector3.Zero; // m_group.RootPart.Velocity = Vector3.Zero;
m_group.SendGroupRootTerseUpdate(); // m_group.SendGroupRootTerseUpdate();
// m_group.RootPart.ScheduleTerseUpdate(); // m_group.RootPart.ScheduleTerseUpdate();
} //}
} }
public void CrossingFailure() public void CrossingFailure()