[ジオメトリアプロクシメーション]プロパティ エディタ

 
 
 

| ハードウェア ディスプレイ | サーフェイス、サーフェイス トリム、ディスプレイスメント | ポリゴン メッシュ | ヘア

[ジオメトリ アプロクシメーション]は、さまざまな表示プロパティ、モデリング プロパティ、レンダリング プロパティをコントロールする多目的プロパティです。

このプロパティを適用または編集するには、「ジオメトリ アプロクシメーションを適用および編集する」(「シーン エレメント」)を参照してください。

ハードウェア ディスプレイ

これらの設定は、表示目的に使用されるだけで、オブジェクトのジオメトリまたはレンダリングには影響を与えません。特にパス上のオブジェクトは、パスラインの表示ではなく、数学的に定義された曲線に従います。

各 NURBS セグメントの正確な形状を数的に簡略化するにあたり、何本の直線セグメントを使うかは、どの場合もステップ値により決まります。ステップ値が大きいほどアプロクシメーションが近付き、スムーズな結果を得られます。しかし、ステップ値を大きくすると処理時間が長くなります。

サーフェイス上のノット間のステップ数を設定する — ステップ = 3 (A)とステップ = 1 (B)。

パラメトリック - ステップ

サーフェイス U、V(Surface U, V)

サーフェイスの U 方向と V 方向についてノット間に線を引くステップ数を定義します。この種のアプロクシメーションでは、パラメトリック インターバル間の非アダプティブ サンプリングを使用します。

カーブ U(Curve U)

カーブを描くときの U 方向のノット間のステップ数を定義します。

サーフェイス カーブ(Surf. Curve)

アイソラインや境界、トリム、投影されたサーフェイス カーブなどのサーフェイス カーブを描くときの U 方向のノット間のステップ数を定義します。

サーフェイス、サーフェイス トリム、ディスプレイスメント

[サーフェイス]、[サーフェイストリム]、[ディスプレイスメント]の各タブには、共通の設定があります。

  • [サーフェイス](Surface)は、NURBS サーフェイスのレンダリングをコントロールします。

  • [サーフェイストリム](Surface Trim)は、NURBS サーフェイスのトリム エッジのレンダリングをコントロールします。

  • [ディスプレイスメント](Displacement)は、ディスプレイスメント マップを使用する場合の、ディスプレイスメント マップのレンダリングをコントロールします。これは、NURBS サーフェイスとポリゴン メッシュの両方に影響します。ディスプレイスメント マップについては、「ディスプレイスメント マップ」(「テクスチャリング」)を参照してください。ディスプレイスメント アプロクシメーションは、NURBS サーフェイス上のサーフェイス アプロクシメーションの値にも影響されます。

まずアプロクシメーション方法を選択してから、必要に応じて[改良設定]に調整を加えます。[改良設定]は、アプロクシメーション方法によって異なります。方法として[長さ/距離/角度]および[ファイン]を選択すると、サブディビジョン上限 - 再帰ステップの設定も可能になります。さらに、[ディスプレイスメント]タブでは、最大ディスプレイスメント値が指定できます。

アプロクシメーション方法([approximation method])

[パラメトリック](Parametric)は、大部分がフラットベースのサーフェイスに若干のディスプレイスメントがある場合に使用します。この方法は UV 空間で機能します。「サーフェイス、サーフェイス トリム、ディスプレイスメント」を参照してください。

[長さ/距離/角度](Length/Distance/Angle (LDA))は、3つの方法の組み合わせです。カメラ空間またはラスタ空間で機能します。

  • [長さ]アプロクシメーション(Length approximation)は、特に[ビュー依存]と組み合わせて使用すると便利です。ピクセル単位で三角形の数をアプロクシメーションできるからです。

  • [距離]アプロクシメーション(Distance approximation)は、なだらかなカーブを持つオブジェクトに対してよく使用されます。なだらかなカーブを持つオブジェクトには、通常、法線距離が長い 2 つの隣り合った三角形がないためです。

  • [角度]アプロクシメーション(Angle approximation)は、エッジを丸めた立方体のように、曲率の高いローカライズされたエリアのあるオブジェクトでの使用に最も適しています。

LDA(長さ/距離/角度)アプロクシメーション」を参照してください。

