Blender 5.2 LTS Introduces Cycles Texture Cache for Lower Memory Usage

What is the Cycles Texture Cache?

Starting with Blender 5.2 LTS, the Cycles render engine can keep its texture memory footprint small by loading only the parts of an image that are actually needed for a given render. The feature, called the Cycles Texture Cache, creates lightweight .tx files that act as virtual‑texture containers for each source image.

How to enable it

In the Render properties panel, open the Performance tab and check Texture Cache and Auto Generate. A new Texture Cache panel appears under Performance, where you can manually generate or refresh .tx files.

What the .tx files contain

When a texture is first used, Cycles writes a corresponding .tx file into a blender_tx/ folder next to the original image. The file stores the image as a set of tiles, each padded by two pixels to match the repeat mode. During rendering, only the tiles required for the current pixel samples are streamed into GPU or CPU memory.

Command‑line generation

For pipeline automation you can generate .tx files without opening the UI:

# Generate tx files for all images in a blend file
blender scene.blend --command maketx

# Generate a tx file for a single image
blender --command maketx image.png --colorspace sRGB

These commands are provided by the Blender binary itself and produce the same native format used by the UI.

Viewport simplification changes

The old Texture Limit option in the Simplify panel has been replaced by a single Texture Resolution percentage. The setting works whether or not the texture cache is active and scales the resolution of every texture (e.g., 50 % or 25 %). This helps keep the viewport responsive on complex scenes.

Technical details – CPU and GPU handling

Traditional CPU texture caches keep a shared LRU list and block threads while a missing tile loads from disk. GPUs cannot block in the same way, so Cycles batches all cache‑misses, loads the required tiles, and then restarts the kernels. The engine’s wavefront path tracing model hides the latency because millions of paths are in flight simultaneously.

Cache eviction strategy

Cycles uses the existing tiled rendering workflow to decide when to evict tiles. After two render tiles have been processed, any image tiles not used by the third tile are removed from the cache. This approach keeps memory usage roughly constant even for very high‑resolution renders (4K, 8K, 16K) as long as the tile size is not too large. Reducing the tile size to 1024 px or 512 px can further lower memory on constrained hardware, at the cost of a modest performance hit.

Future work and known limitations

The release notes note that performance on older GPUs is still being investigated, and that additional controls for render farms will arrive in later updates. Planned improvements include better viewport navigation, support for packed textures, mip‑map bias control, and more advanced filtering for bump/normal maps.

Getting involved

The feature is already available in daily builds. Users are encouraged to report bugs via the Blender tracker and discuss any issues on the DevTalk forum. Development was led by Brecht Van Lommel with assistance from Weizhen Huang and Sergey Sharybin.