Back to blog

WanToFight: Real-Time Generative Game Engine for Multi-Player Combat Interaction

A generative game engine built on Wan-1.3B that simulates real-time two-player KOF '97 gameplay from keyboard input, achieving 30 FPS on a single RTX 5090 with streaming autoregressive generation, player association via CLIP, and 4-step DMD distillation.

一、论文概述

字段内容
标题WanToFight: Real-Time Generative Game Engine for Multi-Player Combat Interaction
arXiv2607.12592v1 [cs.CV]
发表日期2026年7月14日
作者Li Hu, Guangyuan Wang, Peng Zhang, Bang Zhang
单位Tongyi Lab, Alibaba
项目页面https://humanaigc.github.io/wantofight/
GitHub代码无(尚未开源)

摘要

本文提出 WanToFight,一个基于键盘输入实时模拟双人《拳皇97》(KOF ‘97) 对战的生成式游戏引擎。此前的工作要么专注于单人第一人称场景,要么专注于非实时的合作场景;而多玩家控制、实时推理、复杂物理交互和对抗性游戏的联合建模此前从未被同时解决。WanToFight 在 Wan-1.3B 视频扩散 Transformer 基础上构建三个核心组件:(1) 采用块因果注意力 (block-causal attention) 和滚动 KV 缓存的流式自回归生成器;(2) 通过参考图像将每个玩家的键盘信号绑定到对应角色身份的 Player Association 模块;(3) 使用单玩家到完整游戏流程课程训练的门控式局部因果键盘注入模块。配合四步 DMD 蒸馏和剪枝 VAE 解码器,模型在单张 NVIDIA RTX 5090 上以 512x384 分辨率维持 30 FPS 的生成速度,贯穿整场对局。据作者所知,WanToFight 是首个在同一系统中融合多玩家控制、实时推理、复杂物理交互和对抗性游戏的生成式游戏引擎。


二、核心思想

问题定义

传统游戏开发依赖三个独立构建的组件:手工制作的素材、硬编码的游戏逻辑和一个渲染引擎。这一流水线劳动密集且体验受限于开发者预先设想的内容。最近的视频扩散模型进展使得基于玩家输入的交互式世界模拟成为可能,但现有生成式游戏引擎面临以下挑战:

  1. 帧精确的物理交互 — 攻击动画必须在对手处于射程的精确帧连接,接触触发正确的击退、命中硬直和 KO 机制。
  2. 高频组合输入 — 高手操作需要双方玩家在极短时间内发出复杂的组合按键序列。
  3. 多玩家身份绑定 — 在 16 键联合输入空间中,当两个角色换位或互相遮挡时,必须保持正确的按键映射关系,否则会出现”身份交叉(crosstalk)“。

解决方案总览

组件解决的失败模式核心设计
Streaming Autoregressive Engine实时推理需求块因果注意力 + 滚动 KV 缓存 + 三阶段训练(双向预训练 -> 因果适应 -> DMD蒸馏)
Player Association多玩家身份混淆冻结 CLIP 编码器 + 引用图像驱动的交叉注意力
Gated Keyboard Injection嘈杂/空闲输入的干扰逐层注入 + 窗口注意力(大小=3) + sigmoid 门控融合

三、技术架构

3.1 整体架构

模型基于 Wan-1.3B 视频扩散 Transformer,将其改造为流式、控制条件化的游戏引擎。架构核心要素包括:

  • chunk: 每次生成 8 帧(约 0.27 秒),共 L=8
  • 滚动 KV 缓存: 保留最近 2 个 chunk(16 帧)的键值对,在最终去噪步骤缓存
  • 30 层 DiT:每 3 层插入一次键盘交叉注意力注入点,共 10 个注入位置
  • 分辨率: 512x384
  • 硬件: 单张 NVIDIA RTX 5090

3.2 关键公式

公式 (1): 问题形式化 — 块级视频预测

pθ ⁣(xt:t+L∣x<t, at:t+L),p_{\theta}\!\left(x_{t:t+L}\mid x_{<t},\ a_{t:t+L}\right),

