» Dynamic VL Plugin Reference(日本語)
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

Dynamic VL Plugin Reference(日本語)

English

The original english version of this page is newer and may contain information this translation does not have! Click here to view the english version.

Cloning a Template

(※最初にパッチ自体を保存しておくと、パスの関係が楽なのでお勧めです。)

VLプラグインを作成するには、まずパッチ内をダブルクリックしてノードブラウザを表示します。
"Template"と入力して、左側に[v]と表示された Tamplate ノードの上で Ctrl + Enter でクローンを作成します。
任意の名前、カテゴリー、保存場所(Path)を選択して、Cloneを選択します。
作成後、右クリックでVLエディタを開くことができます。

Defining Pins

VL editor. Adding a new Input.
VL editor and the node in vvvv.

vvvv上でVLノードのピンは、VLエディタ上の「パッド」とつながっています。
VLエディタ上でも、ダブルクリックでノードブラウザを出現させることができるので、InputもしくはOutPutを選択。任意の名前を入れてOKを押すと、vvvv側からの入力パッド、もしくはvvvv側への出力パッドを作ることができます。

デフォルトでは、このパッドには「型」が指定されていません。(自動的に型が推定される場合もあります。)

型を決めるには、パッドの上でマウスボタンを押し込み、型名を入力します。

  • Boolean
  • Float32, Float64
  • Integer32, Integer64
  • RGBA
  • String
  • Vector2, Vector3, Vector4, Matrix
  • MouseDevice, KeyboardDevice, TouchDevice

特殊なデータタイプであっても動作はしますが、処理をするには専用のノードが必要です。

また、VLエディタ上では、Spreadであっても、IOBOXには一つの値しか表示されません。
(参考→Sliceの長さについて)

An Input pin specified as Sequence<T>.
Spreadの広がり

VL上でSpreadを使うためには、Sequence<T>の型を使う必要があります。

例:

  • Sequence<Boolean>
  • Sequence<Integer32>
  • Sequence<float32>
  • ...

Sequence<T>を指定すると、vvvv側のノードにBinSizeを指定するピンが自動的に作成されます。

Update

VLの処理は、1フレームに1回行われます。
VLの中でSpreadの処理が行われている場合は、複数回処理が行われます。
1番目のスライスの処理が終わったら、2番目のスライスの処理…。といった感じです。

vvvvと違う重大な点は、スライスの処理が連続的に実行できるとしても、VLでは単一のスライドのみを考えて処理を作成する必要があります。

Sliceの長さについて

BinSizeはSequenceの長さをBinの大きさに自動的に分割します。
それでも、考えるべき処理は1つのBinにどのような処理が行われるかであり、複数のBinに対する呼び出しは自動で行われます。


一度だけ実行するような処理が必要な場合は、コストラクタを使用します。
ただし、あくまでコンストラクタは例外的な処理を行う場合なので、すべてにおいて使えるわけではありません

Create: Initializing Stuff

Assigning a field with a constant to the Constructor.
こういった処理を行う場合は、Assign→Createから作成することができます。

依存関係

Adding a reference to another VL document.
各VLドキュメントは、「Basics.vl」などの基本ライブラリに依存しています。

VLドキュメントへ依存関係を追加したいときは、ドキュメントメニューから追加することができます。

これによって、どんなファイルでも、LVからアクセスすることができます。

Debugging

Inspecting a value in an OutBox and on a link.

マウスホバーでピンの値を調べるることができます。
ピン、リンク、どちらでも表示されます。
もしくは、ピンの上でマウスの中ボタンをクリックしましょう。

Project Structure

Making a VL patch to show up as a node in vvvv.
一般的なVLプラグインは、「Basics.vl」などいくつかの参照を持つVLドキュメントとして構成されます。
それゆえに、複数のノードをvvvvにも表示させることができます。
VLパッチをvvvv上に表示させるには、次の条件を満たす必要があります。

  • vvvvもしくはその他のカテゴリを指定する
  • 、3つのチェックボックスにチェックが入っているか、もしくは最後のチェックボックスのみチェックが入っていること。
More about VL: The Gray Book specifically the chapter: VL for vvvv users for a start.

anonymous user login

Shoutbox

~4h ago

joreg: vvvvTv S02E01 is out: Buttons & Sliders with Dear ImGui: https://www.youtube.com/live/PuuTilbqd9w

~7d ago

joreg: vvvvTv S02E00 is out: Sensors & Servos with Arduino: https://visualprogramming.net/blog/2024/vvvvtv-is-back-with-season-2/

~7d ago

fleg: hey there! What's the best tool for remote work? Teamviewer feels terrible. Thanks!

~21d ago

joreg: Last call: 6-session vvvv beginner course starting November 4: https://thenodeinstitute.org/courses/ws24-5-vvvv-beginners-part-i/

~1mth ago

joreg: Missed the last meetup? You can rewatch it here: https://www.youtube.com/live/MdvTa58uxB0?si=Fwi-9hHoCmo794Ag

~1mth ago

theurbankind: When is the next big event, like node festival ?

~1mth ago

~1mth ago

joreg: Join us for the next vvvv meetup on Oktober 17th: https://visualprogramming.net/blog/2024/25.-vvvv-worldwide-meetup/

~1mth ago

joreg: 6 session beginner course part 2 "Deep Dive" starts January 13th: https://thenodeinstitute.org/courses/ws24-5-vvvv-beginners-part-ii/