Max Tutorial Summery Indexes (適宜更新)

腹を括って Max を勉強することにしたので、自分のためのリファレンスとして、作っておくことにする。
なお、事前に Series Assets をダウンロードして、チュートリアルごとに該当するパッチを開いて、見比べたり自分で手を加えたり内容を変更したりしながら学ぶ必要がある。


Max User Guide

目次

Tutorials

Working with Max

タイマーとイベントの設定、ユーザーインターフェイスの構築、ウェブカメラからの入力の処理、サウンドの生成など、Max の操作の基本。

Max Basic Tutorial 1: Hello

Max パッチの 3 つの主な要素(object ボックス、message ボックス、comment ボックス)は、パッチコードとともに、すべての Max プログラムの中核をなす。各タイプの要素は、さまざまなメッセージと編集機能に応答する。これらについては、ヘルプファイルとリファレンスマニュアルのドキュメントを参照して調べることができる。これらの用途については、後のチュートリアルで詳しく説明する。

Max Basic Tutorial 2: Bang!

bang メッセージは、Max 環境で最も強力なメッセージの 1 つ。このメッセージは、他のオブジェクトの出力をトリガーし、複雑な出力を生成する接続のマトリックスを作成するために使用できる。アウトレットは複数の接続を持つことができ、これらの接続は右から左の順序でメッセージを渡す。インレットも複数の接続を持つことができ、メッセージは到着順に処理される。また、print オブジェクトなどの一部のオブジェクトには、オブジェクトの動作を変更する引数を割り当てることができる。print オブジェクトへの引数により、Max コンソールに出力されるメッセージのソースを識別できる。

Max Basic Tutorial 3: Numbers and Lists

Max は、テキストと同じように数値データをメッセージとして送信できる。整数ボックスや浮動小数点数ボックスなど、数値データの作成と処理に役立つユーザーインターフェイスオブジェクトがいくつかある。Max は、リストを使用して、1 つのメッセージにリンクされた数値のグループを保持することもできる。メッセージボックスを使用すると、リストや、置き換え可能な引数を持つその他の複雑なメッセージを作成できる。リストは、pack と pak(発音は “pock”)を使用して作成することもできる。

Max Basic Tutorial 4: Metro and Toggle

自動化されたアクションは多くの Max パフォーマンスパッチの中心であり、これらのアクションの開始点として metro オブジェクトがよく使用される。開始されると、Max のスケジュールシステムは Max からの出力に安定したタイミングシステムを提供し、それ以上の操作なしでイベントを実行できる。
チェックボックスのような toggle オブジェクトを使用してパッチを制御することもプログラミングツールの鍵。これは、1 つのトグルで、シンプルなオン/オフインターフェイスを、より複雑なプロセスに提供できる。

Max Basic Tutorial 5: Message Order and Debugging

適切に機能するパッチを作成するには、メッセージの流れる順序についてのルールを深く理解する必要がある。右から左 (right-to-left)、下から上 (bottom-to-top)、末尾へ (go-to-the-end) の順序は、メッセージが通過する際の暗黙の (implicit) ルールだが、bangbang や trigger などのオブジェクトを使用して順序を明示的 (explicit) にすることができる。ただし、いずれの場合も、フィードバックループには注意する必要がある。フィードバックループは文字通りパッチを台無しにする。

Max Basic Tutorial 6: Simple Math in Max

数学オブジェクトは、単独でも連続でも使用でき、さまざまな方法で数値入力を操作するために必要なツールを提供する。数学オブジェクトはホットインレットとコールドインレットの両方を提供するが、簡単なパッチ操作を使用してコールドインレットに出力を強制することができる。数学オブジェクトは、デフォルトでは整数を使用して演算を実行するが、小数点付きの引数を指定することで、オブジェクトに浮動小数点数を使用して演算を実行するように指示することができる。

Max Basic Tutorial 7: Numerical User Interfaces

数値データの視覚的な表示と編集には、さまざまな形式がある。スライダーオブジェクトとダイヤルオブジェクトが使用可能であり、数値ボックス内でさまざまな形式で数値を表示することができる。メッセージとオブジェクトインスペクタの両方を使用して、オブジェクトの動作を変更することができる。Max プログラミングでは数値データの使用が非常に重要なので、このタイプのデータを表示および変更する方法が多数あるのは有用。

Max Basic Tutorial 8: Keyboard and Mouse Input

