建议遵守的规范
所有的插件都将存放在根目录的GamePlugins中
插件由pak文件和与pak文件同名的描述文件(json)组成,文件名称可以使用GUID生成,确保唯一性,不存在描述文件的pak文件将不会被加载
为提高你的开发效率以及团队合作的便利,建议遵循以下规范:
-
插件的一切开发都在Game Feature中完成,你不需要在项目Content中创建任何东西
-
使用良好的资产命名规范
- 不要使用中文命名任何东西
- 对于模型,贴图等资产
- 如果是通用的,则将它们放在一个文件夹中,命名为Library,其中不需要进一步细分,因为引擎自带的资产过滤要比手动点击对应文件夹快得多
- 如果是特有的,则放在它们所属的文件夹中
以下是一些常用资产的建议前缀:
| 资产类型 | 命名方式 |
|---|---|
| 贴图 | T |
| 用户界面 | UW |
| 静态网格体 | SM |
| 骨骼网格体 | SKM |
| 骨骼 | Ske |
| 蓝图类 | BP_父类缩写_xxx |
| 动画蓝图 | AnimBP |
| 动画序列 | AS |
| 动画蒙太奇 | AM |
| IK绑定 | IKRig |
| IK重定向 | IKRetargeter |
| 音波 | WAV |
| MetaSound源 | MS |
| 音频脉冲响应 | IR |
| 蓝图函数库 | BFL |
| 蓝图宏库 | BML |
| 关卡 | Level |
| 材质 | M |
| 材质实例 | MI |
| 材质函数 | MF |
| 材质参数集 | MPC |
| Gameplay相关 | GM(GameMode) GS(GameState) PC(PlayerController) PS(PlayerState) |
| Niagara系统 | NS |
| Niagara发射器 | NE |
| Niagara参数集 | NPC |
| Niagara模块脚本 | NMC |
| Niagara函数脚本 | NFC |
| 人工智能黑板 | BB |
| 人工智能行为树 | BT |
| PCG图表 | PCG |
| 数据资产 | DA |
| 数据表格 | DT |
| 字符串表格 | ST |
| 输入操作 | IA |
| 输入映射上下文 | IMC |
| 曲线 | CF(浮点曲线) CL(线性颜色曲线) CV(向量曲线) |
| 关卡序列 | LS |
| 集合体集缓存(abc顶点动画) | GeoCache |
建议的文件结构
这不是必须的文件结构,而是一些建议,健康的文件结构是一个良好的习惯
- Abilities(存放所有的技能)
- Actors(存放关卡代理等Actor)
- Components(存放Plugin挂载件)
- FX(存放特效以及它们的资产)
- LevelInfo(存放关卡的注册数据)
- Levels(存放关卡)
- Materials(存放通用材质)
- Models(存放通用模型)
- PCG(存放PCG图表)
- Resources(存放杂项资产)
- Textures(存放通用纹理)
- Units(存放工具类资产)