diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Prioritizer.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Prioritizer.cs | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Prioritizer.cs b/OpenSim/Region/Framework/Scenes/Prioritizer.cs index ef78f0f..0f35894 100644 --- a/OpenSim/Region/Framework/Scenes/Prioritizer.cs +++ b/OpenSim/Region/Framework/Scenes/Prioritizer.cs | |||
@@ -167,18 +167,20 @@ namespace OpenSim.Region.Framework.Scenes | |||
167 | { | 167 | { |
168 | if (!presence.IsChildAgent) | 168 | if (!presence.IsChildAgent) |
169 | { | 169 | { |
170 | // All avatars other than our own go into pqueue 1 | ||
171 | if (entity is ScenePresence) | ||
172 | return 1; | ||
173 | |||
170 | if (entity is SceneObjectPart) | 174 | if (entity is SceneObjectPart) |
171 | { | 175 | { |
176 | // Attachments are high priority, | ||
177 | if (((SceneObjectPart)entity).ParentGroup.RootPart.IsAttachment) | ||
178 | return 1; | ||
179 | |||
172 | // Non physical prims are lower priority than physical prims | 180 | // Non physical prims are lower priority than physical prims |
173 | PhysicsActor physActor = ((SceneObjectPart)entity).ParentGroup.RootPart.PhysActor; | 181 | PhysicsActor physActor = ((SceneObjectPart)entity).ParentGroup.RootPart.PhysActor; |
174 | if (physActor == null || !physActor.IsPhysical) | 182 | if (physActor == null || !physActor.IsPhysical) |
175 | pqueue++; | 183 | pqueue++; |
176 | |||
177 | // Attachments are high priority, | ||
178 | // MIC: shouldn't these already be in the highest priority queue already | ||
179 | // since their root position is same as the avatars? | ||
180 | if (((SceneObjectPart)entity).ParentGroup.RootPart.IsAttachment) | ||
181 | pqueue = 1; | ||
182 | } | 184 | } |
183 | } | 185 | } |
184 | } | 186 | } |