Work in progress

The content of this page was not yet updated for Godot 4.2 and may be outdated. If you know how to improve this page or you can confirm that it's up to date, feel free to open a pull request.

使用 MultiMeshInstance3D

前言

在正常情况下,使用一个 MeshInstance3D 节点来显示 3D网 格,比如主角的人体模型,但在某些情况下,你希望在一个场景中创建同一个网格的多个实例。你 可以 多次复制同一个节点,并手动调整变换。这可能是一个乏味的过程,而且结果可能看起来很机械。此外,这种方式也不利于快速迭代。 MultiMeshInstance3D 是此问题的可能解决方案之一。

MultiMeshInstance3D,顾名思义,是在特定网格的表面上创建 MeshInstance 的多个副本。一个示例是树形网格用随机比例和方向的树填充地形网格。

设置节点

基本设置需要三个节点:MultiMeshInstance3D 节点和两个MeshInstance3D 节点。

一个节点用作目标,即要在其上放置多个网格的表面网格。 在树的示例中,这就是地形。

另一个节点是作为源节点,也就是你想复制的网格。在树的情况下,这将是树本身。

在我们的示例中,将使用 Node3D 作为场景的根节点。场景树看起来像这样:

../../_images/multimesh_scene_tree.png

备注

出于简化目的,本教程使用内置图元。

现在你已准备好了一切。选择 MultiMeshInstance3D 节点并查看工具栏,你应该在视图旁边看到一个名为 MultiMesh 的额外按钮。单击它并在下拉菜单中选择填充表面。将弹出一个名为填充MultiMesh的新窗口。

../../_images/multimesh_toolbar.png ../../_images/multimesh_settings.png

MultiMesh 设置

以下是选项说明。

目标表面

用来放置源网格副本的目标表面的网格。

源网格

要在目标曲面上复制的网格。

网格向上轴

轴用作源网格的上轴。

随机旋转

随机地围绕源网格的向上轴旋转。

随机砖块

随机化源网格的整体旋转。

随机缩放

随机化源网格的比例。

Scale(大小)

将放置在目标曲面上的源网格的比例。

数量

放置在目标曲面上的网格实例数量。

选择目标曲面。在树的情况下,这应该是地形节点。源网格应该是树节点。根据你的喜好调整其他参数。按 Populate ,源网格的多个副本将放在目标网格上。 如果对结果满意,可以删除用作源网格的网格实例。

最终结果应如下所示:

../../_images/multimesh_result.png

要更改结果, 请使用不同的参数重复相同的步骤.