Modeling

CG News

ZBrush 2021リリース

ZBrush 2021がリリースされました。クロスダイナミクスが搭載されて、リアルな布を手軽にスカルプトできるようになりました。動作も軽くて楽しいです。

https://pixologic.com/features/

 

ZBrush 2021

ZBrush 2021では、制御されたクロススカルプティングやダイナミックサブディビジョン機能の再検討に加えて、ダイナミクスシステムが導入されています。
また、ZModelerに新機能を追加したほか、ZBrushにiMage 3Dサポートを導入し、ZBrushCoreMiniで作成したネイティブフォーマットのファイルを開くことができるようになりました。

ZBrushエンジン自体も強化され、全体的にパフォーマンスを向上させる方法を見つけました。ZBrush 2021では、よりスムーズなスカルプトが可能になり、DynaMeshなどの他の操作にかかる時間も短縮されています。

ダイナミクスの紹介

 

ダイナミクスシステムを使って、あらゆるサーフェスを収縮、拡張、膨らませたり、重力でドレープさせたりすることができ、スカルプティングを強化できます。
マスキングを使ってメッシュの一部をピンで固定して注目点を作ったり、マスクを使って独自のインタラクションを作成して、表面を自分で転がすことができます。低解像度の平面でも、リアルな布の折り目を作成できます。

メッシュを配置し、コリジョンボリュームと任意のコントロールをオンにしてから、ZBrushが他の見えているメッシュの上に布メッシュをドレープしていく様子を見てみましょう。

 

制御された布スカルプト

 

ダイナミクスエンジンを使用した特別なブラシが導入され、布の表面と対話するためのユニークな機能が提供されています。

例えば、折り目の位置を選択したり、ジオメトリを掴んでワークスペース内で自由に動かし、リアルタイムで折り目を作成したりすることができます。
クロスツイスターブラシは、ねじれた布をシミュレートします。
クロスウィンドは、方向性のある動きを可能にします。
クロスピンチトレイルは、ブラシのストロークがサーフェス上のどこにあっても、布を挟んで縫い目を作ります。

 

ダイナミックサブディビジョンの再表示

ダイナミックサブディビジョンでは、ベースとなるポリゴン数を増やすことなくサブディビジョンレベルをプレビューすることができます。

この機能は平面ジオメトリの任意の単一ピースに調整可能な厚さを追加することができるようになり、さらに一歩進んだものとなりました。

ジオメトリの一部を完全にインタラクティブなインスタンスとして各ポリゴンに追加することもできます。
プリセットのライブラリから選択して、表面をキャンバスやデニムジーンズのように見せることができます。
鎧の一部を選択して、繰り返し使用できるチェーンメールを作成することもできます。

 

パフォーマンス

ZBrush には、さらに多くのパフォーマンス強化が追加されました。他の多くの人気のある機能とともに、スカルプトブラシの背後にあるシステムを再検討しました。
高ポリゴンモデルでのレスポンスタイムの高速化、DynaMeshの速度向上など、すべてのセクターで速度が向上しました。
さらにマルチスレッドをスマートに管理するための新しいOptimalオプションは、最高のパフォーマンスを実現するために、お使いのシステムでZBrushが必要とする適切な量のスレッドを常に維持します。

 

ZModelerがアップグレード

すでに強力なZModelerブラシシステムに新機能が追加されました。

エッジの押し出し

想像通りの平面を構築したり、既存のスカルプトにフィットする全く新しいジオメトリを構築したりするのが、これまでになく簡単になりました。

新しいエッジ押し出し機能では、1つのエッジ、複数のエッジ、完全なエッジループやポリループを使って、インタラクティブなエッジスナップを使ってビルドすることができます。エッジを押し出して隣接する面にスナップするだけでなく、SnapToSurfaceを有効にして、新しいエッジを下地のサーフェスにスナップできるようにすることもできます。

 

等間隔インセット

等距離インセットを使用すると、単一のポリゴンまたはポリゴンの領域をインセットすることができ、新しく作成されたすべてのトポロジーは既存のトポロジーから等距離になります。その結果、完璧なポリゴンの新しいセットができあがります。

 

よく見ると

モデルの基礎となるジオメトリが表示されます。

 

ナノメッシュの改造

ZBrush 2021ではNanoMeshの強力なインスタンスシステムをさらに拡張し、シーン内でインスタンスメッシュを編集できるようになりました。スプリットスクリーンとNanoMeshを組み合わせることで、面倒な数のポリゴンを追加することなく、作成や調整が可能になります。

 

