Sobre
Simulação de Chuva
Uma simulação simples de chuva usando partículas que caem verticalmente, criando um efeito visual de chuva contínua.
Algoritmo Principal
O algoritmo usa partículas simples:
- Criação: Gera partículas na parte superior da tela com posições e velocidades aleatórias
- Movimento: Move cada partícula para baixo com velocidade constante
- Reset: Quando a partícula atinge o chão, ela para ou é reposicionada no topo
Equações Implementadas
No código:
class Particle {
constructor() {
this.x = random(0, width)
this.y = 0
this.speed = random(2, 50) // Velocidade de queda
this.size = random(0, 5)
}
update() {
// Move para baixo
this.y += this.speed
// Para quando atinge o chão
if (this.y > height - 40) {
this.speed = 0
}
}
draw() {
// Desenha como retângulo vertical
rect(this.x, this.y, 1, 10)
}
}
Novas partículas são criadas continuamente para manter a chuva constante.
Complexidade de Compreensão
Nível: Básico
- Conceitos necessários: Partículas, física básica, animação
- Matemática: Física básica (movimento uniforme)
- Programação: Arrays de objetos, loops, animação
Referências e Recursos para Estudo
Artigos e Documentação
- Wikipedia - Particle System - Sistemas de partículas
- Game Development - Particle Effects - Efeitos de partículas
- MDN - Canvas Animation - Animações em canvas
Tutoriais e Código
- The Coding Train - Particles - Tutorial sobre partículas
- The Nature of Code - Particles - Sistemas de partículas
- Processing Examples - Particles - Exemplos práticos
Aprofundamento Matemático
- Physics for Game Developers - Bourg - Física em jogos
- Real-Time Rendering - Akenine-Möller - Renderização em tempo real
Visualizações Interativas
- Particle System Explorer - Explorador de partículas
- ShaderToy - Rain - Shaders de chuva
Arquivo do processo
Todas as gerações — incluindo as ruins — fazem parte do processo.
1quadros