O que é um sistema de partículas na arte digital?
Fumaça, faíscas, enxames, nuvens de luz: boa parte do movimento na arte digital é feita de partículas. Esta exploração explica o que é um sistema de partículas, como funcionam suas regras, por que peças tão simples acabam formando imagens complexas e em que ele se diferencia de uma simulação física ou de um sistema generativo, com quadros reais de Matter, Nebula e Vortex.

Um sistema de partículas é uma forma de desenhar algo como uma grande quantidade de elementos pequenos, as partículas, todos movidos pelas mesmas regras simples. Uma partícula sozinha não parece grande coisa: um ponto com uma posição, uma velocidade e talvez uma cor ou uma idade. Juntas, milhares delas podem ser lidas como fumaça, um bando de pássaros, uma nuvem de gás ou um campo de luz que se desvia quando sua mão passa.
De onde vem a ideia
O termo vem da computação gráfica. Em 1983, William T. Reeves, que na época trabalhava na Lucasfilm, publicou Particle Systems: A Technique for Modeling a Class of Fuzzy Objects, em que descrevia o método por trás do fogo que se espalha por um planeta no "efeito Gênesis" de Jornada nas Estrelas II: A Ira de Khan (1982). O argumento dele era simples: fogo, nuvens ou água não têm uma superfície fixa para modelar, então é mais fácil descrever como muitas coisas minúsculas nascem, se movem, mudam e morrem.
Os artistas adotaram a ideia rapidamente. A animação Particle Dreams (1988), de Karl Sims, aplicava regras de comportamento a milhares de partículas para criar uma nevasca, uma cachoeira e uma cabeça inquieta. Hoje o mesmo princípio funciona em motores de jogos, programas de efeitos visuais e bibliotecas de programação criativa, e também no navegador, na placa de vídeo de um celular comum.
O que é uma partícula e o que a move
Na maioria dos sistemas, uma partícula é uma lista curta de números: onde ela está, com que rapidez e em que direção se desloca (sua velocidade) e, às vezes, sua idade, sua massa ou sua cor. O sistema repete o mesmo ciclo muitas vezes por segundo, para cada partícula:
- Somar as forças que atuam no lugar onde a partícula está.
- Mudar um pouco sua velocidade nessa direção.
- Deslocá-la de acordo com a velocidade.
- Desenhá-la.

Quase tudo o que é interessante acontece na primeira etapa. Uma força é qualquer regra que diga "empurre para cá, neste lugar". A atração aproxima as partículas de um ponto e a repulsão as afasta, em geral com menos intensidade quanto mais longe estão. Um campo de fluxo dá uma direção a cada lugar, como uma correnteza na água. O amortecimento tira um pouco de velocidade a cada quadro para que nada dispare para sempre. Muitos sistemas também têm emissores, que criam novas partículas, e um tempo de vida depois do qual cada uma se apaga.
É a velocidade que faz o resultado parecer físico. Uma partícula não salta para onde a força aponta: ela vira em direção a ela ao longo de vários quadros, passa do ponto e faz curvas. Essa inércia explica por que um campo de partículas parece ter peso.
Como peças simples criam imagens complexas
Cada regra cabe em uma ou duas linhas, e mesmo assim a imagem que elas produzem quase nunca é previsível. Os dois quadros abaixo vêm de um pequeno sistema escrito para esta história: 6.000 partículas espalhadas ao acaso, cada uma lendo a mesma corrente suave e aproximando aos poucos sua velocidade da dessa corrente. Nenhuma partícula sabe que as outras existem.


