![見出し画像](https://assets.st-note.com/production/uploads/images/71735565/rectangle_large_type_2_739951285bc9c3aec08dc479f5190385.png?width=1200)
ジェネラティブアート作成時の頭のなか #AltEdu2022 8 日目
今日のお題は「お気に入りの曲を聞きながらコードを書いて下さい」とのこと。
明日2/1(火)から開催される「#AltEdu2022」は2022年の2月中,毎日お題に合わせてクリエイティブコーディングに関わる活動をわいわい行う、コーディングチャレンジのお祭りです.毎日のお題はコチラ!https://t.co/bLzPfoLyqW pic.twitter.com/GTRdeT6rTT
— Processing Community Japan (@PCD_Tokyo) January 31, 2022
私のお気に入りの曲のひとつは山下達郎のメリー・ゴー・ラウンドである。なので、それを聞きながらコーディングする。この曲は(私が言うまでもなく)詩も音楽も素晴らしいのだが、特に冒頭のコードが鳴る部分が印象的である - と感じている。詩の内容とあいまって、この部分を聞くと若かりし頃を思い出して何とも言えない気持ちになる。詩の部分では「滅びゆく時の匂い」(例の水玉のベンチのところ)等、情景的な言葉が並ぶ大変美しい歌であるので、もしまだお聞きになったことのない人は聞いてみて欲しい(私の貧弱な語彙力では、山下達郎の曲の魅力は上手く伝えられないところがもどかしいところである)。ちなみに、この曲が収められているアルバム MELODIES には、最早クリスマスの定番ソングとなった山下達郎のクリスマス・イブが収められている。
と、それはさておき、せっかくなので冒頭のコードが鳴る部分をテーマにプログラムを作ってみる。音の広がりを示す波紋と、曲の進行を示す伸びゆく直線からなる、まあ、よくあるといえばよくある構成であるが、プログラムにて映像を生成してみる:
H=250
def setup():
size(500,300)
noFill()
strokeWeight(3)
def D(x,t):
stroke(-1,255-(x-t))
circle(t,H,max(0,(x-t-20)*5))
def draw():
clear()
x=frameCount%150*5
stroke(-1,255-(x-500))
line(0,H,x,H)
D(x,150)
D(x,270)
D(x,400)
プログラムの構造は一切変えず、剰余の値をどうするのか、乗算時の係数をどうするのか、等々、各種のパラメータを調整しながらテンポと雰囲気を合わせてゆく。何となく良い感じになってきたのが上のプログラムリストである。このコードで生成される動画は以下の通り:
( #note 記事用動画) pic.twitter.com/GP1SxWlZWL
— Koji Saito (@KojiSaito) February 7, 2022
今日はこのプログラムで #つぶやきProcessing と #AltEdu2022 に参加する。早速、文字数削減作業に入る。
…といっても、インデントを削除するべくマルチステートメント化したら、あっさりと #つぶやきProcessing タグならびに #AltEdu2022 タグ込みで 280 文字に収まってしまった。昨日は結構苦労して、結果的に #つぶやきProcessing 化できなかったので、なんとも拍子抜けである。
#つぶやきProcessing #AltEdu2022 day 8
— Koji Saito (@KojiSaito) February 7, 2022
H=250
def setup():size(500,300);noFill();strokeWeight(3)
def D(x,t):stroke(-1,255-(x-t));circle(t,H,max(0,(x-t-20)*5))
def draw():clear();x=frameCount%150*5;stroke(-1,255-(x-500));line(0,H,x,H);D(x,150);D(x,270);D(x,400)#dailycoding #Python https://t.co/cpMS4TQPwy pic.twitter.com/ZOu6rU69EQ
本作をご覧になった、山下達郎のメリー・ゴー・ラウンドをご存知の皆様の頭の中に、例の冒頭の音楽が再生されたら幸いである。
この記事が気に入ったらサポートをしてみませんか?