UE5 蓝图学习计划 - Day 7:摄像机与视角控制
在游戏开发中,摄像机视角 是玩家与游戏互动的关键环节。Unreal Engine 5 提供了多种方式来设置摄像机,包括第一人称视角、第三人称视角,以及动态跟随摄像机。在本篇文章中,我们将学习如何在角色蓝图中添加摄像机组件,实现第三人称的自动跟随视角。
理论学习
- 摄像机组件(Camera Component)
- 用于渲染游戏世界的视觉效果。
- 可以附加到角色或其他 Actor 上,作为玩家的视角。
- Spring Arm 组件
- 用于连接摄像机并控制其位置和旋转。
- 自动调整摄像机与障碍物之间的距离,避免穿模。
- 视角控制的两种方式
- 绑定摄像机到角色:实现角色的第三人称或第一人称视角。
- 独立摄像机控制:玩家可以自由调整摄像机角度。
实践任务:添加摄像机并实现跟随视角
目标
- 在角色蓝图中添加摄像机组件,并实现第三人称视角。
- 使用鼠标控制摄像机旋转。
步骤 1:添加摄像机组件
-
打开上一节创建的 BP_PlayerCharacter(角色蓝图)。
-
在组件列表中,添加一个 Spring Arm 组件,上节添加过则忽略添加,直接改属性。
-
将其设置为 CapsuleComponent 的子节点。
-
将名称改为 SpringArm。
-
在 Details 面板 中设置参数:
-
Target Arm Length(目标长度):设置为 300。
-
Enable Camera Lag(启用摄像机延迟):勾选此项并设置 Camera Lag Speed 为 10。
-
-
-
在 Spring Arm 的子节点中,添加一个 Camera 组件。
- 将名称改为 PlayerCamera。
- 调整摄像机位置和角度,使其位于角色的上方和后方。
步骤 2:设置摄像机旋转控制
-
打开项目设置,添加输入。
-
打开角色蓝图的 Event Graph。
-
在事件图中添加以下两个输入事件:
-
Axis Event: Turn(鼠标 X 轴,用于左右旋转)。
-
Axis Event: LookUp(鼠标 Y 轴,用于上下旋转)。
-
-
实现以下蓝图逻辑:
- 将 Turn 的输出连接到 Add Controller Yaw Input 节点。
- 将 LookUp 的输出连接到 Add Controller Pitch Input 节点。
步骤 3:设置 Spring Arm 的旋转规则
-
在 Spring Arm 的 Details 面板 中,启用以下选项:
-
Use Pawn Control Rotation:勾选。
-
Inherit Pitch/Yaw/Roll:确保 Pitch 和 Yaw 勾选。
-
Do Not Inherit Roll:取消勾选 Roll。
-
-
在角色蓝图的根组件(BP_PlayerCharacter)中,禁用以下选项:
- Use Controller Rotation Yaw:取消勾选。
- Use Controller Rotation Pitch 和 Roll 保持取消勾选。
步骤 4:测试效果
- 将 BP_PlayerCharacter 设置为默认玩家角色(参考 Day 6 的方法)。
- 点击 Play,进入游戏模式。
- 使用鼠标移动:
- 水平方向旋转角色(Yaw)。
- 垂直方向调整摄像机视角(Pitch)。
注意事项
- 摄像机角度限制
- 为了避免摄像机旋转得过于极端,可以在 Add Controller Pitch Input 节点前添加一个限制节点(Clamp Angle),设置上下旋转的角度范围。
- 摄像机延迟优化
- 根据游戏需求调整 Spring Arm 的 Camera Lag Speed 值,找到适合的延迟效果。
学习收获
通过今天的学习,你已经掌握了:
- 如何在角色蓝图中添加摄像机组件。
- 使用 Spring Arm 实现第三人称的跟随视角。
- 使用鼠标事件实现动态摄像机控制。
下一步学习计划
接下来,我们将学习 触发器与交互事件,例如角色进入触发区域打开门或激活机关,为游戏逻辑增加更多互动性。敬请期待!