#if 0
	if (gSavedSettings.getBOOL("ImagePipelineUseHTTP"))
		LLViewerRegion* region = gAgent.getRegion();
		if (region)
			http_url = region->getCapability("RequestTextureDownload");

No comments.

To quote:

Can you please give me more details on ImagePipelineUseHTTP? Not sure about that (does it noticeably effect higher-end PCs?), but “FolderAutoOpenDelay” sounds like it could be a quick, eclectic Tip of the Week. I like it. —Torley

From what I’ve been able to gather, ImagePipelineUseHTTP changes the mechanism that the Viewer uses to download the textures. It is turned off by default. I did find this reference to it which implies it’s a new feature, perhaps not yet fully implemented? Not having a high end machine, I can’t tell if it’s noticable on them, but I know that it helps me and it’s helped a friend who has a PC on the lower end of what can run SL. — Sougent

No, really no comments.

I was just hoping to actually get some real caching going on.


4 thoughts on “Voodoo

  1. Translation: The code in the client that checks what ImagePipelineUseHTTP is set to and requests a texture’s root URL for the region if it’s TRUE, is commented out and will never execute or even get compiled. (#if 0) This is the only place where the client actually references this configuration option, ever. A bit further down is the code that is supposed to do something if the texture URL got successfully requested. That something is {}, i.e. an empty block. But since the texture URL never contains a string (because it never gets requested) it’s irrelevant.

    Other code chunks related to downloading textures over HTTP are also commented out.

    I didn’t believe it myself either at first, because I also thought that some noticeable change occurs if ImagePipelineUseHTTP is true. But I sniffed all over for any kind of TCP traffic and did not find any consistent with expected texture file sizes, not even HTTPS. I wanted to route that HTTP traffic through Squid with the intention to cache it and reduce bandwidth use, since my ISP started to routinely drop up to 30% of all packets that come in from overseas.

    There was no such traffic. Then I looked into the source and found *this*.

    ImagePipelineUseHTTP does nothing at all, texture loading over HTTP does not exist.

  2. Well, I don’t doubt you, but the difference with it set to true seems to be quite noticeable, not only to myself but to others who I’ve had try it as well so it’s not just me.

    As for just my perception, I’ve done re-installs where I forgot to set it back and the perceived difference in loading speed was enough to prompt me to look at the setting and change it to true.

    I suppose I could buy that it’s just psychological but it sure seems faster. Would be interesting to do a double blind test to see if someone who set the setting to true without any expectations would perceive a speedup in texture loading.

  3. I expect that the perceived difference arises from the fact that whenever you toggle the setting, there is more data in your cache – and loaded from cache – than there was before you toggled it. As a result, comparing loading times objectively is only possible when you clear the cache between toggles and start loading in identical circumstances and location, which nobody ever does, since they don’t want to know objectively, they just want it to be faster. Try toggling the setting back and see it it feels faster or slower.

    I bet it will feel faster.

    From other commented out bits in the code, I can see that it was supposed to be normal HTTP to default port 80, (there’s an example URL in the comment) which would, in my case, be intercepted and cached without me having to do anything. (I have transparent squid set up already.) I.e. if it worked, my gains would be immediately noticeable and very, very significant – instant rez of any place I’ve been to before, 10% slower rez of places I haven’t been to yet. None of the sort happens. 🙂

    You can also look at the source yourself.

Comments are closed.