### Real-time Dismemberment Editor Development Guide #### 引擎版本:UE5.5 ### 概述 FLESH 是一个用于 UE5.5 的高级肢解系统插件,提供实时布尔切割、多层系统和物理交互功能。该系统允许开发者创建逼真的肢解效果,适用于各种游戏类型。 ### 核心功能 - 实时布尔切割引擎编辑器:支持通过矩阵变量输入定义切割角度和位置 - 多层实时布尔切割编辑器:可视化编辑多层切割效果 - 多层系统:包括骨骼和内脏的分层模拟 - 多层物理系统:内脏物理和骨骼物理的独立模拟 - 血液系统:集成 Niagara 粒子效果、血池和贴花 - 物理交互:断肢与环境的物理交互 - 蓝图组件:支持断肢、血液、骨骼、内脏等不同类型的组件插槽和属性分类 ### 交互式编辑器 FLESH 插件包含一个可在 UE 编辑器中单独开启的交互式编辑器,具有以下特点: - 支持交互式布尔切割操作 - 支持矩阵变量输入定义切割角度和位置 - 支持不同部位的 Patch 或自定义 Patch - 提供实时预览和调试功能 - 分类管理断肢、血液、骨骼、内脏等不同类型的组件接口和属性 ### 系统架构 FLESH 插件的系统架构分为以下几个主要模块: #### 核心功能模块 - `DismembermentSystem`:主要肢解系统组件,处理骨骼切割和物理交互 - `AnatomicalLayerSystem`:多层系统管理,处理骨骼、内脏等不同层次 - `BloodSystem`:血液效果系统,管理血液粒子、血池和贴花 - `BooleanCutTool`:布尔切割工具,提供实时切割功能 #### 编辑器架构 - `DismembermentEditor`:主编辑器界面,提供可视化编辑工具 - `AnatomicalStructureBrush`:解剖结构笔刷,用于创建和编辑解剖结构 #### 物理模拟子系统 - 支持骨骼物理:使用 PhysicsAsset 进行骨骼物理模拟 - 支持内脏物理:使用软体物理模拟内脏变形和交互 - 支持断裂阈值曲线:基于物理力量的断裂模拟 #### 数据序列化模块 - 支持保存和加载肢解设置 - 支持导出和导入预设 ### 使用指南 #### 安装 1. 将 FLESH 插件复制到项目的 Plugins 文件夹中 2. 在 UE 编辑器中启用插件 3. 重启编辑器 #### 基本使用 1. 向角色添加 `UDismembermentSystem` 组件 2. 配置骨骼映射和切割设置 3. 使用 `BloodSystem` 组件设置血液效果 4. 在游戏中调用相应函数触发肢解效果 #### 编辑器使用 1. 在编辑器中选择 "FLESH 编辑器" 打开交互式编辑器 2. 加载骨骼网格体进行编辑 3. 使用布尔切割工具定义切割平面 4. 设置多层系统参数 5. 预览效果并调整参数 6. 保存设置应用到游戏中 ### 性能优化策略 - 异步物理计算:将非关键物理模拟任务分配到任务图线程池 - 增量资源加载:使用 Streamable Manager 动态加载高精度解剖资源 - LOD 系统:根据距离和性能需求调整物理和视觉细节 ### 蓝图接口 FLESH 插件提供了全面的蓝图接口,允许开发者无需编写代码即可使用所有功能: - 肢解系统接口:控制切割和肢解 - 血液系统接口:管理血液效果 - 物理系统接口:调整物理参数 - 编辑器接口:运行时修改设置 ### 技术实现 - 使用 GeometryScript 进行实时布尔切割 - 使用 Niagara 系统进行高级粒子效果 - 使用 PhysicsAsset 和 ChaosPhysics 进行物理模拟 - 使用程序化网格体进行动态网格生成 ### 版本信息 - 当前版本:1.0 - UE 版本要求:5.5+ - 许可证:[您的许可证信息] ### 参考资源 - 《死亡岛2》的肢解系统:https://www.youtube.com/watch?v=d3VrPOm-KDE - Dead Island 2 的 FLESH 系统:https://www.youtube.com/watch?v=GW7N83E1NqY&t=542s - UE5 内置 Geometry Script:https://dev.epicgames.com/documentation/en-us/unreal-engine/geometry-scripting-users-guide-in-unreal-engine ### 联系方式 如有问题或建议,请联系:[您的联系信息]