Tiny Tool Development - C++ Naming Convention Utility - Force your Namings to be consistent forever

Naming Convention Utility is an editor-only tool for Unreal Engine that helps you enforce clean, consistent naming across your entire project.

Instead of manually renaming assets one by one, you define your rules once (per asset type) and apply them to whole folders directly from the Content Browser. The plugin renames all matching assets, then automatically fixes redirectors so your references stay intact.

You can drive everything from a DataTable, which can be edited externally via CSV or JSON and reimported into Unreal for a smooth “edit outside UE → apply in UE” workflow.

The Utility is pre-setup with epics recommended asset naming conventions:
https://dev.epicgames.com/documentation/en-us/unreal-engine/recommended-asset-naming-conventions-in-unreal-engine-projects

Naming Convention Utility Templates:

https://docs.google.com/spreadsheets/d/15o_UrPCJC_MSoOlnFkva_6mDMAFjehO_DjMBRSJCXqg/edit?usp=sharing

🔹 Key Features

Folder-wide renaming from the Content Browser
Right-click any folder in the Content Browser and choose:
Naming Convention Utility → Apply Naming Conventions.
All assets inside that folder (and its subfolders) get renamed according to your rules for each file type.

Type-aware naming rules
Define naming conventions per asset type (textures, materials, static meshes, skeletal meshes, Blueprints, widgets, animations, sounds, Niagara systems, levels, data tables, curves, …).
Each rule can specify:

  • Prefix (e.g. T_, SM_, MI_, BP_, WBP_)

  • Postfix (e.g. M, Inst, Anim, Loop)

  • Patterns to remove – old fragments or unwanted substrings that should be stripped before the new name is applied.

Automatic “Fix Up Redirectors”
After renaming assets, the plugin scans the same folders for redirectors and runs the equivalent of “Update Redirector References / Fix Up Redirectors in Folder”.
Your references are updated automatically – no extra manual cleanup step required.

Data-driven configuration via DataAsset
All rules are stored inside a NamingConventionsDataAsset.
This asset is referenced in Project Settings → Editor → Naming Convention Utility, and can be shared via source control so your whole team uses the same naming policy.

DataTable → DataAsset conversion (one click)
Prefer working with tables? Use a DataTable with the NamingConventionTableInformation row struct:

  • Describe all rules in a table (file type, tool type, value).

  • Right-click the DataTable in the Content Browser and choose:
    Naming Convention Utility → Convert NamingConvention Table to DataAsset.
    The plugin regenerates the NamingConventionsDataAsset from that table.

Edit naming rules via CSV / JSON (external tools)
You can populate and maintain your naming rules outside Unreal:

  • Create or assign a Naming Convention DataTable using NamingConventionTableInformation.

  • Reimport / Reimport with New File using a CSV or JSON file.

  • Edit that CSV/JSON in:

    • Excel / LibreOffice / Numbers

    • Google Sheets

    • Any text or JSON editor

  • Reimport the updated file into Unreal to update the DataTable.

  • Run Convert NamingConvention Table to DataAsset to sync the DataAsset with your external table.

This makes it easy to work with studio naming guidelines that live in shared spreadsheets or external documents.

Editor-only, non-intrusive workflow
Naming Convention Utility runs only in the editor:

  • No runtime code in packaged builds

  • No changes required to your gameplay systems

  • Safe to add to existing projects to gradually clean up naming

🔹 Typical Use Cases

  • Cleaning up legacy projects with inconsistent asset names.

  • Enforcing studio naming standards on large teams.

  • Standardizing third-party or marketplace content to match your internal patterns.

  • Preparing a project for handoff by making names predictable and self-describing.

  • Quickly renaming whole folders of textures, materials, meshes, animations or Blueprints to a consistent format.

  • Maintaining a central naming rules table (CSV/JSON) that multiple projects can share.

🔹 How It Works (Technical Overview)

Naming Convention Utility does not change how you create assets – it changes how you rename them in bulk.

Internally, the plugin:

  • Loads the NamingConventionsDataAsset configured in Project Settings → Editor → Naming Convention Utility.

  • For each selected folder:

    • Uses the Asset Registry to gather all assets in that folder and its subfolders.

    • Resolves each asset to a EFileTypeIdentifier (texture, static mesh, skeletal mesh, Blueprint, widget, animation, sound, Niagara system, world, level, data table, curve, etc.).

    • Finds the matching FNamingConventions rule for that file type.

    • Builds a new asset name by:

      • Removing all substrings listed in NamingsToRemove

      • Stripping existing occurrences of PreFix / PostFix

      • Applying the configured PreFix and PostFix exactly once.

  • Collects all rename operations into FAssetRenameData and performs a batched rename via AssetTools.

  • Afterwards, scans the same folders for UObjectRedirector assets and calls FixupReferencers to update all redirector references.

Data-driven setup:

  • Rules can be defined directly in the DataAsset (NamingConventionsDataAsset), or

  • Defined in a DataTable using NamingConventionTableInformation, then converted into the DataAsset via the Content Browser asset context menu.

The CSV/JSON workflow simply sits on top of Unreal’s existing Reimport system for DataTables.

🔹 Requirements & Compatibility

  • Engine: Unreal Engine 5.x (editor-only plugin)

  • Usage: Editor-only (no runtime dependency in packaged games)

  • Code: C++ plugin; all features exposed via editor menus

  • Tested with: UE 5.4+

  • Platforms: Developed and tested on Windows editor; other editor platforms should work as long as standard AssetTools / DataTable / ToolMenus APIs are available.

🔹 Included Content

  • Naming Convention Utility editor plugin (C++ source)

  • NamingConventionsDataAsset type for storing rules

  • NamingConventionTableInformation row struct for DataTables

  • Project Settings integration under Editor → Naming Convention Utility

  • Content Browser integrations:

    • Folder context menu: Apply Naming Conventions

    • Asset context menu for supported DataTables:
      Convert NamingConvention Table to DataAsset

  • Quick start documentation / README (including CSV/JSON workflow description)

🔹 Dependencies

This Plugin depends on EditorScriptingUtilities to do the actions, and Niagara to be able to define and update filetypes used from these plugins. This list could be extended, if optionality of the plugin does make sense to also include more Classes from other plugins needed.

🔹 Support

If you run into issues or have ideas for improvements (additional file type support, more complex rule types, project-wide batch modes, etc.), feel free to reach out via the Fab support section.

Feedback from technical artists, environment teams and pipeline engineers is especially welcome – this tool is designed to slot into real production workflows.

🔹 Discord Support Channel

https://discord.gg/52CKaH8AGR