JP2001209823A - ビデオゲームにおける三次元オブジェクト変形方法及びビデオゲーム装置、並びにビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体 - Google Patents

ビデオゲームにおける三次元オブジェクト変形方法及びビデオゲーム装置、並びにビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体

Info

Publication number
JP2001209823A
JP2001209823A JP2000018303A JP2000018303A JP2001209823A JP 2001209823 A JP2001209823 A JP 2001209823A JP 2000018303 A JP2000018303 A JP 2000018303A JP 2000018303 A JP2000018303 A JP 2000018303A JP 2001209823 A JP2001209823 A JP 2001209823A
Authority
JP
Japan
Prior art keywords
cluster
vertex
amount
dimensional object
frame display
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.)
Granted
Application number
JP2000018303A
Other languages
English (en)
Other versions
JP3530095B2 (ja
Inventor
Takanori Sasaki
隆典 佐々木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Square Enix Co Ltd
Original Assignee
Square Co Ltd
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 Square Co Ltd filed Critical Square Co Ltd
Priority to JP2000018303A priority Critical patent/JP3530095B2/ja
Priority to US10/042,713 priority patent/US7161600B2/en
Publication of JP2001209823A publication Critical patent/JP2001209823A/ja
Application granted granted Critical
Publication of JP3530095B2 publication Critical patent/JP3530095B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6607Methods for processing data by generating or executing the game program for rendering three dimensional images for animating game characters, e.g. skeleton kinematics

Abstract

(57)【要約】 【課題】仮想空間における三次元オブジェクトの細かい
変形を簡易な処理で実現すること。 【解決手段】未処理のクラスタindex及びその平行移動
量(Tx,Ty,Tz)を取得する(S33,S35)。フレームが同じで
あれば処理するクラスタの順番は関係ない。次に取得さ
れたクラスタindexに対応する未処理の頂点について頂
点index及び当該頂点の重みwを取得する(S37-S43)。そ
して現フレームにおける平行移動量と重みwに基づいて
頂点バッファの座標値を変更する(S45)。ここではクラ
スタ変形を平行移動で行うため、処理するクラスタの順
番が関係なくなると共に、行列演算を行うことなく簡単
な積和演算のみにて変形後の頂点座標を計算することが
できるようになる。

Description

【発明の詳細な説明】
【0001】
【発明が属する技術分野】本発明は、コンピュータ・グ
ラフィックス(CG:Computer Graphics)に関し、よ
り詳しくは、仮想三次元空間における三次元オブジェク
トを変形する技術に関する。
【0002】
【従来の技術】CGにおいて、複数の頂点により形状が
定められている三次元オブジェクトの細かい動作等を表
現するために、当該三次元オブジェクトを変形する技術
としては、一般にクラスタ変形という技術が知られてい
る。クラスタ変形においては、三次元オブジェクトの各
頂点がグループ化されており、グループ毎に当該グルー
プに属する頂点を移動することにより、三次元オブジェ
クトを変形していた。頂点は複数のグループに属するこ
とができる。また、各グループに属する頂点毎に重みを
設定することができる。これにより、非常に微細な変形
をも行うことができる。
【0003】
【発明が解決しようとする課題】ビデオゲームにおける
オブジェクトの変形においても、クラスタ変形を有効に
利用することができる。ゲーム中のキャラクタの微妙な
変形にクラスタ変形を適用することで、ゲーム中のキャ
ラクタをリアルに表現することが容易となる。
【0004】クラスタ変形をビデオゲームに適用した例
として特開平10−188028号公報がある。この公
報に記載の技術では、三次元オブジェクトを微妙に変形
させるため、骨格をスケルトンで定義した三次元オブジ
ェクトに対し、実際に関節や骨のない構成部分にも関節
とスケルトンを与えている。
【0005】上記公報において、スケルトンには、三次
元オブジェクトを構成する多数のポリゴンが付随してい
る。そして、スケルトンが回転すれば、付随する多数の
ポリゴンも回転するように制御される。これにより、関
節や骨の無い部分に微妙な動きを行わせることができ
る。例えば、人間の顔を表す三次元オブジェクトにおい
て、瞼を表すポリゴンをスケルトンに付随させ、そのス
ケルトンを回転させる。これにより、瞼が閉じたり開い
たりするような三次元オブジェクトの変形が可能とな
る。
【0006】ところが、頂点の回転処理は行列演算を多
用する必要が生ずる。それゆえ、微妙な変形を伴う表現
部分が一画面上で多くなると、その処理負荷が大きくな
る。今日、処理負荷を減らし、同様の表示態様を実現す
る手法が期待されていた。
【0007】よって本発明の目的は、三次元オブジェク
トの細かい変形を簡易な処理で実現する技術を提供する
ことである。
【0008】
【課題を解決するための手段】本発明の第1の態様に係
る、クラスタに対応付けられた複数の頂点により形状の
少なくとも一部が定められる三次元オブジェクトを変形
する、ビデオゲームにおける三次元オブジェクト変形方
法は、フレーム表示周期毎に、三次元オブジェクトの動
きを定義したアニメーション・データに基づきクラスタ
の平行移動量を取得する第1ステップと、フレーム表示
周期毎に、第1ステップで取得されたクラスタの平行移
動量と当該クラスタに対応する各頂点毎に予め定義され
た重みとに従って当該各頂点の平行移動量を算出し、当
該平行移動量に従って当該各頂点を互いに平行に移動す
る第2ステップとを含む。
【0009】クラスタに属する頂点の移動に対して平行
移動のみを許すようにすることにより、変形操作の順番
を考慮する必要がなくなり、且つ行列演算ではなく積和
演算のみで済むようになる。すなわち、全体として処理
量が軽減される。これにより、三次元オブジェクトの細
かい変形のリアルタイム処理が可能となる。
【0010】また、上で述べた第2ステップ後に、三次
元オブジェクトの骨格を定義しており、複数のジョイン
トを含み、且つ複数の頂点の各々が複数のジョイントの
少なくとも1つに対応付けられている仮想スケルトンに
おけるジョイントの移動に従って、対応する頂点を移動
する第3ステップをさらに含むような構成も可能であ
る。
【0011】上で述べたように第3ステップを導入する
ことにより、三次元オブジェクトの細かい変形を行った
後に、大きな変形を行うことになる。これによりさらに
全体の処理が簡単になる。例えば人型の三次元オブジェ
クトの口を空けて且つ首を曲げる場合に、上で述べた構
成では、下唇の部分を真下に下げてから首を曲げること
になる。口を開けるという操作に対して、下唇の部分を
真下に下げるという操作が一対一対応する。しかし、第
2ステップの前に第3ステップを実施するような構成で
は、首を曲げてから口を開けることになる。首を曲げて
しまうと、下唇の部分を真下に下げても自然な形で口が
開かない。下唇の部分を首の曲がり方を考慮した上で移
動させなければならなくなる。
【0012】また上で述べた第1ステップを、処理中の
フレーム表示周期における各クラスタの平行移動量が定
義されているか判断する第3ステップと、第3ステップ
において処理中のフレーム表示周期における各クラスタ
の平行移動量が定義されていないと判断された場合に
は、既に処理されたフレーム表示周期における各クラス
タの平行移動量と後に処理されるフレーム表示周期にお
ける各クラスタの平行移動量とから、処理中のフレーム
表示周期における各クラスタの平行移動量を計算する第
4ステップと、第3ステップにおいて処理中のフレーム
表示周期における各クラスタの平行移動量が定義されて
いると判断された場合には、定義されている処理中のフ
レーム表示周期における各クラスタの平行移動量を取得
する第5ステップとを含むような構成も可能である。
【0013】本発明の第1の態様に係るビデオゲームに
おける三次元オブジェクト変形方法をコンピュータに実
行させるプログラムを作成することは可能である。その
際、第1の態様に対する上記のような変形は、当該プロ
グラムに対しても応用可能である。本発明に係るプログ
ラムは、例えばCD−ROM(Compact Disc - ReadOnl
y Memory)、DVD(Digital Versatile Disc)、フロ
ッピーディスク、メモリカートリッジ、メモリ、ハード
ディスクなどの記録媒体又は記憶装置に格納される。記
録媒体又は記憶装置に格納されるプログラムをコンピュ
ータに読み込ませることで以下で述べるビデオゲーム装
置を実現できる。また、記録媒体によって本発明に係る
プログラムをソフトウエア製品として装置と独立して容
易に配布、販売することができるようになる。さらに、
コンピュータなどのハードウエアを用いて本発明に係る
プログラムを実行することにより、コンピュータ等のハ
ードウエアで本発明の技術が容易に実施できるようにな
る。
【0014】本発明の第2の態様に係る、クラスタに対
応付けられた複数の頂点により形状の少なくとも一部が
定められる三次元オブジェクトを変形するビデオゲーム
装置は、フレーム表示周期毎に、三次元オブジェクトの
動きを定義したアニメーション・データに基づいて各ク
ラスタの平行移動量を取得する取得手段と、フレーム表
示周期毎に、取得手段により取得されたクラスタの平行
移動量と当該クラスタに対応する各頂点毎に予め定義さ
れた重みとに従って当該各頂点の平行移動量を算出し、
当該平行移動量に従って当該各頂点を互いに平行に移動
する移動手段とを含む。
【0015】また、本発明の第3の態様に係るビデオゲ
ーム装置は、コンピュータと、コンピュータに実行させ
るプログラムを記録したコンピュータ読み取り可能な記
録媒体とを有する。そして、当該プログラムは、コンピ
ュータに、フレーム表示周期毎に、三次元オブジェクト
の動きを定義したアニメーション・データに基づいて各
クラスタの平行移動量を取得する取得処理と、フレーム
表示周期毎に、取得処理で取得されたクラスタの平行移
動量と当該クラスタに対応する各頂点毎に予め定義され
た重みとに従って当該各頂点の平行移動量を算出し、当
該平行移動量に従って当該各頂点を互いに平行に移動す
る移動処理とを実行させる。
【0016】
【発明の実施の形態】本発明をコンピュータ・プログラ
ムにより実施する場合において当該コンピュータ・プロ
グラムを実行する家庭用ゲーム機101の一例を図1に
示す。家庭用ゲーム機101は、例えば内部バス119
に接続されたCPU(Central Processing Unit)10
3、ROM(Read Only Memory)104、RAM(Rand
om Access Memory)105、HDD(Hard Disk Driv
e)107、サウンド処理部109、グラフィックス処
理部111、CD−ROMドライブ113、通信インタ
ーフェース115、及びインターフェース部117を備
える。グラフィックス処理部111は、フレームバッフ
ァ112を備える。
【0017】家庭用ゲーム機101のサウンド処理部1
09及びグラフィックス処理部111は表示画面120
を有するTVセット121に接続されている。また、C
D−ROMドライブ113には着脱可能なCD−ROM
131が装着される。CD−ROM131には、本発明
にかかるゲームプログラム133及びデータ135が記
録されている。通信インターフェース115はネットワ
ーク151と通信媒体141を介して接続される。イン
ターフェース部117には、操作ボタンを備えたキーパ
ッド161及びメモリカード171が接続される。
【0018】CPU103は、ROM104に格納され
たプログラム、及びCD−ROM131上に記録された
ゲームプログラム133を実行し、家庭用ゲーム機10
1の制御を行う。RAM105は、CPU103のワー
クエリアである。HDD107は、例えばCD−ROM
131上に記録されたゲームプログラム133及びデー
タ135を保管するための記憶領域である。メモリカー
ド171は、ゲームプログラム133により参照される
データを保存するための記憶領域である。サウンド処理
部109は、CPU103により実行されているプログ
ラムがサウンド出力を行うよう指示している場合に、そ
の指示を解釈して、TVセット121にサウンド信号を
出力する。
【0019】グラフィックス処理部111は、CPU1
03から出力される描画命令に従って、画像データを生
成してフレームバッファ112に書き込む。そして、書
き込んだ画像データを表示画面120に表示するための
信号をTVセット121に出力する。CD−ROMドラ
イブ113は、CD−ROM131上のゲームプログラ
ム133及びデータ135を読み出す。通信インターフ
ェース115は、通信媒体141を介してネットワーク
151に接続され、他のコンピュータ等との間で行われ
るデータ通信の入出力制御を行う。インターフェース部
117は、キーパッド161からの入力をRAM105
に出力し、CPU103がキーパッド161からの入力
を解釈して演算処理を実施する。
【0020】本発明に係るゲームプログラム133及び
データ135は最初例えばCD−ROM131に記録さ
れている。そして、このゲームプログラム133及びデ
ータ135は実行時にCD−ROMドライブ113によ
り読み出されて、RAM105にロードされる。RAM
105にロードされるデータ135としては、図1に示
したように、頂点座標リスト200、法線ベクトル・リ
スト300、三角形ポリゴン・リスト400、頂点グル
ープ・リスト500、クラスタ・データ600、及びア
ニメーション・データ700である。また、本発明に係
るプログラムの処理途中で使用されるデータとして、頂
点バッファ800とフレーム・カウンタ900とがあ
る。これらについては以下に詳しく説明する。なお、C
D−ROM131に記録されている本発明に係るゲーム
プログラム133及びデータ135を、予めCD−RO
Mドライブ113により読み出し、HDD107に格納
しておくようにしてもよい。HDD107に本発明に係
るゲームプログラム133及びデータ135が格納され
ている場合には、HDD107からRAM105にゲー
ムプログラム133及びデータ135がロードされる。
【0021】CPU103はRAM105にロードされ
た、本発明に係るゲームプログラム133及びデータ1
35を処理し、描画命令をグラフィックス処理部111
に出力する。なお、中間的なデータはRAM105に記
憶される。グラフィックス処理部111はCPU103
からの描画命令に従って処理を行い、画像データをフレ
ームバッファ112に書き込み、表示画面120に表示
するための信号をTVセット121に出力する。
【0022】以上のような家庭用ゲーム機101におい
て実行される本発明のプログラムのアルゴリズム及び使
用されるデータについて以下で詳しく述べる。
【0023】図2乃至図7に本発明で使用されるデータ
の説明を行う。三次元オブジェクトが三角形ポリゴンに
より構成される場合において、三次元オブジェクトの頂
点の頂点座標リスト200を図2に示す。頂点座標リス
ト200は、頂点座標インデックス(index)の欄21
0と、座標(x,y,z)の欄220とを含む。
【0024】図2において、頂点インデックスvtx0
の頂点の座標は(0,0,0)である。頂点インデック
スvtx1の頂点の座標は(0,0,100)である。
頂点インデックスvtx2の頂点の座標は(0,10
0,0)である。頂点インデックスvtx3の頂点の座
標は(0,100,100)である。頂点インデックス
vtx4の頂点の座標は(100,0,0)である。頂
点座標リスト200における頂点座標は、所定の基準位
置からの相対的な位置座標である。
【0025】図3に法線ベクトル・リスト300を示
す。法線ベクトル・リスト300は、三角形ポリゴンの
各頂点における法線ベクトルを定義するためのリストで
ある。法線ベクトル・リスト300は、法線ベクトル・
インデックス(index)の欄310と法線ベクトル
(x,y,z)の欄320とを含む。
【0026】図3において、法線ベクトル・インデック
スnml0の法線ベクトルは(1,0,0)である。法
線ベクトル・インデックスnml1の法線ベクトルは
(−1,0,0)である。法線ベクトル・インデックス
nml2の法線ベクトルは(0,0,−1)である。法
線ベクトル・インデックスnml3の法線ベクトルは
(−1,−1,0)である。法線ベクトル・インデック
スnml4の法線ベクトルは(0,−1,0)である。
【0027】図4に三角形ポリゴン・リスト400を示
す。三角形ポリゴン・リスト400は、各三角形ポリゴ
ンを構成する頂点0乃至2の頂点インデックス及び法線
ベクトル・インデックスを格納する。三角形ポリゴン・
リスト400は、三角形ポリゴン・インデックス(inde
x)の欄410と、頂点0を構成する頂点の頂点インデ
ックス及び法線ベクトルの法線ベクトル・インデックス
のための頂点0の欄420と、頂点1を構成する頂点の
頂点インデックス及び法線ベクトルの法線ベクトル・イ
ンデックスのための頂点1の欄430と、頂点2を構成
する頂点の頂点インデックス及び法線ベクトルの法線ベ
クトル・インデックスのための頂点2の欄440とを含
む。
【0028】図4において、三角形ポリゴン・インデッ
クスplg0の三角形ポリゴンの頂点0は、頂点インデ
ックスvtx0の頂点及び法線ベクトル・インデックス
nml0の法線ベクトルにて構成される。三角形ポリゴ
ン・インデックスplg0の三角形ポリゴンの頂点1
は、頂点インデックスvtx1の頂点及び法線ベクトル
・インデックスnml2の法線ベクトルにて構成され
る。三角形ポリゴン・インデックスplg0の三角形ポ
リゴンの頂点2は、頂点インデックスvtx2の頂点及
び法線ベクトル・インデックスnml3の法線ベクトル
にて構成される。
【0029】三角形ポリゴン・インデックスplg1の
三角形ポリゴンの頂点0は、頂点インデックスvtx0
の頂点及び法線ベクトル・インデックスnml1の法線
ベクトルにて構成される。三角形ポリゴン・インデック
スplg1の三角形ポリゴンの頂点1は、頂点インデッ
クスvtx2の頂点及び法線ベクトル・インデックスn
ml3の法線ベクトルにて構成される。三角形ポリゴン
・インデックスplg0の三角形ポリゴンの頂点2は、
頂点インデックスvtx3の頂点及び法線ベクトル・イ
ンデックスnml4の法線ベクトルにて構成される。
【0030】頂点座標リスト200と法線ベクトル・リ
スト300とを設け、頂点インデックス及び法線ベクト
ル・インデックスとを格納する三角形ポリゴン・リスト
400を別途用意することにより、同じ頂点座標のデー
タや同じ法線ベクトルのデータを三角形ポリゴン・リス
ト400において共用することができる。また、同じ頂
点にも法線ベクトルを別途定義することが容易になる。
【0031】三次元オブジェクトの形状を定める頂点は
グループ分けされている。但し、頂点は複数のグループ
に属していてもよい。図5に頂点グループ・リスト50
0を示す。頂点グループ・リスト500には頂点グルー
プ数と、頂点グループ毎に、頂点グループに属する頂点
の数及びその頂点グループに属する頂点の各頂点インデ
ックス及び各頂点に予め定義された重みとが格納され
る。よって、頂点グループ・リスト500には、グルー
プ数の欄510と、頂点数の欄520乃至524と、頂
点インデックスの欄530乃至554と、頂点の重みの
欄540乃至564とが設けられている。頂点数の欄が
出てくると新たな頂点グループについてのデータが始ま
る。
【0032】図5において、グループ数の欄510はグ
ループ数が3であることを示している。頂点グループ0
の頂点数の欄520は頂点グループ0の頂点数が5であ
ることを示している。頂点グループ0に属する頂点の頂
点インデックスの欄530には頂点インデックスvtx
0が格納されている。頂点インデックスvtx0に対す
る重みの欄540には重み1.0が格納されている。頂
点グループ0に属する頂点の頂点インデックスの欄53
2には頂点インデックスvtx5が格納されている。頂
点インデックスvtx5に対する重みの欄542には重
み1.0が格納されている。
【0033】頂点グループ0に属する頂点の頂点インデ
ックスの欄534には頂点インデックスvtx1が格納
されている。頂点インデックスvtx1に対する重みの
欄544には重み0.7が格納されている。頂点グルー
プ0に属する頂点の頂点インデックスの欄536には頂
点インデックスvtx2が格納されている。頂点インデ
ックスvtx2に対する重みの欄546には重み0.6
が格納されている。頂点グループ0に属する頂点の頂点
インデックスの欄538には頂点インデックスvtx3
が格納されている。頂点インデックスvtx3に対する
重みの欄548には重み0.5が格納されている。
【0034】頂点グループ1の頂点数の欄522は頂点
グループ1の頂点数が2であることを示している。頂点
グループ1に属する頂点の頂点インデックスの欄550
には頂点インデックスvtx4が格納されている。頂点
インデックスvtx4に対する重みの欄560には重み
0.3が格納されている。頂点グループ1に属する頂点
の頂点インデックスの欄552には頂点インデックスv
tx6が格納されている。頂点インデックスvtx6に
対する重みの欄562には重み0.2が格納されてい
る。
【0035】頂点グループ2の頂点数の欄522は頂点
グループ2の頂点数が1であることを示している。頂点
グループ2に属する頂点の頂点インデックスの欄554
には頂点インデックスvtx7が格納されている。頂点
インデックスvtx7に対する重みの欄564には重み
0.5が格納されている。なお、本実施の形態では、重
みは0以上1以下の実数である。
【0036】本実施の形態ではクラスタ毎に変形が行わ
れる。図6にクラスタ・データ600を示す。クラスタ
・データ600には、各クラスタの基準となる平行移動
量と当該クラスタに含まれる頂点グループの情報が含ま
れる。なお、複数のクラスタに含まれる頂点グループが
存在する場合もある。クラスタ数の欄610には、クラ
スタ・データ600に含まれるクラスタの数が格納され
る。図6の例では2である。
【0037】クラスタ・インデックス(index)の欄6
20には、クラスタ・データ600に含まれるクラスタ
のインデックスが格納される。図6の例ではクラスタcl
ust0である。クラスタclust0の基準平行移動量(x,
y,z)の欄622には、基準となる平行移動量(0,
0,0)が格納される。クラスタclust0に属する頂点グ
ループ数の欄624には、頂点グループ・リスト500
に含まれる頂点グループのうちクラスタclust0に属する
頂点グループの数2が格納される。具体的にクラスタcl
ust0に属する頂点グループの頂点グループ番号の欄62
6及び628には、頂点グループ番号3及び2が格納さ
れている。
【0038】新たなクラスタ・インデックス(index)
の欄630が出現すると次のクラスタ・インデックスの
欄までが新たなクラスタのデータを格納するための領域
となる。クラスタ・インデックスの欄630には、クラ
スタ・インデックスclust1が格納されている。このクラ
スタclust1の基準平行移動量(x,y,z)の欄632
には、基準となる平行移動量(0,0,0)が格納され
る。クラスタclust1に属する頂点グループの数の欄63
4には、クラスタclust1に属する頂点グループの数1が
格納される。具体的にクラスタclust1に属する頂点グル
ープの頂点グループ番号の欄636には、頂点グループ
番号1が格納されている。
【0039】三次元オブジェクトのクラスタに対して行
われる変形操作は、図7に示すアニメーション・データ
700に従って行われる。すなわち、クラスタ数及びフ
レーム数を定義するアニメーション・データ700A
(図7(a))と、変形開始から終了までの各フレーム
表示周期毎に移動する各クラスタの平行移動量を定義す
るアニメーション・データ700B(図7(b))とが
含まれる。
【0040】図7(a)においては移動するクラスタの
数がアニメーション・データ700Aのクラスタ数の欄
710に格納される。図7(a)の例では2である。そ
して、変形開始から終了までのフレーム表示周期数は、
フレーム数の欄720に格納される。図7(a)の例で
は10である。以下、移動するクラスタの数2に対応し
て2行毎にフレーム表示周期のクラスタの平行移動量が
アニメーション・データ700B(図7(b))規定さ
れる。クラスタ・インデックス(index)の欄730に
は、移動するクラスタのインデックスが格納される。平
行移動量(x,y,z)の欄740には、基準姿勢から
の平行移動量が格納される。
【0041】フレーム0におけるクラスタclust0の平行
移動量は(0,0,0)である。また、クラスタclust1
の平行移動量も(0,0,0)である。これは、基本姿
勢と同じであるということを示している。フレーム1に
おけるクラスタclust0の平行移動量は(1,0,0)で
ある。また、クラスタclust1の平行移動量は(−1,
0,0)である。このようなデータがフレーム9まで続
く。フレーム9におけるクラスタclust0の平行移動量は
(10,5,1)である。クラスタclust1の平行移動量
は(−12,0,0)である。
【0042】回転、拡大縮小、剪断等の操作を含むクラ
スタ変形では、各操作は定められた順序に従って行わな
ければならなかった。しかし、本発明においてはクラス
タの基準位置及び移動量は共に平行移動に限定されてい
るため、順序によらないクラスタ操作により変形が可能
となる。演算量も回転、拡大縮小、剪断等を含むクラス
タ変形に比べて大幅に削減される。
【0043】なお、顔の表情や筋肉の表現を行うための
細かな変形であれば、平行移動に限定しても表情の変化
等を十分に表現することができる。また、アニメーショ
ン・データ700の作成は通常人間の手により行われる
が、クラスタ変形を平行移動に限定しても回転等を含む
クラスタ変形と比べて、アニメーション・データ700
作成のための手間に変わりは無い。
【0044】以上述べたようなデータを本実施の形態で
は用いる。本実施の形態におけるプログラムの処理につ
いて説明する前に、動作の原理について図8を用いて説
明しておく。
【0045】図8(a)はクラスタの移動前の状態を示
している。図8においてクラスタCには、頂点V1乃至
V6が含まれる。頂点V1及びV6に予め定義されてい
る重みは0.5で、それ以外のV2乃至V5に予め定義
されている重みは1.0である。頂点V7乃至V13は
他のクラスタに属しており、本操作により影響を受けな
い頂点である。
【0046】図8(b)は図8(a)のクラスタCを下
方向に平行移動した場合を示す。但し、頂点V1及びV
6の重みは0.5ではなく1.0として平行移動してい
る。すなわち、クラスタCに属する全ての頂点の重みは
同じである。移動後の頂点V1a乃至V6aの位置は、
図8(a)に示した位置から単純に下方向に等しく移動
している。
【0047】図8(c)は図8(a)のクラスタCを下
方向に平行移動した場合を示す。図8(b)との違い
は、頂点V1及びV6の重みを0.5のままで移動した
点にある。すなわち、頂点V2乃至V5が1下方向に移
動した場合には、頂点V1及びV6は0.5だけ下方向
に移動する。図8(a)においては、頂点V3と頂点V
8を結ぶ直線より頂点V1は下にあった。同じく頂点V
4と頂点V7を結ぶ直線よりV6は下にあった。しか
し、頂点V1及びV6はクラスタCに属する他の頂点に
比して移動量は50%となる。このため、図8(c)で
は、頂点V3bと頂点V8を結ぶ直線近くに頂点V1b
が位置するようになっている。同じく頂点V4bと頂点
V7を結ぶ直線近くに頂点V6bが位置するようになっ
ている。
【0048】以上のようにクラスタ毎に平行移動する際
には、頂点に予め定義されている重みを用いて移動量を
変更する。
【0049】以上説明した動作原理をふまえて、本実施
の形態におけるオブジェクト変形処理の処理フローを図
9乃至図11を用いて説明する。
【0050】CPU103は、起動時に、ROM104
等に記憶されているオペレーティングシステムに基づ
き、CD−ROMドライブ113を介してCD−ROM
131から画像処理やゲームの実行に必要なゲームプロ
グラム133やデータ135を読み出し、RAM105
に転送させる。そして、CPU103は、RAM105
に転送されたゲームプログラム133を実行することに
より、以下に記載する処理を実現する。
【0051】なお、家庭用ゲーム装置101で行われる
制御及び処理の中には、CPU103以外の回路がCP
U103と協働して実際の制御及び処理を行っている場
合もある。説明の便宜上、以下では、CPU103が関
係する制御及び処理は、CPU103が直接的に実行し
ているものとして説明する。
【0052】また、画像処理やゲームを実行するために
必要なゲームプログラム133やデータ135は、実際
にはCPU103からの命令に従って処理の進行状況に
応じて順次CD−ROM131から読み出されてRAM
105に転送される。しかし、以下に示す説明では、発
明の理解を容易にするため、CD−ROM131からの
データの読み出しや、RAM105への転送に関する記
述は省略している。
【0053】もし画像処理やゲームを実行するために必
要なゲームプログラム133やデータ135がHDD1
07に格納されている場合には、CPU103からの命
令に従って処理の進行状況に応じて順次HDD107か
ら読み出されてRAM105に転送される。しかし、以
下に示す説明では、上で述べたのと同様の理由で、HD
D107からのデータの読み出しや、RAM105への
転送に関する記述は省略している。
【0054】図12に本実施の形態に係るメインフロー
を示す。最初に初期設定を行う(ステップS1)。この
初期設定では、図2乃至図7において示したようなデー
タをRAM105に読み出す。また、フレーム・カウン
タ900を0にリセットしておく。次に、仮想空間内の
状態設定を行う(ステップS3)。仮想空間内の状態設
定では、例えばユーザによるキーパッド161の操作に
より三次元オブジェクトのアニメーションの開始が命令
されたり、同じくユーザによるキーパッド161の操作
により視点位置が変更される場合に、それに応じて仮想
空間内の状態を変更する処理である。
【0055】そして本発明に係るオブジェクト変形処理
が実施される(ステップS5)。これについては後に詳
しく述べる。変形された三次元オブジェクトに対して描
画処理が行われる(ステップS7)。光源計算、透視変
換等を実施して、フレームバッファ112に描画する。
本実施の形態では描画処理は従来と変わらない。次にフ
レーム・カウンタ900を1インクリメントする(ステ
ップS9)。そして処理が終了か否かを判断する(ステ
ップS11)。フレーム・カウンタ900の値が処理の
終了を示している場合には処理を終了する。フレーム・
カウンタ900の値が処理の終了を示していない場合に
はステップS3に戻る。
【0056】図10にオブジェクト変形処理のフローを
示す。まず最初に、三次元オブジェクトの元形状を取得
する(ステップS21)。ここではRAM105にコピ
ーされた頂点座標リスト200をコピーして頂点バッフ
ァ800を生成する。次に、本発明に係るクラスタ変形
処理を実施する(ステップS23)。このクラスタ変形
処理については後に詳しく述べる。そして、ジョイント
変形処理を実施する(ステップS25)。
【0057】ジョイント変形処理は以下のようにして行
う。例えば、人型の三次元オブジェクトに対して変形を
施す場合には、人間の関節に相当するジョイントを定義
する。ジョイントには、三次元オブジェクトの形状を定
める各頂点が、ジョイントからの相対位置と共に対応付
けられる。また、ジョイント同士は人間の骨に相当する
ボーンで接続されており、骨が関節部分を中心に回転す
るように、各ジョイントは回転する。ジョイントの回転
に従って、ジョイントに対応付けられた頂点の位置座標
及び法線ベクトルが変更され、人間の骨の動きに相当す
る比較的大きな変形処理が実施される。
【0058】本発明の一つの特徴として、ジョイント変
形処理の前にクラスタ変形処理を実施するという点が挙
げられる。この順番によれば、三次元オブジェクトの細
かい変形を行った後に、大きな変形を行うことになる。
例えば人型の三次元オブジェクトの口を空けて且つ首を
曲げる場合に、この順番で処理すれば、下唇の部分を真
下に下げてから首を曲げることになる。口を開けるとい
う操作に対して、下唇の部分を真下に下げるという操作
が一対一対応する。しかし、この順番を逆転させれば、
首を曲げてから口を開けることになる。首を曲げてしま
うと、下唇の部分を真下に下げても自然な形で口が開か
ない。下唇の部分を首の曲がり方を考慮した上で移動さ
せなければならなくなる。よって図10の処理フローに
より全体の処理が簡略化される。
【0059】図11にクラスタ変形処理の詳細を示す。
最初に、全クラスタについて変形処理を実施したか判断
する(ステップS31)。全クラスタについて変形処理
が実施されていれば処理を終了する。全てのクラスタに
ついて変形処理が終了しているわけではない場合にはス
テップS33に移行する。なお、この段階ではどのフレ
ーム表示周期についての処理であるかはフレーム・カウ
ンタ900の値にて分かるものとする。
【0060】ステップS33では、アニメーション・デ
ータ700からクラスタ・インデックスを取得する(ス
テップS33)。そして取得したクラスタ・インデック
スに係る平行移動量(Tx,Ty,Tz)を取得する
(ステップS35)。アニメーション・データ700に
おいて、フレーム表示周期が同じであれば処理するクラ
スタの順番は関係ない。これは変形を平行移動に限定し
ているからである。
【0061】次に取得されたクラスタ・インデックスに
対応付けられた頂点グループ全てについて移動処理を終
了したか判断する(ステップS37)。もし、取得され
たクラスタ・インデックスに対応付けられた頂点グルー
プ全てについて移動処理を終了している場合には、次の
クラスタ・インデックスの処理に移行するためステップ
S31に戻る。一方、取得されたクラスタ・インデック
スに対応付けられた全ての頂点グループについて移動処
理が終了しているわけではない場合には、未処理の頂点
グループ番号をクラスタ・データ600から取得する。
【0062】次に、頂点グループ・リスト500を参照
して、取得した頂点グループ番号に属する頂点について
全て移動処理が終了したか判断する(ステップS4
1)。頂点グループ・リスト500は頂点グループ番号
の情報を含んでいない。但し、頂点グループ・リスト5
00を上から走査し、頂点数の行520乃至524の出
現回数により頂点グループ番号を把握することができ
る。すなわち、頂点数の行520乃至524の出現回数
−1が頂点グループ番号を意味するため、頂点数の行5
20乃至524の出現回数−1=取得した頂点グループ
番号となるまで頂点グループ・リスト500を上から走
査すれば、取得した頂点グループ番号に関する頂点の情
報を得ることができる。
【0063】もし、取得した頂点グループ番号に属する
頂点について全て移動処理が終了している場合には、ス
テップS37に戻る。一方、取得した頂点グループ番号
に属する全ての頂点について移動処理が終了しているわ
けではない場合には、頂点グループ・リスト500から
未処理の頂点インデックスを取得し、同様に頂点グルー
プ・リスト500から当該頂点の重みwを取得する(ス
テップS43)。
【0064】そして本フレーム表示周期における平行移
動量(Tx,Ty,Tz)と重みwに基づいて頂点バッ
ファ800の座標情報を変更する(ステップS45)。
すなわち、処理している頂点の座標を(x,y,z)と
した場合の新たな座標(nx,ny,nz)を以下の式
で計算する。 nx=x+Tx×w ny=y+Ty×w nz=z+Tz×w この新たな座標(nx,ny,nz)を頂点バッファ8
00に格納する。
【0065】このようにして、頂点の座標の値が更新さ
れる。更新された頂点座標は頂点バッファ800に格納
され、頂点バッファの内容に従って三次元オブジェクト
がフレームバッファ112に描画される。
【0066】ステップS45の後にはステップS41に
戻り、頂点グループの全ての頂点について移動処理が終
了するまでステップS43及びS45が実施される。
【0067】なお、クラスタ変形処理においては法線ベ
クトルの変形処理は行わなくともよい。正確には再計算
する必要があるが、細かな変形の場合には法線ベクトル
を再計算せずとも結果として得られる画像の質は変わら
ない。
【0068】以上述べたように、それぞれ少なくとも1
つのクラスタに対応付けられた複数の頂点により形状が
定められる三次元オブジェクトを変形する場合には、フ
レーム表示周期毎に、各クラスタの平行移動量を取得す
る(ステップS35)。そして、フレーム表示周期毎
に、取得された各クラスタの平行移動量を、クラスタに
対応する頂点毎に、当該頂点に予め定義された重みに従
って変更し、変更された平行移動量に従って頂点を移動
する(ステップS45)。
【0069】頂点は、対応するクラスタの平行移動量を
自身に定義された重みにより変更した平行移動量だけ移
動する。頂点が複数のクラスタに対応している場合に
は、1フレーム表示周期において複数回平行移動する。
なお、平行移動を複数回行っても処理の順序は問われな
い。しかも、頂点の平行移動は積和演算のみで行うこと
ができ、行列演算の必要な回転移動に比べて演算負荷が
少ない。
【0070】すなわち、クラスタに属する頂点の移動を
平行移動のみに限定すれば変形操作の順番を考慮する必
要がなくなり、且つ行列演算ではなく積和演算のみで済
むようになる。行列演算を行わないので処理量が減少
し、三次元オブジェクトの細かい変形のリアルタイム処
理が容易になる。三次元オブジェクトの頂点数が多い場
合には、特に本発明は有効である。
【0071】また、図10のオブジェクト変形処理に示
したように、クラスタ変形処理及びジョイント変形処理
の順番でオブジェクト変形を行うため、クラスタ変形の
定式化を行うことができ、全体として処理が簡単にな
る。
【0072】(その他の実施の形態) (1)アニメーション・データ700では、全てのフレ
ームについて平行移動量のデータが格納されていること
を前提としていた。しかし、必ずしも全てのフレームに
ついて平行移動量のデータが格納されている必要は無
い。データの無いフレームについては、前後のフレーム
の平行移動量を補間することにより求めることができ
る。すなわち、まず各フレーム表示周期における各クラ
スタの平行移動量が定義されているか判断する。そし
て、処理中のフレーム表示周期における各クラスタの平
行移動量が定義されていないと判断された場合には、既
に処理されたフレーム表示周期における各クラスタの平
行移動量と後に処理されるフレーム表示周期における各
クラスタの平行移動量とから、処理中のフレーム表示周
期における各クラスタの平行移動量を計算する。一方、
処理中のフレーム表示周期における各クラスタの平行移
動量が定義されていると判断された場合には、定義され
ている処理中のフレーム表示周期における各クラスタの
平行移動量を取得する
【0073】(2)上の実施の形態では三角形ポリゴン
を前提に説明したが、本発明は、四角形以上の多角形ポ
リゴンであっても、頂点を移動することにより三次元オ
ブジェクトを変形させるモデルにおいては適用すること
ができる。
【0074】(3)使用するハードウエアの変更 図1は一例であって、様々な変更が可能である。通信イ
ンターフェース115を備えるか否かは任意である。本
発明は直接サウンド処理には関係しないので、サウンド
処理部109を備えている必要は無い。
【0075】また、CD−ROMは記録媒体の一例であ
って、ROMのような内部メモリ、CD−ROM、DV
D−ROM、メモリカートリッジ、フロッピーディス
ク、磁気ディスク、DVD−RAM等の他の記録媒体で
あってもよい。その場合にはCD−ROMドライブ11
3を、対応する媒体で読み出し可能なドライブにする必
要がある。
【0076】さらに、以上は本発明をコンピュータ・プ
ログラムにより実装した場合であるが、コンピュータ・
プログラムと電子回路などの専用の装置の組み合せ、又
は電子回路などの専用の装置のみによっても実装するこ
とは可能である。
【0077】以上、本発明を実施の形態に基づいて具体
的に説明したが、本発明は上記実施の形態に限定される
ものではない。要旨を逸脱しない範囲で適宜変更可能で
ある。例えば、上記実施の形態では、家庭用ゲーム機を
プラットフォームとして本発明を実現した場合について
述べたが、本発明は通常のコンピュータ、アーケードゲ
ーム機などをプラットフォームとして実現しても良い。
また、携帯情報端末、カーナビゲーション・システム等
をプラットフォームにして実現することも考えられる。
【0078】また、本発明を実現するためのプログラム
やデータは、コンピュータやゲーム機に対して着脱可能
なCD−ROM等の記録媒体により提供される形態に限
定されない。すなわち、本発明を実現するためのプログ
ラムやデータを、図1に示す通信インターフェース11
5、通信回線141を介して接続されたネットワーク1
51上の他の機器側のメモリに記録し、プログラムやデ
ータを通信回線141を介して必要に応じて順次RAM
105に格納して使用する形態であってもよい。
【0079】(表示例)図12に変形前の三次元オブジ
ェクト10のポリゴン・モデルを示す。図12では人型
の三次元オブジェクト10の頭部を正面から示してい
る。頭部は非常に注目される部分であり、多数のポリゴ
ンから構成されていることが分かる。特に頭部において
目の部分及び口の部分は微妙な動きにて、豊かな表情を
表現するために、非常に多数のポリゴンにより構成され
る。口を開けるという変形は、単純に下唇の部分のクラ
スタだけを下方向に移動させればよいわけではなく、複
数のクラスタを平行移動させることにより自然な形で口
を開けるという変形がなされる。
【0080】図13に変更後の三次元オブジェクト12
のポリゴン・モデルを示す。図13は、人型の三次元オ
ブジェクト12の頭部が示されているのは図12と同じ
であるが、三次元オブジェクトの体勢が変わっており、
且つ口を開いている点で異なる。三次元オブジェクトの
体勢を変更するのは、ジョイント変形処理(図10:ス
テップS25)にて実施される。本発明ではジョイント
変形処理より前に、口を開けるというクラスタ変形処理
(ステップS23)が実施される。図13では、下唇か
ら下あごの部分にクラスタが設けられ、これらのクラス
タが下方向に移動されている。また、ほほの部分に設け
られたクラスタを横方向に移動させる等の微妙な変形も
行われている。
【0081】図14に図12に示した三次元オブジェク
ト10を描画した表示画面例を示す。描画方法について
は従来と同じであるが、滑らかな三次元オブジェクトが
描画されていることが分かる。一方図15には図13に
示した三次元オブジェクト12を描画した表示画面例を
示す。本発明により口を開けるという変形が三次元オブ
ジェクト10に施されているが、自然な形で口が開かれ
ており且つ滑らかな三次元オブジェクト12が描画され
ていることが分かる。
【0082】
【発明の効果】以上説明したように本発明により、三次
元オブジェクトの細かい変形を簡易な処理で実現する技
術を提供することができる。
【図面の簡単な説明】
【図1】家庭用ゲーム機のブロック構成図である。
【図2】頂点座標リストの一例を示す図である。
【図3】法線ベクトル・リストの一例を示す図である。
【図4】三角形ポリゴン・リストの一例を示す図であ
る。
【図5】頂点グループ・リストの一例を示す図である。
【図6】クラスタ・データの一例を示す図である。
【図7】アニメーション・データの一例を示す図であ
る。
【図8】本発明の動作原理を説明するための模式図であ
る。(a)はクラスタ変形前の状態を示す。(b)はク
ラスタCに属する全ての頂点の重みを100%としてク
ラスタ変形を行った場合の状態を示す。(c)は本発明
を用いてクラスタ変形を行った場合の状態を示す。
【図9】本発明の処理のメインフローを示すフローチャ
ートである。
【図10】本発明の三次元オブジェクト変形処理のフロ
ーチャートである。
【図11】本発明のクラスタ変形処理のフローチャート
である。
【図12】変形前の状態における三次元オブジェクトの
ポリゴン・モデルを示す図である。
【図13】変形後の状態における三次元オブジェクトの
ポリゴン・モデルを示す図である。
【図14】図12に示した三次元オブジェクトを描画し
た表示画面例である。
【図15】図13に示した三次元オブジェクトを描画し
た表示画面例である。
【符号の説明】
101 家庭用ゲーム機 103 CPU 104
ROM 105 RAM 107 HDD 109 サウン
ド処理部 112 フレームバッファ 111 グラフィックス
処理部 113 CD−ROMドライブ 115 通信インタ
ーフェース 117 インターフェース部 119 内部バス
121 TVセット 120 表示画面 131 CD−ROM 141
通信媒体 151 ネットワーク 161 キーパッド 171
メモリカード 200 頂点座標リスト 300 法線ベクトル・リ
スト 400 三角形ポリゴン・リスト 500 頂点グル
ープ・リスト 600 クラスタ・データ 700 アニメーション
・データ 800 頂点バッファ 900 フレーム・カウンタ
フロントページの続き Fターム(参考) 2C001 BC00 BC05 BC08 BC10 CB01 CB06 CC02 5B050 BA07 BA08 BA09 EA12 FA02 5B057 AA20 CD02 5C082 AA06 AA37 BA12 BA43 CB01 CB06 DA22 DA87 MM02 9A001 HH26 HH29 JZ76

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】クラスタに対応付けられた複数の頂点によ
    り形状の少なくとも一部が定められる三次元オブジェク
    トを変形する、ビデオゲーム用のプログラムを記録した
    コンピュータ読み取り可能な記録媒体であって、 前記コンピュータに、 フレーム表示周期毎に、前記三次元オブジェクトの動き
    を定義したアニメーション・データに基づいて前記クラ
    スタの平行移動量を取得する第1ステップと、 前記フレーム表示周期毎に、前記第1ステップで取得さ
    れた前記クラスタの平行移動量と当該クラスタに対応す
    る各頂点毎に予め定義された重みとに従って当該各頂点
    の平行移動量を算出し、当該平行移動量に従って当該各
    頂点を互いに平行に移動する第2ステップと、 を実行させるためのプログラムを記録したことを特徴と
    するビデオゲーム用のコンピュータ読み取り可能な記録
    媒体。
  2. 【請求項2】前記第2ステップ後に、前記三次元オブジ
    ェクトの骨格を定義しており、複数のジョイントを含
    み、且つ前記複数の頂点の各々が前記複数のジョイント
    の少なくとも1つに対応付けられている仮想スケルトン
    における前記ジョイントの移動に従って、対応する前記
    頂点を移動する第3ステップを前記コンピュータにさら
    に実行させることを特徴とする請求項1記載のビデオゲ
    ーム用のコンピュータ読み取り可能な記録媒体。
  3. 【請求項3】前記第1ステップが、 処理中のフレーム表示周期における各前記クラスタの平
    行移動量が定義されているか判断する第3ステップと、 前記第3ステップにおいて前記処理中のフレーム表示周
    期における各前記クラスタの平行移動量が定義されてい
    ないと判断された場合には、既に処理されたフレーム表
    示周期における各前記クラスタの平行移動量と後に処理
    されるフレーム表示周期における各前記クラスタの平行
    移動量とから、前記処理中のフレーム表示周期における
    各前記クラスタの平行移動量を計算する第4ステップ
    と、 前記第3ステップにおいて前記処理中のフレーム表示周
    期における各前記クラスタの平行移動量が定義されてい
    ると判断された場合には、定義されている前記処理中の
    フレーム表示周期における各前記クラスタの平行移動量
    を取得する第5ステップと、 を含むことを特徴とする請求項1記載のビデオゲーム用
    のコンピュータ読み取り可能な記録媒体。
  4. 【請求項4】クラスタに対応付けられた複数の頂点によ
    り形状の少なくとも一部が定められる三次元オブジェク
    トを変形する、ビデオゲームにおける三次元オブジェク
    ト変形方法であって、 フレーム表示周期毎に、前記三次元オブジェクトの動き
    を定義したアニメーション・データに基づいて前記クラ
    スタの平行移動量を取得する第1ステップと、 前記フレーム表示周期毎に、前記第1ステップで取得さ
    れた前記クラスタの平行移動量と当該クラスタに対応す
    る各頂点毎に予め定義された重みとに従って当該各頂点
    の平行移動量を算出し、当該平行移動量に従って当該各
    頂点を互いに平行に移動する第2ステップと、 を含むことを特徴とする、ビデオゲームにおける三次元
    オブジェクト変形方法。
  5. 【請求項5】前記第2ステップ後に、前記三次元オブジ
    ェクトの骨格を定義しており、複数のジョイントを含
    み、且つ前記複数の頂点の各々が前記複数のジョイント
    の少なくとも1つに対応付けられている仮想スケルトン
    における前記ジョイントの移動に従って、対応する前記
    頂点を移動する第3ステップをさらに含むことを特徴と
    する請求項4記載のビデオゲームにおける三次元オブジ
    ェクト変形方法。
  6. 【請求項6】前記第1ステップが、 処理中のフレーム表示周期における各前記クラスタの平
    行移動量が定義されているか判断する第3ステップと、 前記第3ステップにおいて前記処理中のフレーム表示周
    期における各前記クラスタの平行移動量が定義されてい
    ないと判断された場合には、既に処理されたフレーム表
    示周期における各前記クラスタの平行移動量と後に処理
    されるフレーム表示周期における各前記クラスタの平行
    移動量とから、前記処理中のフレーム表示周期における
    各前記クラスタの平行移動量を計算する第4ステップ
    と、 前記第3ステップにおいて前記処理中のフレーム表示周
    期における各前記クラスタの平行移動量が定義されてい
    ると判断された場合には、定義されている前記処理中の
    フレーム表示周期における各前記クラスタの平行移動量
    を取得する第5ステップと、 を含むことを特徴とする請求項4記載のビデオゲームに
    おける三次元オブジェクト変形方法。
  7. 【請求項7】クラスタに対応付けられた複数の頂点によ
    り形状の少なくとも一部が定められる三次元オブジェク
    トを変形するビデオゲーム装置であって、 フレーム表示周期毎に、前記三次元オブジェクトの動き
    を定義したアニメーション・データに基づいて前記クラ
    スタの平行移動量を取得する取得手段と、 前記フレーム表示周期毎に、前記取得手段により取得さ
    れた前記クラスタの平行移動量と当該クラスタに対応す
    る各頂点毎に予め定義された重みとに従って当該各頂点
    の平行移動量を算出し、当該平行移動量に従って当該各
    頂点を互いに平行に移動する移動手段と、 を含むことを特徴とするビデオゲーム装置。
  8. 【請求項8】クラスタに対応付けられた複数の頂点によ
    り形状の少なくとも一部が定められる三次元オブジェク
    トを変形するビデオゲーム装置であって、 コンピュータと、 前記コンピュータに実行させるプログラムを記録したコ
    ンピュータ読み取り可能な記録媒体と、 を有し、 前記プログラムは、前記コンピュータに、 フレーム表示周期毎に、前記三次元オブジェクトの動き
    を定義したアニメーション・データに基づいて前記クラ
    スタの平行移動量を取得する取得処理と、 前記フレーム表示周期毎に、前記取得処理で取得された
    前記クラスタの平行移動量と当該クラスタに対応する各
    頂点毎に予め定義された重みとに従って当該各頂点の平
    行移動量を算出し、当該平行移動量に従って当該各頂点
    を互いに平行に移動する移動処理と、 を実行させることを特徴とするビデオゲーム装置。
JP2000018303A 2000-01-27 2000-01-27 ビデオゲームにおける三次元オブジェクト変形方法及びビデオゲーム装置、並びにビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体 Expired - Lifetime JP3530095B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000018303A JP3530095B2 (ja) 2000-01-27 2000-01-27 ビデオゲームにおける三次元オブジェクト変形方法及びビデオゲーム装置、並びにビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体
US10/042,713 US7161600B2 (en) 2000-01-27 2001-01-26 Methods and apparatus for transforming three-dimensional objects in video games

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000018303A JP3530095B2 (ja) 2000-01-27 2000-01-27 ビデオゲームにおける三次元オブジェクト変形方法及びビデオゲーム装置、並びにビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体

Publications (2)

Publication Number Publication Date
JP2001209823A true JP2001209823A (ja) 2001-08-03
JP3530095B2 JP3530095B2 (ja) 2004-05-24

Family

ID=18545167

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000018303A Expired - Lifetime JP3530095B2 (ja) 2000-01-27 2000-01-27 ビデオゲームにおける三次元オブジェクト変形方法及びビデオゲーム装置、並びにビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体

Country Status (2)

Country Link
US (1) US7161600B2 (ja)
JP (1) JP3530095B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1306114A3 (en) * 2001-10-24 2003-08-13 Konami Computer Entertainment Osaka, Inc. Recording medium storing 3D model deformation program, 3D model deformation program, 3D deformation method and video game device
EP1345179A3 (en) * 2002-03-13 2004-01-21 Matsushita Electric Industrial Co., Ltd. Method and apparatus for computer graphics animation
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
JP2008140364A (ja) * 2006-07-24 2008-06-19 Advanced Telecommunication Research Institute International リップシンクアニメーション作成装置、コンピュータプログラム及び顔モデル生成装置
JP2009140025A (ja) * 2007-12-03 2009-06-25 Sammy Corp オブジェクト設計支援プログラムおよび装置
JP2020510262A (ja) * 2017-08-28 2020-04-02 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 表情アニメーション生成方法及び装置、記憶媒体ならびに電子装置

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8903824B2 (en) * 2011-12-09 2014-12-02 International Business Machines Corporation Vertex-proximity query processing
TWI715903B (zh) * 2018-12-24 2021-01-11 財團法人工業技術研究院 動作追蹤系統及方法
US11052317B1 (en) 2020-06-29 2021-07-06 Square Enix Ltd. Performing simulation of stretchable character in computer game

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10188028A (ja) * 1996-10-31 1998-07-21 Konami Co Ltd スケルトンによる動画像生成装置、該動画像を生成する方法、並びに該動画像を生成するプログラムを記憶した媒体
US6320988B1 (en) * 1996-11-19 2001-11-20 Namco Ltd. Skeleton model shape transformation method, image synthesizing apparatus, and information storage medium
US6009435A (en) * 1997-11-21 1999-12-28 International Business Machines Corporation Progressive compression of clustered multi-resolution polygonal models

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1306114A3 (en) * 2001-10-24 2003-08-13 Konami Computer Entertainment Osaka, Inc. Recording medium storing 3D model deformation program, 3D model deformation program, 3D deformation method and video game device
US7113189B2 (en) 2001-10-24 2006-09-26 Konami Computer Entertainment Osaka, Inc. Recording medium storing 3D model deformation program, 3D model deformation program, 3D model deformation method and video game device
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
EP1345179A3 (en) * 2002-03-13 2004-01-21 Matsushita Electric Industrial Co., Ltd. Method and apparatus for computer graphics animation
US6999084B2 (en) 2002-03-13 2006-02-14 Matsushita Electric Industrial Co., Ltd. Method and apparatus for computer graphics animation utilizing element groups with associated motions
CN1326094C (zh) * 2002-03-13 2007-07-11 松下电器产业株式会社 计算机图形动画装置及计算机图形动画方法
JP2008140364A (ja) * 2006-07-24 2008-06-19 Advanced Telecommunication Research Institute International リップシンクアニメーション作成装置、コンピュータプログラム及び顔モデル生成装置
JP4617500B2 (ja) * 2006-07-24 2011-01-26 株式会社国際電気通信基礎技術研究所 リップシンクアニメーション作成装置、コンピュータプログラム及び顔モデル生成装置
JP2009140025A (ja) * 2007-12-03 2009-06-25 Sammy Corp オブジェクト設計支援プログラムおよび装置
JP2020510262A (ja) * 2017-08-28 2020-04-02 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 表情アニメーション生成方法及び装置、記憶媒体ならびに電子装置
US11270489B2 (en) 2017-08-28 2022-03-08 Tencent Technology (Shenzhen) Company Limited Expression animation generation method and apparatus, storage medium, and electronic apparatus

Also Published As

Publication number Publication date
US20020167521A1 (en) 2002-11-14
JP3530095B2 (ja) 2004-05-24
US7161600B2 (en) 2007-01-09

Similar Documents

Publication Publication Date Title
JP3168244B2 (ja) 画像生成装置およびその方法
JP3764070B2 (ja) オブジェクト表示プログラムおよびオブジェクト表示装置
WO1997032248A1 (fr) Processeur d'images et procede de traitement d'images
JP2000107447A (ja) ビデオゲーム装置、ゲーム画像表示方法、及び記録媒体
JP2001101440A (ja) アニメーションデータを記録した記録媒体、それを利用した画像処理方法及び画像処理プログラムを記録した記録媒体
JP3530095B2 (ja) ビデオゲームにおける三次元オブジェクト変形方法及びビデオゲーム装置、並びにビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体
US6339430B1 (en) Video game machine and method for changing texture of models
JP4468631B2 (ja) 3次元顔モデルのためのテクスチャー生成方法及び装置
JP2003051025A (ja) 描画処理方法及び装置、描画処理プログラムを記録した記録媒体、描画処理プログラム
JP4053078B2 (ja) 3次元ゲーム装置及び情報記憶媒体
JP3625201B2 (ja) 3次元モデル変形プログラム、3次元モデル変形方法及びビデオゲーム装置
JP3642259B2 (ja) マルチスクリーン表示装置
JP3957363B2 (ja) 3次元ゲーム装置及び情報記憶媒体
JP3727711B2 (ja) 画像情報処理装置
JP4447000B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2001084396A (ja) レンダリング方法及び装置、ゲーム装置、並びに立体モデルをレンダリングするためのプログラムを格納したコンピュータ読み取り可能な記録媒体
JP2004159922A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4357155B2 (ja) アニメーション画像の生成プログラム
JP3809294B2 (ja) ゲーム装置、ゲーム方法、コンピュータ読取可能な記録媒体
JP3910259B2 (ja) 画像処理装置および方法、並びにレンダリング装置および方法
JP3636681B2 (ja) 画像処理方法、画像処理装置、半導体デバイス、コンピュータプログラム及び記録媒体
JP3363134B2 (ja) 3dモデルの描画データ作成方法、装置及び3dビデオゲーム装置並びに3dモデルの描画データ作成プログラムを記録した可読記録媒体
JP4391633B2 (ja) 画像生成システム及び情報記憶媒体
US8379030B1 (en) Computer graphics variable transformation interface
JP4025796B2 (ja) 画像処理方法および装置

Legal Events

Date Code Title Description
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: 20040210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040226

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3530095

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20080305

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090305

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20090305

Year of fee payment: 5

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

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

Free format text: PAYMENT UNTIL: 20090305

Year of fee payment: 5

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

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

Free format text: PAYMENT UNTIL: 20090305

Year of fee payment: 5

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20090305

Year of fee payment: 5

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20090305

Year of fee payment: 5

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

Year of fee payment: 5

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

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100305

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20100305

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110305

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20110305

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120305

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20120305

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130305

Year of fee payment: 9

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20130305

Year of fee payment: 9

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

Year of fee payment: 9

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

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20140305

Year of fee payment: 10

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term