Complex emission shapes
Quando não for suficiente emitir partículas a partir de uma das formas simples disponíveis no process material, o Godot oferece uma maneira de emitir partículas a partir de formas arbitrárias e complexas. As formas são geradas a partir de meshes na cena e armazenadas como texturas no process material de partículas. Esse é um fluxo de trabalho muito versátil, que permitiu aos usuários utilizarem sistemas de partículas para coisas que vão além dos casos de uso tradicionais, como folhagem, folhas em uma árvore ou efeitos holográficos complexos.
Nota
Quando você cria pontos de emissão a partir de meshes, só é possível selecionar um único nó como fonte de emissão. Se quiser que as partículas sejam emitidas a partir de várias formas, você precisará criar vários sistemas de partículas ou combinar as meshes em uma só em um software DCC externo.
Crie pontos de emissão de partículas...
...de uma instância de malha como fonte
Mais pontos = maior densidade de partículas
Para utilizar esse recurso, comece criando um sistema de partículas na cena atual. Adicione uma instância de mesh que servirá como a fonte dos pontos de emissão de partículas. Com o sistema de partículas selecionado, navegue até o menu do viewport e selecione a entrada GPUParticles3D. A partir daí, selecione Create Emission Points From Node.
Uma janela de diálogo será exibida pedindo para você selecionar um nó como fonte de emissão. Escolha uma das instâncias de mesh na cena e confirme sua seleção. A próxima janela de diálogo lida com a quantidade de pontos e como eles serão gerados.
Emission Points controla o número total de pontos que você está prestes a gerar. As partículas serão emitidas a partir desses pontos, portanto, o valor a ser inserido aqui depende do tamanho da mesh de origem (quanto de área você precisa cobrir) e da densidade desejada das partículas.
Emission Source oferece 3 opções diferentes de como os pontos são gerados. Selecione Surface Points se tudo o que você deseja é distribuir os pontos de emissão pela superfície da mesh. Selecione Surface Points + Normal (Directed) caso também queira gerar informações sobre as normais da superfície e fazer as partículas se moverem na direção em que as normais apontam. A última opção, Volume, cria pontos de emissão em todo o interior da mesh, não apenas na sua superfície.
Os pontos de emissão são armazenados no sistema de coordenadas local do sistema de partículas, portanto, você pode mover o nó de partículas e os pontos de emissão o acompanharão. Isso pode ser útil quando você deseja usar o mesmo sistema de partículas em vários lugares diferentes. Por outro lado, pode ser necessário regenerar os pontos de emissão ao mover o sistema de partículas ou a mesh de origem.
Emission shape textures
As texturas de formato de emissão disponíveis
Todos os dados para formas complexas de emissão de partículas são armazenados em um conjunto de texturas. A quantidade depende do tipo de forma de emissão que você usa. Se você definir a propriedade Shape no grupo Emission Shape do particle process material como Points, terá acesso a 2 propriedades de textura: Point Texture e Color Texture. Se definir como Directed Points, há uma terceira propriedade chamada Normal Texture.
Point Texture contém todos os pontos de emissão possíveis que foram gerados na etapa anterior. Um ponto é selecionado aleatoriamente para cada partícula quando ela nasce. Normal Texture, se existir, fornece um vetor de direção nesse mesmo local. Se a propriedade Color Texture também estiver definida, ela fornece a cor da partícula, amostrada no mesmo local das outras duas texturas e modulando qualquer outra cor configurada no process material.
Também existe a propriedade Point Count, que você pode usar para alterar o número de pontos de emissão a qualquer momento após a criação da forma de emissão. Isso inclui alterações dinâmicas em tempo de execução enquanto o jogo está rodando.