iMage3DのGIFとPNGフォーマット

iMage 3Dフォーマットは、あなたの作品のイメージと3Dモデルの両方を、1つのGIFまたはPNGファイルにまとめて他の人と共有するユニークな方法を提供します。このファイルは、通常の2Dイメージとして表示され、ZBrushで開くと、すべてのサブツールで完全なモデルを編集する準備ができているウェブサイトに掲載することができます。

 

リリースノート

  • 可変カーソルサイズ調整
  • ファイル拡張子 Collada (DAE) と Alembic (ABC) のインポート/エクスポート機能
  • ポリゴンオプションに ZModeler Set Camera Perpendicular オプションが追加されました。
  • ZModelerの追加で一時的に白いポリグループを塗るようにしました。(ZModelerのポリゴンモードでALTキーを押しながら)
  • ファイル拡張子 Collada (DAE)、Alembic (ABC) と 3MF のインポート/エクスポート機能
  • 最適なパフォーマンスの強化が追加されました
  • ギズモ精密ムーブメント追加
  • 3DSMAX 2021に向けてGoZアップデート
  • いくつかのマクロの追加
  • Spotlight Snapshot 3Dはポリグループ化としてカラーを処理するようになりました。
  • ストロークの追加
    • ジッター機能により、アルファがストロークのパスに沿って跳ね返るようになります。
    • 不完全性機能は、ストロークにサーフェスノイズを適用します。
Tips

Oculus Questでmodo VR使ってみた

Oculus QuestとOculus Linkを使用してmodo VR使ってみた。使用方法は簡単です。Oculus Linkを使用してPCにQuestを接続した状態でmodoを起動し、VRタブをクリックするとQuestにmodoのビューポートが表示されます。

グラフィックボードがGeForce RTX 2060で画面解像度3840×2160で表示すると描画が崩れてしまうため、2560×1440表示で使用して画面キャプチャしました。

VRを使用した感想は没入感があって思いのほか楽しいです。modoVRはツールUIがVR専用のため、ツールパレットを覚え直しになるのが面倒でVRをモデリングに使用したいとは思いませんでしたが、モデル確認に使用するのはアリだと思いました。

 

教室

Webのホームに使用してるモデルです。未調整ですが意外といい感じに見えました。

 

キャラクターモデル

現在モデリングしてるオリジナルキャラです。サブディビを使用したポリゴン数の多いモデルのためか、モデルに接近したときに描画遅延が発生しました。影やポリゴン描画の精度が落ちるようです。

フィギュアを見るようにモデルを確認できるのが楽しい。

 

modo VRの練習

画面の回転やズームは一般的なVR操作なので普通に使えます。モデルの編集は難しいですが、モデルビューワと割り切って使うには十分楽しめそう。

 

Oculus Questのディスプレイは2,880×1,600 (片目1,440×1,600) なので、もう少し低い解像度で表示してもよかったかもしれません。modo起動したままPCの画面解像度を変更したらPCがフリーズしたので細かなテストはしませんでした。

VRゴーグルがあるなら一度試してみると楽しいかもしれません。

Tips

modoでUDIMを使う方法

modoのUDIMの使い方について書いてみます。AfterEffectsやPremiereなどの動画編集ソフトでは連番画像を1つの素材として扱いますが、UDIMを使用すると複数のテクスチャ画像を1つの画像レイヤーとして扱うことができるので便利です。

 

UDIMとは

UDIM (U-Dimensionの略称)は、UV空間の整数ブロックに番号を割り振って管理する方法です。UVブロックと画像は1001、1002、1003...のような4桁の番号を使用してペアとして扱い管理されます。

UDIMは既存のUV作業工程と大きく変わりません。一般的なUVは0~1の範囲にメッシュを配置していましたが、UDIMでは0~1の外側の領域も使用します。UV空間の0~1の範囲を1001、1~2の範囲を1002のように番号で管理します。画像も同様にUV範囲に対応した番号をファイル名に含めることでUVとペアとして管理する仕組みです。

 

UVブロック

 

画像のファイル名称

 

UDIMの歴史は思いのほか古く、Weta Digitalが2002年公開の映画「ロード・オブ・ザ・リング/二つの塔」制作時に開発しました。その後Weta DigitalのインハウスツールだったMARIMudboxが一般販売されたことから、広く使用されることになります。

 

UDIMのメリット

