# Bulk Renaming Morph Targets in UE5

**URL:** <https://forums.unrealengine.com/t/bulk-renaming-morph-targets-in-ue5/2661449>\
**Category:** Programming & Scripting\
**Tags:** morph-targets, unreal-engine, skeletalmesh, CPP\
**Created:** [October 1, 2025, 3:03pm UTC](https://forums.unrealengine.com/t/bulk-renaming-morph-targets-in-ue5/2661449 "2025-10-01T15:03:44Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![VisualisationLab](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@VisualisationLab](https://forums.unrealengine.com/u/VisualisationLab)\
**Post date:** [October 1, 2025, 3:03pm UTC](https://forums.unrealengine.com/t/bulk-renaming-morph-targets-in-ue5/2661449/1 "2025-10-01T15:03:44Z")

</div>

Hi all,

I’ve been digging into **bulk renaming morph targets inside Unreal Engine 5.7** (also had attempts in 5.5 and 5.6) and wanted to share findings, since I hit a wall.

### What I tried

I wrote a small editor plugin that:

1. Iterates over `USkeletalMesh->GetMorphTargets()`
2. Attempts to rename each morph to match a new naming scheme
3. Updates skeleton curves to match

Example snippet (simplified):

```cpp
for (UMorphTarget* Morph : SkelMesh->GetMorphTargets())
{
    const FString OldName = Morph->GetName();
    const FString NewName = OldName.Replace(TEXT("UniversityStudent"), TEXT("glassesGuy"));

    Morph->Rename(*NewName, nullptr); // Attempt rename
    SkelMesh->RegisterMorphTarget(Morph); // Re-register
}

```

### What happened

- Unreal would **show a dialog** listing renamed morphs ✅
- Skeleton curves updated ✅
- But after saving, the **.uasset on disk still had the old names** ❌
- On reload, Unreal reverted everything ❌

I know that USkeletalMesh::RenameMorphTarget exists, I have attempted using it but got just as far.

Please let me know if you have any ideas!
