JP4704622B2 - 画像生成システム、プログラム及び情報記憶媒体 - Google Patents

画像生成システム、プログラム及び情報記憶媒体 Download PDF

Info

Publication number
JP4704622B2
JP4704622B2 JP2001229466A JP2001229466A JP4704622B2 JP 4704622 B2 JP4704622 B2 JP 4704622B2 JP 2001229466 A JP2001229466 A JP 2001229466A JP 2001229466 A JP2001229466 A JP 2001229466A JP 4704622 B2 JP4704622 B2 JP 4704622B2
Authority
JP
Japan
Prior art keywords
height
model object
terrain
model
changing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001229466A
Other languages
English (en)
Other versions
JP2003044878A (ja
Inventor
建 大久保
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Namco Ltd
Bandai Namco Entertainment Inc
Original Assignee
Namco Ltd
Namco Bandai Games Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Namco Ltd, Namco Bandai Games Inc filed Critical Namco Ltd
Priority to JP2001229466A priority Critical patent/JP4704622B2/ja
Priority to US10/206,038 priority patent/US7088366B2/en
Publication of JP2003044878A publication Critical patent/JP2003044878A/ja
Application granted granted Critical
Publication of JP4704622B2 publication Critical patent/JP4704622B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • A63F13/10
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • A63F13/573Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using trajectories of game objects, e.g. of a golf ball according to the point of impact
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/833Hand-to-hand fighting, e.g. martial arts competition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6607Methods for processing data by generating or executing the game program for rendering three dimensional images for animating game characters, e.g. skeleton kinematics
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8029Fighting without shooting

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明は、画像生成システム、プログラム及び情報記憶媒体に関する。
【0002】
【背景技術及び発明が解決しようとする課題】
従来より、仮想的な3次元空間であるオブジェクト空間内において仮想カメラ(所与の視点)から見える画像を生成する画像生成システム(ゲームシステム)が知られており、いわゆる仮想現実を体験できるものとして人気が高い。格闘ゲームを楽しむことができる画像生成システムを例にとれば、プレーヤは、ゲームコントローラ(操作手段)を用いて自キャラクタ(モデルオブジェクト)を操作し、相手プレーヤやコンピュータが操作する敵キャラクタと対戦することでゲームを楽しむ。
【0003】
さて、従来、このような格闘ゲームでは、自キャラクタと敵キャラクタとが、起伏の無い平らな地形面(地面)上で対峙して対戦するのが一般的であった。従って、地形の起伏の影響をゲームに反映させることができず、生成される画像のリアル度を今ひとつ向上できなかった。
【0004】
また、この種の格闘ゲームでは、予め用意されたモーションを再生することにより、キャラクタの手足等の動きを表現している。例えば、キャラクタを前に歩かせる操作をプレーヤが行った場合には、前歩き用に用意されたモーションが再生され、キャラクタをジャンプさせる操作を行った場合には、ジャンプ用に用意されたモーションが再生される。
【0005】
しかしながら、このように予め用意されたモーションを単に再生することのみでキャラクタの動きを表現しようとすると、キャラクタの動きが現実世界とは異なる不自然なものになってしまう場合がある。特に、起伏を有する地形面上でのキャラクタの動きを表現しようとすると、キャラクタの足が地面に潜り込んでしまうなどの不具合が生じることが判明した。
【0006】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、モデルオブジェクトの自然な動きを少ない処理負荷で表現できる画像生成システム、プログラム及び情報記憶媒体を提供することにある。
【0007】
【課題を解決するための手段】
上記課題を解決するために、本発明は、画像生成を行う画像生成システムであって、モデルオブジェクトにモーションを行わせるモーション処理を行う手段と、モデルオブジェクトを構成するパーツオブジェクトが地形面に潜り込まないように、モーション処理により特定されるモデルオブジェクトの形状を、起伏を有する地形の形状に応じて変形させる手段と、オブジェクト空間内の所与の視点での画像を生成する手段とを含むことを特徴とする。また本発明に係るプログラムは、上記手段としてコンピュータを機能させることを特徴とする。また本発明に係る情報記憶媒体は、コンピュータ読み取り可能な情報記憶媒体であって、上記手段としてコンピュータを機能させるためのプログラムを記憶(記録)したことを特徴とする。
【0008】
本発明によれば、モーション処理(モーション再生、モーション生成)によりモデルオブジェクトの形状(基準形状、各フレームでの形状)が特定される。そして、パーツオブジェクトが地形面の下に潜り込まないように(埋まらないように)、この特定されたモデルオブジェクトの形状が地形の形状(地形データ)に応じて変形される(モーションが変化する)。従って本発明によれば、モーション処理によりモデルオブジェクトにモーションを行わせながら、モデルオブジェクトの形状を、地形の形状に適合するように変形させることができ、地形の形状を反映させたモデルオブジェクトの画像を生成できる。
【0009】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、モデルオブジェクトを構成するパーツオブジェクトのうち、その配置位置での地形の高さが低いパーツオブジェクトが地形面に接地する高さに、モデルオブジェクトを配置し、該配置により他のパーツオブジェクトが地形面に潜り込んだ場合に、該他のパーツオブジェクトが地形面に接地するようにモデルオブジェクトの形状を変形させることを特徴とする。
【0010】
このようにすれば、配置位置(配置位置の真下)での地形の高さが他のパーツオブジェクトに比べて低いパーツオブジェクトを確実に地形面に接地させながら、配置位置での地形の高さが高い他のパーツオブジェクトが地形面の下に潜り込むのを防止できる。そして、配置位置での地形の高さが高い他のパーツオブジェクトが、地形面に接地できなくなるような事態を防止でき、より自然で矛盾の無い画像を生成できる。
【0011】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、モーション処理により特定されるモデルオブジェクトの形状において最も低い位置にあるパーツオブジェクトから所与の高さ範囲内にあるパーツオブジェクトを候補パーツオブジェクトとして選択し、選択された候補パーツオブジェクトのうち、その配置位置での地形の高さが最も低い候補パーツオブジェクトが地形面に接地する高さに、モデルオブジェクトを配置することを特徴とする。
【0012】
このようにすれば、地形面に接地させるべきではないパーツオブジェクトが地形面に接地されてしまう事態等を防止できる。
【0013】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、モデルオブジェクトを配置する高さを、地形の高さに応じて変化させると共に、モデルオブジェクトが空中移動状態である場合にも、空中移動の軌道を、モデルオブジェクトの位置での地形の高さに応じて変化させることを特徴とする。
【0014】
このようにすれば、空中移動状態(ジャンプ状態、攻撃を受けて飛んだ状態又は高い場所から落下している状態等)にあるモデルオブジェクトを、適正な着地モーションで地形面に着地させること等が可能になる。
【0015】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、モデルオブジェクトを配置する高さを、地形の高さに応じて変化させると共に、モデルオブジェクトが、そのパーツオブジェクトを地形面に接地させながら移動する通常移動状態である場合には、パーツオブジェクトの配置位置での地形の高さに応じて、モデルオブジェクトの高さを変化させ、モデルオブジェクトが空中移動状態である場合には、モデルオブジェクトの高さを決定するための判断点をモデルオブジェクトの代表点に固定し、該代表点の位置での地形の高さに応じて、モデルオブジェクトの高さを変化させることを特徴とする。
【0016】
このようにすれば、モデルオブジェクトの高さを決定するための判断点(地形データを地形データ記憶部から読み出すための点)が、次々に変わってしまう事態を防止でき、処理の簡素化を図れる。
【0017】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、モデルオブジェクトを配置する高さを、地形の高さに応じて変化させると共に、地形の高さの変化率よりも低い変化率で、モデルオブジェクトの高さを変化させることを特徴とする。
【0018】
このようにすれば、地形の高さが急激に変化した場合にそれに応じてモデルオブジェクトの配置高さが急激に変化してしまう事態を防止でき、起伏のある地形面上でのモデルオブジェクトのスムーズな移動を実現できる。
【0019】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、モデルオブジェクトが、ゲームに登場するキャラクタであり、モデルオブジェクトを配置する高さを、地形の高さに応じて変化させると共に、地形の高さに基づき得られた高さにモデルオブジェクトを配置した時にモデルオブジェクトの腰パーツオブジェクトが地形面に潜り込んでいる場合には、腰パーツオブジェクトが地形面に接地するように、モデルオブジェクトの高さを高くすることを特徴とする。
【0020】
このようにすれば、モデルオブジェクトであるキャラクタが寝転がっている場合等において、その腰パーツオブジェクトが地形面の下に潜り込んでしまう事態を防止できる。
【0021】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、腰パーツオブジェクト以外のパーツオブジェクトの高さが、腰パーツオブジェクトの高さよりも低くなるように、モデルオブジェクトの形状を変形することを特徴とする。
【0022】
このようにすれば、モデルオブジェクトであるキャラクタが寝転がっている場合等において、モデルオブジェクトの形状を、地形面の形状に適合するように変形させることが可能になる。
【0023】
また本発明は、画像生成を行う画像生成システムであって、モデルオブジェクトを配置する高さを、地形の高さに応じて変化させる手段と、モデルオブジェクトにモーションを行わせるモーション処理を行う手段と、オブジェクト空間内の所与の視点での画像を生成する手段とを含み、モデルオブジェクトが空中移動状態である場合にも、空中移動の軌道を、モデルオブジェクトの位置での地形の高さに応じて変化させることを特徴とする。また本発明に係るプログラムは、上記手段としてコンピュータを機能させることを特徴とする。また本発明に係る情報記憶媒体は、コンピュータ読み取り可能な情報記憶媒体であって、上記手段としてコンピュータを機能させるためのプログラムを記憶(記録)したことを特徴とする。
【0024】
本発明によれば、モーション処理によるモーションを行わせながら、モデルオブジェクトを空中移動させることができる。そして、この空中移動状態のモデルオブジェクトを、適正な着地モーションで地形面に着地させること等が可能になり、よりリアルで自然な画像を生成できる。
【0025】
また本発明は、画像生成を行う画像生成システムであって、モデルオブジェクトを配置する高さを、地形の高さに応じて変化させる手段と、モデルオブジェクトにモーションを行わせるモーション処理を行う手段と、オブジェクト空間内の所与の視点での画像を生成する手段とを含み、モデルオブジェクトが、パーツオブジェクトを地形面に接地させながら移動する通常移動状態である場合には、パーツオブジェクトの配置位置での地形の高さに応じて、モデルオブジェクトの高さを変化させ、モデルオブジェクトが空中移動状態である場合には、モデルオブジェクトの高さを決定するための判断点をモデルオブジェクトの代表点に固定し、該代表点の位置での地形の高さに応じて、モデルオブジェクトの高さを変化させることを特徴とする。また本発明に係るプログラムは、上記手段としてコンピュータを機能させることを特徴とする。また本発明に係る情報記憶媒体は、コンピュータ読み取り可能な情報記憶媒体であって、上記手段としてコンピュータを機能させるためのプログラムを記憶(記録)したことを特徴とする。
【0026】
本発明によれば、モデルオブジェクトが通常移動状態である場合には、パーツオブジェクト(地形面に最初に接地させるパーツオブジェクト、配置位置の地形の高さが低いパーツオブジェクト)の配置位置での地形の高さに応じて、モデルオブジェクトの高さが決められる。
【0027】
一方、モデルオブジェクトが空中移動状態(一定の期間に亘ってパーツオブジェクトのいずれもが地形面に接地しない状態)である場合には、モデルオブジェクトの高さを決めるための判断点が、オブジェクトの代表点に固定される。そして、この判断点である代表点の位置(真下)での地形の高さに応じて、モデルオブジェクトの高さが決められる。従って、判断点が次々に変わってしまう事態を防止できる共に、オブジェクトの高さ(空中移動の軌道)を、代表点の位置(真下)での地形の高さに応じて変化させることが可能になる。
【0028】
【発明の実施の形態】
以下、本実施形態について図面を用いて説明する。
【0029】
なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を何ら限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0030】
1.構成
図1に、本実施形態の画像生成システム(ゲームシステム)の機能ブロック図の一例を示す。なお同図において本実施形態は、少なくとも処理部100を含めばよく(或いは処理部100と記憶部170を含めばよく)、それ以外のブロックについては任意の構成要素とすることができる。
【0031】
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、マイク、センサー或いは筺体などのハードウェアにより実現できる。
【0032】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAMなどのハードウェアにより実現できる。
【0033】
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などのハードウェアにより実現できる。処理部100は、この情報記憶媒体180に格納されるプログラム(データ)に基づいて本発明(本実施形態)の種々の処理を行う。即ち情報記憶媒体180には、本発明(本実施形態)の各手段(特に処理部100に含まれるブロック)としてコンピュータを機能させるためのプログラム(各手段をコンピュータに実現させるためのプログラム)が記憶(記録、格納)される。
【0034】
なお、情報記憶媒体180に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部170に転送されることになる。また情報記憶媒体180には、本発明の処理を行うためのプログラム、画像データ、音データ、表示物の形状データなどを含ませることができる。
【0035】
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、或いはHMD(ヘッドマウントディスプレイ)などのハードウェアにより実現できる。
【0036】
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【0037】
携帯型情報記憶装置194は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などを考えることができる。
【0038】
通信部196は、外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0039】
なお本発明(本実施形態)の各手段としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180に配信するようにしてもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含まれる。
【0040】
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの各種の処理を行う。この場合、処理部100は、記憶部170内の主記憶部172をワーク領域として使用して、各種の処理を行う。
【0041】
ここで、処理部100が行う処理としては、コイン(代価)の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、オブジェクト(1又は複数のプリミティブ)の位置や回転角度(X、Y又はZ軸回り回転角度)を求める処理、オブジェクトを動作させる処理(モーション処理)、視点の位置(仮想カメラの位置)や視線角度(仮想カメラの回転角度)を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置する処理、ヒットチェック処理、ゲーム結果(成果、成績)を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などを考えることができる。
【0042】
処理部100は、移動処理部110、モーション処理部112、画像生成部120、音生成部130を含む。なお、処理部100は、これらの全ての機能ブロックを含む必要はない。
【0043】
ここで、移動処理部110は、モデルオブジェクト(キャラクタ、ロボット、車又は戦車等の移動オブジェクト)の移動を制御する処理を行うものである。
【0044】
より具体的には、移動処理部110は、モデルオブジェクトをオブジェクト空間(ゲーム空間)で移動(並進移動、回転移動)させる処理を行う。そして、このモデルオブジェクトの移動処理は、操作部160からの操作データ(プレーヤからの入力データ)や前のフレーム(1/60秒、1/30秒等)でのモデルオブジェクトの位置、回転角度(方向)等に基づいて、現在のフレーム(インター)でのモデルオブジェクトの位置、回転角度を求めることで実現できる。例えば(k−1)フレームでのモデルオブジェクトの位置、回転角度をPk-1、θk-1とし、モデルオブジェクトの1フレームでの位置変化量(速度)、回転変化量(回転速度)を△P、△θとする。するとkフレームでのモデルオブジェクトの位置Pk、回転角度θkは例えば下式(1)、(2)のように求められる。
【0045】
Pk=Pk-1+△P (1)
θk=θk-1+△θ (2)
モーション処理部112は、モデルオブジェクト(キャラクタ)にモーション(アニメーション)を行わせる処理(モーション再生、モーション生成)を行う。そして、このモデルオブジェクトのモーション処理は、モデルオブジェクトのモーションを、モーションデータ記憶部176に記憶されているモーションデータに基づいて再生することで実現できる。
【0046】
より具体的には、モーションデータ記憶部176には、モデルオブジェクト(スケルトン)を構成する各パーツオブジェクト(スケルトンを構成する骨)の位置又は回転角度等を含むモーションデータが記憶されている。モーション処理部112は、このモーションデータを読み出し、このモーションデータに基づいてモデルオブジェクトを構成する各パーツオブジェクト(骨)を動かすことで(モデルオブジェクトのスケルトン形状を変形させることで)、モデルオブジェクトのモーションを再生する。
【0047】
なお、モーションデータ記憶部176に記憶されるモーションデータは、現実世界の人にセンサをつけてモーションキャプチャを行うことで作成したものであることが望ましいが、モーションデータを、物理シミュレーション(物理計算を利用したシミュレーション。擬似的な物理計算でもよい)などによりリアルタイムに生成するようにしてもよい。
【0048】
また、少ないモーションデータ量でリアルなモーションを再生するために、モーション補間やインバース・キネマティクスを用いてモーション再生を行うことが望ましい。
【0049】
さて、本実施形態では、モデルオブジェクト(キャラクタ)が移動するフィールド面である地形面(地面、建物の面、ゲームフィールド面)に起伏を持たせている。このため、地形データ記憶部178が、地形(建物などの人工的な地形も含む。以下の説明でも同様)の形状を特定するための地形データ(狭義には高さデータ)を記憶している。
【0050】
そして本実施形態では、地形データ記憶部178に記憶される地形データに基づいて、モデルオブジェクトの移動処理、モーション処理を行っている。
【0051】
より具体的には、モデルオブジェクトの高さを決定するための判断点(重心)を各オブジェクトに設定する。この判断点としては、モデルオブジェクトを構成するパーツオブジェクトのうち、その配置位置での地形の高さが低いパーツオブジェクトの位置(関節)や、モデルオブジェクトの代表点(モデルオブジェクトの位置を代表的に表す点)などを用いることができる。
【0052】
そして本実施形態では、この判断点の位置(ワールド座標系のX、Z座標)での地形の高さデータ(ワールド座標系のY座標)を、地形データ記憶部178から読み出す。そして、この高さデータ(高さオフセット)により特定される高さに、モデルオブジェクトを配置する。このようにすることで、モデルオブジェクトの配置高さを、地形の高さに応じて変化させることができ、モデルオブジェクトを地形面の形状に沿って移動させることが可能になる。
【0053】
また本実施形態ではモーション処理部112が含むモーション変形部114が、モデルオブジェクトの形状(スケルトン形状)を変形する処理を行う。
【0054】
より具体的には、モデルオブジェクトを構成するパーツオブジェクト(骨、関節)が地形面(地面、ゲームフィールド面)の下に潜り込まないように(埋まらないように)、モーション処理(モーション再生、モーション生成)により特定されるモデルオブジェクトの形状(モーションデータで特定される基準形状)を、地形の形状に応じて変形する。即ち、モデルオブジェクトを構成するパーツオブジェクト(足、脚、手、腕、首、胸、腰等のパーツオブジェクト)のうち、その配置位置(X、Z座標)での地形の高さ(Y座標)が低いパーツオブジェクト(例えば左足パーツオブジェクト)が地形面に接地するような高さに、モデルオブジェクトを配置する。そして、この配置により、他のパーツオブジェクト(例えば右足パーツオブジェクト)が地形面の下に潜り込んだ場合には、その他のパーツオブジェクトが地形面に接地するように、例えば公知のインバース・キネマティクス手法を用いて、モデルオブジェクトの形状を変形させる。
【0055】
例えばモーションデータにより特定される形状のモデルオブジェクト(代表点)を、オブジェクト空間に仮配置した場合(例えばX、Z座標が操作データにより特定され、Y座標が所定値(零)となる位置に配置した場合)に、モデルオブジェクトの左足パーツオブジェクトの位置(X、Z座標)での地形面の高さ(Y座標)が最も低くなったとする。すると、この場合には、この左足パーツオブジェクト(左足首)が地形面に接地するような高さに、モデルオブジェクトを配置する。そして、この配置により例えば右足パーツオブジェクトが地形面に潜り込んだ場合には、右足パーツオブジェクトが地形面に接地するように、モデルオブジェクトを変形させる。即ち、インバース・キネマティクスにより、モデルオブジェクトの右膝の位置(関節位置)等を変更する。
【0056】
このようにすることで、モデルオブジェクトのモーション(モーションデータにより特定されるモーション)が、地形面の形状に応じて変化するようになり、よりリアルな画像を生成できる。
【0057】
画像生成部120は、処理部100で行われる種々の処理の結果に基づいて画像処理を行い、ゲーム画像を生成し、表示部190に出力する。例えば、いわゆる3次元のゲーム画像を生成する場合には、まず、座標変換、クリッピング処理、透視変換、或いは光源計算等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ(プリミティブ面の頂点(構成点)に付与される位置座標、テクスチャ座標、色(輝度)データ、法線ベクトル或いはα値等)が作成される。そして、この描画データ(プリミティブ面データ)に基づいて、ジオメトリ処理後のオブジェクト(1又は複数プリミティブ面)の画像が、描画バッファ174(フレームバッファ、ワークバッファ等のピクセル単位で画像情報を記憶できるバッファ)に描画される。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像が生成されるようになる。
【0058】
音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
【0059】
なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【0060】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて生成してもよい。
【0061】
2.本実施形態の特徴
次に本実施形態の特徴について図面を用いて説明する。なお、以下では、格闘ゲームに本実施形態を適用した場合を主に例にとり説明するが、本実施形態は、格闘ゲーム以外の他のゲームにも広く適用できる。
【0062】
2.1 地形の形状に応じたモーションの変化
さて、本実施形態では、図2に示すように、モデルオブジェクトMOB(キャラクタ)が、複数のパーツオブジェクト(腰12、胸14、首16、頭18、右上腕20、右前腕22、右手24、左上腕26、左前腕28、左手30、右股32、右すね34、右足36、左股38、左すね40、左足42)により構成されている。そして、これらのパーツオブジェクト(部位)の位置や回転角度(方向)は、スケルトンモデルを構成する関節J0〜J15の位置や骨B0〜B19の回転角度(親の骨に対する子の骨の相対的な回転角度)により特定される。なお、これらの関節、骨は仮想的なものであり、現実に表示されるオブジェクトではない。
【0063】
本実施形態では、モデルオブジェクトMOBを構成するパーツオブジェクト(骨、関節)が親子(階層)構造を有している。例えば、手24、30の親は前腕22、28となり、前腕22、28の親は上腕20、26となる。また、上腕20、26の親は胸14となり、胸14の親は腰12となる。また、足36、42の親はすね34、40となり、すね34、40の親は股32、38となり、股32、38の親は腰12となる。
【0064】
モーションデータ記憶部には、これらのパーツオブジェクト(関節、骨)の位置及び回転角度が、モーションデータとして記憶されている。例えば、歩きモーションが、MP0、MP1、MP2・・・・MPNという基準モーション(各フレームでのモーション)により構成されているとする。するとこれらの各基準モーションMP0、MP1、MP2・・・・MPNでの各パーツオブジェクトの位置及び回転角度が、モーションデータとして予め記憶されている。そして、例えば基準モーションMP0の各パーツオブジェクトの位置及び回転角度を読み出し、次に基準モーションMP1の各パーツオブジェクトの位置及び回転角度を読み出すというように、基準モーションのモーションデータを時間経過に伴い順次読み出すことで、モーション再生が実現される。
【0065】
なお、モーションデータ記憶部に記憶するモーションデータは、一般的には、モーションキャプチャにより取得したり、デザイナが作成する。また、パーツオブジェクト(関節、骨)の位置、回転角度は、親のパーツオブジェクトの位置、回転角度に対する相対的な位置、相対的な回転角度(3軸周りの回転角度)で表される。
【0066】
また、図2においてRPはモデルオブジェクトMOBの代表点であり、このRPは例えば腰(J0)の真下の位置(高さ零の位置)に設定されている。
【0067】
そして本実施形態では、モデルオブジェクトを構成するパーツオブジェクトが地形面(ゲームフィールド面)に潜り込まないように、モデルオブジェクトのモーションを地形(建物などの人工的な地形も含む)の形状に応じて変化させている。
【0068】
例えば、図3(A)では、モデルオブジェクトMOBの左足パーツオブジェクトが地形面の下に潜り込んでいる。即ち、モーションデータは、平らな地形面の移動において矛盾が生じないようなデータになっている。従って、図3(A)に示すような坂道の地形面上でモーションデータを再生すると、モデルオブジェクトMOBの足パーツオブジェクトの一部が地形面の下に潜り込んでしまう事態が生じる。
【0069】
このような事態を解決する1つの手法として、例えば平地用のモーションと坂道用のモーションを別に用意する手法が考えられる。しかし、この手法によるとモーションデータの量が膨大になってしまい、メモリの使用記憶容量が圧迫されてしまうという問題を招く。
【0070】
そこで本実施形態では図3(B)に示すように、パーツオブジェクトが地形面の下に潜り込まないように、モデルオブジェクトMOBの形状を変形させる。より具体的には、潜り込んだ左足パーツオブジェクトが地形面に接地するように、左足・左すね・左股の位置や回転角度等を変化させる(インバース・キネマティクスの手法を用いて求める)。これにより、足が地形面に接地した矛盾の無い自然な画像を、少ないデータ量と少ない処理負荷で得ることができる。
【0071】
2.2 配置位置での地形の高さが低いパーツオブジェクトの接地
さて、本実施形態では、図3(B)に示すような矛盾の無い画像を生成するために、配置位置での地形(ゲームフィールド)の高さが低いパーツオブジェクトを先に接地し、その後に、配置位置での地形の高さが高いパーツオブジェクトが接地するように、モデルオブジェクトの形状を変形する手法を採用している。
【0072】
即ち、図4(A)に示すように現在のフレームでのモーションデータ(基準モーション)により特定される形状のモデルオブジェクトMOBを、図4(B)に示すように高さ(Y座標。高さ方向に沿った第2の軸の第2の座標)が零(所定値)になる位置に仮配置する。なお、この場合に、モデルオブジェクトMOBの位置のX、Z座標(第2の軸と直交する第1、第3の軸の第1、第3の座標)については、前のフレームでのモデルオブジェクトMOBの位置と、操作部を用いてプレーヤにより入力される操作データにより特定される。
【0073】
次に、図4(C)に示すように、モデルオブジェクトMOBを構成するパーツオブジェクト(関節)のうち、その配置位置(X、Z座標)の真下での地形の高さ(Y座標)が低いパーツオブジェクト(右足)が地形面に接地するように、モデルオブジェクトMOBの高さを変更する。即ち、そのパーツオブジェクト(右足)が地形面に接地するような高さオフセット(H1)で、モデルオブジェクトMOBを上方向に移動する。
【0074】
そして、図4(D)に示すように、このような高さの変更(上方向への移動)により地形面に接地しなくなったパーツオブジェクト(左足)が生じた場合には、そのパーツオブジェクト(左足)が地形面に接地するように、インバース・キネマティクスによりモデルオブジェクトMOBの一部(左脚)の形状を変形する。このようにすることで、図4(D)に示すように矛盾の無い自然な画像を生成できる。
【0075】
即ち図5(A)に示すように、配置位置での地形の高さ(H2)が高いパーツオブジェクト(左足)を先に接地してしまうと、配置位置での地形の高さ(H1)が低いパーツオブジェクト(右足)がインバース・キネマティクスを行っても地形面に接地しなくなってしまう事態や、モデルオブジェクトMOBの一部の形状(右脚全体)が延びきった不自然な画像が生成されてしまう事態が生じる。
【0076】
本実施形態によれば図4(C)に示すように、配置位置での地形の高さ(H1)が低いパーツオブジェクト(右足)が先に接地され、その後に、配置位置での地形の高さ(H2)が高いパーツオブジェクト(左足)が形状変形により接地される。従って図4(D)に示すように、配置位置での地形の高さ(H2)が高いパーツオブジェクト(左足)をインバース・キネマティクスにより確実に地形面に接地できるようになると共に、モデルオブジェクトMOBの一部の形状が延びきってしまう事態も防止できる。
【0077】
なお、本実施形態では、モーション処理(モーションデータ)により特定されるモデルオブジェクトMOBの形状(図4(A))において最も低い位置にあるパーツオブジェクト(右足)から所与の高さ範囲内(0〜HTH)にあるパーツオブジェクト(右足、左足)を候補パーツオブジェクトとして選択する(図4(B))。そして、選択された候補パーツオブジェクト(右足、左足)のうち、その配置位置での地形の高さが最も低い候補パーツオブジェクト(右足)が地形面に接地する高さに、モデルオブジェクトMOBを配置する(図4(C))。
【0078】
このような手法を採用すれば、例えば図5(B)に示すようにモデルオブジェクトMOBが逆立ちしたような場合(或いは寝転がった場合)にも、低い位置のパーツオブジェクト(手)を確実に地形面に接地させることができる。また、図5(C)に示すように、明らかに高い位置にあり接地すべきでないパーツオブジェクト(左足)が接地してしまうような事態を防止できる。
【0079】
即ち図5(C)では、モデルオブジェクトMOBは、左足パーツオブジェクトを接地させずに上方に蹴り上げるモーション(キックモーション)を行っている。その一方で図5(C)では、左足パーツオブジェクトの配置位置での地形の高さH2の方が、右足パーツオブジェクトの配置位置での高さH1よりも低い。従って、配置位置での地形の高さが低い方のパーツオブジェクトを単純に接地させる手法を採用してしまうと、左足パーツオブジェクトを蹴り上げるモーションを行っているのにもかかわらず、その左足パーツオブジェクトが接地してしまうという不自然な事態が生じてしまう。
【0080】
本実施形態によれば図4(B)に示すように、最も低い位置にある右足パーツオブジェクトから所与の高さ範囲内(0〜HTH)のパーツオブジェクトだけが、地形面に最初に接地させる候補パーツオブジェクトとして選択される。従って、図5(C)に示すように明らかに高い位置にあり接地されるべきではない左足パーツオブジェクトについては、候補パーツオブジェクトとして選択されないようになる。この結果、この左足パーツオブジェクトが地形面に接地してしまうような不自然な事態を防止できる。
【0081】
なお、本実施形態では図6(A)、(B)に示すように、配置位置での地形の高さが高いパーツオブジェクト(左足)を地形面に接地させる際に、インバース・キネマティクスを利用してモデルオブジェクトMOB(左脚全体)の形状を変形させている。
【0082】
より具体的には、まず、配置位置での地形の高さが高いパーツオブジェクト(関節J15、骨B19)を地形面に接地させる(上方向に移動させる)。そして、接地後の関節J15(足首)の位置と、モーションデータにより特定される関節J13(股関節)の位置と、モーションデータに含まれるポリシー・データ(骨B17、B18を含む平面を一意に特定するためのデータ)とに基づいて、関節J14(膝)の位置を求める。このようにすれば、モデルオブジェクトの形状変形後においても、骨B17、B18を含む平面の方向については変化しないようになり、より自然な形状変形を実現できる。
【0083】
なお、例えば、関節J13、14の位置や骨B17、B18の回転角度(方向)の変化が最小になるように、モデルオブジェクトを変形するインバース・キネマティクス手法を採用してもよい。
【0084】
図7(A)〜図11(B)に、本実施形態により生成されるゲーム画像の例を示す。
【0085】
図7(A)は、モデルオブジェクトMOBが平らな地形面で立っている時のゲーム画像であり、図7(B)は、MOBの右足が一段上の壇上に上がった時のゲーム画像である。また、図8(A)は、図7(B)の状態よりも更にモデルオブジェクトMOBが後退した時のゲーム画像であり、図8(B)は、MOBの両足が共に一段上の壇上に上がった時のゲーム画像である。
【0086】
また図9(A)は、モデルオブジェクトMOBの両足が平らな地形面に立っている時のゲーム画像であり、図9(B)、図10(A)は、MOBの右足、左足が地形面の高さに応じて上方に上がっている様子を示すゲーム画像である。
【0087】
また図10(B)は、モデルオブジェクトMOBが平らな地形面上に寝ている時のゲーム画像であり、図11(A)、図11(B)は、MOBの上半身部、下半身部が地形の高さに応じて上方に上がっている様子を示すゲーム画像である。
【0088】
図7(A)〜図11(B)に示すように、本実施形態によれば、地形の形状を反映させたモデルオブジェクトMOBのモーション処理を実現できるようになり、よりリアルな画像を生成できる。また、モデルオブジェクトMOBのパーツオブジェクト(足、腰等)が地形面(地面)の下に潜り込むような事態を防止でき、より自然な画像を生成できる。
【0089】
2.3 ジャンプ中の処理
さて、本実施形態では、モデルオブジェクトがジャンプ状態(広義には、攻撃を受けて飛ばされた場合なども含む空中移動状態。以下の説明でも同様)の場合に、次のような処理を行っている。
【0090】
例えば図12(A)では、平らな地形面上でモデルオブジェクトMOBがジャンプを行っており、A1の地点からジャンプを開始し、A2の地点に着地している。
【0091】
一方、図12(B)では、起伏(段差)のある地形面上でモデルオブジェクトMOBがジャンプを行っている。
【0092】
そして、図12(B)の場合にモデルオブジェクトMOBのジャンプ軌道が地形の起伏の影響を何ら受けないとすると、MOBのジャンプ軌道は図12(A)のA3に示す軌道と同じになり、A4に示すようになる。
【0093】
しかしながら、このようなA4に示す軌道では、モデルオブジェクトMOBの着地点は、地形の起伏の影響を受けて、図12(A)のA2よりも手前のA5の位置になってしまう。
【0094】
そして、この種の格闘ゲームでは、モデルオブジェクトMOBのジャンプモーションは、図12(A)のように平らな地形面でのジャンプを想定して作成されている。即ち、A1の位置でジャンプモーションを開始し、A2の地点で着地姿勢になるモーションとなっており、A1からA2までに要するモーション再生時間(フレーム数)は地形面の形状に依らず一定になる。
【0095】
従って、モデルオブジェクトMOBが図12(B)のA5の位置に着地してしまうと、MOBが着地姿勢になっていないのに地形面に着地してしまう事態が生じ、生成される画像が不自然になってしまう。
【0096】
そこで本実施形態では、モデルオブジェクトMOBがジャンプ状態(空中移動状態)である場合にも、ジャンプ(空中移動)軌道を、MOBの位置(真下の位置)での地形の高さ(MOBの代表点のX、Z座標で指定される地形面のY座標)に応じて変化させている。
【0097】
例えば、図12(B)ではA6に示すような段差を地形面が有するため、この段差の影響を受けて、ジャンプ軌道がA7に示すように変化する。即ち、地形が高くなるとジャンプの軌道も高くなり、地形が低くなるとジャンプの軌道も低くなる。これにより、モデルオブジェクトMOBは、A8の地点からジャンプを開始し、A9の地点に着地するモーションを行うことになる。従って、モデルオブジェクトMOBの着地点は、A2、A9を比較すれば明らかなように、ほぼ同じ位置になり、ジャンプに要する時間もほぼ同じになる。この結果、A9の位置に着地する際にモデルオブジェクトMOBのモーション再生が丁度終了するようになり、MOBが適正な着地姿勢で着地するようになる。
【0098】
なお本実施形態では、A6に示すように地形面の高さが急激に変化した場合にも、ジャンプの軌道はA7に示すような滑らかに変化する軌道になっている。これは、地形の高さの変化率よりも低い変化率で、モデルオブジェクトMOBのジャンプ軌道の高さを変化させることで実現できる。
【0099】
また本実施形態では図13(A)に示すように、モデルオブジェクトMOBのジャンプ(空中移動)時においては、MOBの高さを決定するための判断点を、モデルオブジェクトMOBの代表点RPに固定している。そして、この代表点RPの位置(真下の位置)での地形の高さ(RPのX、Z座標で指定される地形面のY座標)に応じて、モデルオブジェクトMOBの高さを変化させ、ジャンプ軌道を変化させている(図12(B)参照)。
【0100】
即ち、この種の格闘ゲームでは、モデルオブジェクトMOB(キャラクタ)が、図13(B)に示すように体を回転させながらジャンプするモーションを行う場合がある。このような場合に、図4(A)〜(D)のように、配置位置での地形の高さが低いパーツオブジェクト(右足)の位置をMOBの高さの判断点(地形の高さを読み出すための点)に設定してしまうと、MOBが回転するにつれて判断点が次々に変わってしまう事態が生じ、処理が煩雑化する。
【0101】
本実施形態では、図13(A)に示すように、ジャンプ状態時においてはモデルオブジェクトMOBの高さの判断点がMOBの代表点RPに固定される。従って、図13(B)に示すような回転ジャンプモーションをモデルオブジェクトMOBが行った場合にも、判断点が次々と変化する事態が生じなくなり、処理を簡素化できる。そして、この判断点である代表点RPの位置での地形の高さに応じて、図12(B)に示すようにモデルオブジェクトMOBのジャンプ軌道が変化するため、地形に起伏がある場合にもMOBが適正な着地姿勢で着地できるようになる。
【0102】
2.4 高さの変化率の制御
さて、本実施形態では、モデルオブジェクトMOBの配置高さを地形の高さに応じて変化させており、これにより地形の形状に沿ってMOBを移動させることに成功している。
【0103】
しかしながら、この場合に、地形の高さの変化率と全く同じ変化率で、モデルオブジェクトMOBの高さを変化させると、不自然な画像が生成されるおそれがある。例えば、地形が図14(A)のB1に示すような急な段差を有する場合に、この段差の高さの変化率と同じ変化率でモデルオブジェクトMOBの高さを変化させると、B2に示すようにMOBの高さも段差付近で急激に変化してしまう。従って、モデルオブジェクトMOBの移動軌跡が不自然なものになってしまう。
【0104】
そこで本実施形態では、地形の高さの変化率(1フレームでの高さの変化)よりも低い変化率で、モデルオブジェクトMOBの高さを変化させている(高さの変化を減衰させている)。これにより、図14(B)、(C)のB3やB4に示すような段差があった場合にも、B5、B6に示すようにモデルオブジェクトMOBの移動軌跡がスムーズになり、より自然な画像を生成できる。
【0105】
例えば、図14(B)のB3に示すように、地形の高さが高くなる方向に変化した場合に、モデルオブジェクトMOBの高さオフセットHOFF(仮配置されたMOBの高さ方向の移動量)は下式のように求めることができる。
【0106】
HOFF=(1ーβ)×HK+β×HL (3)
ここで、HKは前のフレームでの地形の高さであり、HLは現在のフレームでの地形の高さであり、β(0<β<1)はHKとHLのブレンド率である。このようにすれば、HLを越えない高さオフセットHOFFをモデルオブジェクトMOBの高さに加算することができ、地形の高さの変化率(HLーHK)よりも低い変化率(HOFF)で、モデルオブジェクトMOBの高さを変化させることが可能になる。
【0107】
一方、図14(C)のB4に示すように、地形の高さが低くなる方向に変化した場合には、モデルオブジェクトMOBの高さオフセットHOFFは下式のように求めることができる。
【0108】
HOFF=HK+VH(G) (4)
(但し、HOFF<HLとなるようにHOFFを制限)
ここで、VH(G)は、重力Gにより加速される高さ方向の速度であり、地形を下って行く時間(フレーム)が長くなるほど、重力Gが次々と加算され、VH(G)は増えることになる。これにより、重力GによりモデルオブジェクトMOBが加速しながら下に落ちて行く様子(例えば坂道をMOBが下って行く様子)を表現でき、生成される画像のリアル度を増すことができる。また、HOFFの上限値はHLに制限されるため、地形の高さの変化率よりも低い変化率で、モデルオブジェクトMOBの高さを変化させることも可能になる。
【0109】
2.5 腰の高さの調整
さて、この種の格闘ゲームでは、図10(B)、図11(A)、(B)に示すようにモデルオブジェクトMOBが寝た状態(倒れた状態)になる場合がある。このような場合に図4(A)〜(D)の手法で足等の位置を基準にしてモデルオブジェクトMOBの配置位置を決定しても、図15(A)のようにMOBの腰が地形面の下に潜り込んでしまう事態が生じる可能性がある。
【0110】
そこで本実施形態では、図15(A)のような事態の場合に、モデルオブジェクトMOBの高さ(高さオフセット)を高くする手法を採用している。即ち、地形の高さに基づき得られた高さにモデルオブジェクトMOBを配置した時に図15(B)のようにMOBの腰パーツオブジェクトが地形面に潜り込んでいる場合には、図15(B)に示すように、腰パーツオブジェクト(腰の関節)が地形面に接地するようにMOBの高さを高くする。これにより、腰パーツオブジェクトが地形面の下に潜り込む事態を防止できる。
【0111】
また、この場合に、モデルオブジェクトの全体の高さを単純に高くしただけでは、図15(B)に示すように、手、足、頭の位置もそれに応じて高くなってしまい、手、足、頭が浮いた状態に見えてしまう。
【0112】
そこで本実施形態では、腰パーツオブジェクト以外のパーツオブジェクト(手、足、頭等)の高さが、腰パーツオブジェクトの高さよりも低くなるように、モデルオブジェクトMOBの形状を変形する手法を更に採用している。即ち、図15(C)に示すように、MOBの形状を「く」の字になるように変形する。これにより、手、足、頭等のパーツオブジェクトが地形面に接地するようになる。
【0113】
以上のようにすることで、図11(A)、(B)に示すように、モデルオブジェクトMOBの腰が地形面の下に潜り込むのを防止できると共に、寝た状態のMOBの形状が地形面の形状に適合するように変形するようになるため、より自然でリアルな画像を生成できる。
【0114】
3.本実施形態の処理
次に、本実施形態の処理の詳細例について、図16、図17のフローチャートを用いて説明する。
【0115】
まず、モーションデータにより特定される形状のモデルオブジェクトを、高さが零の位置に仮配置し、ワールド座標系での各パーツオブジェクト(骨、関節)の位置(及び方向)を求める(ステップS1。図4(A)参照)。即ち、前のフレームでのモデルオブジェクトの位置とプレーヤが入力した操作データとに基づいて、現在のフレームでのモデルオブジェクト(代表点)のワールド座標系でのX、Z座標XL、ZLを求め、位置(XL、0、ZL)にモデルオブジェクト(代表点)を仮配置する。そして、この仮配置位置とモーションデータに基づいて、各パーツオブジェクトのワールド座標系での位置を求める。
【0116】
次に、モデルオブジェクトがジャンプ(空中移動)中か否かを判断する(ステップS2)。そして、ジャンプ中の場合には、モデルオブジェクトの代表点(腰の真下)を、モデルオブジェクトの高さの判断点(重心)に設定する(ステップS3。図13(A)参照)。
【0117】
一方、ジャンプ中ではない場合には、パーツオブジェクトを位置(Y座標)が低い順に並び替えたリストを作成する(ステップS4)。そして、そのリスト中において、最も低い位置のパーツオブジェクトを第1候補に設定し、そのパーツオブジェクトの位置(真下)での地形の高さを求めておく(ステップS5。図4(B)参照)。
【0118】
次に、リスト中の次のパーツオブジェクトを調べる(ステップS6)。そして、そのパーツオブジェクトの高さと、最も低いパーツオブジェクトの高さとの差が、HTH以上か否かを判断する(ステップS7。図4(B)参照)。そして、HTH以上の場合には、現在の第1候補のパーツオブジェクト(関節)の位置を、モデルオブジェクトの高さの判断点に設定する(ステップS8)。一方、HTHよりも小さい場合には、調査中のパーツオブジェクトの位置(真下)での地形の高さが、現在の第1候補のパーツオブジェクトの位置での地形の高さよりも低いか否かを判断する(ステップS9)。そして、低い場合には、調査中のパーツオブジェクトを第1候補に設定して(ステップS10)、ステップS6に戻る。一方、高い場合には、現在の第1候補を変えずに、ステップS6に戻る。
【0119】
ステップS3、ステップS8で判断点を設定した後、現在のフレームが初期化(ゲーム開始)直後か否かを判断する(ステップS11)。そして、初期化直後である場合には、ステップS3、S8で設定された判断点の位置(真下)での地形の高さを、そのままモデルオブジェクトの高さオフセットに設定する(ステップS12)。
【0120】
一方、初期化直後でない場合には、現在のフレームにおける判断点での地形の高さ(高さオフセット)が、前のフレームでの高さよりも大きいか否かを判断する(ステップS13)。そして、大きい場合には、その変化率が低くなるように高さオフセットを補正する(ステップS14。図14(B)参照)。一方、小さい場合には、重力による加速度を加味しながら、その変化率が低くなるように高さオフセットを補正する(ステップS15。図14(C)参照)。
【0121】
次に、決定した高さオフセットでモデルオブジェクトを配置した場合に、腰パーツオブジェクトが地形面の下に潜り込むか否かを判断する(ステップS16。図15(A)参照)。そして、潜り込んでいる場合には、腰パーツオブジェクトが潜り込んだ分の高さを、高さオフセットに加算する(ステップS17。図15(B)参照)。そして、モデルオブジェクトを腰を中心に「く」の字に変形させる(ステップS18。図15(C)参照)。
【0122】
次に、決定した高さオフセットでモデルオブジェクトを配置する(ステップS19)。そして、首、頭、手、足のパーツオブジェクトが地形面の下に潜り込んでいた場合には、これらのパーツオブジェクトが地形面に接地するように、首、頭、手、足の順でインバース・キネマティクスを用いて上に押し上げる(ステップS20。図4(D)参照)。即ち、まず、首が潜り込んでいるかを判断し、潜り込んでいる場合には首を押し上げ、次に、頭が潜り込んでいるかを判断し、潜り込んでいる場合は頭を押し上げる。次に、手が潜り込んでいるかを判断し、潜り込んでいる場合には手を押し上げ、次に、足が潜り込んでいるかを判断し、潜り込んでいる場合は足を押し上げる。
【0123】
以上のようにすることで、モデルオブジェクトのモーションの形状を、地形の形状に適合するように変形させることが可能となり、より自然でリアルな画像を生成できる。
【0124】
4.ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図18を用いて説明する。
【0125】
メインプロセッサ900は、CD982(情報記憶媒体)に格納されたプログラム、通信インターフェース990を介して転送されたプログラム、或いはROM950(情報記憶媒体の1つ)に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
【0126】
コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、オブジェクトを移動させたり動作(モーション)させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。
【0127】
ジオメトリプロセッサ904は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ900で動作するプログラムが、その処理をジオメトリプロセッサ904に指示する。
【0128】
データ伸張プロセッサ906は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ900のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、MPEG方式等で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ROM950、CD982に格納されたり、或いは通信インターフェース990を介して外部から転送される。
【0129】
描画プロセッサ910は、ポリゴンや曲面などのプリミティブ(プリミティブ面)で構成されるオブジェクトの描画(レンダリング)処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970の機能を利用して、オブジェクトデータを描画プロセッサ910に渡すと共に、必要であればテクスチャ記憶部924にテクスチャを転送する。すると、描画プロセッサ910は、これらのオブジェクトデータやテクスチャに基づいて、Zバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ922に高速に描画する。また、描画プロセッサ910は、αブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、1フレーム分の画像がフレームバッファ922に書き込まれると、その画像はディスプレイ912に表示される。
【0130】
サウンドプロセッサ930は、多チャンネルのADPCM音源などを内蔵し、BGM、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ932から出力される。
【0131】
ゲームコントローラ942(レバー、ボタン、筺体、パッド型コントローラ又はガン型コントローラ等)からの操作データや、メモリカード944からのセーブデータ、個人データは、シリアルインターフェース940を介してデータ転送される。
【0132】
ROM950にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納されることになる。なお、ROM950の代わりにハードディスクを利用するようにしてもよい。
【0133】
RAM960は、各種プロセッサの作業領域として用いられる。
【0134】
DMAコントローラ970は、プロセッサ、メモリ(RAM、VRAM、ROM等)間でのDMA転送を制御するものである。
【0135】
CDドライブ980は、プログラム、画像データ、或いは音データなどが格納されるCD982(情報記憶媒体)を駆動し、これらのプログラム、データへのアクセスを可能にする。
【0136】
通信インターフェース990は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース990に接続されるネットワークとしては、通信回線(アナログ電話回線、ISDN)、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他の画像生成システムとの間でのデータ転送が可能になる。
【0137】
なお、本発明の各手段は、その全てを、ハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【0138】
そして、本発明の各手段をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア(コンピュータ)を本発明の各手段として機能させるためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930等は、その指示と渡されたデータとに基づいて、本発明の各手段を実現することになる。
【0139】
図19(A)に、本実施形態を業務用ゲームシステム(画像生成システム)に適用した場合の例を示す。プレーヤは、ディスプレイ1100上に映し出されたゲーム画像を見ながら、コントローラ1102などを操作してゲームを楽しむ。内蔵されるシステムボード(サーキットボード)1106には、各種プロセッサ、各種メモリなどが実装される。そして、本発明の各手段を実現するためのプログラム(データ)は、システムボード1106上の情報記憶媒体であるメモリ1108に格納される。以下、このプログラムを格納プログラム(格納情報)と呼ぶ。
【0140】
図19(B)に、本実施形態を家庭用のゲームシステム(画像生成システム)に適用した場合の例を示す。プレーヤはディスプレイ1200に映し出されたゲーム画像を見ながら、コントローラ1202、1204などを操作してゲームを楽しむ。この場合、上記格納プログラム(格納情報)は、本体システムに着脱自在な情報記憶媒体であるCD1206、或いはメモリカード1208、1209などに格納されている。
【0141】
図19(C)に、ホスト装置1300と、このホスト装置1300とネットワーク1302(LANのような小規模ネットワークや、インターネットのような広域ネットワーク)を介して接続される端末1304-1〜1304-n(ゲーム機、携帯電話)とを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納プログラム(格納情報)は、例えばホスト装置1300が制御可能な磁気ディスク装置、磁気テープ装置、メモリなどの情報記憶媒体1306に格納されている。端末1304-1〜1304-nが、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置1300からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末1304-1〜1304-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置1300がゲーム画像、ゲーム音を生成し、これを端末1304-1〜1304-nに伝送し端末において出力することになる。
【0142】
なお、図19(C)の構成の場合に、本発明の各手段を、ホスト装置(サーバー)と端末とで分散して実現するようにしてもよい。また、本発明の各手段を実現するための上記格納プログラム(格納情報)を、ホスト装置(サーバー)の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。
【0143】
またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。そして、業務用ゲームシステムをネットワークに接続する場合には、業務用ゲームシステムとの間で情報のやり取りが可能であると共に家庭用ゲームシステムとの間でも情報のやり取りが可能なセーブ用情報記憶装置(メモリカード、携帯型ゲーム装置)を用いることが望ましい。
【0144】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【0145】
例えば、モデルオブジェクトの形状を変形する手法は、本実施形態で説明した手法に限定されず、公知のインバース・キネマティクス等を利用した種々の手法を採用できる。
【0146】
また、モデルオブジェクトの配置高さを地形の高さに応じて変化させる手法も、本実施形態で説明した手法に限定されず、種々の変形実施が可能である。
【0147】
また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【0148】
また、本発明は種々のゲーム(格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等)に適用できる。
【0149】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々の画像生成システム(ゲームシステム)に適用できる。
【図面の簡単な説明】
【図1】本実施形態の画像生成システムの機能ブロック図の例である。
【図2】複数のパーツオブジェクトで構成されるモデルオブジェクトの例を示す図である。
【図3】図3(A)、(B)は、モデルオブジェクトの形状を、起伏を有する地形の形状に応じて変化させる手法について説明するための図である。
【図4】図4(A)、(B)、(C)、(D)は、配置位置での地形の高さが低いパーツオブジェクトが地形面に接地するようにモデルオブジェクトの高さを変化させ、配置位置での地形の高さが高いパーツオブジェクトが地形面に接地するようにモデルオブジェクトの形状を変形させる手法について説明するための図である。
【図5】図5(A)、(B)、(C)は、図4(A)、(B)、(C)、(D)と異なる手法を用いた場合の問題点等を説明するための図である。
【図6】図6(A)、(B)は、インバース・キネマティクスについて説明するための図である。
【図7】図7(A)、(B)は、本実施形態により生成されるゲーム画像の例である。
【図8】図8(A)、(B)も、本実施形態により生成されるゲーム画像の例である。
【図9】図9(A)、(B)も、本実施形態により生成されるゲーム画像の例である。
【図10】図10(A)、(B)も、本実施形態により生成されるゲーム画像の例である。
【図11】図11(A)、(B)も、本実施形態により生成されるゲーム画像の例である。
【図12】図12(A)、(B)は、モデルオブジェクトがジャンプ状態の場合の本実施形態の処理について説明するための図である。
【図13】図13(A)、(B)も、モデルオブジェクトがジャンプ状態の場合の本実施形態の処理について説明するための図である。
【図14】図14(A)、(B)、(C)は、モデルオブジェクトの高さの変化率を地形の高さの変化率よりも低くする手法について説明するための図である。
【図15】図15(A)、(B)、(C)は、モデルオブジェクトの腰パーツオブジェクトが地形面の下に潜り込むのを防止する手法について説明するための図である。
【図16】本実施形態の処理の詳細例について示すフローチャートである。
【図17】本実施形態の処理の詳細例について示すフローチャートである。
【図18】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図19】図19(A)、(B)、(C)は、本実施形態が適用される種々の形態のシステムの例を示す図である。
【符号の説明】
MOB モデルオブジェクト
100 処理部
110 移動処理部
112 モーション処理部
114 モーション変形部
120 画像生成部
130 音生成部
160 操作部
170 記憶部
172 主記憶部
174 描画バッファ
176 モーションデータ記憶部
178 地形データ記憶部
180 情報記憶媒体
190 表示部
192 音出力部
194 携帯型情報記憶装置
196 通信部

Claims (13)

  1. 画像生成を行う画像生成システムであって、
    モデルオブジェクトにモーションを行わせるモーション処理を行う手段と、
    モデルオブジェクトを構成するパーツオブジェクトが地形面に潜り込まないように、モーション処理により特定されるモデルオブジェクトの形状を、起伏を有する地形の形状に応じて変形させる手段と、
    オブジェクト空間内の所与の視点での画像を生成する手段とを含み、
    モーション処理により特定されるモデルオブジェクトの形状において最も低い位置にあるパーツオブジェクトから所与の高さ範囲内にあるパーツオブジェクトを候補パーツオブジェクトとして選択し、選択された候補パーツオブジェクトのうち、その配置位置での地形の高さが最も低い候補パーツオブジェクトが地形面に接地する高さに、モデルオブジェクトを配置し、該配置により他のパーツオブジェクトが地形面に潜り込んだ場合に、該他のパーツオブジェクトが地形面に接地するようにモデルオブジェクトの形状を変形させることを特徴とする画像生成システム。
  2. 請求項において、
    モデルオブジェクトを配置する高さを、地形の高さに応じて変化させると共に、
    モデルオブジェクトが空中移動状態である場合にも、空中移動の軌道を、モデルオブジェクトの位置での地形の高さに応じて変化させることを特徴とする画像生成システム。
  3. 請求項1又は2において、
    モデルオブジェクトを配置する高さを、地形の高さに応じて変化させると共に、
    モデルオブジェクトが、そのパーツオブジェクトを地形面に接地させながら移動する通常移動状態である場合には、パーツオブジェクトの配置位置での地形の高さに応じて、モデルオブジェクトの高さを変化させ、
    モデルオブジェクトが空中移動状態である場合には、モデルオブジェクトの高さを決定するための判断点をモデルオブジェクトの代表点に固定し、該代表点の位置での地形の高さに応じて、モデルオブジェクトの高さを変化させることを特徴とする画像生成システム
  4. 請求項1乃至のいずれかにおいて、
    モデルオブジェクトを配置する高さを、地形の高さに応じて変化させると共に、
    地形の高さの変化率よりも低い変化率で、モデルオブジェクトの高さを変化させることを特徴とする画像生成システム。
  5. 請求項1乃至のいずれかにおいて、
    モデルオブジェクトが、ゲームに登場するキャラクタであり、
    モデルオブジェクトを配置する高さを、地形の高さに応じて変化させると共に、
    地形の高さに基づき得られた高さにモデルオブジェクトを配置した時にモデルオブジェクトの腰パーツオブジェクトが地形面に潜り込んでいる場合には、腰パーツオブジェクトが地形面に接地するように、モデルオブジェクトの高さを高くすることを特徴とする画像生成システム。
  6. 請求項において、
    腰パーツオブジェクト以外のパーツオブジェクトの高さが、腰パーツオブジェクトの高さよりも低くなるように、モデルオブジェクトの形状を変形することを特徴とする画像生成システム。
  7. モデルオブジェクトにモーションを行わせるモーション処理を行う手段と、
    モデルオブジェクトを構成するパーツオブジェクトが地形面に潜り込まないように、モーション処理により特定されるモデルオブジェクトの形状を、起伏を有する地形の形状に応じて変形させる手段と、
    オブジェクト空間内の所与の視点での画像を生成する手段として、
    コンピュータを機能させるプログラムであって、
    モーション処理により特定されるモデルオブジェクトの形状において最も低い位置にあるパーツオブジェクトから所与の高さ範囲内にあるパーツオブジェクトを候補パーツオブジェクトとして選択し、選択された候補パーツオブジェクトのうち、その配置位置での地形の高さが最も低い候補パーツオブジェクトが地形面に接地する高さに、モデルオブジェクトを配置し、該配置により他のパーツオブジェクトが地形面に潜り込んだ場合に、該他のパーツオブジェクトが地形面に接地するようにモデルオブジェクトの形状を変形させることを特徴とするプログラム。
  8. 請求項において、
    モデルオブジェクトを配置する高さを、地形の高さに応じて変化させると共に、
    モデルオブジェクトが空中移動状態である場合にも、空中移動の軌道を、モデルオブジェクトの位置での地形の高さに応じて変化させることを特徴とするプログラム。
  9. 請求項7又は8において、
    モデルオブジェクトを配置する高さを、地形の高さに応じて変化させると共に、
    モデルオブジェクトが、そのパーツオブジェクトを地形面に接地させながら移動する通常移動状態である場合には、パーツオブジェクトの配置位置での地形の高さに応じて、モデルオブジェクトの高さを変化させ、
    モデルオブジェクトが空中移動状態である場合には、モデルオブジェクトの高さを決定するための判断点をモデルオブジェクトの代表点に固定し、該代表点の位置での地形の高さに応じて、モデルオブジェクトの高さを変化させることを特徴とするプログラム。
  10. 請求項乃至のいずれかにおいて、
    モデルオブジェクトを配置する高さを、地形の高さに応じて変化させると共に、
    地形の高さの変化率よりも低い変化率で、モデルオブジェクトの高さを変化させることを特徴とするプログラム。
  11. 請求項乃至10のいずれかにおいて、
    モデルオブジェクトが、ゲームに登場するキャラクタであり、
    モデルオブジェクトを配置する高さを、地形の高さに応じて変化させると共に、
    地形の高さに基づき得られた高さにモデルオブジェクトを配置した時にモデルオブジェクトの腰パーツオブジェクトが地形面に潜り込んでいる場合には、腰パーツオブジェクトが地形面に接地するように、モデルオブジェクトの高さを高くすることを特徴とするプログラム。
  12. 請求項11において、
    腰パーツオブジェクト以外のパーツオブジェクトの高さが、腰パーツオブジェクトの高さよりも低くなるように、モデルオブジェクトの形状を変形することを特徴とするプログラム。
  13. コンピュータ読み取り可能な情報記憶媒体であって、請求項乃至12のいずれかのプログラムを記憶したことを特徴とする情報記憶媒体。
JP2001229466A 2001-07-30 2001-07-30 画像生成システム、プログラム及び情報記憶媒体 Expired - Fee Related JP4704622B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001229466A JP4704622B2 (ja) 2001-07-30 2001-07-30 画像生成システム、プログラム及び情報記憶媒体
US10/206,038 US7088366B2 (en) 2001-07-30 2002-07-29 Image generation method, program, and information storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001229466A JP4704622B2 (ja) 2001-07-30 2001-07-30 画像生成システム、プログラム及び情報記憶媒体

Publications (2)

Publication Number Publication Date
JP2003044878A JP2003044878A (ja) 2003-02-14
JP4704622B2 true JP4704622B2 (ja) 2011-06-15

Family

ID=19061811

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001229466A Expired - Fee Related JP4704622B2 (ja) 2001-07-30 2001-07-30 画像生成システム、プログラム及び情報記憶媒体

Country Status (2)

Country Link
US (1) US7088366B2 (ja)
JP (1) JP4704622B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106292423A (zh) * 2016-08-09 2017-01-04 北京光年无限科技有限公司 针对人形机器人的音乐数据处理方法及装置

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7107081B1 (en) 2001-10-18 2006-09-12 Iwao Fujisaki Communication device
US7466992B1 (en) 2001-10-18 2008-12-16 Iwao Fujisaki Communication device
JP3686920B2 (ja) * 2002-05-21 2005-08-24 コナミ株式会社 3次元画像処理プログラム、3次元画像処理方法及びビデオゲーム装置
US8090402B1 (en) 2003-09-26 2012-01-03 Iwao Fujisaki Communication device
US7917167B1 (en) 2003-11-22 2011-03-29 Iwao Fujisaki Communication device
JP2005312758A (ja) * 2004-04-30 2005-11-10 Nintendo Co Ltd ゲームシステムおよびゲームプログラム
US7545378B2 (en) * 2004-05-17 2009-06-09 Pixar Foot roll rigging
JP4580742B2 (ja) * 2004-11-30 2010-11-17 任天堂株式会社 ゲームプログラムおよびゲーム装置
US8208954B1 (en) 2005-04-08 2012-06-26 Iwao Fujisaki Communication device
US8676273B1 (en) 2007-08-24 2014-03-18 Iwao Fujisaki Communication device
US8340726B1 (en) 2008-06-30 2012-12-25 Iwao Fujisaki Communication device
US20100302253A1 (en) * 2009-05-29 2010-12-02 Microsoft Corporation Real time retargeting of skeletal data to game avatar
JP5088972B2 (ja) 2010-06-11 2012-12-05 株式会社ソニー・コンピュータエンタテインメント 画像処理装置、画像処理方法、コンピュータプログラム、記録媒体、及び半導体装置
JP6662006B2 (ja) * 2015-12-03 2020-03-11 株式会社三洋物産 遊技機
JP6732463B2 (ja) * 2016-02-05 2020-07-29 株式会社バンダイナムコエンターテインメント 画像生成システム及びプログラム
JP6267295B1 (ja) * 2016-08-18 2018-01-24 株式会社カプコン ゲームプログラムおよびゲームシステム
JP6310517B2 (ja) * 2016-08-18 2018-04-11 株式会社カプコン ゲームプログラムおよびゲームシステム
JP6302967B2 (ja) * 2016-08-18 2018-03-28 株式会社カプコン ゲームプログラムおよびゲームシステム
JP6329616B1 (ja) * 2016-11-28 2018-05-23 株式会社スクウェア・エニックス プログラム、コンピュータ装置、及び、判定方法
JP7020926B2 (ja) * 2018-01-09 2022-02-16 株式会社コーエーテクモゲームス プログラム、画像処理方法、及び画像処理装置
CN108245893B (zh) 2018-02-09 2021-06-29 腾讯科技(深圳)有限公司 三维虚拟环境中虚拟对象的姿态确定方法、装置及介质
CN110193198B (zh) * 2019-05-23 2023-02-10 腾讯科技(深圳)有限公司 对象跳跃控制方法、装置、计算机设备及存储介质
CN111068318B (zh) * 2019-12-26 2024-05-07 珠海金山数字网络科技有限公司 一种角色斜坡旋转方法及装置
US11478707B2 (en) 2020-01-30 2022-10-25 Square Enix Ltd. Gap jumping simulation of stretchable character in computer game
US11052317B1 (en) * 2020-06-29 2021-07-06 Square Enix Ltd. Performing simulation of stretchable character in computer game
JP2020073136A (ja) * 2020-02-12 2020-05-14 株式会社三洋物産 遊技機
CN112215968A (zh) * 2020-10-29 2021-01-12 网易(杭州)网络有限公司 模型贴地处理方法、装置、存储介质与电子设备
CN112200893B (zh) * 2020-12-10 2021-03-02 成都完美时空网络技术有限公司 虚拟物品的动画生成方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06213595A (ja) * 1993-01-20 1994-08-02 Namco Ltd シューティング型ゲーム装置
JPH06251122A (ja) * 1993-03-01 1994-09-09 Nippon Telegr & Teleph Corp <Ntt> 歩行動作生成処理方法
JPH09330424A (ja) * 1996-06-07 1997-12-22 Matsushita Electric Ind Co Ltd 3次元骨格構造の動き変換装置
JPH1031411A (ja) * 1996-07-16 1998-02-03 Namco Ltd 3次元シミュレータ装置及び情報記憶媒体
JPH11250284A (ja) * 1998-02-26 1999-09-17 Dainippon Printing Co Ltd 人物cg制作方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2978397A (en) * 1996-06-05 1998-01-05 Sega Enterprises, Ltd. Image processor for games

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06213595A (ja) * 1993-01-20 1994-08-02 Namco Ltd シューティング型ゲーム装置
JPH06251122A (ja) * 1993-03-01 1994-09-09 Nippon Telegr & Teleph Corp <Ntt> 歩行動作生成処理方法
JPH09330424A (ja) * 1996-06-07 1997-12-22 Matsushita Electric Ind Co Ltd 3次元骨格構造の動き変換装置
JPH1031411A (ja) * 1996-07-16 1998-02-03 Namco Ltd 3次元シミュレータ装置及び情報記憶媒体
JPH11250284A (ja) * 1998-02-26 1999-09-17 Dainippon Printing Co Ltd 人物cg制作方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106292423A (zh) * 2016-08-09 2017-01-04 北京光年无限科技有限公司 针对人形机器人的音乐数据处理方法及装置

Also Published As

Publication number Publication date
JP2003044878A (ja) 2003-02-14
US20030022715A1 (en) 2003-01-30
US7088366B2 (en) 2006-08-08

Similar Documents

Publication Publication Date Title
JP4704622B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4775989B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP3990252B2 (ja) ゲームシステム、プログラム及び情報記憶媒体
JP4187182B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
US7094153B2 (en) Virtual space control method
GB2356785A (en) Motion correction of on-screen targets in shooting game
JP2003067779A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP3707995B2 (ja) ゲームシステム及び情報記憶媒体
JP4758499B2 (ja) 画像生成システム及び情報記憶媒体
JP3249955B2 (ja) 画像生成システム及び情報記憶媒体
JP2004341572A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2001006000A (ja) 画像生成システム及び情報記憶媒体
JP2007105499A (ja) ゲームシステム、プログラム及び情報記憶媒体
JP4167358B2 (ja) 画像生成システム及び情報記憶媒体
US7148894B1 (en) Image generation system and program
JP4656622B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4367804B2 (ja) 画像生成システム及び情報記憶媒体
JP3583995B2 (ja) エンタテインメント装置、記憶媒体およびオブジェクト表示方法
JP4497690B2 (ja) ゲームシステム及び情報記憶媒体
JP2003051030A (ja) 動画像生成プログラム、動画像生成方法及び装置
JP4544555B2 (ja) ゲームシステム及び情報記憶媒体
JP4233065B2 (ja) ゲーム装置及び情報記憶媒体
JP3254195B2 (ja) 画像生成システム及び情報記憶媒体
JP4412692B2 (ja) ゲームシステム及び情報記憶媒体
JP3420987B2 (ja) ゲームシステム及び情報記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080605

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100906

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100922

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110214

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110310

R150 Certificate of patent or registration of utility model

Ref document number: 4704622

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

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

LAPS Cancellation because of no payment of annual fees