In this article, we’ll explore key principles for setting up a texture library. Because textures often come from various sources—some free, some purchased, and others created in-house - establishing a consistent naming system for all associated files (diffuse, roughness, metalness, etc.) can save a lot of time in the future.
Consolidating everything into a unified format is a strategic decision. It enables efficient batch conversion whenever you need to update the pipeline, be it next month or years down the road, simplifies the transition to modern formats like MaterialX. This approach also delivers immediate benefits by automating workflows, saving artists from repetitive manual tasks. Those minutes add up, and over time, that’s money lost.
Keep in mind that even with standardized naming conventions, third-party vendors sometimes include misspelled or inconsistent layer names. These exceptions can complicate the unification process, so be prepared to adjust accordingly.
Workflow
In the ingest view, you can choose whether to rename the additional files or preserve their original structure. Configuring a Python hook (pre ingest load) can save a significant amount of time and manual effort. It all comes down to how much time you can and want to spend on organizing your texture library.
The more time you put in now, for example by getting everything into one unified name space, the more time you will save down the road.
In the Ingest View you decide to assign a common naming convention for additional files by settings the layer type (e.g. texture) and layer names for each additional file. This allows you to generate previews for each layer which will be in the Gallery View and the additional files for each asset.
In the Settings View you can decide if and how to generate previews for the texture files.
There are several options which have different time investment on your end:
Clean incoming files
The task is to create a Python hook file for every vendor to deal with their naming convention. Creating different ingest logic allows you to rename to incoming texture layers in one unified naming convention.
This keeps everything nice and tidy and allows for better integration into your pipeline and workflows since it all follows the same pattern.
Pro
well structured files on disk
less work using the textures in production
easier to automate task in your pipeline
Cons
time consuming
requires Python knowledge
External preview generation
Ingest previews only
Some texture sets provide you with a preview of that texture. A less time consuming option is to only ingest that preview and simply copy the entire texture folder with all it’s additional files. This keeps the original structure as it is.
Pro
less time consuming
keeps original structure and file naming
Cons
potentially less structure on disk
no previews for the different texture layers