top of page
Writer's picturePierre Paslier

Kinetic Generative Art Tutorial

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.


7,355 views40 comments

Recent Posts

See All

40 則留言


gendo amad
gendo amad
13 hours ago

Wavy hair for men is not just a trait; it’s a statement—a blend of grace, style, and natural flow that defines personal aesthetics. In 2024, wavy hairstyles for men are not just about looking good; they are about resonating with the inner self, projecting confidence, and embracing natural beauty. This article will explore the intricacies of wavy hairstyles, guiding you through a journey of trends, care, and styling to ensure that your hair is not just styled but celebrated. wpgio

按讚

Namrita kapoor
Namrita kapoor
14 hours ago

Model Escorts in Sikar to have a good time with

 

Has it always been your dream to spend time with models? So here is your chance to make the most of it and hook up with a beautiful model escort in Sikar. I am Namrata Kapoor and I am a hot escort from Sikar. Model Escorts in Sikar is the agency I work for which has some of the best model escorts in Sikar. Usually, models don't go out with you because they are busy. But if you hire someone from our agency, you will definitely get a chance to spend time with a beautiful escort in Sikar. And then you are free to do whatever you want with them.…

按讚

Quinn john
Quinn john
2 days ago

Amtrak stations in Wisconsin play a vital role in connecting the state to regional and national rail networks. Major stations include Milwaukee Intermodal Station, which serves the Hiawatha Service to Chicago and the Empire Builder route to the Pacific Northwest. Other key stops include Columbus, Portage, Wisconsin Dells, Tomah, and La Crosse, all part of the Empire Builder route. These stations provide convenient travel options for residents and visitors, making Wisconsin an accessible destination for rail passengers traveling both short and long distances.

已編輯
按讚

Ahmad Zakaria
Ahmad Zakaria
7 days ago

toto slot dan toto togel merupakan situs togel yang sedang banyak diminati tidak kalah juga dengan slot gacor    

situs toto dan toto togel merupakan situs terpercaya dengan jaminan jp yang lebih pasti !    

situs toto dan slot 4d adalah tautan yang mudah dapatkan uang tambahan !    

situs toto serta  slot mahjong dan toto togel  adalah situs penghasil uang terbesar !

按讚

gendo amad
gendo amad
2024年12月26日

Fire protection is a crucial component of safety strategies across residential, commercial, and industrial environments. While often considered a single concept, fire protection encompasses two distinct approaches: fire prevention and fire intervention. Understanding the differences between these strategies and how they work together is essential for minimizing risks and safeguarding lives and property.Clclick here

按讚
bottom of page