Unreal4 执行流_事件0009bate1
执行流
在蓝图中,要执行的第一个节点是一个事件,然后是从左至右通过白色执行线的执行流。游戏运行时,您可以在编辑器中可视化执行流,这有助于调试。数据还流经采用匹配变量类型的彩色导线。当节点执行时,将对输入引脚进行评估,反向从右至左跟踪数据线,直到计算出最终结果并将其提供给节点。
带有执行引脚(非纯节点)的节点在执行时存储其输出引脚的值,而不带执行引脚(纯节点)的节点则在每次与其输出相连的节点执行时重新计算其输出。
事件(Events)
从游戏性代码中调用的节点,在 EventGraph 中开始执行个体网络。
事件(Events) 是从游戏性代码中调用的节点, 在 事件图表(EventGraph) 中开始执行个体网络。 它们使蓝图执行一系列操作,对游戏中发生的特定事件(如游戏开始、关卡重置、受到伤害等)进行回应。
这些事件可在蓝图中访问,以便实现新功能,或覆盖/扩充默认功能。任意数量的 Events 均可在单一 EventGraph 中使用,但每种类型只能使用一个。
一个事件只能执行一个目标。如果想要从一个事件触发多个操作,需要将它们线性串联起来。![](https://img.haomeiwen.com/i1870200/4a4b46d3d1ebc206.jpg)
Event Level Reset
此蓝图事件节点仅在关卡蓝图中可用。
此蓝图事件节点仅在服务器上执行。在单人游戏中,本地客户端即视为服务器。
![](https://img.haomeiwen.com/i1870200/24f09e7e6328e859.jpg)
Level Reset 事件在关卡重启时发出执行信号。 它在关卡重新加载后进行某项触发时非常实用。 如玩家角色已死亡,但关卡无需重新加载时。
![](https://img.haomeiwen.com/i1870200/66dd8396377ebe04.jpg)
Event Actor Begin Overlap
![](https://img.haomeiwen.com/i1870200/b652a7f86941246c.jpg)
多项条件同时满足时,将执行该事件:
Actor 之间的碰撞响应必须允许重叠。
执行事件的两个 Actor 的 Generate Overlap Events 均设为 true。
最后,两个 Actor 的碰撞开始重叠;两者移到一起或其中一个创建时与另一个重叠。
![](https://img.haomeiwen.com/i1870200/4c9821702557a02b.jpg)
此蓝图 Actor 和保存在 Player Actor 变量中的 Actor 重叠时,它将增加 Counter 整数变量。
![](https://img.haomeiwen.com/i1870200/cf2ac3bbc3f9e49c.jpg)
Event Actor End Overlap
![](https://img.haomeiwen.com/i1870200/7009a3858b40de3a.jpg)
多项条件同时满足时,将执行该事件:
Actor 之间的碰撞响应必须允许重叠。
执行事件的两个 Actor 的 Generate Overlap Events 均设为 true。
最后,两个 Actor 的碰撞停止重叠;它们将分离,或在其中一个将被销毁。
![](https://img.haomeiwen.com/i1870200/b35dbb4f732d1a31.jpg)
![](https://img.haomeiwen.com/i1870200/a4fb487266a0cd96.jpg)
Event Hit
![](https://img.haomeiwen.com/i1870200/5828fefe6192e177.jpg)
如您使用 Sweeps 创建运动,即使未选中标记也将获得此事件。只要 Sweep 阻止您移过阻挡物体,这便会发生。
![](https://img.haomeiwen.com/i1870200/090c058100eced6b.jpg)
![](https://img.haomeiwen.com/i1870200/e43660e3c041adc4.jpg)
Event Any Damage
此蓝图事件节点仅在服务器上执行。在单人游戏中,本地客户端即视为服务器。
![](https://img.haomeiwen.com/i1870200/2b84462b37a357ba.jpg)
此事件在造成整体伤害时出现。如溺死或环境伤害,并非点伤害或放射伤害。
![](https://img.haomeiwen.com/i1870200/528445c4262e6619.jpg)
![](https://img.haomeiwen.com/i1870200/f10fb31b2a77fdd0.jpg)
此处,如果对 Actor 造成的伤害来自水,将减少体力值并在屏幕上生成警告。
Event Point Damage
此蓝图事件节点仅在服务器上执行。在单人游戏中,本地客户端即视为服务器。
![](https://img.haomeiwen.com/i1870200/2064ca2f7617a9a8.jpg)
点伤害(Point Damage) 代表由投射物、扫射武器、甚至近战武器造成的伤害。
![](https://img.haomeiwen.com/i1870200/6109f33286519e65.jpg)
![](https://img.haomeiwen.com/i1870200/d862cf1e6fdbdd80.jpg)
在此例中,受到任意伤害时均会从 Actor 的体力值减去造成的伤害。但如果 Actor 的头部被击中,则 Actor 的体力值设为 -1。
Event Radial Damage
此蓝图事件节点仅在服务器上执行。在单人游戏中,本地客户端即视为服务器。
![](https://img.haomeiwen.com/i1870200/eb4a66f7300bbe85.jpg)
放射伤害(Radial Damage) 事件在该序列的父 Actor 受到放射伤害时调用。这可用于处理基于爆炸伤害或间接伤害的事件。
![](https://img.haomeiwen.com/i1870200/986ba7c0e81252c1.jpg)
![](https://img.haomeiwen.com/i1870200/efad9d30b3c8409e.jpg)
Event Actor Begin Cursor Over
![](https://img.haomeiwen.com/i1870200/a138b6d4788a9032.jpg)
使用鼠标界面时,鼠标光标在 Actor 上悬停时执行的事件。
![](https://img.haomeiwen.com/i1870200/4e640439e687cf64.jpg)
鼠标经过此 Actor 后,它将把动态材质实例上名为 Highlight 的标量参数设为 1.0。
Event Actor End Cursor Over
![](https://img.haomeiwen.com/i1870200/fdc0aa166afc7bf9.jpg)
![](https://img.haomeiwen.com/i1870200/5d7f14bf96c28e6c.jpg)
![](https://img.haomeiwen.com/i1870200/df5363f7248cc028.jpg)
![](https://img.haomeiwen.com/i1870200/3b407c35929bc2b5.jpg)
![](https://img.haomeiwen.com/i1870200/7cbfb460b75a32d3.jpg)
![](https://img.haomeiwen.com/i1870200/077ef83e3671b71e.jpg)
Event Receive Draw HUD
此事件仅限继承自 HUD 类的蓝图类可用。
![](https://img.haomeiwen.com/i1870200/2e6619919f60e743.jpg)
这是一个特殊事件,使蓝图可绘制到 HUD。此事件须创建 HUD 绘制节点。
![](https://img.haomeiwen.com/i1870200/2312b22cd66e478f.jpg)
![](https://img.haomeiwen.com/i1870200/75e26596f04caecc.jpg)
Custom Event
Custom Event Node
![](https://img.haomeiwen.com/i1870200/642acbb531b74a24.jpg)
Custom Event 节点是拥有自身工作流程的特殊节点,请查阅 自定义事件节点 中的更多内容。
扩展阅读:
自定义事件:创建可以在蓝图序列的任意点上被调用的事件。
通过Sequencer调用事件:创建在播放动画序列时在指定时间触发的事件。