diff options
author | John Hurliman | 2009-10-18 02:00:42 -0700 |
---|---|---|
committer | John Hurliman | 2009-10-18 02:00:42 -0700 |
commit | b4526a5a6d170e04655990c8edb8e355156a2061 (patch) | |
tree | 457cc8535e9213f6003545a0363f325b9ef9e90b /OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | |
parent | * Committing Nini.dll with the patch from #3773 applied (diff) | |
download | opensim-SC_OLD-b4526a5a6d170e04655990c8edb8e355156a2061.zip opensim-SC_OLD-b4526a5a6d170e04655990c8edb8e355156a2061.tar.gz opensim-SC_OLD-b4526a5a6d170e04655990c8edb8e355156a2061.tar.bz2 opensim-SC_OLD-b4526a5a6d170e04655990c8edb8e355156a2061.tar.xz |
* Big performance increase in loading prims from the region database with MySQL
* Handle the AgentFOV packet
* Bypass queuing and throttles for ping checks to make ping times more closely match network latency
* Only track reliable bytes in LLUDPCLient.BytesSinceLastACK
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs index 2773a5e..b93e905 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | |||
@@ -295,6 +295,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
295 | public event MuteListRequest OnMuteListRequest; | 295 | public event MuteListRequest OnMuteListRequest; |
296 | public event AvatarInterestUpdate OnAvatarInterestUpdate; | 296 | public event AvatarInterestUpdate OnAvatarInterestUpdate; |
297 | public event PlacesQuery OnPlacesQuery; | 297 | public event PlacesQuery OnPlacesQuery; |
298 | public event AgentFOV OnAgentFOV; | ||
298 | 299 | ||
299 | #endregion Events | 300 | #endregion Events |
300 | 301 | ||
@@ -346,6 +347,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
346 | protected ulong m_activeGroupPowers; | 347 | protected ulong m_activeGroupPowers; |
347 | protected Dictionary<UUID,ulong> m_groupPowers = new Dictionary<UUID, ulong>(); | 348 | protected Dictionary<UUID,ulong> m_groupPowers = new Dictionary<UUID, ulong>(); |
348 | protected int m_terrainCheckerCount; | 349 | protected int m_terrainCheckerCount; |
350 | protected uint m_agentFOVCounter; | ||
349 | 351 | ||
350 | // These numbers are guesses at a decent tradeoff between responsiveness | 352 | // These numbers are guesses at a decent tradeoff between responsiveness |
351 | // of the interest list and throughput. Lower is more responsive, higher | 353 | // of the interest list and throughput. Lower is more responsive, higher |
@@ -8871,19 +8873,21 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
8871 | 8873 | ||
8872 | #endregion | 8874 | #endregion |
8873 | 8875 | ||
8876 | case PacketType.AgentFOV: | ||
8877 | AgentFOVPacket fovPacket = (AgentFOVPacket)Pack; | ||
8874 | 8878 | ||
8875 | #region unimplemented handlers | 8879 | if (fovPacket.FOVBlock.GenCounter > m_agentFOVCounter) |
8876 | 8880 | { | |
8877 | case PacketType.StartPingCheck: | 8881 | m_agentFOVCounter = fovPacket.FOVBlock.GenCounter; |
8878 | StartPingCheckPacket pingStart = (StartPingCheckPacket)Pack; | 8882 | AgentFOV handlerAgentFOV = OnAgentFOV; |
8879 | CompletePingCheckPacket pingComplete = new CompletePingCheckPacket(); | 8883 | if (handlerAgentFOV != null) |
8880 | pingComplete.PingID.PingID = pingStart.PingID.PingID; | 8884 | { |
8881 | m_udpServer.SendPacket(m_udpClient, pingComplete, ThrottleOutPacketType.Unknown, false); | 8885 | handlerAgentFOV(this, fovPacket.FOVBlock.VerticalAngle); |
8886 | } | ||
8887 | } | ||
8882 | break; | 8888 | break; |
8883 | 8889 | ||
8884 | case PacketType.CompletePingCheck: | 8890 | #region unimplemented handlers |
8885 | // TODO: Do stats tracking or something with these? | ||
8886 | break; | ||
8887 | 8891 | ||
8888 | case PacketType.ViewerStats: | 8892 | case PacketType.ViewerStats: |
8889 | // TODO: handle this packet | 8893 | // TODO: handle this packet |