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.


370 Comments


winprofx winprofx
winprofx winprofx
8 hours ago

The Top Forex Brokers in India provide traders with safe, transparent, and efficient access to the global forex market. These brokers are known for offering advanced trading platforms, competitive spreads, fast execution, and reliable customer support. Many also provide demo accounts, educational resources, and flexible funding options to help both beginners and experienced traders grow their skills. Trusted brokers like WinProFX stand out by offering free funded accounts, user-friendly platforms, and professional guidance, making forex trading in India more secure and profitable.


Like

winprofx winprofx
winprofx winprofx
8 hours ago

Best Forex Trading Platforms India

The Best Forex Trading Platforms in India combine advanced technology with user-friendly features to give traders a seamless experience in the global currency market. These platforms provide real-time charts, technical indicators, secure payment options, and fast order execution, ensuring traders can make informed decisions quickly. For beginners, platforms with demo accounts and learning resources are highly valuable, while professionals look for advanced tools and low spreads. A trusted provider like WinProFX offers one of the best forex trading platforms in India, with free funded account options, powerful analytics, and 24/7 access to the forex market.

Contact us Address – 1st Floor, The Sotheby Building, Rodney Bay, Gros-Islet, SAINT Lucia P.O Box 838, Castries, Saint Lucia Phone no…

Like

Madison Carter
Madison Carter
10 hours ago

Superb post. I have already said that you are a great author. Thanks for sharing this kind of content. You may discover more about Cebu Pacific Address Main Office​ and was really impressed with their expanding network and affordable routes. Cebu Pacific Office​​ is located at Cebu Pacific Building, 8006 Metro Manila, Domestic Road, Pasay City, 1301, Philippines, strategically positioned near Ninoy Aquino International Airport. This facility serves as the central command for the airline’s operations, overseeing flight planning, marketing, customer service, and innovation initiatives across its extensive domestic and international network. As the largest low-cost carrier in the Philippines, Cebu Pacific is renowned for its affordable fares, modern Airbus fleet, and commitment to making air travel accessible across the…

Like


©2023 by Generative Hut.

bottom of page