diff options
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Framework/IClientAPI.cs | 3 | ||||
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 20 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/KeyframeMotion.cs | 12 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 7 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | 14 |
5 files changed, 10 insertions, 46 deletions
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs index 96d2735..0465042 100644 --- a/OpenSim/Framework/IClientAPI.cs +++ b/OpenSim/Framework/IClientAPI.cs | |||
@@ -698,8 +698,7 @@ namespace OpenSim.Framework | |||
698 | ExtraData = 1 << 20, | 698 | ExtraData = 1 << 20, |
699 | Sound = 1 << 21, | 699 | Sound = 1 << 21, |
700 | Joint = 1 << 22, | 700 | Joint = 1 << 22, |
701 | Immediate = 1 << 23, | 701 | FullUpdate = UInt32.MaxValue |
702 | FullUpdate = UInt32.MaxValue & (uint)~((uint)1<<23) | ||
703 | } | 702 | } |
704 | 703 | ||
705 | public static class PrimUpdateFlagsExtensions | 704 | public static class PrimUpdateFlagsExtensions |
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index 8d46415..ca15e3e 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -3721,12 +3721,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
3721 | /// </summary> | 3721 | /// </summary> |
3722 | public void SendEntityUpdate(ISceneEntity entity, PrimUpdateFlags updateFlags) | 3722 | public void SendEntityUpdate(ISceneEntity entity, PrimUpdateFlags updateFlags) |
3723 | { | 3723 | { |
3724 | if ((updateFlags & PrimUpdateFlags.Immediate) != 0) | ||
3725 | { | ||
3726 | SendUnqueuedTerseUpdate((SceneObjectPart)entity); | ||
3727 | return; | ||
3728 | } | ||
3729 | |||
3730 | if (entity is SceneObjectPart) | 3724 | if (entity is SceneObjectPart) |
3731 | { | 3725 | { |
3732 | SceneObjectPart e = (SceneObjectPart)entity; | 3726 | SceneObjectPart e = (SceneObjectPart)entity; |
@@ -4081,20 +4075,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4081 | ProcessEntityUpdates(-1); | 4075 | ProcessEntityUpdates(-1); |
4082 | } | 4076 | } |
4083 | 4077 | ||
4084 | public void SendUnqueuedTerseUpdate(SceneObjectPart part) | ||
4085 | { | ||
4086 | ImprovedTerseObjectUpdatePacket packet | ||
4087 | = (ImprovedTerseObjectUpdatePacket)PacketPool.Instance.GetPacket( | ||
4088 | PacketType.ImprovedTerseObjectUpdate); | ||
4089 | packet.RegionData.RegionHandle = m_scene.RegionInfo.RegionHandle; | ||
4090 | packet.RegionData.TimeDilation = Utils.FloatToUInt16(1.0f, 0.0f, 1.0f); | ||
4091 | packet.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1]; | ||
4092 | |||
4093 | packet.ObjectData[0] = CreateImprovedTerseBlock(part, false); | ||
4094 | |||
4095 | OutPacket(packet, ThrottleOutPacketType.Task | ThrottleOutPacketType.HighPriority); | ||
4096 | } | ||
4097 | |||
4098 | #endregion Primitive Packet/Data Sending Methods | 4078 | #endregion Primitive Packet/Data Sending Methods |
4099 | 4079 | ||
4100 | // These are used to implement an adaptive backoff in the number | 4080 | // These are used to implement an adaptive backoff in the number |
diff --git a/OpenSim/Region/Framework/Scenes/KeyframeMotion.cs b/OpenSim/Region/Framework/Scenes/KeyframeMotion.cs index 722c031..75b16dc 100644 --- a/OpenSim/Region/Framework/Scenes/KeyframeMotion.cs +++ b/OpenSim/Region/Framework/Scenes/KeyframeMotion.cs | |||
@@ -417,7 +417,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
417 | 417 | ||
418 | m_group.RootPart.Velocity = Vector3.Zero; | 418 | m_group.RootPart.Velocity = Vector3.Zero; |
419 | m_group.RootPart.AngularVelocity = Vector3.Zero; | 419 | m_group.RootPart.AngularVelocity = Vector3.Zero; |
420 | m_group.SendGroupRootTerseUpdate(PrimUpdateFlags.Immediate); | 420 | m_group.SendGroupRootTerseUpdate(); |
421 | // m_group.RootPart.ScheduleTerseUpdate(); | 421 | // m_group.RootPart.ScheduleTerseUpdate(); |
422 | m_frames.Clear(); | 422 | m_frames.Clear(); |
423 | } | 423 | } |
@@ -429,7 +429,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
429 | 429 | ||
430 | m_group.RootPart.Velocity = Vector3.Zero; | 430 | m_group.RootPart.Velocity = Vector3.Zero; |
431 | m_group.RootPart.AngularVelocity = Vector3.Zero; | 431 | m_group.RootPart.AngularVelocity = Vector3.Zero; |
432 | m_group.SendGroupRootTerseUpdate(PrimUpdateFlags.Immediate); | 432 | m_group.SendGroupRootTerseUpdate(); |
433 | // m_group.RootPart.ScheduleTerseUpdate(); | 433 | // m_group.RootPart.ScheduleTerseUpdate(); |
434 | 434 | ||
435 | } | 435 | } |
@@ -551,7 +551,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
551 | if (m_group.RootPart.Velocity != Vector3.Zero) | 551 | if (m_group.RootPart.Velocity != Vector3.Zero) |
552 | { | 552 | { |
553 | m_group.RootPart.Velocity = Vector3.Zero; | 553 | m_group.RootPart.Velocity = Vector3.Zero; |
554 | m_group.SendGroupRootTerseUpdate(PrimUpdateFlags.Immediate); | 554 | m_group.SendGroupRootTerseUpdate(); |
555 | 555 | ||
556 | } | 556 | } |
557 | return; | 557 | return; |
@@ -695,7 +695,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
695 | 695 | ||
696 | if (update) | 696 | if (update) |
697 | { | 697 | { |
698 | m_group.SendGroupRootTerseUpdate(PrimUpdateFlags.Immediate); | 698 | m_group.SendGroupRootTerseUpdate(); |
699 | } | 699 | } |
700 | } | 700 | } |
701 | 701 | ||
@@ -731,7 +731,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
731 | if (m_group.RootPart.Velocity != Vector3.Zero) | 731 | if (m_group.RootPart.Velocity != Vector3.Zero) |
732 | { | 732 | { |
733 | m_group.RootPart.Velocity = Vector3.Zero; | 733 | m_group.RootPart.Velocity = Vector3.Zero; |
734 | m_group.SendGroupRootTerseUpdate(PrimUpdateFlags.Immediate); | 734 | m_group.SendGroupRootTerseUpdate(); |
735 | // m_group.RootPart.ScheduleTerseUpdate(); | 735 | // m_group.RootPart.ScheduleTerseUpdate(); |
736 | } | 736 | } |
737 | } | 737 | } |
@@ -743,7 +743,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
743 | if (m_group != null) | 743 | if (m_group != null) |
744 | { | 744 | { |
745 | m_group.RootPart.Velocity = Vector3.Zero; | 745 | m_group.RootPart.Velocity = Vector3.Zero; |
746 | m_group.SendGroupRootTerseUpdate(PrimUpdateFlags.Immediate); | 746 | m_group.SendGroupRootTerseUpdate(); |
747 | // m_group.RootPart.ScheduleTerseUpdate(); | 747 | // m_group.RootPart.ScheduleTerseUpdate(); |
748 | 748 | ||
749 | if (m_running) | 749 | if (m_running) |
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 910f42e..ed1bbd8 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -2638,15 +2638,10 @@ namespace OpenSim.Region.Framework.Scenes | |||
2638 | /// </summary> | 2638 | /// </summary> |
2639 | public void SendGroupRootTerseUpdate() | 2639 | public void SendGroupRootTerseUpdate() |
2640 | { | 2640 | { |
2641 | SendGroupRootTerseUpdate(0); | ||
2642 | } | ||
2643 | |||
2644 | public void SendGroupRootTerseUpdate(PrimUpdateFlags flags) | ||
2645 | { | ||
2646 | if (IsDeleted) | 2641 | if (IsDeleted) |
2647 | return; | 2642 | return; |
2648 | 2643 | ||
2649 | RootPart.SendTerseUpdateToAllClients(flags); | 2644 | RootPart.SendTerseUpdateToAllClients(); |
2650 | } | 2645 | } |
2651 | 2646 | ||
2652 | public void QueueForUpdateCheck() | 2647 | public void QueueForUpdateCheck() |
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs index 7e94eda..20a6626 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | |||
@@ -3315,11 +3315,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
3315 | /// </summary> | 3315 | /// </summary> |
3316 | public void SendTerseUpdateToAllClients() | 3316 | public void SendTerseUpdateToAllClients() |
3317 | { | 3317 | { |
3318 | SendTerseUpdateToAllClients(0); | ||
3319 | } | ||
3320 | |||
3321 | public void SendTerseUpdateToAllClients(PrimUpdateFlags flags) | ||
3322 | { | ||
3323 | if (ParentGroup == null || ParentGroup.Scene == null) | 3318 | if (ParentGroup == null || ParentGroup.Scene == null) |
3324 | return; | 3319 | return; |
3325 | 3320 | ||
@@ -3333,7 +3328,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
3333 | 3328 | ||
3334 | ParentGroup.Scene.ForEachClient(delegate(IClientAPI client) | 3329 | ParentGroup.Scene.ForEachClient(delegate(IClientAPI client) |
3335 | { | 3330 | { |
3336 | SendTerseUpdateToClient(client, flags); | 3331 | SendTerseUpdateToClient(client); |
3337 | }); | 3332 | }); |
3338 | } | 3333 | } |
3339 | 3334 | ||
@@ -5138,11 +5133,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
5138 | 5133 | ||
5139 | public void SendTerseUpdateToClient(IClientAPI remoteClient) | 5134 | public void SendTerseUpdateToClient(IClientAPI remoteClient) |
5140 | { | 5135 | { |
5141 | SendTerseUpdateToClient(remoteClient, 0); | ||
5142 | } | ||
5143 | |||
5144 | public void SendTerseUpdateToClient(IClientAPI remoteClient, PrimUpdateFlags flags) | ||
5145 | { | ||
5146 | if (ParentGroup.IsDeleted) | 5136 | if (ParentGroup.IsDeleted) |
5147 | return; | 5137 | return; |
5148 | 5138 | ||
@@ -5156,7 +5146,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
5156 | remoteClient.SendEntityUpdate( | 5146 | remoteClient.SendEntityUpdate( |
5157 | this, | 5147 | this, |
5158 | PrimUpdateFlags.Position | PrimUpdateFlags.Rotation | PrimUpdateFlags.Velocity | 5148 | PrimUpdateFlags.Position | PrimUpdateFlags.Rotation | PrimUpdateFlags.Velocity |
5159 | | PrimUpdateFlags.Acceleration | PrimUpdateFlags.AngularVelocity | flags); | 5149 | | PrimUpdateFlags.Acceleration | PrimUpdateFlags.AngularVelocity); |
5160 | 5150 | ||
5161 | ParentGroup.Scene.StatsReporter.AddObjectUpdates(1); | 5151 | ParentGroup.Scene.StatsReporter.AddObjectUpdates(1); |
5162 | } | 5152 | } |