Merge branch 'ubitwork' into avination

avinationmerge
Melanie 2013-01-07 15:06:17 +01:00
commit 910a94d143
3 changed files with 16 additions and 16 deletions

View File

@ -1415,8 +1415,9 @@ namespace OpenSim.Region.Framework.Scenes
if (m_followCamAuto) if (m_followCamAuto)
{ {
if (hitYN) if (hitYN && localid != LocalId)
{ {
CameraConstraintActive = true; CameraConstraintActive = true;
//m_log.DebugFormat("[RAYCASTRESULT]: {0}, {1}, {2}, {3}", hitYN, collisionPoint, localid, distance); //m_log.DebugFormat("[RAYCASTRESULT]: {0}, {1}, {2}, {3}", hitYN, collisionPoint, localid, distance);
@ -2282,7 +2283,6 @@ namespace OpenSim.Region.Framework.Scenes
ControllingClient.SendAlertMessage(" Sit position on restricted land, try another spot"); ControllingClient.SendAlertMessage(" Sit position on restricted land, try another spot");
return; return;
} }
// m_log.InfoFormat("physsit {0} {1}", offset.ToString(),Orientation.ToString());
RemoveFromPhysicalScene(); RemoveFromPhysicalScene();
@ -2293,7 +2293,6 @@ namespace OpenSim.Region.Framework.Scenes
part.AddSittingAvatar(UUID); part.AddSittingAvatar(UUID);
Vector3 cameraAtOffset = part.GetCameraAtOffset(); Vector3 cameraAtOffset = part.GetCameraAtOffset();
Vector3 cameraEyeOffset = part.GetCameraEyeOffset(); Vector3 cameraEyeOffset = part.GetCameraEyeOffset();
bool forceMouselook = part.GetForceMouselook(); bool forceMouselook = part.GetForceMouselook();

View File

@ -78,8 +78,12 @@ namespace OpenSim.Region.Physics.OdePlugin
IntPtr geom = ((OdePrim)actor).prim_geom; IntPtr geom = ((OdePrim)actor).prim_geom;
Vector3 geopos = d.GeomGetPositionOMV(geom); // Vector3 geopos = d.GeomGetPositionOMV(geom);
Quaternion geomOri = d.GeomGetQuaternionOMV(geom); // Quaternion geomOri = d.GeomGetQuaternionOMV(geom);
Vector3 geopos = actor.Position;
Quaternion geomOri = actor.Orientation;
Quaternion geomInvOri = Quaternion.Conjugate(geomOri); Quaternion geomInvOri = Quaternion.Conjugate(geomOri);
Quaternion ori = Quaternion.Identity; Quaternion ori = Quaternion.Identity;
@ -116,6 +120,7 @@ namespace OpenSim.Region.Physics.OdePlugin
} }
int status = 1; int status = 1;
offset = rayResults[0].Pos - geopos; offset = rayResults[0].Pos - geopos;
d.GeomClassID geoclass = d.GeomGetClass(geom); d.GeomClassID geoclass = d.GeomGetClass(geom);
@ -191,13 +196,12 @@ namespace OpenSim.Region.Physics.OdePlugin
if (norm.Z < 0.5f) if (norm.Z < 0.5f)
{ {
float rayDist = 4.0f; float rayDist = 4.0f;
float curEdgeDist = 0.0f;
for (int i = 0; i < 6; i++) for (int i = 0; i < 6; i++)
{ {
pivot.X -= 0.005f * norm.X; pivot.X -= 0.01f * norm.X;
pivot.Y -= 0.005f * norm.Y; pivot.Y -= 0.01f * norm.Y;
pivot.Z -= 0.005f * norm.Z; pivot.Z -= 0.01f * norm.Z;
rayDir.X = -norm.X * norm.Z; rayDir.X = -norm.X * norm.Z;
rayDir.Y = -norm.Y * norm.Z; rayDir.Y = -norm.Y * norm.Z;
@ -208,8 +212,6 @@ namespace OpenSim.Region.Physics.OdePlugin
if (rayResults.Count == 0) if (rayResults.Count == 0)
break; break;
curEdgeDist += rayResults[0].Depth;
if (Math.Abs(rayResults[0].Normal.Z) < 0.7f) if (Math.Abs(rayResults[0].Normal.Z) < 0.7f)
{ {
rayDist -= rayResults[0].Depth; rayDist -= rayResults[0].Depth;
@ -226,7 +228,6 @@ namespace OpenSim.Region.Physics.OdePlugin
else else
{ {
foundEdge = true; foundEdge = true;
edgeDist = curEdgeDist;
edgePos = rayResults[0].Pos; edgePos = rayResults[0].Pos;
break; break;
} }
@ -254,7 +255,7 @@ namespace OpenSim.Region.Physics.OdePlugin
for (int i = 0; i < 3; i++) for (int i = 0; i < 3; i++)
{ {
pivot.Z -= 0.005f; pivot.Z -= 0.01f;
rayDir.X = toCamX; rayDir.X = toCamX;
rayDir.Y = toCamY; rayDir.Y = toCamY;
rayDir.Z = (-toCamX * norm.X - toCamY * norm.Y) / norm.Z; rayDir.Z = (-toCamX * norm.X - toCamY * norm.Y) / norm.Z;

View File

@ -2586,7 +2586,7 @@ namespace OpenSim.Region.Physics.OdePlugin
req.Normal = direction; req.Normal = direction;
req.Origin = position; req.Origin = position;
req.Count = 0; req.Count = 0;
req.filter = RayFilterFlags.All; req.filter = RayFilterFlags.AllPrims;
m_rayCastManager.QueueRequest(req); m_rayCastManager.QueueRequest(req);
} }
@ -2603,7 +2603,7 @@ namespace OpenSim.Region.Physics.OdePlugin
req.Normal = direction; req.Normal = direction;
req.Origin = position; req.Origin = position;
req.Count = Count; req.Count = Count;
req.filter = RayFilterFlags.All; req.filter = RayFilterFlags.AllPrims;
m_rayCastManager.QueueRequest(req); m_rayCastManager.QueueRequest(req);
} }
@ -2631,7 +2631,7 @@ namespace OpenSim.Region.Physics.OdePlugin
req.Normal = direction; req.Normal = direction;
req.Origin = position; req.Origin = position;
req.Count = Count; req.Count = Count;
req.filter = RayFilterFlags.All; req.filter = RayFilterFlags.AllPrims;
lock (SyncObject) lock (SyncObject)
{ {