Yes, block ID in the WearableDataBlock AgentCachedTexture packet is a hash of all wearables that are part of certain bake + 1 magic uuid per bake. The way it works is:<div><br></div><div>* After login, client gets the list of wearables from the sim.</div>
<div>* Computes the hashes for each bake and sends it to sim with AgentCachedTexture packet.</div><div>* Sim sends back AgentCachedTextureResponse with UUIDs of cached bakes it has. UUID.Zero if doesn't have it</div><div>
* Client creates uploads only bakes that are a mismatch</div><div>* Client sends set appearance packet and this completes the exchange</div><div><br></div><div>Latif</div><div><br><br><div class="gmail_quote">On Sat, Oct 1, 2011 at 11:49 PM, Mic Bowman <span dir="ltr"><<a href="mailto:cmickeyb@gmail.com">cmickeyb@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">this is the one where the wearables uuids are xor'ed with some "pink flamingo" uuid to get a hash of the wearables combination? i looked at the code in libomv to get an idea for how it might work. the opensim side will be a bit challenging to support the map to the baked textures.<div>

<br></div><font color="#888888"><div>--mic</div></font><div><div></div><div class="h5"><div><br><br><div class="gmail_quote">On Sat, Oct 1, 2011 at 1:51 PM, Latif Khalifa <span dir="ltr"><<a href="mailto:latifer@streamgrid.net" target="_blank">latifer@streamgrid.net</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
We have client side of the cached bakes check implemented in libomv. In case you are going to implement this server side you can ping me for details.<div><div></div><div><br><br><div class="gmail_quote">On Mon, Sep 26, 2011 at 12:04 AM, Justin Clark-Casey <span dir="ltr"><<a href="mailto:jjustincc@googlemail.com" target="_blank">jjustincc@googlemail.com</a>></span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">That's great info, Mic - I wasn't aware of this message exchange.<br>
<br>
It sounds like in the future it would be a good idea to implement these messages and remove temporary assets from the asset service periodically.<br>
<br>
Justin<div><br>
<br>
On 25/09/11 19:38, Mic Bowman wrote:<br>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>
I will carefully disagree with Justin on this one. The viewer doesn't upload textures by default. It only uploads the<br>
textures if it believes something has changed. OpenSim doesn't currently respond correctly to the v2/v3 packets for<br>
cached appearance and earlier versions of the viewer can be told that that appearance parameters haven't changed so that<br>
textures are never uploaded (this saves a lot of bw... remember that if you upload textures they have to be sent out to<br>
everyone in the scene so it isn't the upload bw... its like putting new textures on objects every time the sim starts).<br>
In practice, people change appearance so infrequently that the baked textures do not fill up the asset database. And<br>
even when the do, so long as you don't get stuck in the "assets can never be deleted" way of thinking... (baked textures<br>
are marked as temporary anyway)... its pretty easy to clean up the asset db based on a reasonable set of policies.<br>
<br>
<br>
<br></div><div>
On Sun, Sep 25, 2011 at 1:25 AM, Neil Canham <<a href="mailto:neil@knowsense.co.uk" target="_blank">neil@knowsense.co.uk</a> <mailto:<a href="mailto:neil@knowsense.co.uk" target="_blank">neil@knowsense.co.uk</a>>> wrote:<br>



<br>
    Ah - I hadn't appreciated that NPCs need to be cloned from a logged in AV.  That makes sense.<br>
<br>
    As for the persistence, like Mic I think there is potentially an argument for it, as an option, for closed private<br>
    sims for example, or sims where you expect a lot of people to log in at roughly the same time.  However, I<br>
    appreciate that would be a big change so thanks for clarifying how it operates now.<br>
<br>
<br></div><div>
    On Sat, Sep 24, 2011 at 11:18 PM, Justin Clark-Casey <<a href="mailto:jjustincc@googlemail.com" target="_blank">jjustincc@googlemail.com</a> <mailto:<a href="mailto:jjustincc@googlemail.com" target="_blank">jjustincc@googlemail.<u></u>com</a>>> wrote:<br>



<br>
        For ordinary avatars, baked textures don't need permanent persistence since the avatar uploads them on every<br>
        login or when any body part/wearable is changed.  This will have no effect on slow rezzing or cloudiness - if a<br>
        viewer is in the region it should always have uploaded the textures that it bakes.<br>
<br>
        Indeed, there's little value in persisting these since the client will upload them on every login/region<br>
        entrance. Persisting baked textures would bloat the asset service more than is already the case.<br>
<br>
        An NPC, on the other hand, has no viewer from which these baked textures are uploaded.  So they have to be disk<br>
        persisted at the point from which it is cloned from a 'live' avatar.<br>
<br>
<br>
        On 24/09/11 19:28, Neil Canham wrote:<br>
<br>
            I confess that I am puzzled.  I found this fantastic description from Mic of how 0.7 appearance works<br></div>
            <a href="http://opensim-dev.2196679.n2." target="_blank">http://opensim-dev.2196679.n2.</a><u></u>__<a href="http://nabble.com/What-I-ve-Learned-__About-AvatarAppearance-__td5655933.html" target="_blank">nabble.com/What-I-ve-<u></u>Learned-__About-<u></u>AvatarAppearance-__td5655933.<u></u>html</a><div>


