diff options
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index cddafc5..be992b4 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -4088,7 +4088,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4088 | float dpos = (partpos - mypos).LengthSquared(); | 4088 | float dpos = (partpos - mypos).LengthSquared(); |
4089 | if(dcam < dpos) | 4089 | if(dcam < dpos) |
4090 | dpos = dcam; | 4090 | dpos = dcam; |
4091 | dpos = (float)Math.Sqrt(dpos) + part.ParentGroup.GetBoundsRadius(); | 4091 | dpos = (float)Math.Sqrt(dpos) - part.ParentGroup.GetBoundsRadius(); |
4092 | if(dpos > cullingrange) | 4092 | if(dpos > cullingrange) |
4093 | continue; | 4093 | continue; |
4094 | 4094 | ||
@@ -4361,6 +4361,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4361 | HashSet<SceneObjectGroup> NewGroupsInView = new HashSet<SceneObjectGroup>(); | 4361 | HashSet<SceneObjectGroup> NewGroupsInView = new HashSet<SceneObjectGroup>(); |
4362 | HashSet<SceneObjectGroup> GroupsNeedFullUpdate = new HashSet<SceneObjectGroup>(); | 4362 | HashSet<SceneObjectGroup> GroupsNeedFullUpdate = new HashSet<SceneObjectGroup>(); |
4363 | 4363 | ||
4364 | |||
4365 | // will this take for ever ? | ||
4364 | lock(GroupsInView) | 4366 | lock(GroupsInView) |
4365 | { | 4367 | { |
4366 | EntityBase[] entities = m_scene.Entities.GetEntities(); | 4368 | EntityBase[] entities = m_scene.Entities.GetEntities(); |
@@ -4374,7 +4376,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4374 | float dpos = (grppos - mypos).LengthSquared(); | 4376 | float dpos = (grppos - mypos).LengthSquared(); |
4375 | if(dcam < dpos) | 4377 | if(dcam < dpos) |
4376 | dpos = dcam; | 4378 | dpos = dcam; |
4377 | dpos = (float)Math.Sqrt(dpos) + grp.GetBoundsRadius(); | 4379 | dpos = (float)Math.Sqrt(dpos) - grp.GetBoundsRadius(); |
4378 | if(dpos > cullingrange) | 4380 | if(dpos > cullingrange) |
4379 | { | 4381 | { |
4380 | if(GroupsInView.Contains(grp)) | 4382 | if(GroupsInView.Contains(grp)) |