電飾みたいに流れるように点灯していくパターン
イルミネーションの電飾のように、右から左へ光が流れていくようなパターンを作りました。
こんな感じです。
○単色ver.
○2色ver.
ただ単に「1色流す」っていうのは割と簡単に出来たのですが…
ベースの色は(20 0 245 )の青。ここにハーフぐらいの明るさの赤を流して、さらにはグリーンも追加で流したい…条件をたくさん付けていくと、複雑になってきました。
それで、出来上がったパッチがこちら。
左側の「Bace Color」という所で、ベースの色を選択。
色味も明るさも設定できる状態。
ここではcolor blast(LED)を5台使って試してるので、「P red × 5」〜と書いてあるサブパッチは、その分のアドレスをパッチしています。
「Accent Color 1」「Accent Color 2」で、流すアクセントになる色を選択。
あとは、スタートを押せば、シーンが再生されます。
ちなみに、、流すのが1色(1パターン)でいい時は、gateをオフにして切り替えれるようにしてあります。
流す仕組みとしては…
counterオブジェクトと+オブジェクトを使ってます。
1つの灯体にしてRGBの3つのアドレスになっているので、
カウントに対して、+3 +2 +1 をしていく事で、灯体ごとのRGBをまとめています。
「*3」をしてるのは、試してる灯体5台のスタートアドレスが25からで、
① 25,26,27
②28,29,30
…
というように設定していて、最初のカウントが25から始まるように調整したためです。
アクセントのカラーが出力されたら、「アクセントのカラーを消す」という指示をどこかで出さないとそのカラーが残ったままになります。
それだと、アクセントのカラーが順番についていくだけでループしないので…
出力したら、「s Bace Color」でベースカラーにbangを送るようにしました。
そしたら、全にベースカラーが出力され、アクセントのカラーが消え、そしたらまた次のカウントで次の灯体のアクセントカラーが出力される、というループになりました。
最初はベースカラーを出力し続けさせるために、metroオブジェクトを使っていたのですが…
metroのカウントとcounterのカウントが被ってしまう時があり、1個飛ばしで流れる瞬間や、流れが止まってしまったように見える瞬間があり。。。
それで、send receiveオブジェクトで、ちゃんと順番に点いて消えるように作り直しました。
2色流す仕組み…
1色だけ流すっていうルールだったら、もっとシンプルなパッチになったかと思うけど…
この複数流すっていうのが、ちょっと難しかった。。
最初は単に2色目のアクセントカラーをdelayさせていけば…
と思いやってみたけど、結局ベースカラーのbangにアクセントカラーのbangが目にも見えない速度で消されてしまったり、そもそも機能しなくなったり、全然思う通りにならなかったので。。。
他の時間管理の方法として、timepointオブジェクトを使いました。
timepointはtransportによって、〜〜なので、delayよりは正確で分かりやすい。
でも、秒単位ではないので、なんか時間の間隔がよく分からない。。
あと、metroとの間隔にもよって時間が左右されてくるので、ちょうどいいバランスの数値を設定しないと2色のアクセントカラーのタイミングがかぶったりしちゃいます。
時間管理について、もっと正確で分かりやすいのがあったらもっと完成度あがるのに。。
という事で、今度Max for Liveを試してみようかと思います!

最近のコメント