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

UE5 蓝图学习计划 - Day 6:角色蓝图

在 Unreal Engine 5 中,角色蓝图(Character Blueprint) 是制作游戏中可控角色的核心工具。通过角色蓝图,我们可以实现角色的基本移动、跳跃等功能,甚至可以为角色添加自定义的动画和摄像机控制。本篇将带你从零开始创建一个简单的角色蓝图,并实现基础的移动与跳跃逻辑。

什么是角色蓝图?

角色蓝图(Character Blueprint)是基于 Character 类 创建的蓝图,用于控制游戏中的玩家角色。它包含以下关键功能:

  1. 运动功能:Character 类自带移动和跳跃功能,支持第三人称或第一人称的移动。
  2. 组件结构:角色蓝图通常包含 网格组件(Skeletal Mesh)、摄像机(Camera) 和 碰撞体(Collision Capsule)。
  3. 输入绑定:通过蓝图可以将键盘或手柄输入绑定到角色行为。

理论学习

  1. 默认角色的配置
    • 默认的角色蓝图基于 Character 类,它继承了多种运动功能(如跳跃和重力模拟)。
  2. 输入事件(Input Events)
    • 输入事件用于响应玩家操作,例如键盘输入、鼠标点击等。
    • 输入事件通过 Project Settings 中的 Input 设置 进行自定义绑定。

实践任务:创建简单的角色控制功能

目标

  • 创建一个角色蓝图,实现以下功能:
    1. 使用键盘控制角色前后左右移动。
    2. 实现按键跳跃功能。

步骤 1:创建角色蓝图

  1. 打开 Content Browser。

  2. 点击 Add (+) 按钮,选择 Blueprint Class。

  3. 在弹出的窗口中选择 Character 类。
    在这里插入图片描述

  4. 将蓝图命名为 BP_PlayerCharacter,然后双击打开蓝图编辑器。
    在这里插入图片描述

步骤 2:设置角色组件

  1. 查看角色的默认组件:

    • CapsuleComponent:角色的碰撞体,负责检测物理碰撞。
    • Mesh (Skeletal Mesh):角色的骨骼网格,用于渲染角色外观。
    • CharacterMovement:角色的运动组件,处理移动、跳跃、加速度等功能。
      在这里插入图片描述
  2. 更换角色网格:

    • 在 Details 面板 中,找到 Mesh 组件。
    • 替换为默认的第三人称角色网格(例如 SK_Mannequin)。
    • 如果没有SK_Mannequin的话,可以点Content Browser上的Add,从下拉菜单中选择 添加功能或内容包(Add Feature or Content Pack),在弹出的窗口中,选择 Third Person,然后点击 添加到项目(Add to Project)。
      在这里插入图片描述
    • 调整角色网格的旋转和位置。
      在这里插入图片描述
  3. 调整摄像机位置(可选):

    • 添加一个 Spring Arm 组件,将其设置为 Mesh 的子节点。
      在这里插入图片描述

    • 添加一个 Camera 组件,将其设置为 Spring Arm 的子节点。
      在这里插入图片描述

    • 调整摄像机位置,设置合适的第三人称视角。
      在这里插入图片描述

步骤 3:设置输入事件

配置输入绑定

  1. 打开 Edit > Project Settings,进入项目设置界面。
    在这里插入图片描述

  2. 找到 Input 设置,添加以下输入映射:

    • Axis Mappings:
      • MoveForward(键位:W=1,S=-1)。
      • MoveRight(键位:A=-1,D=1)。
    • Action Mappings:
      • Jump(键位:Space Bar)。
        在这里插入图片描述

蓝图逻辑实现

  1. 打开 BP_PlayerCharacter 的 Event Graph。
  2. 添加以下节点:
    • Move Forward/Backward:

      • 添加一个 Axis Event: MoveForward。
        在这里插入图片描述

      • 从事件的输出连接到 Add Movement Input 节点。

      • 设置 Direction 为角色的前向向量(Get Actor Forward Vector)。
        在这里插入图片描述

    • Move Left/Right:

      • 添加一个 Axis Event: MoveRight。
        在这里插入图片描述

      • 从事件的输出连接到 Add Movement Input 节点。

      • 设置 Direction 为角色的右向向量(Get Actor Right Vector)。
        在这里插入图片描述

    • Jump:

      • 添加一个 Action Event: Jump。
        在这里插入图片描述

      • 连接到角色的默认跳跃功能节点(Jump 和 Stop Jumping)。
        在这里插入图片描述

步骤 4:测试角色控制

  1. 将 BP_PlayerCharacter 设置为默认玩家角色:

    • 新建一个Game Mode
      在这里插入图片描述
      在这里插入图片描述
    • 打开 World Settings(窗口 > World Settings)。
    • 在 GameMode Override 中选择或创建一个新的 GameMode。
    • 将 Default Pawn Class 设置为 BP_PlayerCharacter。
      在这里插入图片描述
  2. 点击 Play,进入游戏模式。

  3. 使用 W/A/S/D 控制角色移动,按下空格键进行跳跃。

注意事项

  1. 摄像机调整
    • 确保摄像机的视角不会穿模或过远,调整 Spring Arm 的长度和角度。
  2. 输入映射
    • 如果自定义了键位,请确保 Input Mappings 与蓝图逻辑一致。

学习收获

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

  1. 角色蓝图的基本结构和组件配置。
  2. 如何通过输入事件控制角色的移动和跳跃。
  3. 角色蓝图与项目设置的结合应用。

下一步学习计划

接下来,我们将学习 摄像机与视角控制,让角色在移动过程中摄像机能够自动跟随角色视角。敬请期待!


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

相关文章:

  • 本地缓存~
  • 实验9 JSP访问数据库(二)
  • Python Web框架比较:Flask与FastAPI的特性和应用场景
  • 通信易懂唠唠SOME/IP——SOME/IP协议简介
  • 【ArcGIS遇上Python】批量提取多波段影像至单个波段
  • 99.24 金融难点通俗解释:MLF(中期借贷便利)vs LPR(贷款市场报价利率)
  • Observability:实现 OpenTelemetry 原生可观察性的商业价值
  • Python面试宝典13 | Python 变量作用域,从入门到精通
  • 大型云平台虚拟化技术介绍
  • 搬迁至bilibili声明
  • 在CentOS服务器上部署DeepSeek R1
  • 使用 PyTorch 实现逻辑回归并评估模型性能
  • C#魔法秘籍:委托与事件,开启多态回调与消息派对之旅
  • openRv1126 AI算法部署实战之——Tensorflow模型部署实战
  • SQLite Update 语句详解
  • 我用Ai学Android Jetpack Compose之Card
  • Chapter2 Amplifiers, Source followers Cascodes
  • springCload快速入门
  • 【Numpy核心编程攻略:Python数据处理、分析详解与科学计算】2.6 广播机制核心算法:维度扩展的数学建模
  • 亚博microros小车-原生ubuntu支持系列:19 nav2 导航
  • priority_queue
  • Kanass快速安装配置教程(入门级)
  • RK3568 wifi使用(使用Linux指令操作)
  • 每日一题——用两个栈实现队列
  • 一分钟深挖@Value注解和@ConfigurationProperities注解的区别
  • 基于SpringBoot的智慧康老疗养院管理系统的设计与实现(源码+SQL脚本+LW+部署讲解等)