创建一个第三人称游戏工程
创建一个工程
这里其实创建蓝图工程和C++工程,并没有什么区别。因为本篇博文不会用代码去修改内容。
而是通过蓝图去修改。
下一步,选择C++项目,然后修改工程名,创建工程。
复制一个对象,添加到场景
使用ctrl+W复制对象。
给角色的蓝图添加事件
这个是控制逻辑,大家按照这个自己添加事件,完成连接即可。
完成以后需要编译保存。
添加导航网格体边界体积
如图,向场景中添加导航网格体边界体积,并调整大小。
如图所示:
这里的角色都是复制的。选中最开始添加的那个角色,然后按住Alt键,鼠标左键按住一根轴拖动,即可复制。
想要显示绿色区域,按P键。
想要调整网格,项目设置->引擎->导航网格体->生成属性,调整这里面的数值。
因为数值调整了网格覆盖是会实时变化的,所以,可用按照下图这样子摆放窗口。
中间有部分是空的,我调整参数,已经覆盖全了,但是上下移动网格后,有覆盖不全了,我这里不调整了。
因为运行起来,AI是能够到达梯子顶部的,如图:
如果AI不动
如果运行起来,发现AI不会动,首先,上下移动导航体网格,我这里就出现了这种情况,AI不会动,我移动了网格,然后对工程进行了构建,再运行就好了。
另一个方式就是去查看模拟运行的结果:
在蓝图的事件图表中,编译,保存。然后直接运行,这时如上图,事件会被触发,鼠标放到变量上面能看到变量值的变化。我之前就是出现了Walking一直是true,导致分支一直是true,执行不下去。
这个勾取消掉,就是false了。
我还遇到一种情况,角色在场景中不会走,一直一跳一跳的。
这是因为我对角色进行了缩放,然而缩放的时候,y值变成了负值-0.25,导致角色无法移动。我把值改成0.75,就正常了。