コンピュータ自体を Max パッチのコントローラとして使用することができる。ユーザーインターフェイス要素のみに依存するのではなく、マウスとキーボードを直接照会し、結果の値を使用して作業のアクションを変更できる。

Max Basic Tutorial 9: Mouse Drawing

このチュートリアルでは、いくつかの異なる(しかし重要な)トピックを取り上げた。パッチセクションへのメッセージの受け渡しをアクティブにするためには、gate オブジェクトを使用する。また、複雑なメッセージを構築および解析するためには、unpack、pack、prepend オブジェクトを使用する。パッチとメッセージルーティングをより見やすくするために、パッチコードとオブジェクトに色を付けたり操作したりすることができる。そして、簡単な描画には lcd オブジェクトを使用する。

Max Basic Tutorial 10: Random Drawing

lcd オブジェクトでの描画では、paintoval(小さな円を作成する)、paintrect(小さな四角形を作成する)、framepoly(連結した線を作成する)メッセージなどを使用できる。さらに興味深いことに、random オブジェクトと drunk オブジェクトを使用して lcd サーフェス上の座標と色を生成し、Max に描画を実行させることができる。また、範囲と乗算を使用して乱数生成を操作し、アプリケーション固有のニーズに合わせることができる。random オブジェクトと drunk オブジェクトが、多くのジェネレーティブミュージックアプリケーションやグラフィックスアプリケーションの中心にあることは、驚くことではない。

Max Basic Tutorial 11: Procedural Drawing

ループの作成 (counter) 、入力値から出力値へのスケーリング (scale)、および時間の経過に伴う数値の補間 (line) によって、lcd オブジェクトでの「制御された」描画機能を提供する、かなり複雑なプログラミングを作成できる。また、三角法を用いて計算するいくつかのオブジェクトも使用した。これらの新しいオブジェクトを組み合わせて使用​​することで、プログラムで実現したいことに対して多くの手続き的 (procedual) なコントロールが可能となる。

Max Basic Tutorial 12: Movie Playback

ビデオコンテンツの再生と操作を可能にする imovie オブジェクトに焦点を当てた。単にムービーを再生したり停止したりするだけでなく、メッセージやマウスの動きで再生速度を変更したり、マウスの動きを使用して現在の再生位置を変更することができる。imovie には多数のムービーを読み込むことができ、簡単なパッチでキーボード入力を受け入れてムービーを素早く切り替えることもできる。これらすべては、imovie オブジェクトが提供する簡単なコマンドに基づいている。

Max Basic Tutorial 13: Movie Sequencing

このチュートリアルでは、範囲選択用の rslider、アイテム(またはファイル名)のリストの作成と選択用の umenu、および初期状態設定用の loadbang という 3 つの非常に重要な新しいオブジェクトを扱った。screensize オブジェクトを使用すると、ディスプレイのサイズに関する情報を取得することができる。これらのオブジェクトを使うことで、ループの長さとディスプレイの位置を制御する複雑なビデオ再生システムを作成することができる。これらのオブジェクトは、将来のパッチで使用する最も重要なツールの一部になる。

Max Basic Tutorial 14: Encapsulation

パッチロジックのカプセル化 (encapsulation) によって(サブパッチを作成することによって)、次の 2 つのことが実現される。

  1. すべてのオブジェクトを操作(または確認)することなく、上位レベルで作業ができる。
  2. 上位レベルのプログラミングを変更することなく、下位レベルのロジックを変更できる。

パッチオブジェクトの操作では、手動で作成して設定することもできるし、既存のパッチロジックを選択してから Encapsulate メニューオプションを使用することでサブパッチを自動的に作成することもできる。どちらの場合も、上位レベルのパッチにそれ以上変更を加えることなく、パッチコードをさらに探究し、変更することができる。

Max Basic Tutorial 15: Abstractions

ロジックを抽象化 (abstraction) して保存することで、追加のプログラミングをほとんど、またはまったく行わずに将来の作業で使用できるモジュールを作成できる。これにより、Max の知識を将来のより効率的な作業に活用できるようになり、モジュール化されて保守が容易なプログラミングシステムを作成するのに役立つ。

Max Basic Tutorial 16: Remote Messaging

パッチコードを接続せずにメッセージを送信できれば、パッチレイアウトの柔軟性が高まり、非常に複雑なパッチ全体に、メッセージを生成してルーティングすることができる。send オブジェクトと receive オブジェクトは、パッチ内でメッセージを渡す最も一般的な方法だが、メッセージボックスで “;”(セミコロン)を使用したり、ルーティングに forward オブジェクトを使用すると、作業の視覚的な複雑さを最小限に抑えることができる。int オブジェクトと float オブジェクトには値を格納することができるし、value オブジェクトを使用して、そこに送信されるデータを格納および転送することもできる。これらのオブジェクトとテクニックはすべて、複雑なパッチシステムを操作する上で重要である。