UDIMのメリットは大きく2つあります。

  • 高解像度の画像を1枚だけ使う代わりに、複数の画像を使用できる
  • 単一の画像レイヤーとして管理できる

 

複数の画像を使用して高解像度化

高解像度の画像を1枚だけ使う代わりに、そこそこの大きさの画像をいくつも並べて、結果的に解像度の高いテクスチャにすることができます。
PhotoShop等で画像を編集するときも高解像度の画像1枚より、そこそこの大きさの画像複数枚のほうが取り回しが楽です。

 

1枚の画像レイヤーとして管理

複数のUVマップを使用する方法だと、画像レイヤーが複数必要でした。または、画像ごとにマテリアルを分ける必要がありました。UDIMを使用すると1レイヤーで済むようになり管理が楽になります。

 

複数のUVマップを使用した例(従来のUV設定方法)

1つのメッシュ内で複数のUVマップを使用した場合、シェーダーツリーではUVマップと同じ数の画像レイヤーが必要になります。画像レイヤーでは1枚ごとに使用するUVマップを指定する必要があり、画像枚数が多いと設定するのが手間です。

 

UDIMを使用した例

UDIMを使用した場合、シェーダーツリーは画像レイヤー1枚ですみます。下の画像ではディフューズ色のみの設定ですが、スペキュラー、ディスプレイスメント、法線など複数種類のマップを使用する場合は、UDIMを使用した方が管理が楽になります。

UDIMは元々は高解像度で大量のテクスチャを使用するWetaのインハウスツールに適した仕様として考えられたのだと思いますが、ゲームエンジンでもテクスチャのストリーミング等でメモリ使用量を少なくできるなどのメリットがあるようです。

 

modoでUDIM画像を読み込む方法

UDIM画像の読み込みには「新規UDMIの読み込み」を使用します。

  1. シェーダーツリー の「レイヤー追加」から「新規UDMIの読み込み」をクリックしします。
  2. ファイルオープンダイアログから、使用する画像を選択して「開く」をクリックします。
    開いた画像は自動的にフォルダにまとめられ「ファイル名称からUDIM番号を設定」が実行されます。
    画像レイヤーでは「画像」にフォルダが設定されることにより、UDIMとして動作するようになります。

 

UDIMはZBrushのように複数のUVマップに対応していないソフトでも使用できるので覚えておくと便利です。

ゲームではUDIMが使われることは少ないようですが、先日Substance PainterがUDIMに対応したので今後ゲームでの利用も増えたりするかもしれません。

 

参考

UDIMワークフロー
https://learn.foundry.com/modo/14.0/content/help/pages/uving/udim_workflow.html

Tips

GoZ for Modoのインストール方法と使用方法

たまにしかインストールしないので、GoZ for Modoのインストール方法をメモしときます。今回はmodo 14.0とZBrush 2020.1を使用しました。

 

GoZ for Modoのインストール方法

GoZ for Modoとは

GoZはmodoとZBrush間でメッシュやテクスチャをワンクリックで転送できる便利ツールです。901以前はPixologicがmodo用のGoZを開発していましたが、10.1以降はFoundryがGoZを開発しています。

modo 10.1以降用のインストーラー

http://modogroup.jp/modo/free_kits/goz

modo 901 用のインストーラー

http://download.pixologic01.com/download.php?f=Plugins/ZBrush4R7-WIN/GoZ_for_MODO901SP1_Installer_WIN.exe

 

GoZ for Modo インストール手順

インストールの流れは以下の通りです。

  1. ZBrushのインストール
  2. GoZ for Modoのインストール
  3. GoZで使用するmodoのパスを設定

 

1. ZBrushのインストール

GoZを使用するにはZBrushとmodoがインストールされている必要があります。

 

2. GoZ for Modoのインストール

GoZ_win.exeを使用してGoZ for Modoをインストールします。

 

3. GoZで使用するmodoのパスを設定

ZBrushを起動して「環境設定」で「Path to Modo(New)」をクリックし、一覧から使用するmodo バージョンを選択します。

ZBrushを再起動すればGoZが使用できるようになります。

 

GoZ for Modoがインストールされていない場合は、「Path to Modo(New)」は表示されません。ZBrushを起動した状態でGoZ for Modoをインストールした場合は、ZBrushを再起動する必要があります。

Mayaや3dsMaxはmodoと異なり、ZBrushのパス設定ボタンからGoZインストーラを起動することができます。

 

 

GoZ for Modoの使用方法

modoからZBrush