[ファイン]アプロクシメーション(Fine approximation)は、非常に詳細なアプロクシメーションが必要なオブジェクトに対して使用します。このタイプのアプロクシメーションは、ディスプレイスメント マッピングに適しています。カメラ空間またはラスタ空間で機能します。「ファイン アプロクシメーション」を参照してください。

最大ディスプレイスメント(Max Displ.)

最大ディスプレイスメント値を指定します。この値はディスプレイスメント マップが正しく機能するように適切に設定する必要があります。ディスプレイスメント値が最大ディスプレイメント値より大きい場合、ディスプレイスメントはクリップされます。たとえば、オブジェクトにディスプレイスメント値 3 を使用しているディスプレイスメント マップを適用していて、 最大ディスプレイメントが 2 に設定されている場合、ディスプレイスメントは 2 にクリップされます。

このパラメータは[ディスプレイスメント]タブだけに用意されています。

パラメトリック アプロクシメーション

パラメトリックなサーフェイス アプロクシメーションの手法では、ジオメトリで参照する選択されたオブジェクトの U 方向と V 方向のステップ数を定義します。この種のアプロクシメーションでは、パラメトリック インターバル間の非アダプティブ サンプリングを使用します。

   

左側のサーフェイスでは[ステップ値]に 1 が使用されていますが、右側のサーフェイスでは 3 が使用されています。ステップの数が多いほど、オブジェクトのサーフェイスがより滑らかに見えます。

これらの値を変更すると、オブジェクトのサーフェイス内のステップ数が変わります。これらのパラメータはアニメーションを終了するまで変わらないので、カメラがオブジェクトに近づきすぎるとステップが見える場合があります。

[パラメトリック]の[改良設定]

U ステップ、V ステップ、ステップ(U, V Step and Step)

これらの値を変更すると、オブジェクトのサーフェイスまたはサーフェイス トリム内のステップ数が変わります。これらのパラメータはアニメーションを終了するまで変わらないので、カメラがオブジェクトに近づきすぎるとステップが見える場合があります。

注:[ディスプレイスメント]タブでは、[ステップ]パラメータが U 方向と V 方向の両方に適用されます。

LDA(長さ/距離/角度)アプロクシメーション

LDA アプロクシメーション方式は曲率に依存するアプロクシメーションであり、長さ、距離、角度によるサブディビジョンに基づいています。この種のアプロクシメーションでは、パラメトリック インターバル間のアダプティブ サンプリングを使用します。

[長さ/距離/角度]の[改良設定]

長さ(Length)

(オブジェクトの座標で)エッジの長さが[長さ](Length)パラメータを超えているテッセレーションがないように、サーフェイスやカーブが細分割されます。長さはカメラ空間では距離として、ラスタ空間では対角なピクセルの割合として与えられます(ビュー依存)。1 などの小さな値を推奨します。

距離(Distance)

テッセレーションと実際のカーブやサーフェイスとの距離の最大値を指定します。この値はカメラ空間では距離、ラスタ空間では対角なピクセルの割合になります(ビュー依存)。0.1 などの小さな値で開始することをお勧めします。

角度(Angle)

以下の間で角度の最大値(度数)を指定します。

  • ポリゴンまたはそのディスプレイスメントの隣接するタイルの法線

  • サーフェイスのテッセレーションまたはそのディスプレイメントの法線

  • カーブ アプロクシメーションの隣接するセグメントのタンジェント

45 度のような大きな角度を指定することをお勧めします。

終了条件(Stopping Condition)

[長さ、距離および角度](Length, Distance and Angle): 長さ、距離、および角度の要件がすべて満たされるまでテッセレーションが継続します。

[長さ、距離、または角度](Length, Distance or Angle): 長さ、距離または角度のいずれかの要件が満たされたときにテッセレーションが停止します。

ビュー依存(View Dependent)

数値をオブジェクト空間(オフ)からラスタ空間(オン)に切り替えます。

たとえば、ディスプレイスメント マップが施されたウェーブがある海面のオブジェクトは、カメラ付近では鮮明に、カメラから離れた場所では不鮮明にテッセレートされるため、[ビュー依存]オプションを使用すると効果的です。

ファイン アプロクシメーション

このファイン アプロクシメーション方式は曲率に依存するアプロクシメーションであり、長さによるサブディビジョンに基づいています。ファイン アプロクシメーションでは、他のアプロクシメーション タイプのパラメータのサブセットを使用します。三角形の許容最小数を使用して期待どおりの品質のアプロクシメーションを得るのではなく、大量のメモリを消費せずに、多数の三角形を使用して非常に詳細なアプロクシメーションを作成できます。

