打开窗口中的世界场景设置。
在内容中新建一个放蓝图的文件夹,右键选择蓝图类,创建以下四个蓝图并命名。
将创建好的四个蓝图分别拖入到对应位置,注意需要先将GameMode蓝图拖入到游戏模式重载中,再将其他三个蓝图拖入。点击运行发现游戏不动就是对的。
在编辑下项目设置中找到输入,添加操作映射和轴映射。
进入到Character蓝图中点击添加组件,第一人称不用添加Sparing Arm(弹簧臂)组件,直接添加Camera(摄影机)即可,第三人称以以下结构添加这两个组件。
点击上图中Mesh(CharactorMesh0)(继承)这个组件,在右侧细节面板中添加骨骼网格体(Skeletal Mesh)(角色)。角色素材可以在虚幻商城中获取。然后更改变换中的两个值。(Sparing Arm弹簧臂可以往上拖一拖,让摄影机对着角色的上半部分。)
点击事件图标找到以下节点并连接,红色节点是在项目设置下输入中设置的名字。
点击Sparing Arm(弹簧臂)组件,在细节面板中找到Use Pawn Control Rotation属性设为true(打勾)。如果是第一人称就在Camera(摄影机)组件中找这个属性。这时候你就可以控制你的角色了,只是没有动画。
但是这种是没办法看到角色正面的,下面是另一种控制方法,我称之为模式二。上方的我称为模式一。
修改角色移动的节点
在运行按钮的左侧找到类默认值并点击,在细节面板中找到Use Controller Rotation Yaw属性设为false(取消勾选)。点击Character Movement(CharMoveComp)(继承)组件,在细节面板中找到Orient Rotation to Movement属性设为true。
以上是角色控制,下面是动画。
在文件夹中右键-动画-动画蓝图,选择AnimInstance父类,下方选与导入到Character蓝图中骨骼网格体对应的骨骼(不可选错)。创建完成之后到Character蓝图点击Mesh(CharactorMesh0)(继承)组件,在细节面板中找到Anim Class属性并赋予刚刚创建的动画蓝图。
进入动画蓝图右键添加Add New State Machine节点并命名,然后连接Output Pose节点。双击进入刚刚创建的节点。点击事件图表找到以下节点并连接,Speed是创建的变量。
点击右下角资产浏览器,找到Idle和Jog_Fwd直接拖入。有些资产命名可能不一样,可以直接看看是什么动画。Idle一般为空闲时的动画。Jog_Fwd一般是向前走的动画。
点击上图中的上方的红色框进入写条件。(1-1)
点击上上图中的下方红框进入写条件。(1-2)
然后角色就可以动起来了,这种方式只适用于模式二。
下面是模式一的动画。
先将模式二的移动方式改为模式一的。
在文件夹中右键-动画-混合空间1D,骨骼要匹配,创建并命名后进入。修改左上角水平坐标中的 值。找到对应的动画拖入到对应的点上。
回到动画蓝图中,从右侧的资产浏览器中找到刚刚创建的混合空间1D,并拖入将Jog_Fwd(向前移动的动画)换掉。
将(1-1)和(1-2)的步骤在做到这个里边。双击进入到BS_Direction中(你的命名和我的不一 样,对应的进入就行。)创一个变量并连接。
修改事件图标中的节点
模式一就可以动起来咯。