Mutable:8 创建具有多个组件的对象

概述

在本教程中,我们将了解如何使用 Mutable 创建多个骨架网格。稍后,我们将了解如何在游戏 Skeletal Mesh Components 中添加它们。

我们建议您在开始本教程之前阅读 Add mesh-based cloth pieces to a character 教程。

这些示例生成的 Customizable Object 可以在 Mutable Sample 中找到,网址为 。Content/Tutorials/Components

所需资产

  • 骨架网格。SK_BaseBody

    image

  • 和 Materials(默认 Materials)。MI_MaleBodyYoung MI_MaleHeadYoung SK_BaseBody

    image

创建可自定义的对象

  1. 创建新的 Customizable Object 资产。

    image

  2. 添加两个新的 Component 节点。命名并为每个网格添加 Reference Mesh

  3. 添加新的 骨架网格体 (Skeletal Mesh) 和两个网格体分段 (Mesh Section) 节点,每个组件一个。将每个网格体部分连接到其相应的骨骼网格体部分( 和 )。MI_MaleHeadYoung MI_MaleBodyYoung

  4. 编译并查看生成的 Skeletal Meshes(骨骼网格体)。与 Add mesh-based cloth pieces to a character 教程相比,您将看到现在我们生成了两个 Skeletal Meshes,而不是一个。在下一节中,我们将了解如何创建使用它们的 Actor。

创建 Gameplay Actor

  1. 从之前创建的 Customizable Object 创建新的 Customizable Object Instance

  2. 创建一个 Actor 类型的新 蓝图类(Blueprint Class) 并打开它。

    image

  3. 在 蓝图类(Blueprint Class) 中,创建两个新的骨骼网格体组件并命名它们。将现有的 DefaultSceneRoot 替换为 Body。

    image

  4. 通过在每个组件下创建一个 可自定义的骨骼组件(Customizable Skeletal Component) 来标记每个骨骼网格体组件。

    image

  5. 使用之前创建的 Customizable Object Instance 配置每个新创建的 Customizable Skeletal Mesh。为每个节点分配不同的 Component Name(组件名称)(该名称必须与之前创建的 Component 节点的名称匹配)。

  6. 在视区中,您将看到两个 骨架网格体 组件都已自动填充了 可变 生成的骨架网格体。

可自定义的对象实例使用情况

如你所见,之前创建的 Actor 具有两个虚拟 可自定义骨骼组件(Customizable Skeletal Component) 的开销。尽管它们是标记所必需的,但它们不提供任何其他功能。你可以使用 可自定义对象实例用法(Customizable Object Instance Usage) 来代替 可自定义的骨骼组件(Customizable Skeletal Component)。唯一的缺点是你只能在 Blueprint/C++ 中创建它们。以下是有关如何创建它们的简单示例:

  1. 删除之前创建的 可自定义骨骼组件(Customizable Skeletal Components)。

    image

  2. Construction Scrip 中,创建新的 Customizable Object Instance Usage, 将其 附加到 骨骼网格体组件(Skeletal Mesh Component) 并设置 Customizable Object InstanceComponent Name

  3. 重复上一步,但对 Head 组件重复。