Unreal蓝图-day1
砂糖桑
Aug 21, 2022
Last edited: 2022-8-22
type
Post
status
Published
date
Aug 21, 2022
slug
unreal-day1
summary
学习Unreal蓝图的第一天。主要进行工程的准备、人物移动的设置和Mixamo下载的fbx模型与动画的导入,为明天的动画重定向做准备。
tags
虚幻4蓝图
category
虚幻引擎
icon
password
Property
Aug 22, 2022 03:27 AM
学习B站上的《UE4蓝图开发生存游戏教程》做的笔记。
第一天,学习了P1-P9。可能是教程比较好吧,这次总算是有一个比较好的开始了。
UE4基本概念
GameInstance:游戏实例是贯穿游戏始终的,不论什么时候都可以访问到。所以常常用来放置独立于关卡的东西,如显示UI。(初始界面、退出界面等)
GameMode:游戏模式就是一个玩法,包括了游戏的规则等。它和关卡绑定(一对多),但是一个游戏可以有多种玩法。
GameState:记录游戏的信息,和GameMode配合使用。
Pawn/Character:游戏的主体,包括玩家操控的角色、NPC、野怪等。Character与Pawn的区别就是前者更倾向于是人。
PlayerState:记录玩家的信息,和Pawn/Character配合使用。
PlayerController:一个控制器也有一个角色。控制器是UE抽象出来的一个层,联系了玩家和游戏的角色。玩家向控制器发出指令,控制器控制它拥有的角色行动。
- 蓝图、关卡蓝图、蓝图类。
使用模板
使用UE4提供的第三人称模板。但是这些模板的文件有些多余和混乱,还需要手动整理。
- 删除第三人称模板场景中原有的的几何体、自带的关卡。只留下GameMode和Character这些必要的东西。
- 按照需求引入第一人称游戏的蓝图功能。同样对不需要的东西进行删除(不需要的以及和第三人称模板中重复的)。
- 创建新的文件夹并进行整理:
- 创建BluePrints文件夹,专门放置蓝图。将Character、GameMode和HUD移动到此处。
- 使用原来的Mannequin文件夹,将第一人称和第三人称的合并。
- 创建Textures文件夹,用于放置纹理。
- 创建Levels文件夹,并在该文件夹下保存关卡。



创建关卡的步骤为:文件 > 新建关卡 > 保存当前关卡 > 选择Levels文件夹。

十字准星
十字准星属于HUD,在BluePrints文件夹下的HUD里面设置。

绘制纹理里面的选项先理解关键的几个就行了。(其实其他也很好理解,但是指定纹理的路径不太懂)
角色位置的修改
模仿绝地求生,将十字准星放在屏幕正中央,角色在十字准星的偏左侧——这样比较和谐。

打开Blueprints中的Character,先研究它的这些组件:

- 胶囊体组件:包括箭头组件(人物朝向)和网格体(人物模型)。胶囊体的功能还有处理碰撞。

- CameraBoom:相当于一个旋转臂。相机以白点为中心绕这个旋转臂旋转。

- Camera:相机本身。可以对其位置进行调整。

要实现绝地求生那样人物向左下移动的效果,需要调整Camera的位置:
- CameraBoom向上移动
- Camera向右移动
ps:不能向右移动CameraBoom,不然有问题
按键的设置
按键在Character的蓝图里面已经设置好了,在引擎 → 输入可以找到绑定的按键:


其中包括了多种设备的按键,如手柄GamePad、鼠标Mouse、键盘Keyboard。
角色跟随相机旋转
现在移动相机人物依然站在原地不动,显然不符合一般的TPS游戏。正确的应该是人物朝向会跟随摄像机的方向一起移动。
方法一
选择Character(自身),勾选Pitch(俯仰角)、Yaw(偏航角)、Roll(滚转角)。实际上,Roll一般不会用。


这种方法得到的角色方向的转动和摄像机的转动是同步的。比较好操控,但是看起来有点生硬。
方法二
在角色移动中按下图的方式进行勾选,并设置绕Z轴旋转(Yaw)的速率。

人物旋转比摄像机旋转慢那么一点体验会好一些。
更好的体验
需要使用蓝图来实现下面的功能。
- 延迟旋转:当控制器朝向与人物朝向的角度相差50°后才开始旋转。

- 人物与控制器存在角度差时向前移动的过渡衔接。

骨骼与动画
现在人物的向前跑的动作基本没有问题了,但是其他动作还存在问题,比如水平移动,后退等:
所以还需要下载并导入相关的动作。在Mixamo这个网站上可以找到丰富的动画与人物模型:
基础知识
先要理解骨骼、动画与网格模型之间的关系:
- 动画依托于骨骼,可以理解为骨骼带动整个模型的运动。
- 一个比较完善的人物模型往往要包含网格(Mesh)和骨骼(Skeleton)。
- 骨骼相同的两个模型,可以通用一套动画。
- 骨骼与模型,骨骼与动画之间都是一对多的关系。
- UE4中的动画重定向功能就是通过手动的调整,使两个不同的骨骼使用一套动画的过程。

导入骨骼和动画
在Mixamo中下载好的骨骼动画:

动画的预览如下:
需要先导入有骨骼的 Walking Backward.fbx,再导入其他骨骼动画。
- Catalog
- About
0%
