nConstraint を使用して、動きの制限や他のオブジェクトへの固定により、nCloth オブジェクトと nParticle オブジェクトの動作を調整できます。たとえば、nCloth の衣類の一部がずり落ちないようにキャラクタにコンストレインしたい場合、nCloth コンストレインを使用します。コンストレインを使用して、ズボンが落ちないようにする、またはドレスのストラップが肩からずれないようにすることができます。さらにボタンを付ける、nCloth を裂く、または異なる nCloth オブジェクトをマージすることも可能です。
nParticle では、nParticle を nCloth オブジェクトにコンストレインして、nCloth が別の nucleus オブジェクトに衝突するときに nCloth からパーティクルが飛び散るようにコンストレインの強さを調整することもできます。
nCloth オブジェクトはすべての nConstraint をサポートしていますが、nParticle オブジェクトにはすべての nConstraint を適用できるわけではありません。 nParticle コンストレインは 初期状態の nParticle に対してのみ機能します。nParticle オブジェクトは次の nConstraint をサポートしています。
nConstraint とその使用方法の詳細については、以下を参照してください。
トランスフォーム コンストレインは、nCloth オブジェクトの選択した頂点と nParticle オブジェクトの選択したパーティクルを、同じ位置に保持するか XYZ 空間を移動させます。トランスフォーム コンストレインには、コンストレインされた頂点またはパーティクルをコントロールするトランスフォーム コンストレイン ロケータがあります。このロケータは、他のオブジェクトにペアレント化、アニメート、またはコンストレインすることができます。たとえば、トランスフォームをコンストレインした nCloth のシルク スカーフのトランスフォーム コンストレイン ロケータをアニメートして、このスカーフが落下する動きを演出できます。
コンポーネント間(Component to Component)コンストレイン
コンポーネント間コンストレインでは、nCloth コンポーネント(頂点、エッジ、フェース)または nParticle コンポーネント(個々のパーティクル)を他の nCloth オブジェクト、nParticle オブジェクトまたはパッシブ オブジェクトのコンポーネントにアタッチできます。たとえば、コンポーネント間コンストレインを使用して、nCloth シャツにボタンをアタッチすることができます。
ポイント対サーフェス(Point to Surface)コンストレイン
ポイント対サーフェス コンストレインでは、nCloth コンポーネント(頂点、エッジ、フェース)または nParticle コンポーネント(個々のパーティクル)をターゲット サーフェス(nCloth サーフェス、パッシブ コリジョン オブジェクト)にアタッチできます。このタイプの nConstraint は、nCloth オブジェクトの一部(シャツの袖口など)をポリゴン メッシュ(キャラクタの手首など)に保持する場合に便利です。
サーフェスでスライド(Slide on Surface)コンストレイン
サーフェスでスライド コンストレインでは、nCloth コンポーネント(頂点、エッジ、フェース)または nParticle コンポーネント(個々のパーティクル)をターゲット サーフェス(別の nCloth サーフェス、パッシブ コリジョン オブジェクト)にアタッチでき、コンストレインされたコンポーネントをコンストレイン先のサーフェスに沿って移動できます。サーフェスでスライド コンストレインは、ポイント対サーフェス コンストレインをスライドに対応させたものです。このタイプの nConstraint はコリジョンの代わりに使用でき、多くの場合はコリジョンよりも高速に処理されます。
隣接する境界の縫合(Weld Adjacent Borders)コンストレイン
隣接する境界の縫合コンストレインは、選択した nCloth オブジェクトの最も近い境界をスナップしてマージします。このタイプの nConstraint は、個別の nCloth メッシュを単一の nCloth オブジェクトのように動作させる場合に便利です。nParticle オブジェクトは隣接する境界の縫合(Weld Adjacent Borders)コンストレインをサポートしていません。
フォース フィールド(Force Field)コンストレイン
フォース フィールド コンストレインでは、球状ボリューム境界を持つ放射状フィールドで、nCloth と nParticle コンポーネントまたはオブジェクトをコンストレインの中心から押しのけることができます。フォース フィールド コンストレインを作成すると、フォース フィールド ロケータがシーンに表示されます。ロケータのサイズ、シェイプ、位置は、フォース フィールドのサイズ、シェイプ、位置を示します。
フォース フィールド コンストレインを使用してオブジェクト、特定の頂点、または nParticle を押しのけることで、不要な貫通を補正できます。たとえば、nCloth がキャラクタの肘ジョイント内で動かなくなった場合、ジョイントにフォース フィールド コンストレインを配置すると、これを押し出すことができます。逆に、コンストレインの境界内でこのコンストレインを使用して nCloth を吸い込む、または収容することができます。
フォース フィールド コンストレインはオブジェクトだけではなく、ローカル化された頂点や個々の nParticle にも適用できます。dynamicConstraint ノードのフォース(Force)、強さ(Strength)、強さドロップオフ(Strength Dropoff)アトリビュートを使用して、フォース フィールドのパワーを定義します。正の値を設定するとフォース フィールドは nCloth または nParticle を押し出し、負の値を設定すると nCloth または nParticle を吸い込みます。
マッチするメッシュに引き付け(Attract to Matching Mesh)コンストレイン
マッチするメッシュに引き付けコンストレインは、nCloth オブジェクトの頂点をトポロジがマッチするパッシブ オブジェクトの対応する頂点に引き付けます。このタイプのコンストレインは、シミュレーション時に nCloth を特定のシェイプにしたい場合に便利です。
たとえば、キャラクタから落ちたガーメントが特定のシェイプで、または特定の方向で接地するシーンの場合、このコンストレインを使用してガーメントの最終シェイプを作成できます。dynamicConstraint ノードの強さ(Strength)アトリビュートは、nCloth オブジェクトがターゲット メッシュに類似する度合いを定義します。nParticle オブジェクトはマッチするメッシュに引き付けコンストレインをサポートしていません。
引き裂き可能なサーフェス(Tearable Surface)コンストレイン
引き裂き可能なサーフェスコンストレインは nCloth オブジェクトを引き裂きまたは粉砕可能にします。これは 縫合(Weld)コンストレイン方法を使用して、nCloth オブジェクトのすべてのフェースを分離、新しいエッジと頂点を生成、nCloth の頂点をマージ、nCloth のエッジを軟化、そして nCloth のポイント(引き裂き)またはエッジ(粉砕)をコンストレインして行います。このコンストレインは、nCloth サーフェスを作成して、これがパッシブ オブジェクトまたは他の nCloth オブジェクトと衝突するときに、破裂または粉砕させる場合に便利です。dynamicConstraintdynamicConstraint ノードのアトリビュートは、nCloth の引き裂きまたは粉砕の容易さを定義します。nParticle オブジェクトは引き裂き可能なサーフェスコンストレインをサポートしていません。
コリジョンの無効化(Disable Collision)コンストレインと衝突ペアを除外(Exclude Collide Pairs)コンストレイン
コリジョンの無効化コンストレインと衝突ペアを除外コンストレインは、nCloth オブジェクト、nParticle オブジェクト、パッシブ オブジェクトのコンポーネントが衝突する度合いを制限します。コリジョンの無効化コンストレインを使用して、メンバーがその他のすべての nucleus オブジェクトまたは nCloth と nParticle オブジェクト コンポーネントの衝突を回避できます。衝突ペアを除外コンストレインを使用して、メンバーが特定の nuleus オブジェクト、nCloth オブジェクト、または nParticle オブジェクトのコンポーネントと衝突することを回避できます。これらのコンストレインは、nCloth オブジェクトまたは nParticle オブジェクトのパフォーマンスを向上させる、nCloth の衝突領域を制御する、衝突するパーティクルをコントロールする、またはクロスがコリジョン ジオメトリ内に閉じ込められることを回避する、といった場合に便利です。