[go: up one dir, main page]

JP3625201B2 - 3次元モデル変形プログラム、3次元モデル変形方法及びビデオゲーム装置 - Google Patents

3次元モデル変形プログラム、3次元モデル変形方法及びビデオゲーム装置 Download PDF

Info

Publication number
JP3625201B2
JP3625201B2 JP2001326122A JP2001326122A JP3625201B2 JP 3625201 B2 JP3625201 B2 JP 3625201B2 JP 2001326122 A JP2001326122 A JP 2001326122A JP 2001326122 A JP2001326122 A JP 2001326122A JP 3625201 B2 JP3625201 B2 JP 3625201B2
Authority
JP
Japan
Prior art keywords
frame
vertex
matrix
coordinate
transformation matrix
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
Application number
JP2001326122A
Other languages
English (en)
Other versions
JP2003132366A (ja
Inventor
誠 山口
Original Assignee
株式会社コナミコンピュータエンタテインメントスタジオ
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 株式会社コナミコンピュータエンタテインメントスタジオ filed Critical 株式会社コナミコンピュータエンタテインメントスタジオ
Priority to JP2001326122A priority Critical patent/JP3625201B2/ja
Priority to US10/274,930 priority patent/US7113189B2/en
Priority to DE60211827T priority patent/DE60211827T2/de
Priority to EP02023736A priority patent/EP1306114B1/en
Publication of JP2003132366A publication Critical patent/JP2003132366A/ja
Application granted granted Critical
Publication of JP3625201B2 publication Critical patent/JP3625201B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • A63F13/10
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、変形すべき対象を規定するためのクラスタに関連付けられた頂点を有する複数のポリゴンから構成された3次元モデルを一連のモーションに関するフレーム毎のデータから描画周期に対応させて変形するビデオゲーム装置、当該ビデオゲーム装置に用いられる3次元モデル変形プログラム及び3次元モデル変形方法に関するものである。
【0002】
【従来の技術】
従来、ビデオゲームにおいては、登場するキャラクタ、例えば人間を模したキャラクタは、頭、上腕、下腕、手、胸、腰、股、脛、足等の人体の各パーツからなるモデルから構成されており、これら各モデルは位置設定用としてのみ用いられる骨(スケルトン)に肉付けされる形で設定されている。すなわち、各モデルは通常複数のポリゴンから構成されており、これら各ポリゴンの頂点は骨の中心座標(骨の位置を設定するための基準となる座標である基準座標)からの位置データとして規定されて管理されている。そして、ビデオゲームにおいてキャラクタの一連のモーションを表示する場合、ある瞬間のフレームにおけるキャラクタの形状は、当該フレームでの各骨の位置を計算し、次いでこれらの各骨に付随する各ポリゴンの頂点位置を計算することによって求められる。
【0003】
【発明が解決しようとする課題】
しかしながら、上記のスケルトンを用いてキャラクタを表現する場合、スケルトンが人体の各パーツ毎に設定されており、キャラクタの細かな変形処理を行うことができない。例えば、キャラクタの頭に対して1つのモデル(スケルトン)が設定されている場合、頭を傾ける等の大まかな動作を表現することはできるが、キャラクタの顔の細かい表情を表現することはできない。
【0004】
一方、コンピュータ・グラフィックスの分野において、3次元モデルを構成するポリゴンの複数の頂点にクラスタを関連付け、このクラスタを移動させることによって当該クラスタに関連付けられている複数の頂点を移動させるクラスタ変形処理が行われている。
【0005】
例えば、FAMOUSfaces Animator(Famous Technologies,Pty.Ltd.製)等のフェイシャルアニメーションツールがコンピュータ・グラフィックスの分野において用いられている。このソフトウエアでは、3次元モデルを構成するポリゴンまたはナーブスモデルの複数の頂点をグループ化して各グループに対してクラスタを設定し、クラスタ毎に当該クラスタに属する頂点を移動させる。また、一つの頂点に複数のクラスタに関連付け、当該頂点の各クラスタに対する関連付け度合いを示す比重値を設定することもでき、複数のクラスタの比重値に応じて当該頂点を移動させることができる。
【0006】
このようにして、上記のクラスタを用いた3次元モデルの変形処理では、3次元モデルを細かく変形させることができ、人間の顔の複雑な表情等を容易に作成することができるが、ビデオゲームに3次元モデルの変形処理を適用する場合、ビデオゲームに登場するキャラクタを含むゲーム画像をフレーム周期毎に高速で描画する必要がある。
【0007】
しかしながら、このような描画を行うためには多数のポリゴンの各頂点に対する膨大な位置計算を行わなければならないため、当該計算をフレーム周期内に処理することができず、コンピュータ・グラフィックスの分野におけるクラスタを用いた3次元モデルの変形処理をそのままビデオゲームに適用することはできない。
【0008】
本発明は上記に鑑みてなされたもので、クラスタを用いた3次元モデルの変形処理をビデオゲームにおける描画周期毎に行うことができる3次元モデル変形プログラム、3次元モデル変形方法及びビデオゲーム装置を提供することを目的とする。
【0009】
【課題を解決するための手段】
請求項1記載の本発明は、スケルトンではなく、変形すべき対象を規定するためのクラスタに関連付けられた頂点を有する複数のポリゴンから構成された3次元モデルを一連のモーションに関するフレーム毎のデータから描画周期に対応させて変形するための3次元モデル変形プログラムであって、
第1のフレームにおける頂点と当該頂点に関連付けられたクラスタとの関連付け度合いを示す比重値を表す比重行列と、前記第1のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列と、前記第1のフレームと異なる第2のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列の逆行列となる逆座標変換行列とを取得する行列取得手段と、
前記比重行列と、前記座標変換行列と、前記逆座標変換行列と、前記第2のフレームにおける頂点のワールド座標とを用いて前記第1のフレームにおける頂点のワールド座標を求めるワールド座標算出手段としてビデオゲーム装置を機能させることを特徴とする3次元モデル変形プログラムである。
【0010】
請求項1記載の本発明に従えば、変形すべき対象を規定するためのクラスタに関連付けられた頂点を有する複数のポリゴンから構成された3次元モデルを一連のモーションに関するフレーム毎のデータから描画周期に対応させて変形するための3次元モデル変形プログラムは、第1のフレームにおける頂点と当該頂点に関連付けられたクラスタとの関連付け度合いを示す比重値を表す比重行列と、前記第1のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列と、前記第1のフレームと異なる第2のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列の逆行列となる逆座標変換行列とを取得する行列取得手段と、前記比重行列と、前記座標変換行列と、前記逆座標変換行列と、前記第2のフレームにおける頂点のワールド座標とを用いて前記第1のフレームにおける頂点のワールド座標を求めるワールド座標算出手段としてビデオゲーム装置を機能させる。
【0011】
すなわち、ビデオゲーム装置によって、第1のフレームにおける頂点と当該頂点に関連付けられたクラスタとの関連付け度合いを示す比重値を表す比重行列と、第1のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列と、第1のフレームと異なる第2のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列の逆行列となる逆座標変換行列とが取得され、比重行列と、座標変換行列と、逆座標変換行列と、第2のフレームにおける頂点のワールド座標とを用いて第1のフレームにおける頂点のワールド座標が求められる。
【0012】
このようにして、任意のフレーム(第1のフレーム)における比重行列及び座標変換行列と特定のフレーム(第2のフレーム)における逆座標変換行列及び頂点のワールド座標から任意のフレームにおける頂点のワールド座標を求めることができるので、クラスタを用いた3次元モデルの変形処理を高速に行うことができる。また、各フレームにおける頂点のワールド座標を所定のメモリに予め記憶する必要がなくなり、メモリの記憶容量を低減することができる。
【0013】
請求項2記載の本発明は、前記比重行列、前記座標変換行列及び前記逆座標変換行列の積を頂点が関連付けされたクラスタ毎に求めて各積を加算した加算行列を求める加算手段として前記ビデオゲーム装置をさらに機能させ、
前記ワールド座標算出手段は、前記加算行列と前記第2のフレームにおける頂点のワールド座標との積から前記第1のフレームにおける頂点のワールド座標を求めることを特徴とする。
【0014】
請求項2記載の本発明に従えば、3次元モデル変形プログラムは、比重行列、座標変換行列及び逆座標変換行列の積を頂点が関連付けされたクラスタ毎に求めて各積を加算した加算行列を求める加算手段としてビデオゲーム装置をさらに機能させ、ワールド座標算出手段は、求められた加算行列と第2のフレームにおける頂点のワールド座標との積から第1のフレームにおける頂点のワールド座標を求める。
【0015】
すなわち、比重行列、座標変換行列及び逆座標変換行列の積が、頂点が関連付けされたクラスタ毎に求められ、求められた各積を加算した加算行列が求められ、求められた加算行列と第2のフレームにおける頂点のワールド座標との積から第1のフレームにおける頂点のワールド座標が求められる。
【0016】
このようにして、加算行列と頂点のワールド座標との積のみで任意のフレーム(第1のフレーム)における頂点のワールド座標を求めることができるので、標準的なAPI(アプリケーション・プログラミング・インターフェース)を用いて3次元モデルの変形処理を高速に行うことができる。
【0017】
請求項3記載の本発明は、前記第2のフレームが一連のモーションに関する1番目のフレームであることを特徴とする。
【0018】
請求項3記載の本発明に従えば、第2のフレームが一連のモーションに関する1番目(最初)のフレームであるので、2番目以降の全てのフレームにおける頂点のワールド座標を1番目のフレームにおける頂点のワールド座標から求めることができる。
【0019】
請求項4記載の本発明は、前記座標変換行列がフレーム毎にメモリテーブルに予め記憶されていることを特徴とする。
【0020】
請求項4記載の本発明に従えば、座標変換行列がフレーム毎にメモリテーブルに予め記憶されているので、メモリーテーブルから座標変換行列を読み出すだけで必要な座標変換行列を取得することができる。
【0021】
請求項5記載の本発明は、前記クラスタが、頂点毎に当該頂点が関連付けられているクラスタを特定するための識別情報を付して管理されることを特徴とする。
【0022】
請求項5記載の本発明に従えば、クラスタが、頂点毎に当該頂点が関連付けられているクラスタを特定するための識別情報を付して管理され、この識別情報から頂点が関連付けられているクラスタを特定することができるので、頂点毎に関連付けられているクラスタを容易に特定することができる。
【0023】
請求項6記載の本発明は、前記識別情報に関連させて比重値が設定されていることを特徴とする。
【0024】
請求項6記載の本発明に従えば、頂点が関連付けられているクラスタを特定するための識別情報に関連させて比重値が設定されているので、各頂点に直接比重値を設定する場合に比して、記憶すべきデータの容量を低減することができる。
【0025】
請求項7記載の本発明は、スケルトンではなく、変形すべき対象を規定するためのクラスタに関連付けられた頂点を有する複数のポリゴンから構成された3次元モデルを一連のモーションに関するフレーム毎のデータからビデオゲーム装置を用いて描画周期に対応させて変形する3次元モデル変形方法であって、
前記ビデオゲーム装置が、第1のフレームにおける頂点と当該頂点に関連付けられたクラスタとの関連付け度合いを示す比重値を表す比重行列と、前記第1のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列と、前記第1のフレームと異なる第2のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列の逆行列となる逆座標変換行列とを取得する行列取得ステップと、
前記ビデオゲーム装置が、前記比重行列と、前記座標変換行列と、前記逆座標変換行列と、前記第2のフレームにおける頂点のワールド座標とを用いて前記第1のフレームにおける頂点のワールド座標を求めるワールド座標算出ステップとを含むことを特徴とする3次元モデル変形方法である。
【0026】
請求項7記載の本発明に従えば、変形すべき対象を規定するためのクラスタに関連付けられた頂点を有する複数のポリゴンから構成された3次元モデルを一連のモーションに関するフレーム毎のデータからビデオゲーム装置を用いて描画周期に対応させて変形する3次元モデル変形方法は、ビデオゲーム装置が、第1のフレームにおける頂点と当該頂点に関連付けられたクラスタとの関連付け度合いを示す比重値を表す比重行列と、第1のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列と、第1のフレームと異なる第2のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列の逆行列となる逆座標変換行列とを取得する行列取得ステップと、ビデオゲーム装置が、比重行列と、座標変換行列と、逆座標変換行列と、第2のフレームにおける頂点のワールド座標とを用いて第1のフレームにおける頂点のワールド座標を求めるワールド座標算出ステップとを含む。
【0027】
すなわち、ビデオゲーム装置によって、第1のフレームにおける頂点と当該頂点に関連付けられたクラスタとの関連付け度合いを示す比重値を表す比重行列と、第1のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列と、第1のフレームと異なる第2のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列の逆行列となる逆座標変換行列とが取得され、比重行列と、座標変換行列と、逆座標変換行列と、第2のフレームにおける頂点のワールド座標とを用いて第1のフレームにおける頂点のワールド座標が求められる。
【0028】
このようにして、任意のフレーム(第1のフレーム)における比重行列及び座標変換行列と特定のフレーム(第2のフレーム)における逆座標変換行列及び頂点のワールド座標から任意のフレームにおける頂点のワールド座標を求めることができるので、クラスタを用いた3次元モデルの変形処理を高速に行うことができる。また、各フレームにおける頂点のワールド座標を所定のメモリに予め記憶する必要がなくなり、メモリの記憶容量を低減することができる。
【0029】
請求項8記載の本発明は、スケルトンではなく、変形すべき対象を規定するためのクラスタに関連付けられた頂点を有する複数のポリゴンから構成された3次元モデルを一連のモーションに関するフレーム毎のデータから描画周期に対応させて変形するビデオゲーム装置であって、
第1のフレームにおける頂点と当該頂点に関連付けられたクラスタとの関連付け度合いを示す比重値を表す比重行列と、前記第1のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列と、前記第1のフレームと異なる第2のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列の逆行列となる逆座標変換行列とを取得する行列取得手段と、
前記比重行列と、前記座標変換行列と、前記逆座標変換行列と、前記第2のフレームにおける頂点のワールド座標とを用いて前記第1のフレームにおける頂点のワールド座標を求めるワールド座標算出手段とを備えるビデオゲーム装置である。
【0030】
請求項8記載の本発明に従えば、変形すべき対象を規定するためのクラスタに関連付けられた頂点を有する複数のポリゴンから構成された3次元モデルを一連のモーションに関するフレーム毎のデータから描画周期に対応させて変形するビデオゲーム装置は、第1のフレームにおける頂点と当該頂点に関連付けられたクラスタとの関連付け度合いを示す比重値を表す比重行列と、第1のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列と、第1のフレームと異なる第2のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列の逆行列となる逆座標変換行列とを取得する行列取得手段と、比重行列と、座標変換行列と、逆座標変換行列と、第2のフレームにおける頂点のワールド座標とを用いて第1のフレームにおける頂点のワールド座標を求めるワールド座標算出手段とを備える。
【0031】
すなわち、ビデオゲーム装置によって、第1のフレームにおける頂点と当該頂点に関連付けられたクラスタとの関連付け度合いを示す比重値を表す比重行列と、第1のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列と、第1のフレームと異なる第2のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列の逆行列となる逆座標変換行列とが取得され、比重行列と、座標変換行列と、逆座標変換行列と、第2のフレームにおける頂点のワールド座標とを用いて第1のフレームにおける頂点のワールド座標が求められる。
【0032】
このようにして、任意のフレーム(第1のフレーム)における比重行列及び座標変換行列と特定のフレーム(第2のフレーム)における逆座標変換行列及び頂点のワールド座標から任意のフレームにおける頂点のワールド座標を求めることができるので、クラスタを用いた3次元モデルの変形処理を高速に行うことができる。また、各フレームにおける頂点のワールド座標を所定のメモリに予め記憶する必要がなくなり、メモリの記憶容量を低減することができる。
【0033】
【発明の実施の形態】
以下、本発明の一実施の形態によるビデオゲーム装置について図面を参照しながら説明する。図1は、本発明の一実施形態によるビデオゲーム装置の構成を示すブロック図である。
【0034】
図1に示すビデオゲーム装置1は、制御部2、画像表示部3、音声出力部4、メモリ部5及び操作入力部6を備える。制御部2は、CPU(中央演算処理装置)21、信号処理部22及び画像描画処理部23を含む。信号処理部22は、3次元乗算処理部24を含む。画像処理部3は、インターフェース(IF)回路31、デジタル/アナログコンバータ(D−A)32及びモニタ33を含む。音声出力部4は、インターフェース(IF)回路41、デジタル/アナログコンバータ(D−A)42、増幅回路43及びスピーカ44を含む。メモリ部5は、RAM(ランダムアクセスメモリ)51、ROM(リードオンリメモリ)52、インターフェース(IF)回路53及び記録媒体54を含む。RAM51は、フレームバッファ55を含む。操作入力部6は、インターフェース(IF)回路61、操作情報IF(インターフェイス)回路62及びコントローラ63を含む。
【0035】
図1において、ビデオゲーム装置1は、制御部2等から構成される家庭用ゲーム機本体と、ゲーム画像を表示するためのモニタ33並びにゲーム音声を出力するための増幅回路43及びスピーカ44を備える家庭用テレビジョンとから構成される。コンピュータ読み出し可能な記録媒体54は、家庭用ゲーム機本体に着脱可能に構成され、画像データ、音声データおよびプログラムデータからなるビデオゲームプログラム等を予め記録している。なお、記録媒体54はゲーム機本体に対して内蔵式にしてもよく、また、ビデオゲームプログラム等が記憶されたROMの他、ROMカセット、CD−ROM、DVD−ROM、フレキシブルディスク等を用いてもよい。
【0036】
記録媒体54に記憶される画像データは、ゲーム画像を構成するオブジェクト(天然構造物、人工建造物を模した静止物体等)の画像データやモーションを行うキャラクタの画像データ等を含む。このキャラクタを表す3次元モデルは、例えばキャラクタが人間を模したものである場合、頭、上腕、下腕、手、胸、腰、股、脛、足等の各パーツのモデルから構成されており、これら各パーツのモデルはそれぞれ頂点を有する複数のポリゴンから構成される。また、3次元モデルの所定部分、例えば顔の部分には、複数のクラスタが設定され、各クラスタが複数のポリゴンに関連付けられている。このクラスタは、変形すべき対象を規定するためのものであり、当該クラスタに対応付けられた頂点の集合からなる変形群を表し、例えば、クラスタが特定の点として規定される場合はクラスタハンドルとして当該クラスタに関連付けられた頂点を変形するときの変形基準点となる。
【0037】
CPU21は、アドレスバス、データバスおよびコントローラバスからなるバスを介して、各種データを一時的に記憶するRAM51、オペレーションシステム等のプログラムを記憶するROM52、インターフェース回路31,41,53,61、信号処理部22及び画像描画処理部23に接続され、ゲーム機本体内の操作および制御を行うために各部を制御する。記録媒体54が着脱式の場合、CPU21は、記録媒体54がゲーム機本体に装着された状態で記録媒体54の内部の各種データを一括して又は必要に応じて順次読み取ってRAM51に書き込む。
【0038】
RAM51は、記録媒体54から読み出されたデータを格納し、CPU21等のワークエリアとして機能する。RAM51は、モニタ33に表示される画像を一時的に記憶するフレームバッファ55を含み、フレームバッファ55は、少なくとも1画面を構成する画素(ピクセル)数に相当する記憶容量を有する。
【0039】
信号処理部22は、3次元空間内におけるキャラクタモデルや固定物等のオブジェクトモデルの位置計算や擬似カメラの視点(位置)の移動位置計算を行う他、音声データの生成、加工処理などを行う。描画データの生成処理は、信号処理部22内のAPI(アプリケーション・プログラミング・インターフェース)として機能する3次元乗算処理部24において行われる。このAPIとしては、所定のハードウエア及びソフトウエアから構成される3D(3次元)関数の規格である「OPEN GL」や「DIRECT X」等の標準的なAPIを用いることができる。
【0040】
画像描画処理部23は、RAM51に対する読み書き指令(R/W)及びRAM51内のフレームバッファ55の画素に対応する記憶位置へのアドレス指定を行い、信号処理部22からの各計算結果を利用してモニタ33に表示するべき画像データを画素(ピクセル)毎にフレームバッファ55に書き込む処理(レンダリング処理及びテクスチャーマッピング処理等)をフレーム周期で繰り返し行う。
【0041】
インターフェース回路31は、RAM51内のフレームバッファ55に書き込まれている画像データをデジタル/アナログコンバータ32へ出力する。デジタル/アナログコンバータ32は、インターフェース回路31からの画像データをアナログ信号に変換してビデオ信号をモニタ33へ出力し、モニタ33は所定のゲーム画像を表示する。
【0042】
デジタル/アナログコンバータ42は、インターフェース回路41を介して入力される音声信号をデジタル信号からアナログ信号に変換し、プリメインアンプ43はアナログ信号に変換された音声信号を増幅してスピーカ44に供給する。なお、ゲーム状況に応じて作成された音声データは、RAM51の一部領域を利用して書き込み処理されている。
【0043】
コントローラ63には、プレーヤが操作可能な操作ボタン、操作レバー等の操作部材が設けられており、これらの操作部材への操作に対応した信号が操作情報インターフェース回路62及びインターフェース回路61を経てCPU21へ導かれる。CPU21は、そのゲーム進行制御機能に基づいて、操作信号及びビデオゲームプログラムに応じてモニタ33に表示されるキャラクタ等に対してプレイヤが意図する動き、行動、表情等のモーションを実行させ、ゲームを進行させる。
【0044】
本実施の形態において、CPU6等が行列取得手段及び加算手段に相当し、3次元乗算処理部24がワールド座標算出手段に相当する。なお、本発明が適用されるビデオゲーム装置は、図1に示す家庭用のビデオゲーム装置1に特に限定されず、モニタ等が一体に構成された業務用ビデオゲーム装置、ビデオゲームプログラムを実行することによりビデオゲーム装置として機能するパーソナルコンピュータやワークステーション等にも同様に適用することができる。
【0045】
図2は、3次元モデルを構成するポリゴンの頂点の座標変換処理を説明するための模式図である。キャラクタ等を表す3次元モデルは、ローカル座標系を用いて定義されており、このローカル座標系において基準となる座標を持っている。図2において、3次元モデルはモデル100(図2中の太線部)から構成され、モデル100は複数のポリゴンから構成されたキャラクタの一部、例えば顔の一部を表している。
【0046】
また、基準点A0はモデル100が付随するクラスタAの変形基準点であり、モデル100の外側に位置し、頂点P1はモデル100を構成する1つのポリゴンの1つの頂点であり、基準点A0からのオフセット値(ベクトルV1の成分)を用いてその位置が定義されている。したがって、頂点P1のローカル座標系における位置P1aは、下記の式(1)によって表すことができる。
【0047】
P1a=(X1a,Y1a,Z1a) …(1)
クラスタAのローカル座標系上の基準点A0をワールド座標系上の点W0に座標変換する際に用いられる座標変換行列をMwaとした場合、頂点P1のローカル座標上の位置P1aは、下記の式(2)によってワールド座標系上の位置P1wとして表される。
【0048】
P1w=Mwa×P1a …(2)
座標変換行列Mwaは、クラスタAに対するローカル座標系からワールド座標系への変換順序によってパラメータの持ち方が異なるとともに、行列式も異なる。したがって、この座標変換行列Mwaに対して、予め決定された変換順序に従ったパラメータ及び行列式が設定されている。
【0049】
例えば、ローカル座標系からワールド座標系への変換が、X,Y,Z軸の各平行移動、X,Y,Z軸の回転移動、X,Y,Z軸のスケール変更という変換順序で行われるものとし、このときの各値を、X軸平行移動量=Tx、Y軸平行移動量=Ty、Z軸平行移動量=Tz、X軸回転移動量=Rx、Y軸回転移動量=Ry、Z軸回転移動量=Rz、X軸スケール値=Sx、Y軸スケール値=Sy、Z軸スケール値=Szとすると、座標変換行列Mwaは、下記の式(3)によって表される。
【0050】
【数1】
Figure 0003625201
【0051】
一方、3次元モデルを動作又は変形させるために用いられるアニメーションデータは一連のモーション(動き)として規定されており、各モーションは複数の一連のフレームの画像データとして規定されている。なお、各フレームの描画は、所定のフレーム周期、例えばビデオゲームにおいては1/60秒毎に行われ、式(3)から求めたフレーム毎のクラスタの座標変換行列Mwaを用いてクラスタに対応付けられているポリゴンの各頂点の座標を変換し、変換した各頂点をワールド座標上で繋ぎ合わせて面とすることによって描画処理が行われる。
【0052】
図3及び図4は比重(ウエイト付け)の導入によるモデルの滑らかな繋ぎの実現を説明するための模式図であり、図3は2つのモデルが互いに真っ直ぐな位置関係にあるフレームを示しており、図4は一方のモデルがクラスタの基準点側へ移動した状態におけるフレームを示している。
【0053】
図3において、顔の上部に位置する上部モデル100(図3中の上部の太線部)はクラスタAに付随し、クラスタAは基準点A0を有し、一方、顔の下部に位置する下部モデル200(図3中の下部の太線部)はクラスタBに付随し、クラスタBは基準点B0を有する。このクラスタBに付随するある1つのポリゴンのある頂点P1bに着目するとき、この点は基準点B0に付随してワールド座標変換行列Mwbにより下部モデル200上の点P1wに変換される。また、この点P1bは、図3のフレームの状態では、クラスタAから見たときに点P1aとして表すことができるものである。
【0054】
ここで、描画モーションが、ゲーム進行に従って図3に示すフレームの状態から図4に示すフレームの状態に変わった場合すなわちクラスタBの基準点B0がモデルの外側(図4において左側)に移動してクラスタBに付随する頂点が移動する場合を考える。この場合、クラスタBに付随する全てのポリゴンの頂点はクラスタBの基準点B0と同様に座標変換されるので、下部モデル200の頂点P1bは図3に示す位置から図4に示す位置に移動する。
【0055】
一方、クラスタAの基準点A0は移動しておらず、上部モデル100の頂点P1aは図3に示す位置から移動しない。この場合、上部モデル100及び下部モデル200は顔の表面の一部を構成しているため、上部モデル100と下部モデル200との隣接部分は、顔の筋肉の動き等に応じた滑らかな曲線等から構成され、例えば、図4に示す曲線L1(図4中の斜線部)の形状をとるのが自然である。
【0056】
この自然な顔の変形状態を表現するためには、点P1wがクラスタAとクラスタBの双方の影響を受けるようにすればよいことから、この影響を受ける比重を各クラスタA,Bに関連付けて設定し、点P1wが曲線L1上に位置するように、図4における点P1aと点P1bとを結ぶ線分の内分点を求めて新たに点P1wを設定するようにすればよい。
【0057】
ここで、ある頂点に対するクラスタAへの関連付けの度合いを比重Ga(%)とし、当該頂点に対するクラスタBへの関連付け度合いを比重Gb(%)とすると、各比率ga(<1),gb(<1)は、下記の式(4)〜式(7)によってそれぞれ表わされる。
【0058】
【数2】
Figure 0003625201
【0059】
なお、Mga,Mgbは比率ga,gbを行列化したものである。
【0060】
さらに、MwaがクラスタAをローカル座標系からワールド座標系に座標変換するための座標変換行列、MwbがクラスタBをローカル座標系からワールド座標系に座標変換するための座標変換行列を表しているとすると、点P1wは下記の式(8)によって表される。
【0061】
P1w=Mga×Mwa×P1a+Mgb×Mwb×P1b …(8)
図5は、比重値により調整される隣接部分の線の軌跡を説明するための模式図である。上記の処理をイメージ的に説明すると、図5に示すように、それぞれ個別のクラスタA,Bに付随したときの点P1aと点P1bとを結ぶ線分Labに対し、比率ga、gbの値を、例えば比率gaを大きくしていくと(すなわち比率gbを小さくしていくと)、点P1wは、点P1w’、点P1w”というように線分Lab上を点P1b側から点P1a側へ移動する。このようにして、上部モデル100と下部モデル200との隣接部分の線の軌跡(形状)を曲線L1から、曲線L1’、曲線L1”のように調整することが可能となる。
【0062】
上記のようにモデルの所定範囲毎にクラスタを対応させて各範囲のポリゴンの頂点データに比重値の情報を持たせておくことにより、図5に示したように隣り合うモデル100,200の隣接部分の形状を滑らかに接合して、モデル100,200間が滑らかに変形されたように表現することが可能となる。
【0063】
次に、クラスタを用いたポリゴンの各頂点の座標変換処理の高速化について説明する。前述の式(8)を用いることにより、隣接部分の比重(ウエイト付け)表現が可能となり、画像的には滑らかになる。
【0064】
ここで、信号処理部22に設けられる「OPEN GL」や「DIRECT X」等の標準的なAPIでは、画面上の任意の点を表現するために行列と各頂点の座標との積を用いるようになっている。このため、式(8)の第1項、第2項をそれぞれAPIで高速計算し得るにも拘わらず、両計算結果をワールド座標上の点として前記標準的なAPI以外の構成(ハードウエア又はソフトウエア)部分で計算(加算)し、この結果であるワールド座標上の頂点座標を表示用の単位ベクトルと共に、この信号処理部22から画像描画処理部13へ受け渡す必要があり、ここで時間を要することとなる。
【0065】
さらに、比重値を持たないすなわち関連付けされていない頂点は「行列×頂点座標」のみで座標変換が可能であるのに、比重値を持つすなわち関連付けされている頂点は「行列×頂点座標」と「行列×頂点座標」との加算という計算を頂点が関連付けられているクラスタの個数だけ行わなければならない。このため、独自にAPIを作成して対応するとしても、頂点毎に比重値の有無の判別を行い、その判断結果に応じて異なる計算処理を実行することとなって変換処理の低速化を招来し、ビデオゲームへの適用を困難にする。
【0066】
そこで、図3及び図4を用いて変換処理の高速化について説明する。図3のフレームをモーションの一場面を表すフレーム1とし、フレーム1における座標変換行列Mwa,MwbをM1wa,M1wbと定義する。また、図4のフレームをモーションの次の一場面を表すフレーム2とし、フレーム2における座標変換行列Mwa,MwbをM2wa,M2wbと定義する。このとき、図3のフレーム1における点P1a,P1bは式(9)から求められる。
【0067】
P1w=M1wa×P1a …(9)
P1w=M1wb×P1b …(10)
さらに、座標変換行列M1wa、M1wbの逆行列である逆座標変換行列M1wa−1,M1wb−1を算出しておくことにより、式(9)及び式(10)は式(11)及び式(12)のように変形される。
【0068】
P1a=M1wa−1×P1w …(11)
P1b=M1wb−1×P1w …(12)
なお、点P1aは頂点P1がクラスタAにのみ関連付けられたときのクラスタAに対するローカル座標であり、P1bは頂点P1がクラスタBにのみ関連付けられたときのクラスタBに対するローカル座標である。
【0069】
全フレームにおいて、1つのクラスタにのみ関連付けられた頂点のローカル座標は一定なので、図3のフレームにおける点P1a,P1bが図4のフレームにおける点P1a,P1bに対応し、この点をP2a,P2bとするとき、両者の関係は式(13)及び式(14)によって表される。
【0070】
P2a=P1a …(13)
P2b=P1b …(14)
式(13)及び式(14)を式(11)及び式(12)にそれぞれ代入すると、下記の式(15)及び式(16)が得られる。
【0071】
P2a=M1wa−1×P1w …(15)
P2b=M1wb−1×P1w …(16)
したがって、式(8)と同様に、図4のフレームにおける点P1wを点P2wとすると、点P2wは下記の式(17)によって表されることになる。
【0072】
P2w=Mga×M2wa×P2a+Mgb×M2wb×P2b …(17)次に、式(17)に式(15)及び式(16)に代入すると、P2w=Mga×M2wa×M1wa−1×P1w+Mgb×M2wb×M1wb−1×P1wとなり、下記の式(18)が得られる。
【0073】
Figure 0003625201
ここに、式(18)の右辺の括弧部(Mga×M2wa×M1wa−1+Mgb×M2wb×M1wb−1)は、1つの行列として表現できるので、式(18)は「行列×頂点座標」となり、前述した標準的なAPIのみで計算可能となる。しかも、座標データとしては、特定のフレーム(ここでは図3のフレーム1)のワールド座標P1wだけを用いれば計算可能となることから、この分、式(8)の場合と異なり、データ量が低減できることとなる。
【0074】
なお、(Mga×M2wa×M1wa−1+Mgb×M2wb×M1wb−1)の行列部分のデータとしては、一連のモーションとして定義された各フレームに対して座標変換行列M1wa,M1wb,M2wa,M2wbをそれぞれ記憶したメモリテーブルを予め設け、記憶されているデータを用いて求めることができる。
【0075】
図6は、複数のクラスタを用いた場合の座標変換行列をメモリテーブルに持たせたときのメモリ内容の一例を示す図である。図6に示すように、例えば、複数のクラスタa,b,…を用いる場合、クラスタa,b,…の数だけ座標変換行列が各フレーム(1〜i)に対して記憶され、座標変換行列M1wa,M1wb,…,M2wa,M2wb,…,Miwa,Miwb,…がフレーム毎にメモリテーブルとなるRAM51等に記憶される。
【0076】
続いて、データ圧縮と処理の整理について説明する。式(18)の場合、頂点が関連付けられているクラスタは2個であるが、ビデオゲーム中に使用するモデルの中には、2個のクラスタには限定されず、1〜n個のクラスタに関係付けられるポリゴンが存在することも考える必要がある。また、式(18)では、クラスタと頂点との関連付けを図3に示すフレーム1を基本として計算したため、(M1w、P1w)をデータの基本に置いたが、基本フレームは図3のフレーム1とは限らないことから、以後、基本という意味で(M0w、P0w)に置き換えて、以下のように一般式として式(19)で示す。
【0077】
【数3】
Figure 0003625201
【0078】
ここで、Pwは求めるフレームでのワールド座標の頂点座標であり、Psは求める頂点に関連付けられているクラスタの数であり、Mg[n]は求めるフレームでの頂点に関連付けられているクラスタの比重値を表す比重行列であり、Mw[n]は求めるフレームでの頂点に関連付けされているクラスタの座標変換行列であり、M0w[n]−1は求める頂点の、クラスタに関連付けた時点でのクラスタの基本逆座標変換行列であり、P0wは求める頂点の、クラスタに関連付けた時点でのワールド座標である。
【0079】
式(19)から、求めるフレーム時点での求める頂点の変換行列(加算行列)は、下記のようになる。
【0080】
【数4】
Figure 0003625201
【0081】
上記において、モデルを構成する全頂点毎に上記の変換行列(20)を持つので、頂点毎のデータが非常に多くなる。また、変換行列の作成も各頂点毎に行わなければならず、計算処理に時間を要し、フレーム周期に追いつかないことになる。
【0082】
そこで、Mw[1,2,…,Ps]及びM0w[1,2,…,Ps]はクラスタに関するパラメータであるので、全てのクラスタの行列分を持つと全頂点分をフォローできる。また、頂点固有の変換行列を求めるための情報は、どのクラスタを使用するかを、頂点毎に当該頂点が関連付けられているクラスタを特定するための識別情報となるクラスタ番号(符号)で管理し、それに対する比重値Mg[n]の組み合わせを対応させて持つことで、変換行列を求めるためのデータを少なくすることができる。すなわち、M0w[1,2,…,Ps]はモデルにより固定されるので、モデルデータとして持つことができ、Mw[1,2,…,Ps]はフレーム単位のクラスタの座標変換行列なので、モデルのフレームデータとして持つことができる。
【0083】
図7は、各頂点に対応させて変換行列に関与するクラスタを特定する符号とその座標値をテーブルメモリに持たせたときのメモリ内容の一例を示す図であり、図8は、関連付けられているクラスタの比重値を図7に示す符号に対応させてテーブルメモリに持たせたときのメモリ内容の一例を示す図である。
【0084】
図7及び図8に示すように、各頂点に対応させて変換行列に関与するクラスタを特定する符号とその座標値をテーブルメモリとなるRAM51等に記憶させ、さらに、記憶されている各符号に対応させて、関連付けられているクラスタの比重値をメモリテーブルとなるRAM51等に記憶させた場合、各頂点に直接対応させて変換行列を求めるためのデータとなるクラスタの比重値を記憶する場合に比して、メモリ容量を低減することができる。
【0085】
また、モデルを作成する際に、頂点毎の比重値の組み合わせの種類を予め制限し(何種類かに設定し)、この組み合わせを番号(符号)を用いて管理し、各頂点には変換行列の番号(符号)を割り当てるようにすることで、各頂点のデータ量を低減することができる。さらに、頂点変換の前に、全ての組み合わせによる変換行列(20)を予め計算し、結果を得(ゲーム期間中、格納し)ておくことで、頂点変換を高速に計算することができる。
【0086】
図9は、以上説明したモデルデータを使用した場合のCPU21等による3次元モデル変形処理を示すフローチャートである。
【0087】
先ず、再生したいモーションのアニメーションデータを用いて指定フレームにおけるクラスタの座標変換行列を作成する(ステップST1)。次いで、モデルデータの比重値の組み合わせ管理情報(例えば図8に示す符号)に従い、クラスタの座標変換行列から比重付けが指定されているクラスタの座標変換行列を求める(ステップST2)。
【0088】
続いて、頂点が持つデータに従い、各頂点と該頂点に対応付けられている座標変換行列の番号(符号)から特定される行列とを3次元乗算処理部24等を用いて積算してワールド座標データを求め(ステップST3)、求められたワールド座標データを擬似カメラの座標系からスクリーンの座標系に所定の行列を用いて変換する(ステップST4)。そして、得られたスクリーン座標系の頂点データに従い、画像描画処理部13に対しグラフィックス描画(RAM51のフレームバッファ55への書き込み)を行わせる(ステップST5)。
【0089】
なお、本発明は、以下の態様が採用可能である。
(1)本実施形態は、各頂点に設定されている法線ベクトルデータに対しても同様に適用可能である。すなわち、比重付けされているクラスタの座標変換行列を利用して式(18)又は式(19)に基づいて座標位置の場合と同様にして法線ベクトルも変換させることができ、これによれば、ポリゴンの面に関しても接合の滑らかさを実現できることとなる。
(2)本実施形態で得られたモデル形状は描画するものに限定されず、表示画像を従来の態様のままとしながら、他のオブジェクトとの違和感のない当たりとか接触の判定用として適用することもできる。
(3)ビデオゲームに使用されるモデルデータは一般的にポリゴンモデルが主であるが、パスモデルやナーブスモデルを求めてポリゴンモデルを形成する場合においても、本実施形態で示した手法を適用可能である。
(4)本実施形態ではクラスタをモデルの外側に配設して繋がり部分を滑らかにする例で示したが、クラスタをモデルの内側に配置(定義)し、このモデルを構成するポリゴンの各頂点と内側のクラスタとを関連付けして所定の比重値を設定してもよい。
【0090】
【発明の効果】
請求項1記載の本発明によれば、任意のフレームにおける比重行列及び座標変換行列と特定のフレームにおける逆座標変換行列及び頂点のワールド座標から任意のフレームにおける頂点のワールド座標を求めることができるので、クラスタを用いた3次元モデルの変形処理をビデオゲームにおける描画周期毎に行うことができるとともに、メモリの記憶容量を低減することができる。
【0091】
請求項2記載の本発明によれば、加算行列と頂点座標との積のみで任意のフレームにおける頂点のワールド座標を求めることができるので、標準的なAPIを用いて3次元モデルの変形処理をフレーム周期毎に高速に行うことができる。
【0092】
請求項3記載の本発明によれば、2番目以降の全てのフレームにおける頂点のワールド座標を1番目のフレームにおける頂点のワールド座標から求めることができるので、2番目以降の全てのフレームにおける頂点のワールド座標を予め記憶する必要がなくなり、メモリの記憶容量を低減することができる。
【0093】
請求項4記載の本発明によれば、メモリテーブルから座標変換行列を読み出すだけで必要な座標変換行列を取得することができるので、クラスタを用いた3次元モデルの変形処理をより高速に行うことができる。
【0094】
請求項5記載の本発明によれば、頂点毎に関連付けられているクラスタを容易に特定することができるので、クラスタを用いた3次元モデルの変形処理を容易に行うことができる。
【0095】
請求項6記載の本発明によれば、識別情報に関連させて比重値を設定しているので、各頂点に比重値を直接設定する場合に比して、記憶すべきデータの容量を低減することができる。
【0096】
請求項7記載の本発明によれば、任意のフレームにおける比重行列及び座標変換行列と特定のフレームにおける逆座標変換行列及び頂点のワールド座標から任意のフレームにおける頂点のワールド座標を求めることができるので、クラスタを用いた3次元モデルの変形処理をビデオゲームにおける描画周期毎に行うことができるとともに、メモリの記憶容量を低減することができる。
【0097】
請求項8記載の本発明によれば、任意のフレームにおける比重行列及び座標変換行列と特定のフレームにおける逆座標変換行列及び頂点のワールド座標から任意のフレームにおける頂点のワールド座標を求めることができるので、クラスタを用いた3次元モデルの変形処理をビデオゲームにおける描画周期毎に行うことができるとともに、メモリの記憶容量を低減することができる。
【図面の簡単な説明】
【図1】本発明の一実施形態によるビデオゲーム装置の構成を示すブロック図である。
【図2】3次元モデルを構成するポリゴンの頂点の座標変換処理を説明するための模式図である。
【図3】比重の導入によるモデルの滑らかな繋ぎの実現を説明するために2つのモデルが互いに真っ直ぐな位置関係にあるフレームを示す模式図である。
【図4】比重の導入によるモデルの滑らかな繋ぎの実現を説明するために一方のモデルがクラスタの基準点側へ移動した状態におけるフレームを示す模式図である。
【図5】比重値により調整される隣接部分の線の軌跡を説明するための模式図である。
【図6】複数のクラスタを用いた場合の座標変換行列をメモリテーブルに持たせたときのメモリ内容の一例を示す図である。
【図7】各頂点に対応させて座標変換行列に関与するクラスタを特定する符号とその座標値を予めテーブルメモリに持たせたときのメモリ内容の一例を示す図である。
【図8】図7に示す符号と関連付けられているクラスタの比重値とをテーブルメモリに持たせたときのメモリ内容の一例を示す図である。
【図9】本モデルデータを使用した場合のCPU等による3次元モデル変形処理を示すフローチャートである。
【符号の説明】
1 ビデオゲーム装置
2 制御部
3 画像表示部
4 音声出力部
5 メモリ部
6 操作入力部
21 CPU
22 信号処理部
23 画像描画処理部
24 3次元乗算処理部
31 インターフェース回路
32 デジタル/アナログコンバータ
33 モニタ
41 インターフェース回路
42 デジタル/アナログコンバータ
43 増幅回路
44 スピーカ
51 RAM
52 ROM
53 インターフェース回路
54 記録媒体
55 フレームバッファ

Claims (8)

  1. スケルトンではなく、変形すべき対象を規定するためのクラスタに関連付けられた頂点を有する複数のポリゴンから構成された3次元モデルを一連のモーションに関するフレーム毎のデータから描画周期に対応させて変形するための3次元モデル変形プログラムであって、
    第1のフレームにおける頂点と当該頂点に関連付けられたクラスタとの関連付け度合いを示す比重値を表す比重行列と、前記第1のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列と、前記第1のフレームと異なる第2のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列の逆行列となる逆座標変換行列とを取得する行列取得手段と、
    前記比重行列と、前記座標変換行列と、前記逆座標変換行列と、前記第2のフレームにおける頂点のワールド座標とを用いて前記第1のフレームにおける頂点のワールド座標を求めるワールド座標算出手段としてビデオゲーム装置を機能させることを特徴とする3次元モデル変形プログラム。
  2. 前記比重行列、前記座標変換行列及び前記逆座標変換行列の積を頂点が関連付けされたクラスタ毎に求めて各積を加算した加算行列を求める加算手段として前記ビデオゲーム装置をさらに機能させ、
    前記ワールド座標算出手段は、前記加算行列と前記第2のフレームにおける頂点のワールド座標との積から前記第1のフレームにおける頂点のワールド座標を求めることを特徴とする請求項1記載の3次元モデル変形プログラム。
  3. 前記第2のフレームは、一連のモーションに関する1番目のフレームであることを特徴とする請求項1又は2記載の3次元モデル変形プログラム。
  4. 前記座標変換行列は、フレーム毎にメモリテーブルに予め記憶されていることを特徴とする請求項1〜3のいずれかに記載の3次元モデル変形プログラム。
  5. 前記クラスタは、頂点毎に当該頂点が関連付けられているクラスタを特定するための識別情報を付して管理されることを特徴とする請求項1〜4のいずれかに記載の3次元モデル変形プログラム。
  6. 前記識別情報に関連させて比重値が設定されていることを特徴とする請求項5記載の3次元モデル変形プログラム。
  7. スケルトンではなく、変形すべき対象を規定するためのクラスタに関連付けられた頂点を有する複数のポリゴンから構成された3次元モデルを一連のモーションに関するフレーム毎のデータからビデオゲーム装置を用いて描画周期に対応させて変形する3次元モデル変形方法であって、
    前記ビデオゲーム装置が、第1のフレームにおける頂点と当該頂点に関連付けられたクラスタとの関連付け度合いを示す比重値を表す比重行列と、前記第1のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列と、前記第1のフレームと異なる第2のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列の逆行列となる逆座標変換行列とを取得する行列取得ステップと、
    前記ビデオゲーム装置が、前記比重行列と、前記座標変換行列と、前記逆座標変換行列と、前記第2のフレームにおける頂点のワールド座標とを用いて前記第1のフレームにおける頂点のワールド座標を求めるワールド座標算出ステップとを含むことを特徴とする3次元モデル変形方法。
  8. スケルトンではなく、変形すべき対象を規定するためのクラスタに関連付けられた頂点を有する複数のポリゴンから構成された3次元モデルを一連のモーションに関するフレーム毎のデータから描画周期に対応させて変形するビデオゲーム装置であって、
    第1のフレームにおける頂点と当該頂点に関連付けられたクラスタとの関連付け度合いを示す比重値を表す比重行列と、前記第1のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列と、前記第1のフレームと異なる第2のフレームにおける頂点のローカル座標系からワールド座標系への座標変換行列の逆行列となる逆座標変換行列とを取得する行列取得手段と、
    前記比重行列と、前記座標変換行列と、前記逆座標変換行列と、前記第2のフレームにおける頂点のワールド座標とを用いて前記第1のフレームにおける頂点のワールド座標を求めるワールド座標算出手段とを備えるビデオゲーム装置。
JP2001326122A 2001-10-24 2001-10-24 3次元モデル変形プログラム、3次元モデル変形方法及びビデオゲーム装置 Expired - Fee Related JP3625201B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2001326122A JP3625201B2 (ja) 2001-10-24 2001-10-24 3次元モデル変形プログラム、3次元モデル変形方法及びビデオゲーム装置
US10/274,930 US7113189B2 (en) 2001-10-24 2002-10-21 Recording medium storing 3D model deformation program, 3D model deformation program, 3D model deformation method and video game device
DE60211827T DE60211827T2 (de) 2001-10-24 2002-10-23 Aufzeichnungsmedium für Programm zur Verformung von 3D Modellen, Programm zur Verformung von 3D Modellen, 3D Verformungsverfahren und Videospielvorrichtung
EP02023736A EP1306114B1 (en) 2001-10-24 2002-10-23 Recording medium storing 3D model deformation program, 3D model deformation program, 3D deformation method and video game device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001326122A JP3625201B2 (ja) 2001-10-24 2001-10-24 3次元モデル変形プログラム、3次元モデル変形方法及びビデオゲーム装置

Publications (2)

Publication Number Publication Date
JP2003132366A JP2003132366A (ja) 2003-05-09
JP3625201B2 true JP3625201B2 (ja) 2005-03-02

Family

ID=19142561

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001326122A Expired - Fee Related JP3625201B2 (ja) 2001-10-24 2001-10-24 3次元モデル変形プログラム、3次元モデル変形方法及びビデオゲーム装置

Country Status (4)

Country Link
US (1) US7113189B2 (ja)
EP (1) EP1306114B1 (ja)
JP (1) JP3625201B2 (ja)
DE (1) DE60211827T2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3564440B2 (ja) * 2001-08-08 2004-09-08 コナミ株式会社 動画像生成プログラム、動画像生成方法及び装置
US7068273B2 (en) * 2002-01-28 2006-06-27 Konami Corporation Recording medium which stores 3D image processing program, 3D image processor, 3D image processing method, and video game machine
US7650266B2 (en) * 2005-05-09 2010-01-19 Nvidia Corporation Method of simulating deformable object using geometrically motivated model
US20090058863A1 (en) * 2007-09-04 2009-03-05 Apple Inc. Image animation with transitional images
CN101546435B (zh) * 2008-03-24 2012-03-28 鸿富锦精密工业(深圳)有限公司 物件碰撞检测系统及方法
US20140160122A1 (en) * 2012-12-10 2014-06-12 Microsoft Corporation Creating a virtual representation based on camera data
CN113160407B (zh) * 2020-01-07 2023-08-04 北京博超时代软件有限公司 基于变电站的数字三维模型向施工模型转换方法和装置
CN112669419A (zh) * 2020-12-22 2021-04-16 北京像素软件科技股份有限公司 用于渲染的方法、中央处理器、图像处理器、系统和存储介质
CN112862936B (zh) * 2021-03-16 2023-08-08 网易(杭州)网络有限公司 表情模型处理方法及装置、电子设备、存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3530095B2 (ja) 2000-01-27 2004-05-24 株式会社スクウェア・エニックス ビデオゲームにおける三次元オブジェクト変形方法及びビデオゲーム装置、並びにビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体
JP3568861B2 (ja) * 2000-01-27 2004-09-22 株式会社スクウェア・エニックス ビデオゲームにおける三次元オブジェクト変形方法及びビデオゲーム装置、並びにビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体
JP3363134B2 (ja) 2000-09-20 2003-01-08 コナミ株式会社 3dモデルの描画データ作成方法、装置及び3dビデオゲーム装置並びに3dモデルの描画データ作成プログラムを記録した可読記録媒体

Also Published As

Publication number Publication date
EP1306114B1 (en) 2006-05-31
DE60211827T2 (de) 2007-01-11
DE60211827D1 (de) 2006-07-06
US20030078098A1 (en) 2003-04-24
US7113189B2 (en) 2006-09-26
JP2003132366A (ja) 2003-05-09
EP1306114A2 (en) 2003-05-02
EP1306114A3 (en) 2003-08-13

Similar Documents

Publication Publication Date Title
JP5756198B2 (ja) インタラクティブにユーザ制御されたアバターアニメーション
JP3168244B2 (ja) 画像生成装置およびその方法
JP3625201B2 (ja) 3次元モデル変形プログラム、3次元モデル変形方法及びビデオゲーム装置
EP2065854B1 (en) posture dependent normal vectors for texture mapping
JP4206547B2 (ja) 画像処理方法、その画像処理装置及びそれに利用する一体整形モデルデータ及び画像処理プログラムを記録した記録媒体
US6717575B2 (en) Image drawing method, image drawing apparatus, recording medium, and program
JP4305903B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP3576126B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2007234033A (ja) 3次元ゲーム装置及び情報記憶媒体
JP2001275199A (ja) 3次元音再生システム
US7161600B2 (en) Methods and apparatus for transforming three-dimensional objects in video games
JP3957363B2 (ja) 3次元ゲーム装置及び情報記憶媒体
JP3363134B2 (ja) 3dモデルの描画データ作成方法、装置及び3dビデオゲーム装置並びに3dモデルの描画データ作成プログラムを記録した可読記録媒体
JP4743770B2 (ja) 画像生成システム、プログラム、及び情報記憶媒体
JP3297410B2 (ja) 画像生成システム及び情報記憶媒体
JP3748451B1 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4229316B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4786389B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP3822929B2 (ja) 画像合成方法及び画像合成装置
CN114882153A (zh) 一种动画生成的方法及装置
JP2011215724A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2006252426A (ja) プログラム、情報記憶媒体及び画像生成システム
JP4610729B2 (ja) ゲームシステム、プログラム及び情報記憶媒体
JP4391633B2 (ja) 画像生成システム及び情報記憶媒体
Akinjala et al. Animating human movement & gestures on an agent using Microsoft kinect

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040727

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040922

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20040922

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: 20041124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041125

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081210

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081210

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081210

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081210

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091210

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101210

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees