aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Scene.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Scene.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs24
1 files changed, 13 insertions, 11 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index 48ffbce..e80dff7 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -362,6 +362,7 @@ namespace OpenSim.Region.Framework.Scenes
362 private int m_update_backup = 200; 362 private int m_update_backup = 200;
363 private int m_update_terrain = 50; 363 private int m_update_terrain = 50;
364 private int m_update_land = 1; 364 private int m_update_land = 1;
365 private int m_update_coarse_locations = 50;
365 366
366 private int frameMS; 367 private int frameMS;
367 private int physicsMS2; 368 private int physicsMS2;
@@ -1445,6 +1446,18 @@ namespace OpenSim.Region.Framework.Scenes
1445 if (m_frame % m_update_objects == 0) 1446 if (m_frame % m_update_objects == 0)
1446 m_sceneGraph.UpdateObjectGroups(); 1447 m_sceneGraph.UpdateObjectGroups();
1447 1448
1449 if (m_frame % m_update_coarse_locations == 0)
1450 {
1451 List<Vector3> coarseLocations;
1452 List<UUID> avatarUUIDs;
1453 SceneGraph.GetCoarseLocations(out coarseLocations, out avatarUUIDs, 60);
1454 // Send coarse locations to clients
1455 ForEachScenePresence(delegate(ScenePresence presence)
1456 {
1457 presence.SendCoarseLocations(coarseLocations, avatarUUIDs);
1458 });
1459 }
1460
1448 int tmpPhysicsMS2 = Util.EnvironmentTickCount(); 1461 int tmpPhysicsMS2 = Util.EnvironmentTickCount();
1449 if ((m_frame % m_update_physics == 0) && m_physics_enabled) 1462 if ((m_frame % m_update_physics == 0) && m_physics_enabled)
1450 m_sceneGraph.UpdatePreparePhysics(); 1463 m_sceneGraph.UpdatePreparePhysics();
@@ -3329,9 +3342,6 @@ namespace OpenSim.Region.Framework.Scenes
3329 catch (NullReferenceException) { } 3342 catch (NullReferenceException) { }
3330 }); 3343 });
3331 3344
3332 ForEachScenePresence(
3333 delegate(ScenePresence presence) { presence.CoarseLocationChange(); });
3334
3335 IAgentAssetTransactions agentTransactions = this.RequestModuleInterface<IAgentAssetTransactions>(); 3345 IAgentAssetTransactions agentTransactions = this.RequestModuleInterface<IAgentAssetTransactions>();
3336 if (agentTransactions != null) 3346 if (agentTransactions != null)
3337 { 3347 {
@@ -3383,14 +3393,6 @@ namespace OpenSim.Region.Framework.Scenes
3383 } 3393 }
3384 } 3394 }
3385 3395
3386 /// <summary>
3387 /// Inform all other ScenePresences on this Scene that someone else has changed position on the minimap.
3388 /// </summary>
3389 public void NotifyMyCoarseLocationChange()
3390 {
3391 ForEachScenePresence(delegate(ScenePresence presence) { presence.CoarseLocationChange(); });
3392 }
3393
3394 #endregion 3396 #endregion
3395 3397
3396 #region Entities 3398 #region Entities