阿赵UE学习笔记——20、角色蓝图和动画蓝图

阿赵UE学习笔记目录

  大家好,我是阿赵。
  继续学习虚幻引擎的使用。这次来看看角色控制动画相关的东西,主要用到了动画蓝图和角色蓝图。

一、动画蓝图

  之前分析过,蓝图对于虚幻引擎来说,是存在于各个系统里面的,相当于是各个系统的控制器。所以动画蓝图就是控制动画播放的一种控制器

1、创建动画蓝图

  创建动画蓝图有2种方式:

1.通过骨骼网格体创建

  在内容浏览器里,找到一个想控制动画的骨骼网格体,然后右键——创建——动画蓝图:
在这里插入图片描述

  这样就会以这个骨骼为基础,创建一个动画蓝图文件。

2.通过创建选项创建

  在文件浏览器里面,不选中任何文件,直接右键——动画——动画蓝图:
在这里插入图片描述

  因为动画蓝图是必须和骨骼网格体绑定的,所以这时候会弹窗,让我们选择一个骨骼网格体:
在这里插入图片描述

  创建好的动画蓝图文件,预览图就是选择的骨骼网格体,比如我这里选择的是钢铁侠的骨骼网格体:
在这里插入图片描述

2、编辑动画状态机

  双击打开动画蓝图,会发现左边有预览窗口和各种可编辑的组件,中间是一个节点编辑器,右边是各种属性编辑面板,比如细节面板、动画预览编辑器和资产浏览器。
在这里插入图片描述

  在中间的节点编辑区域,默认只有一个输出节点,我们鼠标右键,搜索状态机,新建一个State Machine节点:
在这里插入图片描述
在这里插入图片描述

  这里我只打算给角色添加一个待机的状态机,先不做任何的动画状态切换,所以直接把状态机输出到Output Pose的Result接口:
在这里插入图片描述

  接下来双击状态机节点,进入到状态机编辑:
在这里插入图片描述

  会发现这里只有一个Entry节点,然后可以从右边的资产浏览器,把需要的动画拖进来。我这里拖入一个待机的动画,并把节点名称改成idle:
在这里插入图片描述

  然后把Entry节点连到idle:
在这里插入图片描述

  回到动画蓝图的窗口,这里需要注意一件事情,UE里面的所有蓝图,在修改完之后,都需要点击保存,然后点击编译按钮,才会真正的生效。
在这里插入图片描述

  在编译之后,会发现左上角的预览窗口出现了刚才拖动进去的动画,然后中间的状态机和输出之间的连线动了起来,这是在告诉我们蓝图的节点运行情况。

二、角色蓝图

1、Actor的概念

  在UE里面,所有能在场景里面显示的对象,都是一个Actor。这个概念有点像Unity里面的GameObject,但又有所不同。
  Unity里面,一个GameObject显示在场景里面之后,如果需要控制它,还需要在GameObject上面挂一个继承了MonoBehaviour基类的C#脚本,然后想把它保存下来,还需要创建Prefab。但在UE里面,Actor就包含了Unity的GameObject+MonoBehaviour+Prefab的功能了。只要创建Actor,然后在Actor里面可以编辑模型、动画甚至功能逻辑。然后把Actor本身就是一个资源,可以直接反复的拖动到场景里面使用。

2、创建角色蓝图

  在内容浏览器里右键——蓝图类
在这里插入图片描述

  接下来会弹出窗口,让我们选择这个蓝图类的父类:
在这里插入图片描述

  可以看到,UE内置了非常多的带有功能性的蓝图类,最基础的是Actor,然后其他的不同蓝图类会自带有各种不同的基础功能。
  我们可以通过创建最基础的Actor类,然后自己扩展功能,也可以直接使用一些UE已经带有的类来简化开发过程。比如这次我选择的角色类蓝图,里面就包含了角色控制相关的逻辑功能在里面了。
  创建完的角色蓝图类,暂时是空白的,给它起个名字:
在这里插入图片描述

3、指定骨骼网格体和动画

  双击打开之后,会发现中间有一个胶囊体,还有一个指示方向的箭头。左变是各种组件和函数,右边是细节面板。
在这里插入图片描述

  在细节面板,把钢铁侠的骨骼网格体拖动到网格体的选项里,会发现有一个钢铁侠的模型出现在胶囊体的上面
在这里插入图片描述

  不过这个时候钢铁侠和胶囊体并不是重合的,可以通过调整钢铁侠的位置,还有调整胶囊体的大小,让模型和胶囊体匹配:
