Polyrhythm

Polygon shapes spinning at different speeds, playing interlocking patterns.

This started as me trying to make a musical hex-arp style game. While I was extremely happy with the sawtooth sound, and had a whole “press up/down to change shape” thing going on, I fell at the final step of making this a game… I felt that if I could encourage people to twist the shape and thus step through the arpeggiations with a game mechanic, I’d trick people into making music, which I guess is backwards from how musical games really work, which is generally a set song or sequence and very small interactions within that make it “feel” like you’re playing it, or are slightly additive to the larger piece.

REGARDLESS!

The shapes felt cool, and something had to come of it. Eventually I added more shapes, with the idea of a kinda polyrhythmic orchestra, and something to “auto play” which, if you’ve played with any of the other experiments, seems to be a trend when I fall down at making something actually musically make sense. (spirograph and cellular sequencer are good examples of this). But that’s ok! The result created a cool little symphony of noise, and as I began injecting different twists and arpeggiation patterns, something fun emerged.

And then something to bring it all together.

The melder keyboard (Z through M on the keyboard, although I found it fun to use the mouse since I can drag across keys) temporarily shifts all shapes to a new root. Release the keys and everything snaps back, which was equally important to encourage play.

  • 4 shapes with different note counts: triangle (3), square (4), pentagon (5), hexagon (I dont need to say every hape sides, but 6)
  • 4 oscillator timbres per voice: triangle, square, sawtooth, sine -> independent of shape (decoupling these helped it sound a lot nicer)
  • Chord inversions and arpeggio patterns (up, down, bounce) per voice
  • “Melder” keyboard shifts all voices to a common root with filter sweep
  • Lock individual voices to keep them anchored during melds, so they don’t change

Changelog

  • Initial release