Variable(変数)
値を保持して流すノードです。全6種。単体の値を持つものが3つ、リストを持つものが3つ。
グラフの中で同じ値を何度も使い回す起点として、あるいは 拍に合わせて値を流し直す出口として使います。
単体の値(3種)
| ノード | 型 | ポート |
|---|---|---|
| Float | 小数 | In / Trigger → Out |
| Int | 整数 | In / Trigger → Out |
| String | 文字列 | In / Trigger → Out |
3つとも構造は同じです。
Inに値が来ると、保持している値が更新され、そのままOutへ流れますInを繋がずにノード上の入力欄へ直接打ち込んでも同じですTriggerは今持っている値をもう一度Outへ押し出します
Trigger は値を止めるものではありません。
Inが動けば Trigger を叩かなくてもOutは動きます。Trigger は 「今の値を、このタイミングでもう一度下流へ送る」ためのものです。 Math の Trigger と同じ考え方です。
配列(3種)
| ノード | 型 | ポート |
|---|---|---|
| FloatArray | 小数のリスト | Index → Value |
| IntArray | 整数のリスト | Index → Value |
| StringArray | 文字列のリスト | Index → Value |
リストの中身はノード上で編集します(+ Add で追加、各行の入力欄で編集・削除)。
Index 番目の要素が Value から出ます。
Index はラップします(クランプではありません)
要素数を超えた Index は、剰余で先頭へ回り込みます。
int m = indexInput.Value % n;
return m < 0 ? m + n : m; // 負の Index も末尾側へ回り込む
つまり要素が3つのとき、Index が 3 なら 0番目、4 なら 1番目、-1 なら 2番目です。 Operation の Counter をそのまま挿せば、 上限を気にせず巡回するシーケンサになります。
リストが空のときは、下流に古い値が残らないよう既定値(Float なら 0)を明示的に流します。











