aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorRobert Adams2014-02-08 08:35:06 -0800
committerRobert Adams2014-02-11 21:07:55 -0800
commitc0cc5e0fa4b8d469fdbb1c33a4b9e35ec768dee5 (patch)
tree07de1c44a14ec65abdc582686097432efca8fa2f
parentAdd JsonRezAtRoot script function. Operation is very similar to (diff)
downloadopensim-SC-c0cc5e0fa4b8d469fdbb1c33a4b9e35ec768dee5.zip
opensim-SC-c0cc5e0fa4b8d469fdbb1c33a4b9e35ec768dee5.tar.gz
opensim-SC-c0cc5e0fa4b8d469fdbb1c33a4b9e35ec768dee5.tar.bz2
opensim-SC-c0cc5e0fa4b8d469fdbb1c33a4b9e35ec768dee5.tar.xz
varregion: Send large region patches for wind and clouds.
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs14
-rw-r--r--OpenSim/Region/Framework/Scenes/TerrainCompressor.cs4
2 files changed, 13 insertions, 5 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index 1f522e8..9d39daa 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -1323,7 +1323,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1323 } 1323 }
1324 } 1324 }
1325 1325
1326 LayerDataPacket layerpack = TerrainCompressor.CreateLayerDataPacket(patches, TerrainPatch.LayerType.Wind); 1326 byte layerType = (byte)TerrainPatch.LayerType.Wind;
1327 if (m_scene.RegionInfo.RegionSizeX > Constants.RegionSize || m_scene.RegionInfo.RegionSizeY > Constants.RegionSize)
1328 layerType = (byte)TerrainPatch.LayerType.WindExtended;
1329
1330 LayerDataPacket layerpack = OpenSimTerrainCompressor.CreateLayerDataPacket(patches, layerType,
1331 (int)m_scene.RegionInfo.RegionSizeX, (int)m_scene.RegionInfo.RegionSizeY);
1327 layerpack.Header.Zerocoded = true; 1332 layerpack.Header.Zerocoded = true;
1328 OutPacket(layerpack, ThrottleOutPacketType.Wind); 1333 OutPacket(layerpack, ThrottleOutPacketType.Wind);
1329 } 1334 }
@@ -1347,7 +1352,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1347 } 1352 }
1348 } 1353 }
1349 1354
1350 LayerDataPacket layerpack = TerrainCompressor.CreateLayerDataPacket(patches, TerrainPatch.LayerType.Cloud); 1355 byte layerType = (byte)TerrainPatch.LayerType.Cloud;
1356 if (m_scene.RegionInfo.RegionSizeX > Constants.RegionSize || m_scene.RegionInfo.RegionSizeY > Constants.RegionSize)
1357 layerType = (byte)TerrainPatch.LayerType.CloudExtended;
1358
1359 LayerDataPacket layerpack = OpenSimTerrainCompressor.CreateLayerDataPacket(patches, layerType,
1360 (int)m_scene.RegionInfo.RegionSizeX, (int)m_scene.RegionInfo.RegionSizeY);
1351 layerpack.Header.Zerocoded = true; 1361 layerpack.Header.Zerocoded = true;
1352 OutPacket(layerpack, ThrottleOutPacketType.Cloud); 1362 OutPacket(layerpack, ThrottleOutPacketType.Cloud);
1353 } 1363 }
diff --git a/OpenSim/Region/Framework/Scenes/TerrainCompressor.cs b/OpenSim/Region/Framework/Scenes/TerrainCompressor.cs
index ced62e2..bdb748a 100644
--- a/OpenSim/Region/Framework/Scenes/TerrainCompressor.cs
+++ b/OpenSim/Region/Framework/Scenes/TerrainCompressor.cs
@@ -119,9 +119,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
119 byte landPacketType = (byte)TerrainPatch.LayerType.Land; 119 byte landPacketType = (byte)TerrainPatch.LayerType.Land;
120 if (terrData.SizeX > Constants.RegionSize || terrData.SizeY > Constants.RegionSize) 120 if (terrData.SizeX > Constants.RegionSize || terrData.SizeY > Constants.RegionSize)
121 { 121 {
122 // libOMV does not have a packet type defined for the extended parcel format. 122 landPacketType = (byte)TerrainPatch.LayerType.LandExtended;
123 // We just happen to know the extended parcel format code is one more than the usual code.
124 landPacketType++;
125 } 123 }
126 124
127 return CreateLandPacket(terrData, xPieces, yPieces, landPacketType); 125 return CreateLandPacket(terrData, xPieces, yPieces, landPacketType);