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.

3D Particle system properties

Emissor de propriedades

../../../_images/particle_props_emitter.webp

A caixa de seleção ao lado da propriedade Emitting ativa e desativa o sistema de partículas. As partículas só serão processadas e renderizadas se a caixa estiver marcada. Você pode definir esta propriedade em tempo de execução se quiser ativar ou desativar sistemas de partículas dinamicamente.

A propriedade Amount controla o número máximo de partículas visíveis a qualquer momento. Aumente o valor para gerar mais partículas, ao custo de desempenho.

A propriedade Amount Ratio é a proporção de partículas em comparação com a quantidade que será emitida. Se for menor que 1.0, a quantidade de partículas emitidas durante a vida útil será a Amount * Amount Ratio. Alterar este valor durante a emissão não afeta as partículas já criadas e não faz com que o sistema de partículas reinicie. É útil para criar efeitos onde o número de partículas emitidas varia ao longo do tempo.

Você pode definir outro nó de partícula como um `Sub Emitter, que será criado como um filho de cada partícula. Consulte a seção Sub-emitters neste manual para uma explicação detalhada sobre como adicionar um sub-emissor a um sistema de partículas.

Time properties

../../../_images/particle_props_time.webp

A propriedade Lifetime controla por quanto tempo cada partícula existe antes de desaparecer novamente. É medida em segundos. Muitas propriedades das partículas podem ser configuradas para mudar ao longo da vida útil da partícula e fazer uma transição suave de um valor para outro.

Lifetime e Amount estão relacionados. Eles determinam a taxa de emissão do sistema de partículas. Se você quiser saber quantas partículas são geradas por segundo, esta é a fórmula que você usaria:

\[Partículas por segundo = \frac{Amount}{Lifetime}\]

Exemplo: emitir 32 partículas com vida útil de 4 segundos cada significaría que o sistema emite 8 partículas por segundo.

A propriedade Interp to End faz com que todas as partículas no nó sejam interpoladas em direção ao fim de sua vida útil.

Se a caixa de seleção ao lado da propriedade One Shot estiver marcada, o sistema de partículas irá emitir a quantidade (amount) de partículas e depois se desativar. Ele "roda" apenas uma vez. Esta propriedade fica desmarcada por padrão, então o sistema continuará emitindo partículas até ser desativado ou destruído manualmente. Partículas de "one-shot" são uma boa opção para efeitos que reagem a um único evento, como a coleta de itens ou estilhaços que explodem quando uma bala atinge uma parede.

A propriedade Preprocess é uma forma de avançar rapidamente para um ponto no meio da vida útil do sistema de partículas e começar a renderizar a partir daí. Ela é medida em segundos. Um valor de 1 significa que quando o sistema de partículas iniciar, ele parecerá que já esteve rodando por um segundo.

Isso pode ser útil se você quiser que o sistema de partículas pareça que está ativo há algum tempo, mesmo que tenha acabado de ser carregado na cena. Considere o exemplo abaixo. Ambos os sistemas de partículas simulam poeira voando na área. Com um valor de preprocess de 0, não haveria poeira nos primeiros segundos porque o sistema ainda não emitiu partículas suficientes para que o efeito se tornasse perceptível. Isso pode ser visto no vídeo à esquerda. Compare isso com o vídeo à direita, onde o sistema de partículas é pré-processado por 4 segundos. A poeira fica totalmente visível desde o início porque pulamos os primeiros quatro segundos de tempo de "configuração".

../../../_images/particle_preprocess.webp

Sem pré-processamento (esquerda) vs. 4 segundos de pré-processamento (direita)

Você pode desacelerar ou acelerar o sistema de partículas com a propriedade Speed Scale. Isso se aplica tanto ao processamento dos dados quanto à renderização das partículas. Defina-o como 0 para pausar o sistema de partículas completamente ou defina-o como algo como 2 para fazê-lo se mover duas vezes mais rápido.

../../../_images/particle_speed_scale.webp

Valores diferentes para a escala de velocidade: 0.1 (esquerda), 0.5 (meio), 1.0 (direita)

A propriedade Explosiveness controla se as partículas são emitidas sequencialmente ou simultaneamente. Um valor de 0 significa que as partículas são emitidas uma após a outra. Um valor de 1 significa que todas as partículas de amount são emitidas ao mesmo tempo, dando ao efeito uma aparência mais "explosiva".

A propriedade Randomness adiciona um pouco de aleatoriedade ao tempo de emissão das partículas. Quando definido como 0, não há aleatoriedade alguma e o intervalo entre a emissão de uma partícula e a próxima é sempre o mesmo: as partículas são emitidas em intervalos regulares. Um valor de Randomness de 1 torna o intervalo completamente aleatório. Você pode usar essa propriedade para quebrar um pouco da uniformidade em seus efeitos. Quando Explosiveness é definido como 1, esta propriedade não tem efeito.

Partículas rodando em FPS baixo

Interpolação desligada (esquerda) vs. ligada (direita)

A propriedade Fixed FPS limita a frequência com que o sistema de partículas é processado. Isso inclui atualizações de propriedades, bem como colisões e atratores. Isso pode melhorar muito o desempenho, especialmente em cenas que fazem uso intenso de colisão de partículas. Observe que isso não altera a velocidade com que as partículas se movem ou giram. Você usaria a propriedade Speed Scale para isso.

Quando você define o Fixed FPS para valores muito baixos, você notará que a animação das partículas começa a parecer instável. Isso pode ser desejável se encaixar na direção de arte, mas na maioria das vezes, você vai querer que os sistemas de partículas animem suavemente. Isso é o que a propriedade Interpolate faz. Ela mistura as propriedades das partículas entre as atualizações para que mesmo um sistema de partículas rodando a 10 FPS pareça tão suave quanto rodando a 60.

Nota

Ao usar colisão de partículas, o "tunneling" pode ocorrer se as partículas se moverem rapidamente e os colisores forem finos. Isso pode ser remediado aumentando o Fixed FPS (com custo de desempenho).

Collision properties

Ver também

A configuração da colisão de partículas requer realizar passos adicionais descritos em 3D Particle collisions.

A propriedade Base Size define o tamanho de colisão padrão de cada partícula, que é usado para verificar se uma partícula está atualmente colidindo com o ambiente. Você geralmente vai querer que este valor seja aproximadamente do mesmo tamanho da partícula. Pode fazer sentido aumentar este valor para partículas que são muito pequenas e se movem muito rápido para evitar que elas passem pela geometria de colisão.

Drawing properties

Particle drawing properties

A propriedade Visibility AABB define uma caixa ao redor da origem do sistema de partículas. Enquanto qualquer parte desta caixa estiver no campo de visão da câmera, o sistema de partículas é visível. Assim que sai do campo de visão da câmera, o sistema de partículas para de ser renderizado por completo. Você pode usar esta propriedade para aumentar o desempenho mantendo a caixa o menor possível.

Uma coisa a ter em mente quando você define um tamanho para a Visibility AABB é que as partículas que estão fora de seus limites desaparecem instantaneamente quando ela sai do campo de visão da câmera. A colisão de partículas também não ocorrerá fora da Visibility AABB. Embora não seja tecnicamente um bug, isso pode ter um efeito negativo na experiência visual.

Quando a propriedade Local Coords está marcada, todos os cálculos de partículas usam o sistema de coordenadas local para determinar coisas como para cima e para baixo, gravidade e direção do movimento. Para cima e para baixo, por exemplo, seguiriam a rotação do sistema de partículas ou do seu nó pai. Quando a propriedade não está marcada, o espaço de mundo global é usado para estes cálculos: Para baixo sempre será -Y no espaço de mundo, independentemente da rotação do sistema de partículas.

../../../_images/particle_coords.webp

Coordenadas do espaço local (esquerda) vs. coordenadas do espaço de mundo (direita)

A propriedade Draw Order controla a ordem em que as partículas individuais são desenhadas. Index significa que elas são desenhadas na ordem de emissão: partículas que são geradas mais tarde são desenhadas sobre as mais antigas. Lifetime significa que elas são desenhadas na ordem de seu tempo de vida restante. Reverse Lifetime inverte a ordem de desenho de Lifetime. View Depth significa que as partículas são desenhadas conforme a sua distância da câmera: As mais próximas da câmera ficam sobre as mais distantes.

A propriedade Transform Align controla a rotação padrão das partículas. Disabled significa que elas não se alinham de nenhuma forma particular. Em vez disso, sua rotação é determinada pelos valores definidos no material de processo. Z-Billboard significa que as partículas sempre ficarão de frente para a câmera. Isso é semelhante à propriedade Billboard no Standard Material. Y to Velocity significa que o eixo Y de cada partícula se alinha com sua direção de movimento. Isso pode ser útil para coisas como balas ou flechas, onde você quer que as partículas sempre apontem "para frente". Z-Billboard + Y to Velocity combina os dois modos anteriores. O eixo Z de cada partícula apontará para a câmera enquanto seu eixo Y se alinhará com sua velocidade.

Trail properties

Rastros de partículas

Particle trail properties

A propriedade Enabled controla se as partículas são renderizadas como trilhas. A caixa precisa ser marcada se você quiser usar trilhas de partículas.

A propriedade Length Secs controla por quanto tempo uma trilha deve ser emitida. Quanto maior essa duração, mais longa será a trilha.

Consulte a seção Particle trails neste manual para uma explicação detalhada de como as trilhas de partículas funcionam e como configurá-las.