<br>
            <<a href="http://opensim-dev.2196679.n2.nabble.com/What-I-ve-Learned-About-AvatarAppearance-td5655933.html" target="_blank">http://opensim-dev.2196679.<u></u>n2.nabble.com/What-I-ve-<u></u>Learned-About-<u></u>AvatarAppearance-td5655933.<u></u>html</a>> and it<br>



            fits with what I<br>
            see analysing the packets against 0.7.1.  So that seems quite clearly to say that baked textures are never<br>
            persisted,<br>
            and that would explain the slow rezzing and 'cloudiness' of avatars that I see regularly.  However, the new<br>
            npc code<br>
            seems to require that a baked texture is available to copy from. So are baked textures now persisted in the<br>
            latest code?<br>
<br>
<br>
<br></div>
            ______________________________<u></u>___________________<br>
            Opensim-dev mailing list<br>
            <a href="mailto:Opensim-dev@lists.berlios.de" target="_blank">Opensim-dev@lists.berlios.de</a> <mailto:<a href="mailto:Opensim-dev@lists.berlios.de" target="_blank">Opensim-dev@lists.<u></u>berlios.de</a>><br>



            <a href="https://lists.berlios.de/__mailman/listinfo/opensim-dev" target="_blank">https://lists.berlios.de/__<u></u>mailman/listinfo/opensim-dev</a> <<a href="https://lists.berlios.de/mailman/listinfo/opensim-dev" target="_blank">https://lists.berlios.de/<u></u>mailman/listinfo/opensim-dev</a>><div>


<br>
<br>
<br>
<br>
        --<br>
        Justin Clark-Casey (justincc)<br>
        <a href="http://justincc.org/blog" target="_blank">http://justincc.org/blog</a><br>
        <a href="http://twitter.com/justincc" target="_blank">http://twitter.com/justincc</a><br></div>
        ______________________________<u></u>___________________<br>
        Opensim-dev mailing list<br>
        <a href="mailto:Opensim-dev@lists.berlios.de" target="_blank">Opensim-dev@lists.berlios.de</a> <mailto:<a href="mailto:Opensim-dev@lists.berlios.de" target="_blank">Opensim-dev@lists.<u></u>berlios.de</a>><br>



        <a href="https://lists.berlios.de/__mailman/listinfo/opensim-dev" target="_blank">https://lists.berlios.de/__<u></u>mailman/listinfo/opensim-dev</a> <<a href="https://lists.berlios.de/mailman/listinfo/opensim-dev" target="_blank">https://lists.berlios.de/<u></u>mailman/listinfo/opensim-dev</a>><br>



<br>
<br>
<br>
    ______________________________<u></u>_________________<br>
    Opensim-dev mailing list<br>
    <a href="mailto:Opensim-dev@lists.berlios.de" target="_blank">Opensim-dev@lists.berlios.de</a> <mailto:<a href="mailto:Opensim-dev@lists.berlios.de" target="_blank">Opensim-dev@lists.<u></u>berlios.de</a>><div>


<br>
    <a href="https://lists.berlios.de/mailman/listinfo/opensim-dev" target="_blank">https://lists.berlios.de/<u></u>mailman/listinfo/opensim-dev</a><br>
<br>
<br>
<br>
<br>
______________________________<u></u>_________________<br>
Opensim-dev mailing list<br>
<a href="mailto:Opensim-dev@lists.berlios.de" target="_blank">Opensim-dev@lists.berlios.de</a><br>
<a href="https://lists.berlios.de/mailman/listinfo/opensim-dev" target="_blank">https://lists.berlios.de/<u></u>mailman/listinfo/opensim-dev</a><br>
</div></blockquote><div><div></div><div>
<br>
<br>
-- <br>
Justin Clark-Casey (justincc)<br>
<a href="http://justincc.org/blog" target="_blank">http://justincc.org/blog</a><br>
<a href="http://twitter.com/justincc" target="_blank">http://twitter.com/justincc</a><br>
______________________________<u></u>_________________<br>
Opensim-dev mailing list<br>
<a href="mailto:Opensim-dev@lists.berlios.de" target="_blank">Opensim-dev@lists.berlios.de</a><br>
<a href="https://lists.berlios.de/mailman/listinfo/opensim-dev" target="_blank">https://lists.berlios.de/<u></u>mailman/listinfo/opensim-dev</a><br>
</div></div></blockquote></div><br>
</div></div><br>_______________________________________________<br>
Opensim-dev mailing list<br>
<a href="mailto:Opensim-dev@lists.berlios.de" target="_blank">Opensim-dev@lists.berlios.de</a><br>
<a href="https://lists.berlios.de/mailman/listinfo/opensim-dev" target="_blank">https://lists.berlios.de/mailman/listinfo/opensim-dev</a><br>
<br></blockquote></div><br></div>
</div></div><br>_______________________________________________<br>
Opensim-dev mailing list<br>
<a href="mailto:Opensim-dev@lists.berlios.de">Opensim-dev@lists.berlios.de</a><br>
<a href="https://lists.berlios.de/mailman/listinfo/opensim-dev" target="_blank">https://lists.berlios.de/mailman/listinfo/opensim-dev</a><br>
<br></blockquote></div><br></div>