跳到主要内容

FX 与表现节点

GCS · Built-In Node Library

七个 FX 节点把玩法结果转换为玩家可见、可听的反馈:VFX、音效、动画、浮动文字、单位移动和镜头震动。

面向已经完成卡牌、状态或敌人行为,并需要补充反馈的图作者。

FX 节点向战斗表现层发出反馈请求。它们让玩法结果变得可见,但不拥有结果本身。如果删除一张图里的 FX 节点会改变战斗数值,说明玩法逻辑放在了表现节点里。

Poison Arrow 结算后玩家看到的就是这样:敌人掉到 13/16,血条下多出一个 Poison 层数图标,能量计数变成 2/3。伤害数字、命中特效和毒雾,全部来自读取 Action 节点结果的 FX 节点。

Poison Arrow 在游戏内的结算结果:敌人 HP 减少并显示 Poison 层数图标,由图里的 FX 节点驱动

一个菜单组,六种反馈

这些节点在 Add Node 菜单中属于 FX。这一组覆盖视觉、音频、动画、浮动文字、单位移动和镜头反馈。


七个 FX 节点

节点用途输入与设置输出常见搭配何时避免
Play VFX在单位身上或世界坐标处生成 VFX prefabTargetTargetSourceAnchor(OnUnit 或 AtPosition)、PositionPrefabLifetimeDeal DamageChange StatusSpawn Unit反馈是声音或颜色闪烁
Play Animation触发单位动画TargetTargetSourceTrigger敌人攻击、出牌命中节拍动画没有走单位表现路由
Play SFX播放一次性音频片段ClipVolume抽牌、出牌、命中、状态、胜负反馈声音该由音乐或环境音系统管理
Flash Unit让单位闪烁某个颜色TargetTargetSourceColorDuration受击反应、增益、减益、选中反馈粒子或动画能传达更多信息
Slide Unit把单位的视觉表现滑向指定位置,带缓动TargetTargetSourceToDurationEase攻击前冲、击退、闪避节拍想要永久换位或布局变化
Show Floating Text在单位头上显示伤害、治疗、护甲、格挡或自定义文字TargetTargetSourceKindContentAmountTextColorUseCustomColorIncludeSignScaleMultiplierDurationMultiplierOffsetDealtChanged 这类 Action 结果输出数字是内部值,不该给玩家看
Shake Camera摇晃战斗镜头IntensityDuration重击、Boss 招式、AoE 攻击小而频繁的效果会把战斗变成噪音

玩法优先,反馈其次

推荐模式只有三步:运行 Action 节点,读取它的结果输出,再按结果播放表现。护甲、Hook 和阻止效果都可能在"配置值"和"提交值"之间改动数字,只有结果输出带着提交后的值。

demo 状态 Poison 是这套接线的标准示例。Deal Damage 先提交这次毒伤,它的 Dealt 输出传给浮动文字的数字,同一个效果块再播毒雾 prefab 和一段减益音效:

Poison 的状态图:Deal Damage 的 Dealt 输出接进 Show Floating Text,效果块同时播放毒雾 VFX 和减益音效

玩法结果表现
Deal Damage.DealtKind 设为 Damage 的 Show Floating Text,然后 Play VFX
Change HP.Changed 为正Kind 设为 Heal 的 Show Floating Text
Change Armor.Changed 为正Kind 设为 Armor 的 Show Floating Text
Change Status.Changed用状态专属 prefab 的 Play VFX
Spawn Unit.Spawned锚定在新生成单位上的 Play VFX

VFX 的锚定

Anchor 决定效果的挂载位置。效果属于某个单位时用 OnUnit:命中火花、治疗爆发、减益烟云。效果属于场地时用 AtPosition:地面标记、全屏爆发、单位出场前落在生成点的预警。

当图的目标是一个集合时,先判断一个共享效果是否足够清楚。每个目标都需要自己的效果时,把 FX 节点包进 Foreach,让每个元素单独播放一次。


浮动文字的内容

Show Floating Text 显示数字或标签,由 Content 控制。Amount 用于伤害、治疗、护甲、格挡和层数变化;Text 用于 Miss、Immune、Stunned、Draw 这类短标签。

IncludeSign 会给数字加正负号。治疗和护甲获得建议保持开启,"+5"比"5"读得快;标签或加了符号反而让人困惑的值就关掉。


音频说明

Play SFX 是图层面对一次性声音的请求:抽牌、出牌、命中、死亡、状态施加、UI 确认、战斗音效点缀。循环音乐和环境音属于场景级音频系统,不属于行为图。

缺失的 clip 不会阻塞玩法。状态变化照常执行,所以可以在音频制作之前完成并测试图,之后补上 clip 也不需要改图。


图发请求,资产负责表现

一个 FX 节点存储的是请求和资产引用:哪个 prefab、哪个 clip、哪个 trigger。视觉和听觉质量由这些资产决定。只要时机不变,可以把占位 prefab 换成成品、重调某个 clip、重新设计浮动文字样式,全程不需要打开行为图。


常见错误

错误更好的做法
动作还没跑就先播 VFX先运行 Action 节点,再把它的结果输出接进表现
显示配置的伤害数值显示 Deal Damage.Dealt
集合只播一个 VFX,但每个目标都需要反馈Foreach,逐元素播放
每次小命中都晃镜头Shake Camera 留给高冲击时刻
把玩法规则编进表现时机状态变化留在 Action 和 Hook 节点里;Wait 只管节奏