aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs')
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs20
1 files changed, 16 insertions, 4 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index fd82db7..0388828 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -2654,7 +2654,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2654 byte physshapetype = part.PhysicsShapeType; 2654 byte physshapetype = part.PhysicsShapeType;
2655 float density = part.Density; 2655 float density = part.Density;
2656 float friction = part.Friction; 2656 float friction = part.Friction;
2657 float bounce = part.Bounciness; 2657 float bounce = part.Restitution;
2658 float gravmod = part.GravityModifier; 2658 float gravmod = part.GravityModifier;
2659 2659
2660 eq.partPhysicsProperties(localid, physshapetype, density, friction, bounce, gravmod,AgentId); 2660 eq.partPhysicsProperties(localid, physshapetype, density, friction, bounce, gravmod,AgentId);
@@ -3893,6 +3893,14 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3893 part.Shape.LightEntry = false; 3893 part.Shape.LightEntry = false;
3894 } 3894 }
3895 } 3895 }
3896
3897 if (part.Shape != null && (part.Shape.SculptType == (byte)SculptType.Mesh))
3898 {
3899 // Ensure that mesh has at least 8 valid faces
3900 part.Shape.ProfileBegin = 12500;
3901 part.Shape.ProfileEnd = 0;
3902 part.Shape.ProfileHollow = 27500;
3903 }
3896 } 3904 }
3897 3905
3898 ++updatesThisCall; 3906 ++updatesThisCall;
@@ -4952,6 +4960,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4952 position = part.OffsetPosition + presence.OffsetPosition * part.RotationOffset; 4960 position = part.OffsetPosition + presence.OffsetPosition * part.RotationOffset;
4953 rotation = part.RotationOffset * presence.Rotation; 4961 rotation = part.RotationOffset * presence.Rotation;
4954 } 4962 }
4963 angularVelocity = Vector3.Zero;
4964 }
4965 else
4966 {
4967 angularVelocity = presence.AngularVelocity;
4968 rotation = presence.Rotation;
4955 } 4969 }
4956 4970
4957 attachPoint = 0; 4971 attachPoint = 0;
@@ -4963,9 +4977,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4963 // in that direction, even though we don't model this on the server. Implementing this in the future 4977 // in that direction, even though we don't model this on the server. Implementing this in the future
4964 // may improve movement smoothness. 4978 // may improve movement smoothness.
4965// acceleration = new Vector3(1, 0, 0); 4979// acceleration = new Vector3(1, 0, 0);
4966 4980
4967 angularVelocity = Vector3.Zero;
4968
4969 if (sendTexture) 4981 if (sendTexture)
4970 textureEntry = presence.Appearance.Texture.GetBytes(); 4982 textureEntry = presence.Appearance.Texture.GetBytes();
4971 else 4983 else