Max Basic Tutorial 17: Data Structures And Probability

さまざまなプロセスは、入力範囲を出力範囲に変換する関数を作成する機能に依存している。以前のチュートリアルでは、scale オブジェクトがこれを行う方法を確認した。ただし、値の分布を手動で変更する場合、またはデータ変換に数式を使用する場合は、より複雑なシステムを使用する必要がある。table / itable オブジェクトはこの目的に完全に対応し、伝達関数を作成または手動で描画する機能を提供する。
histo オブジェクトを使用することで、ジェネラティブアートや確率を利用する音楽で一般的なランダム手法として機能する分布曲線を生成することができる。真のランダム生成の曖昧さであれ、より離散的な数学で見られる傾向であれ、これらの曲線は、計算結果を生成し、望む成果物に導くために使用できる。

Max Basic Tutorial 18: Data Collections

coll オブジェクトは、インデックス付きのメッセージやデータを扱う強力な手段である。このオブジェクトは、特定のメッセージを取得したり、コンテンツを順番に処理したりするためのメソッドを提供する。名前付きの coll オブジェクト間でコンテンツを共有できるため、パッチ全体でこのデータにアクセスできる。coll は外部ファイルからデータを読み取ることもできる。また、route オブジェクトを使用すると、メッセージの内容に基づいてメッセージを追跡および移動し、インデックスに基づいて必要なデータをさまざまなオブジェクトにルーティングできる。

Max Basic Tutorial 19: Timing

Max の広範な新しいシステムである、メトリカルタイミングシステムにより、Max パッチの集中タイミングコントロールが可能になり、イベントの生成を調整して音楽シーケンスの作成が容易になる。pipe、delay、clocker、timer など、(メトリカルタイミングの有無にかかわらず)シーケンスアクションを作成するために使用できる、タイムベースのオブジェクトがある。複雑なパッチ内での意思決定を支援するために、boolean 比較オブジェクトと論理演算子オブジェクトを使用することができる。

Max Basic Tutorial 20: Presentation Mode

プレゼンテーションモードでは、パッチの論理レイアウトを崩すことなく、操作しやすいパフォーマンスインターフェイスを作成できる。プレゼンテーションモードのオブジェクトは、パッチングモードと同じように動作するが、サイズ、形状、位置を自由に変更することができる。これは、最適なインターフェイスレイアウトを作成するために必要である。さらに、パッチングモードとプレゼンテーションモードを複数のビューで同時に表示できるため、より効率的なプログラミングが可能になり、小さな画面でも大きなパッチにアクセスできる。

Max Basic Tutorial 21: Controlling Data Flow

パッチャーのロジックのサブセット内でメッセージをルーティングするために便利なオブジェクトがある。 switch オブジェクトは、左のインレットに送信された値に基づいて、複数の入力から選択する。 gate オブジェクトは switch の逆で、単一の入力を受け取り、それを複数のアウトレットの 1 つにルーティングする。より複雑な「マトリックスのような」ルーティングが必要な場合は、 router オブジェクトを使用して、複数のインレットに到着したメッセージをアウトレットセットのいずれか(またはすべて)に渡すことができる。
radiogroup オブジェクトを使用すると、gate や switch などのオブジェクトへのビジュアルインターフェイスを作成できる。matrixctrl オブジェクトは、マトリックススタイルのルーティング用のビジュアルインターフェイスを提供する。router と matrixctrl を組み合わせると、Max で利用できる最も柔軟で便利なメッセージルーティングシステムの 1 つが実現する。

Max Basic Tutorial 22: Designing Equations

expr オブジェクトを使用すると、大規模なオブジェクトプログラミングセグメントに頼ることなく、複雑な数学方程式や論理方程式を作成できる。実行できる膨大な数の演算と、複数の入力を定義して使用する機能を組み合わせることで、他の方法では作成が面倒な興味深い結果を得ることができる。

Max Communications Tutorial 1: Human-Interface Devices

HID プロトコルは、コンピュータと比較的安価なハードウェアとの間の標準化されたインターフェイスを実現する。hi オブジェクトは Max プログラマーに、これらのデバイスをパフォーマンスパッチの制御と操作に使用する機能を提供する。ほとんどすべてのタスクに役立つ HID デバイスがあるため、hi はシステムの物理的な制御への簡単なインターフェイスを提供する。