GoZ for ModoがmodoのKitパスにインストールされている場合、「modoツールバー」の右端にあるキットボタン内にGoZが表示されます。

 

適当にTeapotを作成してGoZボタンを押すと、ZBrushにTeapotを転送することができます。

 

 

ZBrushからmodo

ZBrushからmodoへデータを転送するにはGoZボタンを押せばいいのですが、せっかくなのでmodoから転送したTeapotを「ディバイド」して適当にスカルプトしてみます。

 

スカルプトが完了したら「SubDiv」を1にして「ディスプレイスメントマップ作製」を実行します。

 

「ツール」のGoZボタン押すと、modoにTeapotとディスプレイスメントマップが転送されます。modoのデフォルトのレンダリング設定では「マイクロポリゴンディスプレイスメント」の評価間隔が荒いので、小さな値を設定します。

 

新規シーンにGoZした場合、アイテムとマテリアルは「Teapot_GoZ」のようなグループにまとめられます。

 

GoZの保存先のディレクトリ

GoZで使用されるマップやメッシュのデータは以下のディレクトリに保存されています。

C:\Users\Public\Pixologic\GoZProjects\Default

 

 

GoZをインストールしておくとメッシュとマップを転送することができるので便利です。

Tips

modoで糸を編む表現

modoで糸やバスケットを編む表現を作ってみた。

 

サンプルファイル

スケマティックはこんな感じです。

Spiral Curveでカーブを1本作って、TransformやTwistでアニメーションさせます。そのカーブをMerge Meshesを使って別メッシュにコピー、Radial Arrayを使ってカーブのアニメーションを複製します。

レンダリングは「カーブをレンダリング」を使用します。カーブをレンダリングしてる関係で糸のバンプがずれて動いてしまってます。
オプションの「カーブをポリゴンとしてレンダー」を使うとUV指定でズレないように設定できるのですが、プロシージャルのノイズを使ったのが原因なのかUVの切れ目が目立ったので今回はずれを気にしないことにしました。

 

バスケット

サンプルファイル

スケマティックはこんな感じです。

バスケットの編み目の形状のカーブを1つ作りArrayで面状に複製しています。編み目がランダムに伸びて見えるようにカーブのDeleteにLinear FalloffとTexture Falloffを使用しました。そのカーブを元にCurve Sweepで面を作成し、Thickenで押し出します。

バスケットは思い通りに作れませんでした。プロシージャルモデリングでランダムな速度で一方向に伸び続けるという設定が上手く作れなくて、単純にノイズで切り抜いたようになってしまいました。

プロシージャルリボンの作り方」のようにパーティクルを使ってカーブを生成したほうが、イメージした動きが作れそうです。

 

ニットパターンも作ったのですが、モディファイヤ依存ループエラーが多発するシーンになってしまい調整を断念しました。

以前も同じ問題に遭遇したのですが、Texture Falloffに接続したテクスチャにFalloffを設定していると、何かのタイミングでループするというエラーが出てしまいノードが動作しなくなってしまいます。テクスチャを削除すれば一時的に改善することもあるのですが、何か問題が潜んでる気がします。

 

参考

Tips

modoでプロシージャルリボンの作り方

modoでプロシージャルリボンの作り方について書いてみます。

リボンのような形状を作る場合は「プロシージャルロープの作り方」と同じようにCurve Sweepを使う方法や、スプラインデフォーマを使う方法が定番だと思います。
今回は違うアプローチとしてパーティクルを使う方法を紹介してみたいと思います。パーティクルを使用しているので、フォースを使用して動きを制御することができます。

サンプルファイル

スケマティックはこんな感じです。

 

  1.  パーティクルエミッターを使用して文字の軌跡を作成します。
    今回はエミッターに直接アニメーションを設定していますが、文字形状のパスを作ってエミッターをパスコンストレイントしてアニメーションする方が動きが綺麗になるかもしれません。
  2. Particles to Array と Create Polygons を使ってパーティクルシミュレーションからカーブを作成します。
  3. カーブを Polygon Extrude を使って押し出し帯状にします。

リボンの小さな揺れはTransform Effector と Texture Falloff を使ってます。リボンが浮き上がる動きは、Linear Force と Turbulence Force を使い、Linear Falloff でタイミングを調節してます。

リボンに縁取りを設定するためプロシージャルUVを使用してみましたが、メッシュが縦長になると展開方向が回転してしまいました。平面投影してるはずなのに、どうして回転するのか謎です。

 

