diff options
author | Tom Grimshaw | 2010-06-20 14:45:36 -0700 |
---|---|---|
committer | Tom Grimshaw | 2010-06-20 14:45:36 -0700 |
commit | 33d05ef554c4cbbdfa8c744a0ac2c23a0683ad08 (patch) | |
tree | fb2c737c93f61f686ee5eaef0b10eb615e1f7a6f /OpenSim/Region/Framework/Scenes | |
parent | Update all clients sitting on a linkset if a child prim is moved. This preven... (diff) | |
parent | Modify avatar responsiveness policy to send roots before children (diff) | |
download | opensim-SC-33d05ef554c4cbbdfa8c744a0ac2c23a0683ad08.zip opensim-SC-33d05ef554c4cbbdfa8c744a0ac2c23a0683ad08.tar.gz opensim-SC-33d05ef554c4cbbdfa8c744a0ac2c23a0683ad08.tar.bz2 opensim-SC-33d05ef554c4cbbdfa8c744a0ac2c23a0683ad08.tar.xz |
Merge branch 'careminster-presence-refactor' of ssh://3dhosting.de/var/git/careminster into careminster-presence-refactor
Diffstat (limited to 'OpenSim/Region/Framework/Scenes')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Prioritizer.cs | 15 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | 4 |
2 files changed, 15 insertions, 4 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Prioritizer.cs b/OpenSim/Region/Framework/Scenes/Prioritizer.cs index 7b7677b..b95b5f2 100644 --- a/OpenSim/Region/Framework/Scenes/Prioritizer.cs +++ b/OpenSim/Region/Framework/Scenes/Prioritizer.cs | |||
@@ -208,12 +208,19 @@ namespace OpenSim.Region.Framework.Scenes | |||
208 | 208 | ||
209 | if (entity is SceneObjectPart) | 209 | if (entity is SceneObjectPart) |
210 | { | 210 | { |
211 | PhysicsActor physActor = ((SceneObjectPart)entity).ParentGroup.RootPart.PhysActor; | ||
212 | if (physActor == null || !physActor.IsPhysical) | ||
213 | priority += 100; | ||
214 | |||
215 | if (((SceneObjectPart)entity).ParentGroup.RootPart.IsAttachment) | 211 | if (((SceneObjectPart)entity).ParentGroup.RootPart.IsAttachment) |
212 | { | ||
216 | priority = 1.0; | 213 | priority = 1.0; |
214 | } | ||
215 | else | ||
216 | { | ||
217 | PhysicsActor physActor = ((SceneObjectPart)entity).ParentGroup.RootPart.PhysActor; | ||
218 | if (physActor == null || !physActor.IsPhysical) | ||
219 | priority += 100; | ||
220 | } | ||
221 | |||
222 | if (((SceneObjectPart)entity).ParentGroup.RootPart != (SceneObjectPart)entity) | ||
223 | priority +=1; | ||
217 | } | 224 | } |
218 | return priority; | 225 | return priority; |
219 | } | 226 | } |
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs index 78faa01..09c945b 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | |||
@@ -1504,6 +1504,10 @@ namespace OpenSim.Region.Framework.Scenes | |||
1504 | DoPhysicsPropertyUpdate(RigidBody, true); | 1504 | DoPhysicsPropertyUpdate(RigidBody, true); |
1505 | PhysActor.SetVolumeDetect(VolumeDetectActive ? 1 : 0); | 1505 | PhysActor.SetVolumeDetect(VolumeDetectActive ? 1 : 0); |
1506 | } | 1506 | } |
1507 | else | ||
1508 | { | ||
1509 | m_log.DebugFormat("[SPEW]: physics actor is null for {0} with parent {1}", UUID, this.ParentGroup.UUID); | ||
1510 | } | ||
1507 | } | 1511 | } |
1508 | } | 1512 | } |
1509 | } | 1513 | } |