其中 xt:t+Lx_{t:t+L} 表示从第 t 帧开始的连续 L 帧视频块,x<tx_{<t} 是历史生成的帧,at:t+La_{t:t+L} 是对应时间段内的键盘输入,θ\theta 是模型参数。该公式定义了给定历史和当前输入条件下预测下一个视频块的分布。

公式 (2): 门控融合

g=σ(Wh+b),h~=g⊙h,g=\sigma(Wh+b),\qquad\tilde{h}=g\odot h,

其中 σ\sigma 是 sigmoid 函数,W∈Rd×dW \in \mathbb{R}^{d \times d} 和 b∈Rdb \in \mathbb{R}^d 是可学习参数,⊙\odot 表示逐元素乘法。该门控机制可以抑制与当前画面上下文无关的输入(例如不可打断动画期间的按键),同时保留关键输入的贡献。

3.3 模型组件详解

3.3.1 流式自回归生成

三阶段训练管线:

阶段内容说明
Stage 1: 双向预训练在 161 帧(约20个chunk)的游戏数据上微调 Wan-1.3B保留原始双向注意力,使模型学习按键到角色动作的基本映射,同时维持长程视觉建模能力
Stage 2: 因果适应将双向模型转换为块因果模型每个 chunk 内部双向注意力,chunk 之间仅能看当前和前面 2 个 chunk;不同 chunk 分配独立的扩散时间步(Diffusion Forcing 思想)
Stage 3: 效率优化DMD 全参数蒸馏至 4 步 + 剪枝 VAE 解码器压缩去噪轨迹到 4 步,替换原生 VAE 解码器为结构化剪枝变体

滚动 KV 缓存策略: 推理时保留最近两个 chunk(16 帧)的 KV 缓存,在 penultimate 去噪步骤(如 4 步模型的 step 3)计算并存储。该长度经实验确定为稳定流式生成的最优值。

3.3.2 键盘控制模块

输入编码: 双人模式下 16 键空间(每位玩家 8 键:Jump/Left/Crouch/Right + LightPunch/LightKick/HeavyPunch/HeavyKick),编码为 16 维二进制向量,通过 1D 卷积进行时域压缩,对齐视频 latent。

逐层注入: 30 层 DiT 中每隔 3 层插入交叉注意力注入点,共 10 个注入位置。

窗口注意力: 限制每个视频 latent 对键盘 latent 的注意力窗口大小为 3(当前 step + 前 2 个 step),防止未来按键泄露到过去帧。

门控融合: 在交叉注意力输出后、融合回 DiT backbone 前,应用 sigmoid 门控滤波。

3.3.3 Player Association (多玩家身份绑定)

引用图像接地: 为每个玩家预设一张角色肖像作为 reference image,通过冻结的 CLIP vision encoder 产生固定身份 embedding。编码成本仅在游戏会话开始时产生一次。

顺序身份绑定: 视频 latents 作为 query,玩家 CLIP feature 作为 keys/values 进行交叉注意力融合。紧接着在此绑定之后,将该玩家的 8 个按键通过键盘交叉注意力路径注入。两个玩家按顺序处理:先处理第一个玩家的身份绑定+按键注入,再处理第二个玩家。这种串行设计可自然地扩展到 N 个玩家。

3.3.4 课程训练

阶段训练内容目标
Single-player actions仅一个玩家活跃学习单玩家按键到角色动作的映射
Multi-player actions两位玩家同时输入建立稳定的身份-按键绑定关系
Full gameplay完整对局数据学习长程游戏逻辑(连招、换位、击退恢复等)

四、核心创新点

