レンダー > NURBS テッセレーションの設定(Render > Set NURBS Tessellation)
この方法は、カメラとオブジェクト間の距離が変化するシーン(アニメーション)の中で非常に効果を発揮します。オーバーテッセレーションが避けられるので、メモリ(および時間)を節約し、パフォーマンスを向上させることができます。
テッセレーション モード(Tessellation Mode)
Maya では、レンダー可能なカメラからオブジェクトまでの距離に基づいて自動的に(または手動で)最適なテッセレーション設定が実行されます。
テッセレーション設定を調整するには、手動モードに切り替える必要があります。
テッセレーションは、サーフェスの範囲とカメラからサーフェスまでの距離、および 自動(Automatic)モード設定に基づいて行われます。
カメラに近いかまたは大きな画面空間を占めているオブジェクトは、自動的に多数の三角形を使ってテッセレーションが追加されます。カメラから離れているかまたは比較的小さいオブジェクトは、三角形の数が少なくなります。
Maya は、サーフェスまたはカメラがアニメートされていると時間の経過に伴って距離が変化することを考慮するため、フレーム レンジの使用(Use frame range)で設定したフレーム範囲に応じてテッセレーションを計算します。テッセレーションはフレーム単位で評価と最適化が行われ、最悪のテッセレーション シナリオ要件が判断されて適用されます。
自動モードでは、テッセレーションがカレント フレームまたはレンダー設定(Render Settings)やタイム スライダからのフレーム範囲に対して計算される可能性があります。
テッセレーションは、手動モード(Manual mode)の設定( 基本(Basic)または 詳細設定(Advanced))に基づきます。これは、各サーフェスでアトリビュート エディタを開いて設定することもできます。
以下の設定の一部は、手動(Manual)モードの 基本(Basic)設定にも表示され、機能します。
フレーム レンジの使用(Use Frame Range)
自動(Automatic)(デフォルト)モードでのみ使用可能です。
自動テッセレーションによって計算されるテッセレーションは、カメラからのサーフェスの距離に応じて異なります。サーフェスまたはカメラがアニメートされる場合、このリレーションシップは時間の経過と共に変化します。
一般には、サーフェスがカメラに最も近いときに、最高のテッセレーション(つまり、三角形の数が最大)が必要になります。カメラに最も近づくのがどのフレームになるかが分かっている場合は、 カレント フレーム(Current Frame)を使用します。それ以外の場合は、指定されたフレーム範囲のアニメーションを実行することによって計算が行われ、フレームごとにテッセレーションが評価されて、最適なテッセレーションが得られるようにアトリビュートが設定されます。
Maya のウィンドウの一番左下にあるプログレス バーは、ランナップの進捗状況を表示します。ESC キーを押せば、テッセレーション チェックのためのランナップを中断することもできます。この中断中でも、中断されたフレームまでのテッセレーションの値は設定されており、有効になります。
レンダー設定(Render Settings)ウィンドウ内のフレーム範囲設定が使用されます。
曲率許容値(Curvature Tolerance)
テッセレーションのニッケリングをどの程度スムースにする必要があるかを定義することができます。この設定を調整するときに、Maya は 弦の高さの比率(Chord Height Ratio)(詳細設定(Advanced)では非表示だが、 自動(Automatic)(デフォルト)モードと手動モード(Manual Mode)の両方で自動的に設定)を自動的に設定します。
多くの小さなオブジェクトを含むもっと複雑なシーンの場合は、ある程度小さなオブジェクトを低精度(Low Quality)に設定します。(この表は手動モードにだけ適用します。自動モードはカメラからの距離に応じて弦の高さ(Chord Height)を設定します)。
適切な結果を得るには、これらの設定を調整する前に、曲率許容値(Curvature Tolerance)を調整します。
この設定を調整するとき、Maya は自動的にこの値を 3Dでの サーフェス単位のアイソパラム数(Per Surf # of Isoparms in 3D)設定(非表示だが、 自動(Automatic)(デフォルト)モードと手動モード(Manual Mode)の基本(Basic)の両方で自動的に設定される 詳細設定(Advanced)設定)で乗算します。
この値を大きくすると、作成されるポリゴン数が増えます。U 分割係数(U Division Factor)アトリビュートとV 分割係数(V Divisions Factor)アトリビュートには、ほぼ等しい値を入力する必要があります。
手動モード(Manual Mode)
このオプションを選択すると基本(Basic)設定が表示されます。この設定については、 自動(Automatic)モード設定を参照してください。
基本(Basic)設定を調整するとき、Maya は自動的に詳細設定(Advanced)(簡素にするために非表示になっている)を以下のように設定します(詳細については、 高度テッセレーション(Advanced Tessellation)設定を参照してください)。
このオプションを選択すると詳細設定(Advanced)が表示されます。この設定については、 高度テッセレーション(Advanced Tessellation)設定を参照してください。
高度テッセレーション(Advanced Tessellation)設定
手動(Manual)モードで 詳細設定(Advanced)オプションが選択されている場合にだけ使用可能です。 自動(Automatic)(デフォルト)モードまたは 手動(Manual) 基本(Basic)モードの曲率許容値(Curvature Tolerance)を最高値に設定したにもかかわらずオブジェクトがまだ十分に滑らかになっていない場合は、これらの設定を使用してテッセレーションをより細かく制御します。
モード U(Mode U)、モード V(Mode V)
これらは、一次テッセレーション(Primary Tessellation)アトリビュート( 一次テッセレーション パスと二次テッセレーション パスを参照)です。これらの設定によって、サーフェスをテッセレーションする方法が Maya に指示されます。U 値と V 値は、NURBS サーフェスの U パラメータと V パラメータのサイズを表わします。これらの値を別々に設定して、サーフェスのそれぞれの方向にテッセレーションを生成することができます。
NURBS サーフェスの周囲にバウンディング ボックスを作成し、それをスクリーン空間に投影して、スクリーン空間内のピクセル数を計算します。Maya では、この数値に基づいて、サーフェスごとのアイソパラムの数を推定します。最大値は 40 です。オブジェクトがスクリーンを占める割合が大きくなるほど、このモードで設定される値も大きくなります。
これは、常にバウンディング ボックスが変化するようにカメラまたはオブジェクトが移動しているアニメーションには適しません。このようにバウンディング ボックスが変化する場合は、結果的にテッセレーションとテクスチャ ジッタが発生します (同様に、ハイライトによる問題も発生する可能性があります)。
オンにすると、 弦の高さ(Chord Height)スライダの値が有効になります。
弦の高さ(Chord Height)は、オブジェクト空間単位を基準にした物理的な長さで、三角形の 1 辺の中心からサーフェスを定義するカーブまでの垂直距離を指します。実際に測定した距離が弦の高さ(Chord Height)値よりも大きい場合は、三角形が再分割されます。三角形が分割されてからもう一度同じ条件でチェックされ、条件が満たされるまで処理が続行されます。弦の高さ(Chord Height)はオブジェクト空間(Object Space)内で測定されます。デフォルト値は 0.1 です。
弦の高さ(Chord Height)はデフォルトの単位を基準にしますが、小さなモデル上の弦の高さ値はもっと小さくなる可能性があるため、非常に小さなモデルの場合は必ずしもうまく機能するとは限りません。
弦の高さ(Chord Height)が計算されるときに 0.1 を超える大きさのものについては、Maya が三角形を分割して再計算します。すべての三角形がこの条件を満たすまで、同様の分割が行われます。弦の高さが小さくなるほど、サーフェス上のカーブに対する三角形の近似精度は高くなります (このオプションは、プロトタイプに対するモデルの近似精度が重視される工業デザインなどに適しています)。
オンにすると、 弦の高さの比率(Chord Height Ratio)スライダの値が有効になります。
スパンの中心から実際の NURBS サーフェスまでの距離(弦の高さ(Chord Height)=d)と、そのスパンの長さ(D)との比(d/D)を計算し、1 からその比を差し引いた値(1 - d/D)の最大許容値を指定します。
弦の高さ(Chord Height)(d)と、三角形がサーフェスと交差する 2 点間の距離(D)との比(d/D)を計算し、1 からその比を差し引きます(次の式を参照)。
弦の高さの比率(Chord Height Ratio)= 1 - d/D
弦の高さの比率(Chord Height Ratio)の値を 0.997 以上にすると、非常に滑らかなサーフェスが作成されます。デフォルト値は 0.9830 で、D と比べて d が非常に小さくなっています(0.9830 = 1 - d/D)。この値が 1 に近くなるほど、三角形はサーフェスにフィットします(アニメーションではこれが最もよく使用されます)。
オンにすると、 最小スクリーン(Min Screen)ボックスが有効になります。
テッセレーションの基準を最小画面サイズ(デフォルトは 14 ピクセル)にします。テッセレーション中に作成されるすべての三角形が、この画面サイズに収まるようにする必要があります。収まらなければ、収まるまで再分割されます。このオプションは、静止画に対し て 11.0 未満の設定が適しています。このオプションをアニメーションに使用することはお勧めできません。これは、オブジェクトの移動に伴ってテッセレーションが変化し続けると、特定のピクセルに対するシェーディングがフレームごとに異なるテッセレーションを処理することになり、テクスチャのジッタやジャンプを引き起こすためです。
サーフェスのカメラからの距離に基づき、必要なテッセレーションの量を画面空間を使用して判断しながら、テッセレーションを実行します。
すべての三角形が、指定した領域内にぴったり収まっていなければなりません。デフォルトは 14 ピクセルですが、これはすべての三角形が画面上の 14X14 ピクセル領域内にピッタリと収まらなければならないことを意味します。この条件を満たしていない三角形は、指定された領域内に収まるまで繰り返し分割されます。この値を小さくするほど、条件に合致する三角形は小さくなります。この値を小さくすると、メモリの使用量が大幅に増加する可能性がありますので注意してください。