プロシージャルメッシュを直接ソフトボディとして使用することができれば、もっとリアルなリボンの動きを設定できると思います。modo 14.0ではプロシージャルメッシュをソフトボディで使うことができないのが残念です。将来的に対応してくれると嬉しいですね。

 

参考

Tips

modoでカーブから面を作成する方法

modoでカーブから面を押し出す方法について書いてみます。

 

Illustratorで作成したパスや、パーティクルで生成したカーブから面を押し出したいことがあります。
そんなときはPolygon Extrudeを使用します。Curve Rebuildを使用すると、押し出す面の細かさを制御することができます。

 

面を作成してから押し出したい場合はFreezeを使用します。

 

たまにカーブから面を立ち上げたい時があるのですが、エッジの拡張だっけ?ベベルだっけ?と毎回忘れるので記事にして残しておこうと思いました。

以前作ったプロシージャル等高線のカーブを押し出してみた。

Tips

modoのプロシージャルモデリングをダイレクトモデリングツールで編集する方法

modoのプロシージャルモデリングを使用して作成したメッシュを、ダイレクトモデリングツールで編集する方法についてみます。

 

modoにはメッシュを直接編集する「ダイレクトモデリング」と、手続き的に編集する「プロシージャルモデリング」の2種類のモデリング手法があります。

プロシージャルモデリングは後からベベルの幅などを再編集できて便利ですが、ダイレクトモデリング用のツールで編集しようとすると「従来のモデリングツールで編集することはできません」という警告が表示され編集することができません。

 

プロシージャルモデリングをダイレクトモデリング用のツールで編集したい場合は、ポリゴンを選択してコピー(Ctrl+C)、ペースト(trl+V)を使うと便利です。

 

アイテムリストから右クリックメニューで「メッシュオペレーションをフリーズ」から「フリーズ」しましょうと紹介されることが多い気がしますが、メニューから「フリーズ」コマンドを探して実行するのが少し面倒に感じます。

コピーペーストであればショートカットで頻繁に使うので、より直感的にプロシージャルからダイレクトモデリングに移行できるのでお勧めです。

 

メッシュがコピーできることを知ってれば、Merge Meshesを使用してReplicatorで複製したメッシュをコピーするような使い方もできるので便利だと思います。

 

参考

参考資料

PIFuHD:高解像度3D人間のデジタル化のためのマルチレベルピクセルアライン暗黙関数

「PIFuHD」はディープラーニングを使用して、1枚の画像から高解像度の3Dモデルを生成する技術だそうです。
ディープラーニング形の画像生成は解像度が低い物が多かったですが、高解像度の画像を活用できるところが有望な感じしますね。githubでソースが公開されてるようです。
https://github.com/facebookresearch/pifuhd
https://shunsukesaito.github.io/PIFuHD/

後処理なしで元の入力のディテールを保持しながら、これまでにないほど高い1k画像解像度でピクセル配置方法で、衣服を着た人間の3Dジオメトリを推測するマルチレベルフレームワークを紹介します。

 

概要

画像ベースの3D人間の形状推定における最近の進歩は、ディープニューラルネットワークによって提供される表現力の大幅な改善によって推進されてきました。現在のアプローチは現実世界の設定で可能性を実証していますが、入力画像にしばしば存在する詳細レベルで再構成を生成することはできません。

この制限は主に2つの相反する要件を形成していると私たちは主張します。正確な予測には大きなコンテキストが必要ですが、正確な予測には高解像度が必要です。現在のハードウェアのメモリ制限により、以前のアプローチでは、入力として低解像度の画像を使用して大きな空間コンテキストをカバーし、結果として精度の低い(または低解像度の)3D推定を生成する傾向があります。エンドツーエンドのトレーニングが可能なマルチレベルアーキテクチャを策定することにより、この制限に対処します。

粗いレベルでは画像全体を低い解像度で観察し、全体論的な推論に焦点を当てます。これは、より高解像度の画像を観察することによって非常に詳細なジオメトリを推定する細かいレベルにコンテキストを提供します。私たちのアプローチは、1k解像度の入力画像を完全に活用することにより、単一画像の人間の形状の再構成に関する既存の最先端技術を大幅に上回っていることを示しています。

 

Tips

modoでプロシージャルロープの作り方

modoのプロシージャルモデリング機能を使ったロープの作り方について書いてみたいと思います。

