返回

无惧版本差异:UE 4.25 演绎开门动画

前端

前言

欢迎来到UE 4 C++教程系列的第三十一天。在今天的教程中,我们将学习如何通过使用lerp函数和重叠事件,根据玩家的方向打开门。我们将使用UE 4.25版本来创建这个项目。

创建新项目

首先,让我们创建一个新的项目。打开UE 4并单击“新建项目”。在“项目名称”字段中,输入“开门动画”。在“位置”字段中,选择一个您想要保存项目的位置。然后,单击“创建项目”。

导入资源

我们需要一些资源来创建我们的开门动画。您可以从网上下载这些资源,也可以自己创建。我将使用以下资源:

  • 门模型
  • 门纹理
  • 触发器模型
  • 触发器纹理

将这些资源导入到您的项目中。您可以通过右键单击“内容浏览器”中的“内容”文件夹,然后选择“导入”来做到这一点。

创建关卡

现在,我们需要创建一个关卡来放置我们的门。在“内容浏览器”中,右键单击“关卡”文件夹,然后选择“新建关卡”。在“关卡名称”字段中,输入“开门关卡”。然后,单击“创建关卡”。

添加门

将门模型添加到关卡中。您可以通过将模型从“内容浏览器”拖放到关卡视图中来做到这一点。将门放置在您想要的位置。

添加纹理

现在,我们需要给门添加纹理。在“内容浏览器”中,选择门模型,然后单击“纹理”选项卡。将门纹理拖放到“漫反射贴图”插槽中。

添加触发器

接下来,我们需要添加一个触发器来打开门。在“内容浏览器”中,右键单击“触发器”文件夹,然后选择“新建触发器”。在“触发器名称”字段中,输入“开门触发器”。然后,单击“创建触发器”。

将触发器模型添加到关卡中。您可以通过将模型从“内容浏览器”拖放到关卡视图中来做到这一点。将触发器放置在您想要的位置。

添加纹理

现在,我们需要给触发器添加纹理。在“内容浏览器”中,选择触发器模型,然后单击“纹理”选项卡。将触发器纹理拖放到“漫反射贴图”插槽中。

设置触发器

现在,我们需要设置触发器来打开门。在“关卡视图”中,选择触发器。在“细节”面板中,找到“触发器”部分。将“碰撞预设”设置为“OverlapAll”。

创建蓝图

现在,我们需要创建一个蓝图来控制门的动画。在“内容浏览器”中,右键单击“蓝图”文件夹,然后选择“新建蓝图”。在“蓝图名称”字段中,输入“开门蓝图”。然后,单击“创建蓝图”。

在蓝图编辑器中,右键单击蓝图图表,然后选择“添加变量”。在“变量名称”字段中,输入“门”。将“变量类型”设置为“StaticMeshComponent”。

在蓝图图表中,右键单击并选择“添加节点”。搜索“Get Overlapping Actors”节点并将其添加到图表中。将“碰撞通道”设置为“OverlapAll”。

在“Get Overlapping Actors”节点的输出引脚上,右键单击并选择“For Each Loop”。

在循环体内,添加一个“Set Relative Rotation”节点。将“旋转”设置为“FRotator(0, 90, 0)”。

在循环体外,添加一个“Delay”节点。将“延迟时间”设置为1秒。

在“Delay”节点的输出引脚上,右键单击并选择“Branch”。

在“Branch”节点的“True”引脚上,添加一个“Set Relative Rotation”节点。将“旋转”设置为“FRotator(0, 0, 0)”。

在“Branch”节点的“False”引脚上,添加一个“Loop Break”节点。

编译蓝图

现在,我们需要编译蓝图。在蓝图编辑器中,单击“编译”按钮。

将蓝图添加到触发器

现在,我们需要将蓝图添加到触发器。在“关卡视图”中,选择触发器。在“细节”面板中,找到“蓝图”部分。将“蓝图类”设置为“开门蓝图”。

测试动画

现在,我们可以测试动画了。在关卡视图中,单击“播放”按钮。走到触发器上。门应该会自动打开。

结论

这就是如何在UE 4中使用lerp函数和重叠事件实现开门动画的方法。我希望本教程对您有所帮助。如果您有任何问题,请随时提出。