diff options
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/UDP')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index cc4d014..9c26afe 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -3901,6 +3901,14 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
3901 | part.Shape.ProfileHollow = 27500; | 3901 | part.Shape.ProfileHollow = 27500; |
3902 | } | 3902 | } |
3903 | } | 3903 | } |
3904 | |||
3905 | if (part.Shape != null && (part.Shape.SculptType == (byte)SculptType.Mesh)) | ||
3906 | { | ||
3907 | // Ensure that mesh has at least 8 valid faces | ||
3908 | part.Shape.ProfileBegin = 12500; | ||
3909 | part.Shape.ProfileEnd = 0; | ||
3910 | part.Shape.ProfileHollow = 27500; | ||
3911 | } | ||
3904 | } | 3912 | } |
3905 | 3913 | ||
3906 | ++updatesThisCall; | 3914 | ++updatesThisCall; |
@@ -4960,6 +4968,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4960 | position = part.OffsetPosition + presence.OffsetPosition * part.RotationOffset; | 4968 | position = part.OffsetPosition + presence.OffsetPosition * part.RotationOffset; |
4961 | rotation = part.RotationOffset * presence.Rotation; | 4969 | rotation = part.RotationOffset * presence.Rotation; |
4962 | } | 4970 | } |
4971 | angularVelocity = Vector3.Zero; | ||
4972 | } | ||
4973 | else | ||
4974 | { | ||
4975 | angularVelocity = presence.AngularVelocity; | ||
4976 | rotation = presence.Rotation; | ||
4963 | } | 4977 | } |
4964 | 4978 | ||
4965 | attachPoint = 0; | 4979 | attachPoint = 0; |
@@ -4972,9 +4986,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4972 | // may improve movement smoothness. | 4986 | // may improve movement smoothness. |
4973 | // acceleration = new Vector3(1, 0, 0); | 4987 | // acceleration = new Vector3(1, 0, 0); |
4974 | 4988 | ||
4975 | angularVelocity = presence.AngularVelocity; | ||
4976 | rotation = presence.Rotation; | ||
4977 | |||
4978 | if (sendTexture) | 4989 | if (sendTexture) |
4979 | textureEntry = presence.Appearance.Texture.GetBytes(); | 4990 | textureEntry = presence.Appearance.Texture.GetBytes(); |
4980 | else | 4991 | else |