Max Communications Tutorial 2: Serial Communication

Max の serial オブジェクトは、Max が標準シリアルデバイスと通信する機能を提供する。データを 1 バイトとして送受信する。zl、itoa、fromsymbol などのオブジェクトを使用することで、データの内容を理解できるように変換できる。

Max Communications Tutorial 3: UDP Networking

ネットワーク経由の Max メッセージ処理では、udpsend および udpreceive オブジェクトを使用し、シンプルで軽量な UDP プロトコルを利用して、あらゆるメッセージまたはリストタイプを柔軟に受け渡すことができる。単一のシステム内では、localhost ネットワークアドレスを使用できるが、同じメカニズムを使用して、ネットワーク経由で他のマシンにメッセージを送信することもできる。

Max Data Tutorial 1: Data Viewing

multislider オブジェクトを用いて、データストリーム内の値の作成と追跡の両方に関する重要なテクニックを利用することができる。multislider には、生成される数値データの追跡を大幅に簡素化できる組み込みデータ表示オプションがある。デバッグのためにウォッチポイントを使用して、プログラミングを変更せずに任意のパッチ コード上の任意のメッセージを追跡することができる。

Max Data Tutorial 2: Data Scaling

データストリームを分析し(iter、trough、peak オブジェクトを使用)、その出力を平滑化する(slide オブジェクトを使用)ことができる。また、UI 要素を自動的に設定したり、新しいデータが必要とされる頻度よりも少ない頻度で送信されたときにデータを出力したりするために役立つプログラミングパターンもいくつか存在する。最後に、柔軟な multislider オブジェクトの各種設定によって、ピークホールド値とフルカラー表示を備えたバー表示が可能となる。

Max Data Tutorial 3: Gesture Capture

coll オブジェクトはデータ収集デバイスとして使用することができる。coll でキャプチャしたデータを外部ファイルに書き出して再利用することもできる。1 つのデータセットを複数の coll オブジェクトで使用するのは、大規模なパッチで非常に役立つデータ共有方法である。上限のないカウンターを設計することで、coll オブジェクトの収集データのインデックスを作成することができる。

Max Data Tutorial 4: Cellblock

jit.cellblock オブジェクトは、あらゆるタイプの 2D データを処理したり、グリッドのような形式でデータを表示したりするための強力なツールである。ここでは、最も便利なコマンドのいくつかについてのみ概観した。詳細については、このオブジェクトのヘルプ ファイルとリファレンス ドキュメントを参照するべし。

Max Data Tutorial 5: List Processing

確率 (probability) テーブルを作成し、そのテーブルを multislider オブジェクトのコンテンツにシードすることができる。multislider オブジェクトのコンテンツ(リストとして提供される)を zl および vexpr オブジェクトを使用して処理することができる。リストは Max 環境の不可欠なデータ構造であるため、これらのオブジェクトはプログラミングツールキットで頻繁に使用される。

Max Interface Tutorial 1: bpatchers

bpatcher オブジェクトは、大きなプロジェクト内にビジュアルインターフェイスを埋め込むための非常に便利な方法を提供する。インターフェイスを(必要なサポート ロジックとともに) 設計し、保存して、別のパッチに表示できる。bpatcher 内の thispatcher オブジェクトへの offset メッセージにより、オブジェクトの表示領域を「スクロール」して、インターフェイスのさまざまな部分を表示できる。これをプレゼンテーション モードと組み合わせると、インターフェイスをさらにカスタマイズできる。他の種類の抽象化 (abstraction) と同様に、bpatcher オブジェクトで使用するために作成されたパッチは、オブジェクトのインスペクタで設定された引数を処理できる。

Max Interface Tutorial 2: Picture UI Elements

pictctrl と pictslider オブジェクトで利用できるカスタム UI オプションはとても多い。カスタム画像ベースの要素を使用してパッチのユーザーインターフェイスを完全に変更することができる。画像を適切に作成するのは難しいかもしれないが、その努力により、視覚的な環境を完全に制御できるようになる。

Max JavaScript Tutorial 1: Basic JavaScript