#创新点描述解决的问题
1块因果自回归 + 滚动 KV 缓存首次将 chunk-wise 流式生成应用于对抗性格斗游戏场景实时推理需求 vs 长程一致性
2引用图像驱动的 Player Association用冻结 CLIP + reference image 替代可学习嵌入实现身份绑定ID crosstalk(角色换位/遮挡时的身份混乱)
3门控 + 窗口注意力的键盘注入数据依赖的 sigmoid 门控过滤无信息输入 + size-3 时间窗口强制局部因果性稀疏按键信号中噪音输入的干扰
44 步 DMD 蒸馏 + 剪枝 VAE全参数蒸馏至 4 步 + 结构化剪枝解码器从慢速 teacher 到 30 FPS 实时推理的效率鸿沟
5单玩家->多玩家->完整对局的课程训练渐进式复杂度引入,避免直接训练双人对局的不稳定性稀疏键盘信号与高视觉复杂度之间的训练困难

五、代码实现分析

目前 WanToFight 没有公开的 GitHub 代码仓库。项目由阿里通义实验室研究团队开发,仅提供了项目页面 (https://humanaigc.github.io/wantofight/)。因此无法进行具体的代码实现分析和复现评估。


六、实验结果

6.1 能力对比

MethodDomainMulti-PlayerReal-TimeComplex PhysicsAdversarial
GameNGenDOOMxcheckmarkpartial-
OasisMinecraftxcheckmarkpartial-
WorldMemMinecraftxxpartial-
MultiverseGran Turismo 4checkmarkxcheckmarkcompetitive
SolarisMinecraftcheckmarkxpartialpartial
MultiWorldIt Takes Twocheckmarkxpartialx
WanToFight (Ours)KOF ‘97checkmarkcheckmarkcheckmarkcheckmark

checkmark = 明确支持并演示;partial = 有限或领域特定支持;x = 不支持;- = 不适用

6.2 动作精度与设计消融

测试集: 500 条输入序列(150 基础单人 + 100 复合单人 + 100 双人无接触 + 150 双人有接触)

MethodLPIPS ↓\downarrowSSIM ↑\uparrowDINOv2 ↑\uparrow
Repeat first frame (floor)0.490.520.71
Multi-step teacher (no DMD, upper bound)0.150.740.85
WanToFight (Ours)0.170.710.82
w/o Player Association0.290.570.69
w/o Gated keyboard injection0.190.690.80
w/o Curriculum training0.220.660.78

关键发现:

  • 4 步学生模型接近多步教师性能(LPIPS 差距仅 0.02),证明 DMD 蒸馏保持了视觉保真度
  • 去除 Player Association 后性能显著下降(LPIPS 从 0.17 升至 0.29),特别是在双人类别
  • 去除门控注入使模型对噪声输入更敏感
  • 跳过课程训练导致质量下降,反映直接训练完整多人对局的难度

6.3 多玩家身份绑定一致性

测试协议: 输入不对称 (input-asymmetric) 方案 + 视觉语言模型裁判

Scenario# TestsWanToFight (%)w/o Player Association (%)
Static positions10010084
Position swap via jump-over10010021
Position swap via chase/cross100999
Visual overlap / occlusion100973
Long session (>60 s)100910
Overall5009723

关键发现:

  • 在所有挑战性场景中,WanToFight 保持稳定绑定(>= 91%)
  • 在换位和遮挡场景中,差距达 79-94 个百分点
  • 在无 Player Association 的基线中,长会话(>60 秒)完全崩溃(0%)

6.4 长时程生成

在约两分钟内从比赛开始到 KO 维持连续生成,未出现明显视觉退化。这显著超出了 161 帧 (~5.4 秒) 的训练时间跨度,验证了滚动 KV 缓存在远超训练长度的流式推理中的有效性。

6.5 性能指标

  • 帧率: 30 FPS at 512x384 on single NVIDIA RTX 5090
  • 去噪步数: 4 steps (DMD distilled from causal teacher)
  • chunk 长度: L = 8 frames (~0.27s at 30 FPS)
  • KV 缓存: 2 chunks = 16 frames (rolling window)
  • DiT 层数: 30 transformer blocks

七、相关工作

生成式游戏引擎

单人方向: GameNGen (DOOM, Diffusion Forcing 思想)、Oasis (Minecraft)、Yan、GameFactory、Matrix-game 2.0、WORLDMEM、Yume-1.5、Hunyuan-gamecraft-2。这些系统强调第一人称相机控制和场景一致性,但未解决多控制器联合建模问题。

多人方向: Multiverse (Gran Turismo 4 双视角赛车)、Solaris (Minecraft 合作)、MultiWorld (It Takes Two 多智能体)。但这些工作局限于非实时生成、合作场景或单人物理交互,未同时满足多玩家控制、实时推理、复杂物理交互和对抗性游戏四个属性。

流式自回归视频生成

  • Diffusion Forcing (Chen et al., 2024): 引入逐帧独立时间步,使自回归展开自然地从训练中涌现
  • CausVid (Yin et al., 2025): ODE 回归 + DMD 将双向教师转换为少量因果学生
  • SelfForcing (Huang et al., 2025): 用学生自身生成长程监督而非地面真值前缀,缓解漂移积累

少步蒸馏

DMD (Yin et al., 2024): 最小化学生在每个保留时间步与教师分布之间的散度,区别于早期基于一致性的逐步匹配方法。WanToFight 采用全参数 DMD 压缩因果教师至 4 步学生。


八、总结

主要贡献

  1. 首个融合四大能力的生成式游戏引擎: 多玩家控制、实时推理、复杂物理交互、对抗性游戏
  2. Player Association 模块: 首次在生成式游戏引擎中使用视觉引用图像驱动的身份绑定机制,解决 ID crosstalk 问题
  3. 高效流式推理管线: 结合块因果注意力、滚动 KV 缓存和 4 步 DMD 蒸馏,在消费级 GPU 上实现 30 FPS
  4. 完善的课程训练方案: 单玩家 -> 多玩家 -> 完整对局,渐进式引入训练复杂度

影响力

  • 展示了单模型替代传统游戏开发生态(资产制作 + 逻辑编程 + 渲染引擎)的技术可行性
  • 为其他需要实时每智能体控制的互动类型(不限于格斗游戏)提供了通用范式
  • 将生成式视频模型的应用边界从被动内容生成推向了主动交互式娱乐

局限性

  1. 复杂动画视觉保真度: KOF ‘97 的翻跟头、特殊招式等复杂动画偶尔出现粗糙姿势或局部伪影。原因:Wan-1.3B Backbone 容量有限 + 512x384 输出分辨率较低
  2. 长会话累积漂移: 完整的 KOF 对局可达两分钟以上,在远超训练跨度(161 帧 ~ 5.4 秒)的流式生成中会产生累积误差
  3. 单一游戏范围: 仅在 KOF ‘97 上训练,转移到其他格斗游戏需要扩展数据集和统一的跨游戏角色/动作表示
  4. 超过两名玩家的可扩展性: Player Association 理论上可扩展到 N 名玩家,但注意力复杂度、训练数据需求和视觉容量未被充分表征

未来方向

  • 超越单一标题的泛化(支持多款格斗游戏)
  • 验证 Player Association 在 N >= 3 玩家场景下的扩展性
  • 结合 Self-Forcing 风格训练进一步关闭 train-test gap
  • 使用更强 backbone 和更高分辨率提升视觉保真度

九、参考资料资源

关键参考文献

  1. Wan et al. “Wan: open and advanced large-scale video generative models.” arXiv 2025. [Wan-1.3B 基础模型]
  2. Yin et al. “One-step diffusion with distribution matching distillation.” 2024. [DMD 蒸馏]
  3. Chen et al. “Diffusion forcing: next-token prediction meets full-sequence diffusion.” NeurIPS 2024. [Diffusion Forcing]
  4. Valevski et al. “Diffusion models are real-time game engines.” arXiv 2024. [GameNGen]
  5. Decart et al. “Oasis: a universe in a transformer.” 2024. [Oasis]
  6. Radford et al. “Learning transferable visual models from natural language supervision.” ICML 2021. [CLIP]