見出し画像

人型モデルの超最小ポリ割考えてみた!【ローポリ】


前置き

スカルプトでハイポリメッシュの人形を作りました。フォトリアルな女子です。

では次にそれをアンリアルエンジンに持っていきたいのとゲーム用にしたいのとでリグを入れたりリトポしようと思いました。

じゃあそれをどのようにするのか?
ハイアマチュアは何を基準に頑張って作ればいいのか?

というもろもろのことを手探りで考えてきました。で、その一つの結果が以下です。

前提

前提条件としまして前々から一度試したかった以下のサイトの考え方でやります。

ぼくは初めてアニメーションできるモデルを作りたいので勉強しているのですが、このサイト様の内容がなるほどと思い真似しようと思います。

なぜポリゴンを割るのでしょうか。それは極論すれば動かすためです。

1000万ポリゴンの人体モデルを動かそうとすると、全ての頂点の制御を考えなくてはなりません。これは(できますが)現実的にはなかなか困難です。腕を曲げようとしたときに、関係ない部分が変形したりといったことがないように設定しないといけません。(そしてたいていうまくいきません)

制御する点は少なければ少ないほど良いのです。そしてその制御点は機械では判断できません。どこが関節でどこがそうではないか。その判断は自動ではできないから我々人間がやる必要があるのです。

(中略)

動かすためのトポロジーなので、最初にリグ。リグに合わせて割る。これが基本です。

リグの構成が変われば必要とされるトポロジーも変わります。あとでリグが変更になったらリトポしなおす必要があります。

ポリゴンフローに関しては3Dモデラー各位が「筋肉の流れ」が、とか「稜線に沿って」とかいろいろと持論を展開していますが、私の意見としてはそんなことは(ハイポリ環境では)気にしなくていいです。形は細分化した後に好きに直せばいいのです。

「リグの仕様に合わせる」これがすべてです。

(中略)

ここまでのモデルは動作に最小限の分割線しか入っていないため、形状を考慮していません。形状を作りこむには分割が足りませんので、シンプルに細分化モディファイアを使用するか、多重解像度モディファイアを使うか、とにかく、細分化を行って分割数を増やしたのちに、細部の作りこみを行うことになります。

さて、もともとのモデルがちゃんとリグで動くようになっているということは、モデルの各頂点へのリグの影響度がちゃんと設定されているということです。つまり、ウェイト設定が完了しています。

これを細分化によって分割して増えた中間の分割線には勝手にウェイトが付きます。増えた中間頂点はリグでの変形動作に影響のないポリゴン分割線です。動作については何も考えなくてよいのです。

https://www.irid192.com/1-ba9d7e37789c4ecd99e7124f26cc54e8!1-b29e7011-6d4c-480e-8819-f86ca87b8013.html

趣味系フォトリアルモデリング界隈(ぼくが知ってる範囲内)での通常の流れですと、ローメッシュのモデルをスカルプトしつつメッシュが足りなくなればオートで割るかモディファイアーで割ってスカルプトしてハイメッシュとして完成させます。そのあと、用途に沿ったリトポロジーをしてそれがアニメーション向けだと仮定すると、ノーマルマップで細部を表現するのでローポリを作り直してリグを入れます。その時の考え方の話です。

ハイポリ制作後にリトポするときさて困ったぞとなるわけです。いろいろな流派があって自分の用途にとってのベストプラクティスが分からないところがここでのポイントです。

仕様1. rigifyを使う。


ハイポリはすでに完成しているのでそれを生かすようにリグを使い、そのリグに合わせたメッシュを作り、そのローポリをハイポリにうまくかぶせてリトポできた!とすることにします。

いろいろ端折ってまずは結果をドン!

▽ ハイポリにリグフィーを設定してメタリグを制作。

初めてのことなのでメタリグは結構適当です。何度も修正する前提です。

▽ そのメタリグに対応した超ローポリを制作。

顔はまだ形状に沿わせていません。
動きを試しましたがまあまあかなと思います。成功と失敗の経験が足りていませんので判断が付きませんが素人目にはうまくいってるような気がします。膝とか肘とか肩とか足首、指とかの曲がり方がですね。


目玉である超ローポリを解説します。


ぼくはスカルプト歴が長いので四角メッシュにこだわっています。あと5頂点をなるべく少なくしたいです。スカルプトしてると意味の無いところにある5頂点は絶対に気になるので少ない方がいいです。6頂点はどういうアーティファクトが出るか知らないのでなるべく少ないか無い方がいいと思っています。最後に見えなくなるところに5,6頂点があるならそれは見えなくなるのであっても別に構わないです。

