
今回はポリゴンの張替え(リトポロジー)の用途でZBrush2021から追加されたZModelerの新機能であるエッジ押し出しについて解説をしていきます。
まず、ライトボックス内のプロジェクトタブからDemoAnimeHeadを読み込んでみましょう。
このモデルはこのようにダイナメッシュ機能を利用し作成していますので、ポリゴンの流れが形状に沿っているわけではありません。
ポリゴンの流れを調整するメリットとは?
ポリゴンの流れを調整する代表的なメリットを挙げていくと
・少ない頂点数で形状に合ったポリゴン構造にできる
・他ソフトウエアでアニメーション等をする際に、コントロールしやすくなる
・スカルプトをする際に、よりきれいな彫り込みが行えるようになる。
等が挙げられます。

まず新規で土台となる平ポリを作成する必要があります。
ZBrushでは、裏面の無い平ポリを追加する方法は複数存在します。
・挿入(Insert)からPlane3Dを追加する方法。→少し頂点数が高いため調整が必要となります。
・IMM PrimitivesHから平ポリを選択し、挿入する方法。
・カスタムで平ポリをIMMに登録し挿入する方法。
が可能ですが、今回はサブツールを複製して、イニシャライズ(Initialize)からQグリッド(QGrid)を選択します。

ギズモ3Dを利用して配置したQグリッド(QGrid)のスケールや位置を調整しましょう。

では、まず土台となる平ポリを元のDemoAnimeHeadに沿わせる必要があります。
全て投影(ProjectAll)ボタンを押して形状を沿わせる方法もありますが、今回はZModelerブラシに切り替え、頂点にカーソルを合わせ、移動(Move)のメニューを開きます。

ポイント(Point)>移動(Move)のメニューを開くとこのような表示になります。
モディファイア(Modifier)の項目を選択から、表面にスナップ(Snap to Surface)ボタンを有効にすることで、表示されているすべてのメッシュに対して頂点が移動するようになります。
この機能は、ZBrush内のZBufferという機能を利用しています。そのため、画面内に表示されているモデルの深度に対して頂点を沿わせます。

すべての頂点を移動させるとこのようにモデルに沿うようになりましたが、編集しようと思っているポリゴンが少し見づらくなりました。
このため、ダイナミックサブディビジョン(Dynamic Subdivision)を利用して厚みを仮でつける方法と、モデルを透過(Transparent)させる方法があります。
今回はダイナミックサブディビジョンを利用しましょう。

ダイナミックサブディビジョンを有効にするとデフォルトでスムース(Smooth)が有効になっているため、丸みが付きます。
なので、スムースサブディビ(SmoothSubdiv)を0に切り替えます。
次に、厚み(Thickness)に数値を入力し、厚みを付けましょう。
厚みを付けると表と裏両面に厚みが付きます。オフセット(Offset)の数値を調整すると
100=表側のみに厚みをつける
-100=裏側のみに厚みをつける
という動作になります。

では、土台となる平ポリの下準備ができたので、モデルのエッジにカーソルを合わせ、ZModelerのメニューを開きましょう。
次に、押し出し(Extrude)をクリックし、モディファイア(Modifier)の項目の表面にスナップ(Snap to surface)ボタンを有効にすることで、エッジ押し出し時に表面にスナップするようになります。

これでエッジを掴み、左ドラッグを行うことでエッジを押し出すことが可能となります。

もちろんすでに存在する頂点に近づけると自動的に吸着し、接続させることができます。

あとは操作を繰り返し、このように大まかな形状を作成していきましょう。
必要に応じて、新規エッジ作成後、頂点にカーソルを合わせ、移動させることで調整しましょう。

配置したエッジの頂点をあとから調整することもできます。
2020以前の挙動では、頂点と頂点を接続させるには頂点のオプションから”接続(Stitch)”を利用する必要がありました。
2021では、”接続”以外にも、ZModelerで頂点を移動させることでブラシサイズに応じて他の頂点に吸着します。
この際、ある程度ブラシサイズ(場合にもよりますが、10-20程度)必要となります。

他にも複数エッジを同時に押し出す方法があります。
エッジを引っ張り出している最中に、ALTキーを二度タップすることで、エッジループと単一エッジを切り替えることができます。
この際、ZModelerのスナップ機能がZBufferの機能に依存しているため、画面で表示されていないようなモデルの背面には吸着できないため、画面に対して正面を向いていないエッジは押し出さないよう判断します。

また、エッジ押し出しの際複数エッジを追加したいという場面もあると思います。
その場合、エッジを引っ張り出している最中に、CTRLキーを押すと、その時点のエッジ幅をZBrushが認識し、引き続きユーザーがドラッグ操作をしていくと、等間隔でエッジが追加されていきます。

他にもALTキーを押しながらポリゴン選択を行うことで、エッジ押し出し範囲を指定できます。
ポリゴンにカーソルをあわせ、ALTキーを押しながら塗るような形でドラッグをすると、仮のポリグループをモデルに割り当てることができます。
この仮のポリグループが割り当てられた状態で、エッジ押し出しを行うと、このように指定したポリゴンから同時にエッジ押し出しが可能となります。

あとは形状とポリゴンの流れを意識し、ポリゴンの削除エッジループの追加などをしていきモデルの調整をしていきましょう。
もしポリゴンの配置をどうしたらよいかを悩んだ場合には、”Topology Guides”という単語で画像検索をしてみましょう。
ローポリゴンの場合にはできる限りシルエットを優先し、三角ポリゴンをうまく組み合わせたり、サブディビジョンを行うモデルはできる限り均一な四角ポリゴンで構成し、平面となるような位置以外は三角ポリゴンをできる限り避けるなどのベストプラクティスが存在します。

あとは、サブディビジョンレベルを追加すると、新規で追加されたエッジは元のモデルにスナップしないため、全て投影(ProjectAll)で調整しましょう。