プロシージャルモデリングの基本では、プロシージャルモデリングの便利な使い所として「エッジベベル」「厚み」「カーブ押し出し」「複製系」を紹介しました。
今回はより具体的な例としてプロシージャルロープの作り方を紹介してみます。

 

ModoJapanGroupのサイトにはダイレクトモデリングでロープを作るチュートリアルが公開されているので見てください。
http://modogroup.jp/modo/column/modeling_basic_27

ロープを作る場合、ダイレクトモデリングで作ると形状の調整に手間が掛かることが多いです。一発でイメージ通りの形状にすることは難しくて、ロープをひねる回数を増やしたい、メッシュを細かくしたい、カーブの形状を変更したい場合など、何度も最初からリトライすることになると思います。

プロシージャルモデリングはいつでも個別の要素を再編集できるので、ロープのような形状をモデリングするのに最適です。作成手順はダイレクトモデリングの手順と同じです。

  1. 平面を作成する
  2. 平面を放射状に複製する
  3. Curve Sweepで押し出す
  4. Subdivideでメッシュを滑らかにする

サンプルファイル

 

ロープのメッシュの細かさはCurve Sweepの「ステップ」を使います。ひねりは「ツイスト」に大きな値を設定します。ツイスト量はカーブごとのツイスト量になっているので、複数のカーブで押し出す場合は、各カーブの長さをそろえると見栄えがよくなると思います。

 

Curve Sweepを使用すると、押し出し元のカーブを編集するだけでロープの形状を変えることができるのも便利です。

 

スケマティックでモデリング工程を見るとこんな感じ。

 

Curve Sweepの「終端パーセント」にキーを設定するとロープが伸びるアニメーションを簡単に作ることができます。(modo 13.2は正常に動きますが、14.0は上手く動かなかったり少し動作が不安定な気がする)

 

全てプロシージャルモデリングする必要はありませんが、ロープのように後から調整したくなる箇所が多いモデルではプロシージャルモデリングは凄く便利です。

プロシージャル弁当容器作ってみたので貼っておきます。これは全てプロシージャルモデリングで作ってますが、エッジベベル以外はダイレクトモデリングの方が圧倒的に早くて便利です。

 

参考

Tips

modoでアニメ風の顔をモデリングする方法

modoを使用してアニメやフィギュアのようなキャラクターの顔をモデリングする方法を紹介したいと思います。大まかに顔の形状を作る手順をキャプチャしてみました。
ビデオは一発録り等倍再生(わずかにスローにしてる)で、操作にはマウスを使用してます。10分程度で顔の大まかな形状を作ることができるので、興味があればぜひチャレンジしてみてください。

 

1. 背景画像を読み込む

モデリングのアタリにする顔のラフ画像を読み込みます。Windowsエクスプローラーからビューポートに画像をドラッグアンドドロップして、「透明度」「輝度」を見やすく調節します。

 

2. 面を貼る

顔のモデリングはボックスや球から作り始めたり様々な方法があります。私の場合は円から作ります。

  1. 円柱ツールを使って、口と目の位置に16頂点の円を作成します。
  2. トポロジペンを使って円のエッジを引き延ばすようにして顔のトポロジーを作ります。
  3. 最後にスカルプト移動ツールのスムーズを使用してメッシュをなめらかにします。

トポロジペンを使うと頂点が離れていたり、余計な頂点ができてしまうことがあります。最後にメッシュクリーンアップを実行して、メッシュを綺麗にするとよいです。

ビデオではポリゴンが少なすぎました。目のあいだ、鼻の部分を縦に分割するの忘れたのでエッジループを追加したほうがよいです。
サブディビジョンサーフェースは少ないポリゴンで滑らかな曲面を作成できるのがメリットですが、ポリゴンが少なすぎると形状が作りにくくなるため適度に分割するのが望ましいです。

 

3.顔の奥行きを作る

基本的にスカルプト移動ツールを使用して顔の起伏を整えます。頂点編集はエレメント移動ツールでもできるのですが、スカルプトツールはShiftキーを押したときにスムーズツールに切り替わるのが便利です。

  1. エッジ拡張で顔に厚みを持たせ、サブディビジョンをONにします。
  2. 目と口の円を押し出して凹ませ、エッジウェイトツールで輪郭を強調します(好みの問題)。
  3. スカルプト移動ツールを使用して顔の形状を整えます。角張った所はスムーズで滑らかにします。

これで顔の大まかな形が出来上がりました。顔のような複雑な形状は少ないポリゴン数で全体の形を整えて、後からメッシュを分割して細部を作り込むとよいと思います。

 

