特集
» 2013年02月25日 12時00分 公開

デジタルが進化させる、かわいい手芸の世界これもFabの形「ぬいぐるみCAD」(2/4 ページ)

[加藤まどみ,MONOist]

シミュレーションにバネモデル

 おおまかなアルゴリズムは以下のようになる。図形が描かれるとまず裏表の面を生成し、図形の内部を三角形の集合に分割する(図6)。

図6 左に丸い形状を書くと、プログラム内では内部を三角形に分割する。

 それを縫い合せて、「綿入れ」の計算を行う。ここでは複数の点を計算の繰り返しによって任意の条件で配置できる「バネモデル」を使う。まず各点の周辺の面を平均した傾きを算出し、その傾き面に対して点を法線方向に移動させていく。ある程度膨らませたら移動を止めて、続いてバネモデルで、三角形の辺の比がもとの辺の比と同じになるようにそれぞれの長さを調整する(図7)。

図7 「綿入れ」のアルゴリズム。ある点に注目して、周辺にある面の傾きの平均を計算し、その法線方向(図では赤の→)に点を一定距離移動させる。続いてバネモデルによって辺の比が最初と同じになるようそれぞれの辺の長さを調整する。

 押し上げと長さの調整とを、形状の変化量がゼロに収束するまで繰り返しているという。

 このぬいぐるみCADに五十嵐氏がバネモデルを採用したのは、「計算が速いから」だという。シミュレーションには有限要素法やパーティクル法などさまざまな方法がある。だがより精密な方法を使いながらリアルタイムで結果を示そうとすると、並列計算や高性能のGPUなどが必要になり、誰でも使えるものではなくなってしまう。またぬいぐるみは、厳密さが要求されないという特徴がある。布が伸縮するため、正確な形は決められないからだ。また手づくりのため、たとえ同じ人が同じものを作っても形が変わる場合もある。こういったことから、スピードを優先してバネモデルを選択したということだ。

 なお普通に描いた図形を縫い合わせたものに「綿を詰める」と、元の図形よりも投影面積が小さくなったり形状が変わったりしてしまう。例えば枕を作ろうと考えて長方形を描くと、綿入れ後は各辺が内側に反るといった具合だ(図8)。

図8 描いた通りの長方形の仕上がりになるよう、下の図のように型紙が調整される。

 そこで五十嵐氏は、最終形状が元の形に一致するように型紙を変形させるプログラムも組み込んでいる。「イメージした通りの形が作れるようプログラムを工夫しました。大量生産の枕であれば長方形に布を裁断する方が合理的です。でも自分だけの一点ものを作るのであれば布の制限はほぼありません。それにイメージ通りに作りたい形を作れることが重要だと考えました」(五十嵐氏)。

デザインの過程を簡単にする

 普通の人がぬいぐるみの型紙を作ることは簡単ではない。それは立体的な完成イメージを2次元の型紙に落とし込むことが難しいからだ。そこで作りたい人は型紙が載った本を買って、書いてある通りに作ることになる。もしぬいぐるみをデザインしようとする場合は、まず3次元の完成デザインを考えることから始まる。次にそれを2次元のパーツに分解する。布は綿を詰めると伸びるため、完成をイメージできるようになるには経験が必要だ。ぬいぐるみ作家でも、例えばまずペーパークラフトのように紙を組み合わせたり、試し布を使ったりして何度も2次元と3次元を行き来しながら形を検討するという。根気とセンスが必要で、一般の人にはハードルが高い作業だ。

 一方、このプログラムは五十嵐氏が「一から型紙を作るのが大変だという人、デザインは難しいがオリジナル作品を作りたい人に、自分で作る楽しさを味わってもらいたい」というように、手軽に扱えることを重視している。ユーザーは立体らしい立体図を描かなくても立体のぬいぐるみが作れてしまう。またリアルタイムで完成品の変形を確認できるので、細かい形状の変更を、何度でも手軽に試すことができる。操作方法についても、すぐに使い方をマスターできるものだ。想定されるユーザーはコンピュータの専門家ではないので、マウス1つで作業ができる手軽さは必須ともいえるだろう。

Copyright © ITmedia, Inc. All Rights Reserved.