跳到主要内容

观察 ViewModel 变化(Observing ViewModel Changes)

在 Unreal Runtime 中,Rive 向 Unreal 回传状态的标准方式是 ViewModel 属性变化

Legacy 的 State Machine 事件与旧回调机制已弃用。

观察机制

在 Artboard 的一次更新周期中:

  1. Unreal 写入 ViewModel
  2. State Machine 计算
  3. State Machine 可能修改 ViewModel
  4. 发出属性变化回调
  5. 完成渲染

回调是同步触发的。

注册回调

每个 ViewModel Instance 属性都可观察。

建议:

  • 创建实例后注册
  • 销毁前解绑
  • 回调所有权与实例所有权保持一致

可使用 Add Field Value Changed Delegate 来监听字段变化。

Trigger 适合动作;Bool/Number 等适合持续状态。

结构化数据

ViewModel 可嵌套,嵌套实例同样可观察,且沿用同一回调机制。

生命周期注意事项

  • 不要观察已销毁实例
  • 销毁前务必解绑
  • Artboard 重建后,不要假设旧回调仍有效

小结

ViewModel 是 Runtime 的输入/输出边界:

Unreal 写入 -> State Machine 评估 -> Unreal 观察结果