【UE4 RTS】03-Camera Zoom

前言

本篇通过对CameraPawn的弹簧臂组件的长度进行增减,从而实现了视角的远近缩放控制。

效果

步骤

1. 在项目设置中添加如下操作映射

【UE4 RTS】03-Camera Zoom_第1张图片

2. 打开玩家控制器“RTS_PlayerController_BP”,在上一篇中我们已经实现了CameraPawn的移动功能:

【UE4 RTS】03-Camera Zoom_第2张图片

这里我们继续添加重置CameraPawn的弹簧臂长度功能:

【UE4 RTS】03-Camera Zoom_第3张图片

添加如下三个浮点型变量,分别命名为“MinZoomLimit”、“MaxZoomLimit”和“ZoomSpeed”,分别表示弹簧臂的最小伸缩长度、最大伸缩长度和伸缩速度(伸缩一次的长度)

【UE4 RTS】03-Camera Zoom_第4张图片

三个变量的细节如下:

【UE4 RTS】03-Camera Zoom_第5张图片

【UE4 RTS】03-Camera Zoom_第6张图片

【UE4 RTS】03-Camera Zoom_第7张图片

在事件图表中添加如下节点实现控制弹簧臂长度增减的功能。 

【UE4 RTS】03-Camera Zoom_第8张图片

此时运行游戏我们已经可以通过鼠标滚轮控制弹簧臂的增减。但是还没有对增减后的距离进行限制。因此我们需要对缩放后的距离进行判断,是否超过或低于限制。

【UE4 RTS】03-Camera Zoom_第9张图片

 当然我们也可以用“Clamp”节点做范围的限制,这样更清晰:

【UE4 RTS】03-Camera Zoom_第10张图片

此时运行效果如文章开头所示。

你可能感兴趣的:(#,虚幻4,RTS游戏,ue4)