IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ダッソー システムズの特許一覧

特許7278026姿勢をとる身体をシミュレートするためのコンピュータによって実施される方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-05-11
(45)【発行日】2023-05-19
(54)【発明の名称】姿勢をとる身体をシミュレートするためのコンピュータによって実施される方法
(51)【国際特許分類】
   G06T 13/40 20110101AFI20230512BHJP
【FI】
G06T13/40
【請求項の数】 11
【外国語出願】
(21)【出願番号】P 2017224926
(22)【出願日】2017-11-22
(65)【公開番号】P2018092623
(43)【公開日】2018-06-14
【審査請求日】2020-11-24
(31)【優先権主張番号】16306533.7
(32)【優先日】2016-11-22
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】500102435
【氏名又は名称】ダッソー システムズ
【氏名又は名称原語表記】DASSAULT SYSTEMES
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】ミカエル ブロサール
【審査官】橘 高志
(56)【参考文献】
【文献】特開2012-164221(JP,A)
【文献】特開2016-062528(JP,A)
【文献】米国特許出願公開第2003/0034980(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 13/40
(57)【特許請求の範囲】
【請求項1】
姿勢をとる人体または動物体をシミュレートするためにコンピュータが実施する方法であって、
a)回転関節(A~D)によって繋がれた複数の骨(b0~b4)を備えた骨格を含む前記人体または動物体のモデル(AV)を提供し、少なくとも1つの運動連鎖を形成するステップであって、各回転関節が2つの骨を接続し、1と3との間に含まれる複数の回転軸を有するステップと、
b)アクティブ運動連鎖と呼ばれる運動連鎖の、前記骨格の各回転関節に対する開始位置および開始回転状態、ならびにエフェクタ(EF)と呼ばれる点に対する目標位置(T)を定義するステップと、
c)前記アクティブ運動連鎖の複数の関節のそれぞれ1つの少なくとも1つの回転軸に対して、
- 作動順序、
- 目標回転に対する最大部分的寄与、および
- 最大回転角度
を定義するステップと、
d)前記エフェクタをその目標位置(T)に近づけるために、前記アクティブ運動連鎖の前記関節に、それらの作動順序に従って、それらの回転軸の周りに回転を反復して適用するステップであって、回転軸の周りの関節の各回転は、対応する前記最大回転角度、および前記エフェクタとその目標位置との間の距離を最小にする前記目標回転に対する前記対応する最大部分的寄与のうちの1つによって制限される、ステップと
を含む方法。
【請求項2】
ステップd)の後に遂行される以下のステップ、
e)ステップd)の終わりにおいてすでに収束が達成されていない限り、循環座標降下アルゴリズムを適用して、前記エフェクタを前記目標位置に収束させるステップ
をさらに含む請求項1に記載のコンピュータによって実施される方法。
【請求項3】
回転軸の周りの関節の各回転は、対応する前記最大回転角度、および前記エフェクタとその目標位置との間の距離を最小にする前記目標回転に対する前記対応する最大部分的寄与のうちの最も大きいものによって制限される請求項1または2に記載のコンピュータによって実施される方法。
【請求項4】
ステップd)において少なくとも1つの回転は、人体または動物体の生理学的制約をモデル化する少なくとも1つの制約によって制限される請求項1乃至3のいずれか一項に記載のコンピュータによって実施される方法。
【請求項5】
ステップc)は、要素の順序付きリストを作成するステップを含み、前記リストの各要素は、少なくとも、
- 回転関節およびその回転軸の識別子、
- 目標回転に対する前記対応する最大部分的寄与を示す数値、および
- 対応する前記最大回転角度を示す数値
を備える請求項1乃至4のいずれか一項に記載のコンピュータによって実施される方法。
【請求項6】
目標は、前記人体または動物体の前記モデルを含んだ3次元シーン内を移動し、ステップd)は、前記目標の複数の連続した位置に対して、リアルタイムに繰り返して遂行される請求項1乃至5のいずれか一項に記載のコンピュータによって実施される方法。
【請求項7】
前記人体または動物体のグラフィック表示を表示するステップをさらに含む請求項1乃至6のいずれか一項に記載のコンピュータによって実施される方法。
【請求項8】
前記エフェクタは、前記人体または動物体の手、指、足、つま先、頭、またはそれらの一部分のうちから選択された要素に対応する請求項1乃至7のいずれか一項に記載のコンピュータによって実施される方法。
【請求項9】
コンピュータシステムに請求項1乃至8のいずれか一項に記載の方法を遂行させるためのコンピュータ実行可能命令を備えた、非一時的コンピュータ可読データ記憶媒体(M1~M4)に記憶された、コンピュータプログラム。
【請求項10】
コンピュータシステムに請求項1乃至8のいずれか一項に記載の方法を遂行させるためのコンピュータ実行可能命令(EXP)を含んだ、非一時的コンピュータ可読データ記憶媒体(M1~M4)。
【請求項11】
メモリ(M1~M4)およびグラフィカルユーザインターフェース(KB、PD、DC、DY)に結合されたプロセッサ(P)を備えたコンピュータシステムであって、前記メモリは、前記コンピュータシステムに請求項1乃至8のいずれか一項に記載の方法を遂行させるためのコンピュータ実行可能命令(EXP)を記憶する、コンピュータシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、姿勢をとる人間(または動物)の動きをシミュレートするためのコンピュータによって実施される方法に関する。それはコンピュータグラフィックスの分野に関し、コンピュータ支援設計(CAD)、人間工学、ビデオゲームなどのいくつかの応用分野に役立つ。
【背景技術】
【0002】
人体または動物体を、「スキン」によって覆われた「骨格」を備えたデジタルモデルによって表すことが知られている。骨格は、それらが必ずしも実際の解剖学的な骨に対応しなくても「骨」と呼ばれるセグメントのセットによって構成され、1つ、2つ、または3つの回転自由度を有する回転関節によって繋がれる。「アバター」としても知られるこのようなモデルは通常、人体モデルに対するいわゆる「T字ポーズ」(部分的に広げられた脚、水平に伸ばされた腕)などの標準姿勢においてもたらされる。
【0003】
アバターに、もとのものとは異なる特定の姿勢をとらせるために、所望の結果に至る、それの骨格の骨を繋ぐ関節の回転のセットを決定する必要がある。これは容易な作業ではない。
【0004】
多くのケースにおいて、所望の姿勢を完全に指定する代わりに、骨格の1つまたは複数の特定の点(「エフェクタ」と呼ばれる)に制約を課すのみとする。例えばアバターの手(例えばそれの前腕を表す骨の終点に対応する)が、特定の位置をとることを課すことができる。理論的な観点から、これは逆運動学(IK)の問題に対応する。
【0005】
順運動学は、連鎖の関節の回転角度を定義するパラメータθのセットの関数として、運動連鎖(骨格またはその一部分など)の1つまたは複数のエフェクタの位置Xを計算することを可能にし、
X=f(θ)
【0006】
一方、逆運動学は、エフェクタの指定された目標位置Xに至る、パラメータθを計算することを目的とする。
θ=f-1(X)
【0007】
順運動学問題は通常、単一の解を可能にするが、逆運動学問題は、ゼロまたは無限の解を有し得る。第1のケースにおいて目標位置Xは到達することが不可能であり、第2のもの(拘束下の系)において、それは「解空間」定義する無限個の異なる姿勢(冗長性)に対応し、それらの1つが任意に、または何らかの基準に基づいて選別されなければならない。
【0008】
逆運動学問題は、非常に短い運動連鎖に対する解析解を可能にするのみであり、これは通常、実用的関心は少ない。
【0009】
より複雑なケースでは、順運動学関数fを局所的に線形化し、それを逆変換することができる。実際、系が拘束下にある場合、(線形化された)順運動学関数の擬似逆変換のみが見出されることができ、冗長性は、適切に選択されたコスト関数を最小化する解を選択することによって対処される。この方法は非常に強力で柔軟性があり、実際、多くのコンピュータグラフィックアプリケーションによって要求されるものをはるかに超えるが、リアルタイム実装形態とは適合しない複雑な計算が関わる。
【0010】
より高速に、およびより実用的に逆運動学問題を解くための、他の手法が存在する。
【0011】
よく知られている手法は、逆運動学問題を最小化問題に帰着させることにあり、最小化されることになる関数はエフェクタと目標位置との間の距離であり、後者を循環座標降下(CCD)アルゴリズムを用いて解く(例えば、非特許文献1参照)。循環座標降下逆運動学(CCD-IK)は、実際は関節に対して局所的調整を行ってエフェクタの位置および方向の誤差を最小化する、反復アルゴリズムである。各反復は、先端から根元まで運動連鎖をくまなく調べ、各関節を個々に修正する。その結果、この適応は解析的に行われるのに十分に簡単になる。
【0012】
この方法の主な利点は、その収束時に特異性がないことである。しかし、それはいくつかの主な欠点を有する。まず第1に、それは、冗長性を考慮に入れた可能な解の空間をもたらさず、単一の解をもたらすだけであり、これは人体または動物体の現実的な姿勢に対応しない場合がある。最後に、適応化は関節の間で一様に配分されない。実際、修正されることになる第1の関節は最も大きな回転を受け、これは現実的な姿勢に至るためにはしばしばずっと大きくなり過ぎる。この手法は、姿勢自体ではなくエフェクタの最終位置のみが重要な、ロボット工学によく適している。
【0013】
誘導型逆運動学アルゴリズム(例えば、非特許文献2参照)は、より現実的な姿勢に至るCCDの修正された形である。そうするために、それはCCDアルゴリズムを起動する前に、いわゆる「統合姿勢マップ」に記憶された予め計算された姿勢における運動連鎖を初期化する。この手法の欠点は、単一の運動連鎖に対して非常に多数の予め計算された姿勢を記憶することを必要とすることである。これを人体または動物体のモデル化に適用することは、それぞれが複数の運動連鎖を備える、いくつかの異なる骨格(例えば異なる個人に対応して)に対して、統合姿勢マップを計算することを必要とすることになり、負担をさらに増加させ、これはすぐに耐えられなくなる。
【0014】
三角法逆運動学アルゴリズム(例えば、非特許文献3参照)は、CCDをベースとする方法は、適応されることになる第1のパラメータが最も大きな変化を受けるという主な理由により非現実的な姿勢を与えるという認識の後に導入された。「三角法」は、余弦法則によって目標に向かって各関節の回転を決定することにより、この欠点を低減する。アルゴリズムは容易で実装するのが速いが、十分に現実的な姿勢に至らない。
【先行技術文献】
【非特許文献】
【0015】
【文献】David G. Luenberger and Yinyu Ye “Linear and Nonlinear Programming” third edition, Springer (2008)
【文献】J.O. Kim et al. “The Inductive Inverse Kinematics Algorithm to Manipulate the Posture of an Articulated Body”, ICCS 2003
【文献】R.Muller-Cajar and R.Mukundan “Triangulation: A new algorithm for Inverse Kinematics, Proceedings of Image and Vision Computing New Zealand 2007
【発明の概要】
【発明が解決しようとする課題】
【0016】
本発明は、従来技術の欠点を克服することを目的とする。より正確には、それは、たとえ必ずしも解剖学的に正確でなくても現実的な結果に至る、姿勢をとる人体または動物体をシミュレートするための簡単で高速な(リアルタイム要件に適合する)方法を提供することを目的とする。
【課題を解決するための手段】
【0017】
この目的を達成することを可能にする本発明の目的は、姿勢をとる人体または動物体をシミュレートするためにコンピュータが実施する方法であって、
a)回転関節によって繋がれた複数の骨を備えた骨格を含む前記人体または動物体のモデルを提供し、少なくとも1つの運動連鎖を形成するステップであって、各回転関節が2つの骨を接続し、1と3との間に含まれるいくつかの回転軸を有するステップと、
b)アクティブ運動連鎖と呼ばれる運動連鎖の、骨格の各回転関節に対する開始位置および開始回転状態、ならびにエフェクタと呼ばれる点に対する目標位置を定義するステップと、
c)アクティブ運動連鎖の複数の関節のそれぞれ1つの少なくとも1つの回転軸に対して、
- 作動順序、
- 目標回転に対する最大部分的寄与、および
- 最大回転角度
を定義するステップと、
d)エフェクタをその目標位置に近づけるために、アクティブ運動連鎖の関節に、それらの作動順序に従って、それらの回転軸の周りに回転を反復して適用するステップであって、回転軸の周りの関節の各回転は、対応する最大回転角度、およびエフェクタとその目標位置との間の距離を最小にする目標回転に対する対応する最大部分的寄与のうちの1つによって制限される、ステップと
を含む。
【0018】
本発明の他の目的は、コンピュータシステムにこのような方法を遂行させるためのコンピュータ実行可能命令を備えた、非一時的コンピュータ可読データ記憶媒体に記憶された、コンピュータプログラム製品である。
【0019】
本発明の他の目的は、またコンピュータシステムにこのような方法を遂行させるためのコンピュータ実行可能命令を含んだ、非一時的コンピュータ可読データ記憶媒体である。
【0020】
本発明のさらなる目的は、メモリおよびグラフィカルユーザインターフェースに結合されたプロセッサを備えたコンピュータシステムであって、メモリは、コンピュータシステムにこのような方法を遂行させるためのコンピュータ実行可能命令を記憶する、コンピュータシステムである。
【0021】
本発明の他の目的は、このような方法を用いてシミュレートされる、姿勢をとる人体または動物体のモデルである。
【図面の簡単な説明】
【0022】
本発明のさらなる特徴および利点は、添付の図面と併せ読まれるこの後の説明から明らかになるであろう。
【0023】
図1】本発明の方法の例示的実施形態による、目標に向かってエフェクタを移動するために骨格の運動連鎖に適用される回転のシーケンスを示す図である。
図2A】本発明の方法の例示的実施形態による、目標に向かってエフェクタを移動するために骨格の運動連鎖に適用される回転のシーケンスを示す図である。
図2B】本発明の方法の例示的実施形態による、目標に向かってエフェクタを移動するために骨格の運動連鎖に適用される回転のシーケンスを示す図である。
図3A】本発明の方法の例示的実施形態による、目標に向かってエフェクタを移動するために骨格の運動連鎖に適用される回転のシーケンスを示す図である。
図3B】本発明の方法の例示的実施形態による、目標に向かってエフェクタを移動するために骨格の運動連鎖に適用される回転のシーケンスを示す図である。
図4A】本発明の方法の例示的実施形態による、目標に向かってエフェクタを移動するために骨格の運動連鎖に適用される回転のシーケンスを示す図である。
図4B】本発明の方法の例示的実施形態による、目標に向かってエフェクタを移動するために骨格の運動連鎖に適用される回転のシーケンスを示す図である。
図5A】本発明の方法の例示的応用を示す図である。
図5B】本発明の方法の例示的応用を示す図である。
図5C】本発明の方法の例示的応用を示す図である。
図6】本発明の異なる実施形態による方法を遂行するために適したコンピュータシステムのブロック図である。
図7】本発明の異なる実施形態による方法を遂行するために適したコンピュータシステムのブロック図である。
【発明を実施するための形態】
【0024】
本発明は図1に示される非常に簡単な例を参照して述べられ、運動連鎖は4つの骨b1、b2、b3、b4、固定された基部b0(これは骨と見なされることができる)、およびそれぞれが単一の回転軸を有する4つの回転関節A、B、C、Dからなる。回転軸は互いに並行であり、したがって、連鎖の動きは平面内に拘束される。エフェクタEFは、基部b0から最も遠い、骨b4の終点である。より複雑なおよび3次元のケースへの一般化は、直接的である。図1は初期姿勢における運動連鎖を表し、すべての関節は0°の初期回転角度を有し、すべての骨は整列される。
【0025】
本発明の方法は、2つの段階を含む。常に遂行される第1のものは、エフェクタEFの位置が目標点Tに正確に一致しない場合がある、現実的な姿勢に収束する。任意選択である第2のものは、エフェクタが目標に到達することを確実にするように、この姿勢を修正する。
【0026】
本発明のアルゴリズムを用いる前に、要素の順序付きリストである簡単なデータ構造体を作成する必要があり、各要素は以下を備える:
- 関節およびその回転軸の識別子、
- 目標回転に対する関節の最大部分的寄与を示す数値、および
- 関節の最大回転角度を示す数値。
以下の表1はこのようなリストの例を与えるが、図1の例では1自由度関節のみが考察されるので、関節の回転軸の識別子はない。
【0027】
【表1】
【0028】
アルゴリズムの第1の段階は反復して遂行され、CCDアルゴリズムにいくらか似ている。しかし、各回転軸に対して定義される「最大部分的寄与」および「最大回転角度」は、よりバランスのとれた、およびユーザによって自由に調整される、関節回転の配分を確実にする。
【0029】
リストの第1の要素は、関節Bに対応する。第1の段階の第1のステップは、次いでエフェクタEFを目標Tに向かって移動させるために、この関節を回転することにある。図2Aにおいて破線20は、関節Bが、EF-T距離を真に最小化するために回転されたならば部分連鎖b2-b3-b4がとるであろう構成を表す。しかし、リストは、関節Bが30%の最大部分的寄与、および20°の最大回転角度によって特性化されることを示す。これは関節の実際の回転は、「最大限」の回転の30%(破線21を参照)または20°の回転(破線22を参照)のいずれかに制限されることを意味する。2つの制限のうちの大きい方、このケースでは20°の回転が選択される。結果としての構成(「姿勢」)は、図2Bに示される。
【0030】
作動されることになる次の節点は、Aである。図3Aにおいて直線30は、「最大限」の回転に対応する姿勢を示し、直線31は、30%の最大部分的寄与によって制限された回転に対応する。直線32は原理的に最大回転角度すなわち60°に対応するべきであるが、これは「最大限」の回転を超えることになり、目標を過ぎてエフェクタを移動させることになるので許容されない。したがって、直線32は、直線30と整列され、関節Aの実際の回転を決定する(図3B)。
【0031】
作動されることになる第3の節点は、Dである。図4Aに示される状況は前のステップのものと同様であり、直線40は最大限の回転に、直線41は最大部分的寄与に、および直線40と一致した直線42は最大限の回転によって制限された最大回転角度に対応する。図4Bは、この第3のステップの後に得られるポーズを示す。
【0032】
本発明のこの例示的実施形態において、アルゴリズムの第1の段階はここで終了する。より複雑な実施形態では関節Cも作動されることができ、および/またはいくつかの反復が行われることができ、すなわちリストの関節は複数回処理され得る。
【0033】
図4Bで、この第1のステップの終わりにおいて、エフェクタは目標に到達していないことが分かる。ステップをさらに反復することは、この問題を解決し得ない。したがって、エフェクタを目標と一致させるために、従来のCCDアルゴリズムを用いた第2のステップが遂行される。CCDは比較的小さな微調整をもたらすことだけが必要であるので、第1のステップによって生成された姿勢の現実的な外観を「損なう」ことはない。
【0034】
例えば三角法と比べた本発明の方法の主な利点は、その安定性であり、ユーザは、リストの関節の順序、ならびにそれぞれの上記の関節に対する最大部分的寄与および最大回転角度の数値を、自由に変更できることが理解されることができる。ポーズの計算は非常に高速であり、ユーザは最も現実的な姿勢を見出すために異なる設定を容易に試みることができる。
【0035】
ここまで、「抽象的」な運動連鎖のケースのみが考察されてきた。方法の実際の実装形態において運動連鎖は、例えば腕などの肢に対応する骨格の一部を表すことになる。一般に骨格は、複数の運動連鎖から構成されると考えられることになる。本発明の方法は、単一の「アクティブ」連鎖に対して作用することを可能にし、その他は固定と見なされる。本方法がアバターに適用されるときはさらに、モデル化された人体または動物体の生理学的制約を反映して、関節の回転に対して追加の制約を課すことが必要になり得る。
【0036】
図5A~5Cは、複数の運動連鎖を備えた骨格(図示せず)を有するアバターAVを示す。左腕(各図の右側)を表す連鎖は「アクティブ」なものであり、そのエフェクタは右手首に対応し、身体の残りは固定された基部を構成する。目標Tはカーソルからなり、これはユーザによって、例えばマウスを用いて、アバターを含んだ3次元シーン内で移動される。理解されるように、目標の連続した位置に対して本発明の方法を繰り返して遂行することで、エフェクタがそれにリアルタイムで追従することを可能にし、アバターの姿勢は常に非常に自然に見える。
【0037】
最終的な姿勢は現実的となるが、それに到達するように運動連鎖によって行われる動きは、小さな変位を除いて必ずしもそうではないことを留意することが重要である。したがって、アニメーションを行うために、本発明の方法が用いられる場合、エフェクタの近くに位置する目標点から開始して、その最終位置に向かってそれを徐々に移動させることが推奨される。
【0038】
エフェクタが肢の先端に対応する必要はない。例えばアバターの手の位置を固定し(すなわち手を基部とする)、肩または身体の中心をエフェクタと見なすことが可能となり得る。
【0039】
ここまで、関節の回転を制限するために、最大回転角度、および目標回転に対する対応する最大部分的寄与の大きい方が、選択されるケースのみが考察されてきた。この選択は収束を加速する。しかし、逆の選択(すなわち最大回転角度、および目標回転に対する対応する最大部分的寄与の小さい方)も可能である。また「複合」手法を採用する、例えば最初の反復に対して大きな制限、および最後のものに対して小さなものを選択することも可能である。
【0040】
本発明の方法は、適切なプログラムをハードディスク、ソリッドステートディスク、またはCD-ROMなどのコンピュータ可読媒体に非一時的な形で記憶し、そのマイクロプロセッサおよびメモリを用いて上記プログラムを実行する、場合によってはコンピュータネットワークを含む、適切にプログラムされた汎用コンピュータまたはコンピュータシステムによって行われることができる。
【0041】
本発明の例示的実施形態による方法を遂行するために適したコンピュータは、図6を参照して述べられる。図6でコンピュータは、上述のプロセスを行う中央処理装置CPUを含む。プロセスは、実行可能プログラムすなわちコンピュータ可読命令のセットとして、RAM M1またはROM M2などのメモリに、またはハードディスクドライブ(HDD)M3、DVD/CDドライブM4上に記憶されることができ、または遠隔に記憶されることができる。さらに少なくとも1つの人体または動物体のデジタルモデル(アバター)、および/または上記モデルが埋め込まれる状態にある3次元シーンを定義する、1つまたは複数のコンピュータファイルも、メモリデバイスM1からM4の1つまたは複数上に、または遠隔に記憶されることができる。
【0042】
特許請求される本発明は、本発明のプロセスのコンピュータ可読命令および/またはデジタルファイルが記憶される、コンピュータ可読媒体の形によって限定されない。例えば命令およびファイルは、CD、DVD上に、フラッシュメモリ、RAM、ROM、PROM、EPROM、EEPROM、ハードディスク、またはサーバもしくはコンピュータなど、コンピュータ支援設計またはイラストレーションオーサリングステーションがそれと通信する任意の他の情報処理デバイスに記憶され得る。プログラムおよびファイルは、同じメモリデバイス上に、または異なるメモリデバイス上に記憶されることができる。
さらに本発明の方法を遂行するために適したコンピュータプログラムは、CPUと、Microsoft VISTA、Microsoft Windows 8、UNIX、Solaris、LINUX、Apple MAC-OS、および当業者に知られている他のシステムなどのオペレーティングシステムとに連動して実行する、ユーティリティアプリケーション、バックグラウンドデーモン、またはオペレーティングシステムの構成要素、またはそれらの組み合わせとしてもたらされることができる。
【0043】
中央処理装置CPUは、米国のIntel製のXenonプロセッサもしくは米国のAMD製のOpteronプロセッサとすることができ、または米国のFreescale Corporation製のFreescale ColdFire、IMX、またはARMプロセッサなどの他のプロセッサタイプとすることができる。あるいは中央処理装置は、米国のIntel Corporation製のCore2 Duoなどのプロセッサとすることができ、または当業者は認識し得るようにFPGA、ASIC、PLD上に、または個別論理回路を用いて実施されることができる。さらに中央処理装置は、上述の本発明のプロセスのコンピュータ可読命令を行うように協調して動作する、複数のプロセッサとして実施されることができる。
【0044】
図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インターフェースと一緒に、例えばポインタツールを移動させる、パラメータの値を定義するなどのための入力コマンドをもたらすためにユーザによって、およびアバターを含む3次元シーンを表示するためにコンピュータ支援設計ステーションに用いられる、グラフィカルユーザインターフェースを形成する。
【0045】
ディスクコントローラDKCはHDD M3およびDVD/CD M4を通信バスCBSに接続し、これはコンピュータ支援設計ステーションの構成要素のすべてを相互接続するためのISA、EISA、VESA、PCI、または同様のものとすることができる。
ディスプレイ、キーボード、ポインティングデバイス、ならびにディスプレイコントローラ、ディスクコントローラ、ネットワークインターフェースおよびI/Oインターフェースの一般的な特徴および機能の説明は、これらの特徴は知られているので簡潔にするために本明細書では省略される。
【0046】
図7は、本発明の異なる例示的実施形態による方法を遂行するために適したコンピュータシステムのブロック図である。
【0047】
図7において実行可能プログラムEXP、ならびにアバターおよび場合によっては3次元シーンを定義するコンピュータファイルは、サーバSCに接続されたメモリデバイス上に記憶される。メモリデバイス、およびサーバの全体的なアーキテクチャは、サーバにはディスプレイコントローラ、ディスプレイ、キーボードおよび/またはポインティングデバイスがない場合があることを除いて、図6を参照して上記で論じられたものと同じとすることができる。
【0048】
サーバSCは次いで、ネットワークNWを経由して管理者システムADSおよびエンドユーザコンピュータEUCに接続される。
【0049】
管理者システムおよびエンドユーザコンピュータの全体的なアーキテクチャは、管理者システムおよびエンドユーザコンピュータのメモリデバイスが、実行可能プログラムEXPおよび/または、アバターおよび/または3次元シーンを定義するコンピュータファイルを記憶しないことを除いて、図6を参照して上記で論じられたものと同じとすることができる。しかし、エンドユーザコンピュータは、以下で論じられるようにサーバの実行可能プログラムと協力するように設計されたクライアントプログラムを記憶する。
【0050】
理解されるように、ネットワークNWは、インターネットなどのパブリックネットワーク、またはLANもしくはWANネットワークなどのプライベートネットワーク、またはそれらの任意の組み合わせとすることができ、またPSTNまたはISDNサブネットワークを含むことができる。ネットワークNWはまた、イーサネットネットワークなどの有線とすることができ、またはEDGE、3Gおよび4G無線セルラシステムを含むセルラネットワークなどの無線とすることができる。無線ネットワークはまたWi-Fi、ブルートゥース、または知られている任意の他の通信の無線形式とすることができる。したがって、ネットワークNWは単に例示的であり、本発明の進歩の範囲を全く限定しない。
【0051】
エンドユーザコンピュータのメモリデバイスに記憶され、そのCPUによって実行されるクライアントプログラムは、ネットワークNWを経由してサーバSCによって記憶され、3次元シーン、アバター、またはそれらの要素を定義するファイルを含んだ、データベースDBにアクセスする。サーバは上述のように処理を行い、やはりネットワークNWを用いてエンドユーザコンピュータに、シーンの所望の表示に対応するイメージファイルを送信する。
【0052】
1つの管理者システムADS、および1つのエンドユーザシステムEUXのみが示されるが、システムは任意の数の管理者システムおよび/またはエンドユーザシステムを制限なしにサポートすることができる。同様にまた本発明の範囲から逸脱せずに、複数のサーバがシステム内に実施されることができる。
【0053】
本明細書で述べられるいずれのプロセスも、特定の論理機能、またはプロセスにおけるステップを実施するための、1つまたは複数の実行可能命令を含むモジュール、セグメント、またはコードの部分を表すものと理解されるべきであり、代替の実装形態は本発明の例示的実施形態の範囲に含まれる。
図1
図2A
図2B
図3A
図3B
図4A
図4B
図5A
図5B
図5C
図6
図7