js オブジェクトは、Max 内で標準プログラミング言語を使用してコードを書くことができる強力なツールである。インレット、アウトレット、およびグローバル変数は、スクリプトのグローバルコードセクション(特定の関数の外側にある)で定義する。特定のメッセージ(float、bang メッセージなど)に応答するメソッドは、グローバル コードの下に関数として記述され、Max 環境からの関連メッセージに応答して実行される。post() 関数を使用して、Max コンソールに情報を表示できる(パッチで print オブジェクトを使用するのと同じように)。また、outlet() 関数を使用して、js オブジェクトから、それを含む Max パッチャーにメッセージを送信できる。js オブジェクトのテキストエディタに JavaScript コードを直接記述できる。変更したスクリプトを保存すると、js オブジェクトはコードをスキャンして、構文エラーや参照エラーなどのプログラミングの間違いを検出する。これにより、Max 内からコードをプログラミングおよびデバッグできる。

Max JavaScript Tutorial 2: JavaScript Scripting

(あとまわし)

Max JavaScript Tutorial 3: JavaScript Tasks, Arguments, and Globals

(あとまわし)

Max JavaScript Tutorial 4: Designing User Interfaces in JavaScript

(あとまわし)

Max MIDI Tutorial 1: Basic MIDI

受信した MIDI ストリームの基本的な内容は midiin オブジェクトを使用して取得でき、MIDI ストリームは midiout オブジェクトを使用して送信できる。ただし、ほとんどの場合、メッセージ固有のオブジェクトを使用して個々のメッセージタイプを処理する方が簡単である。notein / noteout および ctlin / ctlout オブジェクトを使用すると、生の MIDI 入力をデコードしたり生の MIDI 出力を作成したりすることなく、メッセージを簡単に処理できる。
midiinfo オブジェクトは、MIDI セットアップの現在の状態を調べるための強力なツールである。これを使用して利用可能な MIDI ポートをメニューとして読み込むと、パッチが使いやすくなる。また、複数のオブジェクトを同時に設定するのに最適な方法でもある。

Max MIDI Tutorial 2: MIDI Note Management

ほとんどの MIDI シンセサイザーとサンプラーは、ノートオンとノートオフのメッセージをペアで要​​求する。そうしないと、ノートが「スタック」してしまう。ノートオン/ノートオフのペアを維持するのに役立つ Max オブジェクトがいくつかあり、それらを使用すると、MIDI ノートの生成と再生をプログラムで制御できる。makenote オブジェクトは、ノートの予定の長さがわかっている場合に MIDI ノートを生成するのに最適である。stripnote / flush オブジェクトの組み合わせは、ノートオフの生成を具体的に制御したいが、ノートオフが送信されていないノートを維持するための「バックアップ」も必要な場合に適している。sustain オブジェクトを使用すると、標準キーボードのサスティンペダルの使用をシミュレートできるため、サスティンペダルが必要な状況に合わせて機能をプログラムする必要がなくなる。

Max MIDI Tutorial 3: MIDI Parsing

複雑な MIDI 制御パッチを作成する場合、利用可能な MIDI メッセージをすべて使用したいことが頻繁に起こる。多数のメッセージ固有のオブジェクトを使用する代わりに、midiparse および midiformat オブジェクトを使用して、すべてのメッセージタイプにアクセスしながらデバイス間で MIDI データをストリーミングできる。midiparse および midiformat の使用は、大規模で複雑な MIDI ベースのパッチシステムの中心となる。
(7 ビット (0-127) よりも)拡張された制御情報にアクセスすることで、より音楽的に敏感なパッチを作成できる。xbendin オブジェクトを使用して拡張されたピッチベンド情報を受信すると、Max 内でより安定したサウンドのシンセサイザーを作成できる。ただし、この情報の一部は受信が速すぎる可能性があるため、speedlim オブジェクトを使用してこれらのメッセージの受信速度を遅くすると、パッチの応答性を維持できる。

Max MIDI Tutorial 4: MIDI Basic Sequencing

seq オブジェクトは、MIDI シーケンスをさまざまな速度で再生できる強力なシーケンスツールである。これは、内部クロックをオーバーライドし、tick メッセージを使用してリアルタイムで再生を変更する場合に特に当てはまる。seq オブジェクトの出力は midiflush オブジェクトを介してルーティングする必要がある。これにより、再生を停止すると、現在鳴っているノートも停止する。seq オブジェクトは、短いループ、ノート/コントローラフレーズ、または完全なシーケンスの再生に最適である。

Max MIDI Tutorial 5: MIDI Advanced Sequencing

