Skip to content

Unused assets

The Unused tab of the panel finds assets that nothing in the project uses. Instead of deleting them, it moves them into a quarantine folder, and Restore puts them back. Nothing is deleted until you delete the quarantine folder yourself.

  1. Open the panel (Tools > ta Asset Doctor, in the tridiART section) and switch to the Unused tab.

  2. Click Find unused assets. This only reads; nothing is moved or deleted. It looks in the Included Paths of the settings and skips Excluded Paths and the quarantine folder.

  3. The four cards at the top show the result: Unused assets, their Total size, Kept (in doubt) and Quarantined batches.

The list below the cards shows every asset that no other asset references:

Column Shows
Checkbox Check the assets you want to move. Nothing is checked after a search; kept assets can’t be checked.
Asset Thumbnail, name and package path.
Size Size on disk.
Status Unused (nothing uses it) or Kept, with the reason in a small line under the badge.
Action Quarantine moves that one asset. Disabled for kept assets.

Unused assets come first, then kept ones, each group largest first. The chips above the list (All, Textures, Meshes, Materials, Blueprints, Audio, Other, each with its count) and the Search unused assets or paths… box filter it. Double-click an asset to show it in the Content Browser.

Select an asset to see it in the details panel on the right: Asset details (name, path, type, size, status), Why is this asset unused? or Why is this asset kept?, its References, and the buttons Move to quarantine and Open in Content Browser. In a narrow panel the details panel is hidden.

An asset that no other asset references is still kept when:

  • it is not saved to disk yet;
  • it is a type the engine opens or loads directly: maps, level sequences, Editor Utility Widgets and Blueprints, string tables, primary asset labels, Game Feature data, HLOD layers, Movie Render Queue configs and queues, data registries and similar;
  • it is a Blueprint based on a class the engine finds at runtime or in the editor (Gameplay Cues, Action Utilities, Editor Utilities, Game Features, Editor Validators);
  • it is a primary asset, so the Asset Manager can load it by id;
  • its path appears in a config file (for example DefaultGame.ini), or its folder does;
  • its name appears in a quoted string in your C++ or Python code, so code may load it by name.

Config files, C++ source and Python scripts of the project and its plugins are searched. Engine files are not.

Move assets with the Quarantine button of a row, Move to quarantine in the details panel, or check several and click Move checked to quarantine (N) under the list. After you confirm:

  • each asset is checked again; anything that gained a reference since the search is skipped;
  • the assets move to /Game/_Quarantine/<date_time>/, keeping their folders, for example /Game/Props/SM_Rock → /Game/_Quarantine/20261019_143005/Props/SM_Rock;
  • the moved assets are saved, redirectors are fixed up, and a list of what moved is written into the batch folder;
  • the search runs again.

Test the project (play it, cook a build). When you’re sure, delete the quarantine folder in the Content Browser. Asset Doctor never deletes assets itself.

The Quarantine section under the list shows every batch, newest first, with its Date, Batch name, number of Assets and Total size. Restore moves every asset of that batch back to where it came from, without a confirmation. Assets whose old location is taken now are skipped. When a batch is empty afterwards, its folder is removed.

The search also finds folders without any assets and without any other files. Delete empty folders (N) in the Quarantine section deletes all of them after a confirmation that lists them, then searches again. Folders that contain other files, such as notes or source images, are never deleted. The Path.EmptyFolder rule reports them in the Issues tab too.

A red banner above the list explains why nothing is listed while:

  • the Asset Registry is still scanning the project, or
  • a package file can’t be read. What such a file references is unknown, so no asset can be called unused. Fix or remove it first; Asset.BrokenPackage lists it in the Issues tab.

Quarantine Folder (default /Game/_Quarantine) in Project Settings > Plugins > ta Asset Doctor > Scope sets where unused assets go. It is never scanned. See Python to do the same from scripts.