見出し画像

#7 Maxで重要な「順序」① “Right-to-left, bottom-to-top” | Max サウンドプログラミングの可能性

このシリーズでは、音楽や映像、アートやイベントなどいろんな分野で活用されているプログラミング環境「Max」を中心に、サウンドプログラミングについて紹介していきたいと思います。

今回から、Maxでプログラミングを行う際に重要な「順序」について複数回にわたって書いていこうと思います。

なぜ順序が重要なの?

もちろんあらゆるプログラミングにおいて順序は重要ですが、Maxの場合は状態がリアルタイムで変化していくので、順序を特に意識することが重要になってきます。

順序が重要なシーンについて簡単な例をみてみましょう。

オブジェクトの位置を変えると計算結果が変わる

動画は単純な引き算のプログラムですが、数字の入ったメッセージオブジェクトの「3」と「1」の場所を入れ替えると結果が変わります。
引き算のオブジェクトは、左のインレットから入った数字から、右のインレットに入った数字を、引くという動きをしますが、
右インレットに入力されるメッセージオブジェクトの場所を変えると 5 - 1 = 4 になったり 5 - 3 = 2 になったりします。

Right-to-left, bottom-to-top

Maxでは順序の大前提に「Right-to-left, bottom-to-top」という決まりがあり、
ひとつのオブジェクト、またはひとつのアウトレットからのデータの出力は基本的に「右から左」「下から上」となっています。

これで先ほどの現象を説明すると、まず最初の状態は、

・ボタンから出力された Bang はまず一番右の「1」をたたき、引き算オブジェクトの右インレットに 1 を入力させる。
・次に Bang は真ん中の「3」をたたき、引き算オブジェクトの右インレットに 3 を上書きで入力させる
・最後に Bang は一番左の「5」をたたき、引き算オブジェクトの左インレットに 5 を入力し、5 - 3 を計算して出力させる。

と説明できます。

そして「3」と「1」を入れ替えると、

・ボタンから出力された Bang はまず一番右の「3」をたたき、引き算オブジェクトの右インレットに 3 を入力させる。
・次に Bang は真ん中の「1」をたたき、引き算オブジェクトの右インレットに 1 を上書きで入力させる
・最後に Bang は一番左の「5」をたたき、引き算オブジェクトの左インレットに 5 を入力し、5 - 1 を計算して出力させる。

となり、最初の動画のような現象が起こるというわけです。


図のように縦にメッセージオブジェクトを並べた場合は「下から上」が適用されます。



Maxを用いて創られた音楽


田中文久 FUMIHISA TANAKA
ソニフィケーションアーティスト、サウンドプログラマー
東京芸術大学音楽環境創造科、同大学院修士課程修了。音楽に関する様々な技術やテクノロジーを駆使し、楽曲制作のみならず、空間へのアプローチや研究用途、最近では、あらゆるものを音に変換する「ソニフィケーション」を用いた制作・研究・開発等、音楽の新しい在り方を模索・提示している。

この記事が気に入ったらサポートをしてみませんか?