そのためには、アプロクシメーションされるオブジェクトを、個別にテッセレートされるより小さな「セット」に分割します。したがって、オブジェクト全体と同じだけのメモリは必要としません。

[ファイン]の[改良設定]

長さ(Length)

テッセレートされた三角形のエッジ長が長さパラメータを超えないように、サーフェイスまたはカーブを細分割します。

[ビュー依存](View Dependent)がオフの場合、[長さ](Length)はオブジェクト空間で計算され、[長さ](Length)値(Softimage 単位)を超えるエッジは、すべてのエッジが[長さ](Length)値より短くなるか、最大サブディビジョン レベル(サブディビジョンの限界パラメータで指定)に達するまで細分割されます。

[ビュー依存](View Dependent)が有効の場合、[長さ](Length)はラスタ空間で計算され、[長さ](Length)値(対角ピクセルの一部)を超えるエッジは、すべてのエッジが[長さ](Length)値より短くなるか、最大サブディビジョン レベル(サブディビジョンの限界パラメータで指定)に達するまで細分割されます。

ビュー依存(View Dependent)

数値をオブジェクト空間(オフ)からラスタ空間(オン)に切り替えます。

たとえば、ディスプレイスメント マップが施されたウェーブがある海面のオブジェクトは、カメラ付近では鮮明に、カメラから離れた場所では不鮮明にテッセレートされるため、[ビュー依存]オプションを使用すると効果的です。

シャープさ(%)(Sharpness (%))

ファイン アプロクシメーションで生成される三角形が、補間された法線とジオメトリ法線のどちらを使用するかをコントロールします。

[シャープさ]値が 0 に設定されている場合、ファイン アプロクシメーションで生成される三角形は補間された法線を使用し、スムーズで丸みのある外観をもたらします。

[シャープさ]値が 100 に設定されている場合、ファイン アプロクシメーションで生成される三角形はジオメトリ法線を使用し、ギザギザしてファセットされた外観をもたらします。

[シャープさ]値を 0 と 100 の間の値に設定した場合は、[シャープさ]値を 0 に設定した場合に得られる完全にスムーズな外観と、100 に設定した場合に得られる完全にファセットされた外観の間で補間されます。たとえば、値を 50 に設定した場合は、半分スムーズで、半分ファセットされた外観になります。

シャープさが 0% の場合

シャープさが 50% の場合

シャープさが 100% の場合

サブディビジョン上限 - 再帰ステップ

分割の数が膨大になるのを防ぐため、リミットを指定できます。これらのパラメータは、[長さ/距離/角度]と[ファイン]で使用できます。

最小(Min)

最小限の三角分割(アダプティブ サブディビジョンの反復レベル)を指定します。

最大(Max)

エッジは、指定の基準を満たすか、または[最大](Max)サブディビジョン レベルに達するまで分割されます。

ポリゴン メッシュ

ポリゴン メッシュ オブジェクトを表示し、レンダリングする方法をコントロールします。

不連続性

ポリゴン間のシェーディングの連続性をコントロールします。詳細については、「ジオメトリ アプロクシメーションを使用して不連続性を制御する」(「ポリゴン モデリング」)を参照してください。

自動的(Automatic)

2 平面の角度(法線間の角度)が不連続性角度よりも大きい場合に、2 つのポリゴン間にシャープなエッジができるように、シェーディングを非連続にします。それ以外の場合は、法線が平均され、スムーズであるような錯覚を与えます。

角度(Angle)

自動的がオンの場合は、ここで指定した角度よりも大きければエッジがシャープになります。完全なファセット ポリゴン メッシュ オブジェクトの場合は、この値を 0 に設定します。

サブディビジョン

表示およびレンダリングのジオメトリ サブディビジョン レベルをコントロールします。詳細については、「サブディビジョンのレベル」(「ポリゴン モデリング」)を参照してください。

OGL レベル(OGL Level)

3D ビュー表示でサーフェイスを細分割する回数。

レンダレベル(Render Level)

レンダリング時に、サーフェイスを細分割する回数。

反復するごとにポリゴン数が増加するので、非常に高密度で重いジオメトリになる場合があります。

OGL 三角分割更新(OGL Triangulation Update)

