Features
Fab listing "Mass Battle Crowds" → 1.19.20 source mapping
功能简介 Feature Overview
本页把 Fab 商店页 Mass Battle Crowds — 100,000+ crowd battling at 60 FPS 的核心功能清单逐条对照到 1.19.20 插件源码:每个功能组列出商店页宣称的能力、对应实现的源码位置(链接到本站 API 页)与关键类型/函数。标注 (Repo) 的条目为仓库/Demo 附带内容,不随插件 zip 发行。所有链接均可在左侧目录与各 API 页之间互跳。
This page maps every feature group from the Fab listing Mass Battle Crowds — 100,000+ crowd battling at 60 FPS onto the 1.19.20 plugin source: for each group it lists the advertised capability, the implementing source location (linked to the API pages on this site), and the key types/functions. Items marked (Repo) ship with the repository/demo download, not the plugin zip.
总体架构一句话:纯 CPU 驱动的 Mass Entity 模拟——确定性锁步、单一渲染管线、数据驱动 ECS;每个引擎帧按 6 个 SimStage 派发 14 个处理器,GPU 只做渲染插值,无 GPU 回读。
One-line architecture: a fully CPU-driven Mass Entity simulation — deterministic lockstep, a single rendering pipeline, data-driven ECS; every engine tick dispatches 14 processors across 6 SimStages, the GPU only renders interpolated results, with no GPU readback.
① MassAPI 实体 API Entity API
商店页:完整蓝图工作流 + 精简 C++ API——增删查改 tag / fragment / flag;按模板生成与销毁实体;逐个或全局查询;按组合(tag/fragment/flag)、逻辑(All/Any/None)、优先级过滤;带委托的延迟操作。
Listing: full Blueprint workflow + simplified C++ API — add/get/set/remove tags, fragments, flags; spawn/despawn via templates; query individually or globally; filter by composition (tag/fragment/flag), logic (All/Any/None) and priority; deferred operations with delegates.
| 功能点Feature | 源码位置Source |
|---|---|
| 运行时入口(蓝图函数库 + 子系统)Runtime entry (Blueprint library + subsystem) | MassAPIFuncLib.h · MassAPISubsystem.h |
| 查询构建器(组合/逻辑/优先级/None 列表)Query builder (composition / logic / priority / None lists) | FMassBattleQuery + FEntityQueryBuilder |
| tag/fragment/flag 蓝图节点(K2Node 系列,含可选 WorldContext 引脚)tag/fragment/flag Blueprint nodes (K2Node family, optional WorldContext pin) | MassAPIUncooked module · MassAPIWorldContextPin.h |
| 旗标位域与 FName 旗标注册表Flag bitfields and FName flag registry | MassEntityFlagsTrait.h · MassAPIEnums.h |
| 并行聚合器(工作线程无锁收集→排序→串行冲刷)Parallel gatherer (lock-free worker collection → sort → serial flush) | FParallelGatherer<T> |
| 线程亲和/核心绑定工具与控制台命令Thread-affinity / core-pinning utilities and console commands | MassAPIAffinity.h |
| 延迟操作(命令缓冲 + OnFinished 委托)Deferred operations (command buffer + OnFinished delegate) | bDeferred / OnFinished family |
② 网络复制 Network Replication
商店页:确定性锁步复制;Fix64 定点数学库。10K+ 实体经快照 + 哈希校验的锁步通道复制,双端按同一执行序推进。
Listing: deterministic lockstep replication; Fix64 math library. 10K+ entities replicate through the snapshot + hash-validated lockstep channel while both peers advance the same execution order.
| 功能点Feature | 源码位置Source |
|---|---|
| 帧末哈希 + 快照捕获(统一网络查询)End-of-frame hash + snapshot capture (unified network query) | UMassBattleNetworkProcessor |
| 快照/哈希/片段/标签四合一注册表(一行注册全接线)Snapshot / hash / fragment / tag registry (one line wires everything) | MassBattleSnapshotRegistry.h |
| 快照载荷与实体重建Snapshot payload and entity rebuild | MassBattleSnapshotStructs.h |
| TCP 传输(分块上传、鉴权、网络模拟)TCP transport (chunked upload, auth, network emulation) | MassBattleSnapshotTcpTransport.h |
| 会话管理:GameMode / GameState / PlayerController 三件套Session management: GameMode / GameState / PlayerController trio | NetworkGameModeBase · NetworkGameStateBase · NetworkPlayerControllerBase |
| 失步检测、resync、独立服务器中继与哈希投票Desync detection, resync, listen/dedicated relay and hash voting | UMassBattleNetworkSubsystem · MassBattleNetworkRelay.h |
| 规范化哈希折叠(-0.0/subnormal 冲零,双端一致)Canonicalized hash folding (-0.0 / subnormal zeroing, peer-consistent) | MassBattleHashFold.h |
| 锁步变量仓(逐字段布局、文本通道、指纹转储)Lockstep variable store (per-field layout, text channel, fingerprints) | LockstepVarStore.h |
| Fix64 定点数学(Q31.32 标量/向量/四元数)Fix64 fixed-point math (Q31.32 scalar / vectors / quaternion) | MassBattleFixedPoint.h |
| 失步自动取证/模糊器Automatic desync forensics / fuzzer | MassBattleDesyncAutoDebugger.h |
③ RTS 框选 RTS Selection
商店页:单击、拖框、加选、减选、选择同类;选中反馈:血条、地环、音效等。
Listing: click, drag, add, subtract, select-similar; on-select reactions: health bar, ground ring, sound, etc.
| 功能点Feature | 源码位置Source |
|---|---|
| 选中状态位(BeingSelect 瞬态 / Selected 持久)Selection bits (BeingSelect transient / Selected persistent) | ESelectState · Fragments/Select.h |
| 选择/取消选择蓝图节点(按查询过滤)Select / deselect Blueprint nodes (query-filtered) | SelectAgents / DeselectAgents |
| 屏幕矩形投射世界(拖框底座)Screen-rect deprojection (drag box basis) | DeprojectScreenRectToWorldPoints |
| 选中反馈:血条 / 地环 FX / 音效(渲染 flag + 事件宿主)On-select reactions: health bar / ground-ring FX / sound (render flags + event hosts) | Fragments/HealthBar.h · Fragments/Render.h (selection bits) · HostSubsystem (sound/FX hosts) |
④ 任务系统 Task System
商店页:蓝图异步任务 GenerateFormation / AgentsMoveTo / AgentsChaseAttack;智能泡排布的干净阵型变换。
Listing: BP async tasks GenerateFormation, AgentsMoveTo, AgentsChaseAttack; clean formation transform with smart bubble packing.
| 功能点Feature | 源码位置Source |
|---|---|
| 三个异步任务(矩形/圆形/多边形/三角阵型、移动、追击攻击)The three async tasks (grid/circular/polygon/triangle formations, move-to, chase-attack) | GenerateFormation · AgentsMoveTo · AgentsChaseAttack |
| 任务基类、任务合并与快照重建Task base, task merging and snapshot rebuild | TemplateBase · TaskSnapshot · MergeTemplateMoveToTasks |
| 阵型算法(智能泡排布/贴地解析/三角生长)Formation algorithms (smart bubble packing / on-ground resolve / triangle growth) | MassBattleFormationAlgorithms.h |
| 逻辑帧门控(帧外调用安全排队)Logic-frame gating (out-of-frame calls queue safely) | ExecuteOrDeferToLogicFrame |
⑤ 高级移动 Advanced Movement
商店页:RVO2 或力场避障 + 交通规则;支持飞行、坠落、崎岖表面;生物/载具/飞行器三种模型;地面法线贴合、速度俯仰/侧倾;分组掩码;平滑人群互穿(Repo)。
Listing: RVO2 or force-based avoidance + traffic rules; flying, falling and uneven surfaces; creature / vehicle / aircraft models; ground-normal alignment, velocity pitching/banking; group masks; smooth crowd pass-through (Repo).
| 功能点Feature | 源码位置Source |
|---|---|
| 三种求解模式(RVO2-ORCA / 力场 / 混合)Three solver modes (RVO2-ORCA / force field / hybrid) | EAvoidanceMode(RVO2/ForceField/Hybrid) · AgentMoveProcessor · AgentMoveProcessorFP (fixed-point) |
| 交通规则层(让行仲裁/侧移/车道偏移/贴墙/包抄)Traffic-rules layer (yield arbitration / side-step / lane shift / wall slide / flank) | Fragments/Traffic.h |
| 飞行(FlyHeight 区间)、坠落与崎岖表面Flying (FlyHeight range), falling and uneven surfaces | bCanFly / FlyHeight / CachedGroundNormal |
| 生物 / 载具 / 飞行器移动模型Creature / Vehicle / Aircraft movement models | EMovementModel |
| 地面法线贴合与速度俯仰/侧倾(自然倾斜)Ground-normal alignment and velocity pitch/roll (natural banking) | PitchAngleLimit / RollAngleLimit / LateralSpeedToRollMult / TurnRateToRollMult |
| 避障/碰撞分组掩码(单向忽略)Avoidance / collision group masks (one-way ignore) | IgnoreGroupFlags / IgnoreAvoMask · IgnoreAvoMask / IgnoreCollMask |
| 平滑人群互穿 (Repo)Smooth crowd pass-through (Repo) | 随仓库/Demo 发行,不随插件 zipShips with the repository/demo download, not the plugin zip |
⑥ 混合寻路 Hybrid Pathfinding
商店页:格网与 NavMesh(多层)寻路;流场(人群)与 A*(个体)寻路;Nav 链接与修改器;异步环境查询与更新;多目标流场。
Listing: cell-grid and nav-mesh (multi-layer) pathfinding; flow field (crowds) and A* (individuals); nav links and modifiers; async EnvQuery and update; multi-goal flow fields.
| 功能点Feature | 源码位置Source |
|---|---|
| 流场(人群)生成:格网与 NavMesh 两种来源Flow-field (crowd) generation: cell-grid and NavMesh sources | AFlowField |
| 个体 A* 寻路组件Per-agent A* pathing component | UFFCPathingComponent::FindPath |
| 异步寻路动作节点Async pathing action node | UFFCPathingAsyncAction |
| Nav 链接方向查询(上下行)Nav-link direction query | FNavLinkQueryData / QueryNavLinkDirection |
| 成本/方向/网格修改器(体积与样条)Cost / direction / grid modifiers (volumes and splines) | FlowFieldModifier family |
| 多目标流场(目标组)Multi-goal flow fields (goal sets) | SetLayerGoals (goal arrays) |
| NavMesh 动态重建监听Dynamic NavMesh rebuild listener | OnNavDataGenerationFinished |
| 流场托管层与锁步基底同步Managed flow-field layers and lockstep substrate sync | GetOrAcquireFlowFieldLayer · FlowFieldSync.h |
⑦ 碰撞 Collision
商店页:PBD 或 AVBD(Repo)求解 agent-agent 与 agent-场景;无界碰撞支持子步进与分组掩码;胶囊碰撞体相对旋转。
Listing: PBD or AVBD (Repo) for agent-vs-agent and agent-vs-scene; boundless collision with substepping and group masks; capsule collider relative rotation.
| 功能点Feature | 源码位置Source |
|---|---|
| 独立物理处理器(注册/求解/写回三段)Standalone physics processor (register / solve / write-back) | UMassBattlePhysicsProcessor |
| 物理子系统(块稀疏网格、子步进、过松弛)Physics subsystem (block-sparse grid, substeps, over-relaxation) | UMassBattlePhysicsSubsystem · SetPhysicsSubsteps / SetPhysicsOverRelaxation |
| PBD 求解数据(交接记录/槽位/格子项)PBD solve data (handoff records / slots / cell entries) | MassBattlePhysicsTypes.h |
| 碰撞体(任意朝向、半径随缩放、质量支配比)Colliders (arbitrary orientation, scaled radii, mass dominance) | Fragments/Collider.h |
| 场景障碍(盒/胶囊/样条,网格静态半区)Scene obstacles (box / capsule / spline, static grid half-zone) | UMassBattleObstSubsystem · Fragments/Obstacle.h |
| AVBD 求解器状态(实验,Solver=1)AVBD solver state (experimental, Solver=1) | AVBD solver state(完整 AVBD 方案随仓库)(full AVBD ships with the repo) |
⑧ 压力场 Pressure Field
商店页:为碰撞与避障提供高效、廉价的解耦层。实现为 FFix64 块稀疏标量场:并行原子散射沉积、逐块 Jacobi 扩散、按需稀疏分配,移动求解直接采样压力梯度。
Listing: an effective, cheap decoupling layer for collision and avoidance. Implemented as an FFix64 block-sparse scalar field: parallel atomic-scatter deposits, per-block Jacobi diffusion, sparse allocation on demand; the movement solver samples the pressure gradient directly.
| 功能点Feature | 源码位置Source |
|---|---|
| 压力块/沉积/扩散/采样全族 APIPressure blocks / deposits / diffusion / sampling API family | ResetPressureField / ApplyPressureDeposits / DiffusePressureField / SamplePressure(Fx) |
| 移动求解消费压力梯度(定点路径)Movement solver consumes the pressure gradient (fixed-point path) | AgentMoveProcessorFP (pressure consumer) |
⑨ AI 行为 AI Behaviors
商店页:可配置查询的视觉感知;出生/睡眠/巡逻/追击/攻击/增援/返回/受击/死亡;一体化 Agent 配置数据资产;状态树支持即将推出。
Listing: vision perception with configurable query; birth, sleep, patrol, chase, attack, reinforce, return, hit, death; an all-in-one agent config data asset; state-tree support coming soon.
| 功能点Feature | 源码位置Source |
|---|---|
| 视觉感知(锥体/视距/丢失重追踪)Vision perception (cone / range / lost-target retrace) | Fragments/Trace.h(FTracing) · AgentTraceProcessor + FEffectiveTraceParams |
| 行为状态机(睡眠/巡逻/追击/攻击/增援/返回等)Behavior state machine (sleep / patrol / chase / attack / reinforce / return …) | Fragments/Behavior.h(EBehaviorChoice) · AgentBehaviorProcessor |
| 出生/受击/死亡管线Birth / hit / death pipeline | Appear · AgentReactionProcessor · Death |
| 一体化 Agent 配置数据资产All-in-one agent config data asset | MassBattleAgentConfigDataAsset |
| 增援与返回行为片段Reinforce and return behavior fragments | Reinforce · Return |
⑩ 空间查询 Spatial Query
商店页:哈希网格——为大型开放世界快速优化;形状:球、球扫掠、盒、盒扫掠、扇形、锥、胶囊扫掠、视锥;距离排序(近→远/远→近/随机/无);结果数上限、调试绘制、可见性检查。
Listing: hash grid — fast and optimized for large open worlds; shapes: sphere, sphere sweep, box, box sweep, sector, cone, capsule sweep, view frustum; distance sort (near→far / far→near / random / none); result-count limit, debug draw, visibility check.
| 功能点Feature | 源码位置Source |
|---|---|
| 块稀疏哈希网格(Agent/障碍/掉落三网)Block-sparse hash grids (agent / obstacle / loot grids) | UMassBattleHashGridSubsystem |
| 八族形状查询 *_Internal 家族(球/盒/扇/锥/视锥/扫掠)Eight shape-query *_Internal families (sphere / box / sector / cone / frustum / sweeps) | SphereTraceForCells_Internal … ViewTraceForCells_Internal |
| 实体级胶囊追踪/扫掠(BP 直达)Entity-level capsule trace / sweep (BP-reachable) | CapsuleTraceForAgents / CapsuleSweepForAgents |
| 查询结构:排序/上限/过滤Query struct: sort / limit / filter | FMassBattleQuery (sort modes & KeepCount) |
| 可见性检查(视线)Visibility check (line of sight) | CheckLineOfSight |
| 调试绘制(编辑器调试面板)Debug draw (editor debugger panel) | MassBattleDebuggerCore (debug shapes) |
⑪ 伤害与减益 Damage & Debuff
商店页:三种伤害模式——点伤、径向、光束;三种减益——击飞、减速、时序伤害;六种材质特效——冰冻、燃烧、中毒、受击发光、溶解、队伍色。
Listing: 3 damage modes — point, radial, beam; 3 debuffs — launching, slowing, temporal damage; 6 material FX — frozen, burning, poisoned, hit glow, dissolve, team color.
| 功能点Feature | 源码位置Source |
|---|---|
| 点伤/径向/光束三族(各三重载:默认/命令缓冲/上下文)Point / radial / beam families (three overloads each: default / command buffer / context) | ApplyPointDamageAndDebuff / ApplyRadialDamageAndDebuff / ApplyBeamDamageAndDebuff |
| 伤害/减益载荷结构Damage / debuff payload structs | FDamage_Point / _Radial / _Beam · FDebuff family |
| 击飞(同 tick 收集闭环)与击退队列Launching (same-tick closed loop) and knockback queues | LaunchGatherer (behavior/projectile collection) |
| 时序伤害(周期跳字)Temporal damage (periodic ticks) | Fragments/TemporalDamage.h |
| 减益实体生成子系统Debuff entity spawning subsystem | UMassBattleDebuffSubsystem |
| 六种材质特效(渲染位插值,DP0 位打包)Six material FX (interpolated render bits, DP0 bit-packed) | Target/Interp IceFx·FireFx·PoisonFx·HitGlow·Dissolve + Team channel · RenderBatchData (DP0 layout) |
⑫ 生成 Spawning
商店页:生成 agent、投射物、掉落、Actor、音效、FX;投射物/掉落/FX/音效自动入池;由 agent 事件、掉落事件、投射物事件触发;UObject-Agent 附着。
Listing: spawn agents, projectiles, loot, actors, sounds and FX; projectile / loot / FX / sound auto-pooling; triggered by agent, loot and projectile events; UObject-agent attachment.
| 功能点Feature | 源码位置Source |
|---|---|
| Agent 生成(模板/延迟/形状批量)Agent spawning (template / deferred / shaped batches) | UMassBattleAgentSubsystem |
| 投射物/掉落生成子系统Projectile / loot spawning subsystems | ProjectileSubsystem · LootMonoProcessor (loot spawning) |
| Actor/音效/FX 生成与统一池(闲置寿命)Actor / sound / FX spawning with unified pooling (idle lifespan) | HostSubsystem + PoolIdleLifeSpan · HostMonoProcessor |
| 事件触发生成(事件接收者配置)Event-triggered spawning (event-receiver config) | FAgentEvent / FProjectileEvent(SetEventReceiver) |
| UObject-Agent 附着(锁步安全)UObject-agent attachment (lockstep-safe) | HostHierarchy (attachment hierarchy) · Attach family (RULE8 validation) |
⑬ 投射物实体 Projectile Entity
商店页:四种移动模式——静态、弹道、插值、跟踪;带预测的弹道初速求解器;投射物数据资产。
Listing: 4 movement modes — static, ballistic, interped, tracking; a ballistic launch-velocity solver with prediction; a projectile data asset.
| 功能点Feature | 源码位置Source |
|---|---|
| 四种移动模式枚举The four movement-mode enum | EProjectileMoveMode(Static/Interped/Ballistic/Tracking) |
| 弹道初速求解器(俯仰/速度/带预测,蓝图直达)Ballistic launch-velocity solver (pitch / speed / with prediction, BP-reachable) | solveProjectileVelocityFrom… family |
| 投射物配置数据资产Projectile config data asset | MassBattleProjectileConfigDataAsset |
| 投射物逐帧模拟(命中/表面类型/事件)Per-frame projectile simulation (hits / surface types / events) | ProjectileMonoProcessor · ProjectileHostConfig(OnSurfaceHit) |
⑭ 掉落实体 Loot Entity
商店页:两种移动模式——弹道、插值;掉落数据资产。
Listing: 2 movement modes — ballistic, interped; a loot data asset.
| 功能点Feature | 源码位置Source |
|---|---|
| 掉落配置数据资产(弹道/插值模式)Loot config data asset (ballistic / interped modes) | MassBattleLootConfigDataAsset |
| 掉落参数与运行时状态(价值/继承生成者配置)Loot params and runtime state (value / inherit-from-spawner) | Fragments/Loot.h(FLootParamsRT) · LootHostConfig(InheritFromSpawner) |
| 掉落拾取与统计入账Loot pickup and stat crediting | LootMonoProcessor(FLootScoreDelta) |
⑮ 宿主实体 Host Entity
商店页:桥接 UObject 与实体;附着、池化、生命周期管理。
Listing: bridge UObjects and entities; attachment, pooling, lifetime management.
| 功能点Feature | 源码位置Source |
|---|---|
| 宿主子系统(池/批量分配/延迟销毁)Host subsystem (pools / batch allocation / deferred destroys) | UMassBattleHostSubsystem |
| Actor/FX/音效/投射物四类宿主配置Actor / FX / sound / projectile host configs | ActorHostConfig · FxHostConfig · SoundHostConfig · ProjectileHostConfig |
| 生命周期(闲置寿命/无父销毁/跟随宿主)Lifetime (idle lifespan / despawn-without-parent / follow host) | PoolIdleLifeSpan / bDespawnWhenNoParent / bAttached |
⑯ 事件接口 Event Interface
商店页:三个接口——Agent/Projectile/Loot;Agent 事件 OnAgentAppear、OnTrace、OnMove、OnAttack、OnHit、OnDeath、OnStatistics、OnAnimState、OnPool 等;投射物/掉落事件;任意 Actor 可配置为事件接收者。
Listing: three interfaces — agent / projectile / loot; agent events OnAgentAppear, OnTrace, OnMove, OnAttack, OnHit, OnDeath, OnStatistics, OnAnimState, OnPool and more; projectile / loot events; any actor can be configured as the event receiver.
| 功能点Feature | 源码位置Source |
|---|---|
| 三个事件接口(Agent/Projectile/Loot)The three event interfaces (agent / projectile / loot) | MassBattleAgentInterface · MassBattleProjectileInterface · MassBattleLootInterface |
| 任意 Actor 作接收者(事件路由配置)Any actor as receiver (event-routing config) | FAgentEvent / FProjectileEvent (receivers) · SetEventReceiver |
| Actor 接口(生成/附着通知)Actor interface (spawn / attach notifications) | MassBattleActorInterface (OnActorSpawn etc.) |
⑰ 动画 Animation
商店页:一键 VAT 工具(支持 LOD);Blendspace1D 动画混合;动画批量重命名、自动填充与随机轮播。
Listing: one-click VAT setup utility with LOD support; animation blending with Blendspace1D; batch rename, auto-fill and random cycling of animations.
| 功能点Feature | 源码位置Source |
|---|---|
| 一键 VAT 烘焙工具(序列校验/LOD 分档/命名规范)One-click VAT baking utility (sequence validation / LOD tiers / naming) | CreateAnimDataTexture / CreateAnimsDataFromSequences / ValidateAnimSequences |
| 动画片段(待机-移动 Blendspace1D 混合、蒙太奇槽)Animation fragment (Idle-Move Blendspace1D blending, montage slots) | Fragments/Animation.h(BlendSpace_Idle-Move) |
| 渲染侧动画推进(LOD 分级混合与死亡/出现进度锚定)Render-side animation advance (per-LOD blending, death/appear anchors) | UpdateAnimBlendLevel1/2/3 |
| 随机轮播(蒙太奇随机槽)Random cycling (random montage slot) | FAnimating (random slot pick) |
⑱ 可视化 Visualization
商店页:调试形状绘制;NS GPU 粒子 VAT——CPU 与 GPU 渲染帧插值(翻倍 agent 数);NS GPU 粒子 UI——血条插值、跳字显示 ±999 万亿;NS GPU 合批 FX——爆发粒子(枪口/火花)与附着粒子(弹头/拖尾)。
Listing: debug-shape drawing; NS GPU particle VAT — CPU and GPU render-frame interpolation (doubles agent count); NS GPU particle UI — health-bar interpolation, text pop up to ±999 trillion; NS GPU batched FX — burst particles (muzzle, spark) and attached particles (warhead, trail).
| 功能点Feature | 源码位置Source |
|---|---|
| 调试绘制(形状库 + 只读调试面板)Debug drawing (shape library + read-only debugger panel) | MassBattleDebuggerCore · SMassBattleDebuggerPanel |
| GPU 粒子渲染器(整批推送 + 逻辑帧时间外推)GPU particle renderer (whole-batch push + logic-frame extrapolation) | UMassBattleAgentRenderer · AgentRenderProcessor |
| 批次数据与位打包动态参数(DP0/身份令牌)Batch data and bit-packed dynamic parameters (DP0 / identity tokens) | Fragments/RenderBatchData.h |
| 合批 FX(爆发/附着两种粒子,事件锚点)Batched FX (burst and attached particles, event-time anchors) | FxRenderProcessor · FFxVisualizing (event-anchor fields) |
| GPU 血条插值与跳字(NDC 通道,端本地)GPU health-bar interpolation and text pops (NDC channel, peer-local) | HealthBar (interp / culling) · TextPop (bit-packed value) |
| GPU 着色器(5 个 .ush:预测×3 + 解码×2)GPU shaders (5 .ush: 3 prediction + 2 decode) | Source/MassBattle/HLSL/*.ush |
⑲ Actor 表现 Actor Representation
商店页:AgentComponent / ProjectileComponent / LootComponent 三组件;Agent 在粒子与 Actor 间自动切换;按类生成 Actor 或关卡手工摆放。
Listing: AgentComponent, ProjectileComponent, LootComponent; agent auto-swap between particle and actor; spawn actors by class or hand-place them in the level.
| 功能点Feature | 源码位置Source |
|---|---|
| 三个 Actor 桥接组件(同步变换/锁步会话判据)The three actor-bridge components (transform sync / lockstep-session gating) | AgentComponent · ProjectileComponent · LootComponent · EntityComponentBase(IsLockstepSession) |
| 表现模式(粒子/Actor,LOD 驱动)Representation modes (particle / actor, LOD-driven) | Fragments/LOD.h(Representation) |
| 按类生成 Actor(配置驱动)Spawn actors by class (config-driven) | ActorHostConfig (actor class) |
| 关卡手工摆放(组件即摆即绑)Hand-place in the level (components bind on place) | Obstacle component family (registers on BeginPlay) |
⑳ 统计 Statistics
商店页:总击杀、总伤害、总分、存活时间;OnStatisticsChange 事件或 CreditToEntity 团队统计。
Listing: total kills, total damage, total score, survived time; OnStatisticsChange event or CreditToEntity for team stats.
| 功能点Feature | 源码位置Source |
|---|---|
| 统计片段(总伤害/总击杀/自身价值/玩家信息)Statistics fragment (total damage / kills / self value / player info) | Fragments/Statistics.h |
| OnStatisticsChange 事件(并行收集→串行派发)OnStatisticsChange event (parallel gather → serial dispatch) | OnStatisticsChange · OnStatisticsChangeQueue |
| CreditToEntity(统计记入另一实体,团队/玩家归并)CreditToEntity (credit stats to another entity, team/player rollup) | CreditToEntity / PlayerID / PlayerName |
㉑ 第三方扩展 Third-Party (Repo)
商店页:MCP、战争迷雾、地标系统、小地图等——标注 (Repo),随仓库/Demo 发行,不随插件 zip 发行;插件本体已内含 MassAPI 与 FlowFieldCanvas 模块(安装 MassBattle 前需卸载独立的 MassAPI / FlowFieldCanvas 插件)。
Listing: MCP, fog of war, landmark system, minimap, etc. — marked (Repo): they ship with the repository/demo download, not the plugin zip; the plugin itself already bundles the MassAPI and FlowFieldCanvas modules (uninstall the standalone MassAPI / FlowFieldCanvas plugins before installing MassBattle).
依赖(引擎自带):AnimToTexture、MassGameplay、Niagara。
Dependencies (engine-included): AnimToTexture, MassGameplay, Niagara.