← Duet
Duet #2 static token preview
Full screen

Static preview.

Project

by Daeinc
Aug 2022

Duet explores generative+computational motion and creates an almost infinite sequence of visual compositions. Two groups of shapes transform, merge, and split randomly. What can be disorienting starts to make sense as every element is animated from one to the other. This transition animation is what connects random pieces and creates a relationship between them. Each element is mathematically interpolated, with its motion defined by an equation.

Although there are key moments, it is hard to summarize time-based work as a static image. As a constantly evolving generative motion piece, Duet invites viewers to form their impression by feeling the rhythm over time.

Guide:

  • The animation responds to window aspect ratio. It reproduces the same outcome at the same ratio.
  • For reliable playback, keep the window active and use IPFS view.
  • See browser console for more info.
  • Tested on MacOS 12.5.1 with Chromium 104.0

Keyboard Interaction

  • [n] to play a new random loop.
  • [spacebar] to play/pause.
  • [s] to save PNG. use URL params for dimensions.
  • [up] and [down] to change shape resolution.
  • [left] and [right] to change BPM. only works while looping.
  • [h] to toggle high DPI mode. off by default.
  • [p] to toggle pixel snapping. off by default.

URL Parameters

  • add parameters separated by ampersand to the URL ex. https://.../?fxhash=...&w=1200&h=600
  • [w] and [h]: set width and height in pixels. (ex. w=1200&h=600)
  • [s] and [e]: set starting and ending keyframes (inclusive) for loop. (ex. s=20&e=24)
  • setting large values for start/end is not advised.
  • [len]: instead of start/end, set a loop length between 1 and 16. (ex. len=4)
  • [bpm]: beats per minute. (ex. bpm=80)
  • [res]: shape resolution between 0 and 18. (ex. res=2)
  • [pr]: pixel ratio. set it to 2 (or press [h]) for hi-DPI screens.
  • [ar]: maximum aspect ratio. set to any value over 1. 1.2 by default.
  • [snap]: add the param to snap to pixel grid.

License

CC BY-NC 4.0
Please refer to the included LICENSE.md for license information.
Libraries used: canvas-sketch, canvas-sketch-util, dom-events, hsv2rgb, keyframes, equations from easings.net, array shuffle from stackoverflow.

Price history

DateEventPriceMarket
2022-08-25Offer accepted75 tezfxhash marketplace v2
2022-08-22Mint96 tezfxhash issuer v2
Last completed sales index sync
fx(params) mint tickets
Block 15289815
fxhash issuer v1 (first)
Block 15289815
fxhash issuer v1
Block 15289815
fxhash issuer v2
Block 15289815
fxhash issuer fx(params)
Block 15289815
fxhash marketplace v2
Block 15289815
fxhash marketplace v1
Block 15289815
objkt.com marketplace v1
Block 15289815
objkt.com English auctions v2
Block 15289815
objkt.com marketplace v2
Block 15289815
objkt.com English auctions v1
Block 15289815
objkt.com marketplace v3.2
Block 15289815
objkt.com collection offers
Block 15289815
objkt.com English auctions v3
Block 15289815
objkt.com marketplace v3.1
Block 15289815
objkt.com Dutch auctions v1
Block 15289815

Traits

Primitive Types
base,diamond,expand6 of 255 indexed editions · 2%
Number of Trims
967 of 255 indexed editions · 26%
Split Chance
0.393 of 255 indexed editions · 36%
Direction
-1101 of 255 indexed editions · 40%
Palette Group
light40 of 255 indexed editions · 16%
Outlined
true83 of 255 indexed editions · 33%
Max Line Width
0.1448 of 255 indexed editions · 19%