あと、アニメーションを勉強したいのでメッシュの数は極力少なくします。なおかつ、低スぺノートPC(ぼくの愛機)でもぬるぬる動かせることを目指します。

それが以下です。

  1. すべて四角メッシュ(三角メッシュ無し、多角形無し)

  2. 5頂点最小化済み

  3. 6頂点は見えにくいところのみにして最小化(※)

  4. rigifyのボーンに一致

  5. スカルプト大好き人間にとって必要な割りを確保済み(目鼻口顎耳胸臍股)

  6. ゲームモデルとしてアニメーションさせる前提の超最小メッシュ数

※ 後から問題があれば5頂点に切り替えます。

▽ 成果物:rigify無し。2回細分化あり。

▽ 細分化無し

このページの最大の情報

↑これがこのページの最大の情報です。細かく見ていきます。

まず、以下の画像では左のボックスマンを2回細分化してスカルプトでスムーズにすると右のよく見るような割になります。つまり、右を正規化すると左の四角になるということです。面白いですよね。
三角メッシュが無いからすぼむところが無くて全部四角メッシュだからです。

ボックスマンをなめらか~にするとよくあるタイプのヒューマノイドモデル形状になる

次の画像は一番左の超簡単な作りの板ポリに厚みを付けて細分化してスムーズをかけると、一番右のようなよくあるUV展開をしたものみたいになりました。こちらも面白い発見です。

超ローポリで最も効率のよさげな割を探していたので、これらを発展させるといろいろ試して最終的に次のようになりました。

正規化の理由は?

正規化している理由は見やすくするためです。考え方が分かりやすいと思います。作るのも押し出しとインサートなので真似しやすいです。メッシュを1枚1枚お手本画像と照らし合わせて作るよりも楽ちんです。

▽ 正規化したもの 前と横

足の親指になる部分は重なってしまっています

▽ 正規化したもの 横と後ろ

▽ 正規化したもの 斜めから

▽ 正規化したもの 2回細分化した見た目

▽ 正規化したもの 顔斜め

▽ 正規化したもの 顔斜め 2回細分化した見た目


詳細

▽ 正規化したもの 顔正面 UP


目鼻口の結合部分をずらすことで6頂点をさけて5頂点にできます。

▽ 正規化したもの 顔 横 UP

▽作り方 顔正面

作る手順を板ポリで簡潔にまとめると細分化して目と口をインサートしてループカット(4カット)して、鼻をインサートしてループカット(3カット)して鼻のあなをインサートしてループカット(1カット)して、おでことあごをまとめたら完成です。いらない列2行は削除します。鼻の穴はインサートする面に気を付けないと6頂点が生まれます。

▽作り方 顔横

こちらも同じく、分割して、まとめて、耳に当たる部分をインサートしてループカット(4回)して完成です。耳は4回カットじゃ少ないかもしれませんので後から足りなかったらもう1周ループカットします。計5回か。

▽ 正規化したもの 手と足

正規化したものは作るときの参考で、それの頂点を移動して指の形に整えて細分化するとちゃんと手や足の形にできます。
手はメッシュ削減のために1段減らしています。深い意味はありません。
足の指の関節を省きました。rigifyに足の関節が無いからなのと、はだしの用途が無いから見えなくなるところなので、むしろ指を分けなくてもいいかもしれません。

▽ 頂点の数

▽ 5頂点数 = 98個

▽ 6頂点数 =20個 指のまたなど見えにくいところだけにまとめました

6頂点は問題が発覚すれば5頂点に変更します。メッシュ数がわずかに増えますが。

▽ メッシュの考え

全部で1,052メッシュなので細分化すると4,208メッシュ、もう一回すると16,832メッシュ、もう一回すると67,328メッシュになります。

これは主にスカルプター目線で必要なメッシュを確保したいという思いがあるのでこのようになっていますが、アニメーションさせる時に多すぎるなら顔とか胸とか臍とか股とかをなくせます。これは試さないとわからないのでじゃまなら後から削ります。

正規化したものをかぶせる

ぼくはすでにハイポリがあるので正規化した超最小ローポリを自分のハイポリにかぶせます。
そのあと、ハイポリとローポリの差分をノーマルマップとして画像に転写して、シェーディングに組み込み、ローポリを完成させます。
ですが、これから人形モデルを新規でつくるのでしたらこの超ローポリを作ってマルチモディファイアーで細分化してスカルプトすると後が楽です。リトポ作業がいらなくなるからですね。

ここ以降はまだ手探りなので、どの様にするのが効率がいいのかまだわからないのでわかったら書きます。

メタリグからリグを生成してローポリとペアレント

完成したローポリとリグを連携させて完ぺきにします。


この記事が気に入ったらサポートをしてみませんか?