Merge commit '4e7d4330c2b2c61e64c9f82efa7b824b717b2e4d' into bigmerge
Conflicts: OpenSim/Region/Framework/Scenes/Scene.csavinationmerge
commit
b4395143e7
|
@ -165,17 +165,6 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
/// </summary>
|
/// </summary>
|
||||||
protected DateTime m_lastFrameUpdate = DateTime.UtcNow;
|
protected DateTime m_lastFrameUpdate = DateTime.UtcNow;
|
||||||
|
|
||||||
// TODO: Possibly stop other classes being able to manipulate this directly.
|
|
||||||
private SceneGraph m_sceneGraph;
|
|
||||||
private volatile int m_bordersLocked;
|
|
||||||
// private int m_RestartTimerCounter;
|
|
||||||
private readonly Timer m_restartTimer = new Timer(15000); // Wait before firing
|
|
||||||
// private int m_incrementsof15seconds;
|
|
||||||
private volatile bool m_backingup;
|
|
||||||
private Dictionary<UUID, ReturnInfo> m_returns = new Dictionary<UUID, ReturnInfo>();
|
|
||||||
private Dictionary<UUID, SceneObjectGroup> m_groupsWithTargets = new Dictionary<UUID, SceneObjectGroup>();
|
|
||||||
private Object m_heartbeatLock = new Object();
|
|
||||||
|
|
||||||
private int m_update_physics = 1;
|
private int m_update_physics = 1;
|
||||||
private int m_update_entitymovement = 1;
|
private int m_update_entitymovement = 1;
|
||||||
private int m_update_objects = 1;
|
private int m_update_objects = 1;
|
||||||
|
@ -200,6 +189,24 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
private int lastCompletedFrame;
|
private int lastCompletedFrame;
|
||||||
|
|
||||||
public bool CombineRegions = false;
|
public bool CombineRegions = false;
|
||||||
|
/// <summary>
|
||||||
|
/// Signals whether temporary objects are currently being cleaned up. Needed because this is launched
|
||||||
|
/// asynchronously from the update loop.
|
||||||
|
/// </summary>
|
||||||
|
private bool m_cleaningTemps = false;
|
||||||
|
|
||||||
|
private Object m_heartbeatLock = new Object();
|
||||||
|
|
||||||
|
// TODO: Possibly stop other classes being able to manipulate this directly.
|
||||||
|
private SceneGraph m_sceneGraph;
|
||||||
|
private volatile int m_bordersLocked;
|
||||||
|
// private int m_RestartTimerCounter;
|
||||||
|
private readonly Timer m_restartTimer = new Timer(15000); // Wait before firing
|
||||||
|
// private int m_incrementsof15seconds;
|
||||||
|
private volatile bool m_backingup;
|
||||||
|
private Dictionary<UUID, ReturnInfo> m_returns = new Dictionary<UUID, ReturnInfo>();
|
||||||
|
private Dictionary<UUID, SceneObjectGroup> m_groupsWithTargets = new Dictionary<UUID, SceneObjectGroup>();
|
||||||
|
|
||||||
private bool m_physics_enabled = true;
|
private bool m_physics_enabled = true;
|
||||||
private bool m_scripts_enabled = true;
|
private bool m_scripts_enabled = true;
|
||||||
private string m_defaultScriptEngine;
|
private string m_defaultScriptEngine;
|
||||||
|
@ -214,8 +221,6 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
|
|
||||||
private object m_deleting_scene_object = new object();
|
private object m_deleting_scene_object = new object();
|
||||||
|
|
||||||
private bool m_cleaningTemps = false;
|
|
||||||
|
|
||||||
private UpdatePrioritizationSchemes m_priorityScheme = UpdatePrioritizationSchemes.Time;
|
private UpdatePrioritizationSchemes m_priorityScheme = UpdatePrioritizationSchemes.Time;
|
||||||
private bool m_reprioritizationEnabled = true;
|
private bool m_reprioritizationEnabled = true;
|
||||||
private double m_reprioritizationInterval = 5000.0;
|
private double m_reprioritizationInterval = 5000.0;
|
||||||
|
@ -226,8 +231,6 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
private bool m_generateMaptiles;
|
private bool m_generateMaptiles;
|
||||||
private bool m_useBackup = true;
|
private bool m_useBackup = true;
|
||||||
|
|
||||||
// private Dictionary<UUID, string[]> m_UserNamesCache = new Dictionary<UUID, string[]>();
|
|
||||||
|
|
||||||
#endregion Fields
|
#endregion Fields
|
||||||
|
|
||||||
#region Properties
|
#region Properties
|
||||||
|
@ -667,10 +670,6 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
|
|
||||||
m_physics_enabled = !RegionInfo.RegionSettings.DisablePhysics;
|
m_physics_enabled = !RegionInfo.RegionSettings.DisablePhysics;
|
||||||
|
|
||||||
StatsReporter = new SimStatsReporter(this);
|
|
||||||
StatsReporter.OnSendStatsResult += SendSimStatsPackets;
|
|
||||||
StatsReporter.OnStatsIncorrect += m_sceneGraph.RecalculateStats;
|
|
||||||
|
|
||||||
// Old
|
// Old
|
||||||
/*
|
/*
|
||||||
m_simulatorVersion = simulatorVersion
|
m_simulatorVersion = simulatorVersion
|
||||||
|
@ -767,6 +766,17 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
RegionInfo.RegionSettings.TerrainImageID = tileID;
|
RegionInfo.RegionSettings.TerrainImageID = tileID;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MinFrameTime = startupConfig.GetFloat( "MinFrameTime", MinFrameTime);
|
||||||
|
m_update_backup = startupConfig.GetInt( "UpdateStorageEveryNFrames", m_update_backup);
|
||||||
|
m_update_coarse_locations = startupConfig.GetInt( "UpdateCoarseLocationsEveryNFrames", m_update_coarse_locations);
|
||||||
|
m_update_entitymovement = startupConfig.GetInt( "UpdateEntityMovementEveryNFrames", m_update_entitymovement);
|
||||||
|
m_update_events = startupConfig.GetInt( "UpdateEventsEveryNFrames", m_update_events);
|
||||||
|
m_update_objects = startupConfig.GetInt( "UpdateObjectsEveryNFrames", m_update_objects);
|
||||||
|
m_update_physics = startupConfig.GetInt( "UpdatePhysicsEveryNFrames", m_update_physics);
|
||||||
|
m_update_presences = startupConfig.GetInt( "UpdateAgentsEveryNFrames", m_update_presences);
|
||||||
|
m_update_terrain = startupConfig.GetInt( "UpdateTerrainEveryNFrames", m_update_terrain);
|
||||||
|
m_update_temp_cleaning = startupConfig.GetInt( "UpdateTempCleaningEveryNFrames", m_update_temp_cleaning);
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
@ -804,6 +814,10 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
m_log.Info("[SCENE]: Using the " + m_priorityScheme + " prioritization scheme");
|
m_log.Info("[SCENE]: Using the " + m_priorityScheme + " prioritization scheme");
|
||||||
|
|
||||||
#endregion Interest Management
|
#endregion Interest Management
|
||||||
|
|
||||||
|
StatsReporter = new SimStatsReporter(this);
|
||||||
|
StatsReporter.OnSendStatsResult += SendSimStatsPackets;
|
||||||
|
StatsReporter.OnStatsIncorrect += m_sceneGraph.RecalculateStats;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -115,6 +115,48 @@
|
||||||
; into a restart.
|
; into a restart.
|
||||||
InworldRestartShutsDown = false
|
InworldRestartShutsDown = false
|
||||||
|
|
||||||
|
; The minimum proportion of a second that any particular frame can take to execute.
|
||||||
|
; Only change this if you really know what you're doing, and be prepared to change UpdatePhysicsEveryNFrames
|
||||||
|
; (and other Frames params) to match! For instance, halving MinFrameTime to 0.0445 require
|
||||||
|
; UpdatePhysicsEveryNFrames = 2 unless you don't mind your avatar walking like Benny Hill.
|
||||||
|
MinFrameTime = 0.089
|
||||||
|
|
||||||
|
; Send scheduled updates to objects in the scene
|
||||||
|
; This must be a whole number
|
||||||
|
UpdateObjectsEveryNFrames = 1;
|
||||||
|
|
||||||
|
; Send position/velocity, etc. updates to agents in the scene
|
||||||
|
; This must be a whole number
|
||||||
|
UpdateAgentsEveryNFrames = 1;
|
||||||
|
|
||||||
|
; Apply pending forces from physics calculations to an entity.
|
||||||
|
; This must be a whole number
|
||||||
|
UpdateEntityMovementEveryNFrames = 1;
|
||||||
|
|
||||||
|
; Send coarse location updates to viewers. In a classic viewer, this updates the minimap.
|
||||||
|
; This must be a whole number
|
||||||
|
UpdateCoarseLocationsEveryNFrames = 50;
|
||||||
|
|
||||||
|
; Update physics. Within each update physics also updates in a series of contigous mini-steps
|
||||||
|
; This must be a whole number
|
||||||
|
UpdatePhysicsEveryNFrames = 1;
|
||||||
|
|
||||||
|
; Clean up temp on rez objects.
|
||||||
|
; This must be a whole number
|
||||||
|
UpdateTempCleaningEveryNFrames = 1000;
|
||||||
|
|
||||||
|
; Send out the on frame event to modules and other listeners. This should probably never deviate from 1.
|
||||||
|
; This must be a whole number
|
||||||
|
UpdateEventsEveryNFrames = 1;
|
||||||
|
|
||||||
|
; Send terrain updates to viewers
|
||||||
|
; This must be a whole number
|
||||||
|
UpdateTerrainEveryNFrames = 50;
|
||||||
|
|
||||||
|
; Persitently store any objects which meet the PRIM STORAGE criteria
|
||||||
|
; This must be a whole number
|
||||||
|
UpdateStorageEveryNFrames = 200;
|
||||||
|
|
||||||
; ##
|
; ##
|
||||||
; ## PRIM STORAGE
|
; ## PRIM STORAGE
|
||||||
; ##
|
; ##
|
||||||
|
|
Loading…
Reference in New Issue