As promised in last week's devblog, I focused on the last performance issues caused by skins over the weekend and first half of the week. I implemented fully asynchronous texture loading from PNG including texture compression via DXT and mip map creation. This means that everything that has to be done when a new skin was downloaded and the texture cache is created is now running in a thread without any impact of the game frame rate. All of the heavy lifting was implemented in native code to make it crunch through the skin textures fast enough even when a bunch of skins have to be processed simultaneously. The result is that skin loading now has next to no impact on the game performance, as you can see on these screenshots from before and after the optimizations.
I'm pretty proud of the API I wrapped around this since it's just as easy to use as Unity's WWW class but without the massive frame rate drops that came from blocking the main thread. If you've played with skins disabled up until now I highly recommend giving them another try this week.