Skip to content
Snippets Groups Projects
Commit 6a7582c0 authored by Nyx (Neal Orman)'s avatar Nyx (Neal Orman)
Browse files

SH-3041 FIX use server-sent baked texture IDs while waiting for avatar to load

Prevents the avatar's baked texture UUIDs sent by the server's first objectUpdate
message from being overwritten until the wearable cache results come back.
parent 1731894c
Branches
Tags
No related merge requests found
...@@ -3310,13 +3310,12 @@ void LLAgent::processAgentCachedTextureResponse(LLMessageSystem *mesgsys, void * ...@@ -3310,13 +3310,12 @@ void LLAgent::processAgentCachedTextureResponse(LLMessageSystem *mesgsys, void *
else else
{ {
// no cache of this bake. request upload. // no cache of this bake. request upload.
gAgentAvatarp->requestLayerSetUpload(baked_index); gAgentAvatarp->invalidateComposite(gAgentAvatarp->getLayerSet(baked_index),TRUE);
} }
} }
} }
} }
} }
llinfos << "Received cached texture response for " << num_results << " textures." << llendl; llinfos << "Received cached texture response for " << num_results << " textures." << llendl;
gAgentAvatarp->outputRezTiming("Fetched agent wearables textures from cache. Will now load them"); gAgentAvatarp->outputRezTiming("Fetched agent wearables textures from cache. Will now load them");
......
...@@ -1447,8 +1447,17 @@ void LLAgentWearables::setWearableOutfit(const LLInventoryItem::item_array_t& it ...@@ -1447,8 +1447,17 @@ void LLAgentWearables::setWearableOutfit(const LLInventoryItem::item_array_t& it
{ {
gAgentAvatarp->setCompositeUpdatesEnabled(TRUE); gAgentAvatarp->setCompositeUpdatesEnabled(TRUE);
gAgentAvatarp->updateVisualParams(); gAgentAvatarp->updateVisualParams();
// If we have not yet declouded, we may want to use
// baked texture UUIDs sent from the first objectUpdate message
// don't overwrite these. If we have already declouded, we've saved
// these ids as the last known good textures and can invalidate without
// re-clouding.
if (!gAgentAvatarp->getIsCloud())
{
gAgentAvatarp->invalidateAll(); gAgentAvatarp->invalidateAll();
} }
}
// Start rendering & update the server // Start rendering & update the server
mWearablesLoaded = TRUE; mWearablesLoaded = TRUE;
......
...@@ -822,6 +822,8 @@ U32 LLVOAvatarSelf::processUpdateMessage(LLMessageSystem *mesgsys, ...@@ -822,6 +822,8 @@ U32 LLVOAvatarSelf::processUpdateMessage(LLMessageSystem *mesgsys,
mInitialBakeIDs[i] = texture_id; mInitialBakeIDs[i] = texture_id;
} }
onFirstTEMessageReceived();
mInitialBakesLoaded = true; mInitialBakesLoaded = true;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment