diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Scene.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 56 |
1 files changed, 27 insertions, 29 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index ff05e95..fa8bf85 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -1230,8 +1230,32 @@ namespace OpenSim.Region.Framework.Scenes | |||
1230 | // m_log.DebugFormat("[SCENE]: Processing frame {0}", Frame); | 1230 | // m_log.DebugFormat("[SCENE]: Processing frame {0}", Frame); |
1231 | 1231 | ||
1232 | try | 1232 | try |
1233 | { | 1233 | { |
1234 | int tmpAgentMS = Util.EnvironmentTickCount(); | 1234 | int tmpPhysicsMS2 = Util.EnvironmentTickCount(); |
1235 | if ((Frame % m_update_physics == 0) && m_physics_enabled) | ||
1236 | m_sceneGraph.UpdatePreparePhysics(); | ||
1237 | physicsMS2 = Util.EnvironmentTickCountSubtract(tmpPhysicsMS2); | ||
1238 | |||
1239 | // Apply any pending avatar force input to the avatar's velocity | ||
1240 | int tmpAgentMS = Util.EnvironmentTickCount(); | ||
1241 | if (Frame % m_update_entitymovement == 0) | ||
1242 | m_sceneGraph.UpdateScenePresenceMovement(); | ||
1243 | agentMS = Util.EnvironmentTickCountSubtract(tmpAgentMS); | ||
1244 | |||
1245 | // Perform the main physics update. This will do the actual work of moving objects and avatars according to their | ||
1246 | // velocity | ||
1247 | int tmpPhysicsMS = Util.EnvironmentTickCount(); | ||
1248 | if (Frame % m_update_physics == 0) | ||
1249 | { | ||
1250 | if (m_physics_enabled) | ||
1251 | physicsFPS = m_sceneGraph.UpdatePhysics(MinFrameTime); | ||
1252 | |||
1253 | if (SynchronizeScene != null) | ||
1254 | SynchronizeScene(this); | ||
1255 | } | ||
1256 | physicsMS = Util.EnvironmentTickCountSubtract(tmpPhysicsMS); | ||
1257 | |||
1258 | tmpAgentMS = Util.EnvironmentTickCount(); | ||
1235 | 1259 | ||
1236 | // Check if any objects have reached their targets | 1260 | // Check if any objects have reached their targets |
1237 | CheckAtTargets(); | 1261 | CheckAtTargets(); |
@@ -1259,33 +1283,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
1259 | }); | 1283 | }); |
1260 | } | 1284 | } |
1261 | 1285 | ||
1262 | agentMS = Util.EnvironmentTickCountSubtract(tmpAgentMS); | 1286 | agentMS += Util.EnvironmentTickCountSubtract(tmpAgentMS); |
1263 | |||
1264 | int tmpPhysicsMS2 = Util.EnvironmentTickCount(); | ||
1265 | if ((Frame % m_update_physics == 0) && m_physics_enabled) | ||
1266 | m_sceneGraph.UpdatePreparePhysics(); | ||
1267 | physicsMS2 = Util.EnvironmentTickCountSubtract(tmpPhysicsMS2); | ||
1268 | |||
1269 | // Apply any pending avatar force input to the avatar's velocity | ||
1270 | if (Frame % m_update_entitymovement == 0) | ||
1271 | { | ||
1272 | tmpAgentMS = Util.EnvironmentTickCount(); | ||
1273 | m_sceneGraph.UpdateScenePresenceMovement(); | ||
1274 | agentMS += Util.EnvironmentTickCountSubtract(tmpAgentMS); | ||
1275 | } | ||
1276 | |||
1277 | // Perform the main physics update. This will do the actual work of moving objects and avatars according to their | ||
1278 | // velocity | ||
1279 | int tmpPhysicsMS = Util.EnvironmentTickCount(); | ||
1280 | if (Frame % m_update_physics == 0) | ||
1281 | { | ||
1282 | if (m_physics_enabled) | ||
1283 | physicsFPS = m_sceneGraph.UpdatePhysics(MinFrameTime); | ||
1284 | |||
1285 | if (SynchronizeScene != null) | ||
1286 | SynchronizeScene(this); | ||
1287 | } | ||
1288 | physicsMS = Util.EnvironmentTickCountSubtract(tmpPhysicsMS); | ||
1289 | 1287 | ||
1290 | // Delete temp-on-rez stuff | 1288 | // Delete temp-on-rez stuff |
1291 | if (Frame % m_update_temp_cleaning == 0 && !m_cleaningTemps) | 1289 | if (Frame % m_update_temp_cleaning == 0 && !m_cleaningTemps) |