安全摄像头、警报、门

安全门蓝图概述。

Windows
MacOS
Linux

SecurityCameraAndDoorHeader.png

在关卡中随处可见的安全摄像头蓝图用于在运行模式下与玩家进行交互。在游戏过程中,它们将按搜索模式前后移动。当绿色搜索锥体与Pawn重叠时,指示灯将变成红色而且摄像头开始跟踪玩家移动。它将持续跟踪玩家,直至玩家走出跟踪范围。然后,在几秒之后,它将返回到搜索模式。

该蓝图还负责处理场景采集,稍后将在安全屏幕蓝图中用到它。

该蓝图中特别重要的是 蓝图接口 的使用。蓝图接口的工作方式与导管相似,允许一个蓝图与其他多个蓝图共享功能。任何实现给定接口的蓝图都将自动继承接口的所有功能。通过这种方式,你可以创建复杂的蓝图网络,所有这些蓝图都可配合工作,共同实现给定目标。

在本示例中,安全警报接口充当数据导管,具体而言,允许我们将功能共享给警报信号灯和门蓝图,这与警报是否被触发无关。

InterfaceConceptDiagramNew.jpg

摄像头蓝图

摄像头蓝图是警报系统的中心,因为它是与玩家交互且会使警报鸣响的蓝图。除实现用于蓝图通信的接口外,摄像头还使用 时间轴 节点。这是为处理动画而构建的特殊节点。

Timeline_Camera.png

时间轴可以包含任意数量的动画轨迹,然后其数据可以作为输出发送,用于驱动任意数量的效果。在这种情况下,时间轴用于驱动摄像头前后移动时的扫描旋转。

蓝图设置

此蓝图的组件列表、构造脚本和事件图表执行下列任务:

蓝图方面

用途

组件列表

摄像头的组件列表中包含下列组件:

CameraCS.png

大部分元素都不言自明。SceneCapture组件的工作方式与摄像头类似,但有一点例外——它不将它看到的内容输出到屏幕,而是填充纹理,然后将在材质中使用此纹理。

构造脚本

构造脚本执行下列任务:

  • 设置用于记录到渲染目标纹理的场景采集。

  • 使用来自可编辑变量的传入值设置摄像头的聚光源。

  • 设置摄像头的默认旋转角度。

  • 为摄像头的视锥设置 动态材质实例(MID)

事件图表

当Pawn进入视锥时,事件图表执行下列任务:

  • 触发警报。

  • 更改视锥和光源的颜色。

  • 开始跟踪玩家的移动。

当Pawn离开视锥时:

  • 略微延迟后解除警报。

  • 返回到标准的前后扫描状态。

  • 每帧(更新)更新摄像头的旋转。

  • 通过接口传递警报的当前状态。

可编辑变量

摄像头具有下列公开属性:

CameraProperties.png

属性

用途

扫描(Scanning)

摄像头最大偏航角(Camera Max Yaw)

从一边到另一边扫描的最大角度。

摄像头俯仰角(Camera Pitch)

设置摄像头的俯仰角。此变量会激活一个3D小部件,可在视口中操纵。

聚光源(Spot Light)

光源衰减(Light Attenuation)

设置聚光源组件的衰减半径。

聚光源亮度(Spotlight Brightness)

设置聚光源组件的亮度数值。

警报开启时的光源颜色(Light Color Alarm On)

警报激活时聚光源的颜色。

警报关闭时的光源颜色(Light Color Alarm Off)

警报取消激活时聚光源的颜色。

定向(Targeting)

测试材质警报设置(Test Material Alarm Settings)

切换用于测试的警报状态以及调整警报颜色。

蓝图接口(Blueprint Interface)

触发警报的蓝图数组(Blueprint To Trigger Alarm Array)

此数组包含需要接收关于警报是否已触发的更新的所有对象的列表。

渲染目标(Render Target)

场景采集纹理(Scene Capture Texture)

包含将用于安全摄像头监视器的渲染目标纹理。

场景采集可视距离(Scene Capture View Distance)

