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.cs25
1 files changed, 8 insertions, 17 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index dc8d267..cf96a8b 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -4212,12 +4212,13 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4212 SceneObjectGroup grp = part.ParentGroup; 4212 SceneObjectGroup grp = part.ParentGroup;
4213 if (grp.inTransit && !update.Flags.HasFlag(PrimUpdateFlags.SendInTransit)) 4213 if (grp.inTransit && !update.Flags.HasFlag(PrimUpdateFlags.SendInTransit))
4214 continue; 4214 continue;
4215/* debug
4215 if (update.Flags.HasFlag(PrimUpdateFlags.SendInTransit)) 4216 if (update.Flags.HasFlag(PrimUpdateFlags.SendInTransit))
4216 { 4217 {
4217 4218
4218 4219
4219 } 4220 }
4220 4221*/
4221 if (grp.IsDeleted) 4222 if (grp.IsDeleted)
4222 { 4223 {
4223 // Don't send updates for objects that have been marked deleted. 4224 // Don't send updates for objects that have been marked deleted.
@@ -4274,14 +4275,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4274 { 4275 {
4275 part.Shape.LightEntry = false; 4276 part.Shape.LightEntry = false;
4276 } 4277 }
4277
4278 if (part.Shape != null && (part.Shape.SculptType == (byte)SculptType.Mesh))
4279 {
4280 // Ensure that mesh has at least 8 valid faces
4281 part.Shape.ProfileBegin = 12500;
4282 part.Shape.ProfileEnd = 0;
4283 part.Shape.ProfileHollow = 27500;
4284 }
4285 } 4278 }
4286 4279
4287 if(doCulling && !grp.IsAttachment) 4280 if(doCulling && !grp.IsAttachment)
@@ -4309,14 +4302,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4309 continue; 4302 continue;
4310 } 4303 }
4311 } 4304 }
4312
4313 if (part.Shape != null && (part.Shape.SculptType == (byte)SculptType.Mesh))
4314 {
4315 // Ensure that mesh has at least 8 valid faces
4316 part.Shape.ProfileBegin = 12500;
4317 part.Shape.ProfileEnd = 0;
4318 part.Shape.ProfileHollow = 27500;
4319 }
4320 } 4305 }
4321 else if (update.Entity is ScenePresence) 4306 else if (update.Entity is ScenePresence)
4322 { 4307 {
@@ -5877,6 +5862,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5877 update.PCode = part.Shape.PCode; 5862 update.PCode = part.Shape.PCode;
5878 update.ProfileBegin = part.Shape.ProfileBegin; 5863 update.ProfileBegin = part.Shape.ProfileBegin;
5879 update.ProfileCurve = part.Shape.ProfileCurve; 5864 update.ProfileCurve = part.Shape.ProfileCurve;
5865
5866 if(part.Shape.SculptType == (byte)SculptType.Mesh) // filter out hack
5867 update.ProfileCurve = (byte)(part.Shape.ProfileCurve & 0x0f);
5868 else
5869 update.ProfileCurve = part.Shape.ProfileCurve;
5870
5880 update.ProfileEnd = part.Shape.ProfileEnd; 5871 update.ProfileEnd = part.Shape.ProfileEnd;
5881 update.ProfileHollow = part.Shape.ProfileHollow; 5872 update.ProfileHollow = part.Shape.ProfileHollow;
5882 update.PSBlock = part.ParticleSystem ?? Utils.EmptyBytes; 5873 update.PSBlock = part.ParticleSystem ?? Utils.EmptyBytes;