あにまさ式弱音ハクさんモデルに手を入れる前に、「どうやったら立体出力可能な形状モデルに作り変えれるんだ?」という疑問が読者諸兄の皆さんにはあると思います。
本日は「作り変え」における最低限知っておくべきロジックについて説明していきます。
まずは単純な箱型、いわゆるキューブと言う奴ですが、この形状はそのまま立体出力できます。
これについて不思議に思う人はあまりいないと思います。理由は誰が見てもシンプルな形状だからです。
しかし箱型では人形はおろかハクさんにすら見えません。グラフィグを作るにしてももうちょっと複雑です。
そこで、キューブに切り欠きを作ってみます。
切り欠きを作ると中身が見えてしまいます。
上の画像では両面描画で中が見えているようにしています。これからこの中を水で満たすためです。
左のキューブには水を入れる所がないですが、どこかに穴をあけてちょろちょろとゆっくり水を入れたと仮定して下さい。
すると当然こうなります。
切り欠きを作った方は、切り下記から上は水が漏れて水を入れられなくなります。
実は立体出力もこの原理が働いているのです。
3DCGが形を表現するためには「ポリゴン」という小さな面を組み合わせていることは恐らくご存知のことと思います。
このポリゴンは現実世界では厚みを持ちません。服や紙の場合、非常に薄いですが厚みを持っています。
ポリゴンで厚みを表現するためにはポリゴン同士を組み合わせて外部とは切り離された空間=「閉空間」を作ってやる必要があるのです。
よって先ほどの切り欠きモデルは、切り欠き部分にポリゴンを設定してやることで内部に水を蓄えられ、無事立体出力が可能になります。
しかし、似たような形状でも以下のモデルデータの場合はどうでしょうか?
これは実は立体出力可能です。
一件これは内部と外部がつながっているように見えますが、中の空間は外部に繋がっているものの中のキューブにより「厚み」が設定されています。
このように入れ子構造にすると中空にすることができます。このテクニックは立体出力において出来上がる物体の重さを軽くするために使われます。
但し折角入れ子構造にしても、外のキューブと仲のキューブの間をポリゴンでつないで蓋をしないと、やはり水がダダ漏れで立体出力できない形状になってしまいます。
・・・・・・・・・・
ここまでは立体出力向きに形状モデルを作る基礎的な説明だったのですが、実際のMMDで使われている形状データの場合だとどうでしょう。
以下のモデルデータはv1β公開時点の自作ミクの服とスカートの形状データです。
このように裏から見るとすっかすかになっていました。
何故こうしていたのかと言うと、MMDの機能によって「エッジ太さ」を1以上に設定していると自動的に裏側のポリゴンを発生させて上の様なスカスカな部分を隠してくれるからです。
しかしこの状態では服にもスカートにも厚みが存在しません。当然ながら立体出力不可能な形状と判定されてしまいます。
そこでRev1.0からは以下のようなモデルに変更されています。
このように裏側にもポリゴンが設定され、服やスカートに厚みを持たせています。
但し一意的に厚みを持たせただけでは立体出力する際のサイズによっては3Dプリンターの出力限界を超える薄さになったり出力後に壊れたりする場合があるので、
裏地のポリゴンは表面とは別のマテリアルを設定して、立体出力前にマテリアル単位でポリゴンを選択して縮尺をかけ厚みを変更できるようにしています。
上記はちょっと難しいTipsですが、このように厚みを持たせることで服などのパーツも立体出力可能になります。
次回は上記の要領でハクさんモデルを改造していきます。(^^)