在文章开头,默认你已经下载并安装了虚幻4,并已经熟悉虚幻4的基本操作。
我打算这期教程从零开始,所以首先,创建一个空的项目
项目命名为FPS
进入项目后,新建一个蓝图,以角色类作为父类。
角色(Character) 是Pawn Actor的子类,旨在用作玩家角色。角色子类包括碰撞设置、双足运动的输入绑定,以及由玩家控制的运动附加代码。
角色(Character)额外多了一些其他功能,比如CharacterMovement组件。
角色移动组件CharacterMovementComponent能够使人身不使用刚体物理即可行走、跑动、飞行、坠落和游泳。其为角色特定,无法被任何其他类实现。可在CharacterMovementComponent中设置的属性包含了摔倒和行走摩擦力的值、在空气、水、土地中行进的速度、浮力、重力标度,以及角色能对物理对象施加的物理力。CharacterMovementComponent 还包含来自动画的根运动参数,其已转换到世界空间中,可直接用于物理。
实现移动功能,Character需要知道玩家的按键情况,因为我们先将移动映射到W,A,S和D键上。
打开项目设置,找到输入
创建两个名为MoveForward和MoveRight的轴映射。MoveForward控制前后移动,MoveRight控制左右移动。
接着,打开刚刚创建的蓝图,在事件图表里右击,输入moveforward,找到输入轴moveforward。该事件会输出Axis Value,也即刚才所设置的Scale值。当按下W时,输出1,当按下S时,输出-1。如果不按任何按键,输出0。
接下来拖动引脚,输入添加移动输入。添加移动输入节点会用一个向量与Scale Value字段相乘,这样就能将向量转换到对应方向。由于我们用了Character类,CharacterMovement组件会将Pawn往对应方向移动向量距离。
点击出现的添加移动输入,并连接Axis Value节点与Scale Value节点
同理,创建输入轴MoveRight并作以下连接
现在确定移动方向,创建以下节点
并作以下连接
编译并保存。现在将蓝图拖入关卡中,点击运行,按W,A,S,D键现在可以在关卡中前后移动了。
打开项目设置,再创建两个轴映射,分别命名为Turn和Lookup。设置LookUp时注意缩放为 -1。这样当鼠标向右滑动时会输出正数,反之则输出负数。 而鼠标向上滑动时会输出负数。
然后打开蓝图,按照以下创建事件并连接。
如果一个Pawn上没有Camera组件,虚幻4会自动为你创建一个摄像机。默认情况下,摄像机会使用控制器的旋转。要在第一人称视角里转动摄像机,我们所要做的就是修改控制器的旋转。
编译并保存。现在运行场景,通过键盘可以自由移动,移动鼠标可以自由观察。
最后,来实现跳的功能,同样打开项目设置,进入输入,新建操作映射Jump,并设置触发键为空格键
返回蓝图,右击输入Jump,找到输入操作Jump
之后,使用两个函数实现跳跃的功能,拖动引脚,输入函数名,找到这两个函数,如下图所示
编译并保存。现在进入关卡,按空格键可以实现跳跃了。
第一期 完。
暂无关于此日志的评论。