in some cases ll TPVs can only see avatar rotations around Z or camera misbehaves

BulletSim2017
UbitUmarov 2017-08-25 23:44:59 +01:00
parent dfdc3e3adf
commit 396ab1424c
1 changed files with 13 additions and 0 deletions

View File

@ -5589,6 +5589,13 @@ namespace OpenSim.Region.ClientStack.LindenUDP
velocity = presence.Velocity; velocity = presence.Velocity;
acceleration = Vector3.Zero; acceleration = Vector3.Zero;
rotation = presence.Rotation; rotation = presence.Rotation;
// tpvs can only see rotations around Z in some cases
if(!presence.Flying && !presence.IsSatOnObject)
{
rotation.X = 0f;
rotation.Y = 0f;
rotation.Normalize();
}
angularVelocity = presence.AngularVelocity; angularVelocity = presence.AngularVelocity;
// m_log.DebugFormat( // m_log.DebugFormat(
@ -5718,6 +5725,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
Vector3 velocity = new Vector3(0, 0, 0); Vector3 velocity = new Vector3(0, 0, 0);
Vector3 acceleration = new Vector3(0, 0, 0); Vector3 acceleration = new Vector3(0, 0, 0);
// tpvs can only see rotations around Z in some cases
if(!data.Flying && !data.IsSatOnObject)
{
rotation.X = 0f;
rotation.Y = 0f;
}
rotation.Normalize(); rotation.Normalize();
data.CollisionPlane.ToBytes(objectData, 0); data.CollisionPlane.ToBytes(objectData, 0);