生 (raw) の MIDI ストリームを録音できることは、seq オブジェクトの強みのひとつである。seq オブジェクトは、ほぼすべてのタイプの MIDI メッセージを取得して保存できる。読み取り (read) コマンドと書き込み (write) コマンドを使用すると、MIDI コントローラーから受信したか、Max から生成されたかに関係なく、記録された MIDI データを保存して復元できる。また、seq オブジェクトの右のアウトレットを使用して再生パラメータを制御したり、まったく新しい Max プロセスを開始したりすることもできる。seq オブジェクトは、多くのシーケンスタスクにとって堅牢で便利なツールである。

Max pattr Tutorial 1: Patcher Storage

pattr オブジェクトは、Max パッチ内の複数のオブジェクトからのデータを管理する強力な方法を提供する。pattr オブジェクトは、自身の内部情報(左端のインレットとアウトレットを介して送受信される)を維持できる。また、オブジェクトに名前を付けて pattr オブジェクトの bindto 属性を使用するか、pattr オブジェクトの中央のアウトレットを使用して自動的にオブジェクトに名前を付けてバインドすることにより、Max ユーザ インターフェイス オブジェクトにバインドすることもできる。各 pattr オブジェクトは、一度に 1 つのオブジェクトにのみバインドできる。pattrhub オブジェクトを使用すると、サブパッチ内のオブジェクトを含むパッチ内のすべての pattr オブジェクトの状態を制御できる。サブパッチには、コロン (:) で区切られた連続するパッチ名の後に適切な pattr オブジェクト名を続ける階層的な表記システムを使用してアクセスできる。get メッセージ(その後にスペースを入れずに pattr の名前を続ける)を送信することで、pattrhub からパッチ内の任意の pattr オブジェクトの状態を問い合わせることができる。

Max pattr Tutorial 2: Automatic Bindings and Storage

autopattr オブジェクトは、pattr と pattrhub オブジェクトのハイブリッドとして機能し、1 つの簡単な手順で複数のユーザー インターフェイス オブジェクトを pattr システムに自動的にバインドできる。このオブジェクトを使用すると、(autoname 属性を使用して) オブジェクトに自動的に名前を付けて含めたり、最初の 2 つのアウトレットを使用してオブジェクトを明示的に含めたり除外したりできる。pattrstorage オブジェクトを使用すると、pattr にバインドされたオブジェクトの現在の設定を表示したり、設定の状態を数値スロットに保存したり (store メッセージを使用して)、オブジェクトに整数を送信して呼び出したりできる。さらに、プリセット スロット間を補間したり、保存した状態を読みやすい XML 形式で保存したり呼び出したりできる。

Signal Processing (MSP)

オーディオ信号を生成および操作したり、リアルタイムにオーディオ信号からオートメーションを抽出したり、サンプルを操作したりする。

Video Processing (Jitter)

グラフィック環境の設定、動的ビジュアライゼーションの作成、オーディオリアクティブ効果の生成。

What is a Matrix?

Jitter では、画面を解像度(例:320×240)に応じた二次元のマトリックスと捉える。さらに、そのマトリックスが ARGB の 4 つの層 (plane) になっていると考える。4 層のマトリックスの一つひとつのセルには 0〜255(8 ビット)のいずれかの値が格納されている。

Attributes: Editing Jitter object parameters

Jitter の attributes(属性)は、複雑なオブジェクトのパラメータを管理するための強力なツールである。attributes を使用すると、Jitter オブジェクトに格納されている現在の値を初期化、変更、および検索できる。また、それぞれの値を固定の attributes に関連付けることで、入力する引数の順序や、複雑なオブジェクトの一つひとつのインレットの役割を覚えておく必要がなくなる。

Jitter Geometry

Max 9 で導入された jit.geom オブジェクトを使用して、ハーフエッジ構造を使用して動的ジオメトリを操作する。

API Reference

JavaScript API

v8、v8ui、v8.codebox を使用して、Max パッチに JavaScript を埋め込む。カスタムオブジェクトを定義し、プログラムでオブジェクトとパッチコードを作成し、Max アプリケーションを操作する。

Live Object Model

live.object や live.path などの Max オブジェクトを使用して、Max for Live デバイス内から Ableton Live の状態を読み取って変更する。JavaScript API からもアクセスできる。

Node for Max

node.script および node.debug オブジェクトを使用して、Max からカスタム Node.js スクリプトを起動する。実行中の Node プロセスに Max メッセージを送信し、結果を取得する。

♪よかったらシェアしてください♪
  • URLをコピーしました!
  • URLをコピーしました!
目次