视角设置(第一人称、第三人称)

时间:2024-03-15 15:02:01

从Blank项目开始,利用自带的第三人称游戏人物设置视角

看起来很简单,但是每次做到这里我都要调整好久,那就记录一下吧!

第一人称游戏视角

一、初始准备:

创建一个Blank项目。创建一个Game Mode,一个BP_Character,一个Controller;将地图的WorldSetting中的GameMode部分设置为自己刚创建的这些值;将第三人称的人物导入(这里我只想要骨骼和动作以及Mesh,不需要导入第三人称的Character和Controller等,可以导入后再删掉),给BP_Character选择好骨骼、默认动作等。BP_Character就是作为玩家要控制的角色。

视角设置(第一人称、第三人称)

二、设置输入控制:

1. 在Project Settings中添加输入

视角设置(第一人称、第三人称)

2. 在Character中添加响应

视角设置(第一人称、第三人称)

3. 这个时候如果进行游戏,那么前后左右的移动是没有问题的,但是显然看不到人物对吧,因为没有摄像机。游戏开始的时候在Play Start的地方生成了这个人物,但是没有对这个人物的相机,只有一个默认的相机生成,所以下一步就是添加一个相机。

三、相机的添加

1. 先尝试直接在人物背后添加一个摄像机,调整到合适的位置,其他属性都不做改变

视角设置(第一人称、第三人称)

2. 现在进行游戏,发现摁W键的时候角色在向左移动,摁A键却向后移动,这是为什么呢?然后我就发现其实是Character中的一个组件“ArrowComponent”搞的鬼啊!!!,它指向哪儿,哪儿就是前方!!!然后看看上一个图,它指向的是人物的左方,所以左边就是前方,也就是说,如果点击W键让他向前移动,那他就会向人物左方向移动。

3. 找到原因就好办啦,旋转人物和相机,使人物的前方与Arrow保持一致。

视角设置(第一人称、第三人称)

四、现在开始游戏,玩家就会拥有人物的视角啦,第一人称视角就完成了!

第三人称游戏视角

在第一人称的视角上做改变即可

一、添加弹簧臂,弹簧臂的作用可参考官方文档使用弹簧臂组件,我的理解就是减震,减轻各种碰撞穿透等对相机造成的影响。

1. 把弹簧臂Spring Arm作为相机的父组件。Spring Arm的“Camera Settings”属性“Use Pawn Control Rotation”设置为True。

这个属性的解释还是很详细的,可以自己看一下。简单来说,如果这里不设置True,那么相机和人物就不会有相对的旋转,就是说无论怎么转,人物始终是背对相机的;设置为True的话,如果人物向后移动,那么玩家就能看到人物的转身,就能看到人物的正脸啦!
视角设置(第一人称、第三人称)

二、设置其他组件以及属性

1. 将“self”的Pawn的“Use Controller Rotation Yaw”属性设置为False

2. 将“CharacterMovement”的“Character Movement(Rotation Settings)”的“Orient Rotation to Movement”设置为True、

三、现在开始游戏,就是第三人称的上帝视角啦。

大功告成!!!