Subdivision Surface(サブディビジョンサーフェス)モディファイアー
Subdivision Surface(サブディビジョンサーフェス) モディファイアー(多くの場合 "Subdiv" に短縮)は、メッシュの面を小さな面に分割して滑らかな外観にするために使用されます。単純な低頂点メッシュをモデリングしながら、複雑で滑らかなサーフェスを作成できます。大量のデータを保存および維持する必要がなく、オブジェクトに滑らかな "有機的な" 外観を与えます。
他のモディファイアーと同様に、実行の順序( モディファイアースタック 内の位置)は結果に重要な影響を及ぼします。
これは、その同類である Smooth Shading(スムーズシェーディング) とは異なる操作であることに注意してください。下のグリッド画像で2つの違いを確認できます。
ちなみに
Subdivision Surface(サブディビジョンサーフェス) モディファイアーでは、新しいサブディビジョンジオメトリを適用せずに編集することはできませんが、 Multiresolution(マルチレゾリューション) モディファイアーでは(Sculpt Mode(スカルプトモード)で)編集できます。
注釈
このモディファイアーは、OpenSubdivライブラリ をバックエンドとして使用します。
Options(オプション)
- Catmull-Clark(カトマルクラーク)
サーフェスを細かく分割して滑らかにし、より見栄えの良いメッシュを作成します。 Wikipediaのページ によると、"数学的な導出ではなく、結果として得られるサーフェスの美的外観に基づいて、CatmullとClarkによって任意に見える式が選択されました。"
- Simple(シンプル)
サーフェスを細分化するだけです。これは、サーフェスが non-coplanar (同一平面上にない)場合を除いて、多くの場合、スムージングを提供しません(Edit Mode(編集モード)の Subdivide(細分化) 操作と同じ)。非同一平面上のジオメトリでこの動作を回避するには、 Triangulate(三角面化) してすべてのジオメトリが同一平面上にあることを確認します。
Simple(シンプル)モードは、例えば、ディスプレイスメントマップを使用するときにベースメッシュの解像度を上げるために使用できます。
- Levels Viewport(ビューポートのレベル数)、Render(レンダー)
3D Viewport(3Dビューポート)や最終レンダリングに表示されるサブディビジョンレベルの数。
警告
サブディビジョンのレベルが高いほど、頂点が多くなります。これは、メモリ消費量が増えることを意味します(システムRAMと表示用のビデオメモリの両方)。これにより、十分なメモリが利用できない場合、Blenderがハングやクラッシュする可能性があります。
ちなみに
これらの設定を適切に組み合わせることで、3D Viewport(3Dビューポート)でモデルを操作するときにモデルの高速で軽量な近似を維持できますが、レンダリング時にはより高品質のバージョンを使用できます。
Viewport(ビューポート) のサブディビジョンを Render(レンダー) のサブディビジョンよりも高く設定しないように注意してください。これは、3D Viewport(3Dビューポート)の品質がレンダリングよりも高くなることを意味します。
- Optimal Display(最適化表示)
このオブジェクトのワイヤーフレームをレンダリングするとき、新しく細分化された辺のワイヤーはスキップされます(元のジオメトリの辺のみが表示されます)。
高度な設定
- Use Limit Surface(極限曲面を使用)
無限レベルの細分化(可能な限り滑らかな形状)で生成されるサーフェスに頂点を配置します。
- Quality(品質)
Use Limit Surface(極限曲面を使用) が有効の場合、このプロパティは、頂点が極限曲面上にどの程度正確に配置されるかを制御します(無限に細分化されたメッシュの理論上の位置と比較して)。パフォーマンスを向上させるために下げることができます。
より高い値を使用しても、必ずしも品質が実際に向上するわけではありません。最大の Quality(品質) 値よりもかなり前に理想的な結果が得られる可能性があります。
注釈
この値は、 Edge Creases(辺クリース) の精度に影響を与える可能性があります。より高い Quality(品質) 値を使用すると、より広い範囲のクリース値が正確に機能するようになります。
- UV Smooth(UVスムーズ)
サブディビジョンスムージングをUVに適用する方法を制御します。
- None(なし)
UVは変更されません。
- Keep Corners(コーナーを維持)
UVアイランドはスムージングされますが、境界は変更されません。
- Keep Corners, Junctions(コーナーと接点を維持)
UV がスムージングされ、不連続な境界のコーナーと、3つ以上の領域の接点がシャープなまま維持されます
- Keep Corners, Junctions, Concave(コーナー、接点、凹面を維持)
UV がスムージングされ、不連続な境界のコーナーと、3つ以上の領域の接点、ダーツと凹面のコーナーがシャープなまま維持されます
- Keep Boundaries(境界を維持)
UVがスムージングされ、境界がシャープに保たれます。
- All(全て)
UVとその境界はスムージングされます。
- Boundary Smooth(境界スムーズ)
開いた境界(およびコーナー)をスムージングする量をコントロールします。
- All(全て)
コーナーを含む境界をスムージングします。
- Keep Corners(コーナーを維持)
境界をスムージングしますが、コーナーはシャープなままにします。
- Use Creases(クリースを使用)
辺に保存されている 重み付けした辺クリース の値を使用して、辺の滑らかさを制御します。
- Use Custom Normals(カスタム法線を使用)
Interpolates existing カスタム分割法線 of the resulting mesh. Otherwise, new faces will have the overall normal orientation of that original face.
キーボードショートカット
1つまたは複数のオブジェクトに Subdivision Surface(サブディビジョンサーフェス) モディファイアーをすばやく追加するには、オブジェクトを選択して Ctrl-1 を押します。これにより、 Viewport(ビューポート) のサブディビジョンが1に設定されたSubdivision Surface(サブディビジョンサーフェス)モディファイアーが追加されます。 Ctrl-2 、 Ctrl-3 、などの他の数値を使用して、そのサブディビジョンの数のモディファイアーを追加することもできます。この方法で Subdivision Surface(サブディビジョンサーフェス) モディファイアーを追加しても、 Render(レンダー) サブディビジョンは変更されません。
オブジェクトにすでに Subdivision Surface(サブディビジョンサーフェス) モディファイアーがある場合、これを行うと、別のモディファイアーを追加するのではなく、サブディビジョンレベルを変更するだけです。
コントロール
Catmull-Clark(カトマルクラーク)の細分化は辺を丸めますが、多くの場合、これはあなたが望むものではありません。サブディビジョンを制御できるソリューションがいくつかあります。
重み付けした辺クリース
サブディビジョンサーフェスの重み付けした辺クリースを使用すると、Subdivision Surface(サブディビジョンサーフェス) モディファイアーがジオメトリをサブディビジョンする方法を変更して、辺に滑らかまたはシャープな外観を与えることができます。
選択した辺のクリースのウェイトは、3D Viewport(3Dビューポート)のサイドバーの Transform(トランスフォーム) パネルで変更できます。はかりのような専用工具 Shift-E を使用して、クリースのウェイトを調整することもできます。値を大きくすると、辺が "より強く" なり、サブディビジョンサーフェスのスムージング効果に対する耐性が高まります。
Edge Loops(辺ループ)
Subdivision Surface(サブディビジョンサーフェス) モディファイアーが、優れたクリーンなトポロジーが非常に重要である理由を示しています。図からわかるように、デフォルトの立方体に大幅な影響を与えます。ループを追加するまで(例えば、 Loop Cut and Slide(ループカットとスライド) を使用)、形状は立方体としてほとんど認識できません。
意図的なトポロジーのメッシュでは、辺ループが適切に配置されます。これにより、より多くのループを配置(または削除)して、結果のメッシュのシャープネス/滑らかさを制御できます。
既知の制限
連続しない法線
Abrupt normal changes will prevent portions of the mesh from producing a smooth subdivision. Instead, these portions with non-contiguous normals will be subdivided using the "Simple" subdivision method.
A quick way to fix this is to Recalculate Normals. If this does not work you may have to manually flip the normals.