设置场景采集组件的最大可视距离。降低此值可提高性能。

警报蓝图

AlarmImage.png

警报蓝图可作为玩家已走到安全摄像头前从而已触发警报的可视提示。激活时,它看起来从绿色变为红色,而且信号灯开始旋转。它将保持此状态,直至警报取消激活。

打开和关闭警报的方式是从安全警报 蓝图接口 接收消息,该接口由摄像头、门和警报实现。

蓝图设置

此蓝图的组件列表、构造脚本和事件图表执行下列任务:

蓝图方面

用途

组件列表

摄像头的组件列表中包含下列组件:

AlarmCS.png

从根本上说,警报的 组件列表 包括一个基本网格体和2个光源:用于警报的光源(聚光源)和用于中性状态(OffLight)的光源。

构造脚本

构造脚本执行下列任务:

  • 从公开的用户输入设置光源颜色。

  • 为警报网格体创建和应用 动态材质实例(MID)

  • 如果用户正在测试警报,它将更改光源和材质设置,以显示警报被触发时的样子。

事件图表

事件图执行下列任务: 当我们从警报接口接收到信号时:

  • 解析信号是否为打开或关闭警报的信号。

  • 如果打开警报,则打开聚光源,关闭中性状态Off Light并更改材质颜色。然后打开“门电路(Gate@@@)”以使聚光源开始旋转。

  • 如果关闭警报,则关闭聚光源,打开中性状态Off Light并将材质颜色变更回原始状态。关闭使聚光源旋转的“门电路(Gate@@@)”。

可编辑变量

警报具有下列公开属性:

AlarmProperties.png

属性

用途

灯旋转速度(Light Rotation Speed)

警报信号灯旋转的速度。

测试警报材质设置(Test Alarm Material Settings)

此布尔值强制警报处于触发状态以进行测试。请注意,如果未处于运行模式下,信号灯不会旋转。

门蓝图

Door.png

针对门的设置如下:只要警报未触发,它将保持打开状态。警报触发时,门将具有这样的动画:门将猛然关闭,而且除非警报结束,否则它们将不会重新打开。需要注意的是,制作门动画时需要用到时间轴。事实上,要分别使用2个时间轴,一个用于打开门,另外一个用于关闭门。这样门就能不同的速度打开和关闭。

实际上,门运动的触发方式是从安全警报 蓝图接口 接收信号,该接口由摄像头、门和警报实现。

有关门设置的另外一个有趣的地方是门时间轴不直接使门动起来。相反,每个时间轴都输出单个浮点值,然后这些浮点值将用于在两个矢量位置之间插值——一个“打开”位置和一个“关闭”位置。

蓝图设置

此蓝图的组件列表、构造脚本和事件图表执行下列任务:

蓝图方面

用途

组件列表

摄像头的组件列表中包含下列组件:

DoorCL.png

基本上,门的组件列表中包括一个触发器体积和2个门板。

构造脚本

构造脚本执行下列任务:

  • 设置触发框体积的位置和大小。

  • 设置每扇门的位置和大小。

事件图表

当我们从警报接口接收到信号时,事件图执行下列任务:

  • 确认是否为打开或关闭警报的信号。

  • 如果警报已切换到开启状态,我们检查门的当前状态,如果它们尚未打开,则打开它们。

  • 如果警报已切换到关闭状态,我们检查门的当前状态,如果它们尚未关闭,则关闭它们。

可编辑变量

门具有下列公开属性:

DoorProperties.png

属性

用途

门打开宽度(Door Open Width)

设置门打开的结束位置。然后此值将镜像给相对的另一扇门。

左门大小(Door Left Size)

设置左门的大小。

右门大小(Door Right Size)

设置右门的大小。

欢迎来到全新虚幻引擎4文档站!

我们正在努力开发新功能,包括反馈系统,以便您能对我们的工作作出评价。但它目前还未正式上线。如果您对此页面有任何意见与在使用中遭遇任何问题,请前往文档反馈论坛告知我们。

新系统上线运行后,我们会及时通知您的。

发表反馈意见