在这里插入图片描述

  再旋转网格体,让方向和箭头一致:
在这里插入图片描述

  在细节面板找到动画——动画类,把刚刚做好的动画蓝图指定在这里:
在这里插入图片描述

  这个时候,角色动画已经生效了,编译完成后,角色蓝图中间就出现了刚才做的动画蓝图里面指定的待机动画:
在这里插入图片描述

4、添加摄像机

  假如我们是要做一个第三人称射击游戏,需要一个摄像机跟随着角色后,可以这样做,在组件页签里面,点添加,搜索弹簧臂组件。弹簧臂的作用类在截图里面有说明,类似于一个第三人称摄像机的控制距离功能:
在这里插入图片描述

  再在创建出来的弹簧臂组里面创建一个摄像机组件:
在这里插入图片描述

  创建完之后,会是这样:
在这里插入图片描述

  然后调整一下弹簧臂的位置,让摄像机看着角色后脑勺:
在这里插入图片描述

5、设置默认玩家控制:

  在角色蓝图的细节面板,找到Pawn——自动控制玩家选项:
在这里插入图片描述

  默认的选项是已禁用,这里选择成玩家0:
在这里插入图片描述

  保存并编译蓝图,把这个角色蓝图拖动到地形场景里面,然后运行,会发现游戏的视角已经变成了第三人称,看着钢铁侠的背后:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/759743.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

智慧公厕:卫生、便捷、安全的新时代厕所变革

在城市快速发展的背景下,公共厕所的建设和管理变得越来越重要。智慧公厕作为厕所变革的一项全新举措,通过建立公共厕所全面感知监测系统,以物联网、互联网、大数据、云计算、自动化控制技术为支撑,实现对公共厕所的智能化管理和运…

FPGA学习_时序约束以及VIVADO时序报告

文章目录 前言时序约束的目的一、时序约束种类1、约束主时钟2、约束衍生时钟3、约束虚拟时钟4、input delay5、output delay6、约束异步时钟组7、约束互斥时钟8、假路径约束9、多周期约束 二、VIVADO时序报告三、从时序的角度看为什么寄存器赋值慢一拍 前言 一边学习一边补充当…

容器中的大模型(三)| 利用大语言模型:容器化高效地部署 PDF 解析器实践...

作者:宋文欣,智领云科技联合创始人兼CTO 01 简介 大语言模型(LLMs)正逐渐成为人工智能领域的一颗璀璨明星,它们的强大之处在于能够理解和生成自然语言,为各种应用提供了无限可能。为了让这些模型更好地服务…

【Hadoop】Hadoop 编译源码

目录 为什么要源码编译Hadoop 编译源码1前期工作准备2jar 包安装2.1安装 Maven2.2安装 ant2.3安装 glibc-headers 和 g2.4安装 make 和 cmake2.5安装 protobuf2.6安装 openssl 库2.7安装 ncurses-devel 库 3编译源码3.1解压源码到 /opt/ 目录3.2 进入到 hadoop 源码主目录 /opt…

AI时代Python金融大数据分析实战:ChatGPT让金融大数据分析插上翅膀

❤️作者主页:小虚竹 ❤️作者简介:大家好,我是小虚竹。2022年度博客之星评选TOP 10🏆,Java领域优质创作者🏆,CSDN博客专家🏆,华为云享专家🏆,掘金年度人气作…

UniTask 异步任务

文章目录 前言一、UniTask是什么?二、使用步骤三、常用的UniTask API和示例1.编写异步方法2.处理异常3.延迟执行4.等待多个UniTask或者一个UniTas完成5.异步加载资源示例6.手动控制UniTask的完成状态7.UniTask.Lazy延迟任务的创建8.后台线程切换Unity主线程9.不要返…

第二证券|热度飙升,出境游人数有望破亿,这些概念股被机构盯上

在免签和航班批量康复的方针利好下,本年出境游商场迎来炽热升温。 清明出境游有望爆火 3月20日,Airbnb爱彼迎在北京举行春季出境游趋势发布会举行。 爱彼迎中国数据显示,本年清明节期间的出境游查找热度已经超出2023年同期的2.5倍&#xf…

计算机网络面经-什么是IPv4和IPv6?

前言 Internet协议(IP)是为连接到Internet网络的每个设备分配的数字地址。它类似于电话号码,是一种独特的数字组合,允许用户与他人通信。IP地址主要有两个主要功能。首先,有了IP,用户能够在Internet上被识别…

Redis 安装(二)

