跳转到内容
返回
本页目录

使用文档

SimpleAssetNamer 使用文档

SimpleAssetNamer 的完整中文产品使用文档

支持 Unreal Engine 5.2–5.8

打开 编辑 → 项目设置 → Simple Asset Namer

选项说明
Auto Rename on Create创建或导入资产时自动重命名
Auto Rename on Rename手动重命名后自动修正资产名称
LanguageUI 语言:中文 / 英文(默认英文),实时切换所有界面文本、提示信息和日志输出
选项说明
Filter Type黑名单(排除指定路径)/ 白名单(仅处理指定路径)
Exclude Paths黑名单模式下跳过这些路径下的资产
Include Paths白名单模式下仅处理这些路径下的资产

默认排除路径:

  • /Game/__ExternalActors__ - World Partition 自动生成
  • /Game/__ExternalObjects__ - World Partition 自动生成
  • /Game/Developers - 开发者个人文件夹
  • /Game/Collections - 收藏夹
选项说明默认值
Delimiter生成名称时使用的分隔符_
Delimiter Detection List用于检测现有名称中的分隔符_、-、.
Legacy Affixes用于检测旧命名模式的前缀/后缀列表-

示例:输入 bp-MyActor 或 bp.MyActor → 输出 BP_MyActor

选项说明
Asset Type Naming Rules资产类型到前缀/后缀的映射,完全可自定义

命名格式:前缀_名称_后缀(后缀可选)

默认规则(52 种类型):

分类资产类型前缀后缀示例
游戏逻辑GameModeBaseGMGM_MyMode
GameStateBaseGSGS_MyState
PlayerControllerPCPC_MyController
PlayerStatePSPS_MyState
CharacterCHARCHAR_MyCharacter
蓝图BlueprintBPBP_MyActor
BlueprintGeneratedClassBPIBPI_MyInterface
BlueprintFunctionLibraryBPFLBPFL_MyLib
BlueprintMacroLibraryBPMLBPML_MyMacro
UserDefinedEnumEE_MyEnum
UserDefinedStructFF_MyStruct
网格StaticMeshSMSM_Chair
SkeletalMeshSKSK_Character
材质MaterialMM_Wood
MaterialInstanceMIMI_Wood_Dark
MaterialInstanceConstantMIMI_Wood_Const
MaterialFunctionMFMF_Blend
MaterialParameterCollectionMPCMPC_Global
SubsurfaceProfileSSPSSP_Skin
动画AnimBlueprintABPABP_Character
AnimSequenceASAS_Walk
AnimMontageAMAM_Attack
AnimCompositeACAC_Combo
AimOffsetBlendSpaceAOAO_Aim
BlendSpaceBSBS_Locomotion
SkeletonSKELSKEL_Character
音频SoundWaveSS_Footstep
SoundCueSCSC_Ambient
SoundAttenuationATTATT_Default
SoundClassSClassSClass_Music
SoundMixMixMix_Default
特效ParticleSystemPSPS_Fire
NiagaraSystemNSNS_Smoke
NiagaraEmitterNENE_Spark
贴图Texture2DTT_Wood_D
TextureCubeTCubeT_Sky_Cube
TextureRenderTarget2DRT2DRT_Scene_2D
TextureRenderTargetCubeRTCubeRT_Reflect_Cube
TextureRenderTargetVolumeRTVolumeRT_Cloud_Volume
MediaTextureMTMT_Video
UIUserWidgetWBPWBP_MainMenu
FontFontFont_Default
EditorUtilityWidgetEUWEUW_MyTool
AIBehaviorTreeBTBT_Enemy
BlackboardDataBBBB_Enemy
BTDecoratorBTDBTD_IsAlive
BTServiceBTSBTS_UpdateTarget
AIControllerAICAIC_Enemy
EnvQueryEQSEQS_FindCover
数据DataTableDTDT_Items
DataAssetDADA_Config
CurveFloatCurveFloatCurve_Damage_Float
CurveVectorCurveVectorCurve_Path_Vector
CurveLinearColorCurveColorCurve_Fade_Color
物理PhysicsAssetPHYSPHYS_Character
PhysicalMaterialPMPM_Metal
输入InputActionIAIA_Jump
InputMappingContextIMCIMC_Default
过场LevelSequenceLSLS_Intro
CameraAnimationSequenceCACA_Shake
关卡WorldMAPMAP_Level1
地形LandscapeLayerInfoObjectLLLL_Grass
LandscapeGrassTypeLGLG_Meadow
植被FoliageTypeFTFT_Tree
Paper2DPaperSpriteSPRSPR_Player
PaperFlipbookFBFB_Walk
PaperTileSetTSTS_Ground
PaperTileMapTMTM_Level1

选项触发条件
Auto Rename on Create创建或导入资产时自动重命名
Auto Rename on Rename手动重命名后自动修正名称

示例:创建蓝图 MyCharacter → 自动重命名为 BP_MyCharacter

右键菜单项位于 Simple Asset Namer 二级子菜单下。

