(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-20
(45)【発行日】2022-10-28
(54)【発明の名称】アバタの周りにパターンを位置付けるためのコンピュータ実施方法
(51)【国際特許分類】
G06T 19/00 20110101AFI20221021BHJP
G06F 3/04815 20220101ALI20221021BHJP
A41H 43/00 20060101ALI20221021BHJP
G06F 30/20 20200101ALI20221021BHJP
【FI】
G06T19/00 A
G06F3/04815
A41H43/00 D
G06F30/20
【外国語出願】
(21)【出願番号】P 2017123185
(22)【出願日】2017-06-23
【審査請求日】2020-04-03
(32)【優先日】2016-07-08
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】500102435
【氏名又は名称】ダッソー システムズ
【氏名又は名称原語表記】DASSAULT SYSTEMES
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】シリル ンゴ ンゴク
(72)【発明者】
【氏名】オークスキン オーツザル デル カスティッロ
(72)【発明者】
【氏名】デニス ノウアイス
(72)【発明者】
【氏名】エバートン ハーマン
【審査官】橘 高志
(56)【参考文献】
【文献】国際公開第2008/081687(WO,A1)
【文献】国際公開第2010/021259(WO,A1)
【文献】特開2001-249957(JP,A)
【文献】CGにおける布のシミュレーション,シミュレーション,日本,2002年09月15日
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00
G06F 3/04815
A41H 43/00
G06F 30/20
(57)【特許請求の範囲】
【請求項1】
3次元シーンにおいて仮想衣類またはアップホルスタリ(G)を設計するためのコンピュータ実施方法であって、
a)前記3次元シーンにおいて前記仮想衣類またはアップホルスタリの少なくとも1つのパターン(P)を提供するステップと、
b)前記3次元シーンにおいて3次元アバタ(AV)を提供するステップと、
c)前記アバタの表面からの距離場を計算するステップであって、前記アバタを含む3D仮想空間の各点は、前記アバタの前記表面の最近点からのその距離を表現する数値を属性として与えられる、該ステップと、
d)前記距離場に関して固定された向きを保持することによって、前記アバタに関連して前記パターンを位置付けるステップと、
e)前記位置付けられた1または複数のパターンを前記アバタの周りに組み立てて前記仮想衣類またはアップホルスタリを形成し、それを前記アバタ上に着用させる、該ステップと
を含むことを特徴とするコンピュータ実施方法。
【請求項2】
前記ステップd)は、
d1)位置付けデバイス(KB、PD)を使用して、前記アバタに関連して前記パターンを事前に位置付けるサブステップと、
d3)前記パターンを自動的に回転して、前記パターンに対する法線方向(NP)または平均法線方向が、前記距離場の等距離面(IDS)に対する法線方向(NDF)または平均法線方向(ANF)に揃えられるようにするサブステップと
を含むことを特徴とする請求項1に記載のコンピュータ実施方法。
【請求項3】
前記ステップd)は、
d2)前記位置付けデバイスまたは異なる位置付けデバイスを使用して、前記パターンの前記アバタからの距離を調整するサブステップ
も含むことを特徴とする請求項2に記載のコンピュータ実施方法。
【請求項4】
前記ステップd)は、
d4)前記距離場に対する前記法線方向または平均法線方向に揃えられた、それの法線方向または平均法線方向を保持しながら、前記パターンを、前記位置付けデバイスまたは異なる位置付けデバイスを使用して、前記距離場の等距離面上で動かすステップ
も含むことを特徴とする請求項2または3に記載のコンピュータ実施方法。
【請求項5】
前記アバタからの前記パターンの前記距離は、前記パターンの参照点(RP)と前記アバタの最近点との間の距離であることを特徴とする請求項3に記載のコンピュータ実施方法。
【請求項6】
前記アバタからの前記パターンの前記距離は、前記パターンの点と前記アバタの点との間の最小距離であることを特徴とする請求項3に記載のコンピュータ実施方法。
【請求項7】
前記等距離面に対する前記法線方向は、前記パターンまたはそれの参照点に最も近い前記等距離面の点における、それの法線方向であることを特徴とする請求項2ないし6のいずれかに記載のコンピュータ実施方法。
【請求項8】
前記等距離面に対する前記平均法線方向は、前記等距離面の参照エリアの異なる点に対する法線方向を平均することによって計算されることを特徴とする請求項2ないし6のいずれかに記載のコンピュータ実施方法。
【請求項9】
前記位置付けデバイスまたは少なくとも1つの位置付けデバイスは、マウス、キーボード、タッチスクリーン、およびトラックボールの中から選択されることを特徴とする請求項2ないし6のいずれかに記載のコンピュータ実施方法。
【請求項10】
コンピュータに、請求項1ないし9のいずれか1つに記載のコンピュータ実施方法を実行させることを特徴とするコンピュータプログラム。
【請求項11】
請求項10記載のコンピュータプログラムを記録したことを特徴とするコンピュータ可読記憶媒体。
【請求項12】
メモリ(M1ないしM4)に結合されたプロセッサ(PR)と、グラフィカルユーザインターフェース(IF)とを備え、前記メモリは、コンピュータ支援設計システムに請求項1ないし9のいずれかに記載の方法を実施させるためのコンピュータ実行可能命令を記憶することを特徴とするコンピュータ支援設計システム。
【請求項13】
エッジによって組み立てられる複数の2次元パターンを含む衣類またはアップホルスタリを製造する方法であって、
請求項1ないし9のいずれかに記載の方法によって、前記パターン(P)間にシームを定義するサブステップを含む、前記衣類またはアップホルスタリ(G)を設計するステップと、
前記シームを実現することによって前記パターンを組み立てることを含む、前記衣類またはアップホルスタリを物理的に製造するステップと
を含むことを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータ支援設計の分野に関する。より詳細には、それは、1または複数の2次元(2D)パターンを含む仮想衣類または家具のアップホルスタリを設計するためのコンピュータ実施される方法に関する。さらにより詳細には、それは、パターンを、それらのエッジを一緒に縫うことによってそれらを組み立てる前に、アバタの周りに位置付けることにある、そのような方法のステップを容易にすることを目標とする。
【0002】
本発明は、コンピュータ支援設計システム、コンピュータプログラム製品、ならびにコンピュータシステムにそのような方法および現実の衣類またはアップホルスタリ(upholstery)を製造する方法を実施させるためのコンピュータ実行可能命令を含む不揮発性コンピュータ可読データ記憶媒体にも関する。
【0003】
本発明は、現実の衣類の設計のために被服業界に、および現実のアップホルスタリの設計のために家具業界に適用されるが、ビデオゲーム、アニメーション映画などにも適用される。一般に、コンピュータ上で現実的な被服を3次元(3D)で設計する必要がある任意の分野において、それは、仮想世界への統合のために、または製造のために適用される。
【背景技術】
【0004】
以下では、「アバタ」という語は、人もしくは動物の身体、ヒューマノイドもしくは動物形の創造物の、または植物もしくは無生物(例えば、ソファなどの家具)さえもの、コンピュータ生成される、通常は3次元の、表現を概括的に指し示すために使用される。しかしながら、ほとんどの場合、アバタは、人またはヒューマノイドの身体の表現である。アバタは、最初から設計され、または現実の身体もしくは物体をスキャンすることによって再構成される。
【0005】
「仮想衣類」または「仮想アップホルスタリ」という語は、アバタによって着用されるのに適した、被服またはアップホルスタリなどの、コンピュータ生成される2次元または(ほとんどの場合は)3次元の表現を指す。仮想衣類は、物質世界において製造されるのに適した「現実の」衣類のモデルである。以下では、衣類のケースのみが説明されるが、すべては、アップホルスタリ(インテリア)にも等しく適用される。
【0006】
アバタおよび仮想衣類は、好ましくは、「3次元」(3D)である。これ以降、「3次元」物体は、すべての角度からその部分を見ることを可能にする、3次元表現を可能にする物体-またはそれのデジタルモデル-である。
【0007】
「パターン」という語は、衣類を製造するために使用されるのに適した、織物、皮革、または他の柔軟性のある素材を指し示す。衣類は、ほとんどの場合、いくつかのパターンをそれらのエッジによって組み立てることによって製造される。パターンは、展開可能であり(平面上に平らに置くことができ)、それらの厚さはそれらの他の寸法に対して無視することができる(少なくとも2桁のオーダだけ小さい)ので、通常は2次元と見なされる。
【0008】
コンピュータ支援技法は、ファッション業界におけるパターン作成の開発プロセスにおいて広く使用されている。具体的には、CAD(コンピュータ支援設計)およびCAM(コンピュータ支援製造)システムは、デジタル2Dパターンを製作するのに役立っており、デジタル2Dパターンは、その後、衣類を製造するために使用される。これらのパターンは、一般に、最終的な衣類を物理的に構成するのに必要とされる追加情報を用いて強化された、2次元境界曲線として説明される。Lectra、Gerber Technology、Optitex、Assyst GMbH(Human Solutions Group)、Clo3D(Marvelous Designer)などの企業が製造する、いくつかのCADシステムが、市場に存在する。それらが提案するモジュールは、共通の特性を提示し、主に、2Dパターン開発、CAD-CAM管理および製造(例えば、パターンレイアウトおよび自動機械を用いた裁断)に重点を置いている。
【0009】
3Dの出現に伴い、仮想被服が、標準になりつつあり、それは、仮想衣類を取得するために、2Dパターンを仮想的に組み立てるための新しい技法を必要とする。残念ながら、標準的なCADシステムを用いて作成される2Dパターンは、それらをいかに効率的に配置するかについての情報を欠いている。実際に、既存の2D CADパターンモデルのほとんどは、組み立てられていない布地部品の設計または裁断のためのものと考えられている。したがって、それらは、モデルの身体に関連してそれらを配置するための、組み立ておよび位置付け命令を提供しない。
【0010】
図1は、3D仮想衣類プロトタイピング方法の一般的なパイプラインを示している。さらなる詳細が、[非特許文献1]において提供される。
【0011】
まず最初に、仮想衣類の2DパターンPのセットと、アバタAVが、提供される。すでに言及されたように、2D CADパターンは、業界標準のパターンメーカソフトウェアから得られ、いくつかのケースでは、それらは、紙で作成された「物理的な」パターンをスキャンし、デジタル的に処理することによって獲得される。3Dアバタは、デザイナによって作成され、人体測定調査分析から生成され、または身体測定(例えば、3Dスキャニング)から獲得される。その後、パターンは、アバタの周囲に位置付けられ、シーム定義を使用して組み立てられる。最後に、組み立てられた衣類Gを垂らしかけるために、物理的なシミュレーションが実行される。
【0012】
パターンの位置付け、およびシーム定義は、衣類シミュレーションの開始状態を定めるので、きわめて重大であり、それらが提供されない、または良好に定義されない場合、シミュレーションは、失敗する。パターンの手動の位置付けは、衣類デザイナにとって、退屈で時間のかかる(したがって、高コストの)作業であり、衣類デザイナは、2Dパターンを選択し、それらを3D空間内でいろいろに-すなわち、6自由度(並進3および回転3)で動かし、しばしば、シーンの観察点を変更しなければならない。この理由で、研究作業が、パターンの自動的または半自動的な事前位置付けに関して実行されており、Human Solutionsが製造するVidyaなどのいくつかの市販のソフトウェアによって提案されている。しかしながら、それらの結果は、完全に満足できるというわけではない。
【0013】
最も一般的な手法は、アバタの異なる部位(例えば、それの手足および胴体)を包含する、展開可能な(例えば、円筒または円錐台の)境界面上に、パターンを横たえることにある。[非特許文献1]および[非特許文献4]を参照されたい。高速な事前位置付けを可能にするために、アバタ上(または境界面上)で「スナップポイント」を使用することも知られている([非特許文献4]を参照されたい)。これらの手法の不便さは、境界面および/またはスナップポイントが、各アバタに対して手動で定義されなければならないことである。実際には、衣類デザイナは、それに対するこれらの要素が事前定義されているアバタの限定されたライブラリを使用するように制約される。さらに、位置付けは、まったく近似的であり(境界面は、アバタの形状を過度に簡略化している)、パターン位置の手動の微調整が、しばしば必要とされる。
【0014】
参考文献[非特許文献5]は、パターン位置付けを支援するために、2Dシルエットを使用する。この手法は、基本的に2次元であり、アバタの周りへのパターンの3Dフィッティングを可能にしない。
【先行技術文献】
【非特許文献】
【0015】
【文献】Arnulph Fuhrmanna, Clemens Gross, Volker Luckasa, Andreas Weberb “Interaction-free dressing of virtual humans”, Computers & Graphics Vol. 27, pp. 71-82 (2003)
【文献】Hyewon Seo and Nadia Magnenat-Thalman “An automatic modeling of human bodies from sizing parameters”, Proceedings of the 2003 Symposium on Interactive 3D graphics
【文献】Brett Allen, Brian Curless, B. Buxton and P. Treleaven “The space of human body shapes: reconstruction and parametrization from range scans” Transaction on graphics ACM, Siggraph 2003
【文献】Clemens Gross, Arnulph Fuhrmann and Volker Luckas “Automatic pre-positioning of virtual clothing” Proceedings of the 19th spring conference on Computer graphics. ACM, 2003
【文献】Le Thanh, Tung, and Andre Gagalowicz. “Virtual garment pre-positioning.” Computer Analysis of Images and Patterns. Springer Berlin Heidelberg, 2005
【発明の概要】
【発明が解決しようとする課題】
【0016】
本発明では、アバタの周りにパターンを位置付けるための改善されたコンピュータ実施方法を提供する。
【課題を解決するための手段】
【0017】
本発明は、先行技術のこの難点を克服し、アバタの周りへの仮想衣類のパターンの自動的または少なくとも半自動的な位置付けを実行する効果的で迅速で容易な方法を提供し、ひいては、少なくとも一部には、退屈で時間のかかる手動の位置付け作業を回避することを目標とする。
【0018】
本発明の目的は、3次元シーンにおいて仮想衣類またはアップホルスタリ(upholstery)を設計するためのコンピュータ実施方法であり、方法は、
a)3次元シーンにおいて前記仮想衣類またはアップホルスタリの少なくとも1つのパターンを提供するステップと、
a)3次元シーンにおいて3次元アバタを提供するステップと、
c)アバタの表面からの距離場を計算するステップと、
d)前記距離場に関して固定された向きを保持することによって、アバタに関連してパターンを位置付けるステップと、
e)位置付けられた1または複数のパターンをアバタの周りに組み立てて前記仮想衣類またはアップホルスタリを形成し、それをアバタ上に着用させる、ステップと
を含む。
【0019】
方法の特定の実施形態によれば、
- 前記ステップd)は、
d1)位置付けデバイスを使用して、アバタに関連してパターンを事前に位置付けるサブステップと、
d3)パターンを自動的に回転して、前記パターンに対する法線方向または平均法線方向が、前記距離場の等距離面に対する法線方向または平均法線方向に揃えられるようにするサブステップと
を含んでよい。
【0020】
- 前記ステップd)は、
d2)前記位置付けデバイスまたは異なる位置付けデバイスを使用して、パターンのアバタからの距離を調整するサブステップ
も含んでよい。
【0021】
- 前記ステップd)は、
d4)前記距離場に対する法線方向または平均法線方向に揃えられた、それの法線方向または平均法線方向を保持しながら、パターンを、前記位置付けデバイスまたは異なる位置付けデバイスを使用して、前記距離場の等距離面上で動かすステップ
も含んでよい。
【0022】
- パターンのアバタからの距離は、パターンの参照点とアバタの最近点との間の距離であってよい。あるいは、それは、パターンの点とアバタの点との間の最小距離であってよい。
【0023】
- 等距離面に対する法線方向は、パターンまたはそれの参照点に最も近い前記等距離面の点における、それの法線方向であってよい。あるいは、等距離面に対する平均法線方向が、等距離面の参照エリアの異なる点に対する法線方向を平均することによって計算されてよい。
【0024】
- 位置付けデバイスまたは少なくとも1つの位置付けデバイスが、マウス、キーボード、タッチスクリーン、およびトラックボールの中から選択されてよい。
【0025】
本発明の別の目的は、コンピュータシステムにそのような方法を実施させるためのコンピュータ実行可能命令を含む、不揮発性コンピュータ可読データ記憶媒体上に記憶される、コンピュータプログラム製品である。
【0026】
本発明の別の目的は、コンピュータシステムにそのような方法を実施させるためのコンピュータ実行可能命令を含む、不揮発性コンピュータ可読データ記憶媒体である。
【0027】
本発明の別の目的は、メモリに結合されたプロセッサと、グラフィカルユーザインターフェースとを備えるコンピュータ支援設計システムであり、メモリは、コンピュータ支援設計システムにそのような方法を実施させるためのコンピュータ実行可能命令を記憶する。
【0028】
本発明の別の目的は、それらのエッジによって組み立てられた複数の2次元パターンを含む衣類またはアップホルスタリを製造する方法であり、方法は、
- 上で概説された方法によって、前記パターン間のシームを定義するサブステップを含む、前記衣類またはアップホルスタリを設計するステップと、
- 前記シームを実現することによって、前記パターンを組み立てることを含む、前記衣類またはアップホルスタリを物理的に製造するステップと
を含む。
【0029】
本発明のまた別の目的は、製造のこの方法によって獲得される衣類またはアップホルスタリである。
【図面の簡単な説明】
【0030】
本発明のさらなる特徴および利点は、添付の図面と併せて理解される、以下の説明から明らかになる。
【
図2A】本発明の異なる実施形態による方法のフローチャートである。
【
図2B】本発明の異なる実施形態による方法のフローチャートである。
【
図3A】本発明による方法の異なるステップを示す図である。
【
図3B】本発明による方法の異なるステップを示す図である。
【
図3C】本発明による方法の異なるステップを示す図である。
【
図4A】本発明による方法の異なるステップを示す図である。
【
図4B】本発明による方法の異なるステップを示す図である。
【
図4C】本発明による方法の異なるステップを示す図である。
【
図5A】本発明による方法の異なるステップを示す図である。
【
図5B】本発明による方法の異なるステップを示す図である。
【
図5C】本発明による方法の異なるステップを示す図である。
【
図5D】本発明による方法の異なるステップを示す図である。
【
図5E】本発明による方法の異なるステップを示す図である。
【
図5F】本発明による方法の異なるステップを示す図である。
【
図5G】本発明による方法の異なるステップを示す図である。
【
図5H】本発明による方法の異なるステップを示す図である。
【
図5I】本発明による方法の異なるステップを示す図である。
【
図6】本発明の実施形態による方法を実施するのに適したコンピュータシステムのブロック図である。
【
図7】本発明の実施形態による方法を実施するのに適したコンピュータシステムのブロック図である。
【発明を実施するための形態】
【0031】
図2Aにおいて示されるように本発明の実施形態による方法の第1のステップ「a」は、2次元パターンのセット(
図1および
図3Aないし
図5Iにおける参照符号P)に対応する、CADデータを読み取る(すなわち、インポートまたはダウンロードする)ことにある。各パターンは、パターンの境界およびインテリアエッジに対応するポリラインによって、ならびにダーツ、プリーツ、ヘムライン、アイロンラインなどのスタイリング要素を定義する情報の追加項目によって指定される。後でより詳細に説明されるように、パターンの仕様は、参照点、および参照点におけるパターンに対する法線方向を含んでもよい。
【0032】
方法の第2のステップ「b」は、3次元アバタ(
図1および
図3Aないし
図5Iにおける参照符号AV、
図3Aないし
図4Cは、任意に成形されたアバタの断面図を表し、
図5Aないし
図5Iは、人型に成形されたアバタの立面図を表す)を、適切なデータベースから読み取ることにある。
【0033】
ステップ「a」および「b」は、逆順で、または同時に実行されることもできることが理解されよう。パターンを読み取る代わりに、アバタを含む仮想3D空間内にそれらを直接的にスケッチすることさえ可能である。
【0034】
ステップ「a」および「b」は、適切なインターフェースデバイス(一般に、キーボードおよび/またはマウス)を通して、ユーザによって提供された入力に従って、コンピュータによって実施される。
【0035】
ステップ「c」は、アバタの符号付き距離場を計算することにある。これは、スカラ場であり、アバタを含む3D仮想空間の各点は、アバタの表面の最近点からのそれの距離を(適切な単位で)表現する数値を属性として与えられる(attribute)。距離は、アバタの内部に配置された点については負であり、それの外部に配置された点については正である。距離場は、アバタから同じ距離を有する点によって構成される、等距離面の助けを借りて視覚化されてよい。等距離面IDSの平面との交差を表す等距離線が、
図3Aないし
図5Dにおいて示されている。図に過度な書き込みを行わないように、等距離面は、単一の等距離線によって表されているだけである。
【0036】
法線場が、計算されてもよく、法線場は、ベクトル場であり、アバタを含む3D仮想空間の各点は、その点を通る等距離面に直角な、法線方向と呼ばれる、単位長さのベクトルを属性として与えられる。あるいは、法線方向は、パターン位置付けアルゴリズムによって必要とされるときだけ、計算されてよい。いくつかの法線方向が、
図3Aないし
図3C、
図4A、
図4B、
図5Bにおいて示されており、参照符号NDFによって識別される。
【0037】
距離場および法線場の計算は、従来のアルゴリズムを使用して、コンピュータによって完全に自動的に実行されてよい作業である。
【0038】
ステップ「d」は、少なくとも1つのパターンを、アバタに関して、仮想3D空間内に位置付けることにある。それは、いくつかのサブステップを含む。
【0039】
- まず最初に(d0)、ステップ「a」において読み取られたパターンのうちの1つが、例えば、マウスを使用して、ユーザによって選択される。
【0040】
- 次に(d1)、選択されたパターンが、ポインティングデバイス、すなわち、マウス、トラックボール、タッチスクリーン、およびキーボードなどの任意の適切な入力デバイスを使用して、仮想3D空間内に事前に位置付けられる。事前位置付けは、例えば、「ドラッグアンドドロップ」によって、実行されてよい。ユーザは、パターンとアバタとの間の所望の距離についての数値を入力してもよい。
【0041】
- 以下のサブステップ(d2、d3、およびd4)は、本発明の核心を構成する。それらは、
- パターンとアバタとの間の距離を正確に調整すること(d2)と、
- ステップcにおいて計算された距離場を考慮しながら、パターンの向きを補正すること(d3)と、
- アバタからのそれの距離、および距離場に関するそれの向きを一定に保持しながら、パターンを動かすこと(d4)と
にある。
【0042】
これらのサブステップは、コンピュータによって、自動的(d2、d3)または半自動的(d4)に実施され、それらは、後で詳細に説明される。
【0043】
- サブステップd5は、反復を許容する、以下のサブステップの結果を表示することにある。
【0044】
すべてのパターンピースが位置付けられた後に実行される、ステップ「e」は、1または複数の事前に位置付けられたパターンをそれらのエッジにおいて縫うことによって、衣類を組み立てることにある。このステップは、先行技術から知られる任意の方法によって、実行されてよく、例えば、[非特許文献1]を参照されたい。
【0045】
任意選択である、サブステップd2は、パターンのアバタからの距離についての自動補正を実行することにある。例えば、補正された距離は、例えば、キーボードを使用して、ユーザによって入力された数値に等しくてよい。
【0046】
サブステップd3は、距離場/法線場を考慮しながら、アバタに関するパターンの向きについての自動補正を実行することにある。より正確には、パターンは、それがアバタの表面とできる限り平行になるように、回転させられる。
【0047】
本発明のいくつかの実施形態によれば、各パターンは、参照点(
図3Aないし
図5Bにおける参照符号RP)を含み、参照点RPにおけるパターンに対する法線方向NPは、コンピュータによって計算される(法線場が事前に計算されている場合、アドホックな計算は、必要とされない)。次に、パターン-アバタ距離が、パターンの参照点とアバタの最接近点との間の距離として定義され、それは、単純に、パターンのすべての点上における距離場の最小値に対応する。次に、パターンは、法線方向NPが、参照点を通るアバタに対する等距離面IDSに対する法線方向NDFと揃えられるまで、回転させられる。これは、例えば、
図3Aおよび
図3Bにおいて示されている。これらの図において、法線方向NPと法線方向NDFは、反対の向きを有するベクトルによって表されているが、これは、明瞭にするためにすぎない。これらの実施形態においては、サブステップd2は、好ましくは、サブステップd3の前に実施される。
【0048】
本発明の他の実施形態によれば、参照点が、衣類上において定義されない。このケースにおいては、パターン-平均距離は、パターンの点とアバタの点との間の最小距離によって、すなわちパターン上における距離場値の最小値によって定義される。さらに、パターンに対する「平均」法線方向が、計算され、それの向きを定義するために使用される(しかしながら、多くのケースにおいて、パターンは平面的であり、したがって、それらの平均法線方向は、それらの点のいずれかにおける法線方向と一致する)。パターンのこの平均法線方向は、それの特定の点における等距離面の法線方向には揃えられないが、「平均」法線方向ANF(
図4Cおよび
図5Eを参照されたい)に揃えられ、平均は、等距離面のエリア上におけるものである。例えば、等距離面は、アバタに最も近いパターンの点を通るものとすることができ、平均方向を計算するために考慮されるエリアは、この点から所定の半径内にある、等距離面の一部によって構成される。
【0049】
面(等距離面またはパターン)に対する平均法線方向は、面の複数の離散点を検討し、それらの点における面に対する法線方向を決定し、それらを単位長さのベクトルによって表し、それらを足し合わせ、結果のベクトルを正規化することによって計算される。
【0050】
これらの実施形態においては、サブステップd2およびd3は、
図2Bのフローチャートにおいて示されるように、反復的に実施される。
【0051】
- まず最初に(i)、コンピュータは、距離場を使用して、パターンとアバタのすべての点の間の距離を決定する。
【0052】
- 次に(ii)、パターンは、アバタへの最近点が事前設定されたそれからの距離にあるようになるまで、3D仮想空間の基準枠内におけるそれの向きを変えることなく、剛体的に動かされる。
【0053】
- その後、距離場の平均法線方向ANFが、計算される(iii)。
【0054】
- パターンは、それ自体の平均法線方向がANFに平行になるまで、回転させられる(iv)。一般に、この回転は、パターン-アバタ距離を変更し、したがって、操作iないしivは、収束に達するまで、反復される。パターン-アバタ距離、および/もしくは法線方向とANFとの間の角度、ならびに/またはそれらの組み合わせが、事前設定された閾値よりも低くなったとき、収束に達したと見なされる。
【0055】
本発明のまた他の実施形態は、パターン上の参照点の使用と、距離場の平均法線方向の使用とを組み合わせる。
【0056】
サブステップd4は、パターンの精細な位置付けを、距離場のそれと揃えられたそれの法線方向(または平均法線方向)を保持しながら、それを等距離面に沿って動かすことによって、実行することにある。運動は、ユーザによって提供された入力に従って実行されるが、パターンの向きは、コンピュータによって自動的に保持されるので、このサブステップは、「半自動的」である。ユーザは、パターンを等距離面に沿って動かすこと(d4)と、パターン-アバタ距離を変更すること、すなわち、等距離面から別の等距離面にジャンプすること(d3)とを交互に行ってもよい。そうするために、ユーザは、例えば、マウスホイールを備えるマウスを使用してよく、ホイールは、距離を変更することを可能にし、マウスの2次元運動は、等距離面上におけるパターンのそれを決定する。本発明の有利な特徴は、等距離面が、パターンの動きを制約し、調整される必要がある位置自由度の数を減少させることである。より正確には、ユーザは、パターンの3つの並進自由度と、おそらくは、1つの回転自由度(パターンに対する法線方向の周りの回転)に影響を与えさえすればよく、一方、2つの残りの回転自由度は、距離場の関数として、コンピュータによって自動的に制御される。
【0057】
図3Aは、アバタAVの近くに事前に位置付けられたパターンPを示しており、それの向きは、それの参照点RPにおけるパターンに対する法線方向NPが、参照点においてパターンに接する等距離面に対する法線方向NDFと揃えられるように、調整されており、したがって、パターンは、等距離面に接している。
図3Bは、同じパターンを示しているが、アバタにより近く、それの参照点は、異なる等距離面上にある。距離の変更は、例えば、上で説明されたように、マウスホイールを回転させることによって、または距離についての数値を入力することによって、ユーザによってトリガされる。ユーザは、例えば、マウスを用いて横方向運動を実行することによって、またはキーボードの「矢印」キーを使用することによって、パターンを横方向に動かしてもよい。
図3Cにおいて示されるように、次に、パターンは、等距離面に接したまま、それに沿って動く。
【0058】
図4Aないし
図4Cは、いくつかのケースにおいて、なぜ平均法線方向ANFの使用が有利であるかを示している。これらの図は、アバタAVが、尖りおよび凹みのある不規則な形状を有するケースに関連する。パターンPが、直接的に尖りの前方に事前に配置された場合(
図4A)、それは、許容可能な向きを取ってよい。しかしながら、この向きは、パターンが横方向に動かされた場合、劇的に変化し、明らかに不適切になることがある(
図4B)。平均法線方向ANFの使用は、より許容可能な結果をもたらす(
図4C)。
【0059】
図3Aないし
図4Cは、非常に簡略化されており、もっぱら本発明の基本的な原理を説明することを目標とするが、
図5Aないし
図5Iは、衣類パターンPの人型アバタAVの周りへの位置付けに関連する。
【0060】
図5Aないし
図5Dは、次第にアバタに接近させられ、等距離面IDSに従って、左に回転させられていく、パターンを示している。
図5Bにおいて示されるように、毎回、パターンに対する法線方向NPは、参照点RPにおける距離場の法線方向NDFに揃えられる。
図5Eは、
図4Bと比較され、アバタの胸の近くに配置されたときに、パターンが取ることがある、許容できない向きを示している。
図5Fは、
図4Cと比較され、NDFの代わりに、距離場の平均法線方向ADFが考慮される場合、より許容可能な向きが獲得されることを示す。
【0061】
図5Gないし
図5Iは、符号付き距離場の使用が、パターンとアバタとの間の衝突を検出し、回避するための、容易で効果的な方法を提供することを示している。
図5Gは、それがアバタAVと衝突するような、すなわち、それが一部はそれの内部にあるような方法で事前に位置付けられている、パターンPを示している。上で言及されたように、距離場は、アバタの内部では、負の値を取り、したがって、パターン上における距離場の最小値が負であるかをチェックすることによって、衝突が、非常に簡単に、完全に自動化された方法で検出される。次に、パターンは、アバタの外部に容易に動かされることができ(
図5H)、必要とされる場合は、一定の距離を保持しながら、したがって、さらなる衝突を回避しながら、それの周りを回転させられることができる(
図5I)。
【0062】
本発明の方法は、適切にプログラムされた汎用コンピュータまたはコンピュータシステムによって実行されることができ、それは、場合によっては、コンピュータネットワークを含み、適切なプログラムを不揮発性の形態でハードディスク、ソリッドステートディスク、またはCD-ROMなどのコンピュータ可読媒体上に記憶し、それのマイクロプロセッサおよびメモリを使用してプログラムを実行する。
【0063】
本発明の例示的な実施形態による方法を実施するのに適したコンピュータ-より正確には、コンピュータ支援設計ステーション-が、
図6を参照して説明される。
図6では、コンピュータは、上で説明されたプロセスを実行する、中央処理装置(CPU)PRを含む。プロセスは、実行可能プログラム、すなわち、コンピュータ可読命令として、RAM M1もしくはROM M2などのメモリ内に、もしくはハードディスクドライブ(HDD)M3、DVD/CDドライブM4上に記憶されることができ、またはリモートに記憶されることができる。アバタデータベースおよびパターンデータベース-すなわち、本発明の方法による実行可能プログラムによって処理されるのに適した形態のアバタおよび衣類パターンのデジタルモデルの組織化されたセット-も、メモリデバイスM1ないしM4のうちの1または複数上に、またはリモートに記憶される。
【0064】
特許請求される本発明は、本発明のプロセスのコンピュータ可読命令ならびに/またはアバタおよび衣類データベースが記憶される、コンピュータ可読媒体の形態によって限定されない。例えば、命令およびデータベースは、CD、DVD上に、フラッシュメモリ、RAM、ROM、PROM、EPROM、EEPROM、ハードディスク内に、またはサーバもしくはコンピュータなど、コンピュータ支援設計ステーションが通信する他の任意の情報処理デバイス内に記憶されることができる。プログラムおよびデータベースは、同じメモリデバイスまたは異なるメモリデバイス上に記憶されることができる。
【0065】
さらに、本発明の方法を実施するのに適したコンピュータプログラムは、CPU PR、ならびにMicrosoft VISTA、Microsoft Windows 7、UNIX(登録商標)、Solaris、LINUX、Apple MAC-OS、および当業者に知られた他のシステムなどのオペレーティングシステムと連携して動作する、ユーティリティアプリケーション、バックグラウンドデーモン、もしくはオペレーティングシステムのコンポーネント、またはそれらの組み合わせとして提供されることができる。
【0066】
CPU PRは、米国のIntelが製造するXenonプロセッサ、もしくは米国のAMDが製造するOpteronプロセッサとすることができ、または米国のFreescaleが製造するFreescale ColdFire、IMX、またはARMプロセッサなどの他のプロセッサ種類とすることができる。あるいは、CPUは、米国のintel Corporationが製造するCore2 Duoなどのプロセッサとすることができ、または当業者が認識するように、FPGA、ASIC、PLD上で、もしくは個別ロジック回路を使用して実施されることができる。さらに、CPUは、上で説明された本発明のプロセスのコンピュータ可読命令を実行するために協力して働く、複数のプロセッサとして実施されることができる。
【0067】
図6のコンピュータ支援設計ステーションは、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、およびインターネットなどのネットワークとインターフェースを取る、米国のIntel Corporationが製造するIntel Ethernet PROネットワークインターフェースカードなどのネットワークインターフェースNIも含む。コンピュータ支援設計ステーションは、Hewlett Packard HPL2445w LCDモニタなどのディスプレイDYとインターフェースを取る、米国のNVIDIA Corporationが製造するNVIDIA GeForce GTXグラフィックスアダプタなどのディスプレイコントローラDCをさらに含む。汎用I/OインターフェースIFは、キーボードKB、ならびにローラボール、マウス、およびタッチパッドなどのポインティングデバイスPDとインターフェースを取る。ディスプレイ、キーボード、およびポインティングデバイスは、ディスプレイコントローラおよびI/Oインターフェースと一緒に、グラフィカルユーザインターフェースを形成する。
【0068】
ディスクコントローラDKCは、HDD M3およびDVD/CD M4を、コンピュータ支援設計ステーションのコンポーネントのすべてを相互接続するための、ISA、EISA、VESA、またはPCIなどとすることができる、通信バスCBSと接続する。
【0069】
ディスプレイ、キーボード、ポインティングデバイス、ならびにディスプレイコントローラ、ディスクコントローラ、ネットワークインターフェース、およびI/Oインターフェースの一般的な特徴および機能についての説明は、これらの特徴は知られているので、簡潔さのために本明細書では省かれる。
【0070】
図7は、本発明の異なる例示的な実施形態による方法を実施するのに適したコンピュータシステムのブロック図である。
【0071】
図7では、実行可能プログラムEXP、アバタデータベースADB、および衣類パターンデータベースGDBは、サーバSCに接続されたメモリデバイス上に記憶される。メモリデバイス、およびサーバの全体的なアーキテクチャは、ディスプレイコントローラ、ディスプレイ、キーボード、および/またはポインティングデバイスが、サーバにはないことを除いて、
図6を参照して上で説明されたものと同じである。
【0072】
サーバSCは、その場合、ネットワークNWを介して、管理システムADSおよびエンドユーザコンピュータEUCに接続される。
【0073】
管理システムおよびエンドユーザコンピュータの全体的アーキテクチャは、管理システムおよびエンドユーザコンピュータのメモリデバイスが、実行可能プログラムEXP、アバタデータベースADB、および衣類パターンデータベースGDBを記憶しないことを除いて、
図6を参照して上で説明されたものと同じである。しかしながら、エンドユーザコンピュータは、以下で説明されるように、サーバの実行可能プログラムと協力するように設計された、クライアントプログラムを記憶する。
【0074】
理解されることができるように、ネットワークNWは、インターネットなどの公衆ネットワーク、もしくはLANもしくはWANネットワークなどの私設ネットワーク、またはそれらの任意の組み合わせとすることができ、PSTNまたはISDNサブネットワークも含むことができる。ネットワークNWは、イーサネットネットワークなどの有線とすることもでき、またはEDGE、3G、および4G無線セルラシステムを含むセルラネットワークなどの無線とすることができる。無線ネットワークは、Wi-Fi、Bluetooth(登録商標)、または通信の知られた他の任意の無線形態とすることもできる。したがって、ネットワークNWは、例示的なものにすぎず、本進歩の範囲を決して限定しない。
【0075】
エンドユーザコンピュータのメモリデバイス内に記憶され、エンドユーザコンピュータのCPUによって実行されるクライアントプログラムは、ネットワークNWを介して、サーバ上のアバタデータベースおよび衣類パターンデータベースにアクセスする。これは、エンドユーザが、アバタ、およびアバタに適合する衣類を形成するパターンのセットを選択し、それらを3D仮想空間内に事前に位置付けることを可能にする。サーバは、ユーザからの入力を考慮しながら、
図2Aないし
図5Iを参照して上で説明された処理を実行する。それは、その後、アバタ、およびそれの周りに位置付けられたパターンを、やはりネットワークNWを使用して、エンドユーザコンピュータに送信する。
【0076】
1つの管理システムADSおよび1つのエンドユーザシステムEUXだけが示されているが、システムは、制限なしに、任意の数の管理システムおよび/またはエンドユーザシステムをサポートすることができる。同様に、本発明の範囲から逸脱することなく、複数のサーバ、アバタデータベース、および衣類パターンデータベースも、システムにおいて実施されることができる。
【0077】
本明細書で説明されたフローチャート内のいずれのプロセス、説明、およびブロックも、プロセス内の特定の論理機能またはステップを実施するための1または複数の実行可能命令を含む、モジュール、セグメント、またはコードの部分を表していると理解されるべきであり、本発明の例示的な実施形態の範囲内には、代替的な実施が含まれる。