【UE5.1】制作自己的载具

目录

前言

效果

步骤

一、制作载具模型

二、载具设置

三、控制载具

四、方向盘旋转


前言

在前面我们通过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”的值

最终效果如文章开头所示。

参考视频:

【教程】UE5轮式载具制作教程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/856356.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PhotoShop批量生成存储jpg

1、说明 根据之前自动批量生成psd格式的文件。打印一般都是jpg格式的,那如果将这些psd的文件,生成jpg,本文采用ps的动作 2、生成动作 点击窗口-动作 录屏存储jpg动作 3、根据动作生成 选择相应动作之后选择需要处理的文件夹

Java面试八股之JVM永久代会发生垃圾回收吗

JVM永久代会发生垃圾回收吗 JVM的永久代(PermGen)在Java 8之前是存在的一部分,主要用于存储类的元数据、常量池、静态变量等。在这些版本中,永久代确实会发生垃圾回收,尤其是在永久代空间不足或超过某个阈值时&#x…

c#考试知识点

第一题 //数组{1,2,3,,8,6} //方法(数组,目标值) //输出 //接收一个数组,输出目标值是数组中哪两个数的和,并输出下标 using System; using System.Collectio…

大数据智能化教学解决方案

引言 在信息化浪潮的推动下,大数据与人工智能已成为推动社会进步的重要力量。作为国家战略新兴产业,大数据智能化的发展对于培养具备创新精神和实践能力的高素质人才提出了迫切需求。唯众紧跟时代步伐,针对大数据智能化人才培养的痛点与难点…

企业该如何防查盗版?如何防软件后台泄密数据?

随着信息化的发展,企业日常办公越来越依赖互联网。终端以及普通PC终端在访问互联网过程中,会遇到各种各样不容忽视的风险,例如员工主动故意的数据泄漏,后台应用程序偷偷向外部发信息,木马间谍软件的外联,以…

websocket nignx 配置

server { location /wss { proxy_pass http://127.0.0.1:8282; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection “Upgrade”; proxy_set_header X-Real-IP $remote_addr; } listen 443; location / {} 站点的其它配置… }

【Superset】匿名访问Dashboad

文章目录 环境配置 环境 操作系统:Debian Superset版本:4.0.1 配置 所有用户(无需登录)都能访问某一个看板,需要进行如下设置 : 1、匿名访问配置 按照文档的方法,首先在site-packages/superset目录下的config.py中…

面试突击:面向对象基础

本文已收录于:https://github.com/danmuking/all-in-one(持续更新) 面向对象三大特征 封装 封装是指把一个对象的状态信息(也就是属性)隐藏在对象内部,不允许外部对象直接访问对象的内部信息. 但是可以提供一些可以被外界访问的方法来操作属…

junit mockito 拦截器

拦截器代码 /*** Title:出参ASE加密拦截器* Description: 指定的url拦截,指定返回参数加密* Author: luohaihua* Date: 2024/06/18 16:37* Version: 1.0*/ Slf4j public class ResponseAseEncryptInterceptor extends HandlerInterceptorAdapter {Ove…

消息队列 - 解析 RabbitMQ 的运行机制

在线工具站 推荐一个程序员在线工具站:程序员常用工具(http://cxytools.com),有时间戳、JSON格式化、文本对比、HASH生成、UUID生成等常用工具,效率加倍嘎嘎好用。 程序员资料站 推荐一个程序员编程资料站:…

xshell使用vi命令:bash:vim:command not found

你们好,我是金金金。 场景 此时我通过xshell客户端连接到了远程的虚拟机。想用vi命令编辑一个文件时,显示:bash: vim: command not found 排查 看报错提示就可以知道,没找到vim命令 解决 使用包管理器 apt 来安装 vim 更新你的软…

大模型开发Embedding技术介绍

什么是Embedding? 在自然语言处理(NLP)和机器学习中,Embedding 是一种将高维数据映射到低维连续空间的技术。Embedding 允许我们将词语、句子或其他类型的数据表示成向量,这些向量捕捉了数据的语义和上下文信息。 Em…

数据结构(中)

完全二叉树的第6层有10个结点,那么有(21)个叶子结点。 10-52*2*2*2 设树中某结点不是根结点,则离它最近的祖先结点是双亲结点 一颗有5个结点的深度为3的二叉树采用顺序存储方式存储,存储数组的大小至少为7 看深度&…

民宿小程序在线预约系统开发,提高品牌影响力

在旅游业发展旺盛的当下,也带动了各地民宿的发展。在科技的支持下,民宿小程序得到了快速发展,凭借方便快捷的优势为大众带来新的体验。 民宿小程序的发展为用户提供了便捷的预订渠道,用户可以根据对房间的要求选择,能…

深(广)度优先遍历

994. 腐烂的橘子 BFS (广度优先搜索)可以看成是层序遍历。从某个结点出发,BFS 首先遍历到距离为 1 的结点,然后是距离为 2、3、4…… 的结点。因此,BFS 可以用来求最短路径问题。BFS 先搜索到的结点,一定是…

[HGAME 2022 week1]Matryoshka(古典密码混合)

题目: 直接说方法: 首先这是一段盲文,要先将盲文反转, 然后再用摩斯密码转换 将得到的字符串去掉“,”后,base16解码 在尝试维吉尼亚密码 再用base64解码 然后用凯撒密码 最后栅栏密码(22栏)

第5章 不确定性与风险分析 作业

第5章 不确定性与风险分析 作业 一单选题(共25题,100分) (单选题)当产销量( )盈亏平衡点时,销售收入()总成本。 A. 大于,大于 B. 等于,小于 C. 小于,大于 D. 大于,小于 正确答案: A:大于,大于; (单选题)已知单位产品售价为P,年固定成本为F,…

Linux-账号和权限管理

目录 一、管理用户账号 1、用户账号类型 2、UID--身份标识 3、UID的分类 ​4、用户账号文件​ 5、chage-修改账号密码 5.1、chage—使用格式: 5.2、chage—使用参数: ​6、添加用户账号与管理 6.1、useradd—添加用户 6.2、passwd—设置/修改…

【HarmonyOS NEXT】har 包的构建生成过程

Har模块文件结构 构建HAR 打包规则 开源HAR除了默认不需要打包的文件(build、node_modules、oh_modules、.cxx、.previewer、.hvigor、.gitignore、.ohpmignore)和.gitignore/.ohpmignore中配置的文件,cpp工程的CMakeLists.txt,…

3d隐藏模型为什么就不见了?---模大狮模型网

在3D建模和设计过程中,经常会遇到需要隐藏某些模型的情况。然而,有时候隐藏之后再也找不到这些模型了。这种情况可能让人感到困惑和沮丧。本文将探讨3D隐藏模型后“消失”的原因,并提供一些解决方法,帮助您更好地管理和查找隐藏的…