diff options
author | Justin Clark-Casey (justincc) | 2012-06-01 03:49:42 +0100 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2012-06-01 03:49:42 +0100 |
commit | 200376b3c4717e9ae00b67ef5f2a57383952f2d5 (patch) | |
tree | 0293331cb175c98d85e69eb643ad05395aab1261 | |
parent | Add avatar forces calculation, prim force and raycasting per frame millisecon... (diff) | |
download | opensim-SC-200376b3c4717e9ae00b67ef5f2a57383952f2d5.zip opensim-SC-200376b3c4717e9ae00b67ef5f2a57383952f2d5.tar.gz opensim-SC-200376b3c4717e9ae00b67ef5f2a57383952f2d5.tar.bz2 opensim-SC-200376b3c4717e9ae00b67ef5f2a57383952f2d5.tar.xz |
Add optional stat for the other collision time per frame not spent in ODE native spaces or geom collision code
-rw-r--r-- | OpenSim/Region/Physics/OdePlugin/OdeScene.cs | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/OpenSim/Region/Physics/OdePlugin/OdeScene.cs b/OpenSim/Region/Physics/OdePlugin/OdeScene.cs index e44375b..8590453 100644 --- a/OpenSim/Region/Physics/OdePlugin/OdeScene.cs +++ b/OpenSim/Region/Physics/OdePlugin/OdeScene.cs | |||
@@ -191,6 +191,11 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
191 | public const string ODENativeGeomCollisionFrameMsStatName = "ODENativeGeomCollisionFrameMS"; | 191 | public const string ODENativeGeomCollisionFrameMsStatName = "ODENativeGeomCollisionFrameMS"; |
192 | 192 | ||
193 | /// <summary> | 193 | /// <summary> |
194 | /// Time spent in collision processing that is not spent in native space or geom collision code. | ||
195 | /// </summary> | ||
196 | public const string ODEOtherCollisionFrameMsStatName = "ODEOtherCollisionFrameMS"; | ||
197 | |||
198 | /// <summary> | ||
194 | /// Stat name for time spent notifying listeners of collisions | 199 | /// Stat name for time spent notifying listeners of collisions |
195 | /// </summary> | 200 | /// </summary> |
196 | public const string ODECollisionNotificationFrameMsStatName = "ODECollisionNotificationFrameMS"; | 201 | public const string ODECollisionNotificationFrameMsStatName = "ODECollisionNotificationFrameMS"; |
@@ -3062,7 +3067,11 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
3062 | collision_optimized(); | 3067 | collision_optimized(); |
3063 | 3068 | ||
3064 | if (CollectStats) | 3069 | if (CollectStats) |
3065 | tempTick = Util.EnvironmentTickCount(); | 3070 | { |
3071 | tempTick2 = Util.EnvironmentTickCount(); | ||
3072 | m_stats[ODEOtherCollisionFrameMsStatName] += Util.EnvironmentTickCountSubtract(tempTick2, tempTick); | ||
3073 | tempTick = tempTick2; | ||
3074 | } | ||
3066 | 3075 | ||
3067 | foreach (PhysicsActor obj in _collisionEventPrim.Values) | 3076 | foreach (PhysicsActor obj in _collisionEventPrim.Values) |
3068 | { | 3077 | { |
@@ -4210,6 +4219,11 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
4210 | InitializeExtraStats(); | 4219 | InitializeExtraStats(); |
4211 | } | 4220 | } |
4212 | 4221 | ||
4222 | returnStats[ODEOtherCollisionFrameMsStatName] | ||
4223 | = returnStats[ODEOtherCollisionFrameMsStatName] | ||
4224 | - returnStats[ODENativeSpaceCollisionFrameMsStatName] | ||
4225 | - returnStats[ODENativeGeomCollisionFrameMsStatName]; | ||
4226 | |||
4213 | return returnStats; | 4227 | return returnStats; |
4214 | } | 4228 | } |
4215 | 4229 | ||
@@ -4224,6 +4238,7 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
4224 | m_stats[ODENativeStepFrameMsStatName] = 0; | 4238 | m_stats[ODENativeStepFrameMsStatName] = 0; |
4225 | m_stats[ODENativeSpaceCollisionFrameMsStatName] = 0; | 4239 | m_stats[ODENativeSpaceCollisionFrameMsStatName] = 0; |
4226 | m_stats[ODENativeGeomCollisionFrameMsStatName] = 0; | 4240 | m_stats[ODENativeGeomCollisionFrameMsStatName] = 0; |
4241 | m_stats[ODEOtherCollisionFrameMsStatName] = 0; | ||
4227 | m_stats[ODECollisionNotificationFrameMsStatName] = 0; | 4242 | m_stats[ODECollisionNotificationFrameMsStatName] = 0; |
4228 | m_stats[ODEAvatarContactsStatsName] = 0; | 4243 | m_stats[ODEAvatarContactsStatsName] = 0; |
4229 | m_stats[ODEPrimContactsStatName] = 0; | 4244 | m_stats[ODEPrimContactsStatName] = 0; |