JP3618298B2 - モーション表示方法、ゲーム装置及び記録媒体 - Google Patents
モーション表示方法、ゲーム装置及び記録媒体 Download PDFInfo
- Publication number
- JP3618298B2 JP3618298B2 JP2001013882A JP2001013882A JP3618298B2 JP 3618298 B2 JP3618298 B2 JP 3618298B2 JP 2001013882 A JP2001013882 A JP 2001013882A JP 2001013882 A JP2001013882 A JP 2001013882A JP 3618298 B2 JP3618298 B2 JP 3618298B2
- Authority
- JP
- Japan
- Prior art keywords
- motion
- displayed
- transition
- character
- posture
- 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 - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Description
【発明の属する技術分野】
本発明は、ゲーム画面に表示されたキャラクタと呼ばれる仮想物のモーションを表示するためのプログラムが記録された記録媒体、モーション表示方法及びゲーム装置に関する。
【0002】
【従来の技術】
最近のビデオゲームでは、ポリゴンで形成された立体的なキャラクタと呼ばれる仮想物を仮想3次元空間に配置し、所与の視点から見た視界画像を生成して画面に表示するいわゆる3Dゲームが増えている。
【0003】
ビデオゲーム上のキャラクタの一連の動作はモーションとも呼ばれ、あらかじめメモリに記憶されたモーションデータに基づいて表示される。モーションデータはキャラクタの手、足等を変化させるときのキャラクタの一連の姿勢を特定するデータからなる。キャラクタのモーションを表示装置に表示することはモーションを再生するとも呼ばれる。
【0004】
ゲーム上のキャラクタのあるモーションを表示している途中で、プレイヤによる操作入力に応じて当該キャラクタのモーションを変更する場合、変更後のモーションに対応するモーションデータがメモリから読み出され、読み出されたモーションデータに基づいて変更後のモーションが表示される。しかしながら、単純にこのようにモーションを移行すると、移行開始時点でキャラクタ画像が急激に変化することが多く、プレイヤにとって望ましくない。
【0005】
モーションの滑らかな移行を行う方法として、元のモーションと移行先のモーションとを合成する方法が知られている。例えば特開平9−218961号公報では、移行元のモーションデータと移行先のモーションデータとからフレーム毎の姿勢特定情報が生成されている。フレーム毎に二つの姿勢特定情報を補間し、各フレームの姿勢が生成されている。その際、補間割合の重み付けを行い、徐々に移行先のモーションデータの重みを大きくし、それでもって移行先のモーションデータに滑らかに移行するモーションデータが生成されている。
【0006】
【発明が解決しようとする課題】
合成によるモーションの移行を適用できるのは、ある程度類似した二つの動作に対してである。例えば上述の特開平9−218961号公報では、歩く動作と走る動作という二つの類似する動作が合成されている。これらの動作は、同じ方向に進む場合には、これらの動作の姿勢毎の補間が可能になる。
【0007】
ところが野球ゲームのようなスポーツゲームでは、移行元のモーションと移行先のモーションが類似しているとは限らない。例えば、プレイヤの指示が、右方向への「走れ」から左方向への「走れ」の指示に切り替わる場合もある。右向きに走るモーションと左向きに走るモーションでは、キャラクタの向きが全く逆である。右へ走るモーションでは右へ向かうように手足を動かしている。左へ走るモーションでは左へ向かうように手足を動かしている。この場合、フレーム毎の姿勢特定情報を補間すると、これらの二つのモーションの間を繋ぐ移行用モーションの手足の動きが一定に定まらず、不自然な動きとなる。
【0008】
したがって、本発明の目的は、移行元のモーションと移行先のモーションとが逆の動きをする場合であっても、滑らかな一連の動きで移行先のモーションへ移行できるようにするモーション表示方法、それを用いるゲーム装置及び記録媒体を提供することにある。
【0009】
【課題を解決するための手段】
上記目的を達成するために、本発明に係るモーション表示方法は、ビデオゲームのキャラクタの第1のモーションを表示中に操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、当該第1のモーションの表示中に最後に表示された当該キャラクタの姿勢と前記第2のモーションの先頭の複数の姿勢により規定される先頭のモーション部分とに依存して、前記第1のモーションの前記表示済みのモーション部分から前記第2のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための移行用モーションを決定する決定ステップと、前記第1のモーションの前記表示済みのモーション部分に続けて、前記決定ステップで決定された前記移行用モーションを表示し、当該移行用モーションに続けて前記第2のモーションの前記後続のモーション部分を表示する表示ステップと、を含み、前記決定ステップでは、前記第2のモーションの前記先頭の複数の姿勢のそれぞれに対し順次合成が施されるように、一連の合成が施され、それにより前記移行用モーションを規定する一連の姿勢が順次決定され、前記一連の合成の内の最初の合成は、前記キャラクタの前記最後に表示された姿勢と前記第2のモーションの前記先頭の複数の姿勢の内の最初の姿勢とに対して施され、前記一連の合成の内の第i番目の合成(ただしiは2以上の整数)は、前記一連の合成の内の第(i−1)番目の合成により得られた前記キャラクタの姿勢と前記第2のモーションの前記先頭の複数の姿勢の内の第i番目の姿勢とに対して施されるものである。
【0010】
本発明に係るモーション表示方法によれば、第1、第2のモーションがともにキャラクタの姿勢の変化が全く逆方向に変化するものであっても、キャラクタの姿勢が滑らかに変化する移行用のモーションを用いて第1のモーションから第2のモーションに移行することができる。更に、移行用モーションとして、移行元の第1のモーションから移行先の第2のモーションへ急激に変化するモーションを決定することが容易になる。
【0013】
本発明に係るモーション表示方法の望ましい態様は、ビデオゲームのキャラクタの第1のモーションを表示中に操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、当該第1のモーションの表示中に最後に表示された当該キャラクタの姿勢に続く、前記第1のモーションの複数の姿勢と前記第2のモーションの先頭の複数の姿勢により規定される先頭のモーション部分とに依存して、前記第1のモーションの前記表示済みのモーション部分から前記第2のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための第1の移行用モーションを決定する第1の決定ステップと、前記第1のモーションの前記表示済みのモーション部分に続けて、前記第1の決定ステップで決定された前記第1の移行用モーションを表示し、当該第1の移行用モーションに続けて前記第2のモーションの前記後続のモーション部分を表示する第1の表示ステップと、前記第1の移行用モーションの表示中に操作入力に応答して前記キャラクタのモーションを前記第1の移行用モーションの表示済みのモーション部分から第3のモーションに移行するときに、前記第1の移行用モーションの表示中に最後に表示された前記キャラクタの姿勢と前記第3のモーションの先頭の複数の姿勢により規定される先頭モーション部分とに依存して、前記第1の移行用モーションの前記表示済みのモーション部分から前記第3のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための第2の移行用モーションを決定する第2の決定ステップと、前記第1の移行用モーションの前記表示済みのモーション部分に続けて、前記第2の決定ステップで決定された前記第2の移行用モーションを表示し、当該第2の移行用モーションに続けて前記第3のモーションの前記後続のモーション部分を表示する第2の表示ステップと、を含むものである。
【0014】
具体的には、前記第1の移行用モーションは、前記第1のモーションの表示中に最後に表示された前記姿勢に続く、前記第1のモーションの前記複数の姿勢と前記第2のモーションの前記先頭の複数の姿勢のそれぞれとを徐々に増大する合成比率を用いて合成したときに得られる一連の姿勢で規定されるモーションを表し、前記第2の移行用モーションは、前記第1の移行用モーションの表示中に最後に表示された当該キャラクタの前記姿勢と前記第3のモーションの前記先頭の複数の姿勢のそれぞれとを徐々に増大する合成比率を用いて合成したときに得られる一連の姿勢により規定されるモーションを表す。更に望ましくは、前記第2の移行用モーションを規定する前記徐々に増大する合成比率は、合成比率が一定の値ずつ増大する場合よりも急激に増大するものである。
他の具体的な態様の例は、前記第2の決定ステップでは、前記第3のモーションの前記先頭の複数の姿勢のそれぞれに対し順次合成が施されるように、一連の合成が施され、それにより前記第2の移行用モーションを規定する一連の姿勢が順次決定され、前記一連の合成の内の最初の合成は、前記キャラクタの前記第1の移行用モーションの表示中に前記最後に表示された姿勢と前記第3のモーションの前記先頭の複数の姿勢の内の最初の姿勢とに対して施され、前記一連の合成の内の第i番目の合成(ただしiは2以上の整数)は、前記一連の合成の内の第(i−1)番目の合成により得られた前記キャラクタの姿勢と前記第3のモーションの前記先頭の複数の姿勢の内の第i番目の姿勢とに対して施されるものである。
【0015】
本発明に係るモーション表示方法の他の望ましい態様は、ビデオゲームのキャラクタの第1のモーションを表示中にプレイヤによる操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、所定の条件が満たされているか否かを判別する判別ステップと、前記第1のモーションから前記第2のモーションに移行するための移行用モーションを決定するための移行用モーション決定手順として、所定の複数の移行用モーション決定手順の一つを前記判別ステップによる判別結果に依存して選択する選択ステップと、前記選択ステップで選択された移行用モーション決定手順に従って移行用モーションを決定する決定ステップと、前記第1のモーションの前記表示済みのモーション部分に続けて、前記決定ステップで決定された前記移行用モーションを表示する表示ステップと、を含むものである。
【0016】
本発明に係るモーション表示方法の上記望ましい態様によれば、移行用のモーションとして望ましいモーションを使用することが可能になる。
【0017】
具体的には、前記判別ステップは、前記第1のモーションがいずれかのモーションから他のモーションへ移行するための移行用モーションであることを前記条件としているものである。
【0018】
本発明に係る記録媒体は、コンピュータで実行されるビデオゲームのためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記プログラムは、ビデオゲームのキャラクタの第1のモーションを表示中に操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、当該第1のモーションの表示中に最後に表示された当該キャラクタの姿勢と前記第2のモーションの先頭の複数の姿勢により規定される先頭のモーション部分とに依存して、前記第1のモーションの前記表示済みのモーション部分から前記第2のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための移行用モーションを決定する決定ステップと、前記第1のモーションの前記表示済みのモーション部分に続けて、前記決定ステップで決定された前記移行用モーションを表示し、当該移行用モーションに続けて前記第2のモーションの前記後続のモーション部分を表示する表示ステップと、をコンピュータに実行させるプログラムであり、前記決定ステップでは、前記第2のモーションの前記先頭の複数の姿勢のそれぞれに対し順次合成が施されるように、一連の合成が施され、それにより前記移行用モーションを規定する一連の姿勢が順次決定され、前記一連の合成の内の最初の合成は、前記キャラクタの前記最後に表示された姿勢と前記第2のモーションの前記先頭の複数の姿勢の内の最初の姿勢とに対して施され、前記一連の合成の内の第i番目の合成(ただしiは2以上の整数)は、前記一連の合成の内の第(i−1)番目の合成により得られた前記キャラクタの姿勢と前記第2のモーションの前記先頭の複数の姿勢の内の第i番目の姿勢とに対して施されるものである。
【0021】
本発明に係る記録媒体の望ましい態様は、コンピュータで実行されるビデオゲームのためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記プログラムは、ビデオゲームのキャラクタの第1のモーションの表示中に操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、前記第1のモーションの最後に表示された当該キャラクタの姿勢に続く、前記第1のモーションの複数の姿勢と前記第2のモーションの先頭の複数の姿勢により規定される先頭のモーション部分とに依存して、前記第1のモーションの前記表示済みのモーション部分から前記第2のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための第1の移行用モーションを決定する第1の決定ステップと、前記第1のモーションの前記表示済みのモーション部分に続けて、前記第1の決定ステップで決定された前記第1の移行用モーションを表示し、当該第1の移行用モーションに続けて前記第2のモーションの前記後続のモーション部分を表示する第1の表示ステップと、前記第1の移行用モーションの表示中に操作入力に応答して前記キャラクタのモーションを前記第1の移行用モーションの表示済みのモーション部分から第3のモーションに移行するときに、前記第1の移行用モーションの表示中に最後に表示された前記キャラクタの姿勢と前記第3のモーションの先頭の複数の姿勢により規定される先頭のモーション部分とに依存して、前記第1の移行用モーションの前記表示済みのモーション部分から前記第3のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための第2の移行用モーションを決定する第2の決定ステップと、前記第1の移行用モーションの前記表示済みのモーション部分に続けて、前記第2の決定ステップで決定された前記第2の移行用モーションを表示し、当該第2の移行用モーションに続けて前記第3のモーションの前記後続のモーション部分を表示する第2の表示ステップと、をコンピュータに実行させるプログラムであるものである。
【0022】
具体的には、前記第1の移行用モーションは、前記第1のモーション表示中に最後に表示された前記キャラクタの前記姿勢に続く、前記第1のモーションの前記複数の姿勢と前記第2のモーションの前記先頭の複数の姿勢のそれぞれとを徐々に増大する合成比率を用いて合成したときに得られる一連の姿勢で規定されるモーションを表し、前記第2の移行用モーションは、前記第1の移行用モーションの表示中に最後に表示された前記キャラクタの前記姿勢と前記第3のモーションの前記先頭の複数の姿勢のそれぞれとを徐々に増大する合成比率を用いて合成したときに得られる一連の姿勢により規定されるモーションを表す。より具体的には、前記第2の移行用モーションを規定する前記徐々に増大する合成比率は、合成比率が一定の値ずつ増大する場合よりも急激に増大するものである。
他の具体的な態様の例は、前記第2の決定ステップでは、前記第3のモーションの前記先頭の複数の姿勢のそれぞれに対し順次合成が施されるように、一連の合成が施され、それにより前記第2の移行用モーションを規定する一連の姿勢が順次決定され、前記一連の合成の内の最初の合成は、前記キャラクタの前記第1の移行用モーションの表示中に前記最後に表示された姿勢と前記第3のモーションの前記先頭の複数の姿勢の内の最初の姿勢とに対して施され、前記一連の合成の内の第i番目の合成(ただしiは2以上の整数)は、前記一連の合成の内の第(i−1)番目の合成により得られた前記キャラクタの姿勢と前記第3のモーションの前記先頭の複数の姿勢の内の第i番目の姿勢とに対して施されるものである。
【0023】
本発明に係る記録媒体の他の望ましい態様は、コンピュータで実行されるビデオゲームのためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記プログラムは、ビデオゲームのキャラクタの第1のモーションを表示中にプレイヤによる操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、所定の条件が満たされているか否かを判別する判別ステップと、前記第1のモーションから前記第2のモーションに移行するための移行用モーションを決定するための移行用モーション決定手順として、所定の複数の移行用モーション決定手順の一つを前記判別ステップによる判別結果に依存して選択する選択ステップと、前記選択ステップで選択された移行用モーション決定手順に従って移行用モーションを決定する決定ステップと、前記第1のモーションの前記表示済みのモーション部分に続けて、前記決定ステップで決定された前記移行用モーションを表示する表示ステップと、をコンピュータに実行させるプログラムであるものである。
【0024】
具体的には、前記判別ステップは、前記第1のモーションがいずれかのモーションから他のモーションへ移行するための移行用モーションであることを前記条件としている。
【0025】
本発明に係るゲーム装置の望ましい一つの態様は、ビデオゲームのキャラクタの第1のモーションを表示中に操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、当該第1のモーションの表示中に最後に表示された当該キャラクタの姿勢と前記第2のモーションの先頭の複数の姿勢により規定される先頭のモーション部分とに依存して、前記第1のモーションの前記表示済みのモーション部分から前記第2のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための第1の移行用モーションを決定する決定手段と、前記第1のモーションの前記表示済みのモーション部分に続けて、前記決定手段で決定された前記移行用モーションを表示し、当該移行用モーションに続けて前記第2のモーションの前記後続のモーション部分を表示する表示手段と、を備え、前記決定手段では、前記第2のモーションの前記先頭の複数の姿勢のそれぞれに対し順次合成が施されるように、一連の合成が施され、それにより前記移行用モーションを規定する一連の姿勢が順次決定され、前記一連の合成の内の最初の合成は、前記キャラクタの前記最後に表示された姿勢と前記第2のモーションの前記先頭の複数の姿勢の内の最初の姿勢とに対して施され、前記一連の合成の内の第i番目の合成(ただしiは2以上の整数)は、前記一連の合成の内の第(i−1)番目の合成により得られた前記キャラクタの姿勢と前記第2のモーションの前記先頭の複数の姿勢の内の第i番目の姿勢とに対して施されるものである。
本発明に係るゲーム装置の他の望ましい態様は、ビデオゲームのキャラクタの第1のモーションを表示中に操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、当該第1のモーションの表示中に最後に表示された当該キャラクタの姿勢に続く、前記第1のモーションの複数の姿勢と前記第2のモーションの先頭の複数の姿勢により規定される先頭のモーション部分とに依存して、前記第1のモーションの前記表示済みのモーション部分から前記第2のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための第1の移行用モーションを決定する第1の決定手段と、前記第1のモーションの前記表示済みのモーション部分に続けて、前記第1の決定手段で決定された前記第1の移行用モーションを表示し、当該第1の移行用モーションに続けて前記第2のモーションの前記後続のモーション部分を表示する第1の表示手段と、前記第1の移行用モーションの表示中に操作入力に応答して前記キャラクタのモーションを前記第1の移行用モーションの表示済みのモーション部分から第3のモーションに移行するときに、前記第1の移行用モーションの表示中に最後に表示された前記キャラクタの姿勢と前記第3のモーションの先頭の複数の姿勢により規定される先頭モーション部分とに依存して、前記第1の移行用モーションの前記表示済みのモーション部分から前記第3のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための第2の移行用モーションを決定する第2の決定手段と、前記第1の移行用モーションの前記表示済みのモーション部分に続けて、前記第2の決定手段で決定された前記第2の移行用モーションを表示し、当該第2の移行用モーションに続けて前記第3のモーションの前記後続のモーション部分を表示する第2の表示手段と、を備えるものである。
本発明に係るゲーム装置の更に他の望ましい態様は、ビデオゲームのキャラクタの第1のモーションを表示中にプレイヤによる操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、所定の条件が満たされているか否かを判別する判別手段と、前記第1のモーションから前記第2のモーションに移行するための移行用モーションを決定するための移行用モーション決定手順として、所定の複数の移行用モーション決定手順の一つを前記判別手段による判別結果に依存して選択する選択手段と、前記選択手段で選択された移行用モーション決定手順に従って移行用モーションを決定する決定手段と、前記第1のモーションの前記表示済みのモーション部分に続けて、前記決定手段で決定された前記移行用モーションを表示する表示手段と、を備えるものである。
【0026】
【発明の実施の形態】
以下、本発明に係る記録媒体、モーション表示方法及びゲーム装置のいくつかの実施の形態を図面を参照して詳細に説明する。なお、以下においては、同じ参照番号は同じもの若しくは類似のものを表すものとする。また、第2の実施の形態以降では、第1の実施の形態との相違点を主に説明するに止める。
【0027】
<発明の実施の形態1>
図1に示すように、ゲームシステム1は、例えば本発明に係るコンピュータゲームプログラムを記録したCD−ROM40を着脱自在に装着できるゲーム装置10と、それにケーブルでそれぞれ接続された、テレビジョンセット20及び二人のプレイヤがそれぞれ操作可能な複数のキーパッド30A,30Bとから構成されている。ゲーム装置10は、家庭用ゲーム装置であり、一つの筐体内に収められたコンピュータ100を含む。
【0028】
プレイヤは、ゲーム装置10上の開閉ボタン(図示せず)を押し、開閉可能な蓋(図示せず)を開き、例えばCD−ROM40をその内部に装着する。ゲーム装置10は、CD−ROM40に記録されたコンピュータゲームプログラムを実行する。
【0029】
本ゲーム装置10は、キーパッド30A,30Bに対応する一対のカードスロット(図示せず)を有する。それぞれのカードスロットには、外部補助記録媒体である二つのメモリカード50A,50Bを挿入可能である。各プレイヤは、ゲーム中のキャラクタに関するデータあるいはゲームプログラムの進行状況に関するデータ等のゲームの再開に必要なデータを、それぞれカードスロットに挿入されたメモリカード50A又は50Bに任意に記憶させることができる。プレイヤがゲームを中断した後にそのメモリカード50A又は50Bを使用してゲームを再度実行すると、ゲーム装置10は中断した部分からゲームを再開する。
【0030】
テレビジョンセット20は、ゲーム装置10に対する表示装置の一例として使用される。テレビジョンセット20は、ビデオ信号及び音声信号をゲーム装置10から受信し、受信したビデオ信号を処理して映像をその画面21に表示し、受信した音声信号に応じた音声をテレビジョンセット20に付随するスピーカ22から出力する。
【0031】
キーパッド30A,30Bは一般にコントローラとも呼ばれ、プレイヤが操作するための複数のボタンその他の操作部を有し、入力装置の一例として使用される。その構造の例は後に説明する。
【0032】
コンピュータ100は、例えば、中央処理装置(CPU)101と、CPU101がプログラム命令を実行するのに必要な命令列及びデータを記憶する読み出し専用メモリ(ROM)102と、実行すべきゲームプログラム及びそのゲームプログラムが使用するデータを一時的に記憶するためのメインメモリを構成するランダムアクセスメモリ(RAM)103と、グラフィック処理部104と、サウンド処理部105と、CD−ROM40が搭載されるCD−ROMドライブ106と、入出力インタフェース部107と、磁気記憶装置(HDD)108と、通信インタフェース部109及び以上の回路を接続するバス110とにより構成される。
【0033】
CPU101は、RAM103に記憶されたプログラム命令を解読実行し、その命令にしたがってコンピュータ内部の各回路を制御するとともに、入出力インタフェース部107を介してキーパッド30Aあるいは30Bから入力されるプレイヤによる操作入力に応答して、その操作入力に対応するプログラム部分を実行するようにゲームプログラムの実行を制御する。CPU101はプログラム命令の実行時にROM102に記憶された命令列を適宜実行する。
【0034】
グラフィック処理部104は、図示されていないビデオRAM(VRAM)を含み、その中にフレームバッファ(図示せず)を構成し、CPU101から与えられる命令に応答して、オブジェクトを表す複数のポリゴンからなる画像などをフレームバッファ上に描画する。更に、グラフィック処理部104は、そのフレームバッファに記憶された画像に応じたビデオ信号、例えばテレビジョン信号を生成して、テレビジョンセット20内の図示しないビデオ回路に出力する。
【0035】
フレームバッファは、一対のフレームバッファからなる。同一のフレーム画像を構成する複数のオブジェクトの画像は、上記一対のフレームバッファの一方に記憶される。一つのフレーム画像の生成が終了すると、次のフレーム画像が上記一対のフレームバッファの他方に記憶される。こうして、複数のフレーム画像が上記一対のフレームバッファに交互に記憶される。
【0036】
一対のフレームバッファ内の、現在フレーム画像を記憶するのに使用されている一方のフレームバッファと異なる他方のフレーバッファからそこに最近に記憶されたフレーム画像が読み出される。読み出すべきフレームバッファの切り替えはテレビジョンセット20の垂直同期信号に同期して行われ、新たなフレーム画像の生成もこの信号に同期して行われる。垂直同期信号の周期がフレーム画像表示周期(あるいは単にフレーム周期とも呼ぶ)である。
【0037】
サウンド処理部105は、RAM103に記憶されたサウンドデータに基づいて音声、音楽、効果音等を表すサウンド信号を発生し、テレビジョンセット20内の図示しないオーディオ回路を介してスピーカ22に供給する。
【0038】
入出力インタフェース部107は、キーパッド30A,30Bとカードスロット(図示せず)に挿入されたメモリカード50A,50Bとに接続され、これらのキーパッド及びメモリカードとCPU101その他の回路との間のデータ転送のタイミングを制御する。なお、本発明に係るゲーム装置を構成するコンピュータは図示されたものあるいはそれに類似のものに限定はされないことは言うまでもない。
【0039】
CD−ROM40は、ゲームプログラム及びそれが使用するデータを記録した記録媒体である。CD−ROMドライブ106は、このゲームプログラムとデータを読み込み、RAM103に格納し、CPU101による実行に供する。
【0040】
本ゲーム装置で使用されるゲームプログラムとデータは、他の方法で提供することもできる。例えば、そのゲームプログラムを通信に使用される搬送波内に含ませて、コンピュータで実行させるためのコンピュータデータ信号として送信しゲーム装置側で受信するという方法を採用することもできる。
【0041】
具体的には、例えば通信インタフェース部109により、通信回線111を介して接続されたネットワーク112上の図示されていない他の機器からゲームプログラムをダウンロードしてゲーム装置10で使用してもよい。磁気記憶装置108は、そのようにしてダウンロードされたゲームプログラムを記憶し、CPU101によりそのゲームプログラムを実行させるためにあるいは他の目的に使用できる。
【0042】
あるいは通信回線111を介して接続されたネットワーク112上の図示しない他の機器内のメモリに上記ゲームプログラムとデータをあらかじめ記憶し、このゲームプログラムとデータを通信回線111とネットワーク112を介して必要に応答して順次RAM103に格納して使用してもよい。なお、このような使用形態と、CD−ROMを使用する使用形態あるいは磁気記憶装置108を使用する使用形態の一つのみをサポートできるようにゲーム装置10を構成してもよい。
【0043】
本実施の形態では、ゲームプログラムとして野球ゲームが使用される。RAM103は、野球ゲーム用のプログラムの実行時には、例えば図2に示すメモリマップにしたがって使用される。システム領域103aには割り込み処理ルーチンへのジヤンプ先を示す割り込みベクタ等のゲーム進行の基本動作に必要なシステム情報が記憶される。プログラム領域103bにはゲームプログラムの実行中の部分がCD−ROM40からロードされる。
【0044】
モーションデータ領域103cには、全選手のいろいろのモーションを表す複数のモーションデータが格納される。モデルデータ領域103dには、ゲーム中に登場する複数の選手を表す画像を生成するのにそれぞれ使用される複数の選手モデルデータが格納される。以上のデータはいずれもCD−ROM40からゲームプログラムの実行前に対応するワーク領域に格納される。これらのデータの詳細は後に説明する。他のワーク領域103eは、ゲームプログラムの実行時に他のデータを一時的に保持するワーク領域として使用される。
【0045】
図3にはキーパッド30Aの構造の例が示されている。他のキーパッド30Bも同じ構造である。31は、画面21に表示されるカーソルを左、右、上又は下方向に移動するための4つの方向キーからなる方向キー群であり、32はL1ボタン、33はR1ボタン、34は三角(△)ボタン、35は丸(○)ボタン、36は、ばつ(×)ボタン、37は四角(□)ボタンである。
【0046】
本発明を適用するゲームシステムは図示されたものあるいはそれに類似のものに限定されない。他の構造の、表示装置、入力装置、CPUあるいは記録媒体を使用してもよいことは言うまでもない。
【0047】
図4には、本実施の形態で使用される野球ゲームプログラムにより表示される画面の一例が示されている。打者60、投手61、野手62,63、ランナー64等の選手が表示されている。守備側のプレイヤは、一方のキーパッド、例えば30Aを用いて投手61に投球あるいはランナー64に対する牽制を指令できる。攻撃側のプレイヤは、他のキーパッド30Bを用いて、打者60による打撃あるいはランナー64による走塁を指令できる。
【0048】
打者60による打撃の支援のために、ストライクゾーン67が表示される。ストライクゾーン67は9個の同じ大きさの部分領域に区分されている。攻撃側のプレイヤは、投手61により投げられたボールを見て、ストライクゾーン67内のボールが来る部分領域を予測し、方向キー群31を用いてカーソル68をその予測した部分領域に動かすことにより打撃位置を指示する。
【0049】
走塁の指令には、例えば「走れ」と「戻れ」がある。具体的には、走塁指示対象のランナーが1塁ランナー、2塁ランナー又は3塁ランナーであるとき、そのランナーを指定するために方向キー群31内の右方向キー(→)、上方向キー(↑)又は左方向キー(←)が操作される。出塁中の全ランナーに対する走塁指示を指示するときには、方向キー群31内のいずれの方向キーも操作されない。
【0050】
「走れ」は、L1キー32により指示される。ランナーはこのキーが押されている間、走り続け、このキーが開放されたときにランナーは停止する。「戻れ」は、R1キー33により指示される。このキーが押されている間、ランナーは元の塁に向けて走り続け、このキーが開放されたときにランナーは停止する。ランナーの停止は、特別のキーの操作によって指示されるのではなく、「走れ」を指示するL1キー32あるいは「戻れ」を指示するR1キー33が押されなくなったときに、結果として指示されることになる。
【0051】
ランナーが「走れ」を指示されなくなったとき、ランナーのモーションをそれまでの走るモーションから停止時のモーションに移行する必要がある。本発明では、このようにプレイヤによるキー操作が終了したときであっても、その終了に伴いキャラクタのモーションの変更を必要とする場合には、新たな操作入力がプレイヤにより与えられたと考える。
【0052】
本実施の形態でのキャラクタのモーションの移行方法を説明する前に、キャラクタのモーションの表示の原理的な処理を説明する。キャラクタのモーションの表示のためにキャラクタの骨格を表すスケルトンモデルが使用される。図5には、スケルトンモデルの一例を示す。スケルトンモデルとしては他の構造のものも使用可能であるのは言うまでもない。
【0053】
キャラクタは、3次元のローカル空間に位置し、人の首、肩、肢体等を表すための複数の直線状のアークE1ないしE10からなるスケルトンモデルでもって表される。これらのアークは関節N1からN6により相互に連結されている。例えば最初のアークE1は首を表し、アークE2は肩を表し、関節N1によりアークE1に連結されている。アークE3は腕を表し、関節N2によりアークE2に接続されている。以下では、各関節をノードと呼ぶ。
【0054】
各アークに対応して、そのアークに対応する肢体等を表す複数のポリゴンが後に説明するモデルデータにより定義されており、ポリゴンで構成されたキャラクタの画像が形成される。
【0055】
各アークの位置と方向を指定するにはいろいろの方法が使用できるが、ここでは例えば以下に示す方法が用いられる。各アークは、それの基準点の位置とそのアークの角度で指定される。アークE1の基準点はその端点N0である。この基準点N0はこのスケルトンモデル全体の基準点としても使用される。他のアークの基準点にはそのアークが接続されたアークE1に近い側(上流側)のノードが使用できる。例えばアークE2の基準点はノードN1である。
【0056】
アークE1の位置データとして、ローカル空間内の基準点N0の位置座標が用いられる。アークE1の角度データとしてローカル空間内のアークE1の角度座標が用いられる。他のアークの位置データ及び角度データとして、上流側のアークに対する相対位置座標及び相対角度座標が用いられる。すなわち、あるアークの位置データとして、アークE1に近い側の隣接アークの基準点に対する、当該アークの基準点の相対位置が使用される。
【0057】
具体的には当該アークの基準点のローカル空間内の位置座標と上記上流側の隣接アークの基準点のローカル空間内の位置座標との差が使用される。例えばアークE2の位置データとしては、アークE1の基準点N0に対する、ノードN1の相対位置が使用される。すなわち、アークE2の基準点N1の位置座標(X2,Y2,Z2)とアークE1の基準点N0の位置座標(X1,Y1,Z1)との差座標が使用される。
【0058】
各アークの角度データとして上記隣接アークの角度に対する当該アークの相対角度が使用される。すなわち、当該アークのローカル空間内の角度座標と上記隣接アークのローカル空間内の角度との差座標が使用される。例えばアークE2の角度データとしては、アークE1の角度に対する、アークE2の相対角度が使用される。すなわち、アークE2の角度座標(α2,β2,γ2)とアークE1の角度座標(α1,β1,γ1)の差座標が使用される。なお、アークその他の要素の角度は4元数(クォータニオン)を用いて表すことが望ましいが、本実施の形態では簡単化のために、角度座標はオイラー角を用いて説明する。
【0059】
以上のように、各アークに関するデータは位置データと角度データの両方からなり、これら二つのデータは合わせて6つの座標成分を持つ。以下では各アークに関する位置データと角度データを合わせて位置角度データ、単にアークのデータ、アークデータあるいは6座標成分と呼ぶことがある。スケルトンモデルを構成する全アークに関して定義された位置角度データをまとめてスケルトンデータあるいは骨格データと呼ぶことがある。
【0060】
スケルトンモデルに基づいてキャラクタを表す画像を生成するときには、スケルトンモデルを構成する各アークに対応する仮想空間(ワールド空間)内の位置及び角度が決定される。具体的には、ゲームプログラムで定められたキャラクタの位置データ及び方向データに基づいて、最初のアークE1が仮想空間内に配置される。すなわち、キャラクタの位置データと方向データに従って、アークE1の仮想空間内の位置と角度が決定される。
【0061】
既に述べたように、アークE2の位置データと角度データはアークE1に対する相対位置と相対角度を表す。これらの相対位置と相対角度と仮想空間内のアークE1の位置と座標とに基づいて、仮想空間内のアークE2の位置と角度が決定される。仮想空間内の他のアークE3からE10の位置と角度も同様にして決定される。その後、このようにして決定された仮想空間内のアークの各々に対して、そのアークに対応する肢体等を表すポリゴンの配置がモデルデータを用いて決定され、キャラクタを表すオブジェクトモデルが生成される。
【0062】
その後、ポリゴンに透視変換などのレンダリング処理が施され、画面に表示されるキャラクタを表すように、上記オブジェクトモデルを構成する複数のポリゴンの画面上の形と位置が決定される。また、オブジェクトモデルに対してテクスチャマッピング処理が施され、キャラクタを構成する複数のポリゴンの各面に色及び模様などが割り当てられる。こうして、キャラクタの状態を表す画像が生成され、画面に表示される。
【0063】
キャラクタのモーションの表示のために、各フレームごとに上記スケルトンデータが使用される。したがって、異なるフレームに対するスケルトンデータの集合が、表示すべきモーションを規定するデータであり、このデータをモーションデータと呼ぶのが自然である。
【0064】
本実施の形態でも選手のモーションを表示するために上記スケルトンデータが使用される。しかし、モーションの表示のためには、上記スケルトンデータの集合がそのままモーションデータとしてRAM103にあらかじめ記憶されている必要はなく、RAM103に記憶された他のデータから異なるフレームに対応するスケルトンデータの集合を生成することもできる。
【0065】
本明細書では、上記スケルトンデータの集合とは異なり、上記スケルトンデータの集合の生成に使用されるRAM103にあらかじめ記憶されたデータも広くモーションデータと呼ぶ。
【0066】
図6は、本実施の形態においてRAM103にあらかじめ記憶されるモーションデータ70の例を示す。モーションデータ70は異なるノードに対応する複数の部分モーションデータ70A,70B、…からなる。各部分モーションデータは、対応するノードの識別情報(以下、ノードID (IDentification) と呼ぶ)71と、その部分モーションデータが使用するキーフレームの数72と、それぞれのキーフレームのフレーム番号73a,73b、…と、それぞれのキーフレームにおける対応するノードの相対角度74a,74b、…とを含む。
【0067】
ここで、キーフレームは、よく知られているように、アニメーションの表示に使用される一連のフレームからあらかじめ選択された、当該一連のフレームを代表するフレームである。各キーフレームに対する画像データがあらかじめ決定され、当該キーフレームに対する画像情報の生成に使用されるが、キーフレーム以外のフレームの画像情報は、当該フレームの前後の一対のキーフレームに対してあらかじめ決定された一対の画像データを補間して得られる画像データから生成される。本実施の形態では、キャラクタのモーションを表す、キャラクタの時系列的に変化する姿勢を代表する複数の姿勢を表す複数のフレームがそれぞれキーフレームとして使用される。
【0068】
各部分モーションデータは、キーフレームにおける対応するノードの情報しか含まない。これにより、モーションデータとして記憶すべきデータの量を低減している。更に、キーフレームとして使用されるフレームの数とフレーム番号はノード毎に定められている。それにより、ノード毎に必要なキーフレームの数を最適化でき、モーションデータ全体のデータ量を更に低減している。
【0069】
更に、各キーフレームに対して記憶されるノードに接続されたアークに関する情報は、そのアークの相対角度のみであり、そのアークの相対位置を含まない。これにより、モーションデータのデータ量を更に低減している。アークの相対位置は、そのアークの相対角度と表示すべきキャラクタのモデルデータにより後に説明する方法により決定される。
【0070】
このモーションデータ70を用いた一般的なモーション表示の原理的な処理S300が図7に示される。まず、表示すべきモーションに対するモーションデータ70がRAM103から読み出される(ステップS301)。新たにフレーム画像を表示する毎に、そのフレーム画像の表示の前に、そのフレーム画像で表示すべき選手の画像を生成するために、そのフレームにおける各ノードの相対角度を示す姿勢データがモーションデータ70に基づいて以下のようにして生成される(ステップS302)。
【0071】
任意のフレームにおける各ノードの相対角度は、そのノードのキーフレーム情報を参照して補間により決定される。すなわち当該フレームが当該ノードのいずれかのキーフレームに一致するか否かが判断される。一致が検出されたとき、一致するキーフレームに対して記憶された相対角度が当該フレームにおける当該ノードの相対角度として使用される。一致が検出されないとき、当該フレームの両側に位置する一対のキーフレームに対して記憶された一対の相対角度を補間して当該フレームにおける当該ノードの相対角度が決定される。
【0072】
こうして、図8に示される姿勢データ75が生成される。データ75はそれぞれのノードに関する部分データ75a,75b,…として、ノードID76a,76b,…と、それぞれのノードのそのフレームにおける相対角度77a,77b,…とを含む。
【0073】
データ75は、各ノードの相対角度しか含まない。しかし、各ノードの長さは後に説明するように、あらかじめ決められている。したがって、データ75は、当該フレームにおける選手の姿勢を示すと考えることができる。以下ではデータ75をフレーム別姿勢データあるいは単に姿勢データと呼ぶことにする。
【0074】
図7に戻り、姿勢データ75に基づいて当該フレームに対するスケルトンデータが生成される(ステップS303)。図9に示されるように、スケルトンデータ78は、当該フレームにおけるそれぞれのノードに関するデータ78a,78b,…として、ノードID79a,79b,…と、それぞれのノードのそのフレームにおける相対角度80a,80b,…と、相対位置81a,81b,…とを含む。
【0075】
各ノードの相対位置は次のようにして決定される。本実施の形態では、野球ゲームをよりリアルにするために、各選手には、プロ野球のいずれかの特定の選手が対応付けられ、その特定の選手の名前が与えられ、更に各選手の頭部、背番号及びユニフォームが対応する特定のプロ野球の選手のそれらを模擬するように表示される。更に選手の体型もそのプロ野球選手のそれに近いものになるように表示される。
【0076】
このような表示を実現するために、図10に示すように、各選手に対応して選手モデルデータ82があらかじめ定められている。選手モデルデータ82には、異なるノードに対する部分モデルデータ82A,82B,…が含まれる。各部分モデルデータ82A又は82Bには、対応するノードのノードID83aと、そのノードが接続されている上流側のノードである親ノードのID83bと、対応する選手が基準姿勢にあるときの、各ノードの相対位置83c及び相対角度83dと、選手の表示時のサイズを規定するための相対スケール83e等が含まれている。
【0077】
各ノードに関連するポリゴンを指定するポリゴンデータ84も含まれている。このポリゴンデータ84には、各ポリゴンの構造に関するデータとともに、選手の背番号を表すテキスチャーデータ及び選手が属するチームのユニフォームを表すテキスチャーデータ等のテキスチャーデータも含まれる。
【0078】
各ノードに対する相対位置83cにより当該ノードの上流側のアークの長さが計算される。そのノードの各表示フレームでの相対位置は、計算された当該上流側のアークの長さと、姿勢データ75に含まれる、当該フレームでの当該上流側のノードの相対角度とから計算される。こうして、当該フレームにおける各ノードの相対位置が決定され、図9に示されたスケルトンデータ78が決定される。
【0079】
図7に戻り、生成されたスケルトンデータ78に基づいて、かつ、選手のモデルデータを使用して、当該フレームにおける選手のキャラクタ画像が生成され、表示される(ステップS304)。選手特有の顔、背番号、選手が所属するチームのユニフォーム等を有する3次元の選手を表す画像が生成される。
【0080】
以上の処理が異なるフレームに対して繰り返されることにより、選手の一つのモーションが表示されることになる。
【0081】
本実施の形態でのモーションの移行の詳細を以下に説明する。図11にはモーションの移行を含むモーション表示処理S350のフローを示す。キーパッド30A又は30Bからの操作入力が検出され(ステップS351)、検出された操作入力によりモーションの変更を要するか否かが判断される(ステップS352)。
【0082】
モーションの変更が必要であると判断されたときには、合成切り替え処理S400が実行される。本実施の形態では、後に説明するように、モーションの移行時には表示中のモーションから移行先のモーションに滑らかに移行するための移行用のモーションが合成処理により生成される。複数の合成処理を切り替えて実行可能になっている。合成切り替え処理S400では、これらの複数の合成処理の一つが選択される。
【0083】
図12を参照して合成切り替え処理S400の詳細を説明する。本実施の形態では、モーションの移行が最初に必要になった場合、移行用のモーションを通常合成処理により生成してもキャラクタの不自然な姿勢が出現しないと仮定している。例えば、野球ゲームでは、ランナーに「走れ」が指示された後で「止まれ」が指示されたとき、移行先の停止時のモーションは移行元の走るモーションとはランナーの逆の動きを必要としないので、走るモーションと停止時のモーションは通常合成処理により合成しても、得られる移行用のモーションにはランナーの不自然な姿勢が発生しない。ランナーに対する指示が「止まれ」から「戻れ」に変更されたときも同様である。
【0084】
更に、ランナーに「走れ」モーションの表示を必要とする第1の指令が指示されたとき、「戻れ」のような逆方向の動きを伴うモーションの表示を必要とする第2の指令が同じランナーにいきなり指示されることはなく、第1と第2の指令の間に「止まれ」のような姿勢の変化が少ないモーションの表示を要する第3の指令が指示されると仮定している。したがって、最初にモーションの移行を行うときは、通常合成処理により移行用のモーションを生成しても上記問題が生じない。
【0085】
しかし、走るモーションから停止状態のモーションに移行する途中でプレイヤから「戻れ」という指示がなされることがある。このときには、走るモーションから停止時のモーションに移行するための第1の移行用モーションの表示中に、更に戻るモーションに移行する第2の移行用モーションに移行する必要がある。しかしながら、第1の移行用モーションの先頭のモーション部分は、走るモーションの影響を強く受けて、ランナーがかなりの速度で走っているモーションに近いことがあり、表示中のモーションと移行先のモーションは逆方向に走るモーションとなる。したがって、第2の移行用モーションを合成処理により生成すると、移行用のモーションの途中で不自然な姿勢が出現することがある。
【0086】
一般的には、ビデオゲームではあるモーションからいずれかのモーションにモーションが移行する可能性があることが事前に分かっていることが多い。このようなモーションの組合わせに対しては、一般に移行用のモーションを合成により生成しても不自然な姿勢が移行用のモーションに出現しないように、移行前のモーションと移行後のモーションに対するモーションデータをあらかじめ設計することが可能である。しかしながら、上記移行用のモーションの表示中に更に他のモーションに移行するための他の移行用のモーションを合成により生成しても不自然な姿勢の出現を回避できるとは限らないのが普通である。したがって、上記仮定は本実施の形態に特有な仮定ではなく、一般的にビデオゲームにもあてはまる。
【0087】
そこで、本実施の形態では、モーション合成中に新たにモーションを移行すべきときには、通常の合成処理ではなく、半固定合成処理と言う特殊な合成処理を使用して移行用のモーションを生成する。このことにより、移行用のモーションに不自然な姿勢が発生するのを回避している。
【0088】
具体的には、合成切り替え処理S400では、モーションの変更が必要になったとき、移行先のモーションが操作入力に基づいて決定される(ステップS401)。その後あらかじめ定めた条件に従い望ましい合成処理が選択される。具体的には選択条件としてモーションを合成中であるか否かが判断される(ステップS401)。すなわち、表示中のモーションが合成により生成されているか否かが判断される。この判定は、以下で述べるモーションモードに基づいて判断される。
【0089】
モーションモードの初期値は非合成モードであり、例えば0である。モーションモードは、モーションの合成を開始しない限りこのモードに維持される。後に説明するように、モーションモードは、モーションの合成を開始すると、モーション合成のために実行される処理の種類に応じて値1又は2にセットされる。
【0090】
モーションを合成中でないときには通常合成処理S600が選択される。後に説明するように、通常合成処理では、キャラクタのモーションをプレイヤによる操作入力に応じたモーションに移行するために、後に説明する方法で移行用のモーションのための姿勢データが生成される。例えば、ランナー64が走っているときに、「止まれ」を指示された場合、ランナー64の走るモーションは合成により生成されていないので、通常合成処理S510が選択されることになる。なお、停止モーションは、例えば、ランナーが同じ位置で足を少し屈伸していることを示すモーションである。このとき、移行用のモーションは、走るモーションから少しずつ速度を落とすモーションである。
【0091】
通常合成処理の選択は以下のようにして実行される。まずモーションモードが通常合成モードにセットされる(ステップS403)。例えば、モーションモードは値1にセットされる。更に通常合成処理が初期化される(ステップS404)。具体的には、通常合成処理で使用される合成フレーム番号jが0にセットされる。
【0092】
判定ステップS402でモーションを合成中であると判断されたときには、半固定合成処理S700が選択される。この処理では、キャラクタの合成中のモーションをプレイヤによる操作入力に応じたモーションに更に移行するために、通常合成処理S600とは異なる、後に説明する方法で移行用のモーションのための姿勢データが生成される。
【0093】
半固定合成処理S700の選択は具体的には以下のようにして行われる。まずモーションモードが半固定合成モードにセットされる(ステップS405)。例えばモーションモードは値2にセットされる。更に半固定合成処理が初期化される(ステップS406)。具体的には、半固定合成処理で使用される、合成フレーム総数を表す変数kが0にセットされる。こうして合成切り替え処理S400が終了する。
【0094】
例えば、ランナー64が走っているときに「止まれ」が指示され、走るモーションから止まるモーションへ移行するモーションを表示している途中で、ランナー64に「戻れ」という指示が更になされた場合、上記移行用のモーションは通常合成処理S600により生成されているので、この移行用のモーションから戻るモーションへ移行するための新たな移行用のモーションは半固定合成処理S700により生成される。
【0095】
半固定合成処理S700の実行中に更にモーションを移行する場合も、合成切り替え処理S400では、新たな移行用のモーションを生成するために半固定合成処理S700が新たに起動される。
【0096】
図11に戻り、合成切り替え処理S400の実行後に、モーションモードが判断される(ステップS353)。モーションモードに応じて異なる処理がその後実行される。
【0097】
なお、ステップS352において、モーションの変更が不要であると判断された場合には、合成切り替え処理S400は実行されず、ステップS353においてモーションモードが判定される。プレイヤが操作入力を入力しなかった場合あるいはプレイヤが操作入力を入力したが入力された操作入力が表示中のモーションに影響を与えない場合には、モーションの変更は不要である。
【0098】
この場合、表示中のモーションのモーションモードは、合成を用いない非合成モード、通常合成モードあるいは半固定合成モードのいずれの場合もある。すなわち、通常合成処理あるいは半固定合成処理のいずれの合成処理も実行されていないときには、モーションモードは非合成モードである。
【0099】
また、既に述べたように合成切り替え処理S400が実行されたときにはモーションモードは通常合成モード又は半固定合成モードに変更され、その直後のフレームでは、以下に説明するように、変更後のモーションモードに対応して通常合成処理又は半固定合成処理が実行される。しかし当該フレームの後続のフレームにおいてモーションを変更する操作入力が更に入力されないときには、ステップS352において、モーション変更は不要と判断される。したがって、このような場合には、ステップS352においてモーション変更は不要と判断されたが、モーションモードは通常合成モード又は半固定合成モードである。
【0100】
さて、ステップS353において、モーションモードが非合成モードであると判断されたときには、図7に関して説明したようにモーション表示の基本的な手順が実行される。すなわち、必要なモーションデータがRAM103より読み出され(ステップS301)、このモーションデータから姿勢データが生成される(ステップS302)。その後、姿勢データからスケルトンデータが生成され(ステップS303)、キャラクタ画像が生成され、次のフレームにおいて表示される(ステップS304)。その後ステップS351以降が繰り返される。
【0101】
判定ステップS353において、モーションモードが通常合成モードとあると判断されたときは、合成切り替え処理S400において既に通常合成処理が選択されているときであり、通常合成処理S400が後に説明する方法で実行され、移行用モーションの姿勢データが生成される。
【0102】
つぎにモーションの合成が終了したか否かが判断される(ステップS356)。この判断は、後に述べるように合成フレーム総数jが閾値Naに達したか否かにより判断される。合成が終了していないときには、合成により得られた姿勢データからスケルトンデータが生成され(ステップS303)、スケルトンデータからキャラクタ画像が生成され、表示される(ステップS304)。その後ステップS351以降が繰り返される。
【0103】
この繰り返し時には、ステップS351においてモーションの変更を引き起こす新たな操作入力が検出されない限り、ステップS352において、モーションの変更が不要と判断される。したがって、合成切り替え処理S400は実行されない。一方、合成が終了しているときには、モーションモードが非合成モードにセットされ(ステップS357)、その後ステップS303とS304が実行され、処理はステップS351に戻る。
【0104】
判定ステップS353において、モーション合成モードが半固定合成モードであると判断されたときは、合成切り替え処理S400において既に半固定合成処理が選択されているときであり、半固定合成処理S700が後に説明する方法で実行され、移行用モーションの姿勢データが生成される。
【0105】
つぎにモーションの合成が終了したか否かが判断される(ステップS354)。この判断は、後に述べるように合成フレーム総数kが閾値Nbに達したか否かにより判断される。合成が終了していないときには、合成により得られた姿勢データからスケルトンデータが生成され(ステップS303)、スケルトンデータからキャラクタ画像が生成され、表示される(ステップS304)。その後ステップS351以降が繰り返される。この繰り返し時にも、合成切り替え処理S400は実行されない。一方、合成が終了しているときには、モーションモードが非合成モードにセットされ(ステップS355)、その後ステップS303とS304が実行され、処理はステップS351に戻る。
【0106】
通常合成処理S600は、図13にしたがって以下のようにして実行される。この処理S600では、キャラクタのモーションを表示中のモーションから移行先のモーションに滑らかに移行するための移行用のモーションが、表示中のモーション及び移行先のモーションを合成して生成される。すなわち表示中のモーションの移行開始時点より後の一連の姿勢データと、移行先のモーションの先頭のモーション部分を規定する一連の姿勢データが順次異なるフレームに対して合成され、移行用のモーションを規定する一連の姿勢データが順次生成される。
【0107】
合成は、合成フレーム総数の閾値Naに基づいて行われる。Naは、例えば5ないし20である。まず、合成フレーム番号jが1だけカウントアップされる(ステップS603)。既に述べたように、図12の合成切り替え処理S400内のステップS406において、合成フレーム番号jはあらかじめ初期値0に設定されている。
【0108】
合成比率Gが下記式1にしたがって計算される(ステップS604)。合成比率Gは、移行先のモーションの合成比率である。表示中のモーションの合成比率は1−Gとなる。
【0109】
【数1】
G=j÷Na (1)
【0110】
その後、表示中のモーションを指定するモーションデータがRAM103から読み出される(ステップS605)。表示中のモーションの移行開始時点以降の一連の姿勢データのうち、次のフレームで表示されるキャラクタの姿勢を指定する姿勢データが、読み出されたモーションデータから生成される(ステップS606)。モーションデータから姿勢データを生成する方法は図7のステップS302に関して説明したとおりである。
【0111】
移行先のモーションを指定するモーションデータがRAM103から読み出される(ステップS607)。移行先のモーションの次の姿勢データが生成される(ステップS608)。ステップS606とS608で生成された二つの姿勢データがステップS603で定められた合成比率Gに従い合成される(ステップS609)。
【0112】
この合成では、表示中のモーションの姿勢データが示す各ノードの相対角度、例えば(αs,βs,γs)と移行先のモーションの最初の姿勢データが示す同じノードに対する相対角度、例えば(αt,βt,γt)に対して合成比率Gで合成し、合成後の相対角度(αc,βc,γc)が下記式2aから2cにより計算される。この計算がスケルトンの全ノードに対して実行され、全ノードに対する計算により得られた一群の相対角度が合成後の姿勢データを構成する。なお、ここでは合成の対象となる二つの姿勢データに含まれた相対角度はオイラー角により表されていると仮定する。
【0113】
【数2】
αc=αs×(1−G)+αt×G (2a)
βc=βs×(1−G)+βt×G (2b)
γc=γs×(1−G)+γt×G (2c)
【0114】
後に説明するようにこのモーション移行途中で更にモーションの移行を行う場合に、この合成で最後に得られた姿勢データが使用される。そのときに備えて、合成により姿勢データが生成されるごとに、旧姿勢データとしてRAM103に保存される(ステップS610)。
【0115】
こうして合成後の姿勢データが生成されると、処理は図11に戻り、既に述べたように、ステップS303によりスケルトンデータが生成され、ステップS304によりキャラクタ画像が生成され、次のフレームにおいて表示される。その後、後続のフレームにおけるキャラクタ画像を生成するために図11の処理が繰り返される。
【0116】
図11の処理により通常合成処理S600が繰り返し呼ばれるごとに、図13のステップS603からS609が実行される。この繰り返しにより合成フレーム番号iが閾値Naに等しくなったとき、図11のステップS356により通常合成処理S600が終了したと判断される。なお、ステップS610が繰り返されたときには、新たに生成された姿勢データは、先に保存された旧姿勢データを更新するように保存される。
【0117】
以上から分かるように、合成比率Gが、1/Naから順次同じ値だけ増大し、最大(1−1/Na)に達するまでの合計Na−1個のフレームに対して合成が行われる。
【0118】
図14(a)には、通常合成処理S600による合成の一例が示されている。ここでは、図11のステップS301からS304を繰り返し実行することにより、モーションAを規定するモーションデータに基づき、キャラクタの一連の姿勢データAx,Ay,,,Azにより規定される一連のキャラクタ画像が表示されていると仮定する。更に、姿勢データAzに基づくキャラクタ画像が表示されているときにプレイヤによる操作入力が与えられ、その操作入力に応答してモーションBへの変更が必要であるとステップS352(図11)で判断されたと仮定する。移行に使用する合成フレーム総数の閾値Naは5であると仮定する。
【0119】
図において、A1、A2、…は、一連のフレームでモーションAを表示するための一連の姿勢データのうち、姿勢データAzの後続の一連の姿勢データを表す。B1、B2、…は、モーションBをその先頭から順次異なるフレームで表示するための一連の姿勢データである。移行用のモーションを決定するために、モーションAの移行開始後の最初の姿勢データA1とモーションBの最初の姿勢データB1とが合成比率1/5に基づいて合成され、移行用のモーションの最初の姿勢データP1が得られる。
【0120】
以下同様にしてモーションAの後続の姿勢データA2,A3,A4とモーションBの後続の姿勢データB2,B3,B4とがそれぞれ合成比率2/5、3/5、4/5に基づいて合成され、順次合成後の姿勢データP2,P3,P4が得られて合成が終了する。こうして一連の姿勢データP1,P2,P3,P4により指定される移行用のモーションPが表示される。
【0121】
なお、モーションAの次の姿勢データA5とモーションBの次の姿勢データB5とを合成しても合成比率は5/5であり、合成結果は、モーションBの姿勢データB5に等しくなるので、本実施の形態では姿勢データA5と姿勢データB5とは合成しない。一般的には、既に述べたように、合成フレーム総数の閾値をNaとすると、合成比率が(1−1/Na)に達した後は、合成は行われない。その後は、モーションBの後続の姿勢データB5,B6,B7,…に基づいてモーションBの後続の部分が表示される。
【0122】
以上から分かるように、移行用のモーションPの生成に、移行先のモーションBの先頭モーション部分を規定する一連の先頭の複数の姿勢データが使用されている。したがって、モーションBの影響が移行用のモーションPに徐々に反映される。この結果、モーションの移行によりモーションBの表示が実質的に遅延されないと言える。
【0123】
更に、モーションAの移行開始後の後続の姿勢データA1,A2,A3,A4が、移行用のモーションの生成に使用されているので、キャラクタのモーションは、モーションAの影響を残しながら徐々にモーションAからモーションBに移行する。モーションAとBが特殊なモーションの組合わせである場合を除いて、移行用のモーションPは、モーションAからモーションBへの滑らかな移行を実現すると期待される。
【0124】
しかし、後に説明するように、モーションAとBが互いに逆方向の動きを必要とするような特殊なモーションの組合わせであるときには、通常合成処理により生成されるモーションは、モーションの途中で姿勢が不自然な姿勢になることがあり、そのような特殊なモーションの組合わせの場合、それらのモーションの間でのモーションの移行には通常合成処理S600は適さない。
【0125】
なお、通常合成処理S600を、図14(b)に示すように論理演算記号を用いて後に言及することがある。ここでは、モーションAとBが通常合成処理Coにより合成され、モーションPが得られることが示されている。
【0126】
半固定合成処理S700は図15にしたがって実行される。この処理S700では、キャラクタのモーションを表示中のモーションから移行先のモーションに滑らかに移行するための移行用のモーションが、表示中のモーションとして表示されたキャラクタの最後の姿勢及び移行先のモーションを合成して生成される。すなわち表示中のモーションの移行直前にキャラクタの表示に使用された姿勢データと移行先のモーションの先頭のモーション部分を規定する一連の先頭の複数の姿勢データとが、順次異なるフレームに対して合成され、上記移行用のモーションを規定する一連の姿勢データが順次生成される。
【0127】
通常合成処理S600では、表示中のモーションの移行開始時点より後に表示される部分を規定する一連の姿勢データも移行用のモーションの生成に使用されたが、半固定合成処理S700では、表示中のモーションの移行開始直前に生成された姿勢データが移行用のモーションの生成に使用される点で、半固定合成処理S700は通常合成処理S600と異なる。半固定合成処理S700では、表示中のモーションが、移行開始前の特定の姿勢に固定されて移行先のモーションと合成されるので、この合成処理を半固定合成処理と呼ぶことにする。
【0128】
具体的には図15において、Nb,kは図13におけるNaとjと同じく合成フレーム総数の閾値及び合成フレーム番号を表す。まず合成フレーム番号kが1だけカウントアップされる(ステップS703)。既に述べたように、図12の合成切り替え処理S400内のステップS404において、合成フレーム番号kはあらかじめ初期値0に設定されている。合成比率Hが先に述べた合成比率Gと同様にして計算される(ステップS704)。
【0129】
旧姿勢データが読み出される(ステップS705)。ステップS705が最初に実行されたときにそのステップで読み出される旧姿勢データは、通常合成処理によりモーションの移行開始直前に決定された、元のモーションとして最後に表示されたキャラクタの姿勢データであり、通常合成処理S600のステップS610により保存された姿勢データである。
【0130】
移行先のモーションを規定するモーションデータがRAM103から読み出される(ステップS706)。移行先のモーションの次のフレームにおけるキャラクタの姿勢を表す姿勢データが決定される(ステップS707)。移行先のモーションのこの姿勢データとステップS705で読み出された旧姿勢データとが合成比率Hに従って合成される(ステップS708)。
【0131】
後に説明するように、半固定合成処理S700を用いてモーション移行途中で更にモーションを他のモーションに移行する場合に、半固定合成処理S700により最後に得られた姿勢データが使用される。そのときに備えて、ステップS708により姿勢データが生成されると、先に通常合成処理S600によりRAM103に保存された旧姿勢データがステップS708により得られた合成後の姿勢データにより更新される(ステップS709)。ステップS709による旧姿勢データの更新は、半固定合成処理S700が繰り返される毎に繰り返され、その結果、最新の合成により得られた姿勢データが旧姿勢データとして保存されることに注意すべきである。
【0132】
こうして合成後の姿勢データが生成されると、通常合成処理S600の場合と同じく、図11のステップS303により対応するスケルトンデータが生成される。更に、ステップS304によりキャラクタ画像が生成され、次のフレームにおいて表示される。その後、後続のフレームにおけるキャラクタ画像を生成するために図11の処理が繰り返される。
【0133】
図11の処理により半固定合成処理S700が繰り返し呼ばれるごとに、図15のステップS703からステップS709が実行される。この繰り返しにより合成フレーム番号kが閾値Nbに等しくなったとき、図11のステップS354により半固定合成処理S700が終了したと判断される。
【0134】
なお、以上においてステップS705が繰り返されたときに読み出される旧姿勢データは、先にステップS709により更新された姿勢データである。したがって、本実施の形態では、半固定合成処理S700により合成された姿勢データが次のフレームの姿勢データを生成するの使用されることになる。すなわち、ステップS708で生成された姿勢データが再帰的に使用されている。
【0135】
したがって、本実施の形態での半固定合成処理S700を再帰的な半固定合成処理と呼ぶことがある。後に説明するように、再帰的な半固定合成処理では、移行開始前に表示されていたモーションの最後の姿勢と移行先のモーションが非線形に増大する合成比率により合成されていることになる。
【0136】
図16(a)には、半固定合成処理S700による合成の例が示されている。ここでは、モーションPは、図14に示されたように、モーションAからBへの移行用のモーションである。図14に関して説明した方法により、モーションPを規定する姿勢データP1,P2が順次生成され、これらの姿勢データにより規定されるキャラクタ画像が順次表示され、姿勢データP2により規定されるキャラクタ画像が表示されているときに、プレイヤによる操作入力が与えられ、その操作入力に応答してモーションの変更が必要であると図11のステップS352により判断されたと仮定する。移行に使用する合成フレーム総数の閾値Nbは5であると仮定する。
【0137】
モーションの移行が必要であると判断されたとき、図11に示すように合成切り替え処理S400が起動される。この処理S400では、今の場合には図12にしたがって半固定合成処理S700が選択される。
【0138】
図11により半固定合成処理S700が繰り返し呼ばれることにより、新たな移行用のモーションQの姿勢データが生成される。最初に表示中のモーションPの最後に表示されたキャラクタの姿勢データP2が、旧姿勢データとして読み出される(ステップS705(図15))。モーションBの最初の姿勢データC1が生成される(ステップS706,707(図15))。
【0139】
これら二つの姿勢データが合成比率1/5に基づいて合成され(ステップS708(図15))、最初の合成後の姿勢データQ1が得られる。その後図11のステップS303とS304により、移行用のモーションの最初の画像が表示される。姿勢データQ1は図15のステップS709により、通常合成処理S600により保存された旧姿勢データを更新する。
【0140】
新たに保存された姿勢データQ1とモーションCの第2の姿勢データC2とが合成され、移行用の第2の姿勢データQ2が生成され、対応するキャラクタ画像が生成される。同様にしてモーションQの最近に生成された姿勢データQ2,Q3とモーションBの一連の姿勢データC3,C4とがそれぞれ合成され、順次合成後の姿勢データQ3,Q4が得られて合成が終了する。
【0141】
こうして一連の姿勢データQ1,Q2,Q3,Q4により指定される移行用のモーションQが表示される。その後は、モーションCの後続の姿勢データC5,C6,C7,…に基づいてモーションCの後続の部分が表示される。
【0142】
以上から分かるように、移行用のモーションQの生成に移行先のモーションCの先頭部分を規定する一連の先頭の姿勢データが使用されている。したがって、モーションCの影響が移行用のモーションQに徐々に反映される。この結果、モーションの移行によりモーションCの表示が実質的に遅延されないと言える。
【0143】
更に、移行前に表示されたモーションPの最後の姿勢を規定する姿勢データP2が、移行用のモーションの生成に使用され、モーションPの後続の姿勢P3等は使用されない。したがって、モーションPとモーションCが先に述べた通常合成処理S600による合成に適さない特定の組合わせのモーションであるときでも、得られるモーションQの姿勢は自然な変化を示すと期待される。したがって半固定合成処理S700は、例えばモーションPとCが互いに逆方向の動きを要するモーションであるときに、これらのモーションの間の移行に使用するのに適している。
【0144】
半固定合成処理S700では、合成が再帰的に行われるので、実質的に合成比率が非線形に増大されていることを図16(a)を参照して説明する。
【0145】
モーションPの各姿勢データPi(i=1,2,…)のあるノードの相対角度をαsiとし、モーションCの各姿勢データCi(i=1,2,…)の同じノードの相対角度をαtiとし、モーションQの各姿勢データQi(i=1,2,…)の同じノードの相対角度をαciとする。更に、姿勢データQiの合成に使用される合成比率をGiとする。以下では各ノードの3つの相対角度(α,β,γ)のうち、相対角度αのみについて説明するが、以下の説明は他の相対角度についてもあてはまる。
【0146】
移行用のモーションQの最初の姿勢Q1の相対角度αc1については次式3が成立する。
【0147】
【数3】
αc1=αs1×(1−G1)+αt1×G1 (3)
【0148】
移行用のモーションQの第2の姿勢Q2の相対角度αc2については次式4が成立する。
【0149】
【数4】
αc2=αc1×(1−G2)+αt2×G2 (4)
【0150】
式3を用いて式4を変形すると式5が得られる。
【0151】
【数5】
αc2=αs1×(1−G1)×(1−G2)
+αt1×G1(1−G2)+αt2×G2 (5)
【0152】
ここで、G1=1/5,G2=2/5を代入すると次式6が成立する。
【0153】
【数6】
αc2=αs1×(4/5)×(3/5)
+αt1×(1/5)×(3/5)+αt2×(2/5) (6)
【0154】
したがって、元のモーションPの相対角度αs1に対する実質的な合成比率は(4/5)×(3/5)であり、合成比率G2から決まる相対角度αs2に対する合成比率3/5の80%に低下している。この低下率は、モーションQの更に後の姿勢Q3,Q4のほうが大きくなる。
【0155】
すなわち、再帰的な半固定合成処理S700は、元のモーションPの最後の姿勢P2がモーションQに及ぼす影響(すなわち、姿勢P2によりモーションQの姿勢が変化する度合)が、合成フレーム番号kが増加するにつれて、その番号kの増加の割合よりも大きい割合で非線形に減少する。したがって、移行用モーションは、元のモーションPの最後の姿勢から移行先のモーションCの後続部分の先頭の姿勢に急速に近づく姿勢の変化を表すことになり、画面上ではモーションの移行がより急速に実現される。
【0156】
なお、再帰的な半固定合成処理S700を、図16(b)に示すように論理演算記号により後に言及することがある。ここでは、モーションPの旧姿勢データPoldと移行先のモーションCが再帰的な半固定合成処理Cfrにより合成され、移行用のモーションQが得られ、得られたモーションQの姿勢データがその後旧姿勢データQoldとしてモーションPの旧姿勢データPoldに代えて次の姿勢データの生成に使用されることが示されている。
【0157】
図17には、野球ゲームに本実施の形態によるモーション表示方法を適用したときの具体例が示されている。図において、モーションAはランナー64(図4)の走る動作を表す走るモーションであり、モーションBはランナー64が停止しているときの動作を表す停止モーションであり、モーションCは、ランナー64が元の塁に戻る動作を表す戻るモーションであると仮定する。
【0158】
操作入力に応答してモーションAが表示されモーションAが表示されている途中で、操作入力により「止まれ」が指示されたとき、図14(a)に関して説明したように、モーションAからBに移行するためのモーションPが通常合成処理S600を用いて生成される。移行用のモーションPが表示されている途中で、操作入力により「戻れ」が指示されたとき、図16(a)に関して説明したように、移行用のモーションQが半固定合成処理S700を用いて生成される。
【0159】
モーションPは、走るモーションAから止まるモーションBへの移行用のモーションであり、このモーションPは、ランナーが徐々に速度を落としながら停止するときのキャラクタのモーションを表す。したがって、このモーションPが表示され始めたときには、ランナーはまだ高速に走っていることがある。
【0160】
戻るモーションCは、走るモーションAと逆方向に走るモーションである。このようなモーションPとCを通常合成処理S600により合成すると、得られる移行用のモーションでは、手足等の動きが不自然になることがある。しかし、本実施の形態では、モーションPからモーションCに移行するときに、モーションPの最後の姿勢からモーションCに移行するので、モーションPのその後の姿勢の変化が移行用のモーションQに影響しない。したがって、滑らかな動きを示す移行用のモーションQを表示することができる。
【0161】
図18は、図17に示された二つのモーション移行を論理演算記号を用いて示す。すなわち、モーションAの表示中にモーションBへモーションを移行するときには、モーションAとBが通常合成処理Coにより合成され、移行用のモーションPが生成される。この移行用のモーションPの表示中にモーションCへモーションを移行するときには、上の通常合成処理Coが中止され、モーションPの旧姿勢データPoldとモーションCが再帰的な半固定合成処理Cfrにより合成され、移行用モーションQが生成される。
【0162】
なお、図17には示さなかったが、モーションQの表示中にモーションをモーションDに更に移行するときには、図11のフローに従い、図18に点線で示されるように、モーションQの旧姿勢データQoldとモーションDに対して再帰的な半固定合成処理Cfrが施され、新たな移行用のモーションRが生成されることになる。
【0163】
<発明の実施の形態2>
上記再帰的な半固定合成処理S700に代えて図19に示す半固定合成処理S700Aでも類似の移行用のモーションを生成することもできる。図19においては、図15に示された半固定合成処理S700と異なり、ステップS705では、この半固定合成処理S700Aが繰り返されたときでも、通常合成処理S600で保存された旧姿勢データが読み出され、ステップS708では本半固定合成処理S700Aで得られた旧姿勢データが、上記姿勢データとは別に本合成処理の旧姿勢データとして保存される。ステップS709で保存された旧姿勢データは、半固定合成処理S700を実行中に別のモーションへ移行する際に利用できる。
【0164】
更に、ステップS704では、表示中のモーション及び移行先のモーションに対する合成比率として、合成フレーム番号kの非線形な関数Hs(k)及びHt(k)(kは0以上の整数)が使用される。
【0165】
したがって、本合成処理では、移行先のモーションの先頭部分を規定する一連の姿勢データが通常合成処理S600で保存された旧姿勢データと合成されることになる。したがって、半固定合成処理S700Aは、先に述べた再帰的な半固定合成処理S700と異なり、非再帰的な半固定合成処理である。しかし、合成比率は、例えば以下に例示する方法により、再帰的な半固定合成処理S700と同様に非線形に変化される。
【0166】
半固定合成処理S700Aによる合成処理の使用例が図20に示されている。ここでは、モーションPからモーションCに移行するときに、モーションPの最後に表示されたキャラクタ画像を規定する姿勢データP2とモーションCの先頭の部分を規定する一連の姿勢データC1,C2,C3,C4とが合成され、モーションCの後続の部分に移行するための移行用のモーションQが生成される。
【0167】
表示中のモーションと移行先のモーションに対する合成比率として、合成フレーム番号kの非線形な関数Hs(k)及びHt(k)が使用される。移行先のモーションに対する合成比率Ht(k)は、合成フレーム番号kの非線形な関数であり、番号kの増大の割合より大きい割合で増大するよう定められる。もちろん、二つの関数の和は1になるように定められる。
【0168】
関数Hs(k)及びHt(k)は例えば次式7a及び7bのように定めることができる。式7c及び7dは、式7aと7bで使用される関数の定義及び初期値を規定する式である。
【0169】
【数7】
Hs(k)=Hs(k−1)×(1−H(k))(7a)
Ht(k)=1−Hs(k) (7b)
ここで
H(k)=k÷Rb (7c)
Hs(0)=1 (7d)
【0170】
なおRbはモーションの移行に要するフレーム数であり、自然数である。
【0171】
具体的には、Hs(k),Hs(k)等は式8aから8fにより表される。
【数8】
【0172】
なお、Hs(4),Ht(4)以降の詳細は簡単化のために省略する。
本半固定合成処理S700Aも、基本的には先に述べた半固定合成処理S700の利点と同じ利点を有する。ただし、先に述べた半固定合成処理S700では、本半固定合成処理S700Aに比べて合成比率関数の計算が簡単であり、かつ、本半固定合成処理S700Aで必要な2種類の旧姿勢データの一方を保存しなくてもよいので、その点では先に述べた半固定合成処理S700のほうが処理が簡単である。
【0173】
しかし、本実施の形態では、合成比率関数Hs(k),Ht(k)を所望の関数で定義することにより、合成比率とフレーム番号kとの関係を所望のものにすることができる。
【0194】
<発明の実施の形態3>
以上の実施の形態では、最初のモーション移行時には通常合成処理により移行用のモーションを生成しても移行用のモーションには不自然な姿勢が出ないと仮定していた。具体的には、走るモーションと戻るモーションのように姿勢の変化が激しい二つのモーションの間でモーションが移行することはなく、これらのモーションの間には停止時のモーションのように姿勢の変化の少ないモーションが表示されると仮定していた。
【0195】
プレイヤは「走れ」をL1キー32を押すことにより指示し、「止まれ」はこのキーを開放することにより指示する。同様にプレイヤは「戻れ」をR1キー33を押すことにより指示する。したがって、プレイヤがL1キー32を開放する前にR1キー33を押すことが生じる可能性がある。このような走るモーションから戻るモーションへの移行に対しては、第1の実施の形態では、合成切り替え処理S400(図12)のステップS401では、モーションが合成中でないので通常合成処理S600が起動されることになり、移行用のモーションには不自然な姿勢が出現する恐れがある。
【0196】
本実施の形態は、このような姿勢の激しい変化を伴う二つのモーションの間でのモーションの移行を可能にする。具体的には、このような特殊なモーションの組合わせをあらかじめ登録しておく。
【0197】
図12の合成切り替え処理S400を以下のように変更すればよい。すなわちステップS402では、モーションを合成中でないとき、元のモーションと移行先のモーションとの組みが、あらかじめ登録されているモーションの組みと一致するか否かが判定され、もし一致が検出されたときには半固定合成処理S700が選択される。
【0199】
図21には、第1の実施の形態により表示されるモーションの例を示す。図において(a)は、プレイヤによる指令「走れ」により右方向に全力で走るモーションでのランナーの代表的な姿勢を示す。(b)は、走る途中でプレイヤによる指令「走れ」指令がなくなり、走るモーションから停止モーションに移行するモーションでの速度を落としつつあるランナーの一姿勢を示す。(c)は、ランナーが止まる前にプレイヤにより指令「戻れ」が出されたために、上記移行モーションから急遽戻るモーションに移行するモーションでの急遽左方向に走り出そうとするランナーの姿勢を示す。(d)は、戻るモーションに移行し終わり左方向に全力で走るランナーの代表的な姿勢を示す。
【0200】
特に同図(c)のように、走るモーションから止まるモーションに移行するモーションの途中から戻るモーションに移行するときでも、ランナーの姿勢の急激な変化にも拘わらず自然な形でその姿勢を表示できることが分かる。
【0201】
以上の説明から分かるように、上記実施の形態のいずれにおいても、モーションを移行するとき、モーションの移行の遅延が少なく、かつキャラクタの不自然な姿勢が発生するのを回避できる。
【0202】
本発明は以上に示した実施の形態に限定されるものではなく、その要旨を逸脱しない範囲でこれらの実施の形態を適宣修正あるいは変更してもよいことは言うまでもない。
【0203】
例えば、以上の実施の形態では、モーションデータにはスケルトンモデルの各ノードの相対角度が記憶されているが、相対距離は記憶されておらず、相対距離は、選手モデルデータから決定された。しかし、本発明は、このようなモーションデータに限定されない。例えば、モーションデータとして各ノードの相対距離に関するデータを含むものであってもよい。
【0204】
同様に、実施の形態で使用された姿勢データには相対角度が含まれ、相対距離が含まれていなかったが、相対角度を含むデータを姿勢データとして使用してもよい。要するに、姿勢データは、キャラクタの姿勢を特定可能なあるいは特定するのに使用可能なデータであればよい。
【0205】
また、各選手の画像が選手毎に定められたモデルデータを用いて生成されたが、本発明は、モーションの移行に関連するものであり、そのモーションを実行するキャラクタを表す画像の生成の仕方は限定されない。
【0206】
上記実施の形態では本発明を野球ゲームに適用した場合について説明したが、本発明は、サッカーゲーム等の他のスポーツゲームあるいはレーシングゲーム等の他のゲームに適用することもできる。更に、本発明はこれらのゲーム以外のゲームにも適用できる。
【0207】
上記実施の形態で示したゲーム装置を構成するコンピュータにそこで使用したゲームプログラムの一部の機能を実行するための論理回路を設けてもよく、更にそれに伴いそこで使用したゲームプログラムの機能の実行方法を変更するようにゲームプログラムを変更してもよい。
【0208】
上記本発明の実施の形態では、ゲーム装置とは別体にキーパッド、テレビジョンセットが設けられていた。しかし、キーパッド及びテレビジョンセットの一方あるいは両方がゲーム装置と一体に構成されていてもよく、また、他の入力装置あるいは表示装置が使用されてもよい。また、ゲーム装置で使用される記録媒体は、ゲーム装置から着脱自在でなくて、ゲーム装置に固定的に組み込まれたものでもよい。
【0209】
本発明に係る記録媒体あるいは本発明に係るゲーム装置で使用される記録媒体は、CD−ROMに限定されるものではなく、コンピュータが読み取り可能な記録媒体であればよい。例えばDVD、磁気的記録媒体、半導体メモリあるいは他の光学的記録媒体であってもよい。
【0210】
上記実施の形態では、家庭用ゲーム機をプラットフォームとして使用したが、本発明に係るゲーム装置を、パーソナルコンピュータなどの汎用コンピュータあるいはアーケードゲーム機をプラットフォームとして実現してもよい。また、携帯電話、携帯情報端末、カーナビゲーション等の通信端末をプラットフォームとして実現してもよい。
【0211】
【発明の効果】
本発明によれば、移行元のモーションの最後に表示された姿勢と移行先のモーションの先頭部分とにより移行用のモーションを決定するようにしたため、移行元のモーションによる姿勢の変化が移行用のモーションに影響を及ぼすことがない。そのため、移行元のモーションと全く逆の動きをする他のモーションへ移行する場合であっても、滑らかに目的のモーションへ移行することができる。
【図面の簡単な説明】
【図1】本発明に係る、コンピュータ内臓のゲーム装置を使用したゲームシステムの概略図である。
【図2】コンピュータ内のRAMのメモリマップの一例である。
【図3】ゲームシステムで使用可能なキーパッドの例を示す図である。
【図4】野球ゲームにより表示される画像を模式的に示す図である。
【図5】スケルトンモデルの例を示す図である。
【図6】コンピュータ内のRAMに記憶されるモーションデータの例を示す図である。
【図7】モーション表示の原理的な処理を示すフローチャートである。
【図8】モーションデータから生成される姿勢データを示す図である。
【図9】姿勢データから生成されるスケルトンデータを示す図である。
【図10】選手用のモデルデータを示す図である。
【図11】モーション表示処理の詳細を示すフローチャートである。
【図12】合成切り替え処理のフローチャートである。
【図13】通常合成処理のフローチャートである。
【図14】通常合成処理によるモーション移行の例を示す図である。
【図15】半固定合成処理のフローチャートである。
【図16】半固定合成処理によるモーション移行の例を示す図である。
【図17】野球ゲームにおけるモーション移行の例を示す図である。
【図18】図17のモーション移行に対する論理演算記号を用いた説明図である。
【図19】他の半固定合成処理のフローチャートである。
【図20】図19の半固定合成処理によるモーション移行の例を示す図である。
【図21】第1の実施の形態で得られるいくつかのモーションの例を示す図である。
【符号の説明】
1 ゲームシステム
10 ゲーム装置
20 テレビジョンセット
30A キーパッド
30B キーパッド
67 ストライクゾーン
68 カーソル
111 通信回線
112 ネットワーク
Claims (17)
- ビデオゲームのキャラクタの第1のモーションを表示中に操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、当該第1のモーションの表示中に最後に表示された当該キャラクタの姿勢と前記第2のモーションの先頭の複数の姿勢により規定される先頭のモーション部分とに依存して、前記第1のモーションの前記表示済みのモーション部分から前記第2のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための移行用モーションを決定する決定ステップと、
前記第1のモーションの前記表示済みのモーション部分に続けて、前記決定ステップで決定された前記移行用モーションを表示し、当該移行用モーションに続けて前記第2のモーションの前記後続のモーション部分を表示する表示ステップと、
を含み、
前記決定ステップでは、前記第2のモーションの前記先頭の複数の姿勢のそれぞれに対し順次合成が施されるように、一連の合成が施され、それにより前記移行用モーションを規定する一連の姿勢が順次決定され、
前記一連の合成の内の最初の合成は、前記キャラクタの前記最後に表示された姿勢と前記第2のモーションの前記先頭の複数の姿勢の内の最初の姿勢とに対して施され、
前記一連の合成の内の第i番目の合成(ただしiは2以上の整数)は、前記一連の合成の内の第(i−1)番目の合成により得られた前記キャラクタの姿勢と前記第2のモーションの前記先頭の複数の姿勢の内の第i番目の姿勢とに対して施される、
ことを特徴とするモーション表示方法。 - ビデオゲームのキャラクタの第1のモーションを表示中に操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、当該第1のモーションの表示中に最後に表示された当該キャラクタの姿勢に続く、前記第1のモーションの複数の姿勢と前記第2のモーションの先頭の複数の姿勢により規定される先頭のモーション部分とに依存して、前記第1のモーションの前記表示済みのモーション部分から前記第2のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための第1の移行用モーションを決定する第1の決定ステップと、
前記第1のモーションの前記表示済みのモーション部分に続けて、前記第1の決定ステップで決定された前記第1の移行用モーションを表示し、当該第1の移行用モーションに続けて前記第2のモーションの前記後続のモーション部分を表示する第1の表示ステップと、
前記第1の移行用モーションの表示中に操作入力に応答して前記キャラクタのモーションを前記第1の移行用モーションの表示済みのモーション部分から第3のモーションに移行するときに、前記第1の移行用モーションの表示中に最後に表示された前記キャラクタの姿勢と前記第3のモーションの先頭の複数の姿勢により規定される先頭モーション部分とに依存して、前記第1の移行用モーションの前記表示済みのモーション部分から前記第3のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための第2の移行用モーションを決定する第2の決定ステップと、
前記第1の移行用モーションの前記表示済みのモーション部分に続けて、前記第2の決定ステップで決定された前記第2の移行用モーションを表示し、当該第2の移行用モーションに続けて前記第3のモーションの前記後続のモーション部分を表示する第2の表示ステップと、
を含むモーション表示方法。 - 前記第1の移行用モーションは、前記第1のモーションの表示中に最後に表示された前記姿勢に続く、前記第1のモーションの前記複数の姿勢と前記第2のモーションの前記先頭の複数の姿勢のそれぞれとを徐々に増大する合成比率を用いて合成したときに得られる一連の姿勢で規定されるモーションを表し、
前記第2の移行用モーションは、前記第1の移行用モーションの表示中に最後に表示された当該キャラクタの前記姿勢と前記第3のモーションの前記先頭の複数の姿勢のそれぞれとを徐々に増大する合成比率を用いて合成したときに得られる一連の姿勢により規定されるモーションを表す請求項2に記載のモーション表示方法。 - 前記第2の移行用モーションを規定する前記徐々に増大する合成比率は、合成比率が一定の値ずつ増大する場合よりも急激に増大することを特徴とする請求項3に記載のモーション表示方法。
- 前記第2の決定ステップでは、前記第3のモーションの前記先頭の複数の姿勢のそれぞれに対し順次合成が施されるように、一連の合成が施され、それにより前記第2の移行用モーションを規定する一連の姿勢が順次決定され、
前記一連の合成の内の最初の合成は、前記キャラクタの前記第1の移行用モーションの表示中に前記最後に表示された姿勢と前記第3のモーションの前記先頭の複数の姿勢の内の最初の姿勢とに対して施され、
前記一連の合成の内の第i番目の合成(ただしiは2以上の整数)は、前記一連の合成の内の第(i−1)番目の合成により得られた前記キャラクタの姿勢と前記第3のモーションの前記先頭の複数の姿勢の内の第i番目の姿勢とに対して施される、
ことを特徴とする請求項2に記載のモーション表示方法。 - ビデオゲームのキャラクタの第1のモーションを表示中にプレイヤによる操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、所定の条件が満たされているか否かを判別する判別ステップと、
前記第1のモーションから前記第2のモーションに移行するための移行用モーションを決定するための移行用モーション決定手順として、所定の複数の移行用モーション決定手順の一つを前記判別ステップによる判別結果に依存して選択する選択ステップと、
前記選択ステップで選択された移行用モーション決定手順に従って移行用モーションを決定する決定ステップと、
前記第1のモーションの前記表示済みのモーション部分に続けて、前記決定ステップで決定された前記移行用モーションを表示する表示ステップと、
を含むモーション表示方法。 - 前記判別ステップは、前記第1のモーションがいずれかのモーションから他のモーションへ移行するための移行用モーションであることを前記条件としている請求項6に記載のモーション表示方法。
- コンピュータで実行されるビデオゲームのためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記プログラムは、
ビデオゲームのキャラクタの第1のモーションを表示中に操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、当該第1のモーションの表示中に最後に表示された当該キャラクタの姿勢と前記第2のモーションの先頭の複数の姿勢により規定される先頭のモーション部分とに依存して、前記第1のモーションの前記表示済みのモーション部分から前記第2のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための移行用モーションを決定する決定ステップと、
前記第1のモーションの前記表示済みのモーション部分に続けて、前記決定ステップで決定された前記移行用モーションを表示し、当該移行用モーションに続けて前記第2のモーションの前記後続のモーション部分を表示する表示ステップと、
をコンピュータに実行させるプログラムであり、
前記決定ステップでは、前記第2のモーションの前記先頭の複数の姿勢のそれぞれに対し順次合成が施されるように、一連の合成が施され、それにより前記移行用モーションを規定する一連の姿勢が順次決定され、
前記一連の合成の内の最初の合成は、前記キャラクタの前記最後に表示された姿勢と前記第2のモーションの前記先頭の複数の姿勢の内の最初の姿勢とに対して施され、
前記一連の合成の内の第i番目の合成(ただしiは2以上の整数)は、前記一連の合成の内の第(i−1)番目の合成により得られた前記キャラクタの姿勢と前記第2のモーションの前記先頭の複数の姿勢の内の第i番目の姿勢とに対して施される、
ことを特徴とする記録媒体。 - コンピュータで実行されるビデオゲームのためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記プログラムは、
ビデオゲームのキャラクタの第1のモーションの表示中に操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、前記第1のモーションの最後に表示された当該キャラクタの姿勢に続く、前記第1のモーションの複数の姿勢と前記第2のモーションの先頭の複数の姿勢により規定される先頭のモーション部分とに依存して、前記第1のモーションの前記表示済みのモーション部分から前記第2のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための第1の移行用モーションを決定する第1の決定ステップと、
前記第1のモーションの前記表示済みのモーション部分に続けて、前記第1の決定ステップで決定された前記第1の移行用モーションを表示し、当該第1の移行用モーションに続けて前記第2のモーションの前記後続のモーション部分を表示する第1の表示ステップと、
前記第1の移行用モーションの表示中に操作入力に応答して前記キャラクタのモーションを前記第1の移行用モーションの表示済みのモーション部分から第3のモーションに移行するときに、前記第1の移行用モーションの表示中に最後に表示された前記キャラクタの姿勢と前記第3のモーションの先頭の複数の姿勢により規定される先頭のモーション部分とに依存して、前記第1の移行用モーションの前記表示済みのモーション部分から前記第3のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための第2の移行用モーションを決定する第2の決定ステップと、
前記第1の移行用モーションの前記表示済みのモーション部分に続けて、前記第2の決定ステップで決定された前記第2の移行用モーションを表示し、当該第2の移行用モーションに続けて前記第3のモーションの前記後続のモーション部分を表示する第2の表示ステップと、
をコンピュータに実行させるプログラムであることを特徴とする記録媒体。 - 前記第1の移行用モーションは、前記第1のモーション表示中に最後に表示された前記キャラクタの前記姿勢に続く、前記第1のモーションの前記複数の姿勢と前記第2のモーションの前記先頭の複数の姿勢のそれぞれとを徐々に増大する合成比率を用いて合成したときに得られる一連の姿勢で規定されるモーションを表し、
前記第2の移行用モーションは、前記第1の移行用モーションの表示中に最後に表示された前記キャラクタの前記姿勢と前記第3のモーションの前記先頭の複数の姿勢のそれぞれとを徐々に増大する合成比率を用いて合成したときに得られる一連の姿勢により規定されるモーションを表す請求項9に記載の記録媒体。 - 前記第2の移行用モーションを規定する前記徐々に増大する合成比率は、合成比率が一定の値ずつ増大する場合よりも急激に増大することを特徴とする請求項10に記載の記録媒体。
- 前記第2の決定ステップでは、前記第3のモーションの前記先頭の複数の姿勢のそれぞれに対し順次合成が施されるように、一連の合成が施され、それにより前記第2の移行用モーションを規定する一連の姿勢が順次決定され、
前記一連の合成の内の最初の合成は、前記キャラクタの前記第1の移行用モーションの表示中に前記最後に表示された姿勢と前記第3のモーションの前記先頭の複数の姿勢の内の最初の姿勢とに対して施され、
前記一連の合成の内の第i番目の合成(ただしiは2以上の整数)は、前記一連の合成の内の第(i−1)番目の合成により得られた前記キャラクタの姿勢と前記第3のモーシ ョンの前記先頭の複数の姿勢の内の第i番目の姿勢とに対して施される、
ことを特徴とする請求項9に記載の記録媒体。 - コンピュータで実行されるビデオゲームのためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記プログラムは、
ビデオゲームのキャラクタの第1のモーションを表示中にプレイヤによる操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、所定の条件が満たされているか否かを判別する判別ステップと、
前記第1のモーションから前記第2のモーションに移行するための移行用モーションを決定するための移行用モーション決定手順として、所定の複数の移行用モーション決定手順の一つを前記判別ステップによる判別結果に依存して選択する選択ステップと、
前記選択ステップで選択された移行用モーション決定手順に従って移行用モーションを決定する決定ステップと、
前記第1のモーションの前記表示済みのモーション部分に続けて、前記決定ステップで決定された前記移行用モーションを表示する表示ステップと、
をコンピュータに実行させるプログラムであることを特徴とする記録媒体。 - 前記判別ステップは、前記第1のモーションがいずれかのモーションから他のモーションへ移行するための移行用モーションであることを前記条件としている請求項13に記載の記録媒体。
- ビデオゲームのキャラクタの第1のモーションを表示中に操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、当該第1のモーションの表示中に最後に表示された当該キャラクタの姿勢と前記第2のモーションの先頭の複数の姿勢により規定される先頭のモーション部分とに依存して、前記第1のモーションの前記表示済みのモーション部分から前記第2のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための移行用モーションを決定する決定手段と、
前記第1のモーションの前記表示済みのモーション部分に続けて、前記決定手段で決定された前記移行用モーションを表示し、当該移行用モーションに続けて前記第2のモーションの前記後続のモーション部分を表示する表示手段と、
を備え、
前記決定手段では、前記第2のモーションの前記先頭の複数の姿勢のそれぞれに対し順次合成が施されるように、一連の合成が施され、それにより前記移行用モーションを規定する一連の姿勢が順次決定され、
前記一連の合成の内の最初の合成は、前記キャラクタの前記最後に表示された姿勢と前記第2のモーションの前記先頭の複数の姿勢の内の最初の姿勢とに対して施され、
前記一連の合成の内の第i番目の合成(ただしiは2以上の整数)は、前記一連の合成の内の第(i−1)番目の合成により得られた前記キャラクタの姿勢と前記第2のモーションの前記先頭の複数の姿勢の内の第i番目の姿勢とに対して施される、
ことを特徴とするゲーム装置。 - ビデオゲームのキャラクタの第1のモーションを表示中に操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、当該第1のモーションの表示中に最後に表示された当該キャラクタの姿勢に続く、前記第1のモーションの複数の姿勢と前記第2のモーションの先頭の複数の姿勢により規定される先頭のモーション部分とに依存して、前記第1のモーションの前記表示済みのモーション部分から前記第2のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための第1の移行用モーションを決定する第1の決定手段と、
前記第1のモーションの前記表示済みのモーション部分に続けて、前記第1の決定手段で決定された前記第1の移行用モーションを表示し、当該第1の移行用モーションに続け て前記第2のモーションの前記後続のモーション部分を表示する第1の表示手段と、
前記第1の移行用モーションの表示中に操作入力に応答して前記キャラクタのモーションを前記第1の移行用モーションの表示済みのモーション部分から第3のモーションに移行するときに、前記第1の移行用モーションの表示中に最後に表示された前記キャラクタの姿勢と前記第3のモーションの先頭の複数の姿勢により規定される先頭モーション部分とに依存して、前記第1の移行用モーションの前記表示済みのモーション部分から前記第3のモーションの前記先頭のモーション部分の後続のモーション部分に移行するための第2の移行用モーションを決定する第2の決定手段と、
前記第1の移行用モーションの前記表示済みのモーション部分に続けて、前記第2の決定手段で決定された前記第2の移行用モーションを表示し、当該第2の移行用モーションに続けて前記第3のモーションの前記後続のモーション部分を表示する第2の表示手段と、
を備えることを特徴とするゲーム装置。 - ビデオゲームのキャラクタの第1のモーションを表示中にプレイヤによる操作入力に応答して当該キャラクタのモーションを前記第1のモーションの表示済みのモーション部分から第2のモーションに移行するときに、所定の条件が満たされているか否かを判別する判別手段と、
前記第1のモーションから前記第2のモーションに移行するための移行用モーションを決定するための移行用モーション決定手順として、所定の複数の移行用モーション決定手順の一つを前記判別手段による判別結果に依存して選択する選択手段と、
前記選択手段で選択された移行用モーション決定手順に従って移行用モーションを決定する決定手段と、
前記第1のモーションの前記表示済みのモーション部分に続けて、前記決定手段で決定された前記移行用モーションを表示する表示手段と、
を備えることを特徴とするゲーム装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001013882A JP3618298B2 (ja) | 2000-01-28 | 2001-01-22 | モーション表示方法、ゲーム装置及び記録媒体 |
US09/769,435 US6697071B2 (en) | 2000-01-28 | 2001-01-26 | Method, game machine and recording medium for displaying motion in a video game |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000020949 | 2000-01-28 | ||
JP2000-20949 | 2000-01-28 | ||
JP2001013882A JP3618298B2 (ja) | 2000-01-28 | 2001-01-22 | モーション表示方法、ゲーム装置及び記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001283241A JP2001283241A (ja) | 2001-10-12 |
JP3618298B2 true JP3618298B2 (ja) | 2005-02-09 |
Family
ID=26584428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001013882A Expired - Lifetime JP3618298B2 (ja) | 2000-01-28 | 2001-01-22 | モーション表示方法、ゲーム装置及び記録媒体 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6697071B2 (ja) |
JP (1) | JP3618298B2 (ja) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3372243B2 (ja) * | 2000-01-28 | 2003-01-27 | 株式会社スクウェア | 球技系ゲームのプログラムを記録したコンピュータ読み取り可能な記録媒体、球技系ゲーム処理装置およびその方法 |
EP1357517A4 (en) * | 2001-02-02 | 2009-05-20 | Sharp Kk | METHOD AND DEVICE FOR CREATING ANIMATION DATA, TERMINAL, COMPUTER-READABLE RECORDING MEDIUM RECORDING AN ANIMATION DATA CREATION PROGRAM, AND ANIMATION DATA CREATION PROGRAM |
JP3944456B2 (ja) * | 2003-02-06 | 2007-07-11 | 株式会社バンダイナムコゲームス | プログラム、情報記憶媒体及びゲーム装置 |
US20070191986A1 (en) * | 2004-03-12 | 2007-08-16 | Koninklijke Philips Electronics, N.V. | Electronic device and method of enabling to animate an object |
US20060262119A1 (en) * | 2005-05-20 | 2006-11-23 | Michael Isner | Transfer of motion between animated characters |
CA2553508A1 (en) * | 2005-07-29 | 2007-01-29 | Avid Technology, Inc. | Transfer of attributes between geometric surfaces of arbitrary topologies with distortion reduction and discontinuity preservation |
JP2007190050A (ja) * | 2006-01-17 | 2007-08-02 | Konami Digital Entertainment:Kk | ビデオゲームプログラム、ビデオゲーム装置及びビデオゲーム制御方法 |
JP4070791B2 (ja) * | 2006-02-20 | 2008-04-02 | 株式会社コナミデジタルエンタテインメント | ゲームプログラム、ゲーム装置及びゲーム制御方法 |
US8026917B1 (en) * | 2006-05-01 | 2011-09-27 | Image Metrics Ltd | Development tools for animated character rigging |
US7859538B2 (en) * | 2006-07-31 | 2010-12-28 | Autodesk, Inc | Converting deformation data for a mesh to animation data for a skeleton, skinning and shading in a runtime computer graphics animation engine |
US8094156B2 (en) * | 2006-07-31 | 2012-01-10 | Autodesk Inc. | Rigless retargeting for character animation |
US20090058863A1 (en) * | 2007-09-04 | 2009-03-05 | Apple Inc. | Image animation with transitional images |
JP2009093437A (ja) * | 2007-10-09 | 2009-04-30 | Sega Corp | 画像表示プログラムおよび画像表示装置 |
US20090312100A1 (en) * | 2008-06-12 | 2009-12-17 | Harris Scott C | Face Simulation in Networking |
KR101247930B1 (ko) | 2010-05-10 | 2013-03-26 | 가부시키가이샤 스퀘어.에닉스 | 화상처리장치, 화상처리방법 및 화상처리 프로그램 |
US10441876B2 (en) * | 2013-12-20 | 2019-10-15 | Activision Publishing, Inc. | Video game integrating recorded video |
KR20150075909A (ko) * | 2013-12-26 | 2015-07-06 | 한국전자통신연구원 | 3차원 캐릭터 동작 편집방법 및 그 장치 |
CN108022286B (zh) * | 2017-11-30 | 2019-08-13 | 腾讯科技(深圳)有限公司 | 画面渲染方法、装置及存储介质 |
JP6440887B1 (ja) * | 2018-05-28 | 2018-12-19 | 株式会社ゴールドウイン | 身体形状の変化に対応した衣服の設計を支援する装置、方法及びプログラム |
CN110858879B (zh) * | 2018-08-23 | 2022-06-14 | 浙江宇视科技有限公司 | 视频流处理方法、装置及计算机可读存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3168244B2 (ja) | 1996-02-13 | 2001-05-21 | 株式会社セガ | 画像生成装置およびその方法 |
US6088042A (en) * | 1997-03-31 | 2000-07-11 | Katrix, Inc. | Interactive motion data animation system |
-
2001
- 2001-01-22 JP JP2001013882A patent/JP3618298B2/ja not_active Expired - Lifetime
- 2001-01-26 US US09/769,435 patent/US6697071B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US6697071B2 (en) | 2004-02-24 |
JP2001283241A (ja) | 2001-10-12 |
US20020050997A1 (en) | 2002-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3618298B2 (ja) | モーション表示方法、ゲーム装置及び記録媒体 | |
JP3561456B2 (ja) | ビデオゲーム装置、ビデオゲームにおけるキャラクタ動作設定方法及びキャラクタ動作設定プログラムが記録されたコンピュータ読み取り可能な記録媒体 | |
JP3372832B2 (ja) | ゲーム装置、ゲーム画像処理方法およびゲーム画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
US6203425B1 (en) | Image generating device, method thereof, game device and storage medium | |
US6947046B2 (en) | Image generation method, program, and information storage medium | |
US7706636B2 (en) | Image generation system (game system), image generation method, program and information storage medium | |
JP2001204963A (ja) | モーション表示方法、ゲーム装置及び記録媒体、 | |
US6614435B1 (en) | Method of control of playback of motion and program product and game system for same | |
JP3747050B1 (ja) | プログラム、情報記憶媒体、及び画像生成システム | |
JP2010022646A (ja) | プログラム、情報記憶媒体および画像生成システム | |
JP2006325695A (ja) | ポインティングデバイスに対する入力を用いたゲームプログラムおよびゲーム装置 | |
JP3606370B2 (ja) | ゲーム装置および情報記憶媒体 | |
JP2003103047A (ja) | 画像生成システム、画像生成方法及びプログラム | |
US8216066B2 (en) | Game device, game device control method, program, and information storage medium | |
JP3990258B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4097236B2 (ja) | 画像生成装置及び情報記憶媒体 | |
JP7144931B2 (ja) | プログラム及びゲームシステム | |
JP4447000B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP5124233B2 (ja) | プログラム、及び、ゲームシステム | |
JP4233065B2 (ja) | ゲーム装置及び情報記憶媒体 | |
JP2006254950A (ja) | プログラム、情報記憶媒体及びゲーム装置 | |
JP3827691B2 (ja) | ゲーム装置、その制御方法、ならびに、プログラム | |
JP2001104634A (ja) | ゲーム機 | |
JP2001204958A (ja) | カメラ制御方法、ゲーム装置及び記録媒体 | |
JP6444950B2 (ja) | ゲームプログラム及びゲームシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040713 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040921 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040921 |
|
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: 20041026 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041109 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 3618298 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: 20071119 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081119 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: 20091119 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: 20091119 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: 20091119 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: 20091119 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: 20091119 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: 20091119 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: 20091119 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: 20091119 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101119 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: 20111119 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: 20121119 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: 20121119 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131119 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: 20131119 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: 20131119 Year of fee payment: 9 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
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 |
|
EXPY | Cancellation because of completion of term |