diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 20 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 10 |
2 files changed, 22 insertions, 8 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index 1639ee4..482e803 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -230,7 +230,22 @@ namespace OpenSim.Region.Framework.Scenes | |||
230 | /// <summary> | 230 | /// <summary> |
231 | /// Temporarily setting to trigger appearance resends at 60 second intervals. | 231 | /// Temporarily setting to trigger appearance resends at 60 second intervals. |
232 | /// </summary> | 232 | /// </summary> |
233 | public bool SendPeriodicAppearanceUpdates { get; set; } | 233 | public bool SendPeriodicAppearanceUpdates { get; set; } |
234 | |||
235 | /// <summary> | ||
236 | /// How much a client has to change position before updates are sent to viewers. | ||
237 | /// </summary> | ||
238 | public float ClientPositionUpdateTolerance { get; set; } | ||
239 | |||
240 | /// <summary> | ||
241 | /// How much a client has to rotate before updates are sent to viewers. | ||
242 | /// </summary> | ||
243 | public float ClientRotationUpdateTolerance { get; set; } | ||
244 | |||
245 | /// <summary> | ||
246 | /// How much a client has to change velocity before updates are sent to viewers. | ||
247 | /// </summary> | ||
248 | public float ClientVelocityUpdateTolerance { get; set; } | ||
234 | 249 | ||
235 | protected float m_defaultDrawDistance = 255.0f; | 250 | protected float m_defaultDrawDistance = 255.0f; |
236 | public float DefaultDrawDistance | 251 | public float DefaultDrawDistance |
@@ -1046,6 +1061,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
1046 | PeriodicBackup = true; | 1061 | PeriodicBackup = true; |
1047 | UseBackup = true; | 1062 | UseBackup = true; |
1048 | 1063 | ||
1064 | ClientRotationUpdateTolerance = 0.01f; | ||
1065 | ClientVelocityUpdateTolerance = 0.001f; | ||
1066 | ClientPositionUpdateTolerance = 0.05f; | ||
1049 | ChildReprioritizationDistance = 20.0; | 1067 | ChildReprioritizationDistance = 20.0; |
1050 | 1068 | ||
1051 | m_eventManager = new EventManager(); | 1069 | m_eventManager = new EventManager(); |
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 34c6f7c..18a0491 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -3182,10 +3182,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
3182 | 3182 | ||
3183 | public override void Update() | 3183 | public override void Update() |
3184 | { | 3184 | { |
3185 | const float ROTATION_TOLERANCE = 0.01f; | ||
3186 | const float VELOCITY_TOLERANCE = 0.001f; | ||
3187 | const float POSITION_TOLERANCE = 0.05f; | ||
3188 | |||
3189 | if (IsChildAgent == false) | 3185 | if (IsChildAgent == false) |
3190 | { | 3186 | { |
3191 | // NOTE: Velocity is not the same as m_velocity. Velocity will attempt to | 3187 | // NOTE: Velocity is not the same as m_velocity. Velocity will attempt to |
@@ -3202,9 +3198,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
3202 | 3198 | ||
3203 | if (!updateClients) | 3199 | if (!updateClients) |
3204 | updateClients | 3200 | updateClients |
3205 | = !Rotation.ApproxEquals(m_lastRotation, ROTATION_TOLERANCE) | 3201 | = !Rotation.ApproxEquals(m_lastRotation, Scene.ClientRotationUpdateTolerance) |
3206 | || !Velocity.ApproxEquals(m_lastVelocity, VELOCITY_TOLERANCE) | 3202 | || !Velocity.ApproxEquals(m_lastVelocity, Scene.ClientVelocityUpdateTolerance) |
3207 | || !m_pos.ApproxEquals(m_lastPosition, POSITION_TOLERANCE); | 3203 | || !m_pos.ApproxEquals(m_lastPosition, Scene.ClientPositionUpdateTolerance); |
3208 | 3204 | ||
3209 | if (updateClients) | 3205 | if (updateClients) |
3210 | { | 3206 | { |