OpenGL 表示モード、たとえば陰線、コンスタント、シェーディングおよびテクスチャでポリゴンを描画する際の、精度と速度のバランスをコントロールします。

  • [リフレッシュ毎に作成](Recreate at each refresh): これは最も正確な手法で、常に三角分割を再計算します。このモードでは再生および適用が最も遅くなります。

  • [インタラクション時スキップ](Skip during interaction): ユーザの作業中にはポリゴンの三角分割が計算されず、作業が中断されたら三角分割計算を実行します。オブジェクトを修正する際、表示はよりすばやく更新されますが、OpenGL ビューでアーティファクトが見られる場合があります。たとえば、ポイントの操作時にポリゴンがくぼむなどです。再生中に必要な場合は三角分割を再計算します。

  • [インタラクションと再生時スキップ](Skip during interaction and playback): これは作業中にもアニメーションを再生するときにもポリゴンの三角分割を再計算しません。やはり、このモードは高速ですが、OpenGL ビューでアーティファクトが見られる場合があります。

  • [トポロジーの変化時のみ更新](Update only when topology changes): ポイントを追加または削除するなど、トポロジを変更しない限り、三角分割を再計算しません。このモードは最も高速ですが、OpenGL ビューで多数のアーティファクトを作成する可能性があります。

       

    三角分割計算の頻度が低いと、ポイントの移動時にアーティファクトが発生します。

角度をベースにした法線(低速)(Angle-based normals (slower))

レンダリングの際に各ポイントの法線がどのように計算されるかをコントロールします。

  • このオプションがオンの場合、隣接するポリゴンの角度の平均が使用され、そのポイントで対応するポリゴンの角度に応じてウェイト付けが処理されます。場合によってはより正確な結果が得られますが、計算時間はより長くなります。

  • このオプションがオフの場合、隣接するポリゴン法線がウェイト付けなしで平均化されます。このオプションはかなり高速です。正確さは落ちますが、たいていの場合、仕上がりには大きな影響は出ません。

ヘア

以下のパラメータは、[Hair Renderer]シェーダまたはその他の Softimage シェーダを使用してヘアを表示またはレンダリングするためのサブディビジョン アプロクシメーションを決定します。

サブディビジョン

カーブタイプ(Curve Type)

ヘア用に一般的なベジェ カーブを生成します。カーブ アプロクシメーションの程度を指定できます。

  • [リニア](Linear): 1 次カーブのアプロクシメーション(直線セグメント)が作成されます。このオプションを選択した場合、OGL レベル オプションおよびレンダ レベル オプションは使用できません。なぜなら、直線は複数の線では近似できないからです。

  • [クワドラティック](Quadratic): 2 次カーブのアプロクシメーション(スムーズ)が作成されます。このオプションでは、ヘア全体を通して連続したカーブになることは保証されません。元の線セグメントが急角度をなしていると、セグメント同士の接している場所に尖点ができる場合があります。

    このオプションを選択した場合、生成されるカーブを構成するには追加のポイントが必要になります。結果として、生成されるヘア ポイントごとに 1 つ加え、その合計から 1 を減じた数のコントロール ポイントが追加されます。

  • [キュービック](Cubic): 3 次カーブのアプロクシメーション(最もスムーズ)が作成されます。この場合はヘア セグメント間の連続性が保証されます。このオプションを選択した場合、生成されるカーブを構成するには追加のポイントが必要になります。結果として、新しいコントロール ポイントが 2 つ追加されます。

OGL レベル(OGL Level)

ヘアをビューポートのOpenGLビューで表示するときに、カーブを近似するサブディビジョンレベルです。

アプロクシメーションには、2 レベル 本の線セグメントが生成されます。たとえば、値が 0 の場合、カーブは 1 本の線セグメントで近似されます。値が 1 の場合は 2 本のセグメントで、値が 2 の場合は 4 本のセグメントで、というようになります。

スライダには範囲として 0 から 4 までが表示されますが、テキスト ボックスには最大 7 までの値を入力できます。

レンダレベル(Render Level)

ヘアを(レンダ領域で、またはファイルに)レンダリングするときに、カーブを近似するサブディビジョンレベルです。

アプロクシメーションには、2 レベル 本の線セグメントが生成されます。たとえば、値が 0 の場合、カーブは 1 本の線セグメントで近似されます。値が 1 の場合は 2 本のセグメントで、値が 2 の場合は 4 本のセグメントで、というようになります。

スライダには範囲として 0 から 4 までが表示されますが、テキスト ボックスには最大 7 までの値を入力できます。