UE4学习笔记 FPS游戏制作2 制作第一人称控制器

文章目录

    • 章节目标
    • 前置概念
      • Rotator与Vector:
      • roll与yaw与pitch
    • 添加按键输入
    • 蓝图结构
      • 区域1
      • 区域2
      • 区域3
      • 区域4

章节目标

本章节将实现FPS基础移动

前置概念

Rotator与Vector:

Vector是用向量表示方向,UE中玩家的正前方是本地坐标系的(1,0,0),X轴正方向为前方,Y轴正方向为右方,Z轴正方向为上方

Roator是UE中的概念,通过旋转角度表示方向,Rotator的(0,0,0)等价于Vector的(1,0,0),Rotator的(0,0,90)等同于Vector的(0,1,0),沿Z轴往正方向转90度就是正右

roll与yaw与pitch

对应三个不同轴的旋转操作

Roll X轴

Yaw Z轴

Picth Y轴

在这里插入图片描述

添加按键输入

Edit/ProjectSetting/Input

在这里插入图片描述

蓝图结构

在这里插入图片描述

区域1

负责前后移动

在这里插入图片描述

inputAxisMoveForward是按键事件

GetControlRotation获取控制器的正前方向,用Rotater表示,GetForwardVector将Rotater转为Vector,然后交给移动节点

区域2

负责左右移动在这里插入图片描述

这里使用了两种方式实现左右移动

InuptAxisMoveRight获取鼠标按键

方法1 先用GetControlRotation获取正前方,然后用MakeRotator生成一个(0,0,90)的旋转,将两者用CombineRotators相乘,最后用GetForwardVector转为向量

方法2 先用GetControlRotation获取正前方,然后用GetRightVector直接获取右方

区域3

负责左右旋转

在这里插入图片描述

区域4

负责上下俯仰

在这里插入图片描述

仅仅有蓝图是不够的,俯仰时只有相机在动,模型不会跟随相机旋转

还需要做两步操作

1在左侧点击

在这里插入图片描述

然后在右侧Details面板里找到Pawn,勾选如下

在这里插入图片描述

2 在左侧Componets里点击AddCompoent,搜索添加Camera

在这里插入图片描述

在viewport窗口里将相机移动到合适的位置

在这里插入图片描述

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://www.net2asp.com/e6543420c0.html