diff options
author | UbitUmarov | 2013-01-11 14:16:45 +0000 |
---|---|---|
committer | UbitUmarov | 2013-01-11 14:16:45 +0000 |
commit | 1f9dbdf8b8d8c70e654199c5f9a4258e0e6693f9 (patch) | |
tree | 7cf89814fd1f638a8d031e3e34dd80dd30f59e50 /OpenSim/Region/Framework/Scenes/KeyframeMotion.cs | |
parent | keyframe. Don't use group UpdateRotation since this enqueues a terse (diff) | |
download | opensim-SC-1f9dbdf8b8d8c70e654199c5f9a4258e0e6693f9.zip opensim-SC-1f9dbdf8b8d8c70e654199c5f9a4258e0e6693f9.tar.gz opensim-SC-1f9dbdf8b8d8c70e654199c5f9a4258e0e6693f9.tar.bz2 opensim-SC-1f9dbdf8b8d8c70e654199c5f9a4258e0e6693f9.tar.xz |
same for AngularVelocity. Use normal terse updates in place of sending
imediatly. If that's good for physics, needs to be good for this
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/KeyframeMotion.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/KeyframeMotion.cs | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/OpenSim/Region/Framework/Scenes/KeyframeMotion.cs b/OpenSim/Region/Framework/Scenes/KeyframeMotion.cs index 995060b..43f46d1 100644 --- a/OpenSim/Region/Framework/Scenes/KeyframeMotion.cs +++ b/OpenSim/Region/Framework/Scenes/KeyframeMotion.cs | |||
@@ -345,9 +345,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
345 | m_baseRotation = m_group.GroupRotation; | 345 | m_baseRotation = m_group.GroupRotation; |
346 | 346 | ||
347 | m_group.RootPart.Velocity = Vector3.Zero; | 347 | m_group.RootPart.Velocity = Vector3.Zero; |
348 | m_group.RootPart.UpdateAngularVelocity(Vector3.Zero); | 348 | m_group.RootPart.AngularVelocity = Vector3.Zero; |
349 | m_group.SendGroupRootTerseUpdate(); | 349 | // m_group.SendGroupRootTerseUpdate(); |
350 | 350 | m_group.RootPart.ScheduleTerseUpdate(); | |
351 | m_frames.Clear(); | 351 | m_frames.Clear(); |
352 | } | 352 | } |
353 | 353 | ||
@@ -357,8 +357,10 @@ namespace OpenSim.Region.Framework.Scenes | |||
357 | RemoveTimer(); | 357 | RemoveTimer(); |
358 | 358 | ||
359 | m_group.RootPart.Velocity = Vector3.Zero; | 359 | m_group.RootPart.Velocity = Vector3.Zero; |
360 | m_group.RootPart.UpdateAngularVelocity(Vector3.Zero); | 360 | m_group.RootPart.AngularVelocity = Vector3.Zero; |
361 | m_group.SendGroupRootTerseUpdate(); | 361 | // m_group.SendGroupRootTerseUpdate(); |
362 | m_group.RootPart.ScheduleTerseUpdate(); | ||
363 | |||
362 | } | 364 | } |
363 | 365 | ||
364 | private void GetNextList() | 366 | private void GetNextList() |
@@ -489,7 +491,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
489 | if (m_group.RootPart.Velocity != Vector3.Zero) | 491 | if (m_group.RootPart.Velocity != Vector3.Zero) |
490 | { | 492 | { |
491 | m_group.RootPart.Velocity = Vector3.Zero; | 493 | m_group.RootPart.Velocity = Vector3.Zero; |
492 | m_group.SendGroupRootTerseUpdate(); | 494 | // m_group.SendGroupRootTerseUpdate(); |
495 | m_group.RootPart.ScheduleTerseUpdate(); | ||
496 | |||
493 | } | 497 | } |
494 | m_inOnTimer = false; | 498 | m_inOnTimer = false; |
495 | return; | 499 | return; |
@@ -539,7 +543,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
539 | if (steps <= 0.0) | 543 | if (steps <= 0.0) |
540 | { | 544 | { |
541 | m_group.RootPart.Velocity = Vector3.Zero; | 545 | m_group.RootPart.Velocity = Vector3.Zero; |
542 | m_group.RootPart.UpdateAngularVelocity(Vector3.Zero); | 546 | m_group.RootPart.AngularVelocity = Vector3.Zero; |
543 | 547 | ||
544 | m_nextPosition = (Vector3)m_currentFrame.Position; | 548 | m_nextPosition = (Vector3)m_currentFrame.Position; |
545 | m_group.AbsolutePosition = m_nextPosition; | 549 | m_group.AbsolutePosition = m_nextPosition; |
@@ -625,7 +629,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
625 | } | 629 | } |
626 | 630 | ||
627 | if (update) | 631 | if (update) |
628 | m_group.SendGroupRootTerseUpdate(); | 632 | // m_group.SendGroupRootTerseUpdate(); |
633 | m_group.RootPart.ScheduleTerseUpdate(); | ||
634 | |||
629 | 635 | ||
630 | } | 636 | } |
631 | catch ( Exception ex) | 637 | catch ( Exception ex) |
@@ -675,7 +681,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
675 | if (m_group.RootPart.Velocity != Vector3.Zero) | 681 | if (m_group.RootPart.Velocity != Vector3.Zero) |
676 | { | 682 | { |
677 | m_group.RootPart.Velocity = Vector3.Zero; | 683 | m_group.RootPart.Velocity = Vector3.Zero; |
678 | m_group.SendGroupRootTerseUpdate(); | 684 | // m_group.SendGroupRootTerseUpdate(); |
685 | m_group.RootPart.ScheduleTerseUpdate(); | ||
679 | } | 686 | } |
680 | } | 687 | } |
681 | 688 | ||
@@ -686,7 +693,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
686 | if (m_group != null) | 693 | if (m_group != null) |
687 | { | 694 | { |
688 | m_group.RootPart.Velocity = Vector3.Zero; | 695 | m_group.RootPart.Velocity = Vector3.Zero; |
689 | m_group.SendGroupRootTerseUpdate(); | 696 | // m_group.SendGroupRootTerseUpdate(); |
697 | m_group.RootPart.ScheduleTerseUpdate(); | ||
690 | 698 | ||
691 | if (m_running && m_timer != null) | 699 | if (m_running && m_timer != null) |
692 | { | 700 | { |