![](https://static.wixstatic.com/media/651dd3_8ff38dbdb15d4372b95960415e224d60~mv2.png/v1/fill/w_980,h_429,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/651dd3_8ff38dbdb15d4372b95960415e224d60~mv2.png)
Generative art software inspired by math modeling of collective behavior with potential applications in digital art, video games, graphic design, web design, and architecture.
​
Imagine a flock of live brushes on your canvas. You set their initial locations and directions of walk, mark a speed limit, tell them how to behave with each other, select a rule to pick colors for each step, and, finally, let them walk over your canvas. What will you see as a result? It may look like this background, or these videos, or images in the gallery below, or something entirely different. The result is only limited by your imagination.
​
With this software you can control thousands of brushes on a digital canvas. It is a visual programming environment, where you do not need to write any code. To control brushes, use parameters and special maps - images with color coded areas, where each pixel may trigger a code changing direction, speed, transparency, and other parameters of passing brushes.
​
Math chaos patterns (MCP) was presented at SIGGRAPH2020.
​
For information about the developer of MCP click here or here.
​
To share your results and experiences (using this app) join Facebook group Math chaos art
​
To see news, examples, tutorials, or to leave a feedback visit Facebook page Math chaos patterns
​
To get the latest version of MCP click here.
​
To get a previous version click here.
Gallery
![]() | ![]() | ![]() |
---|---|---|
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() |