Tools for finding a texture on a build?

Building using prims, sculpties and meshes. Texture creation techniques.
User avatar
Koshari Mahana
Posts: 92
Joined: Fri Feb 06, 2015 8:14 am
Has thanked: 36 times
Been thanked: 117 times
Contact:

Re: Tools for finding a texture on a build?

Post by Koshari Mahana » Sat Jan 06, 2018 1:46 am

Thanks Graham and Ilan, I got it :)
These users thanked the author Koshari Mahana for the post (total 2):
Dot MatrixGraham Mills
User avatar
Michael Timeless
Posts: 89
Joined: Thu Sep 24, 2015 5:13 am
Location: Crestwood, Illinois
Has thanked: 300 times
Been thanked: 125 times
Contact:

Re: Tools for finding a texture on a build?

Post by Michael Timeless » Sat Jul 21, 2018 11:42 pm

This is going to be a bit long you may need alcohol or caffiene for this.

First and foremost I want to thank Graham Mills for his script. It reduced ten years of working on a build down to 11,044 rows of Excel Spreadsheet nicely broken down into linksets and UUIDs. Example below:

Fallingwater 2057: ....1 / Fallingwater 2057 4cfe389-06dd-4bcb-9b4f-29f7e6847752
Fallingwater 2057: bd8dce19-834e-4d96-b776-1136cbdf3011
Fallingwater 2057: bd8dce19-834e-4d96-b776-1136cbdf3011
Fallingwater 2057: bd8dce19-834e-4d96-b776-1136cbdf3011
Fallingwater 2057: bd8dce19-834e-4d96-b776-1136cbdf3011
Fallingwater 2057: bd8dce19-834e-4d96-b776-1136cbdf3011
Fallingwater 2057: bd8dce19-834e-4d96-b776-1136cbdf3011
Fallingwater 2057: ....2 / Garage Segment 4d32acb2-1399-4424-8857-d6aec1121560
Fallingwater 2057: 6c5aefa5-ac7d-401a-85a6-5694b4e40a25
Fallingwater 2057: 6c5aefa5-ac7d-401a-85a6-5694b4e40a25
Fallingwater 2057: fdb89d92-b62b-49d1-a4b4-6b4d8b147962
Fallingwater 2057: 6c5aefa5-ac7d-401a-85a6-5694b4e40a25
Fallingwater 2057: 6c5aefa5-ac7d-401a-85a6-5694b4e40a25
Fallingwater 2057: a777ad0d-c43e-4a8a-b911-d73a9b144ab0
Fallingwater 2057: 6c5aefa5-ac7d-401a-85a6-5694b4e40a25

However, as I drilled down into it some things came to mind that have me asking questions. Some of it may be silly to the more experienced builders but for me this is a hobby and it may help others as well.

First I want to start with my assumptions.
I've always assumed that the viewer (I use the most recent Phoenix for Opensim) "sees" a texture and translates it into something the human behind the curtain can view. I've always assumed that the smaller the texture the quicker it loads and the less textures you use the faster everything runs. If this assumption is off this isn't going to make any sense.

Next, I have been building my current project for about 8 years following the loss of an object in Second Life that the original creator recieved a cease and desist order and could no longer sell. I came back from a hospitalization and found the item had been lost from my inventory and was told it could not be replaced so I started building it from photos and memory (can you say OCD). Since I'm not the best builder I would work on it for a while, stop and go back to working on it again. Not always in the same grid but I kept careful records, maintained all of my textures and measurements and kept adding on, this background is important for what comes next.

Issue #1
When I came to Kitely, I once again started working on the project. The first thing I noticed was that if I clicked on a texture it could not be found in the texture picker, even though I could see it. I soon figured out (guessed) that the viewer looks for the original location of the texture in the directory and if it is not in the original location it cannot be found. Because of this I often uploaded the same texture multiple times, since it is free here that is not an issue - I thought.

Issue #2
Next I discovered that while we are all occasionally careless about naming prims I was careless about using the "Face" command when replacing older textures when new vendors became available with newer better looking textures and some of my favorites (Skye and TRU) starting offering texture sets that are useable in different grids. Because of that I have some older textures buried in the structure, but enough of those older textures shows so that they are being probably loaded when they are observed by the viewer.

Issue #3
Size - Size does matter despite what I've been told and it appears that I've used huge textures (2048x2048) in some places where a 64x64 would have probably worked.

Today, when I started playing with Graham's excellent script I discovered that there are almost 400 textures in the build where I could probably get away with about 25 unique textures.

So, I ended up with two questions out of all of this.

1. Is there a way to replace a texture by UUID rather than go into a 2000 prim build (12,000 faces not counting sculpties) and hunt for each of the UUIDs that I've discovered that are dups or old textures?

