Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

Utilizando MultiMeshInstance3D

Introdução

Em um cenário normal, você usaria um nó MeshInstance3D para exibir uma malha 3D (como o modelo humano para o personagem principal), mas, em alguns casos, você gostaria de criar várias instâncias da mesma malha em uma cena. Você poderia duplicar o mesmo nó várias vezes e ajustar as transformações manualmente. No entanto, esse pode ser um processo tedioso e o resultado pode parecer mecânico. Além disso, este método não é propício para iterações rápidas. O MultiMeshInstance3D é uma das soluções possíveis para este problema.

O MultiMeshInstance3D, como o nome sugere, cria várias cópias de uma MeshInstance sobre a superfície de uma malha específica. Um exemplo seria fazer com que uma malha de árvore povoe uma malha de terreno com árvores de escalas e orientações aleatórias.

Configurando os nós

A configuração básica requer três nós: o nó MultiMeshInstance3D e dois nós MeshInstance3D.

Um nó é usado como alvo: a malha de superfície na qual você deseja posicionar as várias malhas. No exemplo da árvore, esse alvo seria o terreno.

O outro nó é usado como a fonte, a malha que você quer duplicar. No caso da árvore, isso seria a árvore em si.

Em nosso exemplo, usaríamos um nó Node3D como o nó raiz da cena. Sua árvore de cena ficaria assim:

../../_images/multimesh_scene_tree.png

Nota

Por uma questão de simplicidade, este tutorial utiliza primitivas integradas (built-in primitives).

Agora você tem tudo pronto. Selecione o nó MultiMeshInstance3D e olhe para a barra de ferramentas; você deverá ver um botão extra chamado MultiMesh ao lado de View. Clique nele e selecione Populate surface no menu suspenso. Uma nova janela intitulada Populate MultiMesh será exibida.

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

Configurações do MultiMesh

Abaixo estão as descrições das opções.

Superfície Alvo

A malha usada como superfície de destino na qual serão colocadas as cópias da sua malha de origem.

Malha de Origem

A malha que você deseja duplicar na superfície de destino.

Eixo de Cima da Malha (Mesh Up Axis)

O eixo usado como o eixo "para cima" (up axis) da malha de origem.

Rotação aleatória

Aleatoriza a rotação em torno do eixo "para cima" da malha de origem.

Inclinação aleatória

Randomizando a rotação geral da malha de origem.

Escala Aleatória

Randomizando a escala da malha de origem.

Escala

A escala da malha de origem que será colocada sobre a superfície de destino.

Quantidade

A quantidade de instâncias(cópias) da malha que será colocada sobre a superfície de destino.

Selecione a superfície do alvo. No caso da árvore, este deve ser o nó da paisagem. A malha de origem deve ser o nó da árvore. Ajuste os outros parâmetros de acordo com sua preferência. Pressione Populate e várias cópias da malha de origem serão colocadas sobre a malha de destino. Se você estiver satisfeito com o resultado, você pode excluir a instância(cópia) de malha usada como malha de origem.

O resultado final deve ser mais ou menos assim:

../../_images/multimesh_result.png

Para alterar o resultado, repita as etapas anteriores utilizando parâmetros diferentes.