diff options
author | UbitUmarov | 2012-12-13 02:55:36 +0000 |
---|---|---|
committer | UbitUmarov | 2012-12-13 02:55:36 +0000 |
commit | 20773dcfccc04d8af14e27f87746711bfaba07b1 (patch) | |
tree | b1428733102b796e1fd87e204da4d24b9f66b670 /OpenSim/Region/ClientStack/Linden | |
parent | make ubitODE ignore X and Y rotation components on avatar rotations (diff) | |
download | opensim-SC-20773dcfccc04d8af14e27f87746711bfaba07b1.zip opensim-SC-20773dcfccc04d8af14e27f87746711bfaba07b1.tar.gz opensim-SC-20773dcfccc04d8af14e27f87746711bfaba07b1.tar.bz2 opensim-SC-20773dcfccc04d8af14e27f87746711bfaba07b1.tar.xz |
add a Check method to flotsamAssetCache, so to check if a asset is in
cache without actually loading it. Make use limited use of it in
avatarfactory textures check. Also on llclientview
HandleAgentTextureCached that now should work. Other asset cache modules
for now will return false, so are broken. baked textures logic
still unchanged. *UNTESTED*
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index ea3c6a4..edb1a9d 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -3992,7 +3992,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
3992 | 3992 | ||
3993 | const float TIME_DILATION = 1.0f; | 3993 | const float TIME_DILATION = 1.0f; |
3994 | ushort timeDilation = Utils.FloatToUInt16(avgTimeDilation, 0.0f, 1.0f); | 3994 | ushort timeDilation = Utils.FloatToUInt16(avgTimeDilation, 0.0f, 1.0f); |
3995 | |||
3996 | 3995 | ||
3997 | if (terseAgentUpdateBlocks.IsValueCreated) | 3996 | if (terseAgentUpdateBlocks.IsValueCreated) |
3998 | { | 3997 | { |
@@ -11695,14 +11694,30 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
11695 | cachedresp.WearableData = | 11694 | cachedresp.WearableData = |
11696 | new AgentCachedTextureResponsePacket.WearableDataBlock[cachedtex.WearableData.Length]; | 11695 | new AgentCachedTextureResponsePacket.WearableDataBlock[cachedtex.WearableData.Length]; |
11697 | 11696 | ||
11698 | for (int i = 0; i < cachedtex.WearableData.Length; i++) | 11697 | IImprovedAssetCache cache = m_scene.RequestModuleInterface<IImprovedAssetCache>(); |
11698 | if (cache == null) | ||
11699 | { | 11699 | { |
11700 | cachedresp.WearableData[i] = new AgentCachedTextureResponsePacket.WearableDataBlock(); | 11700 | for (int i = 0; i < cachedtex.WearableData.Length; i++) |
11701 | cachedresp.WearableData[i].TextureIndex = cachedtex.WearableData[i].TextureIndex; | 11701 | { |
11702 | cachedresp.WearableData[i].TextureID = UUID.Zero; | 11702 | cachedresp.WearableData[i] = new AgentCachedTextureResponsePacket.WearableDataBlock(); |
11703 | cachedresp.WearableData[i].HostName = new byte[0]; | 11703 | cachedresp.WearableData[i].TextureIndex = cachedtex.WearableData[i].TextureIndex; |
11704 | cachedresp.WearableData[i].TextureID = UUID.Zero; | ||
11705 | cachedresp.WearableData[i].HostName = new byte[0]; | ||
11706 | } | ||
11707 | } | ||
11708 | else | ||
11709 | { | ||
11710 | for (int i = 0; i < cachedtex.WearableData.Length; i++) | ||
11711 | { | ||
11712 | cachedresp.WearableData[i] = new AgentCachedTextureResponsePacket.WearableDataBlock(); | ||
11713 | cachedresp.WearableData[i].TextureIndex = cachedtex.WearableData[i].TextureIndex; | ||
11714 | if(cache.Check(cachedtex.WearableData[i].ID.ToString())) | ||
11715 | cachedresp.WearableData[i].TextureID = UUID.Zero; | ||
11716 | else | ||
11717 | cachedresp.WearableData[i].TextureID = UUID.Zero; | ||
11718 | cachedresp.WearableData[i].HostName = new byte[0]; | ||
11719 | } | ||
11704 | } | 11720 | } |
11705 | |||
11706 | cachedresp.Header.Zerocoded = true; | 11721 | cachedresp.Header.Zerocoded = true; |
11707 | OutPacket(cachedresp, ThrottleOutPacketType.Task); | 11722 | OutPacket(cachedresp, ThrottleOutPacketType.Task); |
11708 | 11723 | ||