Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf ·...
Transcript of Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf ·...
![Page 1: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/1.jpg)
Sistemas de Partículas
Soraia Raupp Musse
![Page 2: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/2.jpg)
Sistemas de Partículas
� CONCEITO: Conjunto de partículas cujo comportamento comportamento evolui no tempo de acordo com regras algorítmicas com o objetivo de simular um fenômeno fuzzy
![Page 3: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/3.jpg)
![Page 4: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/4.jpg)
Sistemas de Partículas
![Page 5: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/5.jpg)
Sistemas de Partículas
�Usado em modelagem, animação e rendering (dependente da aplicação)Normalmente:�Normalmente:� Coleção de partículas� Atributos definidos estocasticamente
![Page 6: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/6.jpg)
Histórico
� William Reeves (1983): primeira aplicação – Fogo e aplicação – Fogo e explosão
![Page 7: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/7.jpg)
Aplicações
�Fenômenos naturais: explosões, fogos de artifício, nuvens, águaModelagem e deformação geométrica �Modelagem e deformação geométrica de superfícies
![Page 8: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/8.jpg)
Atributos de uma partícula
� Massa (real)� Posição (R3)� Velocidade (R3)� Velocidade (R )� Aceleração (R3)� Cor (RGB)� Tempo de vida (frames ou tempo)� Shape� Tamanho� Transparência
![Page 9: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/9.jpg)
Atributos de uma partícula
� Massa (real)� Posição (R3)� Velocidade (R3)
Regras algorítmicas servem para
variar esses atributos
� Velocidade (R )� Aceleração (R3)� Cor (RGB)� Tempo de vida (frames ou tempo)� Shape� Tamanho� Transparência
![Page 10: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/10.jpg)
Atributos de uma partícula
� Massa (real)� Posição (R3)� Velocidade (R3)
Movimento
� Velocidade (R )� Aceleração (R3)� Cor (RGB)� Tempo de vida (frames ou tempo)� Shape� Tamanho� Transparência
![Page 11: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/11.jpg)
Atributos de uma partícula
� Massa (real)� Posição (R3)� Velocidade (R3)� Velocidade (R )� Aceleração (R3)� Tempo de vida (frames ou tempo)� Cor (RGB)� Shape� Tamanho� Transparência
Visualização
![Page 12: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/12.jpg)
Dinâmica de Partículas
0
.
>
−=
γ
γ vFma
m=massa
a=aceleração
F=força
v=velocidade
y=atrito proporcional à velocidade da partícula
![Page 13: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/13.jpg)
Dinâmica de Partículas
� Sistemas desacoplados:� O movimento das partículas não é influenciado
pelas outras partículas. Só depende de seu estado e interação com o ambiente
� Vantagens:� Facilmente simulados� Complexidade na O(n), onde n é o número de partículas
vivas em t� Sistemas desacoplados são naturalmente paralelizáveis
![Page 14: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/14.jpg)
Dinâmica de Partículas
� Sistemas acoplados:� O movimento das partículas depende
fundamentalmente de:fundamentalmente de:� interação entre os corpos� seu estado� interação com o ambiente
� Vantagens:� Mais realista de acordo com os fenômenos reais
![Page 15: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/15.jpg)
Dinâmica de Partículas
� O acoplamento pode ser:� Fixo, determinado por vínculos� Variável, determinado por proximidade� Total� Total
Acoplamento Fixo:
Sistema Massa-mola
O(n)
Acoplamento Variável:
Cálculo dos pares de partículas
ED espaciais
n(n-1)/2 pares de partículas
Acoplamento Total: Todas as partículas
interagem
O(n2)
![Page 16: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/16.jpg)
Dinâmica de Partículas
� Redução de complexidade em sistemas acoplados:� Decomposição celular do domínio� Separar as partículas por células
Calcular as interações entre partículas da mesma célula� Calcular as interações entre partículas da mesma célula� Calcular as interações entre células vizinhas
� Complexidade O(n) se:� Nro de células proporcional ao nro de partículas� Partículas uniformemente distribuídas� Partículas “que não se movem muito”
![Page 17: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/17.jpg)
Modelo de Reeves (1983)
� Objetivo: modelar sistemas difusos, como nuvens, fumaça, água e fogo
� Porque as técnicas tradicionais de CG não são � Porque as técnicas tradicionais de CG não são adaptadas a esses fenômenos?
� Evolução de partículas de acordo com regras algorítmicas incluindo aleatoriedade
� Porque possui componente estocástico?
![Page 18: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/18.jpg)
Modelo de Reeves (1983)
� Vantagens [Reeves 1983]:� Partículas são geometricamente simples� Modelo procedural controlado por processos
estocásticos (poucos parâmetros é possível)� O modelo é dinâmico� O modelo é dinâmico
� As partículas podem ser organizadas em hierarquias em árvores contendo outros sistemas de partículas
� Esses sistemas podem nascer, evoluir e morrer em tempos separados
![Page 19: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/19.jpg)
Modelo de Reeves (1983)
� Algoritmo � Para cada quadro
� Criar novas partículas� Incluí-las na hierarquia� Definir atributos� Definir atributos
� Matar partículas velhas� Gerar novos movimentos para as partículas� Gerar uma imagem
![Page 20: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/20.jpg)
Modelo de Reeves (1983)
� Algoritmo � Para cada quadro
� Criar novas partículas� Incluí-las na hierarquia (E)� Definir atributos (E)� Definir atributos (E)
� Matar partículas velhas� Gerar novos movimentos para as partículas (E)� Gerar uma imagem
![Page 21: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/21.jpg)
Modelo de Reeves (1983)
� (E) define parâmetros que controlam a faixa de validade dos atributos de forma, aparência e movimento
� Por exemplo: n = m + vrn = número de partículas a serem criadas� n = número de partículas a serem criadas
� m = média de valores� v = variância� r = variável aleatória distribuída no intervalo [-1;1]
� O usuário controla m e v
![Page 22: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/22.jpg)
Modelo de Reeves (1983)
� Outros parâmetros:� Posição� Velocidade� Forma
Posição inicial do sistema:
(Numa região)
- Esfera, ponto, box, etc� Forma� Tamanho� Cor� Transparência� Tempo de vida
- Esfera, ponto, box, etc
- OrientaçãoVelocidade = dependente da
gravidadeNova posição = dependente da
velocidade
![Page 23: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/23.jpg)
Modelo de Reeves (1983)
� Porque uma partícula morre?� Tempo de vida: Seu tempo de vida acabou� Baixa intensidade: sua cor não pode ser vista� Baixa intensidade: sua cor não pode ser vista� Fuga do pai (na hierarquia); sai do controle
![Page 24: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/24.jpg)
Modelo de Reeves (1983)
� Rendering� Simplificação possível:
� Cada partícula é uma fonte pontual de luz (oclusão)
� Performance:� Dependendo do número de partículas a serem
simuladas, não pode ser em tempo real
![Page 25: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/25.jpg)
Exemplos
� Algoritmo de Reeves 1983� Cada partícula é representada por um pixel
na imagem gerada� A cor de cada pixel é o resultado das cores � A cor de cada pixel é o resultado das cores
de várias partículas que estão ativas no mesmo pixel
� 20000 partículas� 20 a 50 frames
![Page 26: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/26.jpg)
Exemplo 1
� Partículas são geradas numa estrutura em disco estrutura em disco circular com velocidades iniciais. Quando o tempo de vida termina, elas são removidas
![Page 27: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/27.jpg)
Exemplo 2
� Partículas são geradas todas próximas a um próximas a um ponto no espaço com velocidades iniciais. Quando o tempo de vida termina, elas são removidas
![Page 28: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/28.jpg)
Exemplo 3
� Partículas são geradas numa estrutura quadrada estrutura quadrada com velocidades iniciais. Quando o tempo de vida termina, elas são removidas
![Page 29: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/29.jpg)
Exemplo 4
� Partículas são geradas numa estrutura toróide. estrutura toróide. Quando o tempo de vida termina, elas são removidas
![Page 30: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/30.jpg)
Exemplo 5
� Partículas são geradas num ponto, porém quando o porém quando o tempo de vida termina, elas são reiniciadas
![Page 31: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/31.jpg)
Exemplo 6
� Partículas são geradas numa ponto que varia de posição que varia de posição e quando o tempo de vida termina, elas são reiniciadas
![Page 32: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/32.jpg)
Exemplo 7
� Partículas são geradas em posições posições randômicas dentro de um quadrado. Quando terminam, não são regeneradas
![Page 33: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/33.jpg)
Outros exemplos
![Page 34: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/34.jpg)
Modelo do Reeves (1985)
�Árvores no short film: The Adventures of
Andre and Wally B. (PIXAR) www.pixar.com
![Page 35: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/35.jpg)
Modelo do Reeves (1985)
�Posição das árvores na floresta�Cada árvore foi criada com Particle
SystemsSystems�Modificações em relação ao modelo
original:� Rendering tradicional (RENDERMAN), � Geração dos shapes não era fixo,
dependente para fazer folhas somente nas pontas dos galhos, e.g.
![Page 36: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/36.jpg)
Modelo do Reynolds (1987)
�Utilização de sistemas de partículas para modelagem de flocks
Stanley and Stella
![Page 37: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/37.jpg)
Modelo do Reynolds (1987)
�Objetivo: Simular bandos de pássaros, manadas de animais, cardumes, etc...
�Stanley & Stella (1988), The Lion �Stanley & Stella (1988), The Lion King(1994), Batman Returns, The Hunchback of Notre Dame (1996), Hercules (1997), Mulan (1998)
�Boid (short termo para bird-object)�Modelo mais utilizado em filmes e jogos
![Page 38: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/38.jpg)
Modelo do Reynolds (1987)
� Diferenças entre Boids e Particle Systems:� Cada boid possui uma descrição geométrica 3D
baseada em polígonos� Cada boid tem um SR local� Cada boid tem um SR local� Existe um número fixo de boids – eles não são
criados ou destruídos� Métodos de rendering podem ser usados porque
existem geralmente não muitos boids� O comportamento dos boids é dependente de
seus estados internos e externos
![Page 39: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/39.jpg)
Modelo do Reynolds (1987)
�Três regras locais:� Collision avoidance� Velocity matching� Velocity matching� Flock centering
�Comportamento emergente:� Boids andam juntos� Com velocidades parecidas � Não se interpenetram
![Page 40: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/40.jpg)
Modelo do Reynolds (1987)
�Três regras locais:� Collision avoidance (CA)� Velocity matching (VM)� Velocity matching (VM)� Flock centering (FC)
� DISCUSSÃO:
� O que aconteceria se CA=0, VM=0 e FC =0 ???
� Como podemos fazer para gerar um flock com superfícies maiores?
� Como podemos simular individualidades, e.g. Pássaros antipáticos, líderes, etc...
![Page 41: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/41.jpg)
Flocks e Boids� Flock é um grupo de objetos que exibe uma classe geral
de objetos alinhados, livres de colisão e que apresentam movimento agregado
� Para simular um flock, devemos simular comportamentos de um indivíduo
Percepção� Percepção� Dinâmica de movimento
� Boid is a simulated bird-like object
![Page 42: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/42.jpg)
Como simular um flock em Animação?
� Usar script não é boa idéia � Particle system é muito simples� Para tornar particle systems mais complexo� Para tornar particle systems mais complexo
� Percepção Local � Simulação baseada em Física� Comportamento de Flocking
� O resultado global é através da interação entre comportamentos locais individuais
![Page 43: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/43.jpg)
Behavioral Animation
� Animador é um diretor de cinema� A performance dos personagens é o resultado indireto
das instruções do diretor aos atoresdas instruções do diretor aos atores� Não saber o que vai acontecer com a simulação (onde
são informados comportamentos e condições iniciais) pode trazer inesperadas e interessantes surpresas
� Problema: as vezes não é fácial descobrir porque eles estão fazendo o que estão fazendo… ("these darn boids seem to have a mind of their own!").
![Page 44: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/44.jpg)
Flocks, Herds, and Schools
� O comportmento individual deve ser coordenado com os dos membros do flock
� Dois equilibrados e opostos comportamentos:� Desejo de ficar perto do centro do flock
Desejo de evitar colisão com o flock� Desejo de evitar colisão com o flock
� Indivíduos não prestam atenção aos comportamentos de cada pássaro� A percepção de um pássaro em relação ao resto do
flock é localizada e filtrada:� 2 ou 3 vizinhos próximos� Resto do flock
![Page 45: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/45.jpg)
Flocks Simulados
�Collision Avoidance� Evitar colisão com os membros
do flock
� Igualar velocidade � Tentam igualar as velocidades
com seus vizinhos próximos
� Ir ao centro do flock� Tentam ir ao centro do flock
![Page 46: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/46.jpg)
Collision Avoidance
�Devem evitar colisão com os outros�A colisão estática é baseada na posição
relativa dos membros do flock relativa dos membros do flock � Ignora a velocidade
![Page 47: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/47.jpg)
Igualar velocidade
�Percebe apenas a velocidade� Ignora a posição
�Sobre comportamentos de previsão de collision avoidance� If boid faz um bom trabalho com suas regras
locais, não existiram colisões no futuro
�Colision avoidance estática serve para manter uma distância mínima de separação entre os boids – e o comportamento de igualar velocidades faz permanecer verdade
![Page 48: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/48.jpg)
Ir ao centro do Flock
� O flock de cada boid é na verdade o centro dos boids mais próximos
� Isto faz com que cada boid voe na direção do � Isto faz com que cada boid voe na direção do centróide dos boids mais próximos
� Se um boid é perto do centro, este comportamento tem pouco efeito (desde que a densidade seja uniforme), mas se o boid está na borda, este comportamento tem grande efeito
� Permite o correto comportamento de splits
![Page 49: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/49.jpg)
Percepção Simulada
� O modelo de percepção imita o modelo de pássaros reais
� Pássaros reais tem percepções imperfeitas–assim boids próximos podem ocultar assim boids próximos podem ocultar pássaros que estão mais longe
� Movimento agregado dos flockings depende da sua percepção localizada e limitada� Exemplo do flock centering behaviour
![Page 50: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/50.jpg)
Região de vizinhança
Cada boid tem acesso direto a toda a cena (modelo geométrico), no entanto o flocking requer que as geométrico), no entanto o flocking requer que as reações sejam somente em relação aos flockmates, numa certa distância de vizinhança
A vizinhança é caracterizada pela distância (medida através do centro do boid) e um ângulo, medido aravés da direção de vôo do boid
Flockmates for a da vizinhança local são ignoradosA região de vizinhança define a região de influência dos
boids
![Page 51: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/51.jpg)
Outras aplicações
�Padrões de tráfego, peixes, crowds…
![Page 52: Soraia Raupp Musse - Fachada da Faculdade de Informáticasmusse/CGII/PDFs/ParticleSystems.pdf · Sistemas de Partículas Usado em modelagem, animação e rendering (dependente da](https://reader035.fdocuments.net/reader035/viewer/2022071511/613086e71ecc515869442770/html5/thumbnails/52.jpg)