« C4D XPressoで、XY平面での2個の円の接線ポイントを出力するノード | トップページ | C4D XPresso:前回の「2個の円の接線ノード」に外周のスプラインを追加してみた。 »

XPressoタグの入出力ポートは?

XPressoタグ自体に入出力ポートを設定できるのですが、使えるのだろうか?

Xpressoinoutport_01

この様に、オブジェクトAに取り付けられたXPressoタグに入出力ポートを取り付けます。
入力された「ベクトル in」にベクトル(0.0 , 100.0 , 0.0)を足して「ベクトル out」から出力します。

このオブジェクトAに取り付けたXPressoタグを、オブジェクトBに取り付けたXPressoタグで使用してみましょう。

オブジェクトBのXPressoタグを開き、オブジェクトAのXPressoタグをドロップします。

Xpressoinoutport_02

オブジェクトAのXPressoをドロップしたら、そのノードの入力ポート「ベクトル in」を取り付けます。

では、出力ポート「ベクトル out」を取り付けてみましょう。

Xpressoinoutport_03

出力ポート「ベクトル out」が見当たりません…

XPressoタグ自体は、数値を受け取ることはできても、渡すことができないのですね。
関数のように数値を渡して、結果を受け取ると言う使い方はできないということです。
所で、XPressoタグを関数のように使うことがあるだろうか?無いね…
関数のように動作するノードを作るなら、XGroupやC.O.F.F.E.E.ノードで十分だしね。

XPressoタグ同士で数値を渡しあう事は、有効な手段なんだろうか?
シーン全体のXPressoをより複雑にし把握しづらく、メンテナンスも難しくしてしまうような気がしますが…
まぁ、使い方は人それぞれですか?

とりあえず、XPressoタグに数値を渡してみよう。
立方体オブジェクトの上に円錐オブジェクトを乗せて、立方体を動かしても常に円錐は上に乗った状態にする。

円錐オブジェクトのXPressoは立方体の高さと座標を渡され、円錐の位置を決める。
立方体オブジェクトのXPressoは立方体の高さと座標を渡す。

Xpressoinoutport_04

円錐のXPresso

Xpressoinoutport_05

渡された立方体の高さに円錐の高さを足して2で割ります。
その2で割った値を渡された立方体の座標のYの値に足して位置を決めます。

立方体のXPresso

Xpressoinoutport_06

円錐のXPressoに位置と高さを渡しているだけです。

これで、立方体を動かしても円錐は上に乗ったままです…
今回は確認という事で、ここで終わりです。
わざわざ取り上げるネタでもなかったかな…

なるほど、そうか…

XPressoタグ入力ポートの意味がわかりました。気付くのが遅かった…

リグ等のギミック付きで完成されたオブジェクトのライブラリ化とか、この様なオブジェクトをコピペ等してシーンに追加したとき、そのオブジェクトのギミックを制御するために渡すポートだね。
わざわざオブジェクトの階層を開いて、「え~と、どのオブジェクトの数値を制御するんだっけ?」なんて事もなく、オブジェクトの先頭に、このオブジェクト全体を制御するXPressoつけておいて、そこに数値を渡す…こんな感じだね。

だから、出力に対応する必要がないのかぁ…
関数のように使うなんて事ではないんだね…

|

« C4D XPressoで、XY平面での2個の円の接線ポイントを出力するノード | トップページ | C4D XPresso:前回の「2個の円の接線ノード」に外周のスプラインを追加してみた。 »