2. I've looked through Marketplace for a heavy duty texture organizer (I used to use the TMAT in SL) or the Ztech in other grids. Is there anything here that is similar or can I simply save textures I create and have them maintain the same UUID each time I import them.

Question number one is the big one. I really don't want to take the build apart and start from scratch again. Home remodeling after a decade isn't bad a new construction....

Thanks
Mike T
These users thanked the author Michael Timeless for the post:
Graham Mills
User avatar
Ilan Tochner
Posts: 4597
Joined: Sun Dec 23, 2012 8:44 am
Has thanked: 2268 times
Been thanked: 2435 times
Contact:

Re: Tools for finding a texture on a build?

Post by Ilan Tochner » Sun Jul 22, 2018 1:58 am

Hi Mike,

First, texture resolution matters in download time and the amount of GPU resources it requires to render in viewers. You should always use the lowest resolution that works for your needs. The viewer also doesn't support texture resolutions above 1024x1024 so anything larger will be resized to that size.

Second, uploading the same texture into a grid results in multiple different copies of that texture being used, which increases download time and the amount of GPU resources required to render the scene. You should therefor always reuse the same texture UUIDs when possible instead of reuploading those textures and using different copies. This is true no matter whether you are dealing with a single object or multiple different ones.

The grid can only provide viewers with the textures you've uploaded into it. A common mistake people make is to forget uploading the texture into a grid and instead use a local copy of that texture. That texture will show up in their viewer, as long as its included in that viewer's cache, but noone else will see it. This problem also affects objects people get from other grids via Hypergrid and via OAR files and is a common reason people blame their home grid for losing assets when in fact those assets where never uploaded into those grids.

To answer your questions:

1) You can use a script to change textures in a rezzed prim build. The following references will come in handy, but you may need to change them for your specific needs and make sure to use them on copies of your content when testing:

http://wiki.secondlife.com/wiki/LlSetTexture
http://wiki.secondlife.com/wiki/LlSetLinkTexture
http://wiki.secondlife.com/wiki/Simple_ ... sides).lsl

2) I recommend you only keep a single copy of a texture in your inventory and reuse it when building. You can then use whatever script you've created in (1) above to replace whatever copy of that texture you upload later with that stored texture's UUID.
These users thanked the author Ilan Tochner for the post (total 2):
Selby EvansSue Caxton
User avatar
Koshari Mahana
Posts: 92
Joined: Fri Feb 06, 2015 8:14 am
Has thanked: 36 times
Been thanked: 117 times
Contact:

Re: Tools for finding a texture on a build?

Post by Koshari Mahana » Sun Jul 22, 2018 3:59 am

Ilan Tochner wrote:
Sun Jul 22, 2018 1:58 am
The grid can only provide viewers with the textures you've uploaded into it. A common mistake people make is to forget uploading the texture into a grid and instead use a local copy of that texture. That texture will show up in their viewer, as long as its included in that viewer's cache, but noone else will see it. This problem also affects objects people get from other grids via Hypergrid and via OAR files and is a common reason people blame their home grid for losing assets when in fact those assets where never uploaded into those grids.
Hi Ilan, This is interesting, can you explain how this works with the Kitely Market? If a person buys something on the market (the texture originally uploaded to the Kitely grid) how will this affect textures on items exported from the Market to other grids? Note: the textures are fine when exported to other grids from the Market. No one has ever said otherwise. Does the Kitely Market create a new texture UUID in the grid the item is exported to or is it using Kitely's UUID?
User avatar
Ilan Tochner
Posts: 4597
Joined: Sun Dec 23, 2012 8:44 am
Has thanked: 2268 times
Been thanked: 2435 times
Contact:

Re: Tools for finding a texture on a build?

Post by Ilan Tochner » Sun Jul 22, 2018 8:43 am

Hi Koshari.

Kitely Market ensures that all required assets are included in any item sold from it so that it won't deliver any broken products to buyers.

See: https://www.kitely.com/virtual-world-ne ... -products/
These users thanked the author Ilan Tochner for the post (total 2):
Selby EvansMacphisto Angelus
User avatar
Koshari Mahana
Posts: 92
Joined: Fri Feb 06, 2015 8:14 am
Has thanked: 36 times
Been thanked: 117 times
Contact:

Re: Tools for finding a texture on a build?

Post by Koshari Mahana » Sun Jul 22, 2018 6:00 pm

That's ingenious. I knew you did something to make sure it all worked because there has never been a problem for me but I just didn't know what. :) Kitely Market is really amazing. Thanks for all of your hard work in putting it together.
Ilan Tochner wrote:
Sun Jul 22, 2018 8:43 am
Hi Koshari.

Kitely Market ensures that all required assets are included in any item sold from it so that it won't deliver any broken products to buyers.

See: https://www.kitely.com/virtual-world-ne ... -products/
These users thanked the author Koshari Mahana for the post (total 3):
Macphisto AngelusIlan TochnerMichael Timeless
Post Reply