diff options
author | UbitUmarov | 2016-07-06 16:45:27 +0100 |
---|---|---|
committer | UbitUmarov | 2016-07-06 16:45:27 +0100 |
commit | 0eabfb1e3ed0de10b89cca62446bf72461fd7a2e (patch) | |
tree | 4aefcb764b639d24b83be10194907ee2db8065d1 /OpenSim/Region | |
parent | add test option ObjectsCullingByDistance. In future, if true, it may (diff) | |
download | opensim-SC_OLD-0eabfb1e3ed0de10b89cca62446bf72461fd7a2e.zip opensim-SC_OLD-0eabfb1e3ed0de10b89cca62446bf72461fd7a2e.tar.gz opensim-SC_OLD-0eabfb1e3ed0de10b89cca62446bf72461fd7a2e.tar.bz2 opensim-SC_OLD-0eabfb1e3ed0de10b89cca62446bf72461fd7a2e.tar.xz |
add some needed InvalidBoundsRadius() calls
Diffstat (limited to 'OpenSim/Region')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 20 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | 5 |
2 files changed, 20 insertions, 5 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 4e87014..8b76055 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -1568,6 +1568,10 @@ namespace OpenSim.Region.Framework.Scenes | |||
1568 | #endregion | 1568 | #endregion |
1569 | 1569 | ||
1570 | private float? m_boundsRadius = null; | 1570 | private float? m_boundsRadius = null; |
1571 | public void InvalidBoundsRadius() | ||
1572 | { | ||
1573 | m_boundsRadius = null; | ||
1574 | } | ||
1571 | 1575 | ||
1572 | public float GetBoundsRadius() | 1576 | public float GetBoundsRadius() |
1573 | { | 1577 | { |
@@ -2346,6 +2350,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2346 | 2350 | ||
2347 | // a copy isnt backedup | 2351 | // a copy isnt backedup |
2348 | dupe.Backup = false; | 2352 | dupe.Backup = false; |
2353 | dupe.InvalidBoundsRadius(); | ||
2349 | 2354 | ||
2350 | // a copy is not in transit hopefully | 2355 | // a copy is not in transit hopefully |
2351 | dupe.inTransit = false; | 2356 | dupe.inTransit = false; |
@@ -3175,6 +3180,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
3175 | // unmoved prims! | 3180 | // unmoved prims! |
3176 | ResetChildPrimPhysicsPositions(); | 3181 | ResetChildPrimPhysicsPositions(); |
3177 | 3182 | ||
3183 | InvalidBoundsRadius(); | ||
3184 | |||
3178 | if (m_rootPart.PhysActor != null) | 3185 | if (m_rootPart.PhysActor != null) |
3179 | m_rootPart.PhysActor.Building = false; | 3186 | m_rootPart.PhysActor.Building = false; |
3180 | 3187 | ||
@@ -3326,6 +3333,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
3326 | 3333 | ||
3327 | objectGroup.HasGroupChangedDueToDelink = true; | 3334 | objectGroup.HasGroupChangedDueToDelink = true; |
3328 | 3335 | ||
3336 | InvalidBoundsRadius(); | ||
3337 | |||
3329 | if (sendEvents) | 3338 | if (sendEvents) |
3330 | linkPart.TriggerScriptChangedEvent(Changed.LINK); | 3339 | linkPart.TriggerScriptChangedEvent(Changed.LINK); |
3331 | 3340 | ||
@@ -3832,6 +3841,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
3832 | if (pa != null) | 3841 | if (pa != null) |
3833 | m_scene.PhysicsScene.AddPhysicsActorTaint(pa); | 3842 | m_scene.PhysicsScene.AddPhysicsActorTaint(pa); |
3834 | } | 3843 | } |
3844 | InvalidBoundsRadius(); | ||
3835 | } | 3845 | } |
3836 | 3846 | ||
3837 | #endregion | 3847 | #endregion |
@@ -3962,11 +3972,13 @@ namespace OpenSim.Region.Framework.Scenes | |||
3962 | obPart.Scale = newSize; | 3972 | obPart.Scale = newSize; |
3963 | obPart.UpdateOffSet(currentpos); | 3973 | obPart.UpdateOffSet(currentpos); |
3964 | } | 3974 | } |
3965 | |||
3966 | HasGroupChanged = true; | ||
3967 | m_rootPart.TriggerScriptChangedEvent(Changed.SCALE); | ||
3968 | ScheduleGroupForFullUpdate(); | ||
3969 | } | 3975 | } |
3976 | |||
3977 | InvalidBoundsRadius(); | ||
3978 | HasGroupChanged = true; | ||
3979 | m_rootPart.TriggerScriptChangedEvent(Changed.SCALE); | ||
3980 | ScheduleGroupForFullUpdate(); | ||
3981 | |||
3970 | } | 3982 | } |
3971 | 3983 | ||
3972 | #endregion | 3984 | #endregion |
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs index 445a6db..3d6a4c8 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | |||
@@ -867,6 +867,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
867 | 867 | ||
868 | if (ParentGroup != null && !ParentGroup.IsDeleted) | 868 | if (ParentGroup != null && !ParentGroup.IsDeleted) |
869 | { | 869 | { |
870 | ParentGroup.InvalidBoundsRadius(); | ||
871 | |||
870 | PhysicsActor actor = PhysActor; | 872 | PhysicsActor actor = PhysActor; |
871 | if (ParentID != 0 && actor != null) | 873 | if (ParentID != 0 && actor != null) |
872 | { | 874 | { |
@@ -1165,7 +1167,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
1165 | { | 1167 | { |
1166 | 1168 | ||
1167 | m_shape.Scale = value; | 1169 | m_shape.Scale = value; |
1168 | 1170 | if (ParentGroup != null) | |
1171 | ParentGroup.InvalidBoundsRadius(); | ||
1169 | PhysicsActor actor = PhysActor; | 1172 | PhysicsActor actor = PhysActor; |
1170 | if (actor != null) | 1173 | if (actor != null) |
1171 | { | 1174 | { |