A tutorial that covers this process can be found here.

Auto-generate TX Textures

By default, tiled and mipmapped TX textures are automatically generated for each image shader. The resulting TX will be placed next to the original texture files. When the texture filename contains tags such as UDIMs, a TX texture will be generated for each sub-tile.


It can take a bit of time to convert a texture to TX, especially for large textures stored on a network share, but usually, this is done only for the first render. For subsequent renders, if an existing matching TX texture is detected, it won't be regenerated unless the source texture contents or colorspace has changed. Also note that if the input texture filename already has a .tx extension, it will be left as-is.

Disabling auto-generation

This behavior can be disabled per texture with the Auto-generate TX Textures toggle on the Image VOP and a similarly named toggle can be found in the Textures tab of the Arnold render settings to disable TX auto-generation globally.


In addition, the TX texture will be linearized according to the Colorspace parameter. The linear, sRGB and Rec.709 colorspaces are currently supported. The default value Auto will heuristically determine the colorspace from the bit depth and type of the texture.


Changes to the texture filename and colorspace will correctly trigger IPR changes and rebuild the TX texture if necessary. The Refresh button next to the filename on the Image VOP can be used to force the regeneration of TX files.

Updating all textures

The Arnold > Update TX Textures menu entry will update all TX textures in the scene. Alternatively, you may use the following Python function:

import htoa.material