diff options
author | Justin Clark-Casey (justincc) | 2011-09-16 23:57:16 +0100 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2011-09-16 23:57:16 +0100 |
commit | 6f542f73d4aacc0b92c2ebcff84b4ce2c8d9433b (patch) | |
tree | a7656d5ec25d54ba2a5d50efda269de8e3129cb1 /OpenSim/Region/Framework/Scenes | |
parent | minor: I was wrong about OffsetPosition - sometimes it genuinely does return ... (diff) | |
download | opensim-SC-6f542f73d4aacc0b92c2ebcff84b4ce2c8d9433b.zip opensim-SC-6f542f73d4aacc0b92c2ebcff84b4ce2c8d9433b.tar.gz opensim-SC-6f542f73d4aacc0b92c2ebcff84b4ce2c8d9433b.tar.bz2 opensim-SC-6f542f73d4aacc0b92c2ebcff84b4ce2c8d9433b.tar.xz |
Stop the avatar stalling on its first boarder cross when using the ODE plugin
When upgrading the previously child agent to a root, the code was setting the Size parameter on the ODECharacter PhysicsActor.
This in turn reset Velocity, which cause the border stall.
I'm fixing this by commenting out the Velocity = Vector3.Zero lines since they don't appear to play a useful purpose
Diffstat (limited to 'OpenSim/Region/Framework/Scenes')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 81475b8..0fc85b9 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -469,6 +469,10 @@ namespace OpenSim.Region.Framework.Scenes | |||
469 | if (actor != null) | 469 | if (actor != null) |
470 | { | 470 | { |
471 | m_pos = actor.Position; | 471 | m_pos = actor.Position; |
472 | |||
473 | // m_log.DebugFormat( | ||
474 | // "[SCENE PRESENCE]: Set position {0} for {1} in {2} via getting AbsolutePosition!", | ||
475 | // m_pos, Name, Scene.RegionInfo.RegionName); | ||
472 | } | 476 | } |
473 | else | 477 | else |
474 | { | 478 | { |
@@ -544,8 +548,14 @@ namespace OpenSim.Region.Framework.Scenes | |||
544 | { | 548 | { |
545 | PhysicsActor actor = m_physicsActor; | 549 | PhysicsActor actor = m_physicsActor; |
546 | if (actor != null) | 550 | if (actor != null) |
551 | { | ||
547 | m_velocity = actor.Velocity; | 552 | m_velocity = actor.Velocity; |
548 | 553 | ||
554 | // m_log.DebugFormat( | ||
555 | // "[SCENE PRESENCE]: Set velocity {0} for {1} in {2} via getting Velocity!", | ||
556 | // m_velocity, Name, Scene.RegionInfo.RegionName); | ||
557 | } | ||
558 | |||
549 | return m_velocity; | 559 | return m_velocity; |
550 | } | 560 | } |
551 | set | 561 | set |