SimpleAssetNamer 使用文档
SimpleAssetNamer 的完整中文产品使用文档
支持 Unreal Engine 5.2–5.8
打开 编辑 → 项目设置 → Simple Asset Namer
1.1 通用
Section titled “1.1 通用”| 选项 | 说明 |
|---|---|
| Auto Rename on Create | 创建或导入资产时自动重命名 |
| Auto Rename on Rename | 手动重命名后自动修正资产名称 |
| Language | UI 语言:中文 / 英文(默认英文),实时切换所有界面文本、提示信息和日志输出 |
1.2 过滤器
Section titled “1.2 过滤器”| 选项 | 说明 |
|---|---|
| Filter Type | 黑名单(排除指定路径)/ 白名单(仅处理指定路径) |
| Exclude Paths | 黑名单模式下跳过这些路径下的资产 |
| Include Paths | 白名单模式下仅处理这些路径下的资产 |
默认排除路径:
/Game/__ExternalActors__- World Partition 自动生成/Game/__ExternalObjects__- World Partition 自动生成/Game/Developers- 开发者个人文件夹/Game/Collections- 收藏夹
1.3 分隔符
Section titled “1.3 分隔符”| 选项 | 说明 | 默认值 |
|---|---|---|
| Delimiter | 生成名称时使用的分隔符 | _ |
| Delimiter Detection List | 用于检测现有名称中的分隔符 | _、-、. |
| Legacy Affixes | 用于检测旧命名模式的前缀/后缀列表 | - |
示例:输入 bp-MyActor 或 bp.MyActor → 输出 BP_MyActor
1.4 命名规则
Section titled “1.4 命名规则”| 选项 | 说明 |
|---|---|
| Asset Type Naming Rules | 资产类型到前缀/后缀的映射,完全可自定义 |
命名格式:前缀_名称_后缀(后缀可选)
默认规则(52 种类型):
| 分类 | 资产类型 | 前缀 | 后缀 | 示例 |
|---|---|---|---|---|
| 游戏逻辑 | GameModeBase | GM | GM_MyMode | |
| GameStateBase | GS | GS_MyState | ||
| PlayerController | PC | PC_MyController | ||
| PlayerState | PS | PS_MyState | ||
| Character | CHAR | CHAR_MyCharacter | ||
| 蓝图 | Blueprint | BP | BP_MyActor | |
| BlueprintGeneratedClass | BPI | BPI_MyInterface | ||
| BlueprintFunctionLibrary | BPFL | BPFL_MyLib | ||
| BlueprintMacroLibrary | BPML | BPML_MyMacro | ||
| UserDefinedEnum | E | E_MyEnum | ||
| UserDefinedStruct | F | F_MyStruct | ||
| 网格 | StaticMesh | SM | SM_Chair | |
| SkeletalMesh | SK | SK_Character | ||
| 材质 | Material | M | M_Wood | |
| MaterialInstance | MI | MI_Wood_Dark | ||
| MaterialInstanceConstant | MI | MI_Wood_Const | ||
| MaterialFunction | MF | MF_Blend | ||
| MaterialParameterCollection | MPC | MPC_Global | ||
| SubsurfaceProfile | SSP | SSP_Skin | ||
| 动画 | AnimBlueprint | ABP | ABP_Character | |
| AnimSequence | AS | AS_Walk | ||
| AnimMontage | AM | AM_Attack | ||
| AnimComposite | AC | AC_Combo | ||
| AimOffsetBlendSpace | AO | AO_Aim | ||
| BlendSpace | BS | BS_Locomotion | ||
| Skeleton | SKEL | SKEL_Character | ||
| 音频 | SoundWave | S | S_Footstep | |
| SoundCue | SC | SC_Ambient | ||
| SoundAttenuation | ATT | ATT_Default | ||
| SoundClass | SClass | SClass_Music | ||
| SoundMix | Mix | Mix_Default | ||
| 特效 | ParticleSystem | PS | PS_Fire | |
| NiagaraSystem | NS | NS_Smoke | ||
| NiagaraEmitter | NE | NE_Spark | ||
| 贴图 | Texture2D | T | T_Wood_D | |
| TextureCube | T | Cube | T_Sky_Cube | |
| TextureRenderTarget2D | RT | 2D | RT_Scene_2D | |
| TextureRenderTargetCube | RT | Cube | RT_Reflect_Cube | |
| TextureRenderTargetVolume | RT | Volume | RT_Cloud_Volume | |
| MediaTexture | MT | MT_Video | ||
| UI | UserWidget | WBP | WBP_MainMenu | |
| Font | Font | Font_Default | ||
| EditorUtilityWidget | EUW | EUW_MyTool | ||
| AI | BehaviorTree | BT | BT_Enemy | |
| BlackboardData | BB | BB_Enemy | ||
| BTDecorator | BTD | BTD_IsAlive | ||
| BTService | BTS | BTS_UpdateTarget | ||
| AIController | AIC | AIC_Enemy | ||
| EnvQuery | EQS | EQS_FindCover | ||
| 数据 | DataTable | DT | DT_Items | |
| DataAsset | DA | DA_Config | ||
| CurveFloat | Curve | Float | Curve_Damage_Float | |
| CurveVector | Curve | Vector | Curve_Path_Vector | |
| CurveLinearColor | Curve | Color | Curve_Fade_Color | |
| 物理 | PhysicsAsset | PHYS | PHYS_Character | |
| PhysicalMaterial | PM | PM_Metal | ||
| 输入 | InputAction | IA | IA_Jump | |
| InputMappingContext | IMC | IMC_Default | ||
| 过场 | LevelSequence | LS | LS_Intro | |
| CameraAnimationSequence | CA | CA_Shake | ||
| 关卡 | World | MAP | MAP_Level1 | |
| 地形 | LandscapeLayerInfoObject | LL | LL_Grass | |
| LandscapeGrassType | LG | LG_Meadow | ||
| 植被 | FoliageType | FT | FT_Tree | |
| Paper2D | PaperSprite | SPR | SPR_Player | |
| PaperFlipbook | FB | FB_Walk | ||
| PaperTileSet | TS | TS_Ground | ||
| PaperTileMap | TM | TM_Level1 |
2. 使用方法
Section titled “2. 使用方法”2.1 自动重命名
Section titled “2.1 自动重命名”| 选项 | 触发条件 |
|---|---|
| Auto Rename on Create | 创建或导入资产时自动重命名 |
| Auto Rename on Rename | 手动重命名后自动修正名称 |
示例:创建蓝图 MyCharacter → 自动重命名为 BP_MyCharacter
2.2 通过右键菜单批量重命名
Section titled “2.2 通过右键菜单批量重命名”右键菜单项位于 Simple Asset Namer 二级子菜单下。
资产右键菜单
- 选择一个或多个资产
- 右键 → Simple Asset Namer → Auto Rename
文件夹右键菜单
- 右键点击文件夹
- Simple Asset Namer → Auto Rename All Assets
2.3 智能处理策略
Section titled “2.3 智能处理策略”文件夹批量重命名使用三级渐进策略:
| 阶段 | 条件 | 处理方式 |
|---|---|---|
| 批量快速 | 总数 >= 100 | 分 10 批处理 |
| 重试失败 | 有批次失败 | 合并失败批次重试一次 |
| 逐个处理 | 仍然失败 | 逐个处理并提供详细错误 |
总数 < 100 时直接逐个处理。
2.4 结果对话框
Section titled “2.4 结果对话框”完成后显示结果窗口,包含三个标签页:
- 成功:成功重命名的资产
- 错误:失败的资产及错误原因
- 跳过:跳过的资产及原因
常见错误:
| 错误信息 | 说明 |
|---|---|
| Source control not connected | 版本控制未连接 |
| Checked out by another user | 文件被其他用户签出 |
| File is read-only | 文件为只读 |
| Target file already exists | 目标文件已存在 |
| Asset has unsaved changes | 资产有未保存的更改 |
3. 常见问题
Section titled “3. 常见问题”Q:重命名后资产引用会断吗?
不会。使用 UE 官方 API,自动处理引用并创建重定向器。
Q:可以撤销吗?
可以,支持 Ctrl+Z 撤销。
Q:为什么有些资产没被重命名?
- 已经是标准名称
- 该资产类型没有配置命名规则
- 路径被过滤器规则排除
- 文件为只读且无法签出
Q:如何添加自定义规则?
设置 → Asset Type Naming Rules → 点击 + 添加新规则。
Q:批量重命名显示很多未知错误怎么办?
先修复重定向器:内容浏览器 → 右键文件夹 → Fix Up Redirectors in Folder,然后重新运行重命名。
如有使用问题或合作需求,请前往联系页面。
- 联系入口: 联系与合作
使用说明补充
Section titled “使用说明补充”SimpleAssetNamer 使用指南
Section titled “SimpleAssetNamer 使用指南”使用资产类型规则、路径范围和词缀配置,处理新建资产及已有资产的命名。
步骤1:安装插件
Section titled “步骤1:安装插件”将插件文件夹复制到项目的 Plugins 目录,重启编辑器。
步骤2:配置命名规则
Section titled “步骤2:配置命名规则”路径:Edit > Project Settings > Simple Asset Namer
基础配置:
- General:开启/关闭自动重命名
- Filter:配置黑名单/白名单路径
- Delimiter:配置分隔符和旧词缀
- Naming Rules:为每种资产类型配置前缀和后缀
使用前检查默认规则是否符合项目的命名约定。
步骤3:开始使用
Section titled “步骤3:开始使用”- 自动模式:正常工作即可,创建/导入资产时自动命名
- 批量模式:选中文件夹,使用批量重命名功能
命名规则配置:
每种资产类型可以配置独立的前缀和后缀:
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"提取过程会尝试匹配并移除:
- 当前类型配置的前缀/后缀
- 旧词缀列表(
LegacyAffixes)中的所有词缀 - 分隔符识别列表中的分隔符(
_、-、.)
黑名单模式(默认):
排除指定路径下的资产,默认排除 UE 内部目录:
ExcludePaths: /Game/__ExternalActors__ // World Partition 自动生成 /Game/__ExternalObjects__ // World Partition 自动生成 /Game/Developers // 开发者个人目录 /Game/Collections // 集合目录白名单模式:
只处理指定路径下的资产,适合渐进式推行命名规范:
IncludePaths: /Game/Characters/ /Game/Items/分隔符与历史词缀
Section titled “分隔符与历史词缀”// 生成命名时使用的连接符FString Delimiter = "_"; // BP_MyActor
// 识别现有命名时的分隔符列表TArray<FString> DelimiterDetectionList = {"_", "-", "."};
// 旧词缀列表(用于识别历史命名的前缀和后缀)TArray<FString> LegacyAffixes; // 如 "bp", "Blueprint", "sm", "mat"自动处理开关
Section titled “自动处理开关”- bAutoRenameOnCreate:创建或导入资产时按规则命名。
- bAutoRenameOnRename:手动改名后重新检查命名规则。
批量重命名后会弹出详细的结果对话框,包含:
- 成功数量和明细(原名 → 新名)
- 跳过数量和原因(已是标准名称、无匹配规则、目标已存在等)
- 错误数量和具体信息
选择目标文件夹后使用批量重命名入口。先检查包含或排除路径,再查看成功、跳过与错误明细。批量操作前保留可恢复的版本,并核对重命名后的资产引用。