Having a clear overview over the naming scheme can be use useful when parsing the library with an automated script.
ZIP files
<AssetID>_<Resolution>-<Extension>.zip
Note the dashes and underscores!
Examples:
Bricks045_4K-JPG.zip PavingStones036_8K-JPG.zip
The maps inside ZIP files
<AssetID>_<Resolution>_<Map>.jpg
The map names are:
Examples:
PavingStones036_4K_Color.jpg Road003_4K_Roughness.jpg
If your automation project also includes substance files (sbsar) or 3d models from CC0 Textures or if you are generally curious about why the names contain both underscores and dashes in seemingly random places then continue reading …
The AssetID simply represents the internal name for that asset. It consists of a category (“PavingStones”,“3DBread”,“LeafSet”,“TilesSubstance”) and a three digit counter with leading zeros.
The names for 3D models begin with “3D”, substance files (.sbsar) have their own separate categories (so there exists “Marble” and “MarbleSubstance”, “Fabric” and “FabricSubstance”). Writing it out like this sounds more complicated that it really is…
Examples:
PavingStones036 Bricks045 LeafSet014 Marble006 MarbleSubstance002 3DBread001
The names of the ZIP files are composed of two main parts - AssetID and attributes:
<AssetID>_<Attributes>.zip
<Attributes>
The second part of the zip's file name (after the “_”) contains several attributes separated with dashes (“-”). Most zip files only have two attributes attached to them: resolution and the file extension of the maps within them (this is mainly for future-proofing since the CC0Textures.com website only serves JPEGs at the moment). This results in names like this:
PavingStones036_2K-JPG.zip Tiles070_8K-JPG.zip
But some assets require more attributes on their zip files - for example to accommodate different ZIPs for High-Poly and Low-Poly photogrammetry models such as 3D Pear 001.
In this case the ZIP's filename gains an additional attribute to go along with the model:
3DPear001_HighPoly.obj 3DPear001_4K-HighPoly-JPG.zip
The PBR maps inside the ZIPs generally follow a structure that is similar to the one ZIP files use:
<AssetID>_<Attributes>_<Map>.jpg
<Attributes>
99% of all maps only carry one attribute: The resolution. However, some maps (especially the the textures for a model) have several attributes which are seperated in the same way the are for ZIP files:
3DBread001_8K-MidPoly_Color.jpg
Please note that the file extension attribute from the ZIPs is no longer applied here since it would be redundant.
<Map>
The map defines how the image should be used in the context of a PBR material The map names are:
var1 and var2 (“Variation”) are only used in very rare occasions where an image has no clear PBR map assigned to it. This is the case for some surface imperfection maps (Example) where one image can be used to manipulate several other PBR maps (such as color and roughness for stains or fingerprints). These maps are not really meant to be imported in an automated fashion anyways.
Models usually only come with one attribute:
3DBread001_LowPoly.obj
Substance files can also come entirely without any attributes. In that case the underscore is removed:
MarbleSubstance002.sbsar WoodSubstance005_HQ.sbsar
Patrons of CC0 Textures can get access to a Google Drive folder containing JPG and PNG versions of all assets. The folder is structured like this:
CC0Textures ↳_PREVIEW ↳<Preview images> ↳3D ↳<AssetID> ↳<Variation> ↳<Variation> ↳<Resolutions> ↳<Image files> ↳BRUSHES ↳<AssetID> ↳<Resolutions> ↳<Image Files> ↳JPG ↳<AssetID> ↳<Resolutions> ↳<Image Files> ↳PNG ↳<AssetID> ↳<Resolutions> ↳<Image Files> ↳SBS ↳<Substance graphs> ↳SBSAR ↳<Substance archives>