mirror of
https://github.com/opensim/opensim.git
synced 2026-08-10 11:33:28 +08:00
Make reported sim fps more accurate, in line with frame time ms
Also remove some unused fields and improve naming on others.
This commit is contained in:
@@ -37,6 +37,9 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
{
|
||||
public class SimStatsReporter
|
||||
{
|
||||
// private static readonly log4net.ILog m_log
|
||||
// = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
|
||||
|
||||
public delegate void SendStatResult(SimStats stats);
|
||||
|
||||
public delegate void YourStatsAreWrong();
|
||||
@@ -165,18 +168,9 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
|
||||
#region various statistic googly moogly
|
||||
|
||||
// Our FPS is actually 10fps, so multiplying by 5 to get the amount that people expect there
|
||||
// 0-50 is pretty close to 0-45
|
||||
float simfps = (int) ((m_fps * 5));
|
||||
// save the reported value so there is something available for llGetRegionFPS
|
||||
lastReportedSimFPS = (float)simfps / statsUpdateFactor;
|
||||
lastReportedSimFPS = (float)m_fps / statsUpdateFactor;
|
||||
|
||||
//if (simfps > 45)
|
||||
//simfps = simfps - (simfps - 45);
|
||||
//if (simfps < 0)
|
||||
//simfps = 0;
|
||||
|
||||
//
|
||||
float physfps = ((m_pfps / 1000));
|
||||
|
||||
//if (physfps > 600)
|
||||
@@ -197,7 +191,7 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
// 'statsUpdateFactor' is how often stats packets are sent in seconds. Used below to change
|
||||
// values to X-per-second values.
|
||||
|
||||
for (int i = 0; i<21;i++)
|
||||
for (int i = 0; i < 21; i++)
|
||||
{
|
||||
sb[i] = new SimStatsPacket.StatBlock();
|
||||
}
|
||||
@@ -206,7 +200,7 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
sb[0].StatValue = (Single.IsNaN(m_timeDilation)) ? 0.1f : m_timeDilation ; //((((m_timeDilation + (0.10f * statsUpdateFactor)) /10) / statsUpdateFactor));
|
||||
|
||||
sb[1].StatID = (uint) Stats.SimFPS;
|
||||
sb[1].StatValue = simfps/statsUpdateFactor;
|
||||
sb[1].StatValue = m_fps/statsUpdateFactor;
|
||||
|
||||
sb[2].StatID = (uint) Stats.PhysicsFPS;
|
||||
sb[2].StatValue = physfps / statsUpdateFactor;
|
||||
@@ -272,7 +266,8 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
|
||||
SimStats simStats
|
||||
= new SimStats(
|
||||
ReportingRegion.RegionLocX, ReportingRegion.RegionLocY, regionFlags, (uint)m_objectCapacity, rb, sb, m_scene.RegionInfo.originRegionID);
|
||||
ReportingRegion.RegionLocX, ReportingRegion.RegionLocY, regionFlags, (uint)m_objectCapacity,
|
||||
rb, sb, m_scene.RegionInfo.originRegionID);
|
||||
|
||||
handlerSendStatResult = OnSendStatsResult;
|
||||
if (handlerSendStatResult != null)
|
||||
@@ -395,30 +390,32 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
{
|
||||
m_frameMS += ms;
|
||||
}
|
||||
|
||||
public void addNetMS(int ms)
|
||||
{
|
||||
m_netMS += ms;
|
||||
}
|
||||
|
||||
public void addAgentMS(int ms)
|
||||
{
|
||||
m_agentMS += ms;
|
||||
}
|
||||
|
||||
public void addPhysicsMS(int ms)
|
||||
{
|
||||
m_physicsMS += ms;
|
||||
}
|
||||
|
||||
public void addImageMS(int ms)
|
||||
{
|
||||
m_imageMS += ms;
|
||||
}
|
||||
|
||||
public void addOtherMS(int ms)
|
||||
{
|
||||
m_otherMS += ms;
|
||||
}
|
||||
|
||||
// private static readonly log4net.ILog m_log
|
||||
// = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
|
||||
|
||||
public void AddPendingDownloads(int count)
|
||||
{
|
||||
m_pendingDownloads += count;
|
||||
|
||||
Reference in New Issue
Block a user