🕛
Thursday / Oct 20th, 202210/20/2022

Challenges

Featured Challenge:
#174 — AppleSoft Basic Fractal Tree

Take a trip back in time and let's learn all about GR (graphics) and HGR (high resolution graphics) in AppleSoft BASIC on a restored Apple II+ computer! Can we render a fractal tree?

sep 12, 2022

AppleSoft Basic Fractal Tree

Filter by Language

Processing

Filter by Topic

Pick a topic to filter

It's the Mandelbulb! What happens when you take the original fractal (The Mandelbrot Set) and extend it into 3D space. And how do you visualize it in Processing (Java) as a point cloud?

The Mandelbulb

In this video I explore the wonders of the copy() function in the creative coding platform Processing, simulating slitscan photography and bending time itself! This video is thanks to Tim Rodenbröker’s generous donation to The Processing Foundation!

Slitscan Time Displacement Effect

In this challenge, I demonstrate the entire process of training and deploying a machine learning classification model in JavaScript – data collection, model training, and prediction!

Shape Classifier Neural Network with ml5.js

Coding in the Cabana is a series where I attempt challenges from my garden cabana in Brooklyn, NY. In this episode, I animate the path of the classic "space filling curve" known as the Hilbert Curve.

Hilbert Curve

The Ramer–Douglas–Peucker algorithm (aka "iterative end-point fit algorithm"), takes a curve composed of line segments and reduces the fidelty to a "lower fidelity" curve with fewer points.

RDP Algorithm

Can I build an interactive 3D Rubik's cube in Processing? Yes! Someday I hope to return to this project and add an AI solver!

Rubik's Cube

In this multi-part coding challenge I show how to use a noise field and polar coordinates to create a perfect GIF loop.

Polar Noise Loops

In this multi-part challenge, I use a parametric equation (from Wolfram Mathworld) to draw a heart curve in Processing (Java).

Heart Curve

In this video, I follow Mike Ash’s guide to Fluid Simulation and port Jos Stam’s "Real-Time Fluid Dynamics for Games" algorithm and code in Processing (Java).

Fluid Simulation

In this holiday coding challenge, I create a "Brownian Tree Snowflake" in Processing (Java). This video was recorded as part of a fundraiser for the Processing Foundation.

Brownian Tree Snowflake

In this coding challenge, I implement Omar Pol’s fractal toothpick sequence.

Toothpicks

In this coding challenge, I create a flocking simulation in JavaScript based on Craig Reynolds "boids" algorithm.

Flocking Simulation

Yes, sorting numbers can be fun! In this challenge I attempt to implement the "bubble sort" algorithm in Processing (Java) and visualize the process itself with animated lines.

Bubble Sort Visualization

Can I draw and rotate a 3D cube using Processing's 2D renderer with just some math?!?! Yes! Watch to learn more about rotation and projection matrices along with perspective and orthographic projection!

3D Rendering with Rotation and Projection

In this coding challenge, inspired by Numberphile I visualize "sandpiles" with Processing (Java).

Sandpiles

In this coding challenge, I implement a pixel-based “fire” algorithm using Processing (Java).

Fire Effect

In this coding challenge, I attempt to simulate 2D water ripples using Processing (Java).

2D Water Ripple

Happy Star Wars day! May the fourth be with you! In this challenge, I code the iconic text scrolling/title crawl in Processing (Java) in 15 minutes!

May the 4th Scrolling Text

In this coding challenge, I create a double pendulum simulation in Processing.

Double Pendulum

In this coding challenge, I attempt to implement the Floyd-Steinberg Dithering algorithm and create a "image stippling" effect on an image (kitten, of course) using Processing.

Floyd-Steinberg Dithering

Langton's Ant is a cellular automaton that starts off with simples rules but takes on complex emergent behavior.

Langton's Ant

Getting tied up in 3D Knots in Processing is loads of fun! Thank you to Paul Bourke for the helpful reference and formulae!

3D Knots

In this multi-part challenge, I create a simplified version of the classic Atari video game Frogger in Processing (Java).

Frogger

In this challenge, I attempt (emphasis on the word "attempt") to program the classic video game Pong in Processing (Java).

Pong!

In this multi-part coding challenge, I demonstrate how to implement kinematics in Processing (Java).

Kinematics

In this coding challenge, I attempt to create a "Fractal Spirograph" with Processing (Java). The visuals are inspired by images and explanation on C. J. Chen’s blog.

Fractal Spirograph

In this coding challenge, I simulate a "random walk" with vectors in p5.js, varying the distance of each step size. This is known as a "Lévy Flight" (named after french mathematician Paul Lévy.)

Random Walker with Vectors and Lévy Flight

In this coding challenge, I simulate a "random walk" with the p5.js library. This video is part of the course Nature of Code at ITP, Tisch, NYU.

Random Walker

In this multi-part coding challenge, I demonstrate how to use a circle packing algorithm.

Circle Packing

In this coding challenge, I implement “Pixel Sorting” in Processing (Java). Using a “selection sort” algorithm, I sort the pixels of an image by brightness and hue.

Pixel Sorting in Processing

In this coding challenge, I simulate a blob-like shape with wobbly edges using beginShape(), endShape(), polar coordinates, and perlin noise.

Blobby!

In this coding challenge, I implement a "Poisson-disc Sampling" algorithm to evenly (but randomly) distribute a set of seed points throughout a canvas. The algorithm is implemented in JavaScript using p5.js.

Poisson-disc Sampling

Let's code some Metaballs (aka Isosurfaces) in Processing and how to control them using the Blob Detection methodology from my computer vision tutorial!

Metaballs

In this 4th of July themed coding challenge, I build an HTML5 canvas fireworks simulation from scratch using the p5.js JavaScript library. I also show how to use Processing to create 3D Fireworks.

Fireworks

In this coding challenge, I use the "superformula" to make a 3D "supershape" in Processing. This is part 4 of a multi-part series on superformulas, superellipses and supershapes

3D Supershapes

In this coding challenge, I create a sphere in Processing using spherical coordinates and triangle strips. This is the 3rd part of a multi-part series on superformulas, superellipses and supershapes.

Spherical Geometry

Boing! Using some particles and some springs with the Toxiclibs physics library, I create a 3D cloth simulation in Processing. Toxiclibs can now be downloaded from Processing's library manager.

3D Cloth with Toxiclibs

In this third installment of my series on algorithmic botany, I discuss L-systems and how they can be used to generate trees and other fractal patterns in p5.js.

Fractal Trees - L-System