如何设置Chaos载具

本指南旨在介绍如何设置载具,以便使用Chaos Physics解算器。

Windows
MacOS
Linux
前置主题

此页面假定您已掌握以下主题的前置知识。请在继续之前先阅读它们。

构成载具的个体资产如下所示。

  • 一个骨骼网格体

  • 一个物理资产

  • 一个动画蓝图

  • 一个载具蓝图

  • 一个或多个车轮蓝图

无论你是创建汽车还是摩托车,这些内容均相同。结合使用这些资产,本指南将指导你完成Chaos载具的以下设置过程。

  1. 启用Chaos载具插件。

  2. 创建和编辑Chaos车轮蓝图。

  3. 导入载具网格体。

  4. 使用Vehicle Handler节点创建动画蓝图。

  5. 创建载具蓝图。

  6. 设置载具控制输入。

  7. 设置载具游戏模式。

要求

在使用Chaos载具插件前,你将需要编译Chaos以便启用它。

要了解如何启用Chaos Physics插件,请阅读Chaos Physics概述

Chaos载具插件

编辑(Edit) > 插件(Plugins) > 载具(Vehicles) 中,确认已为你的项目启用 ChaosVehiclesPlugin

ChaosVehiclesPlugin.png

  • 启用插件后重启虚幻编辑器。

  • 此插件无法在启用PhysX的情况下使用。

Chaos车轮蓝图

车轮蓝图中可以设置车轮/悬架/刹车组合配置。

在大多数情况下,每个载具至少需要两种车轮类型。一种车轮(或轮轴)受方向盘/引擎/手刹的影响,另一种不受影响。此外,你可能需要不同大小的前后轮,在这种情况下,您可以完全控制对不同的半径、质量、宽度、手刹效果、悬架和车轮许多其他属性的设置,以便获得你想要的载具操控效果。

载具的车轮数量没有限制。多个载具可以共享相同的车轮蓝图,但是该策略仅在车轮维度和悬架限值相同的情况下才有效。

创建蓝图

  1. 在内容浏览器中,点击 新增(Add New) 按钮并选择 蓝图类(Blueprint Class)

  2. 选取父类(Pick Parent Class) 窗口中,在 所有类(All Classes) 下搜索"车轮(wheel)",然后选择 ChaosVehicleWheel

  3. 新的资产将在内容浏览器(Content Browser)中创建。确保给它起一个可识别的名字,方便你以后查找(例如‘BP_ChaosFrontWheel')。

  4. 可选步骤)重复这些步骤,设置一个 轮和 轮类型。根据每个轴进行设置。

编辑蓝图

创建Chaos车轮蓝图后,请在蓝图编辑器(Blueprint Editor)中将其打开,其中提供了编辑车轮的选项。

首先是每个车轮需要更改的五个属性,因为其余属性取决于载具在测试过程中的性能(并应在后续进行调整)。

属性

说明

车轮半径(Wheel Radius)

需要匹配渲染模型的尺寸(以厘米(cm)为单位)。

受手刹影响(Affected by Handbrake)

检查后轮受手刹影响的情况。

受引擎影响(Affected by Engine)

后轮驱动(RWD)的话检查后轮,前轮驱动(FWD)则检查前轮,全轮驱动(AWD)检查所有车轮。

受方向盘影响(Affected by Steering)

检查前轮,可能有两个以上,例如,卡车驾驶室可能有四轮方向盘,第二层有不同的转向角。另外,也可以通过选择转向角为负的后轮方向盘实现全轮转向。

最大转向角(Max Steer Angle)

通常这是一个正值(以度为单位),但是,对于带全轮转向的后轮反向转向,允许为负值。

ChaosWheelBlueprint.png

Chaos车轮蓝图的类默认值示例。

载具网格体

如果你想继续以下操作,我们建议将载具网格体导入到你的项目中。如果你没有载具网格体,你可以下载并提取此载具网格体示例

出于说明目的,我们使用载具用户指南中的Buggy载具网格体。

载具物理编辑器

