Skip to content

Naming presets

The Naming.Convention rule checks asset names against the Naming Rules table in Project Settings > Plugins > ta Asset Doctor > Naming. You can start from a preset and adjust the table to your project.

Choose a preset with Naming Preset:

Preset Based on
Epic Recommended (default) Epic’s “Recommended Asset Naming Conventions” for Unreal Engine projects (SM_, SK_, T_, M_, MI_, BP_, WBP_, ABP_, AC_, BI_, FXS_, …)
Allar Style Guide Allar’s UE5 Style Guide, section 1.2 “Asset Name Modifiers” (S_, A_, BPI_, BPFL_, Curve_ … _Float, A_ … _Cue, …)
Custom Your own table

Picking Epic Recommended or Allar Style Guide replaces the whole table with that preset. When you edit the table, Naming Preset switches to Custom automatically. Picking Custom keeps the current table as it is.

Rows whose description ends in “(community)” cover asset types that the source guide doesn’t list.

Each row has these fields:

Field Meaning
Description Name of the asset type, used in messages such as “Static Mesh names should start with ‘SM_’.” If empty, the class name is used.
Asset Class The asset class the row applies to, for example /Script/Engine.StaticMesh. Rows without a class are ignored. Classes from plugins that are not enabled are ignored too.
Include Subclasses When enabled (default), the row also applies to subclasses of Asset Class.
Blueprint Kind For Blueprint assets only: Any (default), Normal, Interface, Function Library or Macro Library.
Blueprint Parent Class For Blueprint assets only: the row applies only to Blueprints whose native parent class derives from this class, for example ActorComponent.
Prefix Required prefix. Separate alternatives with commas (M_,PPM_). Auto-fix uses the first one. Leave empty to check only the suffix.
Suffix Optional required suffix. Separate alternatives with commas. Auto-fix uses the first one.

An asset is checked against one row only: the most specific row that matches it. Rows are ranked like this:

  1. Asset class depth: a row for a more derived class beats a row for one of its parent classes. For example, the WidgetBlueprint row (WBP_) beats the Blueprint row (BP_) for Widget Blueprints, and in the Epic preset the Render Target row (RT_) beats the Texture row (T_,HDR_) for render targets.
  2. Blueprint Kind: among rows for the same class, a row with a matching Blueprint Kind ranks higher. A Blueprint Interface gets BI_ instead of BP_ in the Epic preset.
  3. Blueprint Parent Class: a row with a matching parent class ranks higher, and a more derived parent class ranks higher than a less derived one. An Actor Component Blueprint gets AC_ in the Epic preset.

If two rows rank the same, the one that comes first in the table wins. Assets that no row matches are not checked by Naming.Convention.

A row with a Blueprint Kind other than Any, or with a Blueprint Parent Class, never matches assets that aren’t Blueprints. The parent class is checked against the Blueprint’s native (C++) parent, so a Blueprint that inherits from another Blueprint is matched through its first C++ ancestor.

  • Prefixes and suffixes are case-sensitive: sm_Rock doesn’t pass SM_.
  • The name must be longer than the prefix or suffix: an asset called just SM_ doesn’t pass.
  • A prefix that doesn’t end in _ (such as E or F in the Allar preset) must be followed by an upper case letter. EWeaponType passes, Explosion doesn’t.

When a name doesn’t pass, Asset Doctor computes a suggested name and offers it as a rename fix:

  1. Prefix: if the prefix is wrong and the name starts with a known prefix, that prefix is removed first, so prefixes are replaced instead of stacked. Known prefixes are all prefixes ending in _ from your table and from both built-in presets. They are compared case-insensitively, longest first. Then the row’s first prefix is added. If that prefix doesn’t end in _, the first letter of the rest of the name is made upper case.
  2. Suffix: if the suffix is wrong and the name ends with one of the row’s suffixes in a different case, that ending is removed. Then the row’s first suffix is appended.
  3. Characters: the result is cleaned up like the Naming.InvalidCharacters fix. Common accented letters are replaced with ASCII letters (ş → s, ı → i, ö → o, …), other invalid characters become _, and leading and trailing underscores are removed.

If the result is empty or the same as the current name, the issue has no auto-fix.

Preset Asset type Current name New name
Epic Recommended Static Mesh Rock SM_Rock
Epic Recommended Static Mesh S_Rock SM_Rock
Epic Recommended Static Mesh sm_Rock SM_Rock
Epic Recommended Static Mesh Kaya Taşı SM_Kaya_Tasi
Epic Recommended Skeletal Mesh SM_Hero SK_Hero
Allar Style Guide Float Curve Speed Curve_Speed_Float
Allar Style Guide Float Curve Curve_Speed_float Curve_Speed_Float
Allar Style Guide Enumeration weaponType EWeaponType
Allar Style Guide Enumeration E_WeaponType EWeaponType

The rename keeps the asset in its folder. It is skipped if an asset with the new name already exists there.

