Quick answer: Project Settings → Preset Manager → add preset, set Filter path. Or use AssetPostprocessor for code control.
You save TextureImporter settings as a Preset. Drop new sprites into Assets/Sprites/UI/. They import with default settings, not your preset.
The Fix
Project Settings → Preset Manager:
+ Add Default
Preset Object: UISpritePreset.preset
Filter: glob:Assets/Sprites/UI/**/*
// Or via AssetPostprocessor
public class SpritePresetApplier : AssetPostprocessor {
void OnPreprocessAsset() {
if (assetPath.StartsWith("Assets/Sprites/UI/")) {
var preset = AssetDatabase.LoadAssetAtPath<Preset>(
"Assets/Editor/UISpritePreset.preset");
preset?.ApplyTo(assetImporter);
}
}
}
The Preset Manager handles common cases. Postprocessor handles per-team conventions (e.g., apply preset only when filename matches naming convention).
Verifying
Drop a new sprite. Inspector shows preset settings. Right-click Reimport: settings reapply.
“Preset registered. Filter scoped. Imports auto-tune.”
Related Issues
For Asset Pipeline V2 cache, see cache. For Addressables update, see content update.
Preset enrolled. Filter set. Imports auto-tune.