JP3579148B2 - 多関節体の動きを生成するように複数の動きユニットを操作する方法及びそのシステム - Google Patents
多関節体の動きを生成するように複数の動きユニットを操作する方法及びそのシステム Download PDFInfo
- Publication number
- JP3579148B2 JP3579148B2 JP28954195A JP28954195A JP3579148B2 JP 3579148 B2 JP3579148 B2 JP 3579148B2 JP 28954195 A JP28954195 A JP 28954195A JP 28954195 A JP28954195 A JP 28954195A JP 3579148 B2 JP3579148 B2 JP 3579148B2
- Authority
- JP
- Japan
- Prior art keywords
- motion
- articulated
- units
- motion units
- joints
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—Three-dimensional [3D] animation
- G06T13/40—Three-dimensional [3D] animation of characters, e.g. humans, animals or virtual beings
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Description
【発明の属する技術分野】
本発明は、コンピュータグラフィクスの分野、特に多関節体(AF(articulated fiture))のアニメーションに関する。
【0002】
【従来の技術】
新しい世代のパーソナルコンピュータとビデオゲームマシンが現在市場に売り出されている。これらは多関節体(AF)アニメーションのような3次元グラフィックスを作成することができる。しかしながら、コンピュータAFアニメーションに対する伝統的な研究及びアプローチは、アニメータ(Animator)に焦点を当てていた。すなわち、それらは、プロのアニメータが、製作するビデオ又は映画フィルムのためのいくつかのAFアニメーションを製作するのに役立つことに焦点が当てられる。
【0003】
【発明が解決しようとする課題】
ところで現在ではこの新しい世代のPC及びゲームマシンの場合、ユーザがAFアニメーションを命令することができる。しかしながら、上記のアニメータ向けのアルゴリズムでは必要以上に計算が必要であり高価である。映画フィルムを製作するプロのアニメータはオフラインで作業をすることができる。つまりアニメーションはリアルタイムで生成される必要がなく、かつ対話式である必要もない。アニメータは、必要な時間だけかけてアニメーションの各フレームを開発し、それから記憶媒体に記憶することができる。その後、全ての記憶されたフレームはビデオ速度で速く再生される。しかしながら、ゲーム又は教育ソフトウェアのような対話式アプリケーションは、リアルタイムで又は近リアルタイムで3次元ユーザ向けAFアニメーションを生成しなければならない。
【0004】
本発明にかかる方法及びシステムは、安価で、対話式で、しかもリアルタイムでコンピュータAFアニメーションを生成できることを目的とするものである。
【0005】
【課題を解決するための手段】
第1の本発明は、
コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備え、
前記結合するステップで、前記割り当てられた重みの平均値に関連された計算に従って前記複数の動きユニットを結合することを含む方法である。
第2の本発明は、
コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備え、
前記結合するステップで、所定の優先権方式に従って前記複数の動きユニットに重みを割り当てる方法である。
第3の本発明は、
コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備え、
前記複数の動きユニットの各々の最初と最後で多関節体の動きを減少させる方法である。
第4の本発明は、
コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関 節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備え、
隣接するフレーム間の不連続性を減少するために重み付けられた平均値を使用して2つ以上のフレームを結合するフレーム間を平滑化する方法である。
第5の本発明は、
コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備え、
前記複数の動きユニットの一つが、ユーザがいかなる他の動きユニットも選択していないときだけ多関節体の動きを制御するアイドル動きユニットである方法である。
第6の本発明は、
コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備え、
前記選択された動きユニットの各々が同時に実行している動きユニットの待ち行列に加えられる方法である。
第7の本発明は、
コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備え、
フレームの重みを前記一連のフレームにおける各フレームに割り当てることをさらに含み、
前記複数の動きユニットを結合するために使用される計算が、各動きユニットに割り当てられた重み及び前記フレーム重みに基づいている方法である。
第8の本発明は、
コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における 前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備えた方法である。
次に、本発明の基本的な動作について説明する。本発明の形態では、多関節体の各関節は順次親子関係があり、ツリー構造で表わされる。また各関節はローカル座標を有しており、親関節のローカル座標系を基準にしたときの子関節のローカル座標系のX,Y,Z軸の回転角が関節角となる。またMUとは、ある動作に於ける多関節体の動作データをいう。動作データはたとえば、歩く動作なら、その一周期分の各関節の関節角を含む。各関節の関節角がすべてきまると多関節体の形状が決定される(正確には関節間の長さも決まる必要があるが、それは予め決まっている)。また、この関節角と関節間の長さが決まると、関節の位置が決まることになる。なお、動作の変移とは、歩く動作から殴る動作へ変化することを意味する。
【0006】
本発明は、動きユニットを操作することにポイントを持つ。これらの動きユニット(MU)は、アニメーションシーケンスにおける各フレームについて、多関節体の方向(関節回転角)を規定している。ゲーム又はアプリケーション創作者は、MUを形成するために、色々な方法(たとえばロトスコピー(rotoscopy)、キーフレーム、動力学及び運動学を含む方法)を使用する。したがって、本発明のアルゴリズムは、ゲームユーザが命令するように、記憶されたMUを操作し実行させる。このアルゴリズムは、(毎秒30回1フレーム画像を生成することがしばしば必要である)ローエンドマシンに負担を掛けすぎ無いように、簡単で、かつ高速である。それでいて、MUを操作及び混合することによって形成される動きはかなり円滑で自然に見える。とりわけ、ユーザはそれが制御可能である。
【0007】
本発明は、予め記憶されたMUを速く操作することができる簡単なユーザ方式アルゴリズムを提供することを目的とする。
【0008】
本発明では、アニメーションシーケンスにおける各フレームについて、多関節体(AF)の関節回転を規定する、予め記憶された動きユニット(MU)が、重み付け合計計算によって一緒に混合される。その重みは、そのMUの“本質”を示す所定のMUの関節回転に優先権を与える。換言すると、より高い重みを与えられたMUの関節は、この特定のMUにおいてより重要な関節回転とみなされる。MUを創作するアニメータはこれらの関節の重みを決定する。その目的は、MUの動きの重要な関節回転を決定し、かつこれらの関節に他の関節よりも高い関節重みを与えるためである。例えば、人間のAFのためのパンチ動きでは、肩及び肱の関節は、パンチ動きの本質を強調するためにより高い関節重みを与えられるべきである。同様に、キック動作用MUは、尻、膝及び足首の関節を手首又は首のような重要でない関節回転よりも非常に高い関節重みを割り当てられるべきである。
【0009】
MUは、一緒にして混合されることができるMUの数にいかなる制限もなく、非同期で、つまり動作の途中でも、混合することができる。位相(phrasing)調整(ある動作から他の動作へのつなぎにおける調整)はMUの中の各フレームに重みを割り当て、MUの始め及び終わりでの変移を容易にするのに役立つ。これは、MUの始め及び終わりでより低い重みのフレームを与えること及びより高い重みを中間フレームに割り当てることによって達成される。
【0010】
AFのけん怠又は疲労は、疲労係数に比例する重みを有する“疲労”MUを同時に実行しているMUの現在の待ち行列に加えることによって実現することができる。
【0011】
以上のように、本発明は、コンピュータAFアニメーション用として、予め記憶された動きユニット(Motion Units)を操作し、混合するための方法及びシステムである。ゲーム又は教育分野のようなアプリケーション分野の流れにおいて、ユーザは、予め生成され、かつ記憶された動きユニットを選択することによって、AFの動きを命令する。そして、本発明の方法及びシステムによって、これらの動きユニットは、ユーザが選択した現在実行中の全ての動きユニットと重み付け平均によって結合される。
【0012】
【発明の実施の形態】
【0013】
以下、本発明にかかる実施例について図面を参照しながら説明する。その前に図面の概略を説明する。
【0014】
図1は、本発明が適用される全体的アプリケーション環境を示す。図2は、図1における“プレーヤー”ブロックをさらに図示する。プレーヤー、又は動きコントローラ1は、プレーヤーを模擬する人間又はいくつかのタイプの人工知能(AI)プログラムから構成され得る。さらに、この2つの組合せが可能である。この場合、プレーヤーが多関節体(AF)の動きを制御するためのAIプログラムによって支援される。図3は、図1における“インタフェース”ブロック2をさらに図示する。いろいろなインタフェースは、ユーザが入力し、かつコンピュータ3からの非視覚感覚のフィードバックを多分受け取ることが可能である。図3(a)で示された例は、手主導装置である。これは、キーボード、ボタンパッド、ジョイスティック、データグラブ又は他のこのような手入力装置でありえる。図3(b)は、足、膝及び/又は腰の位置及び動きが、システムに入力を供給する脚主導入力システムを示している。図3(c)は、可能な足、手及び頭の組合せの対話式制御システムの例を示している。図4及び図5は、図1の“視界”ブロックをさらに図示する。図4(a)は、コンピュータ生成シーンがプレーヤーの前方に映写される実施の形態例を示す。この例は、テレビジョン、モニタ及び映写システムを含んでいる。図4(b)は、プレーヤーが見るであろうスクリーン形状の例4を示す。図5(a)は、頭部取付けシステムの可能な構成を示す。コンピュータ生成シーンは、眼の近くに映写されるか、又は眼の上へ一様に描写される。多くの例は、平坦なスクリーン及び他の頭部取付け視覚システムを含んでいる。図5(b)は、生成及び表示されることができるシーンの2つの視野4を示している。プレーヤーの各眼に対して1つの視野である。図6は、本発明の一つの実施の形態例を示している。図6(a)では、一人のプレーヤーは、視界4の中にある一つのAFの動きを制御する。動き制御方法は本発明によるものである。図6(b)はAIプログラムによって支援されているプレーヤーを示している。例えば、人間は高レベル目標及び動き要求を入力し、そしてAIプログラムは、これらの高レベル目標を、そのとき本発明により同時に併合及び混合されるローレベル動きユニット(MU)選択に変換する。図7は、視界4の中にある複数の多関節体を含む本発明の他の実施の形態例を示す。図7(a)において、一人のプレーヤーは複数のAFの動きを制御する。一つの例は、スポーツチームをいくつかの目標を達成するように指揮するプレーヤーである。図7(b)は、複数のAFを制御する際のプレーヤー及びAIプログラムの組合せを示す。本発明の一つの実施の形態例では、AIプログラムは、プレーヤーが複数のAFの動きを命令及び制御するのを助ける。他の実施の形態例では、プレーヤーは全てのAFの部分グループの動きを命令するが、AIプログラム(又は複数のAIプログラム)は他のAFの動きを命令する。図8は、本発明の実施の形態例のより多くの組合せを示す。図8(a)は、複数のAFを制御する複数のプレーヤーを示す。各プレーヤーは異なるAF(又はAF群)を命令するか又は複数のプレーヤーはAF(又はAF群)の動きを制御するためにチームのように一致して作業するかのいずれかである。図8(b)は、AIプログラムであって、プレーヤーでない全ての入力の例を示す。これの例は、軍事シナリオ、緊急シナリオ、空港シミュレーションでの人間の通行の流れ又はAF群におけるこのような他の研究のような人間群のシミュレーションであってもよい。その場合、AFの行動が対応する制御AIプログラムによって決定される。図8(c)は、複数のAFを制御するための一人のプレーヤー(複数のプレーヤー)及び一つのAIプログラム(複数のAIプログラム)の組合せを使用する本発明の実施の形態例を示す。
【0015】
図9〜図11は、図1における“コンピュータ”ブロック3をさらに図示する。インタフェース2を通ってのプレーヤー1の入力から、動きがAF31のために生成される。次に、図10のジオメトリックエンジン32は、AFの3次元形状、配置及び面を形成する。次に、図11に示された画像発生器33は、ジオメトリックエンジン32からのこれらの前記3次元作図を図1の視界の中で表示するため2次元画像に変換する。図12は、本発明のための多関節体におけるいろいろな関節の実施の形態例を示す。多関節体は関節での回転によって作図される3次元形状である。図12(a)は、関節である共通軸上で軸回転する2つの静的セグメントを示す。図12(b)は、ボールソケット形関節を示す。この関節では、セグメントは関節の周りのいかなる3次元回転においても配置され得る。図12(c)は、コンピュータ世界の中では存在し得るAF形状を示している。その場合、セグメントが離れており、かつ物理的又は図形的に接触しないが、それでもセグメントが関節で回転できる。図12(d)は、セグメントがはっきりと、かつ別々に規定されていない例を示している。その代わりに、セグメントは一つに併合され、そして面は曲がり、関節で回転する。図12(d)の例は、人間の肱の関節、上腕及び下腕である。図13は、本発明のアルゴリズムによって操作されるAF用の関節の骨格の2つの例を示している。図13(a)及び図13(b)に図示された人間は、図で目で見ることができない3次元面を有する。図13は、関節(丸い黒点)及び2つの関節を接続する線によって表されるような関節間の関係を示すのみである。線は、人間の骨格、又はロボットのフレームあるいはセグメントリンクに類似しているものとみなすことができる。図14は、いかなる人間のような形状とも異なっている2つの可能なAF骨格形状を示している。本発明で記載されているAFにおいては、肢、すなわちセグメントを接続する関節での3次元回転によって図示されることができる複合3次元形状は、本発明で記載されたアルゴリズムによって操作されることができるAFである。図15は、AFの外面の一例を示す。図15におけるAFの関節及び骨格は図13に示された関節と同様である。図15におけるAFは本発明の動きアルゴリズムに従って動く。図16ー図18は、図1に示される本発明の詳細をさらに示している。“プレーヤー”1及び“インタフェース”2は図1のそれと同一である。“プレーヤー”1は、図16における“インタフェース”2を通して対話する。“コンピュータ”3は、ユーザが選択したMUを受け取り混合する。これらの選択されたMUは“MUミックスアルゴリズム”で混合される。次に、生成されたフレームが表示され、かつプレーヤーによって見ることができる“ ディスプレイ(Field of Vision)”上に表示される。図17は、図16の“MUミックスアルゴリズム”の内容を示している。“MUライブラリ”から、MUはプレーヤーによって選択され、同時に実行している“MUの待ち行列”に加えられる。待ち行列に加えられたMUは重み付け平均値計算によって“ミックス”で混合される。次に、得られた動きは平滑化される。図1の“コンピュータ”ブロックは、この図の残り、図18に細区分される。全体的なアプリケーションシナリオは、一人のプレーヤーと一つのAFの例に対して示される。プレーヤーは、複数のMUを含んでいるデータベース(ライブラリ)からMUを選択する。プレーヤーによって非同期に選択されたMUは、同時に実行しているMUの待ち行列に入力される。本発明のアルゴリズムによって、これらのMUはAFの各関節回転を図示するように混合及び併合される。これは、アニメーションにおいてフレーム毎に繰り返される。混合された動きは、本発明に記載されたフレーム間の平滑化技術によってさらに平滑化される。得られた動きの内容は、図9のジオメトリックエンジンに入力され、その後、視界の中に描写される。図19は、図16ー図18のMUライブラリの中のMUが発生される可能な方法を示している。これらは本発明によって記載されたアプリケーションよりも以前の実現されている。しかし、MUが図19の方法(又は他の方法)によって生成され、かつ図16〜図18のMUライブラリに記憶された後には、本発明のアルゴリズムは、プレーヤーによって命令されるようなAFの動きを生じるようにこれらの記憶MUを操作する。図20〜22は、AFのための混合MUの動きを生じるように、本発明の方法により混合される3つのMUを示している。この例では、図16〜図18のMUライブラリに予め記憶された肱の曲げMUは、(MUライブラリある)頭の振りMU及び膝の曲げMUとともに、同時に実行するために、プレーヤーによって選択される。これらの動きは、図20の最下部に示された混合MUを生じるように、本発明の重み付け平均値計算によって混合される。図23は、MUのファイル細目を示している。MUは、AFのアニメーションを記述するために次々と一連のフレームのデータから成る。前記フレームの各々は各関節に対する長い回転角ベクトルから成る。本発明の一つの実施の形態例では、各関節のために記憶された回転データは、3つの角度値(θz、θx、θy)から成る。このデータは、図23で示されるようなある種のマトリックスを形成する。その場合、一連のフレーム(F)があり、かつ各フレームは一連の関節データ(J)から成る。図24は、図18に示されたように同時に実行するMUの待ち行列の実施の形態例を示している。図24に示された例では、現在は、実行している動きユニットの待ち行列に加えた2つのMUがある。本発明のこの実施の形態例で記憶された待ち行列に加えた実際のデータは、少なくとも2つの項目、すなわちMUライブラリにおける実際のMUデータに対するポイント及び現在のフレーム番号(F)を含むデータ構造から成る。このフレーム番号は、次に実行されるべきMUにおける現在のフレームについて常に保持している。本発明の重み付け関節角計算は、どの実際のMUのフレームが、実行しているMUの待ち行列上の他のMUの他のフレームと混合される必要があるのかを決定するために、このフレーム番号(F)を参照する。図25は、本発明の中にあるランプ(ramp)重みのいろいろな実施の形態例を示している。基本的に、好ましい実施の形態例では、MUの最初のフレームはより低い重みを有し、MUの中間フレームは比較的高い重みを有し、そして最終フレームは低い重みを有している。これらのフレーム重みパターンの効果は、得られる混合された動きがより滑らかであるように、MUの最初と最後で変移の滑らかさを高めることである。同様に、これらの前記フレーム重みはMUの重要なフレームを操作及び強調するために使用されることができる。図26は前記フレーム重みの他の実施の形態例を示す(他の実施の形態例のいくつかは図25に示されている)。図26では、Nmは、このフレーム重みパターンが印加されたMUにおけるフレームの数である。Nrは、低い重みからより高い重みまで直線的に増分するフレームの数である。逆はこの前記MUにおける最終Nrフレームの数に対して真である。図27は、MUを混合する本発明の例を示している。プレーヤーは、図27において、3つのMU、すなわち最初にキックMU、次に、パンチMU、そしてその後に頭振りMUを非同期で選択した(同時に全部を同期して選択せず、図のようにずらして選択した)。これらの前記MUの各々は図26で示されるようにフレーム重みパターンを有している。例えば、前記MUの最初のフレームのキックは時間taで実行されるが、最後のフレームは時間tbで実行される。プレーヤーが非同期に選択した前記3つのMUに加えて、連続して実行しているアイドル(idle)MU(ジョッグMU)は常に実行している。このアイドルMUは、それら全てのフレームに対して比較的に低いフレーム速度を有し、それは、どの他のプレーヤーもMUを選択せず実行していない場合に、AF用の定状的な動きとして、本発明の本実施の形態例において使える。例えば、時間t0で、プレーヤーは、さらに実行するためのいかなるMUも選択しなかったので(MUのキックは時間taでその後開始する)、前記アイドルMUは時間t0で実行している唯一のMUである。図28は、本発明の一つの実施の形態例で可能である疲労のシミュレーションを示している。図27の上記の前記アイドルMUと似ている背景MUが実行しているMUの待ち行列に加えられる。疲れた(疲労)と呼ばれる値が0から1まで上昇すると、このルーピング疲労MUの重みは0から1まで増加し、益々AFを疲労MU動きに従って動かす。
【0016】
本発明の好ましい実施の形態例は、1以上の動画の多関節体を含む、またはプレーヤーに目に見ることができ、かつプレーヤーによって制御された多関節体を含む、対話式コンピュータグラフィックゲームにある。プレーヤーは、多関節体が動くことを非同期で選択する。したがって、本発明によって指定されたアルゴリズムにより、プレーヤーによって選択された同時に実行しているMUが混合される。この混合計算の結果は、アニメーションにおける次のフレームのための各関節の回転である。多関節体は、(計算された回転角で指定されるように)その位置に位置決めされ、回転角がプレーヤーに目に見えるようにされる。好ましい実施の形態例では、多関節体は、プレーヤーに目に見えるビデオモニタ上に人間を表示することによって目に見えるようにされる。本発明の他の実施の形態例は、1人の多関節体のシミュレーションであり得る。目的は、多関節体のためのMUを選択するいくつかの行動又は人工知能(AI)アルゴリズムによって決定されるような動いている多関節体のアニメーションを製作すること又は多関節体のいくつかの行動を模擬することにある。本発明の他の実施の形態例は、バーチャルリアリティ(VR)アプリケーションにおける多関節体の動きの制御である。人間もソフトウェアモジュール(図2におけるAIプログラムエージェント)もいづれも、多関節体が行動し始めるように次のMUを開始する。本発明は、ユーザが予め記憶された動きユニット(MU)の混合を直接制御することを可能にする。MUの例は、おじぎ、手を振る、頭を振る、歩く、パンチ又はキックであり得る。
【0017】
ゲームアプリケーションを開始する前に、MUは生成され記憶されねばならない。図19におけるボックスは、人間の動きを実際的に見えるようにするように開発されたいくつかの異なる技術を示す。これらの方法は多くの研究者によって開発及び使用された。いくつかは実際商用されている。動き生成方法は、ロトスコピー{Kunii T.L.,Sun L.,著「ダイナミック分析方式人間アニメーション(Dynamic Analysis−Based Human Animation)」、 Proc.Computer Graphics International ′90 (CGI ′90),シンガポール、1990年,第3〜15ページ; Unuma M.,Takeuchi R.著「感情を有する人間の動きの生成(Generation of Human Motion with Emotion)」、 Proc. Computer Animation ′91,ジュネーブ、スイス、Springer−Verlag,1991年,第77〜88ページに記載}と、キーフレーム{Steketee S.N.,Badler N.I.著「運動調整及びフレージング制御を組み込むパラメトリックキーフレーム補間(Parametric Keyframe Interpolation Incorporating Kinetic Adjustment and Phrasing Control)」、 Proc. SIGGRAPH 1985年, Computer Graphics、 第19巻,第3号,第225〜262ページ; Burtnyk N.,Wein M.著「キーフレームアニメーションにおける動き力学を強化する対話式骨組み技術(Interactive Skelton Techniques for Enhancing Motion Dynamics in Key Frame Animation)」、Graphics and Image Processing, Association for Computing Machinery,1976年、第564〜569アニメーション(L‐System‐Based Behavioral Animation)」、Proc. Pacific Graphics ′93、ソール、韓国、Computer Graphics and Applications,World Scientific,第1巻、第133〜146ページに記載}と、運動学{Korein J.U.,Badler N.I.著「関節構造の目標向き動きを生成する技術(Techniques for Generating the Goal‐Directed Motion of Articulated Structures)」、IEEE Computer Graphics & Appplication,1982年、11月、第71〜81ページに記載}と、AI手順{Badler N.I,, Webber B.L., Kalita J., Esakov J.著「命令からのアニメーション」、人の姿を移動させること: 多関節体の力学、制御、及びアニメーション編(Mechanics, Control, and Animation of Articulated Figures)、Badler,Barsky,Zeltzer,Morgan Kaufmann 出版社、1991年、第51〜93ページ; Morawetz C. L., Calvert T.W.著「多重運動の目標向き人間アニメーション(Goal‐Directed Human Animation of Multiple Movement)」、Proc. Graphics Interface ′90、カナダ、1990年、第60〜67ページに記載}と、対話式混合モード方法{Boulic R.,Thalmann D.著「多関節体の動き編集のための結合された直接及び逆運動制御(Combined Direct and Inverse Kinematic Control for Articulated Figure Motion Editing)」、 Computer Graphics Forum、第11巻、第4号、1992年、第189〜202ページ; Calvert T.著「複数の人間の姿のための現実的アニメーションシーケンス構成」人の姿を移動させること: 多関節体の力学、制御、及びアニメーション編(Mechanics, Control, and Animation of Articulated Figuers)、Badler,Barsky,Zeltzer,Morgan Kaufmann 出版社、1991年、第35〜50ページ; Armstrong W.W.,Green M.,Lake R.著「人間の姿モデルのほぼリアルタイム制御(Near‐Real‐Time Control of Human Figure)」、 Proc. Graphics Interface ′86、 Vision Interface ′86、カナダ、1986年、第147〜151ページ; Calvert T.,Bruderlin A., Dill J., Schiphorst T., Welman C.著「複数の人間の姿のデスクトップアニメーション(Desktop Animation of Multiple Human Figures)」、IEEE Computer Graphics & Applications,1993年、5月、第18〜26ページ; Boulic R.,Huang Z.,Magnenat Thalmann N.,Thalmann D.著「トラックシステムを有する多関節体の動き操作のための統一フレームワーク(A Unified Framework for the Motion Manipulation of Articulated Figures with the TRACK System)」、 Proc. CAD/Graphics ′93北京、 New Advance in Computer Aided Design & Computer Graphics, ED.Tang Z., International Academic出版社、第1巻、1993年、第45〜50ページに記載}とを含んでいる。
【0018】
さらに、コンピュータ人間アニメーション研究で開発されたいかなる他の方法も、下記の条件が満たされるとき、MUを生成するための適正な方法である。形成されたMUによって指定された動きは、図23で示されたデータ構造の形式のものが望ましい、又は図23で示されたデータ構造の形式に変換されることが望ましい。すなわち、動きはフレーム毎に指定される。各フレームは、多関節体の回転できる関節の各々の回転を表す一連の角度によって指定される。図19で示される技術では、角度関節の指定は3つの角度回転から成る。しかしながら、いかなる関節指定の方式も、多関節体の特定の関節がフレームからフレームまで首尾一貫したように角度又は一連の角度によって指定される限りは、本発明の方法論によってカバーされる。角度の値は、本発明の下記の式(1)によって操作されることができるタイプのものでなければならない。
【0019】
上記の技術の一つによって所望の動きを生成した後、アプリケーション開発者はフレーム毎にその動きを記憶するする必要がある。記憶されるためのキーデータは各関節の回転情報である。
【0020】
関節の配置を指定するためには多数の方法がある。本発明で指定された動き混合アルゴリズムは、データが、関節の回転角から成るならば、最もよく機能する。その場合、このデータ角度は自分自身に対する(すなわち、曲げること、軸回転、ねじること)又はその親関節の局部座標系に対するものである。図23は、MUが、各フレームが一連の関節回転データから成るフレームの行から成ることを示している。
【0021】
図1で示されるように、本発明は、“コンピュータ”と“インタフェース”を通して対話している“プレーヤー”の周辺技術に関する。可視画像のフレームは、コンピュータからプレーヤーにフィードバックされる。本発明は図1のコンピュータボックスで実行されているアルゴリズムである。
【0022】
図2に示されるように、好ましい実施の形態例では、図1のプレーヤーは人間であるが、しかし本発明で指定されたプレーヤーも、図1のインタフェース及びコンピュータへのプレーヤーの入力を模擬しているソフトウェア又は他の電気的/機械的装置で有り得る。例えば、実行する多関節体用の次のMUを選択するプレーヤーの代わりに、ソフトウェアモジュールは、実行する多関節体用の次のMUをその内部プログラムによって選択することができる。このように、本発明で記載された“プレーヤー”はソフトウェアプログラムであり得る。“プレーヤー”であるこのソフトウェアモジュールは、図2、図6(b)、図7(b)、図8(b)及び図8(c)における“AIプログラムエージェント”と称される。
【0023】
図3で示されるように、(図1の)インタフェースは、手で操作される装置である。これは、キーボード、ジョイスティック、データグラブ、ボタンパッド及び片手又は両手の動きによって制御されることができる任意の他の装置のような一般に使用されている対話の実例の全てをも含む。さらに、本発明の(図1の)インタフェースは、脚及び/又は足のような、体の他の領域における体の一部の動きにより、あるいは顔、眼、頭、耳、鼻、首又は肩の動きによって、操作される装置であり得る。もし(図1及び図2)のプレーヤーがソフトウェアモジュールであるならば、インタフェースはソフトウェアモジュールのコマンドを検出できる装置である。コマンドは、(図1の)インタフェースを通して(図1の)コンピュータにそのコマンドを入力するAIプログラムエージェントに対する、ソフトウェア手順呼出し、方法呼出し、コンピュータメッセージ、電子メール、光信号、あるいは他の電気的及び/又は機械的媒体でありうる。重要なことは、この装置のインタフェースが(図1の)プレーヤーからの入力を受け取ることと、その入力を多関節体が実行するためのAI選択に変換することである。
【0024】
図4で示されるように、(図1の)プレーヤー、特にプレーヤーに表示される(図1の)視界は本発明の好ましい実施の形態例におけるビデオモニタである。さらに、本発明の他の実施の形態例である他の画像システムは、図5で示されるようにバーチャルリアリティアプリケーションで使用されるシステムのような頭部装着形画像システムを含む。
【0025】
全体的システムの好ましい実施の形態例の実例は図18で示され得る。この図では、ユーザは実行するいろいろなMUを非同期的に選択する。これらのMUは同時に実行しているMUの待ち行列に加えられる。各アニメーションフレーム、すなわち各MUからの関節データの1フレームは、図18で示される“ミキサー”で混合される。ここで、関節フレームの重み付け平均値はそのフレームのための関節回転値を決定するために計算される。MUにおける各関節データ要素はその優先権を示す重みを含む。特定のAFの動き(すなわち、ジャンプ、着席)は主要な関節の動きによって達成される。もちろん、多くの他の主要でない関節も動くかもしれないが、しかしこの関節は動きに絶対必要ではない。例えば、ジャンプにおいて、脚の関節角は絶対必要であり、腕は幾分重要であるが、しかし首又は手首の関節角はジャンプの本質に少しも重要ではない。
【0026】
本発明の好ましい実施の形態例は、一人のプレーヤーと図6(a)で示されるような1人の多関節体とを対にする。プレーヤーは、実行する多関節体のMUを選択し、そして多関節体は、プレーヤーにより選択されたMUに基づいて、本発明のアルゴリズムによって決定された動きをする(use)。さらに、プレーヤーは、図6(b)で示されるように、コンピュータモジュール、すなわちAIプログラムエージェントと協力して操作する。例えば、人間は複数のMUの時間調整された組合せである高レベルの動きを選択する。AIプログラムエージェントは、プレーヤーによって所望される表現された動きを実行するために適切な時間に特定なMUの選択を与える。他のシナリオは、プレーヤーがMUを選択することであり、同様にAIプログラムエージェントがMUを選択することである。したがって、これらの2組のMUは、動きを生じるための本発明のアルゴリズムによって混合される。
【0027】
本発明のもっと多くの実施の形態例が図7に示される。図7(a)では、一人のプレーヤーが多関節体群を制御する。この群及び調整の1つの例は、スポーツチームのようなチームで実現される。プレーヤーは、ゲームの各多関節体をいかに動かすかを指示するMUを選択する。図7(b)では、プレーヤーは、複数の活動の動きを調整するためにAIプログラムエージェントと協力して操作する。例えば、プレーヤーは高レベルの動きを指定することができたが、AIプログラムエージェントは、プレーヤーによって指定されるような前述の高レベルの動きのために、実行するMUの低いレベル選択及びタイミングを指定する。他のシナリオは、1人または1群の多関節体を制御するプレーヤーを有するが、AIプログラムエージェントは他の多関節体を制御する。2組の多関節体は、協力又は競争状態で動いていることがあり得る。
図8は本発明のもっと多くの実施の形態例の組合せを示している。図8(a)は、複数組の多関節体を制御する複数のプレーヤーの例を示す。プレーヤーと多関節体との関係は1対1又は1対多数の関係のいずれかである。すなわち、プレーヤーによって選択されたMUは単に一つの多関節体を制御できるか、又は多関節体群を制御できるかである。図8(b)は他の実施の形態例を示す。これは、いかなるプレーヤーも必要とせず、コンピュータプレーヤーのみ、すなわちAIプログラムエージェントが必要とされるシナリオを示す。この例は多関節体群のシミュレーションである。AIプログラムエージェントは、戦争ゲーム、群衆行動、又は人間工学研究のような状況を模擬するような方法で、多関節体を動かす、多数のMUを選択するようにプログラム化されることができる。この実施の形態例は、模擬された多関節体の行動について研究及び学習するための研究目的のために使用されることができる。他のシュミレーションの例は、新しいビルディング、店舗、公園又は工場の設計計画で移動する人々を模擬するアニメーションである。その動きがAIプログラムエージェントによって選択されたMUによって決定される多関節体は、新しいビルディングの設計計画のコンピュータグラフィックシュミレーションで移動する。したがって、このアニメーションのビデオは、潜在的なバイヤー、銀行家、顧客、政治家又は他の興味ある人々に見せることができる。このような多関節体の行動のシュミレーションは本発明のアルゴリズムの実施の形態例である。同様に、図8(c)は、MUを選択し、それによって複数の多関節体の動きを制御する複数のプレーヤー及び複数のAIプログラムエージェントの組合せを有する本発明の実施の形態例を示す。いかなる組合せにおいても複数のプレーヤーは協力して実行するか又は競争して実行するかである。
【0028】
図9は好ましい実施の形態例における(図1の)コンピュータを示す。本発明のアルゴリズムは、“多関節体のための動きの生成”と呼ばれるボックスの中にある。したがって、コンピュータが各多関節体の計算結果として生じる動きを各フレームのために(図1の)視界に変換するために、(図10の)ジオメトリックエンジン及び(図11の)画像発生器が存在する。図9のジオメトリックンジンは図10に拡大される。ジオメトリックエンジンは、たとえば、Foley J.D 及び Van Dam A.著「対話式コンピュータグラフィックスの基礎(Fundermetals of Interactive Computer Graphics)」、 Addison−Wesley出版社、1984年、第262〜265ページ等に知られている。ここで、多関節体(AF)の本体はモデル座標系で構成され、次に世界座標系に変換される。ジオメトリックエンジンへの入力は、AFにおけるその隣り合っている関節に対する各関節のための全ての3次元角度値から成る。これらの3次元角度値は、本発明によって指定され、かつ“多関節体のための動きの生成”と呼ばれるブロックとして図9に表されるアルゴリズムの出力である。これらの角度値から、各関節の3次元位置が計算される。この計算に必要な要素は2つの関節間の各セグメント長である。この長さ及び連結性情報(すなわち、どの関節がどの他の関節と接続されているか)は、図10で“スケルトン”と呼ばれるコンピュータディスクとして図示される情報のブロックに含まれている。
【0029】
図10における第1の機能の出力データストリームは、アニメーションにおける1フレームのための各関節の全ての3次元位置である。これらの3次元の位置は図10における第2の機能への入力である。この第2の機能は隣接する関節位置に基づいて組織面を決定する。これは、たとえば、Dow D., Semwal S., Maehara F.著「可撓物体向き方法論を使用する複合人間形状のモデル化」、 Proceedings of NICOGRAPH ′92 、東京、1992年11月、第35〜43ページに知られている。組織面を決定するために必要とされる付加モデルデータは、“組織”と呼ばれるコンピュータディスクとして図10に示されるデータブロックから得られる。囲まれる関節の3次元位置を与えられると、その身体領域面は、簡単なジオメトリック的形状、多角形メッシュ、自由形状面又は体積ボックセル(voxel)を含むいろいろな方法で計算及び表現されることができる。表面組織のこれらの表現の各々は、本発明のアルゴリズムによって発生された出力データを使用するための適切な方法である。
【0030】
最後に、この計算された表面表現データは、図10の第2の機能から第3の機能に送られる。この第3の機能では、AFの各身体領域面の表現は、コンピュータシーンの“世界座標系”に正確に位置決めされ、かつ配置される。簡単な言い方では、この変換は、コンピュータディスプレイ上に現在は表示されている場面における正確な位置及び配置にAFを動かす。3次元コンピュータグラフィックスシステムで使用されているこの座標系の変換の他の説明は、たとえばFoley及びVan Damで公知である。
【0031】
ジオメトリックエンジンの出力データストリームは、図10の前記第3の機能の出力である。これは、コンピュータスクリーン上に描写される基本グラフィックプリミティブを表す3次元点のディスプレイリストと見なされ得る。このようなプリミティブは、頂点、ラインセグメント、多角形面及び体積ボックセル(voxel)密度値を含んでいる。
【0032】
図9の画像発生器は図11に拡大される。画像発生器は、たとえば、Foley及びVan Dam、第267〜274ページで公知である。この画像発生器への入力データは、頂点、ライン及び面のような3次元世界座標出力プリミティブである。画像発生器は、これらの3次元座標を2次元射影面に変換する。最後に、2次元射影面座標は2次元フレームバッファの中をピクセル値で満たすためにラスタ化される。フレームバッファデータはプレーヤーによって見るためのディスプレイに直接に送られ得る。
【0033】
本発明のいろいろな実施の形態例における多関節体はいろいろな関節形状及びいろいろな身体面体系を有することが出来る。図12は、多関節体における関節をモデル化又は表現するための4つの異なる方法を示している。これらの関節の各々(図12において)は本発明の許容実施の形態例である。重要なことは、多関節体の領域が関節の中心の周りの回転によってモデル化されることができる動きを有することである。図13及び図14で示されるように、多関節体における関節の数又は関節の形状はいろいろな実施の形態例に特有なもので有り得る。本発明は、その関節の結果して生じる角度を決定するために、同時に実行しているMUの対応する関節の角度回転を操作するために本明細書で記載されているような数学上の重み付けられた平均計算を使用する。したがってMU及び多関節体が同一の数の関節及び角度値を有する限り、多関節体における関節の数又は多関節体を形成するための関節の形状は本発明の異なる実施の形態例の間で変えることができる。
【0034】
各動きの本質を符号化するために、関節は重みを与えられる。この重みは、特定の動きの目的のために関節の相対優先権を決定する。2つ以上のMUは一緒にして混合されるとき、結合関節の重み付け平均値は、結果として生じる関節角度を決定する。
【0035】
【数1】
θJ=(Σn i=0 wiJ θiFJ)/(Σn i=0 wiJ) (1)
ここで、
θJ=J関節の回転の計算結果として生じる角度
i =実行しているMUの待ち行列からのどれかのMU
J =AFにおけるどれかの関節
n =現在、待ち行列に加えられるMUの数
θiFJ=iMUのFフレーム及びJ関節の回転値
wiJ =関節重み:iMUのJ関節のための重み
式における上記Jは図23で示されるJ関節と同一である。MUの各フレームFはAFの各関節のための回転データを有する。同様に、式における上記Fもまた図23で示されるFフレームである。図24におけるMU 指数は、どのFフレームが上記の式で混合するための、MUの次のフレームであるかについて常に知っている。
【0036】
もし全てのwiJ =1であるならば、最終の回転値は、単に混合されるための各フレームからの各関節のための回転値の平均である。重みは関節回転に優先権を与える。このように、2つ以上の動きが併合されるとき、より高い重みを有する関節回転はより高い優先権を有し、結果として生じる動きにさらに強く影響を与える。
【0037】
3つの簡単な動きを結合する例を考察する。一方のMUはキック(膝の曲げ)であり、一方がパンチ(肱の曲げ)であり、他方は頭の揺れ(頭の振り)である。図20は、最初の3つの動き及び合成結果を示す。
【0038】
キック動きでは、脚の関節動きは“キック”動きに絶対必要であるので、脚の関節動きは1.0のより高い重みが与えられ、残りは0.1のような低い重みが与えられる。同様に、パンチの場合、腕の関節は1.0の重みが与えられ、残りは0.1の重みが与えられる。頭の振りの場合、頭の重みは1.0であり、残りは0.1の重みが与えられる。これらの動きが同時に実行されるとき、重み付けられた平均値は、3つの入力MUからの結果として生じる関節角度を決定するために計算される。
【0039】
脚の関節を考察する。動きシーケンスにおけるあるフレームに関して、脚の関節の重みは、
キックMU:w=1.0、
パンチMU:w=0.1、
頭の振りMU:w=0.1である。
【0040】
【数2】
θLeg=(wKick θKick+wPunch+wHdShk θHdShk)/ (2)
(wKick+wPunch+wHdShk)
=((1)θKick+(0.1)θPunch+(0.1)θHdShk)/1.2
1.0のキックの重みは他のMUの0.1の重みよりもずっと大きい。したがって、混合されるための3つのMUのうち、キックMUは脚の関節を支配する。
【0041】
図16〜図18で示されるように、上記の動きミックスアルゴリズムは併合されるための関節角度の重み付け平均値を計算する。しかしながら、ユーザは新しい動きを非同期に選択するので、不自然な動きを生じるフレーム間の不連続性があり得る。一つの主な動きから次の動きへの変移中のこの不連続性の問題は、バドラーフレージングと呼ばれた(Steketee S.N.,Badler N.I.著「運動調整及びフレージング制御に組み込むパラメトリックキーフレーム補間(Parametric Keyframe Interpolation Incorporating Kinetic Adjustment and Phrasing Control)」、Proc. SIGGRAPH 1985年, Computer Graphics、 第19巻,第3号,第225〜262ページ参照)。
【0042】
このフレージング問題を解決するために、本発明は時間の変数である重み係数を使用する。重みは、MUの最初でゼロから徐々に増加し、最後に終了で減少する。これは2つのMU間の粗っぽい変移を最少にする。図25は、MUフレームの重みが時のたつにつれていかに変化することが出来るかに対する色々な可能性を示している。粗い変移を最少にするために、MUの最初に近く及びMUの最後に近いフレームは小さくされる。フレージング重みの好ましい実施の形態例は図26で示されることができる。
【0043】
MUは、図26においてフレーム0からNmまで規定される。最初の少数の動きのフレームでは、フレームは低い優先権を有する。しかし徐々に、フレーム毎に、重みが増加される。同様に、MUの最後で、最後の少数のフレームの重みは減少する。したがって、MUの最初と最後で、フレームは低い優先権を有するので、フレームは結果として生じる合成動きに多くの影響を与えない。しかしながら、中間のフレームはその最高の優先権にあるので、それはその合成に著しく影響を及ぼす。
【0044】
最初の式(1)はこのフレーム重みを含まない。それで、より完備な式は、すなわち、
【0045】
【数3】
θJ=(Σn i=0 wiFwiJ θiFJ)/(Σn i=0 wiFwiJ) (3)
である。
【0046】
ここで、
wiF iフレームのための重み(重みはフレームにおける全ての関節に適用する)である。
【0047】
基本的に、フレームの重みは、関節の重みが掛けられ、その結果として生じる関節の重みの積を生じる。図20で示された例では、各結果として生じる“混合MU”時間ステップ(t0、t1、t2....)は他と関係なく計算される。tiに対するこの計算への入力は、ti“肱の曲げMU”、ti“頭の振りMU”、及びti“膝の曲げMU”関節角度値である。各関節角度は他の関節と関係なく計算される。これは、式(3)から直接生じる。この式(3)は、それが図20の例に直接に対応するように図21で拡大される。単一のステップtiに対する単一の関節角度を決定する計算に関しては、3つのMUの各々からの積は合計される。
【0048】
図22におけるフローチャートは、図20、図16〜18及び式(3)をさらに説明するためのものである。図22における最大のループは時間ステップ毎に一回実行する。すなわち、動きにおけるAFのアニメーションの中の各フレームに対して一度である。次のより小さいループはAFにおける各関節に対して一度実行する。これは式(3)の計算を実行する。
【0049】
図22もまた、“動きユニットのライブラリ”の存在及び機能性と“同時に実行しているMU”の待ち行列を示している。図16〜18で示されるように、プレーヤーは開始するための新しいMUを選択するとき、そのMUは、動きユニットのライブラリから同時に実行しているMUの待ち行列の中へ挿入される。この新しい動きが完了されるとき(多分多数の時間ステップ、ti、その後)、それは“同時に実行しているMU”の待ち行列から取り去られる。したがって、この待ち行列は動的である。待ち行列に加えられるMUは各時間ステップを変更し得る。より多くのMUが付加され、終了したMUが待ち行列から取り去られる。図22の最も小さい最も内部のループは、“同時に実行しているMU”の待ち行列に加えられる各MUに対して一度実行する。
【0050】
多くの異なるMUからの重みがいかに相互作用するかの他の例を考察する前に、アイドルの動きを理解することが重要である。
【0051】
実行しているMUの優先権リストの最下部には常にアイドルMUがある。各アプリケーションに関しては、アイドルは異なる動きのタイプである。例えば、スポーツゲームは、アイドルのMUがいつもの所での揺れの動きであるようさせ得る。しかし、料理又は木細工を説明するアニメーションは、アイドルのMUが、テーブルの上面板の上約10cmに保持された両手で直立した姿勢位置を図示させる。
【0052】
アイドルのMUは非常に低い優先権の重みを有しているので、もし他のMUが実行しているならば、そのMUが支配する。しかしながら、いかなる他のMUも現在は実行していないとき、アイドルMUが支配する。MUの最後での変移の間、最後の少数のフレームのためのMUの重み優先権はアイドルMUの優先権よりも小さくなるので、変移が最後のMUとアイドルMUとの間で生じる。
【0053】
本発明の前記フレージング制御及び前記アイドルMUをより十分説明するために、好ましい実施の形態例の例を検討される。図27における例を考察する。これは、ユーザが実行するように選択したMUの待ち行列を示す。下記のリストは、どのMUが何時混合され、かつどのMUが支配するかを説明する。
【0054】
t0 いかなるMUもユーザによって選択されない。アイドルのMUが、支配する。
【0055】
t1 キックMUが支配する。
【0056】
t2 キックMU及びパンチMUの両方が低い重みを有する。これらのMUとアイドルのMUの混合。
【0057】
t3 パンチMU及び頭の振りMUが平等に支配する。
【0058】
ここで、動きは非同期に開始し停止する。
【0059】
同時に異なるMUは実行され、そして,正味の結果は、混合されている各MUにおける関節の重み付けられた平均値計算に基づいている。
【0060】
本発明の一つの実施の形態例はAFで感情状態をシミュレートする。一つの値が、それがAFの動きの結果として生じる結末にどのくらい影響を与えるかにおいてこの感情状態の強度を決定する。例えば、疲れている、へとへとになった、又は怠けている感情状態が模擬される。他の背景(アイドル)MUは実行しているMUの待ち行列に加えられる。図24のMU 指数は、フレーム番号はMUにおける最後のフレームが実行された後、MUにおける最初のフレームに戻るようにセットされるため、このMUは常に待ち行列にある。これは前記アイドルMUによって使用されるのと同じである。すなわち、それは待ち行列でループし、決して終わらない。
【0061】
実際の人間は段々疲れてくるにつれ、あまり精力的でなく、より無気力に動く傾向がある。すなわち、実際の人間は疲れてくるにつれ、動きは最小にされ、それによってエネルギーを温存する。
【0062】
本発明の一つの実施の形態例における疲労のシミュレーションを実施するために、疲労した身体姿勢を表す基本的に重み付けられたMUは混合されているMUの待ち行列に加えられる。もしAFが健康で、かつ疲れていないならば、疲労MUの重みは0であるので、それは結果として生じる動きにいかなる影響も与えない。しかしAFは益々疲れてくるにつれ、この疲労MUの重みは0.0から1.0に増加する。
【0063】
例えば、図28上段において、通常の(疲労=0.0)MUが示される。中段において、行為者は大変疲れているので(疲労=0.5)、動きはあまり精力的でない。下段において(疲労=1)、動きが非常に無気力である。
【0064】
上記の前記フレージング制御に加えて、フレーム平滑化技術のための付加フレームは任意である。図18で示されるように、アニメーションにおける各フレームに関しては、動きミキサーは、フレームを生じるように重み付けられた平均値計算で1以上のフレームを結合する。たとえこれが関節の重みの重み平均値であり、かつフレージング制御の重みがMUの最初と最後で不連続性を最少にするように使用されたとしても、なおいくらかのフレーム間の不連続性がある。アニメーションフレームのスプライン平滑化はこれを平滑化するために使用されることが出来る。
【0065】
各アプリケーションは、動きの平滑化のための異なる要件及び処理能力に関して制約を有している。多くのより簡単なアプリケーションは、このフレームスプライン計算をスキップし、かつ重み付けられた合計計算によって計算されるようにキャラクターを直接動画にする。その他はさらに複雑なスプライン平滑化を行う。
【0066】
平滑化の要求と低計算力との妥協は、一定のスプライン計算を使用することによって達成されることができる。これは、幾分複雑なスプライン計算を、丁度他の重み付けられた平均値計算であるように減少する。本発明の好ましい実施の形態例は、3つのフレームの関節回転値を使用する非周期的なBスプラインに基づくフレーム間平滑化フィルタを使用する。Bスプライン展開は、他の著作(Mortenson M.E.著「ジオメトリック的モデル化」、 John Wiley & Sons, 1985年、第125〜147ページに記載されている)に見出されることができる。3点を使用する非周期的なBスプラインのための式は、
【0067】
【数4】
pi(u)=1/2[(1−u)2pi−1+(−2u2+2u+1)pi+u2pi+1] (4)
である。
【0068】
これは、0から1.0までのuの範囲のための3点間の平滑な曲線を計算する。MUが現在混合され、かつ同時に実行しているとき、目的は連続性を確保することにある。いろいろな種類のスプライン計算はこれを行うことが出来る。好ましい実施の形態例は、アニメーションにおける各フレームのためのu=0.75で一点を決定する前述のBスプラインを使用する。
【0069】
このようにスプラインを使用する他の利点は、各計算フレームがキーフレームとして見なされることができることである。したがって、入念に開発されたキーフレームのアルゴリズムは、所望されるいかなる中間フレームも計算するために使用され得る。これは、現在使用されている記憶されたMUのフレーム速度にかかわらず、アプリケーションが出力フレーム速度の制御を有することを可能にする。中間フレームはアニメーションを増速又は減速するために計算されることができる。
【0070】
それにもかかわらず、本発明に提示された全ての動きアルゴリズムの主要な目的は、PC又はゲームのようなローエンドプラットホームにおけるユーザ方式のAFアニメーションを可能にするための高速方法を提供することにある。したがって、多くの場合、(フレーム間の連続性を確保するための)スプラインについてのこの節での議論は、あまりにも時間をかけて行われる多数のプラットホームのための計算である。もしそうであるならば、このステップはスキップされ得る。重み付けられた平均値の出力はアニメーションのそのフレームにおけるAFの配置になる。連続性は確保されないが、しかし各MUの最初と最後での優先権ランプのフレージング制御技術は、MUの変移中身体における各関節の回転の急な変化を最少にするのに役立つ。
【0071】
本発明におけるアルゴリズムは、最近に使用可能にされる手ごろなPC及びゲームプラットホームによって引き起こされる要求を十分に満たす。これらのプラットホームは、現在、AFアニメーションを含む人を興奮させるアニメーションに役に立つのに十分強力である。しかしながら、これらのプラットホームは、現在のところ、開発されたAFアニメーション技術の資源を直接使用するのに十分強力でない。
【0072】
本発明が寄与するものは、ゲーム又は教育ソフトウェアのエンドユーザが多関節体を移動させるいくつかのアプリケーションを実行している間に記憶された動きユニット(MU)を対話式に、かつ直感的に選択及び混合することを可能にするユーザ方式のアルゴリズムのセットである。オフラインの他の入念に開発された技術はMUを形成するために使用されることができる。これらのMUは、前述の高速アルゴリズムを使用するローエンドプラットホームにおいて混合及び実行される。
【0073】
【発明の効果】
以上述べたところから明らかなように本発明は、安価で、対話式で、しかもリアルタイムでコンピュータAFアニメーションを生成できる。
【図面の簡単な説明】
【図1】図1は、本発明が適用される全体的アプリケーション環境を示す。
【図2】図2は、図1における“プレーヤー”ブロックをさらに図示する。
【図3】図3は、図1における“インタフェース”ブロックをさらに図示するものであって、図3(a)は手主導装置、図3(b)は足、膝及び/又は腰の位置及び動きがシステムに入力を供給する脚主導入力システム、図3(c)は可能な足、手及び頭の組合せの対話式制御システムの例を示している。
【図4】図4は、図1の“視界”ブロックをさらに図示し、図4(a)は、コンピュータ生成シーンがプレーヤーの前方に映写される実施の形態例を示し、図4(b)はプレーヤーが見るであろうスクリーン形状の例を示す。
【図5】図5は、図1の“視界”ブロックをさらに図示し、図5(a)は、頭部取付けシステムの可能な構成を示し、図5(b)は、生成及び表示されることができるシーンの2つの視野を示している。
【図6】図6は、本発明の一つの実施の形態例を示し、図6(a)は一人のプレーヤーが視界の中にある一つのAFの動きを制御する状態、図6(b)はAIプログラムによって支援されているプレーヤーを示している。
【図7】図7は、視界の中にある複数の多関節体を含む本発明の他の実施の形態例を示し、図7(a)は一人のプレーヤーが複数のAFの動きを制御する状態、図7(b)は複数のAFを制御する際のプレーヤー及びAIプログラムの組合せを示す。
【図8】図8は、本発明の実施の形態例のより多くの組合せを示し、図8(a)は、複数のAFを制御する複数のプレーヤーを示し、図8(b)は、AIプログラムであって、プレーヤーでない全ての入力の例を示し、図8(c)は、複数のAFを制御するための一人のプレーヤー(複数のプレーヤー)及び一つのAIプログラム(複数のAIプログラム)の組合せを使用する本発明の実施の形態例を示す。
【図9】図9は、図1における“コンピュータ”ブロックをさらに図示する。
【図10】図10は、図9におけるジオメトリックエンジンの内容をさらに図示する。
【図11】図11は、図9における画像発生器の内容をさらに図示する。
【図12】図12は、本発明のための多関節体におけるいろいろな関節の実施の形態例を示し、図12(a)は、関節である共通軸上で軸回転する2つの静的セグメントを示し、図12(b)は、ボールソケット形関節を示し、図12(c)は、コンピュータ生成世界の中にあることがあるAF形状を示し、図12(d)は、セグメントがはっきりと、かつ別々に規定されていない例を示し、図12(d)の例は、人間の肱の関節、上腕及び下腕を示す。
【図13】図13は、本発明のアルゴリズムによって操作されるAFのための関節の骨格の2つの例を示し、図13(a)及び図13(b)に図示された人間は、図で目で見ることができない3次元面を有する。
【図14】図14は、いかなる人間のような形状とも異なっている2つの可能なAF骨格形状を示している。
【図15】図15は、AFの外部面の一つの例を示す。
【図16】図16は、図1に示されるような本発明の詳細をさらに示し、“インタフェース”等を示すブロック図である。
【図17】図17は、図1に示されるような本発明の詳細をさらに示し、図16の“MUミックスアルゴリズム”の内容を示すフローチャートである。
【図18】図18は、図1に示されるような本発明の詳細をさらに示し、図17の内容を細区分したものである。
【図19】図19は、図16〜図18のMUライブラリの中のMUが発生される可能な方法を示している。
【図20】図20は、AFのための結果として生じる混合MUの動きを生じるように本発明の方法により混合される3つのMUを示している。
【図21】図21は、図20のケースの重みを説明した図である。
【図22】図22は、図21のケースの実行フローチャートである。
【図23】図23は、MUのファイル細目を示している。
【図24】図24は、図18に示されたように同時に実行するMUの待ち行列の実施の形態例を示している。
【図25】図25は、本発明の中にあるランプ重みのいろいろな実施の形態例を示している。
【図26】図26は前記フレーム重みの他の実施の形態例を示す。
【図27】図27は、MUを混合する本発明の例を示している。
【図28】図28は、本発明の一つの実施の形態例で可能である疲労のシミュレーションを示している。
【符号の説明】
1 プレーヤ
2 インタフェース
3 コンピュータ
4 視界
31 多関節体のための動きを生成
32 ジオメトリック エンジン
33 画像発生器
Claims (10)
- コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備え、
前記結合するステップで、前記割り当てられた重みの平均値に関連された計算に従って前記複数の動きユニットを結合することを含む方法。 - コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備え、
前記結合するステップで、所定の優先権方式に従って前記複数の動きユニットに重みを割り当てる方法。 - コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備え、
前記複数の動きユニットの各々の最初と最後で多関節体の動きを減少させる方法。 - コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備え、
隣接するフレーム間の不連続性を減少するために重み付けられた平均値を使用して2つ以上のフレームを結合するフレーム間を平滑化する方法。 - コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関 節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備え、
前記複数の動きユニットの一つが、ユーザがいかなる他の動きユニットも選択していないときだけ多関節体の動きを制御するアイドル動きユニットである方法。 - コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備え、
前記選択された動きユニットの各々が同時に実行している動きユニットの待ち行列に加えられる方法。 - コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備え、
フレームの重みを前記一連のフレームにおける各フレームに割り当てることをさらに含み、
前記複数の動きユニットを結合するために使用される計算が、各動きユニットに割り当てられた重み及び前記フレーム重みに基づいている方法。 - コンピュータアニメーションにおける一連のフレームの中の多関節体の動きを生成するように複数の動きユニットを操作する方法であって、前記多関節体が複数の関節を含み、かつ各動きユニットが特定の動きのための関節回転角を規定し、
前記複数の動きユニットの各々に重みを割り当てることにより、前記多関節体における前記複数の関節の各々に、各動きユニットに割り当てられた個別の重みを対応させるステップと、
複数の動きユニットを選択するステップと、
その選択された複数の動きユニット同士を、対応するフレームの多関節体の対応する関節回転角同士を前記重み付しながら融合することにより、組み合わせ、その結果前記選択された複数の動きユニットを結合するステップとを備えた方法。 - 予め前記複数の動きユニットを生成し、かつ前記複数の動きユニットをライブラリに記憶しておくことを特徴とする請求項8記載の方法。
- 前記多関節体が人間を表し、かつ前記複数の動きユニットの一つが前記多関節体の疲労度を示していることを特徴とする請求項8記載の方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US33756694A | 1994-11-10 | 1994-11-10 | |
| US08/337566 | 1994-11-10 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH08212373A JPH08212373A (ja) | 1996-08-20 |
| JP3579148B2 true JP3579148B2 (ja) | 2004-10-20 |
Family
ID=23321049
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP28954195A Expired - Fee Related JP3579148B2 (ja) | 1994-11-10 | 1995-11-08 | 多関節体の動きを生成するように複数の動きユニットを操作する方法及びそのシステム |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US5877778A (ja) |
| EP (1) | EP0712097A2 (ja) |
| JP (1) | JP3579148B2 (ja) |
Families Citing this family (51)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6285380B1 (en) * | 1994-08-02 | 2001-09-04 | New York University | Method and system for scripting interactive animated actors |
| CA2213884C (en) * | 1996-08-21 | 2001-05-22 | Nippon Telegraph And Telephone Corporation | Method for generating animations of a multi-articulated structure, recording medium having recorded thereon the same and animation generating apparatus using the same |
| JPH10188028A (ja) * | 1996-10-31 | 1998-07-21 | Konami Co Ltd | スケルトンによる動画像生成装置、該動画像を生成する方法、並びに該動画像を生成するプログラムを記憶した媒体 |
| JP3153141B2 (ja) * | 1997-02-07 | 2001-04-03 | 日本電気株式会社 | 仮想擬似人物像生成システム及び仮想疑似人物像生成方法 |
| US6061462A (en) * | 1997-03-07 | 2000-05-09 | Phoenix Licensing, Inc. | Digital cartoon and animation process |
| US6058397A (en) * | 1997-04-08 | 2000-05-02 | Mitsubishi Electric Information Technology Center America, Inc. | 3D virtual environment creation management and delivery system |
| US6307563B2 (en) * | 1997-04-30 | 2001-10-23 | Yamaha Corporation | System for controlling and editing motion of computer graphics model |
| JPH10334270A (ja) * | 1997-05-28 | 1998-12-18 | Mitsubishi Electric Corp | 動作認識装置及び動作認識プログラムを記録した記録媒体 |
| US5969721A (en) * | 1997-06-03 | 1999-10-19 | At&T Corp. | System and apparatus for customizing a computer animation wireframe |
| US6377263B1 (en) * | 1997-07-07 | 2002-04-23 | Aesthetic Solutions | Intelligent software components for virtual worlds |
| US6070269A (en) * | 1997-07-25 | 2000-06-06 | Medialab Services S.A. | Data-suit for real-time computer animation and virtual reality applications |
| US6014150A (en) * | 1997-08-01 | 2000-01-11 | Avid Technology, Inc. | System and method of defining and employing behaviors for articulated chains |
| US6501477B2 (en) | 1997-08-01 | 2002-12-31 | Matsushita Electric Industrial Co., Ltd. | Motion data generation apparatus, motion data generation method, and motion data generation program storage medium |
| US5990908A (en) * | 1997-09-22 | 1999-11-23 | Lamb & Company | Method and apparatus for processing full motion computer animation |
| AU9808298A (en) * | 1997-10-15 | 1999-05-03 | Electric Planet, Inc. | A system and method for generating an animatable character |
| US6636219B2 (en) * | 1998-02-26 | 2003-10-21 | Learn.Com, Inc. | System and method for automatic animation generation |
| US6351267B1 (en) * | 1998-12-10 | 2002-02-26 | Gizmoz Ltd | Fast transmission of graphic objects |
| US6462742B1 (en) | 1999-08-05 | 2002-10-08 | Microsoft Corporation | System and method for multi-dimensional motion interpolation using verbs and adverbs |
| US6535215B1 (en) | 1999-08-06 | 2003-03-18 | Vcom3D, Incorporated | Method for animating 3-D computer generated characters |
| US6963827B1 (en) | 1999-09-29 | 2005-11-08 | United States Postal Service | System and method for performing discrete simulation of ergonomic movements |
| JP3568861B2 (ja) * | 2000-01-27 | 2004-09-22 | 株式会社スクウェア・エニックス | ビデオゲームにおける三次元オブジェクト変形方法及びビデオゲーム装置、並びにビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体 |
| SE0000850D0 (sv) * | 2000-03-13 | 2000-03-13 | Pink Solution Ab | Recognition arrangement |
| WO2002009037A2 (en) * | 2000-07-24 | 2002-01-31 | Reflex Systems Inc. | Modeling human beings by symbol manipulation |
| JP3363136B2 (ja) * | 2000-10-31 | 2003-01-08 | コナミ株式会社 | 動画像生成方法、装置、動画像生成プログラムを記録した可読記録媒体及びビデオゲーム装置 |
| JP4011327B2 (ja) * | 2000-11-15 | 2007-11-21 | 株式会社レクサー・リサーチ | 表示オブジェクト提供装置、表示オブジェクト提供方式及び表示オブジェクト提供プログラム |
| US7110458B2 (en) * | 2001-04-27 | 2006-09-19 | Mitsubishi Electric Research Laboratories, Inc. | Method for summarizing a video using motion descriptors |
| US20050071306A1 (en) * | 2003-02-05 | 2005-03-31 | Paul Kruszewski | Method and system for on-screen animation of digital objects or characters |
| US7333111B2 (en) * | 2003-04-25 | 2008-02-19 | Honda Giken Kogyo Kabushiki Kaisha | Joint component framework for modeling complex joint behavior |
| US7164423B1 (en) * | 2003-04-30 | 2007-01-16 | Apple Computer, Inc. | Method and apparatus for providing an animated representation of a reorder operation |
| US7173623B2 (en) * | 2003-05-09 | 2007-02-06 | Microsoft Corporation | System supporting animation of graphical display elements through animation object instances |
| US7259764B2 (en) | 2003-05-14 | 2007-08-21 | Pixar | Defrobulated angles for character joint representation |
| US7333112B2 (en) * | 2003-05-14 | 2008-02-19 | Pixar | Rig baking |
| JP4559092B2 (ja) * | 2004-01-30 | 2010-10-06 | 株式会社エヌ・ティ・ティ・ドコモ | 携帯通信端末及びプログラム |
| US20050228624A1 (en) * | 2004-04-12 | 2005-10-13 | Lachman Lawrence M | System and method for modeling of liquid displacement by a leading edge of a vessel |
| US7598956B2 (en) * | 2004-04-15 | 2009-10-06 | Microsoft Corporation | Blended object attribute keyframing model |
| US7737977B2 (en) * | 2004-05-14 | 2010-06-15 | Pixar | Techniques for automatically maintaining continuity across discrete animation changes |
| WO2005116933A1 (en) * | 2004-05-14 | 2005-12-08 | Pixar | Techniques for automatically maintaining continuity across discrete animation changes |
| US7995065B2 (en) * | 2005-09-23 | 2011-08-09 | Samsung Electronics Co., Ltd. | Animation reproducing apparatus and method |
| US7978206B2 (en) * | 2005-11-28 | 2011-07-12 | Autodesk, Inc. | Look-up table action |
| US7999827B2 (en) * | 2005-11-28 | 2011-08-16 | Autodesk, Inc. | Method and system for generating dynamic blocks |
| US7860691B2 (en) * | 2005-11-28 | 2010-12-28 | Autodesk, Inc. | Dynamic blocks |
| US7589742B2 (en) * | 2006-03-06 | 2009-09-15 | Microsoft Corporation | Random map generation in a strategy video game |
| US7728837B2 (en) * | 2006-03-06 | 2010-06-01 | Microsoft Corporation | Angular animation of a physical model |
| JP2009093437A (ja) * | 2007-10-09 | 2009-04-30 | Sega Corp | 画像表示プログラムおよび画像表示装置 |
| US9383895B1 (en) | 2012-05-05 | 2016-07-05 | F. Vinayak | Methods and systems for interactively producing shapes in three-dimensional space |
| CN104361621A (zh) * | 2014-10-20 | 2015-02-18 | 厦门大学 | 一种基于四维球面轨迹的运动编辑方法 |
| CN108846884A (zh) * | 2018-05-29 | 2018-11-20 | 电子科技大学 | 一种三维动画算法的自适应权重设置方法 |
| CN110102050B (zh) * | 2019-04-30 | 2022-02-18 | 腾讯科技(深圳)有限公司 | 虚拟对象显示方法、装置、电子设备及存储介质 |
| CN111524204B (zh) * | 2020-05-06 | 2023-06-27 | 杭州小影创新科技股份有限公司 | 一种人像发丝动漫化纹理生成方法 |
| EP4186032A4 (en) | 2020-07-24 | 2024-02-07 | O3 Story Technologies, Inc. | SYSTEMS AND METHODS FOR COMPUTER ANIMATION USING A MACHINE TO DEFORM A SEQUENCE OF OPERATIONS |
| CN115618155B (zh) * | 2022-12-20 | 2023-03-10 | 成都泰盟软件有限公司 | 一种生成动画的方法、装置、计算机设备及存储介质 |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5214758A (en) * | 1989-11-14 | 1993-05-25 | Sony Corporation | Animation producing apparatus |
| US5101364A (en) * | 1990-02-09 | 1992-03-31 | Massachusetts Institute Of Technology | Method and facility for dynamic video composition and viewing |
| US5483630A (en) * | 1990-07-12 | 1996-01-09 | Hitachi, Ltd. | Method and apparatus for representing motion of multiple-jointed object, computer graphic apparatus, and robot controller |
| US5261041A (en) * | 1990-12-28 | 1993-11-09 | Apple Computer, Inc. | Computer controlled animation system based on definitional animated objects and methods of manipulating same |
| JP2538488B2 (ja) * | 1992-10-27 | 1996-09-25 | 株式会社バンダイ | ゲ−ム装置 |
-
1995
- 1995-11-07 EP EP95117529A patent/EP0712097A2/en not_active Withdrawn
- 1995-11-08 JP JP28954195A patent/JP3579148B2/ja not_active Expired - Fee Related
- 1995-12-12 US US08/571,293 patent/US5877778A/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| US5877778A (en) | 1999-03-02 |
| JPH08212373A (ja) | 1996-08-20 |
| EP0712097A2 (en) | 1996-05-15 |
| EP0712097A3 (ja) | 1996-06-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3579148B2 (ja) | 多関節体の動きを生成するように複数の動きユニットを操作する方法及びそのシステム | |
| US6317132B1 (en) | Computer animation method for creating computer generated animated characters | |
| US6057859A (en) | Limb coordination system for interactive computer animation of articulated characters with blended motion data | |
| US6191798B1 (en) | Limb coordination system for interactive computer animation of articulated characters | |
| Kalra et al. | Real-time animation of realistic virtual humans | |
| US6088042A (en) | Interactive motion data animation system | |
| US8498849B1 (en) | Wrinkle simulation on fabric based on three arm joint angles | |
| WO1997040471A1 (en) | Limb coordination system for interactive computer animation of articulated characters with blended motion data | |
| Boulic et al. | Versatile walk engine. | |
| Tost et al. | Human body animation: a survey | |
| US7012608B1 (en) | Simulation device | |
| Popovic | Editing dynamic properties of captured human motion | |
| Xia et al. | Recent advances on virtual human synthesis | |
| Popović | Controlling physics in realistic character animation | |
| Jones et al. | Dynamic sprites: artistic authoring of interactive animations | |
| Dow et al. | Fast techniques for mixing and control of motion units for human animation | |
| Thalmann et al. | The Making of the Xian terra-cotta Soldiers | |
| Ibodullaev et al. | Hybrid Approaches to 3D Avatar Modeling in Virtual Learning Environments: An Analysis of Spline, Polygonal, and R-Function Methods | |
| DOW et al. | Fast Techniques for Mixing and Control of | |
| Yeşil | Realistic rendering of a multi-layered human body model | |
| Pelechano et al. | A Framework for Rendering, Simulation and Animation of Crowds. | |
| Magnenat-Thalmann et al. | Virtual humans | |
| CN120931783A (zh) | 基于皮肤框架的骨骼蒙皮方法和装置 | |
| Kim et al. | Realtime control for motion creation of 3d avatars | |
| Magnenat-Thalmann et al. | Virtual Humans on Stage |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040316 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040514 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040706 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040715 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070723 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080723 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090723 Year of fee payment: 5 |
|
| LAPS | Cancellation because of no payment of annual fees |