将载具网格体导入项目后,请按照以下步骤在 载具物理编辑器 中查看网格体。

  1. 在内容浏览器中,找到你的载具骨骼网格体。

  2. 双击载具骨骼网格体。

  3. 要打开载具物理编辑器,选择 物理(Physics)

    PhysicsTabEditor.png

  4. 载具物理编辑器应如下所示。

    PhysicsTabEditor1.png

载具动画蓝图

动画蓝图用于控制载具的专用骨骼网格体动画,例如旋转轮胎、悬架、手刹和方向盘动画。为了减轻创建这些动画类型的工作量,你可以使用 Wheel Controller节点 来驱动动画。

Wheel Controller节点

动画蓝图用于获取和控制载具的动画,Wheel Controller 节点使得控制载具的所有动画变得相当容易,几乎不需要额外的设置。

WheelComponent.png

节点可获取必要的车轮信息(例如"旋转速度有多快?"或"它是否受到手刹影响?"或"此车轮的悬架设置如何?"),并将查询结果转译为车轮关联的骨骼上的动画。

创建动画蓝图

  1. 在内容浏览器中,点击 新增(Add New),然后将鼠标悬停在 动画(Animation)上,然后选择 动画蓝图(Animation Blueprint)

  2. 创建动画蓝图(Create Animation Blueprint) 窗口中,从你的载具列表中找到并选择骨架(Skeleton),然后点击 确定(OK)

  3. 命名载具动画蓝图。

  4. 现在有了一个动画蓝图,可以从内容浏览器中将其打开。

  5. 从主工具栏中选择 类设置(Class Settings),然后在 类选项(Class Options)详情(Details) 面板中将 父类(Parent Class) 设置为 VehicleAnimationInstance

    VehicleAnimInstance.png

    设置父类

  6. 右键单击 动画图表(Anim Graph),打开上下文菜单,搜索并选择 Mesh Space Ref Pose 节点。

  7. 接下来,右键点击 动画图表(Anim Graph),搜索并创建 车轮控制器(Wheel Controller)

  8. 现在连接节点,使你的 动画图表(Anim Graph) 类似如下。

    WheelController.png

    动画图表示例

  9. 可选步骤)另外,如果你有额外的框架或其他悬架需求(如来自载具游戏的示例车辆),你将需要动画图表中额外的节点来处理影响这些多边形的关节。例如,载具游戏中的Buggy中,额外的关节用于控制轴与车轮的连接。这些是由 Look At 节点驱动的,当给定车轮关节时,该节点将由 Wheel Controller 节点驱动,而 Look At 节点将确保悬架保持附着在车轮上,如下例所示。

WheelControllerLookAtNode

以下是Look At节点的构成。

骨骼

Look At

F_L_Suspension

F_L_wheelJNT

F_R_Suspension

F_R_wheelJNT

B_L_Suspension

B_L_wheelJNT

B_R_Suspension

B_R_wheelJNT

B_L_wheelJNT

B_L_Suspension

B_R_wheelJNT

B_R_Suspension

示例车辆骨架树

NewBuggyBlueprintSkeletonTree

创建载具蓝图

