主要内容

动画自定义演员不真实的编辑器

按照以下步骤在虚幻中动画自定义演员®编辑器。在开始之前,请确保您有Visual Studio®2019年和2020年虚幻引擎车辆动力学Blockset™接口®4项目金宝app支持包安装在您的机器上。有关更多信息,请参见安装支持包和配置金宝app环境

此外,要确保:

  • 你是舒适的编码与c++在虚幻引擎。

  • 你的虚幻编辑器c++项目包含一个骨架演员网格。这个例子使用了一个自行车网格。

    虚幻编辑器自行车网格

这个例子提供了动画一个自行车演员的工作流程。一般的工作流程是改编自虚幻引擎车辆使用指南

设置金宝app模型

步骤1:建立Simulink模金宝app型

打开一个新的Simul金宝appink®建模并添加这些块:

  • 两个斜坡

  • 常数

  • 模拟3D演员变换集

  • 仿真3D场景配置

如图所示连接并命名这些块。

金宝app带有连接块的Simulink模型

步骤2:配置block

使用这些参数设置配置块。

参数设置

仿真3D场景配置

  • 现场源- - - - - -虚幻编辑器

  • 项目—已安装的支持包项目文件的名称和位置,例如:金宝appC: \ \ AutoVrtlEnv \ AutoVrtlEnv.uproject

  • 场景视图- - - - - -现场的起源

模拟3D演员变换集

  • 演员的设置标签:

    • 3D场景中演员的标签,ActorTag- - - - - -Bike1

      请注意

      这个标签应该匹配虚幻编辑器标签的名称步骤6:实例化Bicycle Actor

    • 每个演员要设置的角色数,NumberOfParts- - - - - -3.

  • 初始值标签:

    • 翻译每个角色的初始数组值,Translation- - - - - -[0 0 0;0 0 0;0 0 0]

    • 初始数组值用于每个角色旋转,旋转- - - - - -[0 0 0;0 0 0;0 0 0]

    • 初始数组值用于缩放每个部分的角色,缩放- - - - - -[1 1 1;1 1 1;1 1 1]

翻译斜坡

  • - - - - - -[0.35 0 0;0 0 0;0 0 0]

旋转斜坡

  • - - - - - -[0 0 0;0 -pi/5 0;0 -pi/5 0]

规模常数

  • 恒定值- - - - - -[1 1 1;1 1 1;1 1 1]

设置不真实的动画自行车编辑器

步骤3:设置动画实例

  1. 在您的Simul金宝appink模型中,使用仿真3D场景配置打开虚幻编辑器参数打开虚幻编辑器。

  2. 选择文件>新的c++类。在选择父类对话框中,选择显示所有类。搜索AnimInst。添加AnimInstance父类。

    虚幻编辑器选择父类

  3. 命名新的c++类金宝appSimulinkBikeAnimInst。选择公共。点击创建类

    虚幻编辑器名称父类

  4. 在Visual Studio 2019中打开C: \ \ AutoVrtlEnv \ AutoVrtlEnv.sln文件。导航到金宝appSimulinkBikeAnimInst.cpp金宝appSimulinkBikeAnimInst.h源文件。

    Visual studio解决方案资源管理器

    按所示编辑这些文件。

    提示

    对于本例,代码包括FWheelRotationRWheelRotation属性来动画自行车车轮的旋转。您可以添加额外的属性来动画自行车的其他部分。

    代码:金宝appSimulinkBikeAnimInst.h

    代码:金宝appSimulinkBikeAnimInst.cpp

  5. 在虚幻编辑器中单击编译

    虚幻编辑器编译

步骤4:创建动画蓝图

  1. 在虚幻编辑器中,在内容浏览器选项卡,在视图选项中,选择显示引擎内容显示插件内容

    虚幻编辑器选项

  2. 添加动画网格。在内容浏览器选项卡,导航到MathWorksAutomotiveContent内容>车辆>骑自行车>网格

    虚幻编辑器内容浏览器

  3. 选择添加/尺寸。>动画>动画的蓝图

    虚幻编辑器添加动画蓝图

  4. 在“创建动画蓝图”对话框中,选择:

    • 父类金宝appSimulinkBikeAnimInst

    • 目标框架SK_Bicycle_Skeleton

    虚幻编辑器创建动画蓝图

    点击好吧

  5. 命名蓝图BikeAnimation。右键单击并选择保存

    虚幻编辑器保存动画蓝图

  6. 打开BikeAnimation蓝图。如图所示进行连接。

    虚幻编辑器蓝图连接

    对于前轮和后轮,请确保您设置:

    • 要修改的骨头正确的骨头

    • 旋转模式取代现有的

    • 旋转的空间骨骼空间

    虚幻编辑器蓝图规格

  7. 编译并保存蓝图。

