ICE ツリーについて

 
 
 

このセクションでは、基本ツールおよびその他のノードを使用して ICE ツリーを構築する場合に役立つ一般的な概念について説明します。

ツリー内の各接続はデータのセットを表し、セットのエレメントごとに 1 つの値を持ちます。たとえば、Self.PointPosition を取得すると、「Self」オブジェクト(ICE ツリーのオブジェクト)のポイントごとに 1 つの 3D ベクトルで構成されたセットになります。

データ セットは配列ではありません。また、少なくとも ICE では配列として外部公開されていません。配列に関連する従来のプログラミング概念は適用されません。「Self.PointNeighbors」など、データ セットに実際に配列が含まれていない限り、データ セットを操作するために[Array]カテゴリのノードを使用する必要はありません。詳細については、「ICE ツリーで配列を操作する」を参照してください。データ セットのメンバに対して反復処理を行う必要はありません。データを[Math]ノードなど、別のノードに接続してデータを処理します。

ICE ツリーのロジックと接続をトレースする場合は、ノードがデータ セットのすべてのメンバに対して同時に処理を実行するものと考えることができます。また、セットの単一の代表値で発生する事象について集中することもできます。

単一の定数値(またはシングルトン コンテキストの別の値)をデータ セットと結合すると、その値はセットのすべてのメンバと結合されます。たとえば、セットのすべてのメンバに同じ値を追加することができます。また、すべてのメンバを同じ値で乗算することなども可能です。

2 つのデータ セットを結合すると、セットの対応するメンバが結合されます。たとえば、プッシュタイプのデフォーメーションと同じように Self.PointPosition および Self.PointNormal を追加すると、各ポジションの位置ベクトルが、それぞれの法線ベクトルに追加されます。そのため、結合を実行する場合は、コンポーネントのコンテキストが同じでなければなりません。つまり、エレメントの数が同じで、メンバ間の対応関係が存在しなければなりません。