在此步骤中,你将创建载具蓝图,将先前设置的所有资产汇总在一起。

  1. 在内容浏览器中,点击 新增(Add New) 按钮并选择 蓝图类(Blueprint Class)

  2. 选取父类(Pick Parent Class) 窗口中,在 所有类(All Classes) 下搜索"车轮(wheel)",然后选择 WheeledVehiclePawn

  3. 命名载具蓝图。

  4. 从内容浏览器中,选择并打开新创建的载具蓝图。

  5. 在组件(Components)窗口中,点击名为 网格体骨骼网格体组件(Skeletal Mesh Component)。然后在其详情(Details)面板中,将骨骼网格体(Skeletal Mesh)设置为你载具的骨骼网格体资产。

  6. 将蓝图生成的 动画类(Anim Class) 设置为载具的动画蓝图。

  7. 在物理(Physics)下的细节(Details)中,启用 模拟物理(Simulate Physics)

  8. 组件(Components) 窗口中,点击 添加组件(Add Component),并选择 摄像机(Camera)

  9. 在蓝图编辑器中使用视口定位 摄像机(Camera)

    ViewportView.png

    在本例中,摄像机定位于载具后面,微微抬起,朝载具倾斜。

  10. 在选中 摄像机(Camera) 组件的情况下(在 摄像机设置(Camera Settings) 下的 详情(Details) 面板中),确认禁用 使用Pawn控制旋转(Use Pawn Control Rotation)

    这样可以确保摄像机锁定在摄像机的视图方向,而非玩家控制器的视图方向。

  11. 下一步,在组件(Components)窗口中选择 载具移动组件(Vehicle Movement Component)

  12. 载具设置(Vehicle Setup) 部分下的 详情(Details) 面板中,展开 车轮设置(Wheel Setups) 旁的箭头,并为各个车轮进行如下设置:

    • 车轮类(Wheel Class) 设置为你创建的车轮蓝图。

    • 骨骼名称(Bone Name) 设置为应由车轮控制的关节名称。

如果是前轮或后轮,车轮的分配顺序无关紧要,只有 骨骼名称(Bone Name)车轮类(Wheel Class) 有影响。出于组织结构目的,我们建议每个新载具的车轮保持相同的顺序(例如FL、FR、BL、BR)。

如果载具需要四个以上的车轮,请点击 车轮设置(Wheel Setups) 属性旁边的 + 图标添加更多车轮,或根据需要删除车轮。

载具控制输入设置

  1. 转到主菜单并选择 编辑(Edit) > 项目设置(Project Settings),打开项目设置(Project Settings)窗口。

  2. 在侧面板的 引擎(Engine) 分段下,选择 输入(Input)

  3. 如下图所示,设置方向盘、油门、刹车和手刹的控制输入,这将使用游戏控制器的模拟输入,但手刹除外。

    InputSetup.png

  4. 设置了功能按钮后,就需要对它们进行实际操作。打开你创建的 载具蓝图(Vehicle Blueprint) 并找到 事件图表(Event Graph),可在其中调用你在项目设置输入部分中创建的这些轴和动作事件。

  5. 建立从输入事件到载具组件集输入函数的连接。

    InputEventGraph.png

载具游戏模式设置

  1. 在内容浏览器中,点击 新增(Add New),并从菜单列表中选择 蓝图类(Blueprint Class)

  2. 在选取父类(Pick Parent Class)窗口中,选择 游戏模式基础(Game Mode Base),然后点击 选择(Select) 创建游戏模式蓝图。

    BluePrintGameMode.png

  3. 在内容浏览器中,双击打开新的游戏模式蓝图,以进行编辑。

  4. 类(Classes) 下的 细节(Details) 中,在 默认Pawn类(Default Pawn Class) 旁,使用下拉菜单选择你的载具蓝图。

    defaultPawnClass1.png

  5. 点击 保存(Save),然后 关闭(Close) 窗口。

  6. 在主视口(Main Viewport)窗口中,在游戏模式(Game Mode)分段下的世界设置(World Settings)选项卡中,将 游戏模式覆盖(GameMode Override) 设置为你的游戏模式蓝图。

    单击显示全图。

现在,你已经了解设置Chaos载具的过程,你可以在游戏中运行该载具。

如果要将现有PhysX载具转换为Chaos,可以在此PhysX到Chaos载具转换指南中了解另一流程。

Select Skin
Light
Dark
欢迎帮助改进虚幻引擎文档!请告诉我们该如何更好地为您服务。
填写问卷调查
取消

欢迎来到全新虚幻引擎4文档站!

我们正在努力开发新功能,包括反馈系统,以便您能对我们的工作作出评价。但它目前还未正式上线。如果您对此页面有任何意见与在使用中遭遇任何问题,请前往文档反馈论坛告知我们。

新系统上线运行后,我们会及时通知您的。

发表反馈意见