MMD用 モーフ用xファイルの書きだし
■
MMDの表情モーフのためにxファイルを書き出す際、「法線」のチェックをはずすというのがよく言われるけど、
なんだかモヤモヤしてたんで、ちょっと調べてみた。
(今まであまりモーフで苦労したことなかったんで)
-- ベース形状 --

A. スムージング値:30 [法線書き出し:なし][UV書き出し:あり](頂点数:87 面頂点数:336(112))
B. スムージング値:30 [法線書き出し:あり][UV書き出し:あり](頂点数:120 面頂点数:336(112))
C. スムージング値:180 [法線書き出し:なし][UV書き出し:あり](頂点数:87 面頂点数:336(112))
D. スムージング値:180 [法線書き出し:あり][UV書き出し:あり](頂点数:87 面頂点数:336(112))
*A、Bはスムージングのかからない部分がある(画像のもの)。C、Dはすべてにスムージングかかる
*ずべてUVの一部をわざと切り離している
--モーフターゲット--

0. スムージング値:30 法線なし UVなし(頂点数:58 面頂点数:336(112))
1. スムージング値:30 法線なし UVあり(頂点数:87 面頂点数:336(112))
2. スムージング値:30 法線あり UVなし(頂点数:109 面頂点数:336(112))
3. スムージング値:30 法線あり UVあり (頂点数:133 面頂点数:336(112))
4. スムージング値:180 法線:なし UV:なし(頂点数:58 面頂点数:336(112))
5. スムージング値:180 法線:なし UV:あり(頂点数:87 面頂点数:336(112))
6. スムージング値:180 法線:あり UV:なし(頂点数:58 面頂点数:336(112))
7. スムージング値:180 法線:あり UV:あり(頂点数:87 面頂点数:336(112))
8. スムージング値:180 法線:なし UV:なし UV破壊してみた(頂点数:58 面頂点数:336(112))
9. スムージング値:180 法線:なし UV:あり UV破壊してみた(頂点数:94 面頂点数:336(112))
10. スムージング値:180 法線:あり UV:なし UV破壊してみた(頂点数:58 面頂点数:336(112))
11. スムージング値:180 法線:あり UV:あり UV破壊してみた(頂点数:94 面頂点数:336(112))
--モーフ結果--
ベース形状A、B、C、Dにモーフターゲット1~12を当ててモーフさせてみた(PMDEditer)。
□
ベース形状 A
(スムージング値:30 [法線書き出し:なし][UV書き出し:あり])
0× 1● 2× 3● 4× 5● 5× 7● 8× 9× 10× 11×
□
ベース形状 B
(スムージング値:30 [法線書き出し:あり][UV書き出し:あり]
0× 1× 2× 3× 4× 5× 6× 6× 8× 9× 10× 11×
□
ベース形状 C
(スムージング値:180 [法線書き出し:なし][UV書き出し:あり])
0× 1● 2× 3● 4× 5● 5× 7● 8× 9× 10× 11×
□
ベース形状 D
(スムージング値:180 [法線書き出し:あり][UV書き出し:あり])
0× 1● 2× 3● 4× 5● 5× 7● 8× 9× 10× 11×
--モーフ結果から--
□
ベースの書きだし
・スムージング値:180の方が安全
・法線:関係ない(法線なしだとUVの切れ目のスムージングがかからないので法線ありにした方がよさそう。)
□
モーフターゲットの書きだし
・スムージング値:関係ない
・法線:なしの方が安全?
・UV:ベースにUVあるなら必須(破壊しない)
##
ベース形状の書き出しの時点でアウトだと全滅。
ベース形状を[スムージング180+法線あり+UVあり]、
モーフターゲットを[法線なし、UVあり]で書き出せば大丈夫な気がする。
UVを破壊したモーフターゲットが全滅って事が興味深い。書き出さなくてもUVの状態で結果が変わるのね。
モーフが壊れるってのはいつの間にかUVを壊してるものを書き出してたってこともありそう。
*形状によっては結果が異なる可能性あります。
何か間違ってたら突っ込みお願いします。
●テストに使ったデータ●
*4/3:
keynoteは関係なかったです。
記事タイトルとか修正しました。
MMDの表情モーフのためにxファイルを書き出す際、「法線」のチェックをはずすというのがよく言われるけど、
なんだかモヤモヤしてたんで、ちょっと調べてみた。
(今まであまりモーフで苦労したことなかったんで)
-- ベース形状 --

A. スムージング値:30 [法線書き出し:なし][UV書き出し:あり](頂点数:87 面頂点数:336(112))
B. スムージング値:30 [法線書き出し:あり][UV書き出し:あり](頂点数:120 面頂点数:336(112))
C. スムージング値:180 [法線書き出し:なし][UV書き出し:あり](頂点数:87 面頂点数:336(112))
D. スムージング値:180 [法線書き出し:あり][UV書き出し:あり](頂点数:87 面頂点数:336(112))
*A、Bはスムージングのかからない部分がある(画像のもの)。C、Dはすべてにスムージングかかる
*ずべてUVの一部をわざと切り離している
--モーフターゲット--

0. スムージング値:30 法線なし UVなし(頂点数:58 面頂点数:336(112))
1. スムージング値:30 法線なし UVあり(頂点数:87 面頂点数:336(112))
2. スムージング値:30 法線あり UVなし(頂点数:109 面頂点数:336(112))
3. スムージング値:30 法線あり UVあり (頂点数:133 面頂点数:336(112))
4. スムージング値:180 法線:なし UV:なし(頂点数:58 面頂点数:336(112))
5. スムージング値:180 法線:なし UV:あり(頂点数:87 面頂点数:336(112))
6. スムージング値:180 法線:あり UV:なし(頂点数:58 面頂点数:336(112))
7. スムージング値:180 法線:あり UV:あり(頂点数:87 面頂点数:336(112))
8. スムージング値:180 法線:なし UV:なし UV破壊してみた(頂点数:58 面頂点数:336(112))
9. スムージング値:180 法線:なし UV:あり UV破壊してみた(頂点数:94 面頂点数:336(112))
10. スムージング値:180 法線:あり UV:なし UV破壊してみた(頂点数:58 面頂点数:336(112))
11. スムージング値:180 法線:あり UV:あり UV破壊してみた(頂点数:94 面頂点数:336(112))
--モーフ結果--
ベース形状A、B、C、Dにモーフターゲット1~12を当ててモーフさせてみた(PMDEditer)。
□
ベース形状 A
(スムージング値:30 [法線書き出し:なし][UV書き出し:あり])
0× 1● 2× 3● 4× 5● 5× 7● 8× 9× 10× 11×
□
ベース形状 B
(スムージング値:30 [法線書き出し:あり][UV書き出し:あり]
0× 1× 2× 3× 4× 5× 6× 6× 8× 9× 10× 11×
□
ベース形状 C
(スムージング値:180 [法線書き出し:なし][UV書き出し:あり])
0× 1● 2× 3● 4× 5● 5× 7● 8× 9× 10× 11×
□
ベース形状 D
(スムージング値:180 [法線書き出し:あり][UV書き出し:あり])
0× 1● 2× 3● 4× 5● 5× 7● 8× 9× 10× 11×
--モーフ結果から--
□
ベースの書きだし
・スムージング値:180の方が安全
・法線:関係ない(法線なしだとUVの切れ目のスムージングがかからないので法線ありにした方がよさそう。)
□
モーフターゲットの書きだし
・スムージング値:関係ない
・法線:なしの方が安全?
・UV:ベースにUVあるなら必須(破壊しない)
##
ベース形状の書き出しの時点でアウトだと全滅。
ベース形状を[スムージング180+法線あり+UVあり]、
モーフターゲットを[法線なし、UVあり]で書き出せば大丈夫な気がする。
UVを破壊したモーフターゲットが全滅って事が興味深い。書き出さなくてもUVの状態で結果が変わるのね。
モーフが壊れるってのはいつの間にかUVを壊してるものを書き出してたってこともありそう。
*形状によっては結果が異なる可能性あります。
何か間違ってたら突っ込みお願いします。
●テストに使ったデータ●
*4/3:
keynoteは関係なかったです。
記事タイトルとか修正しました。
コメントの投稿
乙・・・
すげぇ・・・
すげぇ・・・
字面の印象よりはたいして大変な作業ではありませんが、参考になるのかならないのかよくわからない実験でした。
同じハンドルの方がいらっしゃるようなので、ちょっと変更。
#3DCG IRCに出没してる nyaです。また暇なときにでもきていただけるとうれしいです。
ベースの UVと MTの UVが異なる(シームの場所が違う)とおかしくなるので、ベースUV変更後はMTのUVもチマチマ変更してます。
UVの境で頂点の並びが変わるのかな。
#3DCG IRCに出没してる nyaです。また暇なときにでもきていただけるとうれしいです。
ベースの UVと MTの UVが異なる(シームの場所が違う)とおかしくなるので、ベースUV変更後はMTのUVもチマチマ変更してます。
UVの境で頂点の並びが変わるのかな。
最近入ってませんがちょっと落ち着いたらIRCにまた潜入しようと思いマス。
MT作ってからもやっぱUVいじっちゃったりしますよね。
ベースUVを変更した時は自分は
ベースを複製して、そこからMTへプラグインでモーフ変形させるとかしてます(UVはモーフ変形対象外なので)。
MT作ってからもやっぱUVいじっちゃったりしますよね。
ベースUVを変更した時は自分は
ベースを複製して、そこからMTへプラグインでモーフ変形させるとかしてます(UVはモーフ変形対象外なので)。
おひさしぶりでございます。
けいおん!!2期始まっちゃったんで、動画制作復活、またPMDデータ使わせて頂きました。
いつもお世話になってます、ありがとうございます。
お暇なときにでもご覧になっていただければ幸いです。
ttp://www.nicovideo.jp/watch/sm10500410
けいおん!!2期始まっちゃったんで、動画制作復活、またPMDデータ使わせて頂きました。
いつもお世話になってます、ありがとうございます。
お暇なときにでもご覧になっていただければ幸いです。
ttp://www.nicovideo.jp/watch/sm10500410
わんにゃぶさん、お久しぶりです。
動画拝見しましたよ~。いやすごいですね。相変わらずの作りこみで驚きました。ありがとうございます。MMD久々だと思うんですがさらに丁寧な作りになっている印象をうけました。
うちの地方は2期は先日放送がスタートしたばかりでまだ見れていないんですが先にわんにゃぶさんの作品を見てしまいましたよ。
動画拝見しましたよ~。いやすごいですね。相変わらずの作りこみで驚きました。ありがとうございます。MMD久々だと思うんですがさらに丁寧な作りになっている印象をうけました。
うちの地方は2期は先日放送がスタートしたばかりでまだ見れていないんですが先にわんにゃぶさんの作品を見てしまいましたよ。
!!
そうだった、地方によってはまだ放送してないところとかあったんでしたね・・・
お忙しい中動画見ていただいてありがとうございます。
本当はメイドさん服でも着せてあげたかったんですが(もちろんあのメイドさん)、時間的余裕と技術的余裕がなくて・・・
とにかく動画完成してひとまずほっとしています。
お忙しい中動画見ていただいてありがとうございます。
本当はメイドさん服でも着せてあげたかったんですが(もちろんあのメイドさん)、時間的余裕と技術的余裕がなくて・・・
とにかく動画完成してひとまずほっとしています。
MMD殿堂入りおめでとうございます。再生数の伸びがすごいですね。見るたびに発見があるぐらい細かく作られているのがホント驚きです。
メイドバージョンも期待してます。
時間があれば自分の方でもそういうの用意したいんですが・・。
(そもそもけいおんモデルの修正をすると何度も言ってそのまま放置で状態・・。)
メイドバージョンも期待してます。
時間があれば自分の方でもそういうの用意したいんですが・・。
(そもそもけいおんモデルの修正をすると何度も言ってそのまま放置で状態・・。)
こんばんは、かこみきさん。
これはKeynoteと言うより、MetasequoiaとDirectX(OpenGL)の仕様の違いが原因の一つです。Metasequoiaで表示される頂点数とポリゴン数は、あくまでユーザが編集出来るデータの数で、表示に使用される頂点数、ポリゴン数とは異なります。
ちょっとややこしい話になりますので、大まかに説明させて頂きますと、Metasequoiaでは四角ポリゴンが扱えますが、画面に表示される場合には内部的に三角ポリゴン二つに分割されています。(これはご存じだと思いますが)
同じ様に、頂点も分割されているのですがMetasequoiaでは表示上必要な頂点数ではなく、編集可能データ数を表示するので分かりにくいのだと思います。
最近MMDを触り始めたばかりでPMDファイルは作成したことが無いので断言出来ませんが、法線を出力しない、もしくはスムージング上エッジを効かせない、UVの編集は隣接ポリゴンと共有した頂点を同時に動かす(分割しない)と言う事で対応出来るかと思います。
(頂点の法線、UV座標が異なると、Metaseuoia上で隣接ポリゴンと頂点共有していても頂点を分割が必要になるのはDirectX、OpenGLの仕様です)
この事から申し上げると、たとえばMetasequoiaの基本図形で立方体を作成した場合、表示上は頂点数8、ポリゴン数6ですが、Metasequoiaでも内部的には頂点数24、ポリゴン数は12になります。
これはKeynoteと言うより、MetasequoiaとDirectX(OpenGL)の仕様の違いが原因の一つです。Metasequoiaで表示される頂点数とポリゴン数は、あくまでユーザが編集出来るデータの数で、表示に使用される頂点数、ポリゴン数とは異なります。
ちょっとややこしい話になりますので、大まかに説明させて頂きますと、Metasequoiaでは四角ポリゴンが扱えますが、画面に表示される場合には内部的に三角ポリゴン二つに分割されています。(これはご存じだと思いますが)
同じ様に、頂点も分割されているのですがMetasequoiaでは表示上必要な頂点数ではなく、編集可能データ数を表示するので分かりにくいのだと思います。
最近MMDを触り始めたばかりでPMDファイルは作成したことが無いので断言出来ませんが、法線を出力しない、もしくはスムージング上エッジを効かせない、UVの編集は隣接ポリゴンと共有した頂点を同時に動かす(分割しない)と言う事で対応出来るかと思います。
(頂点の法線、UV座標が異なると、Metaseuoia上で隣接ポリゴンと頂点共有していても頂点を分割が必要になるのはDirectX、OpenGLの仕様です)
この事から申し上げると、たとえばMetasequoiaの基本図形で立方体を作成した場合、表示上は頂点数8、ポリゴン数6ですが、Metasequoiaでも内部的には頂点数24、ポリゴン数は12になります。
お久しぶりです。毎日Keynoteで遊ばせていただいてます。
>法線を出力しない、もしくはスムージング上エッジを効かせない、UVの編集は隣接ポリゴンと共有した頂点を同時に動かす(分割しない)と言う事で対応出来るかと思います。
なるほど、参考になります。ありがとうございます。
頂点数はXファイル出力すると異様に増えるのが謎だったんですよね・・。
内部的なこともわかるとモーフターゲット制作もびくびくしないで済むような気もします。
しかしmqdlさんもMMDを触り始めたとなると、もう、いろいろ期待しちゃいますよ。
Keynoteから一発でPMD形式で書き出しとか出来るとものすごく幸せになれそうですよ(モーフターゲットの書き出しが現状大変で・・)。
・・まぁ、そもそもmqdlさんにとってそんな機能作る魅力や意味があるのかは別ですが。
>法線を出力しない、もしくはスムージング上エッジを効かせない、UVの編集は隣接ポリゴンと共有した頂点を同時に動かす(分割しない)と言う事で対応出来るかと思います。
なるほど、参考になります。ありがとうございます。
頂点数はXファイル出力すると異様に増えるのが謎だったんですよね・・。
内部的なこともわかるとモーフターゲット制作もびくびくしないで済むような気もします。
しかしmqdlさんもMMDを触り始めたとなると、もう、いろいろ期待しちゃいますよ。
Keynoteから一発でPMD形式で書き出しとか出来るとものすごく幸せになれそうですよ(モーフターゲットの書き出しが現状大変で・・)。
・・まぁ、そもそもmqdlさんにとってそんな機能作る魅力や意味があるのかは別ですが。