← 返回作品集

UNREAL ENGINE · MULTIPLAYER GAMEPLAY

Wok This Way

多人在线射击 · USC MFA 论文项目

我的职责
游戏玩法工程师
项目时间
2025.09 — 2026.05
技术
Unreal Engine / Networking / Steam
Steam 页面 ↗

我的贡献

GAMEPLAY

实现 Steam 联机大厅与服务器权威武器系统,改善高延迟下的多人游戏体验。

  • 集成 Steam Online Subsystem,实现大厅创建、加入和开局流程。
  • 通过 RPC 与属性复制同步射击、武器状态及角色交互,在服务端校验弹道、碰撞和伤害。
  • 调整引擎网络平滑与插值参数,减少高延迟下的位置跳变与视觉拉扯。
  • 实现果冻软体效果:碰撞后根据表面法线计算网格体的非均匀缩放,通过 SmoothStep 插值完成挤压与形状恢复,再恢复刚体物理并沿法线施加逐次衰减的弹跳冲量。挤压、拉伸、变形时长和弹跳参数可在编辑器中调整。

联机技术实现

NETWORKING

多人射击需要把玩家进入同一局游戏、战斗结果的一致性,以及网络延迟下的画面表现衔接起来。我的工作围绕这三个环节展开。

Steam 大厅:从创建到开局

集成 Steam Online Subsystem,将大厅创建、加入与开局串成可操作的联机流程。下方双窗口录屏展示玩家进入同一局游戏的过程。

查看联机演示 →

服务器权威:统一战斗判定

构建服务器权威武器系统,通过 RPC 与属性复制同步射击、武器状态及角色交互。弹道、碰撞和伤害由服务端校验,让不同玩家的操作进入共同的战斗判定流程。

网络表现:缓解高延迟下的拉扯

针对高延迟下的位置跳变与视觉拉扯,调整引擎已有的网络平滑和插值参数。这部分工作改善移动的视觉连续性;战斗结果仍由服务端校验。

职责划分概览

  1. 联机入口:Steam Online Subsystem 负责大厅创建、加入与开局流程的接入。
  2. 战斗同步:RPC 与属性复制连接射击、武器状态及角色交互;服务端校验弹道、碰撞与伤害。
  3. 移动表现:引擎平滑与插值机制缓解网络更新带来的视觉跳变。

联机大厅

01 / DEMOS
联机大厅 · 创建、加入与开局

观看重点:按创建大厅、加入、开局的顺序对照两个窗口,观察双方界面如何进入同一局游戏。

武器与状态效果

02 / DEMOS
吸吸枪

观看重点:关注吸吸枪作用时目标物体的位置变化,以及物体与枪口之间的关系。

回血池

观看重点:关注角色进入池子前后的状态与回血反馈。

果冻子弹效果

观看重点:关注果冻弹体的运动与碰撞反馈,和普通刚性弹体的视觉印象作对照。

咖啡效果 · 屏幕污渍

观看重点:关注效果触发前后的屏幕遮挡,观察污渍如何干扰目标玩家的视野。

咖啡因效果 · 屏幕震动

观看重点:关注效果触发时的镜头震动,区分画面抖动与角色本身的移动。

光合作用效果

观看重点:关注光合作用技能触发前后的角色状态与画面反馈。

果冻特殊技能 · 增强弹跳

观看重点:关注技能触发后的起跳、腾空和落地过程,观察弹跳表现。

程序化传送带

03 / DEMOS
程序化样条线传送带 · 演示一

观看重点:沿传送带路径观察直线与弯曲段之间的衔接,以及物体移动的方向。

程序化样条线传送带 · 演示二

观看重点:跟随一个物体经过弯曲路径,观察其位置与传送带路径的关系。

开关交互 · 切换传送带方向

观看重点:对照操作开关前后的物体移动方向,关注交互与传送带反转的关系。

物体生成与死亡复活

04 / DEMOS
物体生成器 · 按配置随机生成

观看重点:关注连续生成的物体及生成位置,观察配置驱动生成的展示流程。

死亡与复活逻辑

观看重点:按死亡、等待、重新出现的顺序观看,关注角色从死亡到复活的状态变化。

果冻软体测试

05 / DEMOS
补充演示 · 果冻碰撞与回弹

观看重点:关注碰撞瞬间的挤压、随后形状恢复与回弹,观察变形方向和接触面的关系。

查看实现源码 ↗
软体效果 · 多物体演示

观看重点:选择一个物体追踪其连续碰撞,再比较其他物体的变形与回弹表现。