member since September 2, 2013
profile picture

portfolio of
João Pedro Sacco

Optical Illusion

When more spheres are added, it becomes hard to see that all of them have straight trajectories, because they form a pattern that the brain recognizes as a spinning circle.


1. Use the RIGHT and LEFT arrow keys to add and remove spheres

Bezier Curve

This program shows how Bezier curves are drawn. The red dot shows the curve itself, while the lines and the black dots represent the underlying structure upon which the curve is drawn.


1. Press the right arrow to set new positions for the anchor points (black)

Noise-Generated Map

This program displays a map created randomly using the noise() function. The entire map (1000x1000 tiles) is created at the beggining of the program, and then only a fraction of it (90x100 tiles) is displayed. Because of how noise() is calculated, a whole different map is created everytime the program is run.


1. Use arrow keys to wander around the map
2. Use 'W' and 'S' to raise or lower sea level


Yay, colorful balls and fireworks!


1. Move the mouse around quickly for more balls
2. Press F for fireworks

OBS: Holding down F will cause a much cooler effect, though it will slow your browser to speeds never before experienced by humans.

Cellular Automata

A simple cellular automata that follows the S2345/B345678 (Walls) rule, which means every alive cell will die if it has less than 2 or more than 5 neighbours and every dead cell will live if it has more than 2 and less than 9 neighbours.


1. RIGHT-click and drag to draw alive cells
2. LEFT-click and drag to draw dead cells
3. Press ENTER to pause/unpause simulation
4. Press 'C' to set all cells to dead

Life Simulator

Each grass tile grows at a certain speed (randomly determined at the beginning of the program for each tile) up to full growth.

Each animal circle eats the grass tile under it to get energy, consuming the grass in the process. When the grass is over, they migrate. When they have enough energy, they may have children. Every step, animals lose some energy and, when they reach zero, they die.


1. LEFT-click to add an animal
2. RIGTH-click to set grass tiles to full growth
3. Press ENTER to set a new random grass configuration

Gravity Simulator

This program simulates several bodies wandering free around space. Each body has its own gravity field which affects other bodies around it. I tried to respect some Physics laws (e.g. bigger bodies accelerate slower than smaller bodies).

Disease Simulator

This program simulates the spreading of a disease through P2P infection. The variable parameters are Birth Rate, Death Rate and Infection Chance. Once inside the red ring around infected people, healthy people may or may not get sick, depending on Infection Chance. Only healthy people (blue) may have children (depending on Birth Rate) and only infected people (dark green) may die (depending on Death Rate).


1. LEFT-click to add a new individual
2. Press C to change between healthy/sick person to be added (upper-right window)
3. Press Z to set all parameters to zero

Fractal Tree


1. Use the mouse to adjust the angle of the branches
followed by

collections and classrooms

not contributed to any collections or classrooms yet.


Share Share Subscribe to sketches