Redis安装说明 大多数企业都是基于Linux服务器部署项目,而且Redis官网也没有提供Windows版本的安装包,因此课程中我们会基于Linux系统来安装Redis。 此处选择Linux版本为Centos7。 Redis的官方网站地址:https://redis.io/ Redis的安装 切换…

TCP协议中的传输控制机制图文详解「重传机制」「流量控制」「拥塞控制」

目录 TCP重传机制 超时重传 快速重传 SACK 方法 Duplicate SACK TCP 流量控制 滑动窗口 累积确认 窗口大小由哪一方决定? 接收窗口和发送窗口的大小是相等的吗? 流量控制 窗口关闭的后果 糊涂窗口综合症 TCP拥塞处理 为什么要有拥塞控制呀,不…

如何在WSL中的ubuntu编译Linux内核并且安装使用ebpf?

如何在WSL中的ubuntu编译Linux内核并且安装使用ebpf? 步骤1 编译安装内核获取源码修改配置编译编译成功后配置重启WSL测试 步骤2 安装bcc安装依赖下载bcc,编译测试 环境: wsl2windows 11 步骤1 编译安装内核 去https://kernel.org/找你想要的版本, …

119.设计链表(力扣)

代码解决 class MyLinkedList { public:// 定义链表节点结构体struct LinkedNode {int val;LinkedNode* next;LinkedNode(int val):val(val), next(nullptr){}};MyLinkedList() {dummyhead new LinkedNode(0);size0;}int get(int index) {if (index > (size - 1) || index…

从点云创建 DSM:网格化和可视化实用指南

今天我将向您展示如何从点云创建数字表面模型(DSM)。首先,我们将尝试了解 DSM 是什么,然后我们将进入讨论的更实际部分。 什么是 DSM? DSM 是一个描述表面及其表面所有内容的模型。现在,为了更清楚地了解…

学习JavaEE的日子 Day28 异常,多线程

Day28 1.异常机制 1.1 异常概念 异常是程序在运行期发生的不正常的事件,它会打断指令的正常执行流程。 设计良好的程序应该在异常发生时提供处理这些不正常事件的方法,使程序不会因为异常的发生而阻断或产生不可预见的结果。 ​ Java语言使用异常处理机…

LabVIEW柴油机安保监控系统

LabVIEW柴油机安保监控系统 随着航运业的快速发展,确保船舶柴油机的安全稳定运行变得尤为重要。船舶柴油机故障不仅会导致重大的经济损失,还可能危及人员安全和环境。设计并开发了一套基于LabVIEW平台的柴油机安保监控系统,旨在通过实时监控…

Python数学建模-2.9Matplotlib库

Matplotlib库是Python中一个非常流行的绘图库,它提供了大量的绘图工具,可以生成各种类型的静态、动态、交互式的图表。Matplotlib的设计初衷是为了与NumPy配合使用,从而提供一个强大的数学绘图工具。 1.Matplotlib的主要特点 丰富的图表类型…

Ubuntu18.04显示--有线连接未托管

引用: Ubuntu18.04连不网 报"有线连接未托管"_ubuntu20.04以太网未托管-CSDN博客 正文 虚拟机环境配置: VirtaualBox Ubuntu18.04桌面版 问题现象: Ubuntu18.04虚拟机的桌面上提示“有线连接未托管”,虚拟机不能上网&#xf…

抖音视频批量下载软件可导出视频分享链接|手机网页视频提取|视频爬虫采集工具

解锁抖音视频无水印批量下载新姿势! 在快节奏的生活中,抖音作为时下最热门的短视频平台之一,吸引着广大用户的目光。而如何高效地获取喜欢的视频内容成为了许多人关注的焦点。Q:290615413现在,我们推出的抖音视频批量下载软件&…

初始Java篇(JavaSE基础语法)(3)

个人主页(找往期文章包括但不限于本期文章中不懂的知识点):我要学编程(ಥ_ಥ)-CSDN博客 目录 方法的使用 方法定义 实参和形参的关系 方法重载 方法签名 递归 方法的使用 方法就是一个代码片段. 类似于 C 语言中的 "函数"…

WordPress Plugin NotificationX插件 SQL注入漏洞复现(CVE-2024-1698)

0x01 产品简介 WordPress和WordPress plugin都是WordPress基金会的产品。WordPress是一套使用PHP语言开发的博客平台。该平台支持在PHP和MySQL的服务器上架设个人博客网站。 0x02 漏洞概述 WordPress plugin NotificationX是一个应用插件。2.8.2版本及之前 存在安全漏洞,该…