4. 完成

メッシュを細かくしたり、イメージの形になるまで頂点を編集してキャラクターの顔を作り上げます。

 

まつげは目の周辺のポリゴンをコピーして形を整えて厚みを付けて作りました。髪はプラグインのPolyStrips From Curvesを使って大まかな形状を配置したものを、細かく調節して形にしました (プラグインを使ってますが、一発で欲しい形状にはならないため手動で調節する必要があります)。

バナナの房のような髪は頭のポリゴンをコピーしたり手動で地道に作るのが定番ですが、modo13.1以降であればCurve Sweepを使うとPolyStrips From Curvesに近いことが出来るので便利かもしれません。

 

ざっくりとした紹介ですが、モデリングの参考になったら嬉しいです。

Tips

modoのプロシージャル頂点マップ

Foundryのフォーラムで面白いスレッドを見かけたので紹介します。

「Vertexmaps In The Mix」はmodo 14で追加されたプロシージャル頂点マップ活用法を共有しようというスレッドで、アニメーションからレンダリングまで幅広い活用方法が紹介されてます。
https://community.foundry.com/discuss/topic/151806/vertexmaps-in-the-mix?mode=Post&postID=1196476#1196476

スレッドでは様々なサンプルファイルが公開されてます。ファイルが公開されてないものから面白そうな物をまねしてみました。サンプルファイルを公開しておくので参考にどうぞ。

 

徐々に消えるウェイト

現状はウェイトマップを徐々に消えるような機能がありません。そこでパーティクルを使用して、メッシュとパーティクルが離れるにつれてウェイトが消えるようにするハック技です。

サンプルファイル

パーティクルの距離とウェイトの強さはテクスチャリプリケーターを使用しています。Constantはレイヤーを反転、または値を-100%に設定しないとウェイトが意図したように反映されないようです。理由は不明。

14.0ではウェイトをブラーする機能が搭載されてないため、全体的にウェイトが荒い印象になってしまいます。現在はTracerXにウェイトマップをブラーする機能があります。

 

メッシュのパートによるアニメーション

メッシュのパート(連結されたメッシュ)単位でウェイトを設定してアニメーションする方法です。

サンプルファイル

Falloff Operatorのポイントパートを使用して、Boxごとに0~100%のウェイトを適用します。ウェイト位置のアニメーションはmodo 13.2で追加されたグラディエントノードを使用して、Falloff OperatorのグラデーションをGradient Offsetを使用してアニメーションしてます。

 

プッシュデフォーマを使ったバージョン。上の内容と同じです。

サンプルファイル

Falloff Operatorが思いのほか便利だと気がつきました。最初のサンプルではトランスフォームデフォーマを使用しましたが、モーフマップを使用しておなじような表現を作ることもできます。

Falloff Operatorはジオメトリ情報を元にウェイト値を生成できるので、「ポリゴン面積」「ポリゴン平面率」などを使用した標準機能では作れない質感を作れる気がします。

 

 

以下は自分でテストしたものです。

 

広がるウェイト

選択した頂点からウェイトが広がる基本的な使用法です。

サンプルファイル

ソフトボディには「ゴールマップ」という、シミュレーションをおこなわない部分をウェイトで指定する機能があるのですが、残念ながらウェイトのアニメーションには対応してないようです。


クロスシミュレーションする範囲が広がったり、逆にクロスシミュレーションからシミュレーション前の形状に変化させるアニメーションを作りたいときもあるので、将来的にウェイトのアニメーションに対応してくれると嬉しい。

 

波紋

パーティクルでメッシュを変形する使用方法です。基本的には以前紹介したカーブフォールオフでメッシュ変形する方法と同じです。

サンプルファイル

「徐々に消えるウェイト」のようにテクスチャリプリケーターを使用しても同じことができますが、変形する時間を制御するのは、カーブを使用した方が扱いやすいと思います。

 

足跡

雪に足跡が残るような表現です。メッシュが細かいので重い。

サンプルファイル

足跡用のメッシュをアニメーションさせて、Select By Volume を使って足跡メッシュ内に含まれるポリゴンにウェイトを設定してます。

 

エッジウェイトのアニメーション

何に使えばいいのかわからないけど、とりあえずアニメーションしてみた。

サンプルファイル

 

ウェイトマップはデフォーマの変形以外にも、ウェイトマップテクスチャと組み合わせてレンダリングに使用できるのも便利です。UV展開しなくても頂点ペイント感覚でモデルに質感設定することができます。