步骤5:创建Bicycle Actor c++类

  1. 在虚幻编辑器中,在内容浏览器选项卡,在视图选项中,选择显示引擎内容显示插件内容

    虚幻编辑器选项

  2. 从MathWorksSimulation c++ Classes文件夹中选择Sim3dActor

    虚幻编辑器内容浏览器

    右键单击并选择创建从Sim3dActor派生的c++类

    虚幻编辑器类诉讼

    提示

    如果没有看到MathWorksSimulation c++ Classes文件夹,请使用以下步骤检查是否有MathWorksSimulation安装并启用插件:

    1. 在虚幻编辑器工具栏中,选择编辑>插件

    2. 在Plugins窗口中,验证MathWorks接口插件列在已安装窗口中。如果插件尚未启用,请选择启用复选框。

    3. 关闭编辑器并从Simulink重新打开它。金宝app

  3. 命名新的Sim3dActorBicycleActor。选择公共。点击创建类

    虚幻编辑器类名

  4. 在Visual Studio中,导航到BicycleActor.hBicycleActor.cpp

    Visual studio解决方案资源管理器

    按所示编辑这些文件。

    提示

    在本例中,代码包括使自行车车身动画化的逻辑(BIKE_BODY)、前轮(FRONT_WHEEL)及后轮(REAR_WHEEL).您可以添加额外的逻辑来动画自行车的其他部分。

    代码:BicycleActor.h

    代码:BicycleActor.cpp

  5. 在虚幻编辑器中单击编译

    虚幻编辑器编译

步骤6:实例化Bicycle Actor

  1. 在您的Simul金宝appink模型中,使用仿真3D场景配置打开虚幻编辑器参数打开虚幻编辑器。

  2. 将自行车演员放置在场景中。

    虚幻编辑自行车演员安置

  3. 将标记设置为与属性相同的值模拟3D演员变换集3D场景中演员的标签,ActorTag。在本例中,将值设置为Bike1

    虚幻编辑器设置标签值

设置摄像头视图(可选)

可选地,设置一个相机视图来覆盖默认视图。您可以使用Simulink或关卡蓝图来金宝app设置摄像机视图。对于推荐的选项,请使用Simulink。金宝app

第七步:使用金宝app(推荐)

设置摄像头:设置一个跟随自行车的摄像头:

  1. 将这些块添加到模型中。

    • 一个斜坡

    • 一个添加

    • 三个常数

    • 模拟3D演员变换集

    如图所示连接并命名这些块。

    金宝appSimulink模型块连接

  2. 设置这些块参数。

    参数设置

    模拟3D演员变换集:相机控制

    • 3D场景中演员的标签,ActorTag- - - - - -MainCamera1

    CamTranslation

    • 恒定值- - - - - -[0 -5.1 .56]

    • 将矢量参数解释为1-D- - - - - -

    CamRotation

    • 恒定值- - - - - -[0 0°2rad(85)]

    • 将矢量参数解释为1-D- - - - - -

    CamScale

    • 恒定值- - - - - -[11 11]

    • 将矢量参数解释为1-D- - - - - -

步骤7:使用关卡蓝图

重写默认的摄像头视图:

  1. 添加一个摄像机演员。将它赋值为BicycleActor的子元素。

  2. 使用变换设置来指定位置和视角。

    虚幻编辑器设置演员转换设置

  3. 打开关卡蓝图。

    虚幻编辑器打开关卡蓝图选择

  4. 在关卡蓝图中,建立这些联系。如果右键单击Event Graph来查找节点,请清除上下文敏感的。如果你有一个CameraActor,你可以把它从编辑器的World outline视图拖到Event Graph中。

    虚幻编辑器蓝图连接

  5. 保存蓝图和项目。关闭虚幻编辑器。

运行仿真

在配置了Simulink模型和虚幻编辑器环境之后金宝app,运行一个仿真。

  1. 在您的Simul金宝appink模型中,确保您已经设置了仿真3D场景配置这些值的参数:

    • 现场源- - - - - -虚幻编辑器

    • 项目—已安装的支持包项目文件的名称和位置,例如:金宝appC: \ \ AutoVrtlEnv \ AutoVrtlEnv.uproject

    • 场景视图- - - - - -现场的起源

  2. 使用仿真3D场景配置打开虚幻编辑器参数打开虚幻编辑器。

  3. 运行模拟。

    1. 在Simuli金宝appnk模型中,单击运行

      因为场景的源是在虚幻编辑器中打开的项目,所以模拟不会开始。

    2. 验证Simulink中的“诊断查看器”窗口是否显示此消息:金宝app

      在模拟3D场景配置块中,您将场景源设置为“虚幻编辑器”。在虚幻编辑器中,选择“播放”来查看场景。

      此消息证实,Simulink已经实例化了虚幻引擎3D环金宝app境中的车辆和其他资产。

    3. 在虚幻编辑器中,单击。模拟在虚幻编辑器中当前打开的场景中运行。

另请参阅

|

相关的话题

外部网站