当前位置: 首页 > article >正文

UE5 蓝图学习计划 - Day 7:摄像机与视角控制

在游戏开发中,摄像机视角 是玩家与游戏互动的关键环节。Unreal Engine 5 提供了多种方式来设置摄像机,包括第一人称视角、第三人称视角,以及动态跟随摄像机。在本篇文章中,我们将学习如何在角色蓝图中添加摄像机组件,实现第三人称的自动跟随视角。

理论学习

  1. 摄像机组件(Camera Component)
    • 用于渲染游戏世界的视觉效果。
    • 可以附加到角色或其他 Actor 上,作为玩家的视角。
  2. Spring Arm 组件
    • 用于连接摄像机并控制其位置和旋转。
    • 自动调整摄像机与障碍物之间的距离,避免穿模。
  3. 视角控制的两种方式
    • 绑定摄像机到角色:实现角色的第三人称或第一人称视角。
    • 独立摄像机控制:玩家可以自由调整摄像机角度。

实践任务:添加摄像机并实现跟随视角

目标

  • 在角色蓝图中添加摄像机组件,并实现第三人称视角。
  • 使用鼠标控制摄像机旋转。

步骤 1:添加摄像机组件

  1. 打开上一节创建的 BP_PlayerCharacter(角色蓝图)。

  2. 在组件列表中,添加一个 Spring Arm 组件,上节添加过则忽略添加,直接改属性。

    • 将其设置为 CapsuleComponent 的子节点。

    • 将名称改为 SpringArm。
      在这里插入图片描述

    • 在 Details 面板 中设置参数:

      • Target Arm Length(目标长度):设置为 300。
        在这里插入图片描述

      • Enable Camera Lag(启用摄像机延迟):勾选此项并设置 Camera Lag Speed 为 10。
        在这里插入图片描述

  3. 在 Spring Arm 的子节点中,添加一个 Camera 组件。
    在这里插入图片描述

    • 将名称改为 PlayerCamera。
    • 调整摄像机位置和角度,使其位于角色的上方和后方。
      在这里插入图片描述

步骤 2:设置摄像机旋转控制

  1. 打开项目设置,添加输入。
    在这里插入图片描述

  2. 打开角色蓝图的 Event Graph。

  3. 在事件图中添加以下两个输入事件:

    • Axis Event: Turn(鼠标 X 轴,用于左右旋转)。
      在这里插入图片描述

    • Axis Event: LookUp(鼠标 Y 轴,用于上下旋转)。

  4. 实现以下蓝图逻辑:

    • 将 Turn 的输出连接到 Add Controller Yaw Input 节点。
    • 将 LookUp 的输出连接到 Add Controller Pitch Input 节点。
      在这里插入图片描述

步骤 3:设置 Spring Arm 的旋转规则

  1. 在 Spring Arm 的 Details 面板 中,启用以下选项:

    • Use Pawn Control Rotation:勾选。
      在这里插入图片描述

    • Inherit Pitch/Yaw/Roll:确保 Pitch 和 Yaw 勾选。

    • Do Not Inherit Roll:取消勾选 Roll。
      在这里插入图片描述

  2. 在角色蓝图的根组件(BP_PlayerCharacter)中,禁用以下选项:

    • Use Controller Rotation Yaw:取消勾选。
    • Use Controller Rotation Pitch 和 Roll 保持取消勾选。
      在这里插入图片描述

步骤 4:测试效果

  1. 将 BP_PlayerCharacter 设置为默认玩家角色(参考 Day 6 的方法)。
  2. 点击 Play,进入游戏模式。
  3. 使用鼠标移动:
    • 水平方向旋转角色(Yaw)。
    • 垂直方向调整摄像机视角(Pitch)。
      在这里插入图片描述

注意事项

  1. 摄像机角度限制
    • 为了避免摄像机旋转得过于极端,可以在 Add Controller Pitch Input 节点前添加一个限制节点(Clamp Angle),设置上下旋转的角度范围。
  2. 摄像机延迟优化
    • 根据游戏需求调整 Spring Arm 的 Camera Lag Speed 值,找到适合的延迟效果。

学习收获

通过今天的学习,你已经掌握了:

  1. 如何在角色蓝图中添加摄像机组件。
  2. 使用 Spring Arm 实现第三人称的跟随视角。
  3. 使用鼠标事件实现动态摄像机控制。

下一步学习计划

接下来,我们将学习 触发器与交互事件,例如角色进入触发区域打开门或激活机关,为游戏逻辑增加更多互动性。敬请期待!


http://www.kler.cn/a/530205.html

相关文章:

  • 使用Avalonia UI实现DataGrid
  • 一种非接触式智能垃圾桶设计(论文+源码+实物)
  • 新站如何快速获得搜索引擎收录?
  • C#面试常考随笔9:什么是闭包?
  • deep generative model stanford lecture note2 --- autoregressive
  • 《编写可读代码的艺术》读书笔记
  • 【爬虫】JS逆向解决某药的商品价格加密
  • 广度优先搜索算法笔记
  • 政务行业审计文件大数据高速报送解决方案
  • 跨越通信障碍:深入了解ZeroMQ的魅力
  • deep seek R1本地化部署及openAI API调用
  • 别做太远的规划
  • nodejs:express + js-mdict 网页查询英汉词典,能播放声音
  • 【数据分析】案例03:当当网近30日热销图书的数据采集与可视化分析(scrapy+openpyxl+matplotlib)
  • 【小鱼闪闪】做一个物联网控制小灯的制作流程简要介绍(图文)
  • OpenAI开源战略反思:中国力量推动AI产业变革
  • 【漫话机器学习系列】076.合页损失函数(Hinge Loss)
  • 【算法-位运算】位运算遍历 LogTick 算法
  • 基于机器学习鉴别中药材的方法
  • python小知识-jupyter lab
  • 海外问卷调查渠道查,具体运营的秘密
  • 【leetcode100】路径总和Ⅲ
  • DS常识问答:人民币升值贬值是什么回事
  • w188校园商铺管理系统设计与实现
  • 笔试-排列组合
  • it基础使用--5---git远程仓库