Modifier 与 Trigger 的配置界面

Modifier:对值做加工

内置常用修饰器:

修饰器 作用 常见用法
Dead Zone 死区(低于阈值归零) 手柄摇杆
Scalar 缩放 视角灵敏度、移动速度
Curve 曲线映射 "轻推走、重推跑"
Negate 取反 S 键反方向、Y 轴反转
Swizzle 分量重排/转换 键盘合轴、交换 X/Y
Smooth 平滑 减少抖动
Dead Zone(轴) 复合死区 双轴

曲线(Curve)是手感调参的主力:把"摇杆推动量 0~1"映射成"移动速度 0~1"的自定义曲线——前 30% 推给 10% 速度(精细走位),后 70% 给 100%(全速跑)。曲线是 UE 的 CurveFloat 资产,美术策划直接改。

Trigger:决定"何时算触发"

触发器 语义
Pressed / Released 按下/松开瞬间
Down / Hold 持续按住(Hold 带时长参数)
Pulse 按住期间周期性触发(含间隔参数)
Double Tap 双击(含间隔阈值)
Tap 快速点按(按下到松开不超过阈值)
Chord 组合键(多个键同时)

Hold 的 Progress 输出:Hold Trigger 提供"当前蓄力进度 0~1",UI 直接绑进度条。这比旧系统手搓计时省 30 个节点。

组合使用举例

"双击 Shift 翻滚,按住 Shift 持续疾跑": - 同一 IA_Sprint 映射两行 Left Shift: - 行 1:Trigger = Double Tap(间隔 0.3s)→ 触发翻滚 GA; - 行 2:Trigger = Hold(时长 0.5s)→ 持续疾跑。 - 两行互不干扰,Trigger 各自判定。

或者更优雅:拆成 IA_Dodge(Double Tap)与 IA_Sprint(Hold)两个动作,IMC 里都映射 Shift。

常见配置坑

  • 忘记按住类 Trigger 的"每帧值":Hold + Ongoing 才有每帧值;若只要触发一次用 Triggered;
  • 轴动作用 Pressed Trigger:轴动作的"按下"语义不明确,轴请用 Down/Pulse + Ongoing;
  • 死区放错位置:放 IA 上会让键盘也可能被死区吃掉(键盘值是 0/1,死区 0.2 无影响但意图错了)。

本章小结

  • Modifier 主力:Dead Zone / Scalar / Curve / Negate / Swizzle;曲线是手感调参核心。
  • Trigger 语义:Pressed/Down/Hold/Pulse/DoubleTap/Tap/Chord;Hold 带进度输出。
  • 同一键可映射多行(不同 Trigger)实现"双击/长按"分流。