【モデリングtips】細分化はできるだけ使わない方がいい話

偉そうに話しますけど、自分のポリは凄いぜって話じゃないです。

私はあんまりモデリングを始めたばかりの人に細分化を使って欲しくないんです。
ぱっと見は、簡単に滑らかになっていいと思うんだけど、
あれってポリ割の仕方というかトポロジーを分かってて使うものというか、
とりあえず滑らかにするために使うんじゃないというか。

こうなってこうって分からないと後々困ると思うんです。
あと無駄に頂点や辺が増える。
頂点と辺が無駄な部分に増えれば増えるだけ、制御しなきゃいけないポイントが増えてくる。
ウエイトの塗る点、頂点モーフで動かさなきゃいけない点。
そのあたり、ローポリだと動かさなきゃいけない頂点や塗らなきゃいけない頂点が少なくて済みます。

あと三角ポリを多用してるモデルに細分化を使うと、特に顔とかはアバーッ!ってなる。
それをわからないままに細分化(blenderだとsubdivision、メタセコだとカトマル)を使うと、
顔のトポロジーがえらいことになります。
こう。
nnn3676.jpgnnn3677.jpg

この三角ポリゴンを、ちゃんと四角に戻してから細分化をかけると、こう。
お分かりいただけただろうか…。
nnn3678.jpgnnn3679.jpg

辺がちゃんと流れていると、辺選択で一列ぐるーっと選択できますし、
blenderのプロポーショナル編集、メタセコだとマグネットツールなどでの編集がスムーズな流れになります。
ウエイトでグラデをかける時にも滑らか。

細分化を使うと意図していない頂点辺面が増えるんですよ。
ただ「できたら使わないほうがいい」であって、「絶対に初心者は使うな」ではないです。
使わない方が確実にスキルアップはできると思う。
モデリング慣れする。

もちろん私も最初は使いました!!
楽だなーと思ったけど、楽じゃなかった。
なんか楽する所を間違えてた感覚。

顔面のトポロジーは、ぐぐるとたくさん出てきます。
顔面 トポロジー - Google 検索
目の周りの円形と、口の周りの円形、あと頬の流れを意識するといいかも。

あと、どうしても三角ポリゴンができる!四角にならない!っていう気持ちはめちゃくちゃ分かる。
私も三角を四角にするの苦手だし、どうしても三角できるじゃん…?
という方は下記のようなサイトを参考してみてください。
3DCG初心者のためのポリゴンモデリング講座③【ポリゴンの流れを作るテクニック】 | 俺CG屋
Blender修行(12) 三角ポリゴンの消し方 - 妹でもわかるUnrealEngine4
三角ポリゴンを作らないメッシュ構造 | Blender Snippet

はー、こうやって直すんだなーと思った。

Pmx書き出しするともちろん三角ポリゴンに変換されるので、最後は三角です。
予め三角に割れる方向を決めておくために、出力前に三角ポリゴンに変換するのはあり。
でも編集中はできるだけ四角のままにしておいた方がいいぞい!
blenderならalt+Jで三角から四角に戻せるけど、同じ四角に戻るとは限らない。
というか今やってみたら戻らなかった。なんでや。

System.Windows.Formsの覚書【PmxEプラグイン】

前にどう書いたか見ても思い出せなくてしぬ。

合ってるのか合ってないのかすらわからない手探りのやり方をメモしておかないと覚えてない。

・基本的な処理はmain.csに記述してある。
 直接呼び出して処理させるだけならここで完結する。

・Fom1.csでフォームのOKを押した時に、main.csの処理を実行して欲しい。
 プラグインのForm1を開いたまま別のボーンを選択してまた処理させたいので、
 ポチポチできるようにしたい。

・main.csは動くことをPmxEで確認済み。

・Form1.csにOKボタンを設置、押したらOKを出すように設定。
this.button1.DialogResult = DialogResult.OK;

【Form1.csの記述】
前に作ったプラグインを見るに、
・namespaceは全て共通にしておかなければならない。
・自動で作成されるnamespaceの下は「 public partial class Form1 : Form 」だけど、
partial class Form1: System.Windows.Forms.Form
{
public Form1(CSScriptClass 名前)
}
になっている。
なんかここで、名前を分割しておくとなんかうまくいく。
CSScriptClassがmain.csで書いてあるpartial classの名前なので、
別に読み込んだりする時は多分ここを変えないといけないんだと思う。
(ここまで自分で勝手に判断していることで書いているので、参考にしない方がいいです)

