Particles – Collision and Flow Maps

Un nouveau post sur les particules pour présenter deux features, les collisions et l’utilisation de flow maps.

Tout d’abord les collisions avec une petite vidéo:

 

 

Ces particules sont ce que l’on appelle statefull, ce qui signifie qu’elles conservent leur état précédent, et peuvent l’utiliser pour réagir en fonction de l’environnement.
Cela me permet de leur appliquer une physique rudimentaire (la gravité et l’attraction par exemple), et de réagir aux collisions avec les bords de l’écran. Mais cela permet aussi de réagir avec un environnement potentiellement dynamique. J’utilise une texture de collision. Pour chaque particule, je regarde si à sa nouvelle position se trouve une information dans cette texture. Si c’est le cas il y a une collision et la particule réagis en conséquence.
Ici j’écris du texte dans la texture de collision, mais cela peut être n’importe quoi, et peut même être dynamique.

La vidéo suivante montre l’utilisation de flow map pour diriger simultanément toutes les particules:

 

 

J’ai tout d’abord utilisé Flow Map Painter pour créer la flow map, qui est en fait un ensemble de vecteurs.

 

Flow Map Painter

 

Cette map étant créé, je l’utilise dans la passe de physique pour influencer la direction des particules. Cela permet de coordonner facilement le mouvement d’un million de particules.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.