https://s3-us-west-2.amazonaws.com/secure.notion-static.com/ee0f1974-4dc6-4399-b526-0a3a15571d64/Untitled.png

const step = 1

function setup() {
  createCanvas(400, 400);
  noFill()
}

function draw() {
  background(220);
  beginShape()
  
  for(let x = 0; x < width; x += step) {
    let y = height/2 + 100*sin(x/10 + frameCount)
    vertex(x, y)
  }

  endShape()
}

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/a544f354-a977-4c4d-a53b-d31af132dbab/Untitled.png

const step = 10
const amp = 100

function setup() {
  createCanvas(400, 400);
  noFill()
}

function draw() {
  background(220);
  translate(width/2, height/2)

  for (let a = 0; a < PI * 2; a += PI * 2 / 500) {
    push()
    rotate(a)
    beginShape()
    for (let x = 0; x < width/2; x += step) {
      let y = amp * (noise(x / 100 - frameCount / 10, a*2) * 2 - 1)
      vertex(x, y)
    }
    endShape()
    pop()
  }

}

// random()

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/e66678b3-b3dc-4b97-a915-f4aa3ea4a7a2/Untitled.png

const stepX = 20
const stepZ = 5
const amp = 10

function setup() {
  createCanvas(400, 400, WEBGL)
  noFill()
}

function draw() {
  background(220);

  let x
  for (let dx = -100; dx < 100; dx += stepX) {
    beginShape()
    for (let z = -1000; z < 510; z += stepZ) {
      x = amp * sin(z / 10) + dx
      let y = 100
      vertex(x, y, z)
    }
    endShape()
  }

}

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/438e840a-d51a-4dd3-8cb4-bf68a5abc91c/Untitled.png

const amp = 150
const freq = .05

function setup() {
  createCanvas(400, 400)
  fill(0)
}

function draw() {
  background(220)
  translate(width / 2, height / 2)

  for (let a = 0; a <= PI * 2 * (frameCount / 100 % 1); a += PI * 2 / 200) {
    let x = amp * sin(a)
    let y = amp * cos(a)
    line(0, 0, x, y)
  }
}

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/4fdf6de0-5963-41a9-84a3-cb0e6698c2d2/Untitled.png

const step = 10
const amp = 10
const freq = .02

function setup() {
  createCanvas(400, 400, WEBGL)
  noFill()
}

function draw() {
  background(220)

  for (let z = -1000; z < 200; z += step) {
    let x = amp * sin(z * freq + frameCount/10)
    line(x - 100,-1000, z, x - 100, 100, z)
    line(x + 100,-1000, z, x + 100, 100, z)
  }

  for (let dx = -100; dx <= 100; dx += 20) {
    beginShape()
    for (let z = -1000; z < 200; z += step) {
      let x = amp * sin(z * freq + frameCount/10) - dx
      vertex(x, 100, z)
    }
    endShape()
  }

}