On this page |
概要 ¶
あるノードのパラメータ値を、他のノードのパラメータ値に基づかせたいことがよくあります。 他にも、ネットワーク内の別々の箇所で、同じまたは同様の設定をした同じノードが必要なことがあります。
パラメータ値やノードをコピー・アンド・ペーストすることはできますが、何か変更を加えた時に、すべてのコピーを更新するのは面倒でエラーになりがちです。 さらに、すべてのフレームにわたってアニメーション値をコピー・アンド・ペーストするのは実用的ではありません。
チャンネル参照 は、あるパラメータ値を他のパラメータ値や可能であれば別のノードのパラメータ値に基づいて計算させることができます。 これにより、値の複製や、他の値を基準にした値の作成が可能になり、値を変更すると、Houdiniが自動的にそれらの値を更新します。
参照ノードコピー は、ノード上のすべてのパラメータがそれに該当する大元のノードのパラメータをチャンネル参照している状態のノードの複製を作成します。 これにより、複数の箇所で同じノードを再利用することができ、Houdiniが自動的にそれらのノードを更新します。
Tip
ノードの名前を変更しても、Houdiniは、そのノードのすべての参照を自動的に更新します。
参照のコピーとペースト ¶
To... | Do this |
---|---|
あるパラメータを他のパラメータにリンクさせる |
Tip 複数コンポーネントを持つパラメータ(例えば、X,Y,Z値の位置パラメータ)に関しては、それぞれのコンポーネントのテキストボックスをクリックしたり、パラメータラベルをクリックして一度にすべてのコンポーネントに影響を与えることができます。 |
あるパラメータ値を他のパラメータ値を基準にする |
例えば、 |
リンクされたパラメータのリンクを解除する |
ターゲット パラメータを右クリックして、 Delete Channels を選択します。 |
ノードの参照コピーを作成する |
コピーしたいノードを右クリックして、 Actions ▸ Create Reference Copy を選択します。 Houdiniは、すべてのパラメータがそれに該当する大元のノードのパラメータにリンクした状態のノードのコピーを作成します。 そのコピーのそれぞれのパラメータを変更するには、まず最初にそれらのリンクを解除します(上記参照)。 |
パラメータ値の参照 ¶
これは、参照のコピーとペースト(上記)と同様ですが、最初に他のノードに移動してコピーするのではなく、選択リストから参照したいデータを選択することができます。
To... | Do this |
---|---|
他のパラメータの参照を作成する |
この機能は、あなたの代わりに他のノード上のパラメータを参照するchエクスプレッションを構築します。 Tip 複数コンポーネントを持つパラメータ(例えば、X,Y,Z値の位置パラメータ)に関しては、それぞれのコンポーネントテキストボックスをクリックするか、パラメータラベルをクリックして一度にすべてのコンポーネントに影響を与えることができます。 |
トランスフォームの参照 ¶
オブジェクトノードのTranslate, Rotate, Scaleのパラメータを参照することで、そのノードに ローカル トランスフォームを与えることができます。 ワールド トランスフォームを取得することで、手動でエクスプレッションを記述する時により巧妙なことができます。 参照メニューを使用することで、手動でエクスプレッションを記述することなく簡単にトランスフォームを参照することができます。
To... | Do this |
---|---|
オブジェクトノードのトランスフォームの参照を作成する |
この機能は、あなたの代わりに他のノードのトランスフォームを参照し、必要に応じて座標空間を変換するエクスプレッションを構築します。 これらのエクスプレッションは、Worldトランスフォームに対して非常に複雑になるので、ブロック内に複数のエクスプレッションステートメントを伴います。 テキストボックスを右クリックして、 Expression ▸ Edit Expression を選択することで、複数行エディタ内にエクスプレッションを開くことができます。 |
境界ボックスの参照 ¶
ジオメトリノードの境界ボックスのプロパティ(例えば、サイズや最小境界、最大境界)を参照することができます。
To... | Do this |
---|---|
ジオメトリノードの境界ボックスの参照を作成する |
この機能は、あなたの代わりに他のノードの境界ボックスのプロパティを参照するエクスプレッションを構築します。 |
アトリビュート値の参照 ¶
ジオメトリノードに保持されているジオメトリ内のPoint、Primitive、Detail上のアトリビュートの値を参照することができます。
知っているかもしれませんが、ジオメトリノードでは、@attrname
の省略表現を使用することで、現在処理されているPoint/Primitive/Detailアトリビュートを参照することができます。
しかし、この参照関数は、“処理されている”ジオメトリの概念を持たないので、ノード上にキャッシュ化されている最後のジオメトリのデータを参照します。
つまり、アトリビュート値を読み込むPointまたはPrimitive(またはDetail)を指定しなければなりません。
To... | Do this |
---|---|
他のパラメータの参照を作成します |
この機能は、あなたの代わりに、指定したジオメトリ上のアトリビュートを参照するpoint, prim, vertexのエクスプレッションを構築します。 Tip 複数コンポーネントを持つパラメータ(例えば、X,Y,Z値の位置パラメータ)に関しては、それぞれのコンポーネントテキストボックスをクリックするか、パラメータラベルをクリックして一度にすべてのコンポーネントに影響を与えることができます。 |
ローカル変数の参照 ¶
ほとんどのノードは、クックした時のノードの情報をエクスプレッションを使って参照することができる ローカル変数 を持っています。
他にも、現在の整数フレーム($F
)、現在の浮動小数点フレーム($FF
)、現在の時間($T
)、開始フレームと終了フレーム($FSTART
と$FEND
)などのグローバル状態を表現した“ローカル変数”もあります。
通常では、そのローカル変数を直接入力した方が速いですが、変数名を忘れたり、利用可能な変数が分からない時には、参照メニューを使用した方が便利な時があります。
参照メニューを使用することで、手動でローカル変数をタイプしなくてもローカル変数参照を作成することができます。 これは、リストからローカル変数を選択することができるので、ローカル変数の名前を忘れた時に役立ちます。
To... | Do this |
---|---|
ローカル変数の参照を作成する |
|