Posts Tagged: vvvv

vvvv クォータニオン

この記事はvvvv Advent Calendar9日目の記事です。


vvvvでのクォータニオンの扱いを確認します。
クォータニオンとは何ぞやという所は自分には難しすぎるので用途と実装方法のみについて書きます。
道具としてのクォータニオン。

クォータニオンは以下の用途でよく使います。

  • ある軸周りに回転させる
  • ある点周りに回転させる(球面に沿って移動させる)
  • ある軸周りに回転させる

    ある物体を特定の軸まわりに回転させたいということがたまにあります。
    vvvvで実装するとこのようになります。
    AxisAngleでクォータニオンが出てくるので、RotateノードでTransformが使えるベクトル形式に戻します。

    ある点周りに回転させる(球面に沿って移動させる)

    Slerpノードを使います。
    点周りの回転というか、Slerpとか球面線形補間とか呼ばれるやつです。
    挙動としては軸周りの回転とあまり変わらないですが、補間の方法を
    近い方(ShorterArc)とか遠い方(LongerArc)とか選ぶことが出来ます。

    簡単ですが以上です。
    vvvvでのQuaternion系のノードの使い方が良く分からなかったのでメモとして。

vvvv プリミティブ

この記事はvvvv Advent Calendar8日目の記事です。


新しい表現を身に付けるため、vvvvの中でどのようなデータが流れ描画されているのかを理解したい。
基本の基本(プリミティブ)に戻り、プリミティブを自力で(※)生成し描画してみる。
(※Boxノードとか使わないという意味)

vvvvで画像収集(Bing Image Search API編)

この記事はvvvv Advent Calendar7日目の記事です。


昨今AI関連の話題を耳にしない日は無く、
これから先AI関連の技術を避けては生きていけない雰囲気が漂ってますが、
それ系の技術にはさっぱり乗り遅れている僕です。

最近は画像を読み込ませるだけで色々認識・生成してくれるようなプログラミングレスのサービスもたくさん登場していますが、
はて、それに読み込ませる画像データはどうやって用意すればいいねん…
という段階で早くも挫折しそうです。

vvvvでOpenStreetMapのデータを読み込み表示してみる(その3)

この記事はvvvv Advent Calendar5日目の記事です。


前回の続き。
今回は建物などの高さを表すheight属性を引っ張ってきて可視化しようと思います。
height属性はway要素が内包しているtag要素が持っているのでXML系のノードを使って頑張って持ってきます。

vvvv Test Framework

この記事はvvvv Advent Calendar4日目の記事です。


おそらく多くのPatcherが(自分も含め><;)今まで見向きもしなかったであろう(憶測)vvvvでのテストについてです。
プログラマーたるものテストをおろそかにしてはいけませんね!(自戒)
vvvvにもパッチをテストするためのフレームワークがあります。JavaでいうJUnitの様なものだと思います。
Test Framework

vvvvでOpenStreetMapのデータを読み込み表示してみる(その2)

この記事はvvvv Advent Calendar3日目の記事です。


前回の続きです。
前回はnode要素しか使用してませんでしたが、今回はway要素とtag要素を使用してみます。
way要素はnode要素を繋いで建物や公園などのエリア、道路などを表現しているらしいです。
tag要素はnodeやwayの情報が入っています。建物の名前とか。
※XMLの詳細はこちら。
wiki.openstreetmap.org JA;OSM_XML

vvvvで今年作ったものまとめ

この記事はvvvv Advent Calendar2日目の記事です。


今年は去年に比べてvvvv界隈がなんとなく静かになっている気がして少し寂しいですね。
Touch Designerに勢い持っていかれた感じがあります、笑
自分も大掛かりなものだとUnityとか別のものを使ってしまいますが…。

それでも今年は幾つかvvvv制の作品をいくつか展示しました。

vvvvでOpenStreetMapのデータを読み込み表示してみる(その1)

この記事はvvvv Advent Calendar1日目の記事です。


つい最近Open Street Mapっていうフリーの地図データがあってXML形式でDL出来るってことを知って、
これは面白そうということでvvvvで読み込み、表示してみようと。

“vvvv DX9ToDX11 動かない” で検索したそこのあなたへ

“vvvv DX9ToDX11 動かない”
まはた
“vvvv DX11ToDX9 動かない”
で検索したそこのあなたへ

vvvvでのループ処理について考える

これはvvvv Advent Calendar 201624日目の記事です。


はじめに

vvvvにはforやforeachといったループ(繰り返し/再帰)処理の構文がありません。
よくProcessingのコードをvvvvに書き換えるなんてことをやりますが、
forなどでループ処理がされている部分でよく悩みます。

似た挙動をするノードにFrameDelayがありますが、これは1フレーム前の値を持ってくるというものなので
プログラマが望むループ処理には使用できないでしょう。
もう1つ残念なことにvvvvはサブパッチを再帰的に使用(入れ子)できません。
(https://vvvv.org/documentation/subpatches の Recursion についての記述)
なのでこの方法でループ処理を実現することも不可能です。

VLってやつが仲間になりたそうにこちらを見ていますが、
今のところ自分のスタンスはプラグイン(C#)派です。
というかVLについてはドキュメントがまだ揃っていない(?)ようで詳細な使い方がよくわかりません。
また (将来的に改善されるのでしょうが)ノードにいちいちConfigure(型の定義など)を行ったり、
エラーの原因が分かりにくいなど、
なんだか好きになれる自信がありません、笑
(誰か僕をVL派に懐柔してください。)

そこで今回はvvvvオンリーでのループ処理について考えてみたいと思います。
ループ処理が必要となる目的をいくつか挙げ、それをvvvvで実装してみます。

もっといいやり方がある! というご意見などあれば大変ありがたいです。