Em poucos segundos, a dispersão inicial se organizou em faixas, redemoinhos e poças vazias. Ninguém desenhou essas faixas: elas aparecem porque milhares de partículas seguem o mesmo campo e se acumulam onde suas correntes convergem. É isso que significa emergência: uma estrutura na escala do conjunto que nenhuma regra descreve na escala de cada peça. O guia sobre arte generativa interativa acompanha a mesma ideia por meio do Jogo da Vida e dos boids, sistemas em que os agentes reagem, sim, uns aos outros.
Três mundos, três técnicas
É tentador imaginar que toda imagem de partículas é uma simulação física. Os três mundos de partículas do Synfield mostram que não é assim, e a diferença fica visível assim que você sabe onde olhar.
Matter: uma simulação
Matter é um sistema de partículas no sentido clássico. Até cerca de 65.000 partículas guardam sua posição e sua velocidade de um quadro para o outro, armazenadas na placa de vídeo e atualizadas a cada quadro. Cada uma é levada por uma corrente calculada como o rotacional de um campo de ruído, uma técnica apresentada por Robert Bridson e colegas em Curl-Noise for Procedural Fluid Flow (2007), que cria redemoinhos sem amontoar as partículas, mais um pequeno termo extra que as junta em filamentos. Por cima disso entram as suas forças: o ponteiro do mouse atrai e mexe, o código lê uma palma aberta diante da câmera como um empurrão, manter os dedos em pinça cava um poço de gravidade e, ao soltar, sai uma onda.



Nebula: calculada, não simulada
Nebula tem até 52.000 pontos, mas nenhum deles se lembra de onde estava. Cada um tem um lugar fixo dentro de uma nuvem gerada quando o mundo se abre. A cada quadro, a placa de vídeo calcula onde cada ponto deve aparecer a partir desse lugar, do tempo, de quanto a mão está aberta, da posição do ponteiro e de qualquer onda de choque em andamento. Ao fechar a mão, as camadas internas se recolhem primeiro e as externas depois, porque seguem duas molas diferentes.


A nuvem se move como um fluido, mas está mais perto de uma animação guiada por regras. Como nada se acumula de um quadro para o outro, ela sempre reencontra sua forma.
Vortex: uma única grandeza com memória
Vortex desenha dezenas de milhares de traços curtos em torno de um núcleo escuro. As posições deles também são calculadas: cada traço tem sua própria órbita e gira com uma rotação compartilhada que é mais rápida perto do centro, de modo que o disco se cisalha. O que tem memória é um único número, o giro. Desenhar círculos enquanto você segura o vórtice aumenta esse número; depois que você solta, o atrito o reduz devagar.


Partículas, física e sistemas generativos
Os três termos se sobrepõem, mas não são sinônimos.
| Termo | O que é | Exemplo |
|---|---|---|
| Sistema de partículas | Um modo de representar algo como muitos elementos pequenos movidos por regras | Faíscas e fumaça em um filme, Matter, Nebula |
| Simulação física | Um modelo que segue de perto as leis da física e é conferido com medições | O ar em volta de uma asa, um teste de colisão |
| Sistema generativo | Um processo de regras, muitas vezes com acaso, que produz a obra com certa autonomia | O Jogo da Vida, um desenho de plotter |
Um sistema de partículas pode fazer parte de uma simulação física, como quando engenheiros acompanham as gotículas de um spray. Na arte, porém, as forças costumam ser escolhidas porque parecem e soam certas, não porque sejam exatas: as correntes de Matter não são ar nem água de verdade. Por isso a maior parte da arte de partículas também é arte generativa. Quem cria desenha as regras, e o sistema produz imagens que ninguém desenhou uma a uma.
Por que partículas combinam com arte interativa
As partículas respondem bem a uma pessoa porque cada uma reage ao que está à sua volta. Uma mão ou um ponteiro são só mais uma força na mesma soma que a corrente, então o sistema não precisa entender um gesto para responder a ele. A resposta é contínua, não um interruptor, e como as partículas têm inércia, um movimento deixa um rastro que dura alguns segundos depois que você para. Isso é muito parecido com o circuito de agir e receber resposta descrito em O que é arte interativa?.
Se quiser construir um, o livro gratuito on-line The Nature of Code, de Daniel Shiffman, tem um capítulo muito claro sobre sistemas de partículas, e a página de Craig Reynolds sobre os boids mostra o que acontece quando as partículas começam a se orientar pelas vizinhas.
Em resumo
Um sistema de partículas é feito de muitos elementos simples, um ciclo e um conjunto de forças. As forças dão caráter à imagem: as correntes trazem deriva, a atração e a repulsão trazem uma resposta a um ponto, a inércia traz peso. E nem toda imagem de partículas é uma simulação. Algumas são recalculadas do zero a cada quadro, e outras guardam uma única grandeza com memória. Perceber essas escolhas é um bom jeito de ler qualquer obra feita de partículas.