资产右键菜单

  1. 选择一个或多个资产
  2. 右键 → Simple Asset Namer → Auto Rename

文件夹右键菜单

  1. 右键点击文件夹
  2. Simple Asset Namer → Auto Rename All Assets

文件夹批量重命名使用三级渐进策略:

阶段条件处理方式
批量快速总数 >= 100分 10 批处理
重试失败有批次失败合并失败批次重试一次
逐个处理仍然失败逐个处理并提供详细错误

总数 < 100 时直接逐个处理。

完成后显示结果窗口,包含三个标签页:

  • 成功:成功重命名的资产
  • 错误:失败的资产及错误原因
  • 跳过:跳过的资产及原因

常见错误:

错误信息说明
Source control not connected版本控制未连接
Checked out by another user文件被其他用户签出
File is read-only文件为只读
Target file already exists目标文件已存在
Asset has unsaved changes资产有未保存的更改

Q:重命名后资产引用会断吗?

不会。使用 UE 官方 API,自动处理引用并创建重定向器。

Q:可以撤销吗?

可以,支持 Ctrl+Z 撤销。

Q:为什么有些资产没被重命名?

  1. 已经是标准名称
  2. 该资产类型没有配置命名规则
  3. 路径被过滤器规则排除
  4. 文件为只读且无法签出

Q:如何添加自定义规则?

设置 → Asset Type Naming Rules → 点击 + 添加新规则。

Q:批量重命名显示很多未知错误怎么办?

先修复重定向器:内容浏览器 → 右键文件夹 → Fix Up Redirectors in Folder,然后重新运行重命名。


如有使用问题或合作需求,请前往联系页面。

使用资产类型规则、路径范围和词缀配置,处理新建资产及已有资产的命名。

将插件文件夹复制到项目的 Plugins 目录,重启编辑器。

路径:Edit > Project Settings > Simple Asset Namer

基础配置:

  1. General:开启/关闭自动重命名
  2. Filter:配置黑名单/白名单路径
  3. Delimiter:配置分隔符和旧词缀
  4. Naming Rules:为每种资产类型配置前缀和后缀

使用前检查默认规则是否符合项目的命名约定。

  • 自动模式:正常工作即可,创建/导入资产时自动命名
  • 批量模式:选中文件夹,使用批量重命名功能

命名规则配置:

每种资产类型可以配置独立的前缀和后缀:

USTRUCT(BlueprintType)
struct FAssetNamingRule
{
FString Prefix; // 如 "BP"
FString Suffix; // 如 "Mat"
};
// 配置示例
TMap<TSoftClassPtr<UObject>, FAssetNamingRule> AssetTypeNamingRules;
// UBlueprint → Prefix: "BP", Suffix: ""
// UStaticMesh → Prefix: "SM", Suffix: ""
// UMaterialInstance → Prefix: "MI", Suffix: ""
// UTexture2D → Prefix: "T", Suffix: ""

核心名称提取:

插件会先分析现有名称结构,提取核心名称,再生成标准命名,而非直接在原名前加前缀:

输入: "bp_MyCharacter" → 核心: "MyCharacter" → 输出: "BP_MyCharacter"
输入: "SM-tree-01" → 核心: "tree-01" → 输出: "SM_tree_01"
输入: "Blueprint_Player" → 核心: "Player" → 输出: "BP_Player"
输入: "MyMaterial_Mat" → 核心: "MyMaterial" → 输出: "M_MyMaterial"

提取过程会尝试匹配并移除:

  1. 当前类型配置的前缀/后缀
  2. 旧词缀列表(LegacyAffixes)中的所有词缀
  3. 分隔符识别列表中的分隔符(_、-、.)

黑名单模式(默认):

排除指定路径下的资产,默认排除 UE 内部目录:

ExcludePaths:
/Game/__ExternalActors__ // World Partition 自动生成
/Game/__ExternalObjects__ // World Partition 自动生成
/Game/Developers // 开发者个人目录
/Game/Collections // 集合目录

白名单模式:

只处理指定路径下的资产,适合渐进式推行命名规范:

IncludePaths:
/Game/Characters/
/Game/Items/
// 生成命名时使用的连接符
FString Delimiter = "_"; // BP_MyActor
// 识别现有命名时的分隔符列表
TArray<FString> DelimiterDetectionList = {"_", "-", "."};
// 旧词缀列表(用于识别历史命名的前缀和后缀)
TArray<FString> LegacyAffixes; // 如 "bp", "Blueprint", "sm", "mat"
  • bAutoRenameOnCreate:创建或导入资产时按规则命名。
  • bAutoRenameOnRename:手动改名后重新检查命名规则。

批量重命名后会弹出详细的结果对话框,包含:

  • 成功数量和明细(原名 → 新名)
  • 跳过数量和原因(已是标准名称、无匹配规则、目标已存在等)
  • 错误数量和具体信息

选择目标文件夹后使用批量重命名入口。先检查包含或排除路径,再查看成功、跳过与错误明细。批量操作前保留可恢复的版本,并核对重命名后的资产引用。