--- title: "Partículas: fogo, faíscas e chuva" version: snapshot-2026-10-28 engineGeneration: astra-current language: C# status: source-reviewed reviewedAt: 2026-10-26 appRelease: "0.4.0-preview.20261028" runtimeVerified: false platformEvidence: [] url: https://astraengine.com.br/guia/criar/particulas/ --- # Partículas: fogo, faíscas e chuva Crie um fogo animado e faíscas que iluminam o chão, ajuste os módulos e controle pelo script. > **Validado no aparelho** · APK 0.4.0 · Folha de textura, Material do projeto e Luzes das faíscas vistos no POCO F7 em 24/10 ## 1. Criar o efeito **+** › **Efeitos › Partículas** cria um emissor com o componente **Sistema de partículas**. **Efeitos › Faíscas** já vem com trilha e luzes. Os módulos ficam empilhados na ordem da Unity, cada um com interruptor no cabeçalho. O cartão **Prévia** tem o botão ▶, que reinicia a prévia no editor. ## 2. Um fogo | Módulo | Campo | Valor | | --- | --- | --- | | Principal | Vida inicial | 1,2 s | | Principal | Tamanho inicial | 0,6 | | Emissão | Taxa por segundo | 40 | | Forma | Forma / Ângulo | Cone / 15° | | Tamanho no tempo | ligado | curva que cai de 1 a 0 | | Cor no tempo | ligado | amarelo → laranja → vermelho transparente | Para a chama animada, crie um Material do projeto com shader **Particles Unlit**, Surface **Aditivo** e uma imagem de folha de quadros; escolha-o em **Material** e ligue **Folha de textura** com Colunas 4, Linhas 4. ## 3. Faíscas que iluminam **Efeitos › Faíscas** cria um sistema com **Trilhas** e **Luzes** e um filho desativado **Luz modelo**: cada faísca escolhida pela **Proporção** copia essa luz. Numa cena noturna, o chão em volta acende e muda conforme as faíscas sobem e caem. O **Máximo de luzes** limita quantas acendem. ## 4. Controlar pelo script > O código abaixo foi conferido contra a fachada C# do APK; a execução no aparelho desta receita ainda não foi registrada. ```csharp using Astra; using Astra.Components; [ComponentId("meujogo.explosao")] public sealed class Explosao : Behavior { private float espera; public override void Update(float seconds) { espera += seconds; if (espera < 3) return; espera = 0; if (Object.GetComponent() is { } fx) fx.Emit(30); // 30 partículas de uma vez, a cada 3 s } } ``` Também existem `Play()`, `Stop()`, `StopAndClear()`, `Pause()`, `Clear()` e `IsPlaying()`. Ficha completa: [Sistema de partículas](/pt-br/snapshot-2026-10-28/componentes/astra-effects-particle-system/). ## Limites e custo - Colisão: **Planos** (até dois objetos escolhidos) ou **Mundo** (os colisores da física do Play, com um raio por partícula e teto por quadro). - Custo no POCO F7: 1.000 faíscas ~0,26 ms de GPU; quads grandes cobrindo a tela custam mais pelo preenchimento. - Em aparelho sem descritores bindless, o Material do projeto cai para a textura própria.