main.csに
using (var m_form = new Form1(this))
{
if (m_form.ShowDialog() != DialogResult.OK) return;
{何かの処理}
}
と書くと、OK以外が返ってきた時に何が起こるかを記述できる。
たぶん。

あ!できた!すごい!!

つまり、ボタンからどのpartial classをやらせるかを記述する訳じゃなくて、
そもそも動いてるのがmain,csでその途中でformが開かれて、
ボタンでどういうものを発したかを受け取ってるのかな…。


困ってること。
・OKを返した時にはwindowを閉じないで欲しい。
→label1で冒頭を指定しておいて、最後にgoto label1;で返る。

・formが開いてる間に、Pmx編集画面がさわれない。
→「モーダルフォーム」と言うらしい。
 「モードレスフォーム」で開くといじれる。

usingを使うとフォームが閉じちゃうのはモーダルフォームのせい?みたい。
(参考:http://www.itlab51.com/?p=2446

怒られた。
nnn3661.jpg
うーん。form1はthis.Visible = false; って書いたんだけどなぁ。

何がダメなんだよぅ、とメソメソしていたが、よく見たら、
if (m_form.ShowDialog() != DialogResult.OK) return;
って書いてあった。
.ShowDialog() って。
モーダルは→.ShowDialog()
モードレスは→.Show()

でもDialogResultはhowDialog() でしか受け取れないっぽい。

わからん、無理。

【PMXE講座】UV展開とポリゴンの切れ目の関係

PmdとPmx(以下Pmx)の仕様のお話。

UV展開の仕様は各モデリングソフトによると思いますが、
blenderのUV展開は、エッジを選択して「ここUVの切れ目だよ!!!」と指定する方式です。
(エッジ選択→ctrl+E→Mark Seam)
データ上は「切れ目入れている」というのではなく、
「ここが切るラインだから」という印を付ける感じです。
実際のエッジどうしは離れていないため、周りのポリゴンから切り離されるようにUVのラインを付けても、
つながっている面の一括選択では、周りと一緒に繋がっているものとして選択されます。

これがPmxにエクスポートすると変わります。
エクスポートすると変わる仕様は、まあこれもソフトによるのですが、
代表的なのは
・四角ポリゴンが自動的に三角ポリゴンになる。
・マテリアル(材質)設定ごとにポリゴンが切り離される。
・UVの展開ラインが切り離される。
の3点だと思います。

四角ポリゴンは、3D業界でも「四角ポリゴン信者」と揶揄されたりもしますが、
実際モデリングにおいては、三角ポリゴンを多用するよりも、
できるだけ四角ポリゴンでモデリングした方が、色々とやりやすいです。
blenderで言うと、エッジの選択は三角になっている所で途切れますし、
ポリゴンのループカットも、三角でストップします。
一番四角がいい、と言われるのは、Subdiv(Subdivision=細分化)を使用した時の分割結果です。
(この辺は豆知識として、後は適当にググって下さい。)

ただし、Pmxは四角ポリゴンではなく三角ポリゴンなため、
エクスポーターが自動的に三角ポリゴンに変換してくれるのですが、
場合によって、表のポリゴンと裏のポリゴンの三角の割り方がクロスしてしまう場合があります。
例えば、コートの表面のポリゴンは[/]なのに、裏地は[\]に割れている場合です。
正面から見ると、裏面と表面で[×]という状態になっていると、
ボーンで動かした時に、折れ方が裏と表で異なり、裏地が表に飛び出してしまいます。
(コートは両面表示にする、という手もありますが、裏地に模様がある場合もある)
この場合は、予め、モデリングソフトの方で三角ポリゴンに変換しておいた方が後々楽です。
(エッジ編集ツールというプラグインがあるので、PmxEで編集することもできますが、
 何度もエクスポート→微修正を繰り返すなら、面倒なので三角ポリゴンにしてしまいます)

話が逸れました。

・UV展開ラインが切り離される。
という点です。
blender上でUV展開ラインを作っても、実際のポリゴンはくっついているので、
面選択もできますし、エッジ選択もできます。
しかしPmxにエクスポートすると
展開ラインで切り離される
 =展開ラインには、全く同じ座標に頂点が2つある(エッジも同じ位置で重なっている)
という状態です。
材質設定も同じで、材質を設定した面はそこでエッジが切り離されています。

つまり一枚の繋がった面の中で、
UV展開ラインをたくさん刻めば刻むほど、
材質分けをすればするほど頂点がその分増えます。


これはある意味便利で、UVを切っておきさえすれば、PmxEで接続面選択(ctrl+Xだっけ?)で、
そこの面だけ選択して編集することもできます。


そして気をつけなければいけないのが、近傍頂点の結合です。
ダブってる頂点があるだろうからくっつけちゃえーとか、
頭と首を切り離して作ってたからくっつけちゃえーとか、
とりあえず全部選択してくっつけちゃえーとかすると、
U V が 狂 い ま す 。

これは推測でしかないのですが、恐らくPmxの仕様として、
繋がっているポリゴンのUVを切ることはできないのだと思います。
UVが切れている=ポリゴンが離れている
ポリゴンをくっつける=UVもくっつけるね!
ということだと思います。
頂点の結合をしたらダメ、という訳ではなく、材質やUVが分かれているところは気をつけましょう、ということです。


じゃあ首と頭の境目はどうやったらいいの?というところですが、
A:予めモデリングツール側でくっつけておく
B:PmxEで境目の重なっている2頂点を選択して法線の平均化を行う
の2種類あります。

UV展開や材質設定でエクスポート時に面が離れるのと、
予めモデリングツール側で面を離しておくのはどう違うのか、というと、
主に「法線の向き」が違います。
法線はその面が光を反射する向きの事だと思っておいてください。
(これ以上はググって下さい)
blender上で面が繋がっていると、法線はそれに合わせて滑らかに変化します。
(画像左2つ)
130312_01.jpg
つまりこういうカキっと曲がっているものでも、光のあたり方(影の出来方)を滑らかにすることで、
ぬるっとした角に"見せかけてくれる"訳です。
ローポリモデルでもそんなにカクカクして見えないのはこのお陰です。
画像右は、上の面と側面を予め切り離しておいたものです。
上面と側面はパキッと切り離されていますが、側面は繋がっているのでカクカクしていません。

メタセコは確か、角度何度以下だったら法線をなめらかにしない(エクスポート時も)設定があったと思いますが、
blenderの場合(私の使っているエクスポーターの場合)は自力で切り離す必要があります。

頭と首の頂点座標は同じだけど、ポリゴン的には切り離して作っている場合は、
おそらくこれと同じで、法線の向きが揃っていない=滑らかになっていないので、
切り離しているラインでパキッとした線が出ます。
なので、Aの予めくっつけておく、は簡単に言うと法線がなめらかな感じになってくれるので良い感じ。

Bは、PmxEには法線を編集する方法([動]ボタンで出てくるタブの中に法線がある)ので、
これで滑らかに見えるように法線を揃えればいいわけです。
ただし1頂点ずつしか編集できないのでめんどくさいです。
選択面の法線の平均化は、選択している面の法線を平均に揃えるので、
切り離している所を全部選択すると、やるとわかりますが、そうじゃないの!!!ってなります。


逆に考えると、ロボや機械、家具、無機物、などは、予め切り離しておくことで、パキッとさせることができます。
立体機動装置のブレードは最後にやろうと思って忘れました。

【PMDE講座】IK影響下の子にボーンをつけたい時

標準ボーン構造でIK影響下になっているのは、両足、両膝、両足首ボーンです。
人によって髪の毛をIK制御していたり、チェーンなどをIK制御していたりする場合もありますが、
よく当たる壁が、ブーツの紐です。

そして多分これはPMXでの場合で、PMDだとまた仕様が違ったと思います。
PMDとPMXはIK影響下の親子関係、回転連動の仕方が違うので、注意してください。
以下すべてPMXの話です。

まずIKとIK影響下、MMDにおけるこれらの扱いの話をします。


続きを読む

 【MMD講座?】ののの式フォルダ整理法

MMDのフォルダ内がカオスだよ!という人が多いので、
私のフォルダ整理法を書いておきます。

ただし、MMDは作りかけのPMMなどは、フォルダを移動すると、
モデルがないよ?とかステージがないよ?エフェクトないよ?アクセないよ?
と聞いてくるので、一番最初にやっておくか、
過去のPMMは諦めて整理をし始めてください。

DLして適当にぶっこまないこと。
そうすると後で後悔します。

続きを読む

プロフィール

のののP

Author:のののP
絵描いたり動画作ったり歌ったり3Dモデリングしたりゲームしたり。

■ニコ動
mylist/2325248
■youtube
nononoP00
■Pixiv
id=141058
■連絡
opm_niconico○yahoo.co.jp
○→@

MMD配布系まとめ
PMDE講座まとめ
blender tips

配布物以外の無断使用禁止。

商用利用、商業依頼については上記連絡先までメール下さい。

カテゴリー
アーカイブ
ブログ内検索
リンク
RSSフィード