Skip to content

MassEntity 高级篇

alt text

(并非有多高级,主要是涉及实际应用场景,模块代码众多,如 MassGamePlay 的使用)

MassGamePlay

路径:UnrealEngine\Engine\Plugins\Runtime\MassGameplay

模块名描述
MassCommon基础片段,如FTransformFragment
MassMovement包含重要的UMassApplyMovementProcessor处理器,基于实体的速度和力进行移动
MassRepresentation用于在世界中渲染实体的处理器和片段。通常使用ISMC进行渲染,也可以在用户指定的距离将实体替换为完整的Unreal actors
MassSpawner高度可配置的actor类型,可以在指定位置生成特定实体。内置两种选择位置的方式:一种使用Environmental Query System资产,另一种使用基于标签的ZoneGraph查询。Mass Spawner actor似乎主要用于一次性初始生成的对象,如NPC、树木等,而不是动态生成的对象(如投射物)
MassActorsUE5 actor框架和Mass之间的桥梁。一种将实体转换为"Agents"的片段类型,可以在两个方向(或双向)交换数据
MassLODLOD处理器,可以管理不同类型的细节级别,从渲染到基于片段设置的不同速率的tick。目前用于可视化和复制
MassReplicationMass的复制支持!其他模块通过重写UMassReplicatorBase来复制内容。实体被赋予一个单独的Network ID用于网络传输,而不是EntityHandle
MassSignals允许实体之间发送命名信号的系统
MassSmartObjects让实体可以"声明"SmartObjects以与之交互

Traits

MassGameplay中,最重要的概念就是Traits

Mass AI

一些系列AI功能的总称

alt text (Mass AI和 Mass Crowd是两个模块, Mass Crowd 内部引入了 Mass AI 和 )

插件名描述路径
ZoneGraph使用配置定义的车道来引导zonegraph路径的关卡内样条线和形状!主要用于Mass Crowd成员的移动,如人行道、道路等\UnrealEngine\Engine\Plugins\Runtime\ZoneGraph
StateTree一个可以与Mass配合使用的新型轻量级通用状态机。其中之一用于在示例中为锥形物体提供移动目标\UnrealEngine\Engine\Plugins\Runtime\StateTree
MassAI给Mass Entity 提供一系列 AI 功能UnrealEngine\Engine\Plugins\AI\MassAI
MassCrowd集大成者,包含了上面全部插件\UnrealEngine\Engine\Plugins\AI\MassCrowd