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. 角色蓝图与项目设置的结合应用。

下一步学习计划

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

相关推荐
吃货界的硬件攻城狮2 分钟前
【STM32 学习笔记】USART串口
笔记·stm32·单片机·学习
XQ丶YTY4 分钟前
记录一下学习kafka的使用以及思路
分布式·学习·kafka
吴爃5 分钟前
linux搭建hadoop学习
linux·hadoop·学习
海尔辛27 分钟前
学习黑客Linux Flags and Switches 入门
linux·运维·学习
冰茶_1 小时前
WPF之绑定模式深入
学习·microsoft·微软·c#·wpf·绑定模式
吃货界的硬件攻城狮1 小时前
【STM32 学习笔记】I2C通信协议
笔记·stm32·单片机·学习
晨曦学习日记1 小时前
C++学习笔记
c++·笔记·学习
Humbunklung1 小时前
PySide6 GUI 学习笔记——常用类及控件使用方法(常用类字体QFont)
笔记·python·学习·pyqt
Kx…………1 小时前
Java EE(Spring+Spring MVC+MyBatis)从入门到精通企业级应用开发教程——1初识MyBatis框架
学习·spring·java-ee·mvc·mybatis
贺函不是涵1 小时前
【沉浸式求职学习day35】【Tomcat安装、配置】【Http简述】
学习·http·tomcat