All rows have Include Subclasses enabled.

Asset type Prefix Suffix
Blueprint BP_ –
Blueprint Interface BI_ –
Actor Component Blueprint AC_ –
Animation Blueprint ABP_ –
Widget Blueprint WBP_ –
Editor Utility Widget (community) EUW_ –
Editor Utility Blueprint (community) EUB_ –
Control Rig Rig_,CR_ –
Control Rig (runtime asset) Rig_,CR_ –
Curve Table CT_ –
Data Table DT_ –
Enum E_ –
Structure F_ –
Material M_,PPM_ –
Material Instance MI_ –
Physics Asset PHYS_ –
Physical Material PM_ –
Skeletal Mesh SK_ –
Static Mesh SM_ –
Texture T_,HDR_ –
Render Target (community) RT_ –
Media Texture (community) MT_ –
Niagara System FXS_ –
Niagara Emitter FXE_ –
Skeleton SKEL_ –
Animation Montage AM_ –
Animation Sequence AS_ –
Blend Space BS_ –
Level Sequence LS_ –
Media Source MS_ –
Media Player MP_ –
Remote Control Preset RCP_ –

Blueprint restrictions in this preset:

  • Blueprint Interface: Blueprint Kind Interface.
  • Actor Component Blueprint: Blueprint Parent Class ActorComponent.

All rows have Include Subclasses enabled.

Asset type Prefix Suffix
Blueprint BP_ –
Blueprint Component BP_ Component
Blueprint Function Library BPFL_ –
Blueprint Interface BPI_ –
Blueprint Macro Library BPML_ –
Enumeration E –
Structure F,S –
Widget Blueprint WBP_ –
Editor Utility Widget (community) EUW_ –
Editor Utility Blueprint (community) EUB_ –
Asset type Prefix Suffix
AI Controller AIC_ –
Behavior Tree Decorator BTDecorator_ –
Behavior Tree Service BTService_ –
Behavior Tree Task BTTask_ –
Environment Query Context EQS_ Context
Behavior Tree BT_ –
Blackboard BB_ –
Environment Query EQS_ –
Asset type Prefix Suffix
Aim Offset AO_ –
Aim Offset 1D AO_ –
Animation Blueprint ABP_ –
Animation Composite AC_ –
Animation Montage AM_ –
Animation Sequence A_ –
Blend Space BS_ –
Level Sequence LS_ –
Control Rig Rig_ –
Control Rig (runtime asset) Rig_ –
Skeletal Mesh SK_ –
Skeleton SKEL_ –
Asset type Prefix Suffix
Material M_,PP_ –
Material Function MF_ –
Material Instance MI_ –
Material Parameter Collection MPC_ –
Subsurface Profile SP_ –
Physical Material PM_ –
Asset type Prefix Suffix
Texture T_ –
Texture Cube TC_ –
Media Texture MT_ –
Render Target RT_ –
Cube Render Target RTC_ –
Texture Light Profile TLP_ –
Asset type Prefix Suffix
Static Mesh S_ –
Physics Asset PHYS_ –
Asset type Prefix Suffix
Particle System PS_ –
Niagara System (community) NS_ –
Niagara Emitter (community) NE_ –
Asset type Prefix Suffix
Color Curve Curve_ _Color
Float Curve Curve_ _Float
Vector Curve Curve_ _Vector
Curve Table Curve_ _Table
Data Table DT_ –
Foliage Type FT_ –
Force Feedback Effect FFE_ –
Landscape Grass Type LG_ –
Landscape Layer LL_ –
Media Player MP_ –
File Media Source FMS_ –
Object Library OL_ –
Touch Interface Setup TI_ –
Static Vector Field VF_ –
Animated Vector Field VFA_ –
Asset type Prefix Suffix
Paper Flipbook PFB_ –
Sprite SPR_ –
Tile Map TM_ –
Tile Set TS_ –
Asset type Prefix Suffix
Dialogue Voice DV_ –
Dialogue Wave DW_ –
Reverb Effect Reverb_ –
Sound Attenuation ATT_ –
Sound Concurrency – _SC
Sound Cue A_ _Cue
Sound Mix Mix_ –
Sound Wave A_ –
Asset type Prefix Suffix
Font Font_ –
Slate Brush Brush_ –
Slate Widget Style Style_ –

Blueprint restrictions in this preset:

  • Blueprint Component: Blueprint Parent Class ActorComponent.
  • Blueprint Function Library: Blueprint Kind Function Library.
  • Blueprint Interface: Blueprint Kind Interface.
  • Blueprint Macro Library: Blueprint Kind Macro Library.
  • AI Controller: Blueprint Parent Class AIController.
  • Behavior Tree Decorator: Blueprint Parent Class BTDecorator.
  • Behavior Tree Service: Blueprint Parent Class BTService.
  • Behavior Tree Task: Blueprint Parent Class BTTaskNode.
  • Environment Query Context: Blueprint Parent Class EnvQueryContext.