First Valid(最初の有効な入力)
 
 
 

カテゴリ

  • 実行

説明

[First Valid]ノードは、ツリー ブランチに接続されている入力ポートの中で、エラーが発生していない最初のものを通過させます。その他の入力ポートは、すべて無視されます。

ICE ツリーとコンパウンドの設計時は、多くの場合、動作に不備があった場合の代替動作が必要となります。たとえば、コンパウンドで計算を行う場合に、ポイントの法線を使用するとします。ただし、作成中のコンパウンドが、ポイント クラウドに対しても動作するようにします。ポイント クラウドにはポイントの法線がないため、その代わりに[Direction]という属性を使用します。そのような属性がない場合は、既定で 0 ベクトルを使用します。このような動作を実現するには、各動作を実装するグラフを接続します。最初の動作は、最初のポートに接続する必要があります。また、最初の代替動作は 2 番目のポートに接続し、以下同様に接続していきます。

[First Valid]で考慮されるのは、属性またはオブジェクトが存在しない場合や、種類が正しくない場合など、グラフのエラーだけです。0 による除算など、ランタイム エラーは考慮されません。ランタイム エラーを処理するには、[If]ノードなどのグラフ ロジックを使用します。

すべての入力についてデータ タイプが定義されている必要があります。また、互換性がなければなりません。必要に応じて、[Scalar]や[3D Vector]など、[Constant]カテゴリのノードを接続し、入力のデータ タイプを強制的に定義することができます。

[First Valid]は、実行タイプの接続を常に有効と判断し、常に最初に接続されているものを使用します。

ポート

入力

イン(In)

これらのポートに接続されたデータの中で、最初に有効と判断されたものが出力に渡されます。

出力

外側(Out)

入力ポートの中で、最初に有効と判断されたもののデータです。