top of page

Kinetic Generative Art Tutorial

  • Writer: Pierre Paslier
    Pierre Paslier
  • Jun 3, 2023
  • 2 min read

Tutorial Intro

Welcome to this tutorial where we're going to explore the mesmerizing world of generative art, inspired by the kinetic sculptures of artists like Reuben Margolin. We'll use p5.js, a powerful JavaScript library that makes coding visual and interactive elements on the web accessible to everyone.


Our goal is to create a digital artwork with a series of rotating pendulums, each varying in speed and size, to simulate the motion seen in kinetic sculptures. The final result is a beautiful, ever-changing pattern that reflects the dynamic essence of kinetic art.


This tutorial is beginner-friendly, so don't worry if you're new to p5.js or programming in general. We'll walk through each line of code step by step, explaining the concepts as we go along.


By the end of this tutorial, not only will you have created a piece of generative art, but you will also have gained a deeper understanding of loops, arrays, and object-oriented programming in p5.js. You'll be equipped with the knowledge to create your own unique generative artworks. So, let's dive in and start coding!




Generative Art Code

let pendulums = [];
let pendulumCount = 40;

function setup() {
  createCanvas(windowWidth, windowHeight);
  for(let i = 0; i < pendulumCount; i++){
    pendulums[i] = new Pendulum(i);
  }
}

function draw() {
	blendMode(NORMAL);
  background(255 );
  translate(width / 2, height / 2);
  for(let i = 0; i < pendulumCount; i++){
    pendulums[i].display();
    pendulums[i].update();
  }
}

class Pendulum {
  constructor(n){
    this.angle = 0;
    this.angleSpeed = 0.01 + n * 0.004; 
    this.radius = 30 + n * 6; 
  }
  
  update() {
    this.angle += this.angleSpeed;
  }
  
  display(){
    let x = this.radius * cos(this.angle);
    let y = this.radius * sin(this.angle);
    stroke(0,100);
    line(0, 0, x, y);
    fill(0);
    ellipse(x, y, 5, 5);
  }
}

That's it! Hope you've enjoyed learning about this particular piece and make sure to check out the other free tutorials on generativehut.com.


309 Comments



Music Later
Music Later
a day ago

This is so cool! I've always wanted to try generative art. The tutorial looks super beginner-friendly and the final result is mesmerizing. Definitely gonna give this a shot Ragdoll Archers!

Like

Kylie Smith
Kylie Smith
a day ago

The answer to the question, "What terminal is Frontier Airlines at SJU?" is Terminal A, which provides a convenient and effective travel experience. Your journey will be comfortable thanks to the modern, well-maintained facilities, friendly staff, and practical amenities. Being aware of "What terminal is Frontier Airlines at SJU" guarantees a smooth travel experience.

Like

rihaandigi1
a day ago

GrowthWonders is a leading digital marketing company dedicated to empowering learners and professionals with the right skills for career growth. We provide expert guidance and insights on the top 10 diploma courses that can help students, entrepreneurs, and job seekers enhance their knowledge in the digital space. From digital marketing and social media management to advanced SEO and Google Ads, we help individuals choose the most career-oriented diploma programs. At GrowthWonders, we focus on practical training, industry-ready skills, and hands-on learning to ensure long-term success.

Like

Pharmateq Solutions
Pharmateq Solutions
2 days ago

Pharmateq delivers cutting-edge solutions with our high-speed blister packaging systems, engineered for maximum efficiency and precision in pharmaceutical production. Our advanced machinery is designed to meet the rigorous demands of modern packaging lines, offering rapid output without compromising product safety or integrity. Whether you're packaging tablets, capsules, or soft gels, Pharmateq’s equipment ensures consistent sealing, accurate dosing, and minimal downtime. With user-friendly interfaces, robust build quality, and customizable configurations, our machines adapt seamlessly to your workflow. Ideal for both large-scale production and flexible batch runs, our high-speed blister packaging solutions help optimize performance and reduce operational costs. Pharmateq stands for innovation, reliability, and compliance with global pharmaceutical standards. Partner with us to elevate your packaging process and stay ahead in a…

Like

©2023 by Generative Hut.

bottom of page