插件概述¶
Modular Building System 是一个面向 Unreal Engine 的模块化建筑插件,适用于生存、沙盒、基地建造和多人游戏。
插件核心使用 C++ 实现,并向蓝图开放常用组件、数据资产、事件和扩展接口。标准建造流程可以在纯蓝图项目中完成,无需修改插件源码。
核心功能¶
- HISM 与 Actor 两种建筑渲染模式
- 基于 Building Entity 和 Chunk 的建筑管理
- 建筑预览、放置、移动和拆除
- Static Mesh Socket 吸附
- 结构支撑与坍塌检测
- 服务器权威的多人建造流程
- 可扩展的成本、权限和特效系统
核心架构¶
Building Entity¶
每个已放置建筑都会对应一个 Building Entity,用于保存:
- Entity ID
- World Transform
- Building Asset ID
- Owner
- Runtime Attributes
- Gameplay Tags
Building Entity 是建筑的逻辑数据,不等同于 Unreal Actor。
无论建筑使用 HISM Instance 还是独立 Actor 表现,系统都会通过 Building Entity 统一管理。
Chunk System¶
建筑会根据世界位置分配到不同 Chunk。
Chunk 负责管理一定区域内的建筑实体、视觉对象、实例映射和网络复制数据,从而降低大规模建筑场景的查询和维护成本。
Rendering Modes¶
插件支持两种主要渲染模式:
- HISM: 适合地基、墙体、地板和屋顶等大量重复的静态模块。
- Actor: 适合门、箱子、工作台和功能设备等需要独立逻辑的建筑。
两种模式可以在同一个项目中混合使用。
建造流程¶
标准建造流程如下:
客户端预览仅用于交互反馈,正式建造结果以服务器验证为准。
扩展能力¶
项目可以通过蓝图或 C++ 接入自己的:
- 背包和资源系统
- 货币与建造成本
- 建造权限
- Niagara 特效和音效
- UI 提示
- 自定义建筑 Actor
插件提供基础流程和扩展接口,不强制项目使用特定的背包、货币或交互系统。
适用项目¶
插件适合:
- 生存与沙盒游戏
- 基地建造游戏
- 塔防游戏
- 合作多人游戏
- 大规模模块化建筑系统