ウェイトのブラーのようにまだ足りない機能もありますが、プロシージャルでウェイトを設定できるのはアニメーションで大いに役立ちそうです。

 

参考

CG News

スミソニアンオープンアクセスを開始

280万の2D/3DデータをCreative Commons Zeroとしてパブリックドメインにリリースしました。3Dデータの数は2,200以上で、スミソニアンのデジタル化プログラムオフィスによって作成されてるとのことです。
https://3d.si.edu/
https://www.si.edu/openaccess/updates/21st-century-diffusion

本日、スミソニアンオープンアクセスを開始し、280万の2Dおよび3D画像と、173年にわたるスタッフが作成したデータをCreative Commons Zeroとしてパブリックドメインにリリースしました。スミソニアンオープンアクセスの目標は、世界中の人々が国のコレクションをあらゆる目的で利用できるようにすることです。発見を行い、新しい知識を構築し、新しいアートや創造的なプロジェクトを開発して、世界を少し違った視点で見られるようにすることです。

Creative Commons Zero

https://creativecommons.jp/sciencecommons/aboutcc0/

CC0 とは、科学者や教育関係者、アーティスト、その他の著作権保護コンテンツの作者・所有者が、著作権による利益を放棄し、作品を完全にパブリック・ドメインに置くことを可能にするものです。CC0によって、他の人たちは、著作権による制限を受けないで、自由に、作品に機能を追加し、拡張し、再利用することができるようになります。

3Dモデルは解像度に応じてフル、中、低の3種類からダウンロードできるようです。高解像度のテクスチャも含まれていました。
https://3d.si.edu/object/3d/orbiter-space-shuttle-ov-103-discovery:d8c636ce-4ebc-11ea-b77f-2e728ce88125

Tips

modoのスタティックメッシュ

modoのスタティックメッシュについて書いてみます。

 

スタティックメッシュとは

スタティックメッシュはメッシュアイテムの種類の1つです。通常のメッシュアイテムと異なりコンポーネント(ポイント/エッジ/ポリゴン)を編集することができない代わりに、CADデータや樹木のような高密度のメッシュデータを開いたときのメモリ使用量を低く抑えることができます。レンダリング可能ですが、デフォーマ等で変形することはできなくなります。

スタティックメッシュは、ZBrushから出力した高密度なメッシュをmodoでリトポする場合に最適です。

 

メモリ使用量を比較

ZBrushのサンプルファイルでおなじみ、サムライスピリッツのアースクェイクをmodoに読み込んでメモリの使用量を比較してみます。ポリゴン数は 6,303,616(三角ポリ)です。

 

modo起動直後

modoを起動した直後のメモリ使用量は「0.45GB」くらい。

 

メッシュ

通常のメッシュとして読み込んだ場合のメモリ使用量は「6.7GB」くらい。

 

スタティックメッシュ

スタティックメッシュとして読み込んだ場合のメモリ使用量は「1.58GB」くらいで、およそ1/4程度になります。

 

スタティックメッシュの使用方法

スタティックメッシュを使用するには、アイテムリスト等で右クリックメニューから「タイプの変更 / Static Mesh」を実行します。

または、objファイル読み込みオプションで「スタティックメッシュとして読み込み」をONにします。

メッシュとスタティックメッシュは相互に変換することができますが、通常のメッシュをスタティックメッシュに変換すると全て3角ポリゴンになるので注意が必要です。

 

リトポ用の高密度なメッシュをmodoに読み込むと、メモリが足りなくなったりビューポートが遅く感じることがあります。そんな時はスタティックメッシュを使用するのがおすすめです。

マニュアルにはレンダリングにもおすすめと書かれてますが、レンダリング時のみ高密度メッシュを使用したいという用途ではレンダープロキシが向いてます。
モデリングが完全にFixしてる場合はディファードメッシュという機能もあるので、用途に応じて使い分けるといいと思います。

 

参考

参考資料

GUILTY GEAR Xrd開発スタッフが送るスキニングのためのモデリング TIPS

2019年4月に行われてたセミナー「GUILTY GEAR Xrd開発スタッフが送るスキニングのためのモデリング TIPS」のスライドが公開されてます。 ローポリ前提ということで書かれてますが、ウェイトの影響と制御いう意味では、ローポリ以外にも活用できる話だと思います。
https://www.slideshare.net/ASW_Yokohama/guilty-gear-xrd-tips-208013275

続きを読む