Peer-to-Peer Forum

 

Login Register    
Merging duplicate textures?
Posted: 29 January 2009 10:00 AM  
Member
RankRankRank
Total Posts:  59
Joined  2008-12-11

For now I’m going texture by texture in the list, doing an attribute search to find the duplicates and give them all one id…kind of a pain though.  Copied and pasted from someone else working on the same DB and have all sorts of duplicate textures.  Would seem there should be a menu option to automate this a bit if the paths are now the same between the two.

In a perfect world everyone would keep everything the same as you gave it to them but for numerous ‘special’ people out there this is never the case.  And yes, I suppose I’m ‘special’ in my own right as well.  Anyways would be very usefull for 3.6 or sooner unless someone has an easier approach other than hiring an intern smile

 
Posted: 29 January 2009 03:07 PM   [ # 1 ]  
Jr. Member
RankRank
Total Posts:  44
Joined  2007-11-26

this is interesting how do you do a attribute search for textures(not to familiar with the search logic)

ive come into this problem this works for me.
under the texture palette there’s edit->remove unused->current palette

 
Posted: 29 January 2009 03:18 PM   [ # 2 ]  
Member
RankRankRank
Total Posts:  59
Joined  2008-12-11

Hi Chris,

That works for textures that aren’t being used but when you copy and paste two db’s together that have some of the same textures you sometimes wind up with duplicates…two(or more) of the same texture being used and being loaded.

Under the Attributes menu there is an attribute search option, it works on whatever mode you’re in(group, face, object, etc)...if you select an item before going to it it’ll help fill in the search options that the item has contained in it.  So if you’lre looking for faces with a specific texture ID assigned you select a face with that texture assigned to it and add the attribute to the search and it’ll find all of them.

Very powerfull….Very confusing at first smile

 
Posted: 29 January 2009 09:43 PM   [ # 3 ]  
Moderator
RankRankRankRank
Total Posts:  590
Joined  2008-07-02

There is a little known tool included with Creator as a “free unsupported” plugin called “Palette Cleaner” which does exactly this.  Actually there are two tools in this plugin, one for “cleaning” texture palettes and one for material palettes (although the material palette cleaner has not been updated to support extended materials - oh well, its free what do you want!).

The Texture Cleaner removes “duplicates” from your texture palette and fixes up the texture index references, accordingly, on your geometry.

Anyway, if you have installed a “complete” installation (e.g., have included the Free Plugins component) you should find these tools in the Palettes menu. Palettes>Clean>Textures and Palettes>Clean>Materials

For more information on these, check out the help file that is included as well. Launch the help file by:
1) Help>On Plugins, select Plugin Module: Palette Cleaner, Click Help button
—OR—
2) Invoke Context Sensitive Help (Help>Help) while the Cleaner dialog is displayed, then click in the Cleaner dialog.
—OR—
3) In Explorer, browse to CREATOR/config/plugins/palettecleaner and open palettecleaner.htm in your favorite web browser.

 
Posted: 02 February 2009 07:14 AM   [ # 4 ]  
Member
RankRankRank
Total Posts:  59
Joined  2008-12-11

Very nice…I like it alot. 

Didn’t even know that was there, cool!

 
Posted: 17 March 2009 02:50 PM   [ # 5 ]  
Sr. Member
RankRankRankRank
Total Posts:  547
Joined  2009-03-17

Also - “Attribute resolver” will take care of this

 
Posted: 02 April 2009 08:04 AM   [ # 6 ]  
Jr. Member
RankRank
Total Posts:  31
Joined  2008-12-31

Has anyone else ever had this related problem happen?

Working in one large database, open another large database to look at some things for reference… no editing is done, just looking.  Close that “reference” database, and continue working on the original database armed with new knowledge.  Later, open the texture palette and find that a bunch of textures from the “reference” database now mysteriously appear in this database, complete with absolute paths to their location (which is always a totally different location.) 

From what I remember (it has happened to me twice, a few months ago) it copied only the textures that both databases shared, any textures unique to the “reference” database did not show up.  So, now I have a bunch of duplicate textures that are not actually referenced anywhere in my database, and I have to list all textures and find the bogus paths to ID the ones to delete.  Deleting more than 10 or so textures at one time will result in a Creator Crash™.

 
Posted: 02 April 2009 08:20 AM   [ # 7 ]  
Sr. Member
RankRankRankRank
Total Posts:  547
Joined  2009-03-17

I have seen this, it is a byproduct of creator internally caching textures so subsequent loads go faster (i think).

First, if you list textures, does it show an I as well as an F next to it?  Probably not.  In the texture palette, do an Edit -> Remove Unused -> All Palettes and they all go away.

Also - if at anytime you include the subordinate files in an Attribute Resolver job with the Remove Unused in Subordinate Files it will get rid of them.  Don’t push the master palette to all subordinates, though, that will overide your remove unused and put all the textures in every file.  you just want a master palette with unique indeces for eact texture, and I save this as Texmaster.flt for each dataset.  then when I add more models, I can run the resolver against this master and add more textures and keep the same indeces for everything else.

I also have an API utility that i’ve used forever that you drag a folder on top of, and it changes all the texture paths to ../textures.  We’ve solidified this as a consistent hierarchy, and now don’t have to worry about wierd pathing from different modelers using different disks and whatnot.  Attribute Resolver works well to eliminate duplicates, but will introduce duplicates if they reside in separate path trees, so when we publish to runtime format I use another toolset that “Shares” all the textures within a database so each texture is loaded only once.

Good Luck!