目录
前言
在前面我们通过UE4完成了载具的制作,下面我们介绍一下如何通过UE5制作载具。
效果
步骤
一、制作载具模型
制作方法同【UE4 制作自己的载具】1-使用3dsmax制作载具
二、载具设置
1. 启用“ChaosVehiclesPlugin”插件
2. 将我们制作好的车辆模型导入UE,如下包含骨骼网格体、物理资产、骨骼和一些材质
3. 打开物理资产,选中4个轮子的物理形体,设置基元类型为球体,然后点击“重新生成形体”
4个轮子的物理类型设置为运动学
碰撞响应设置为“已禁用”
4. 新建一个车辆控制的类,父类为“WheeledVehiclePawn”
这里命名为“BP_Jeep”
打开“BP_Jeep”,选中“Mesh”组件,设置骨骼网格体资产
选中“Vehicle Movement Component”,添加4个车轮
设置轮子的骨骼名称(注意:这里的骨骼名称要和骨骼资产中的4个轮子的骨骼名称一致)
创建前轮的蓝图
在打开的“Wheel_Front”蓝图中设置类默认值中的“Axle Type”为Front
然后我们需要设置轮子的半径和轮宽
5. 我们可以先将车辆拖入场景中
然后切换到顶视图并用线框模式显示
按住鼠标滑轮即可测量车轮宽度,这里为50cm,车轮直径为200cm
6. 回到蓝图“Wheel_Front”中,设置轮子半径为100,轮宽为50
勾选“Affected by Steering”,表示该轮子受方向盘影响,最大转向角为50°
10. 将前轮复制一份作为后轮
打开后轮,设置“Axle Type”为Rear;勾选“Affected by Handbrake”,表示后轮会受手刹影响;勾选“Affected by Engine”,表示该车辆为后驱;取消勾选“Affected by Steering”,表示后轮不会转向。
11. 打开车辆蓝图,设置轮子类
创建车辆引擎扭矩的外部曲线资产
12. 这里命名为曲线为“Curve_JeepEngine”
打开“Curve_JeepEngine”,添加4个关键帧。分别为(0,0)、(800,1000)、(4500,800)、(5000,0)
13. 在车辆蓝图中设置“Max RPM”也为5000
选中“Mesh”组件,勾选“模拟物理”
我们可以在事件图表中添加如下节点,让车辆的油门输入为0.5
此时运行游戏就可以看到车辆在移动,但是轮子没有转动:
14. 创建车辆的动画蓝图,骨骼选择车辆的骨骼,父类选择“VehicleAnimationInstance”
这里命名为“ABP_Jeep”
打开“ABP_Jeep”,在动画图表中添加如下节点
15. 回到车辆蓝图中,设置Mesh组件的动画类为我们刚才创建的“ABP_Jeep”
此时运行游戏可以看到车轮已经可以正常转动
三、控制载具
这里基本照搬载具蓝图即可,首先需要有数据资产(输入映射上下文)
添加如下7个操作映射
在车辆蓝图中添加如下节点
在玩家控制器中添加映射上下文
此时运行效果如下,我们可以控制车辆的视角旋转,按WS键控制车辆前后运动,按AD控制车辆左右运行,按空格键刹车。此时效果如下所示
四、方向盘旋转
在动画蓝图中新建一个变量,这里命名为“Steering Angle”,表示方向盘旋转的角度
在动画图表中添加如下节点,由于我们前轮的转向角为20,因此已限制范围节点的输入为-10~10,-120~120表示我们希望用方向盘转向的-120~120°表示前轮转向-10~10°
在车辆蓝图中获取动画蓝图的引用
再在车辆蓝图的Tick中设置动画图表中的变量“Steering Angle”的值
最终效果如文章开头所示。
参考视频: