Blender でぬいぐるみを作ってみた

Blender

Blenderは 3DCG を作成するためのソフトです.stl ファイルを出力することができるので,3Dプリンタ用のデータをモデリングすることもできます.今回は一風変わって,Blender でぬいぐるみを作ってみました.
なお.Blender は F3 キーでコマンドの検索ができるので,コマンドの位置やショートカットキーがわからなくなったら,これを押してください.

モデリング

まずはぬいぐるみにしたいものをモデリングします.今回はこちらのクジラのようなものを作りました.モデルはぬいぐるみにするので,基本的には風船のように1つの閉曲面である必要があります.

UV展開

モデルが出来上がったら,unwrap でUV展開を行います.最終的にUVマップを印刷して型紙を作ります.unwrap は言葉通り,モデルに巻きつけたラップを剥した時の結果に近いものを出すUVマップの計算方法です.立体裁断に近い方法です.ただし,歪みのない完璧な地球の地図が無いように,丸みのあるモデルのUVマップも完全に歪みの無いものはありません.型紙を組んだ時に求める形に近づけるには,いかに歪みの少ない型紙を作れるのかが問題になります.

歪みは UV Editor ウィンドウで,Display Streach (Area) をONにすると表示されます.黄色や赤いところが歪みが大きいところです.

Seam をつける

歪みを少なくするには適切な Seam をつけることが大切です.Seam は縫い目という意味ですが.Blender においてはUVマップの分割線(切れ目)という意味が大きいです.Edit モードで Edge を選択するとつけることができます.デフォルトの設定では Seam に設定された Edge は赤く表示されます.ちなみに,切れ目を入れた部分はUV展開した時に直線に近い形になっていると,あとで縫うのが楽になります.

型紙の作成

歪みの少ないUVマップを作成したら,それを SVG形式で書き出します.

サイズの調整

まずは書き出したSVGファイルをAdobe Illustratorなどのベクター画像を編集できるソフトで開きます.画像編集ソフト側の単位をmmに設定します.

UVマップはCGでモデルにテクスチャをつけるためのものなので,スケールはpxでmmのような現実世界の大きさにはなっていません.そこでBlanderと画像編集ソフトの両方で適当なEdgeの長さを測り,SVGファイルを拡大縮小することでUVマップの大きさを合わせます.Blender でEdgeの長さを測るにはEdge Length の表示を有効にするか,計測機能を使います.

たとえば次の場合は,Blender側が50mmでSVG側が41.37mmなので,121%拡大することになります.

型紙の作成

UVマップをSVG形式に変換すると,多数の三角形と四角形がいる画像になります.これを各パーツ(Island)ごとに結合させます.画像編集ソフトにあるブーリアン演算機能で結合させます.Illustrator の場合はパスファインダーという名前がついています.

ここでできた線は縫い合わせるパスになるので,ここに縫い代を追加します.Illustrator ではパスのオフセットという機能があるので,これで縫い代をつけられます.下の画像では5mmのマイターになっていますが,実際には10mmのラウンドにした方がよさそうです.
ただし,切れ込み(ダーツ)の部分は縫い代が大きいと潰れてしまうので小さめにした方が良さそうです.

最後にこれを印刷すれば型紙の完成です.

作ってみた

実際にラビットファーを使ってできたのがこちらの子です.いい感じにできたのではないでしょうか.皆さんもチャレンジしてみてください.

型紙用プラグイン

今回のぬいぐるみを作った後に,SEAMS TO SEWING PATTERNというプラグインがあることを知りました.UV展開するまでの工程は同じようですが,そこから先の工程が簡単になりそうです.

使ってみました
プラグインの使い方はYoutubeで公開されているので,こちらを見ればおおよその使い方がわかります.特徴は次の通りです.

  • メッシュの細分化をかけられます.
  • 型紙をsvgで生成できます.スケールの調整やポリゴンの結合が不要になるのが便利です.縫い合わせる箇所は色のついたマーカーで表示されます.
  • Cloth シミュレーションは正直微妙です.ボールのようなかなり単純な形状じゃないと厳しそうです.

コメント