JP4136341B2 - Image processing apparatus and program thereof - Google Patents
Image processing apparatus and program thereof Download PDFInfo
- Publication number
- JP4136341B2 JP4136341B2 JP2001257539A JP2001257539A JP4136341B2 JP 4136341 B2 JP4136341 B2 JP 4136341B2 JP 2001257539 A JP2001257539 A JP 2001257539A JP 2001257539 A JP2001257539 A JP 2001257539A JP 4136341 B2 JP4136341 B2 JP 4136341B2
- Authority
- JP
- Japan
- Prior art keywords
- motion
- character
- distance
- image processing
- specific object
- 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
Landscapes
- Processing Or Creating Images (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、画像処理装置、及びその画像処理を構成するためのプログラムに関する。
【0002】
【従来の技術】
仮想3次元空間に配置されたキャラクタを操作するゲームでは、プレイヤーの操作とキャラクタの状況について所定の条件が満たされたとき、適宜、所定のモーションを表現する必要がある。例えば、障害物を跳び越える、物を蹴る等のモーションである。
【0003】
このようなモーションを表現する方法として、モーション中の動作部位の動作過程を予めデータ化しておき、必要に応じてそのモーションデータを読み出して表現する方法が知られている。
【0004】
例えば人間型のキャラクタの場合、実際の人間のモーションにおける個々の関節の複雑な動作過程を分析し、キャラクタのモーションデータに反映することで、適宜、リアリティのあるモーションを表現可能である。
【0005】
【発明が解決しようとする課題】
従来の前記モーションの表現方法は、モーション中のキャラクタと、その周囲のオブジェクトとの位置関係を考慮することなく、常に一定のモーションを表現している。従って、キャラクタと、その周囲のオブジェクトとの位置関係によっては、不自然な画像が形成されることがあった。
【0006】
例えば、人間型のキャラクタが壁の近くに配置されている場合、キャラクタが伸ばした手足が壁にめりこむ不自然な映像が表示されることがあった。
【0007】
この場合、1種類のモーションに対して、実際の表現内容が異なっている複数種類のモーションデータを用意し(例えば、キャラクタが障害物を跳び越えるモーションに対して、体を垂直にして跳び越えるモーションデータ、体を横にして跳び越えるモーションデータを用意し)、キャラクタと、その周囲のオブジェクトの位置関係に応じてモーションデータを選択する方法が考えられる。しかし、この方法では、記録媒体に保存するモーションデータが膨大なものとなってしまう。
【0008】
そこで、本発明は、不自然な映像の表示を未然に防止できるようにモーションを表現することができる画像処理装置を提供することを目的とする。
【0009】
【課題を解決するための手段】
以下、本発明について説明する。なお、本発明の理解を容易にするために添付図面の参照符号を括弧書きにて付記するが、それにより本発明が図示の形態に限定されるものではない。
【0010】
本発明の画像処理装置(10)は、仮想3次元空間に配置されたキャラクタ(30)の所定のモーションを、当該モーションに対応して予め用意されたモーションデータに基づいて表現する画像処理装置において、前記モーションを表現する必要が生じたとき、前記キャラクタと、その周囲に配置された特定のオブジェクト(32)との位置関係を適正に保ちつつ前記モーションを実行可能か否かを判別する手段と、前記判別する手段において実行不可能と判別されたとき、所定の視点からみて前記モーションが反転して見えるように前記モーションデータを変換し、その変換後のデータに従って前記モーションの表現に必要な処理を行う手段とを備え、前記モーションデータは、前記キャラクタを形成する複数の要素のそれぞれに関して、前記モーションに応じて時系列に設定された3次元座標の集合体であり、前記判別する手段は、前記キャラクタに対して設定された所定の基準線(50)からそのキャラクタの各部位までの距離がモーション中に最大となる方向を特定し、前記最大となる方向に位置するオブジェクトを前記特定のオブジェクトとして前記モーションを実行可能か否かを判別し、前記表現に必要な処理を行う手段は、前記モーションデータに含まれている前記キャラクタの各要素に関する3次元座標を、前記モーションが前記基準線を含み前記最大となる方向に垂直な基準面に関して反転されるように前記基準面に対して対称に変換することにより、上述した課題を解決する。
【0011】
また、本発明の画像処理用プログラムは、仮想3次元空間に配置されたキャラクタ(30)の所定のモーションを、当該モーションに対応して予め用意されたモーションデータに基づいて表現する画像処理装置(10)としてのコンピュータを、前記モーションを表現する必要が生じたとき、前記キャラクタと、その周囲に配置された特定のオブジェクト(32)との位置関係を適正に保ちつつ前記モーションを実行可能か否かを判別する手段と、前記判別する手段において実行不可能と判別されたとき、所定の視点からみて前記モーションが反転して見えるように前記モーションデータを変換し、その変換後のデータに従って前記モーションの表現に必要な処理を行う手段として機能させるように構成され、前記モーションデータは、前記キャラクタを形成する複数の要素のそれぞれに関して、前記モーションに応じて時系列に設定された3次元座標の集合体であり、前記判別する手段は、前記キャラクタに対して設定された所定の基準線(50)からそのキャラクタの各部位までの距離がモーション中に最大となる方向を特定し、前記最大となる方向に位置するオブジェクトを前記特定のオブジェクトとして前記モーションを実行可能か否かを判別し、前記表現に必要な処理を行う手段は、前記モーションデータに含まれている前記キャラクタの各要素に関する3次元座標を、前記モーションが前記基準線を含み前記最大となる方向に垂直な基準面に関して反転されるように前記基準面に対して対称に変換することを特徴とすることにより、上述した課題を解決する。
【0012】
本発明によれば、モーション中のキャラクタと、キャラクタの周囲に配置された特定のオブジェクトとの位置関係を適正に保つことができないときには、前記モーションに対応するモーションデータを用いつつも、表現内容の異なるモーションを表現することとなる。従って、従来は常に一定のモーションしか表現しなかったために形成された不自然な画像を軽減、防止することができる。また、予め用意されたモーションデータを用いるため、新たなデータを必要とせず、記憶媒体の容量を節約できる。また、仮想3次元空間内でキャラクタの座標が反転された後にレンダリングがなされるため、反転したモーションを自然なものとすることができる。なお、所定の基準線はキャラクタの中心に設定する等してキャラクタに固有の基準としてもよいし、モーションに伴うキャラクタの移動範囲の中心に設置する等してモーションに固有の基準としてもよい。
【0013】
前記判別する手段は、前記キャラクタと、前記特定のオブジェクトとが接触することなく前記モーションを実行可能か否かを判別してもよい。この場合には、キャラクタの一方にオブジェクトが近接する状況において、キャラクタがモーション中にそのオブジェクトの方向へ伸びてオブジェクトに接触し、これを突き抜けるおそれがあるとき、そのモーションが左右に反転して表現される。従って、キャラクタがオブジェクトにめりこむような不自然な画像の生成を防止することができる。なお、接触するか否かの判定は、実際に接触するか否かを基準としてもよいし、所定の距離以下となるか否かを基準としてもよい。
【0014】
前記判別する手段は、前記モーション中に最大となる距離(Lmax)と、仮想3次元空間の所定の位置に前記キャラクタを配置したと仮定したときの前記基準線から前記特定のオブジェクトまでの距離(Lref)とを比較して前記モーションを実行可能か否かを判別してもよい。この場合には、モーション中のキャラクタとオブジェクトとの間に適正な距離が確保されるか否かの観点から、モーションを実行可能か否かを判別することができる。
【0015】
前記判別する手段は、前記オブジェクトを記述するモデルデータを参照して、前記基準線から前記特定のオブジェクトまでの距離を特定してもよい。あるいは、前記特定のオブジェクトを簡素化して得られた判別用の仮想面(52)と前記基準線との距離を、前記特定のオブジェクトまでの距離として特定してもよい。この場合には、キャラクタの周囲に複雑な形状のオブジェクトが配置されていても、適正な位置関係を保てるか否かの判断を簡素化された仮想面を利用して簡単に行うことができる。従って、判別処理が効率化され、処理の負荷を軽減することができる。
【0016】
前記特定のオブジェクトと関連付けて前記キャラクタの移動可能な領域(70)が設定され、前記判別する手段は、前記モーション中に最大となる距離と前記基準線から前記移動可能な領域の境界面までの距離とを比較して、前記モーションを実行可能か否かを判別してもよい。この場合には、次のような不都合を解消できる。モーションを表現する必要が生じたとき、そのときのキャラクタと、キャラクタに近接するオブジェクトとの位置関係から、キャラクタとその周囲に配置された特定のオブジェクトとの位置関係を適正に保ちつつモーションを実行可能か否か判別する場合、モーション開始時には周囲に配置された特定のオブジェクトと適正な位置関係を保てても、モーションに伴いキャラクタが移動したとき、周囲に配置された特定のオブジェクトとの位置関係を適正に保てなくなることがある。しかし、キャラクタに近接するオブジェクトに代えて前記のように設定された移動可能な領域の境界面との位置関係から判別することにより、前記の不都合を解消できる。従って、キャラクタが侵入することが不自然な領域にキャラクタが侵入する画像が形成されるおそれをなくすことができる。
【0017】
この場合には、特に、キャラクタと境界面との間に適切な距離を確保できるか否かの観点から、モーションを実行可能か否かを判別することができる。
【0019】
なお、本発明のプログラムは記憶媒体に記録された状態で利用者に提供されてもよいし、有線又は無線のネットワークを通じて利用者に配布されてもよい。
【0020】
【発明の実施の形態】
図1は本発明の画像処理装置の一実施形態として構成されたゲーム機のブロック図である。ゲーム機10は、記憶媒体としてのDVD−ROM25に記録されたゲーム用プログラムに従って所定のゲームを実行するコンピュータとして構成されている。ゲーム機10は、マイクロプロセッサを主体として構成されたCPU11と、そのCPU11に対する主記憶装置としてのROM12及びRAM13と、CPU11からの指示に基づいて画像処理及び音声処理に適した処理を行う画像描画装置14及びサウンド処理装置16と、DVD−ROM25からプログラムやデータを読み取るためのDVD−ROM読取装置18とを有している。ROM12には、ゲーム機10の全体の動作制御に必要なプログラムとしてのオペレーティングシステムが書き込まれる。RAM13には記憶媒体としてのDVD−ROM25から読み取ったプログラムやデータが必要に応じて書き込まれる。
【0021】
CPU11の内部には、いわゆる3次元コンピュータグラフィックスにおけるポリゴン座標変換やベクトル演算等のジオメトリ処理を行うための画像処理用演算部11aが設けられる。この画像処理用演算部11aは例えばマイクロプロセッサと特定のソフトウェアとの組み合わせによって構成される。
【0022】
一方、画像描画装置14はCPU11からポリゴンデータ等を受け取ってビデオメモリ15に描画するいわゆるレンダリング処理を実行するとともに、そのビデオメモリ15にレンダリングされた画像データに基づいて一フレームを構成するビデオ再生信号を生成し、そのビデオ再生信号を所定のタイミングでモニタ19に出力する。
【0023】
なお、図1において、ビデオメモリ15は画像描画装置14に対応して描画専用のメモリとして設けられているが、メインメモリとしてのRAM13上にビデオメモリが確保されてもよい。また、CPU11及び画像描画装置14によってそれぞれどのような処理を負担するかはハードウェアの構成に依存して相違するものであり、本発明は上記の構成に限定されるものではない。
【0024】
サウンド処理装置16は、DVD−ROM25から読み出された音声、楽音等のデータや音源データ等を再生してスピーカ20から出力させる。読取装置18は、CPU11からの指示に従ってDVD−ROM25上に記録されたプログラムやデータを読み取り、その読み取った内容に対応した信号を出力する。
【0025】
さらに、CPU11にはバス24を介して入力装置22及び外部記憶装置23がそれぞれ接続される。外部記憶装置23は例えば不揮発性の半導体メモリ、ハードディスク、光磁気ディスク等の書換えが可能な記憶装置である。このような構成はあくまで一例であり、本発明の画像処理方法が適用されるコンピュータの構成は適宜変更されてよい。なお、CPU11に対する各装置の接続態様は図1に限定されない。
【0026】
記憶媒体としてのDVD−ROM25に記録されたゲーム用プログラムは、仮想3次元空間に配置されたキャラクタがユーザの操作に応じて種々の動作を行うゲームを実行するものである。図1のゲーム用プログラムには、キャラクタの各種のモーションを表現するための画像処理モジュールが含まれている。
【0027】
DVD−ROM25に記録されたゲーム用データには、仮想3次元空間を表現するための地形データ、モーションの基礎となるモーションデータが含まれている。
【0028】
図2はモーションデータに基づいて表示されるモーションの一例として、キャラクタ30が柵31を跳び越えるモーションを表現したものである。
【0029】
この例のモーションデータは、図2(a)に示すように、キャラクタ30がその左手を柵31に置いて体を支え、右側に足を投げ出しながら柵31を跳び越えるという動作を所定数のフレームで表現するように作成されている。この場合、仮にモーション中のキャラクタ30と壁32との位置関係を考慮せず、常にモーションデータをそのまま使用してモーションを表示させると、キャラクタ30が壁32に近付いているときにその足が壁32にめりこむような不自然な映像が形成されることがある(図2(a)の斜線部参照)。
【0030】
そこで、本実施形態の画像処理モジュールは、モーションを表現する必要が生じたとき、キャラクタ30と、壁32との位置関係を適正(つまり、キャラクタ30が壁32にめり込まない状態)に保ちつつモーションを実行可能か否か判別する。そして、実行不可能と判別したときは、図2(b)に示すように、モーションを反転して見えるようにモーションデータを変換してモーションを表現する。これにより、同じモーションデータを用いつつも、予め用意されたモーションデータとは異なる態様でモーションを表現して不自然な画像の生成を防止することができる。
【0031】
図3(a)はモーションデータの概念図を示している。同図に示すように、モーションデータはモーション名40、モーションの最長距離Lmax、モーションの時系列データ42を含んでいる。DVD−ROM25にはこのようなモーションデータが多数記録されている。
【0032】
モーション名40はモーションデータの識別、検索に用いられる。モーションを表示する必要が生じたとき、画像処理モジュールは、コントローラ22に対するプレイヤーの操作及びそのときのキャラクタの状況に応じて表現するモーションを決定し、モーション名40に基づいて実際に使用するモーションデータを検索し、抽出されたモーションデータを利用して特定のモーションを表現する。
【0033】
モーションの最長距離Lmaxは、図4(a)に示すように、キャラクタ30に対して設定された所定の基準線50からキャラクタ30の各部位(例えば肘、手先、膝、つま先等)までの距離のうち、そのモーションの間において最大となる値として定義される。なお、図の例では、キャラクタ30の腰に設定された基準点44を通る鉛直線を基準線50としている。
【0034】
ここで、基準点44及び基準線50は、図5に示すように、キャラクタ30に固有のローカル座標系60に従って定義されている。ローカル座標系60は仮想3次元空間の基礎となるワールド座標系61に配置される。ローカル座標系60のワールド座標系61における位置と傾きはRAM13に保持され、プレイヤーのコントローラ22への操作などに応じ、各フレーム毎に更新される。
【0035】
画像処理モジュールは、表現するモーションをモーション名によって特定した後、そのモーションデータの基準線50及び基準線50からみて最長距離Lmaxを与える部位の方向を、ローカル座標系60のワールド座標系61における位置と傾きに基づき、ワールド座標系61へ座標変換する。次に、図4(a)に示すように、その座標変換された基準線50と基準線50からみて最長距離Lmaxを与える部位の方向に存在する特定のオブジェクト(図の例ではの壁32)との距離Lrefとモーションの最長距離Lmaxとの差△Lが所定の許容値以上か否かを判別する。
【0036】
距離Lrefの特定は、壁32を仮想3次元空間に配置するためのモデルデータに基づいて行ってもよいが、壁32を単純化した判定用のデータを予め壁32と対応付けて用意し、その判定用のデータを利用して距離Lrefを求めてもよい。例えば、図4(b)に示すように壁32にパイプ51…51が数本設置されている場合、判定用の仮想面52を用意することにより、壁32及びパイプ51…51のそれぞれについて実行する判定を仮想面一つに対し実行すればよく、効率的に判定を行うことができる。なお、単純化した判定用のデータを用意する対象は、パイプが配置された壁に限らず、キャラクタの周囲に配置された複雑な形状を持つオブジェクトであればよい。
【0037】
図4(a)に示す距離の差△Lが所定の許容値以上であればモーションデータ通りにモーションを表現するが、許容値未満であればキャラクタ30と壁32との位置関係を適正に保ちつつそのモーションを実行することができないものと判断する。この場合には、モーションが反転して見えるようにモーションデータを変換してモーションを表現する。
【0038】
モーションデータの変換は以下のとおりである。モーションの時系列データ42は、図3(b)に示すように、基準点44、関節45等のキャラクタ30を形成する要素の座標の時系列データとなっている。また、これらの座標は、図5に示すように、キャラクタ30に固有のローカル座標系60に従って定義される。画像処理モジュールは、モーションを反転する必要があるとき、ローカル座標系60においてモーションの時系列データ42の座標を所定の基準面62に対して対称に変換する。図5の例では、基準線50を含み、キャラクタの進行方向に平行な面62を基準としている。この座標変換の処理は、画像処理モジュールが画像処理用演算部11aに座標変換の指示を出すことにより実行してもよいし、CPU11内部の他の演算部に実行させてもよい。この座標変換後のモーションの時系列データに基づいてモーションを表現することにより、モーションを反転して表現することができる。
【0039】
時系列データに基づくモーションの表現方法は、以下のとおりである。ローカル座標系60に定義されているモーションの時系列データの座標は、前記のローカル座標系60のワールド座標系61における位置と傾きに基づき、図1の画像処理用演算部11aによってワールド座標系61へ座標変換される。画像描画装置14はモーションデータの座標変換後の座標に基づいてレンダリング処理を実行し、1フレームの映像を形成してモニタ19に出力する。画像処理モジュールは、画像処理用演算部11a、画像描画装置14にこれらの処理をモーションの時系列データに記録された順に従って実行させることにより、フレーム毎に姿勢の異なるキャラクタ30を表示し、モーションを表現する。なお、本実施形態では、ローカル座標系60においてモーションの時系列データを基準面62に対して変換した後、ワールド座標系61上に変換しているが、モーションの時系列データを基準面62とともにワールド座標系61上に変換後、基準面62に対して対称に変換してもよい。
【0040】
図6は、前記のモーションの反転を実際に実現するために、モーションを表現する必要が生じたときにCPU11が実行するモーション表示処理のフローチャートである。この処理では、まず、キャラクタ30と、その周囲に配置された特定のオブジェクトとの位置関係を適正に保ちつつモーションを実行可能か否か判別する(ステップS1)。実行可能と判別した場合は、モーションデータに従ってモーションを表示し、終了する。実行不可能と判別した場合は、モーションを反転する指示をし(ステップS2)、反転したモーションを表示し、終了する。
【0041】
以上の実施形態ではキャラクタ30の周囲に配置される特定のオブジェクトとして壁32を例示したが、本発明はこれに限らず様々なオブジェクトを対象としてよい。キャラクタの周囲に配置された特定のオブジェクトを記述するモデルデータ、又はそのオブジェクトに関連付けて予め作成された判定用のデータを利用してキャラクタとオブジェクトとが適正な位置関係を保つか否かを判断する例を説明したが、その他の方法でも前記位置関係を判定することができる。例えば、仮想3次元空間に配置される各種のオブジェクトを考慮して仮想3次元空間内にキャラクタが移動可能な領域を予め設定し、その領域のデータを参照してキャラクタがオブジェクトに対して適正な位置関係を保つか否かを判定することができる。図7を参照してその一例を説明する。
【0042】
図7はキャラクタ30が床72の縁71に掴まってぶら下がっている状況を示している。この状況から、キャラクタ30が床72によじ登るモーションを表現する場合、床の突出部分73が検出されず、モーション実行中にキャラクタ30が突出部分73にめりこむ不自然な映像を形成してしまうおそれがある。そこで、キャラクタ30がめり込むおそれのある突出部分73等のオブジェクトを考慮して、キャラクタ30が移動可能な領域70を定義しておき、その領域70の境界面70aとの距離を参照してモーションを実行可能か否か判断する。
【0043】
【発明の効果】
以上に説明したように、本発明によれば、モーション中のキャラクタと、キャラクタの周囲に配置された特定のオブジェクトとの位置関係を適正に保つことができないときには、前記モーションに対応するモーションデータを用いつつも、表現内容の異なるモーションを表現することとなる。従って、従来は常に一定のモーションしか表現しなかったために形成された不自然な画像を軽減、防止することができる。また、予め用意されたモーションデータを用いるため、新たなデータを必要とせず、記憶媒体の容量を節約できる。
【図面の簡単な説明】
【図1】本発明の画像処理システムの一実施形態として構成されたゲーム機のブロック図。
【図2】図1のゲーム機がモーションデータに基づいて表示するモーションの一例。
【図3】図1のゲーム機が用いるモーションデータの概念図。
【図4】図1のゲーム機が実行する、キャラクタと、その周囲に配置された特定のオブジェクトとの位置関係を適正に保ちつつ図2のモーションを実行可能か否かの判別方法の概念図。
【図5】図1のゲーム機が用いるモーションデータの座標と、その反転方法の概念図。
【図6】モーションの反転を実現するために、モーションを表現する必要が生じたときに図1のゲーム機が実行するモーション表示処理のフローチャート。
【図7】キャラクタと特定のオブジェクトとが適正な位置関係を保つか否かを判断する方法の変形例として、移動可能な領域を設定した場合の映像例。
【符号の説明】
10 画像処理装置
30 キャラクタ
32 キャラクタの周囲に配置された特定のオブジェクト
45 モーションデータに含まれるキャラクタの各部位に関する3次元座標
50 キャラクタに対して設定された所定の基準
52 特定のオブジェクトを簡素化して得られた判別用の仮想面
62 モーションデータを変換する所定の基準面
70 キャラクタの移動可能な領域
Lmax 所定の基準とキャラクタの各部位との距離のうちモーション中に最大となる距離
Lref 所定の基準から前記特定のオブジェクトまでの距離[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image processing apparatus and a program for configuring the image processing.
[0002]
[Prior art]
In a game in which a character placed in a virtual three-dimensional space is operated, it is necessary to appropriately express a predetermined motion when a predetermined condition is satisfied with respect to the player's operation and the character situation. For example, a motion such as jumping over an obstacle or kicking an obstacle.
[0003]
As a method for expressing such a motion, a method is known in which an operation process of an operation part in a motion is converted into data in advance, and the motion data is read and expressed as necessary.
[0004]
For example, in the case of a human-type character, a realistic motion can be appropriately expressed by analyzing a complex motion process of each joint in an actual human motion and reflecting it in the motion data of the character.
[0005]
[Problems to be solved by the invention]
The conventional motion expression method always expresses a constant motion without considering the positional relationship between the character in motion and surrounding objects. Therefore, an unnatural image may be formed depending on the positional relationship between the character and surrounding objects.
[0006]
For example, when a humanoid character is placed near a wall, an unnatural image may be displayed in which a limb stretched by the character is recessed into the wall.
[0007]
In this case, multiple types of motion data with different actual expression contents are prepared for one type of motion (for example, a motion in which a character jumps over an obstacle and jumps over a body vertically) Data, motion data that jumps over the body), and a method of selecting motion data according to the positional relationship between the character and surrounding objects. However, with this method, the motion data stored in the recording medium becomes enormous.
[0008]
Accordingly, an object of the present invention is to provide an image processing apparatus capable of expressing motion so that unnatural video can be prevented from being displayed.
[0009]
[Means for Solving the Problems]
The present invention will be described below. In order to facilitate understanding of the present invention, reference numerals in the accompanying drawings are appended in parentheses, but the present invention is not limited to the illustrated embodiment.
[0010]
An image processing apparatus (10) according to the present invention is an image processing apparatus that expresses a predetermined motion of a character (30) arranged in a virtual three-dimensional space based on motion data prepared in advance corresponding to the motion. Means for determining whether or not the motion can be executed while maintaining a proper positional relationship between the character and a specific object (32) arranged around the character when the motion needs to be expressed; When the determination means determines that the motion cannot be performed, the motion data is converted so that the motion appears to be reversed when viewed from a predetermined viewpoint, and processing necessary for expressing the motion according to the converted data and means for performing the motion data, for each of a plurality of elements forming the character, A set of three-dimensional coordinates set in time series according to the motion, and the means for determining is a distance from a predetermined reference line (50) set for the character to each part of the character Means for determining the maximum direction during the motion, determining whether or not the motion can be performed with the object positioned in the maximum direction as the specific object, and performing the processing necessary for the expression, The three-dimensional coordinates for each element of the character included in the motion data are symmetrical with respect to the reference plane so that the motion is reversed with respect to a reference plane that includes the reference line and is perpendicular to the maximum direction. The above-described problem is solved by converting to .
[0011]
The image processing program of the present invention is an image processing device that expresses a predetermined motion of a character (30) arranged in a virtual three-dimensional space based on motion data prepared in advance corresponding to the motion. When it is necessary for the computer as 10) to express the motion, whether or not the motion can be executed while appropriately maintaining the positional relationship between the character and the specific object (32) arranged around the character. The motion data is converted so that the motion appears to be reversed when viewed from a predetermined viewpoint, and the motion is determined according to the converted data. is configured to function as a means for performing processing necessary for expression, the motion data, the Each of a plurality of elements forming a character is a set of three-dimensional coordinates set in time series according to the motion, and the means for determining is a predetermined reference line (set for the character) 50) to determine the direction in which the distance from the character to each part becomes the maximum during the motion, and determine whether or not the motion can be executed with the object located in the maximum direction as the specific object, The means for performing processing necessary for the expression reverses the three-dimensional coordinates relating to each element of the character included in the motion data with respect to a reference plane perpendicular to the maximum direction in which the motion includes the reference line. As described above, the above-described problem is solved by performing the conversion symmetrically with respect to the reference plane .
[0012]
According to the present invention, when the positional relationship between a character in motion and a specific object arranged around the character cannot be properly maintained, the motion data corresponding to the motion is used, Different motions will be expressed. Accordingly, it is possible to reduce or prevent an unnatural image formed because the conventional method always expresses only a constant motion. In addition, since motion data prepared in advance is used, new data is not required and the capacity of the storage medium can be saved. Further, since rendering is performed after the coordinates of the character are reversed in the virtual three-dimensional space, the reversed motion can be made natural. The predetermined reference line may be set as a character-specific reference by setting it at the center of the character, or may be set as a reference specific to the motion by setting it at the center of the moving range of the character accompanying the motion.
[0013]
The determining means may determine whether or not the motion can be executed without contact between the character and the specific object. In this case, in the situation where the object is close to one of the characters, when the character may extend in the direction of the object and touch the object during the motion, there is a risk that it will penetrate the object. Is done. Therefore, it is possible to prevent generation of an unnatural image in which the character is embedded in the object. The determination of whether or not to make contact may be based on whether or not the contact actually occurs, or may be based on whether or not the distance is equal to or less than a predetermined distance.
[0014]
Wherein the means for discriminating includes a distance (Lmax) of the maximum in the motor Shon, distance from the reference line when it is assumed that placing the character in a predetermined position in the virtual three-dimensional space to said specific object (Lref) may be compared to determine whether the motion can be executed. In this case, from the perspective of whether or not proper distance between the character and the object in motion is ensured, Ru can be determined whether it is possible to perform the motion.
[0015]
The determining means may specify a distance from the reference line to the specific object with reference to model data describing the object. Or you may specify the distance of the virtual surface (52) for discrimination | determination obtained by simplifying the said specific object, and the said reference line as a distance to the said specific object. In this case, even if an object having a complicated shape is arranged around the character, it is possible to easily determine whether or not an appropriate positional relationship can be maintained using a simplified virtual plane. Therefore, the discrimination process is made efficient and the processing load can be reduced.
[0016]
An area (70) in which the character can move is set in association with the specific object, and the means for determining the maximum distance during the motion and the boundary line of the movable area from the reference line. The distance may be compared to determine whether the motion can be executed. In this case, the following inconvenience can be solved. When it becomes necessary to express motion, the motion is executed while maintaining the proper positional relationship between the character and the specific objects placed around it based on the positional relationship between the character and the object close to the character. When determining whether or not it is possible, when the character moves with the motion, even if the appropriate positional relationship with the specific object placed around the object is maintained at the start of the motion, the position with the specific object placed around The relationship may not be maintained properly. However, the above inconvenience can be solved by determining from the positional relationship with the boundary surface of the movable region set as described above instead of the object close to the character. Accordingly, it is possible to eliminate the possibility of forming an image in which the character intrudes into an area where it is unnatural for the character to invade.
[0017]
If this is particularly a view to whether or not capable of ensuring a suitable distance between the character and the boundary surface, it is possible to determine whether it is possible to perform the motion.
[0019]
The program of the present invention may be provided to the user in a state recorded in a storage medium, or may be distributed to the user through a wired or wireless network.
[0020]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a block diagram of a game machine configured as an embodiment of the image processing apparatus of the present invention. The
[0021]
Inside the
[0022]
On the other hand, the
[0023]
In FIG. 1, the
[0024]
The
[0025]
Further, an
[0026]
The game program recorded on the DVD-
[0027]
The game data recorded on the DVD-
[0028]
FIG. 2 represents a motion of the
[0029]
As shown in FIG. 2 (a), the motion data in this example shows that the
[0030]
Therefore, the image processing module according to the present embodiment keeps the positional relationship between the
[0031]
FIG. 3A shows a conceptual diagram of motion data. As shown in the figure, the motion data includes a
[0032]
The
[0033]
As shown in FIG. 4A, the longest motion distance Lmax is a distance from a
[0034]
Here, the
[0035]
After specifying the motion to be expressed by the motion name, the image processing module determines the position of the local coordinate
[0036]
The identification of the distance Lref may be performed based on model data for arranging the
[0037]
If the distance difference ΔL shown in FIG. 4A is equal to or greater than a predetermined allowable value, the motion is represented as the motion data. If the distance difference ΔL is less than the allowable value, the positional relationship between the
[0038]
The conversion of motion data is as follows. The
[0039]
The motion expression method based on time-series data is as follows. The coordinates of the time series data of the motion defined in the local coordinate
[0040]
FIG. 6 is a flowchart of a motion display process executed by the
[0041]
In the above embodiment, the
[0042]
FIG. 7 shows a situation where the
[0043]
【The invention's effect】
As described above, according to the present invention, when the positional relationship between a character in motion and a specific object arranged around the character cannot be properly maintained, motion data corresponding to the motion is obtained. While using it, it will express motions with different contents. Accordingly, it is possible to reduce or prevent an unnatural image formed because the conventional method always expresses only a constant motion. In addition, since motion data prepared in advance is used, new data is not required and the capacity of the storage medium can be saved.
[Brief description of the drawings]
FIG. 1 is a block diagram of a game machine configured as an embodiment of an image processing system of the present invention.
FIG. 2 shows an example of motion displayed by the game machine of FIG. 1 based on motion data.
FIG. 3 is a conceptual diagram of motion data used by the game machine of FIG.
4 is a conceptual diagram of a method for determining whether or not the motion of FIG. 2 can be executed while appropriately maintaining the positional relationship between a character and a specific object arranged around the character, which is executed by the game machine of FIG. 1; .
FIG. 5 is a conceptual diagram of motion data coordinates used by the game machine of FIG. 1 and an inversion method thereof.
6 is a flowchart of motion display processing executed by the game machine of FIG. 1 when it is necessary to express motion in order to realize reversal of motion.
FIG. 7 is a video example when a movable region is set as a modification of the method for determining whether or not a character and a specific object maintain an appropriate positional relationship.
[Explanation of symbols]
DESCRIPTION OF
Claims (12)
前記モーションを表現する必要が生じたとき、前記キャラクタと、その周囲に配置された特定のオブジェクトとの位置関係を適正に保ちつつ前記モーションを実行可能か否かを判別する手段と、
前記判別する手段において実行不可能と判別されたとき、所定の視点からみて前記モーションが反転して見えるように前記モーションデータを変換し、その変換後のデータに従って前記モーションの表現に必要な処理を行う手段とを備え、
前記モーションデータは、前記キャラクタを形成する複数の要素のそれぞれに関して、前記モーションに応じて時系列に設定された3次元座標の集合体であり、
前記判別する手段は、前記キャラクタに対して設定された所定の基準線からそのキャラクタの各部位までの距離がモーション中に最大となる方向を特定し、前記最大となる方向に位置するオブジェクトを前記特定のオブジェクトとして前記モーションを実行可能か否かを判別し、
前記表現に必要な処理を行う手段は、前記モーションデータに含まれている前記キャラクタの各要素に関する3次元座標を、前記モーションが前記基準線を含み前記最大となる方向に垂直な基準面に関して反転されるように前記基準面に対して対称に変換する、
ことを特徴とする画像処理装置。In an image processing apparatus that expresses a predetermined motion of a character placed in a virtual three-dimensional space based on motion data prepared in advance corresponding to the motion,
Means for determining whether or not the motion can be executed while maintaining a proper positional relationship between the character and a specific object arranged around the character when the motion needs to be expressed;
When the means for determining determines that the motion cannot be performed, the motion data is converted so that the motion appears to be reversed when viewed from a predetermined viewpoint, and processing necessary for expressing the motion is performed according to the converted data. Means for performing ,
The motion data is an aggregate of three-dimensional coordinates set in time series according to the motion for each of a plurality of elements forming the character.
The means for determining identifies a direction in which a distance from a predetermined reference line set for the character to each part of the character is maximized during a motion, and an object located in the maximum direction is Determine whether the motion can be executed as a specific object,
The means for performing processing necessary for the expression reverses the three-dimensional coordinates relating to each element of the character included in the motion data with respect to a reference plane perpendicular to the maximum direction in which the motion includes the reference line. Transform symmetrically with respect to the reference plane,
An image processing apparatus.
前記判別する手段は、前記モーション中に最大となる距離と前記基準線から前記移動可能な領域の境界面までの距離とを比較して、前記モーションを実行可能か否かを判別することを特徴とする請求項1に記載の画像処理装置。A region where the character can move is set in association with the specific object,
The means for determining determines whether or not the motion can be executed by comparing a maximum distance during the motion with a distance from the reference line to a boundary surface of the movable region. The image processing apparatus according to claim 1.
前記モーションを表現する必要が生じたとき、前記キャラクタと、その周囲に配置された特定のオブジェクトとの位置関係を適正に保ちつつ前記モーションを実行可能か否かを判別する手段と、
前記判別する手段において実行不可能と判別されたとき、所定の視点からみて前記モーションが反転して見えるように前記モーションデータを変換し、その変換後のデータに従って前記モーションの表現に必要な処理を行う手段として機能させるように構成され、
前記モーションデータは、前記キャラクタを形成する複数の要素のそれぞれに関して、前記モーションに応じて時系列に設定された3次元座標の集合体であり、
前記判別する手段は、前記キャラクタに対して設定された所定の基準線からそのキャラ クタの各部位までの距離がモーション中に最大となる方向を特定し、前記最大となる方向に位置するオブジェクトを前記特定のオブジェクトとして前記モーションを実行可能か否かを判別し、
前記表現に必要な処理を行う手段は、前記モーションデータに含まれている前記キャラクタの各要素に関する3次元座標を、前記モーションが前記基準線を含み前記最大となる方向に垂直な基準面に関して反転されるように前記基準面に対して対称に変換する、
ことを特徴とする画像処理用プログラム。A computer as an image processing device that expresses a predetermined motion of a character placed in a virtual three-dimensional space based on motion data prepared in advance corresponding to the motion,
Means for determining whether or not the motion can be executed while maintaining a proper positional relationship between the character and a specific object arranged around the character when the motion needs to be expressed;
When the means for determining determines that the motion cannot be performed, the motion data is converted so that the motion appears to be reversed when viewed from a predetermined viewpoint, and processing necessary for expressing the motion is performed according to the converted data. Configured to function as a means to do ,
The motion data is an aggregate of three-dimensional coordinates set in time series according to the motion for each of a plurality of elements forming the character.
Said means for discriminating is an object distance from a predetermined reference line set for the character until each portion of the character Kuta is to identify the direction of maximum in-motion, is located in a direction in which said maximum Determine whether the motion can be executed as the specific object,
The means for performing processing necessary for the expression reverses the three-dimensional coordinates relating to each element of the character included in the motion data with respect to a reference plane perpendicular to the maximum direction in which the motion includes the reference line. Transform symmetrically with respect to the reference plane,
An image processing program characterized by the above .
前記判別する手段は、前記モーション中に最大となる距離と前記基準線から前記移動可能な領域の境界面までの距離とを比較して、前記モーションを実行可能か否かを判別することを特徴とする請求項7に記載の画像処理用プログラム。A region where the character can move is set in association with the specific object,
The means for determining determines whether or not the motion can be executed by comparing a maximum distance during the motion with a distance from the reference line to a boundary surface of the movable region. The image processing program according to claim 7 .
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001257539A JP4136341B2 (en) | 2001-08-28 | 2001-08-28 | Image processing apparatus and program thereof |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001257539A JP4136341B2 (en) | 2001-08-28 | 2001-08-28 | Image processing apparatus and program thereof |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2003067780A JP2003067780A (en) | 2003-03-07 |
| JP4136341B2 true JP4136341B2 (en) | 2008-08-20 |
Family
ID=19085180
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2001257539A Expired - Fee Related JP4136341B2 (en) | 2001-08-28 | 2001-08-28 | Image processing apparatus and program thereof |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4136341B2 (en) |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4788950B2 (en) * | 2005-09-08 | 2011-10-05 | 株式会社セガ | Image processing program, image processing method, and image processing apparatus |
| JP5620042B2 (en) * | 2007-10-16 | 2014-11-05 | 株式会社カプコン | Program and game system |
| JP5687826B2 (en) | 2009-05-29 | 2015-03-25 | 任天堂株式会社 | GAME PROGRAM AND GAME DEVICE |
| JP6301813B2 (en) * | 2014-11-05 | 2018-03-28 | 任天堂株式会社 | GAME PROGRAM AND GAME DEVICE |
| CA2968589C (en) * | 2016-06-10 | 2023-08-01 | Square Enix Ltd. | System and method for placing a character animation at a location in a game environment |
| JP6663458B2 (en) | 2018-08-03 | 2020-03-11 | 株式会社コーエーテクモゲームス | Information processing apparatus, placement method, and placement program |
| JP7329217B2 (en) * | 2020-04-27 | 2023-08-18 | グリー株式会社 | Computer program, server device, terminal device, and method |
| WO2021210585A1 (en) | 2020-04-14 | 2021-10-21 | グリー株式会社 | Computer program, server device, terminal device, and method |
| JP7461654B2 (en) | 2021-06-28 | 2024-04-04 | グリー株式会社 | Information processing system, information processing method, and information processing program |
-
2001
- 2001-08-28 JP JP2001257539A patent/JP4136341B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2003067780A (en) | 2003-03-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3168244B2 (en) | Image generating apparatus and method | |
| JP4136341B2 (en) | Image processing apparatus and program thereof | |
| JP3534345B1 (en) | GAME PROGRAM AND GAME DEVICE | |
| KR101114997B1 (en) | Game software and Game device | |
| EP1149617B1 (en) | Game system, judgment table producing method, and computer-readable storage medium carrying game program | |
| JP2975336B2 (en) | Collision detection method in three-dimensional video game, video game device using the same, and computer-readable medium recording collision detection program in three-dimensional video game | |
| US8633925B2 (en) | Image processor, image processing method, computer program, recording medium, and semiconductor device | |
| JP5007633B2 (en) | Image processing program, computer-readable recording medium storing the program, image processing apparatus, and image processing method | |
| JP3809294B2 (en) | GAME DEVICE, GAME METHOD, COMPUTER-READABLE RECORDING MEDIUM | |
| JP3564440B2 (en) | Moving image generation program, moving image generation method and apparatus | |
| JP6329616B1 (en) | Program, computer apparatus, and determination method | |
| US6972767B2 (en) | Image processing apparatus and method, recording medium, and program | |
| JP3635037B2 (en) | Image drawing method and program used therefor | |
| JP3420220B2 (en) | GAME SYSTEM AND GAME PROGRAM | |
| JP2000024313A (en) | Game apparatus and information recorded medium | |
| JP4100643B2 (en) | Simulation apparatus and information storage medium | |
| JP3843443B2 (en) | GAME DEVICE, GAME PROCESSING METHOD, AND RECORDING MEDIUM | |
| JP6576544B2 (en) | Information processing apparatus, information processing method, and computer-readable storage medium | |
| JP3796252B2 (en) | GAME PROGRAM AND GAME DEVICE | |
| JP3822882B2 (en) | GAME PROGRAM AND GAME DEVICE | |
| JP5378027B2 (en) | GAME PROGRAM, STORAGE MEDIUM, AND COMPUTER DEVICE | |
| JP3134215B2 (en) | Image position determining apparatus and image position determining method | |
| JP5318070B2 (en) | Robust motion selection to control a physical biped character | |
| JP2004230070A (en) | Game apparatus, game control method, and program | |
| KR20260020768A (en) | Method for synchronizing characters in a multiplayer virtual reality environment and computer device therefor |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050412 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20060427 |
|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20060523 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071220 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080108 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080307 |
|
| 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: 20080507 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080603 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4136341 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110613 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110613 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120613 Year of fee payment: 4 |
|
| 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: 20130613 Year of fee payment: 5 |
|
| 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: 20130613 Year of fee payment: 5 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D04 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130613 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140613 Year of fee payment: 6 |
|
| 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 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |