(57)【要約】【課題】  初級者にも比較的簡単にゲージ量を蓄積することができるゲームシステムおよびゲームプログラムを提供する。【解決手段】  ゲームシステムは、プレイヤによる操作に応じてプレイヤキャラクタに仮想ゲーム空間を移動させる。さらに、プレイヤキャラクタの所定の単位時間当たりにおける移動量を所定時間毎に検出する。所定時間毎に検出される移動量に基づいて所定のパラメータ（ゲージ量）の値が所定時間毎に算出される。また、ゲームシステムは、所定時間毎に算出される所定のパラメータの値を累積して加算する。ゲームシステムは、プレイヤによって所定の操作がなされたことに応じて、加算結果の値が所定値に達していることを条件として、プレイヤキャラクタに所定の動作（必殺技ショット等）を行わせる。【選択図】  図６
2005342492.tif 000002
【特許請求の範囲】
【請求項１】
仮想ゲーム空間においてプレイヤキャラクタが対戦相手のキャラクタとの間で被打撃オブジェクトを打ち合ってラリーを行うスポーツゲームを実行するゲームシステムであって、
プレイヤによる操作に応じてプレイヤキャラクタに仮想ゲーム空間を移動させる移動制御手段と、
前記プレイヤキャラクタの所定の単位時間当たりにおける移動量を所定時間毎に検出する移動量検出手段と、
前記移動量検出手段によって所定時間毎に検出される移動量に基づいて所定のパラメータの値を所定時間毎に算出するパラメータ算出手段と、
前記パラメータ算出手段によって所定時間毎に算出される所定のパラメータの値を累積して加算する加算手段と、
前記プレイヤによって所定の操作がなされたことに応じて、前記加算手段による加算結果の値が所定値に達していることを条件として、前記プレイヤキャラクタに所定の動作を行わせる動作制御手段とを備える、ゲームシステム。
【請求項２】
前記プレイヤキャラクタの得点および前記対戦相手のキャラクタの得点を算出する得点算出手段と、
前記プレイヤキャラクタの得点と前記対戦相手キャラクタの得点との差を算出する得点差算出手段と、
前記パラメータ算出手段によって算出された所定のパラメータの値を、前記得点差算出手段によって算出された得点差に基づいて補正する第１補正手段とをさらに備え、
前記加算手段は、前記第１補正手段によって補正された後の所定のパラメータの値をそれまでの加算結果に加算する、請求項１に記載のゲームシステム。
【請求項３】
前記補正手段は、前記プレイヤキャラクタの得点から前記対戦相手のキャラクタの得点を減算した値が大きいほど、前記所定のパラメータが小さくなるように補正する、請求項２に記載のゲームシステム。
【請求項４】
ラリー中であるか否かを所定時間毎に判定するラリー判定手段をさらに備え、
前記移動量検出手段は、前記ラリー判定手段によってラリー中と判定される場合にのみ移動量を検出する、請求項１に記載のゲームシステム。
【請求項５】
仮想ゲーム空間においてプレイヤキャラクタが対戦相手のキャラクタとの間で被打撃オブジェクトを打ち合ってラリーを行うスポーツゲームを実行するゲームシステムであって、
前記プレイヤキャラクタに打撃動作を行わせる操作がプレイヤによってなされたとき、当該打撃動作を即座に実行するかそれとも待機するかを前記プレイヤキャラクタと前記打撃オブジェクトとの位置関係に基づいて判断する待機判断手段と、
前記待機判断手段によって打撃動作を待機すると判断されたとき、前記打撃動作の待機時間を測定する待機時間測定手段と、
前記待機判断手段によって打撃動作を実行すると判断されたとき、前記待機時間測定手段によって測定された待機時間の長さに応じた強さの打撃動作を前記プレイヤキャラクタに行わせる打撃実行手段と、
前記待機時間測定手段によって測定された待機時間が短いほど値が大きくなるように、当該待機時間に基づいて所定のパラメータの値を算出するパラメータ算出手段と、
前記パラメータ算出手段によって算出される所定のパラメータの値を累積して加算する加算手段と、
前記プレイヤによって所定の操作がなされたことに応じて、前記加算手段による加算結果の値が所定値に達していることを条件として、前記プレイヤキャラクタに前記所定の動作を行わせる動作制御手段とを備える、ゲームシステム。
【請求項６】
前記加算手段による加算結果の値を示すゲージを、前記プレイヤキャラクタを基準として決定される位置に表示するゲージ量表示手段をさらに備える、請求項１または５に記載のゲームシステム。
【請求項７】
複数種類のプレイヤキャラクタの中からいずれか１つのプレイヤキャラクタを選択するキャラクタ選択手段と、
前記パラメータ算出手段によって算出された所定のパラメータの値を、前記キャラクタ選択手段によって選択されたプレイヤキャラクタの種類に応じて予め定められた補正量で補正する第２補正手段とをさらに備える、請求項１または５に記載のゲームシステム。
【請求項８】
仮想ゲーム空間においてプレイヤキャラクタが対戦相手のキャラクタとの間で被打撃オブジェクトを打ち合ってラリーを行うスポーツゲームを実行するゲームシステムのコンピュータを、
プレイヤによる操作に応じてプレイヤキャラクタに仮想ゲーム空間を移動させる移動制御手段と、
前記プレイヤキャラクタの所定の単位時間当たりにおける移動量を所定時間毎に検出する移動量検出手段と、
前記移動量検出手段によって所定時間毎に検出される移動量に基づいて所定のパラメータの値を所定時間毎に算出するパラメータ算出手段と、
前記パラメータ算出手段によって所定時間毎に算出される所定のパラメータの値を累積して加算する加算手段と、
前記プレイヤによって所定の操作がなされたことに応じて、前記加算手段による加算結果の値が所定値に達していることを条件として、前記プレイヤキャラクタに所定の動作を行わせる動作制御手段として機能させるためのゲームプログラム。
【請求項９】
仮想ゲーム空間においてプレイヤキャラクタが対戦相手のキャラクタとの間で被打撃オブジェクトを打ち合ってラリーを行うスポーツゲームを実行するゲームシステムのコンピュータを、
前記プレイヤキャラクタに打撃動作を行わせる操作がプレイヤによってなされたとき、当該打撃動作を即座に実行するかそれとも待機するかを前記プレイヤキャラクタと前記打撃オブジェクトとの位置関係に基づいて判断する待機判断手段と、
前記待機判断手段によって打撃動作を待機すると判断されたとき、前記打撃動作の待機時間を測定する待機時間測定手段と、
前記待機判断手段によって打撃動作を実行すると判断されたとき、前記待機時間測定手段によって測定された待機時間の長さに応じた強さの打撃動作を前記プレイヤキャラクタに行わせる打撃実行手段と、
前記待機時間測定手段によって測定された待機時間が短いほど値が大きくなるように、当該待機時間に基づいて所定のパラメータの値を算出するパラメータ算出手段と、
前記パラメータ算出手段によって算出される所定のパラメータの値を累積して加算する加算手段と、
前記プレイヤによって所定の操作がなされたことに応じて、前記加算手段による加算結果の値が所定値に達していることを条件として、前記プレイヤキャラクタに前記所定の動作を行わせる動作制御手段として機能させるためのゲームプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲームシステムおよびゲームプログラムに関し、より特定的には、仮想ゲーム空間においてプレイヤキャラクタが対戦相手のキャラクタとの間でボール等の被打撃オブジェクトを打ち合うスポーツゲームを実行するゲームシステムおよびゲームプログラムに関する。
【背景技術】
【０００２】
従来、スポーツゲーム等においてプレイヤキャラクタの状態を示すゲージを設定し、ゲージ量に応じて特殊な技をプレイヤキャラクタに行わせるゲームが考えられている（例えば、特許文献１参照。）。特許文献１のテニスゲームでは、選手の精神的または肉体的な状態をゲージで表し、選手の状態の向上や悪化に応じてゲージ量を上下させる。そして、ゲージ量が必要な分だけ貯まれば、通常のショットよりも強力な必殺技をプレイヤキャラクタに行わせることができる。特許文献１では、テニスプレイヤ（プレイヤキャラクタ）の精神状態および体力状態が充実していれば強力なショットを打てることになり、プレイヤは、実際のスポーツ特有のスリル感や醍醐味を味わうことができるものである。
【０００３】
また、ゲージを用いた従来のゲームの例としては、特許文献２や特許文献３等がある。特許文献２はテニスゲームであり、キャラクタのショット動作に応じた形状のゲージが表示される。このゲージは、その形状によってキャラクタのショット動作を確認するためのものである。また、特許文献３は野球ゲームであり、プレイヤのボタン押下操作によってボールを捕球した場合に、ボタン押下時からの時間経過に従ってゲージ量が増加する。ゲージには複数のラインが表示されており、ゲーム装置は、プレイヤがボタンの押下を解除した時点でゲージ量がどのラインを超えているかによってボールの送球先や送球状態を制御する。このゲージは、プレイヤによるボタンの押下時間をわかりやすく表示するためのものである。なお、特許文献２および３に示したゲームでは、プレイヤの操作を視覚的にわかりやすく表示するためにゲージが用いられており、当該ゲージは、プレイヤキャラクタに特殊なアクション（上記必殺技）を行わせるための指標として用いられるものではない。
【特許文献１】特開２００３−１７５２８２号公報
【特許文献２】特開２００３−２０５１７１号公報
【特許文献３】特開２００３−２６５８５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記特許文献１のゲームでは、プレイヤキャラクタ毎に予め定められた条件を満たすことによってゲージ量が蓄積される。これらの条件は、例えばあるプレイヤキャラクタについては特定のショットでポイントを得たこと等であり、各プレイヤキャラクタの個性を表すものではあるが、プレイヤのゲームの習熟度とは無関係であった。したがって、これらの条件を熟知した上級者であれば、ゲージ量をどんどん貯めることができ、必殺技を比較的頻繁に出すことができる一方、初級者であればゲージ量をなかなか貯めることができず、必殺技を出すことが難しかった。すなわち、従来のゲームでは、初級者は必殺技をなかなか出すことができず、必殺技を出すことの楽しみを味わうことができなかった。
【０００５】
それ故、本発明は、初級者にも比較的簡単にゲージ量を蓄積することができるゲームシステムおよびゲームプログラムを提供することである。
【課題を解決するための手段】
【０００６】
本発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施形態との対応関係を示したものであって、本発明を何ら限定するものではない。
【０００７】
第１の発明は、仮想ゲーム空間においてプレイヤキャラクタ（１０２）が対戦相手のキャラクタ（１０４）との間で被打撃オブジェクト（ボールオブジェクト１０７）を打ち合ってラリーを行うスポーツゲーム（テニスゲーム）を実行するゲームシステム（１０）である。ゲームシステムは、移動制御手段（ステップＳ６を実行するＣＰＵ３６等。以下、単にステップ番号のみを示す。）と、移動量検出手段（Ｓ８）と、パラメータ算出手段（Ｓ９）と、加算手段（Ｓ１９）と、動作制御手段（Ｓ４１およびＳ４５）とを備える。移動制御手段は、プレイヤによる操作に応じてプレイヤキャラクタに仮想ゲーム空間を移動させる。移動量検出手段は、プレイヤキャラクタの所定の単位時間当たりにおける移動量を所定時間毎に検出する。パラメータ算出手段は、移動量検出手段によって所定時間毎に検出される移動量に基づいて所定のパラメータ（ゲージ量）の値を所定時間毎に算出する。加算手段は、パラメータ算出手段によって所定時間（フレーム時間）毎に算出される所定のパラメータの値を累積して加算する。動作制御手段は、プレイヤによって所定の操作がなされたことに応じて、加算手段による加算結果の値が所定値に達していることを条件として、プレイヤキャラクタに所定の動作（必殺技ショット）を行わせる。
【０００８】
また、第２の発明おいては、ゲームシステムは、得点算出手段（Ｓ２７）と、得点差算出手段（Ｓ１１）と、第１補正手段（Ｓ１３）とをさらに備えていてもよい。得点算出手段は、プレイヤキャラクタの得点および対戦相手のキャラクタの得点を算出する。得点差算出手段は、プレイヤキャラクタの得点と対戦相手キャラクタの得点との差を算出する。第１補正手段は、パラメータ算出手段によって算出された所定のパラメータの値を、得点差算出手段によって算出された得点差に基づいて補正する。このとき、加算手段は、第１補正手段によって補正された後の所定のパラメータの値をそれまでの加算結果に加算する。
【０００９】
また、第３の発明においては、補正手段は、プレイヤキャラクタの得点から対戦相手のキャラクタの得点を減算した値が大きいほど、所定のパラメータが小さくなるように補正してもよい。
【００１０】
また、第４の発明においては、ゲームシステムは、ラリー判定手段（Ｓ７）をさらに備えていてもよい。ラリー判定手段は、ラリー中であるか否かを所定時間毎に判定する。このとき、移動量検出手段は、ラリー判定手段によってラリー中と判定される場合にのみ移動量を検出する。
【００１１】
また、第５の発明は、仮想ゲーム空間においてプレイヤキャラクタが対戦相手のキャラクタとの間で被打撃オブジェクトを打ち合ってラリーを行うスポーツゲームを実行するゲームシステムである。ゲームシステムは、待機判断手段（Ｓ６１）と、待機時間測定手段（Ｓ６３）と、打撃実行手段（Ｓ６７）と、パラメータ算出手段（Ｓ７１）と、加算手段（Ｓ１７）と、動作制御手段（Ｓ４１およびＳ４５）とを備えている。待機判断手段は、プレイヤキャラクタに打撃動作（通常ショット動作）を行わせる操作がプレイヤによってなされたとき、当該打撃動作を即座に実行するかそれとも待機するかをプレイヤキャラクタと打撃オブジェクトとの位置関係に基づいて判断する。待機時間測定手段は、待機判断手段によって打撃動作を待機すると判断されたとき、打撃動作の待機時間を測定する。打撃実行手段は、待機判断手段によって打撃動作を実行すると判断されたとき、待機時間測定手段によって測定された待機時間の長さに応じた強さの打撃動作をプレイヤキャラクタに行わせる。パラメータ算出手段は、待機時間測定手段によって測定された待機時間が短いほど値が大きくなるように、当該待機時間に基づいて所定のパラメータ（ゲージ量）の値を算出する。加算手段は、パラメータ算出手段によって算出される所定のパラメータの値を累積して加算する。動作制御手段は、プレイヤによって所定の操作がなされたことに応じて、加算手段による加算結果の値が所定値に達していることを条件として、プレイヤキャラクタに所定の動作（必殺技ショット）を行わせる。
【００１２】
また、第６の発明においては、ゲームシステムは、ゲージ量表示手段（Ｓ１９）をさらに備えていてもよい。ゲージ量表示手段は、加算手段による加算結果の値を示すゲージ（１０８ａ，１０８ｂ，１０９ａ，１０９ｂ）を、プレイヤキャラクタを基準として決定される位置に表示する。
【００１３】
また、第７の発明においては、ゲームシステムは、キャラクタ選択手段（Ｓ３）と、第２補正手段（Ｓ１３）とをさらに備えていてもよい。キャラクタ選択手段は、複数種類のプレイヤキャラクタの中からいずれか１つのプレイヤキャラクタを選択する。第２補正手段は、パラメータ算出手段によって算出された所定のパラメータの値を、キャラクタ選択手段によって選択されたプレイヤキャラクタの種類に応じて予め定められた補正量で補正する。
【００１４】
なお、本発明は、上記ゲームシステムのコンピュータを上記の各手段として機能させるためのゲームプログラムの形態で提供されてもよい。
【発明の効果】
【００１５】
第１の発明によれば、プレイヤキャラクタの移動量に応じて所定の動作を行うためのパラメータを累積することができる。ここで、仮想ゲーム空間においてプレイヤキャラクタが対戦相手のキャラクタとの間でボール等を打ち合ってラリーを行うスポーツゲームにおいては、プレイヤキャラクタを初級者ほど無駄に移動させると考えられる。したがって、初級者であっても、パラメータが貯まった場合にのみ行うことができる必殺技等の特殊な技を出すことができるので、初級者であっても十分にゲームを楽しむことができる。
【００１６】
第２の発明によれば、相手との得点差によってゲージ量が補正されるので、得点差に応じてゲージ量の増加度合いを設定することができる。
【００１７】
第３の発明によれば、得点差において自分のプレイヤキャラクタが大きくリードしているほどゲージ量が小さくなり、自分のプレイヤキャラクタが大きくリードされているほどゲージ量が大きくなるので、ゲーム状況が不利なプレイヤほど早くゲージを貯めて特殊アクションを実行することができる。したがって、対戦ゲームにおいて、両者の有利不利を少なくすることができ、白熱したゲーム展開を実現することができる。
【００１８】
第４の発明によれば、ラリー中以外のプレイヤキャラクタの移動はパラメータの増加とは無関係になる。ここで、プレイヤキャラクタの移動とゲームの習熟度との間に相関関係があるのは、ラリーが行われている間のみである。例えば、サーブを打つ前にプレイヤキャラクタを移動させる操作は、ゲームの習熟度と無関係である。したがって、プレイヤキャラクタの移動をラリー中にのみ検出することで、ゲームの習熟度をパラメータの値により正確に反映させることができる。
【００１９】
第５の発明によれば、プレイヤキャラクタが打撃動作を行う際の待機時間に応じて所定の動作を行うためのパラメータを累積することができる。ここで、仮想ゲーム空間においてプレイヤキャラクタが対戦相手のキャラクタとの間でボール等を打ち合ってラリーを行うスポーツゲームにおいては、待機時間が初級者ほど短くなると考えられる。したがって、初級者であっても、パラメータが貯まった場合にのみ行うことができる必殺技等の特殊な技を出すことができるので、初級者であっても十分にゲームを楽しむことができる。
【００２０】
第６の発明によれば、累積されたゲージ量をプレイヤキャラクタに関連付けて表示するので、プレイヤは、プレイヤキャラクタを操作しながらであってもゲージ量がどの程度あるかを容易に認識することができる。
【００２１】
第７の発明によれば、プレイヤキャラクタを複数種類のキャラクタの中から選択することができ、選択したプレイヤキャラクタに応じてゲージ量を増加の度合いを変化させることができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の一実施形態に係るゲームシステムおよびゲームプログラムによって実行されるゲームを、仮想ゲーム空間（以下、単にゲーム空間と呼ぶ）において行われるテニスゲームを例として説明する。
【００２３】
図１に示す本実施形態のビデオゲームシステム１０は、ビデオゲーム装置ないしビデオゲーム機（以下、単に「ゲーム機」ともいう。）１２を含む。このゲーム機１２には電源が与えられるが、この電源は、実施形態では、一般的なＡＣアダプタ（図示せず）であってよい。ＡＣアダプタは家庭用の標準的な壁ソケットに差し込まれ、家庭用電源を、ゲーム機１２を駆動するのに適した低いＤＣ電圧信号に変換する。他の実施形態では、電源として、バッテリが用いられてもよい。
【００２４】
ゲーム機１２は、略立方体のハウジング１４を含み、ハウジング１４の上端には光ディスクドライブ１６が設けられる。光ディスクドライブ１６には、ゲームプログラム（画像処理プログラム）を記憶した情報記憶媒体の一例である光ディスク１８が装着される。ハウジング１４の前面には複数の（実施形態では４つの）コネクタ２０が設けられる。これらコネクタ２０は、ケーブル２４によって、コントローラ２２をゲーム機１２に接続するためのものであり、この実施形態では最大４つのコントローラをゲーム機１２に接続することができる。
【００２５】
コントローラ２２には、その上面、下面、あるいは側面などに、操作手段（コントロール）２６が設けられる。操作手段２６は、例えば２つのアナログジョイスティック、１つの十字キー、複数のボタンスイッチ等を含む。１つのアナログジョイスティックは、スティックの傾き量と方向とによって、操作オブジェクトとしてのプレイヤキャラクタ（プレイヤがコントローラ２２によって操作可能な動画キャラクタ）の移動方向および／または移動速度ないし移動量などを入力するために用いられる。他のアナログジョイスティックも同様に、傾斜方向によって、例えばプレイヤキャラクタの移動を制御する。十字スイッチは、アナログジョイスティックに代えてプレイヤキャラクタの移動方向を指示するために用いられる。ボタンスイッチは、プレイヤキャラクタの動作を指示するために利用されたり、プレイヤキャラクタの移動スピード調節等に用いられる。ボタンスイッチは、さらに、例えばメニュー選択やポインタあるいはカーソル移動を制御する。
【００２６】
なお、この実施形態ではコントローラ２２がケーブル２４によってゲーム機１２に接続された。しかしながら、コントローラ２２は、他の方法、例えば電磁波（例えば電波または赤外線）を介してワイヤレスで、ゲーム機１２に接続されてもよい。また、コントローラ２２の操作手段の具体的構成は、もちろん実施形態の構成に限られるものではなく、任意の変形が可能である。例えば、アナログジョイスティックは１つだけでもよいし、用いられなくてもよい。十字スイッチは用いられなくてもよい。
【００２７】
ゲーム機１２のハウジング１４の前面のコネクタ２０の下方には、少なくとも１つの（実施形態では２つの）メモリスロット２８が設けられる。このメモリスロット２８にはメモリカード３０が挿入される。メモリカード３０は、光ディスク１８から読み出したゲームプログラムやデータをローディングして一時的に記憶したり、このゲームシステム１０を利用してプレイしたゲームのゲームデータ（例えばゲームの結果）をセーブ（保存）しておくために利用される。
【００２８】
ゲーム機１２のハウジング１４の後面には、ＡＶケーブルコネクタ（図示せず）が設けられ、そのコネクタを用いて、ＡＶケーブル３２を通してゲーム機１２にモニタ（ディスプレイ）３４を接続する。このモニタ３４は典型的にはカラーテレビジョン受像機であり、ＡＶケーブル３２は、ゲーム機１２からの映像信号をカラーテレビのビデオ入力端子に入力し、音声信号を音声入力端子に与える。したがって、カラーテレビ（モニタ）３４の画面上に例えば３次元（３Ｄ）ビデオゲームのゲーム画像が表示され、左右のスピーカ３４ａからゲーム音楽（ＢＧＭ）や効果音などのゲーム音声（例えばステレオ）が出力され得る。
【００２９】
このゲームシステム１０において、ユーザまたはゲームプレイヤがゲーム（または他のアプリケーション）をプレイするために、ユーザはまず光ディスク１８をゲーム機１２にセットして、ゲーム機１２の電源をオンし、その光ディスク１８をゲーム機１２の光ディスクドライブ１６にローディングする。応じて、ゲーム機１２がその光ディスク１８にストアされているソフトウェアに基づいてビデオゲームもしくは他のアプリケーションを実行し始めるようにする。ユーザはゲーム機１２に入力を与えるためにコントローラ２２を操作する。例えば、操作手段２６のどれかを操作することによってゲームもしくは他のアプリケーションをスタートさせる。操作手段２６の他のものを動かすことによって、例えば、複数のプレイヤキャラクタ（プレイヤオブジェクト）から実際にプレイするプレイヤキャラクタを選択したり、そして、そのプレイヤキャラクタを異なる方向に移動させたりすることができる。
【００３０】
図２は図１実施形態のビデオゲームシステム１０の電気的な内部構成を示すブロック図である。ビデオゲーム機１２には、中央処理ユニット（以下、「ＣＰＵ」という。）３６が設けられる。ＣＰＵ３６は、コンピュータあるいはプロセサなどとも呼ばれ、ゲーム機の全体的な制御を担当する。このＣＰＵ３６ないしコンピュータは、ゲームプロセサとして機能し、バスを介して、メモリコントローラ３８に結合される。メモリコントローラ３８は主として、ＣＰＵ３６の制御の下で、バスを介して結合されるメインメモリ４０の書き込みや読み出しを制御する。メインメモリ４０は作業領域またはバッファ領域として使用される。メモリコントローラ３８にはＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：グラフィックス処理装置）  ４２が結合される。
【００３１】
ＧＰＵ４２は、描画手段の一部を形成し、例えばシングルチップＡＳＩＣで構成され、メモリコントローラ３８を介してＣＰＵ３６からのグラフィックスコマンド（ｇｒａｐｈｉｃｓ  ｃｏｍｍａｎｄ：作画命令）を受け、そのコマンドに従って、ジオメトリユニット４４およびレンダリングユニット４６によって３次元（３Ｄ）ゲーム画像を生成する。つまり、ジオメトリユニット４４は、３次元座標系の各種キャラクタやオブジェクト（複数のポリゴンで構成されている。そして、ポリゴンとは少なくとも３つの頂点座標によって定義される多角形平面をいう）の回転、移動、変形等の座標演算処理を行う。レンダリングユニット４６は、各種オブジェクトの各ポリゴンにテクスチャ（Ｔｅｘｔｕｒｅ：模様画像）を貼り付けるテクスチャマッピングなどのレンダリング処理を行う。したがって、ＧＰＵ４２によって、３次元モデルからゲーム画面上に表示すべき３Ｄ画像データが作成され、そして、その画像データがフレームバッファ４８内に描画（記憶）される。
【００３２】
なお、ＧＰＵ４２が作画コマンドを実行するにあたって必要なデータ（プリミティブまたはポリゴンやテクスチャ等）は、ＧＰＵ４２がメモリコントローラ３８を介して、メインメモリ４０から入手する。
【００３３】
フレームバッファ４８は、例えばラスタスキャンモニタ３４の１フレーム分の画像データを描画（蓄積）しておくためのメモリであり、ＧＰＵ４２によって１フレーム毎に書き換えられる。後述のビデオＩ／Ｆ５８がメモリコントローラ３８を介してフレームバッファ４８のデータを読み出すことによって、モニタ３４の画面上にゲーム画像が表示される。なお、フレームバッファ４８の容量は、表示したい画面の画素（ピクセルまたはドット）数に応じた大きさである。例えば、ディスプレイないしモニタ３４の画素数に応じた画素数（記憶位置またはアドレス）を有する。
【００３４】
また、Ｚバッファ５０は、フレームバッファ４８に対応する画素（記憶位置またはアドレス）数×１画素当たりの奥行データのビット数に相当する記憶容量を有し、フレームバッファ４８の各記憶位置に対応するドットの奥行き情報または奥行データ（Ｚ値）を記憶するものである。
【００３５】
なお、フレームバッファ４８およびＺバッファ５０は、ともにメインメモリ４０の一部を用いて構成されてもよい。
【００３６】
メモリコントローラ３８はまた、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）５２を介して、サブメモリ（ＡＲＡＭ）５４に結合される。したがって、メモリコントローラ３８は、ＣＰＵ３６の制御の下で、メインメモリ４０だけでなく、ＡＲＡＭ５４の書き込みおよび／または読み出しを制御する。
【００３７】
ＤＳＰ５２は、例えばサウンドプロセサとして機能しオーディオ処理タスクを実行する。ＡＲＡＭ５４は、光ディスク１８から読み出された、例えば音波形データ（サウンドデータ）をストアするためのオーディオメモリとして用いられ得る。ＤＳＰ５２は、メモリコントローラ３８を介してＣＰＵ３６からのオーディオ処理コマンドを受け、そのコマンドに従って、必要な音波形データを抽出し、例えばピッチ変調、音声データと効果データとのミキシング等の処理／ミックスを行う。オーディオ処理コマンドは、例えばサウンド処理プログラム等の実行によって、メインメモリ４０に書き込まれた、例えば演奏制御データ（サウンドデータ）を順次読み出して解析することによって発生される。音波形データは順次読み出されて、ゲームオーディオコンテンツを生成するためにＤＳＰ５２によって処理される。結果として生成されたコンテンツないしオーディオ出力データは例えばメインメモリ４０にバッファされ、次いで、スピーカ３４ａで例えばステレオ音声として出力するために、オーディオＩ／Ｆ６２に転送される。したがって、その音（サウンド）がスピーカ３４ａから出力される。
【００３８】
なお、生成されるオーディオデータは、２ｃｈステレオ再生用に限られず、例えば５．１ｃｈ、６．１ｃｈ、７．１ｃｈ等のサラウンド再生あるいはモノラル再生などに対応可能であるのはもちろんである。
【００３９】
メモリコントローラ３８は、さらに、バスによって、各インタフェース（Ｉ／Ｆ）５６，５８，６０，６２および６４に結合される。
【００４０】
コントローラＩ／Ｆ５６は、コントローラ２２のためのインタフェースであり、コントローラ２２の操作手段２６の操作信号またはデータをメモリコントローラ３８を通してＣＰＵ３６に与える。
【００４１】
ビデオＩ／Ｆ５８は、フレームバッファ４８にアクセスし、ＧＰＵ４２で作成した画像データを読み出して、画像信号または画像データ（ディジタルＲＧＢピクセル値）をＡＶケーブル３２（図１）を介してモニタ３４に与える。
【００４２】
外部メモリＩ／Ｆ６０は、ゲーム機１２の前面に挿入されるメモリカード３０（図１）をメモリコントローラ３８に連係させる。それによって、メモリコントローラ３８を介して、ＣＰＵ３６がこのメモリカード３０にデータを書き込み、またはメモリカード３０からデータを読み出すことができる。
【００４３】
オーディオＩ／Ｆ６２は、メモリコントローラ３８を通してバッファから与えられるオーディオデータまたは光ディスク１８から読み出されたオーディオストリームを受け、それらに応じたオーディオ信号（音声信号）をモニタ３４のスピーカ３４ａに与える。
【００４４】
なお、ステレオ音声の場合には、スピーカ３４ａは、少なくとも、左右１つずつ設けられる。また、サラウンド再生の場合には、例えば、モニタ３４のスピーカ３４ａとは別に、さらに５つと低音用の１つ（７．１ｃｈの場合）とがＡＶアンプ等を介して設けられてよい。
【００４５】
そして、ディスクＩ／Ｆ６４は、その光ディスクドライブ１６をメモリコントローラ３８に結合し、したがって、ＣＰＵ３６が光ディスクドライブ１６を制御する。この光ディスクドライブ１６によって光ディスク１８から読み出されたプログラムデータやオブジェクトデータ、テクスチャデータ、サウンドデータ等が、ＣＰＵ３６の制御の下で、メインメモリ４０に書き込まれる。
【００４６】
図３には、メインメモリ４０のメモリマップが示される。メインメモリ４０は、ゲームプログラム記憶領域７０、画像データ記憶領域７２、ゲージ量補正テーブル記憶領域７４、累積ゲージ量記憶領域７６、サウンドデータ記憶領域７８およびその他のデータの記憶領域８０を含む。
【００４７】
ゲームプログラム記憶領域７０には、光ディスク１８から読み出したゲームプログラムが一度に全部または部分的かつ順次的に記憶される。このゲームプログラムに従ってＣＰＵ３６がゲーム処理を実行する。ゲームプログラムは、この実施形態では、プレイヤキャラクタ選択プログラム７０ａ、移動量検出プログラム７０ｂ、ゲージ量算出プログラム７０ｃ、ショット処理プログラム７０ｄ、得点計算処理プログラム７０ｅ、得点差算出プログラム７０ｆ、ゲージ量補正プログラム７０ｇ、ゲージ量累積プログラム７０ｈ、ゲージ表示プログラム７０ｉおよびその他ゲームの進行に必要な各種プログラム７０ｊを含む。
【００４８】
プレイヤキャラクタ選択プログラム７０ａは、仮想３次元空間に登場させてプレイするプレイヤキャラクタを選択するためのプログラムである。なお、本実施形態では、テニスゲームの開始前に、プレイヤは、複数種類のキャラクタの中から１つのキャラクタをプレイヤキャラクタとして選択する。
【００４９】
移動量検出プログラム７０ｂは、プレイヤが操作手段２６を操作してプレイヤキャラクタを移動させたときのプレイヤキャラクタの移動量を検出するためのプログラムである。プレイヤキャラクタの移動量を検出する方法としては、例えば所定の単位時間（１フレームまたは数フレーム）毎のプレイヤキャラクタの位置座標の変化を検出し、座標変化量に基づいて移動量を検出する方法が考えられる。また、操作手段２６の操作（アナログジョイスティックの傾倒操作または十字スイッチの押圧操作）時間に比例してプレイヤキャラクタの移動量が増加するような場合には、操作手段２６の操作時間を検出し、操作時間に応じて移動量を決定するようにしてもよい。
【００５０】
ゲージ量算出プログラム７０ｃは、移動量検出プログラム７０ｂによって検出された移動量に基づいてゲージ量を算出するためのプログラムである。ここで、ゲージ量とは、プレイヤキャラクタに特殊アクションを行わせることを許容する指標となるパラメータである。すなわち、ゲージ量が最大値である場合（すなわち、ゲージが満タンになった場合）にのみ、プレイヤキャラクタは特殊アクションを行うことができる。なお、本実施形態では、特殊アクションは具体的には必殺技ショットのことである。必殺技ショットとは、通常のショットとは異なる効果を奏するショットであり、例えば、通常よりも打球が速いショットや、よく曲がるショットや、通常では届かない位置でも打ち返すことができるショット等がある。
【００５１】
なお、ゲージ量算出プログラム７０ｃによって算出されるゲージ量は、ゲージの増加量、すなわち、現在のゲージ量から増加させるべきゲージ量である。つまり、現在のゲージ量が、ゲージ量算出プログラム７０ｃによって算出されるゲージ量の分だけ増加されることによって新たなゲージ量となる。したがって、以下においては、ゲージ量算出プログラム７０ｃによって算出されるゲージ量をゲージ増加量と呼ぶこともある。
【００５２】
ショット処理プログラム７０ｄは、プレイヤが操作手段２６を操作してプレイヤキャラクタにショット指示を行ったことに応じて、当該ショット指示に対応するショット動作をさせるためのプログラムである。例えば、プレイヤが通常のショット指示を行ったときは、通常のショット動作（通常アクション）をさせ、プレイヤが必殺技ショットを指示したときは、必殺技ショットの動作（特殊アクション）を行わせる。
【００５３】
得点計算処理プログラム７０ｅは、例えば、自己のプレイヤキャラクタまたは対戦相手キャラクタのショットが決まったり、あるいはショットミスなどによって、得点が加算されるタイミングになったことに応じて、プレイヤキャラクタまたは対戦相手キャラクタの得点を計算するためのプログラムである。
【００５４】
得点差算出プログラム７０ｆは、プレイヤキャラクタの得点と対戦相手キャラクタの得点との得点差を算出するためのプログラムである。
【００５５】
ゲージ量補正プログラム７０ｇは、プレイヤキャラクタの移動量に基づいて算出されたゲージ増加量（増加させるべきゲージ量）を、選択されたプレイヤキャラクタの種類や得点差に基づいて補正するためのプログラムである。例えば、得点差に基づいて補正する場合、得点差が対戦相手キャラクタに対してプレイヤキャラクタの方が大きい（つまり、プレイヤキャラクタのリードが大きい）ほど、ゲージ増加量が小さくなるように補正する。また、得点差がプレイヤキャラクタに対して対戦相手キャラクタの方が大きい（つまり、対戦相手キャラクタのリードが大きい）ほど、ゲージ増加量が大きくなるように補正する。
【００５６】
ゲージ量累積プログラム７０ｈは、移動量に基づいて算出されたゲージ増加量（または補正されたゲージ増加量）を累積するためのプログラムである。具体的には、ゲージ量補正プログラム７０ｇによって補正されたゲージ増加量を現在のゲージ量に加算して新たなゲージ量とする。
【００５７】
ゲージ表示プログラム７０ｉは、ゲージ量をプレイヤキャラクタに関連付けて（プレイヤキャラクタを基準として決定される位置に）表示するためのプログラムである。例えば、この実施形態では、プレイヤキャラクタはラケットオブジェクトを手に持っており、ラケットオブジェクトの周りにゲージが表示される。
【００５８】
画像データ記憶領域７２には、キャラクタＡデータ７２ａ、キャラクタＢデータ７２ｂ、キャラクタＣデータ７２ｃ、背景オブジェクトデータ７２ｄおよびその他のオブジェクトデータ７２ｅ等が記憶される。キャラクタＡデータ７２ａ、キャラクタＢデータ７２ｂおよびキャラクタＣデータ７２ｃは、プレイヤによって選択されて操作される複数種類のキャラクタである。各キャラクタはポリゴンによって形成され、また、各データには例えばその位置座標や状態等の情報が含まれる。背景オブジェクトデータ７２ｄは、例えばコートオブジェクトや観客オブジェクト等のデータが含まれる。その他のオブジェクトデータ７２ｅとしては、プレイヤキャラクタおよび対戦相手キャラクタが手に持っているラケットオブジェクトやボールオブジェクト等のオブジェクトデータが含まれる。
【００５９】
ゲージ量補正テーブル記憶領域７４には、プレイヤキャラクタに基づくゲージ量補正テーブル７４ａおよび得点差に基づくゲージ量補正テーブル７４ｂが記憶される。累積ゲージ量記憶領域７６には、プレイヤキャラクタの移動量に基づいて算出されたゲージ増加量（または補正されたゲージ増加量）が累積された結果得られるゲージ量（累積ゲージ量）が記憶される。サウンドデータ記憶領域７８には、ゲームのＢＧＭや効果音等に関するサウンドデータが記憶される。その他のデータの記憶領域８０には、プレイヤキャラクタおよび対戦相手キャラクタの得点データ等のその他ゲーム進行に必要な各種データやフラグ等が記憶される。
【００６０】
なお、メインメモリ４０の画像データ記憶領域７２、ゲージ量補正テーブル記憶領域７４およびサウンドデータ記憶領域７８等には、各データが光ディスク１８から一度に全部、または必要に応じて部分的かつ順次的にロードされる。
【００６１】
図４には、ゲージ量補正テーブル記憶領域７４に記憶されるプレイヤキャラクタに基づくゲージ量補正テーブル７４ａの一例が示される。図４に示すように、プレイヤキャラクタに基づくゲージ量補正テーブル７４ａは、選択されたプレイヤキャラクタの種類に応じて異なる補正率を設定するためのテーブルである。例えば、プレイヤキャラクタＡを選択した場合は、ゲージ増加量の補正率として０．８が設定される。つまり、プレイヤキャラクタＡの移動量に基づいて算出されたゲージ増加量は、０．８を掛けた値（算出されたゲージ増加量の８０％）に補正される。同様にして、キャラクタＢを選択した場合は、ゲージ増加量の補正率として１．０が設定され、プレイヤキャラクタＣを選択した場合は、ゲージ増加量の補正率として１．２が設定される。このように、プレイヤキャラクタの種類によってゲージ増加量の補正率を変えることによってより複雑で面白みのある対戦ゲームを実現することができる。
【００６２】
図５には、ゲージ量補正テーブル記憶領域７４に記憶される得点差に基づくゲージ量補正テーブル７４ｂの一例が示される。図５に示すように、得点差に基づくゲージ量補正テーブル７４ｂは、プレイヤキャラクタが対戦相手キャラクタに対して何ゲームリードしているか、または何ゲームリードされているかに応じて異なる補正率を設定するためのテーブルである。例えば、プレイヤキャラクタが対戦相手キャラクタに対して５ゲームリードしている場合は、ゲージ増加量の補正率として０．５が設定される。これにより、プレイヤキャラクタが５ゲームリードしているときは、累積されるゲージ増加量が移動量に基づいて算出されたゲージ増加量の５０％に補正される。同様に、プレイヤキャラクタのリードしているゲーム差が小さくなるに従って補正率は大きくなり、ゲーム差なしのときに補正率は１．０（算出されたゲージ増加量の１００％）となる。また、プレイヤキャラクタが対戦相手キャラクタに対して１ゲームリードされている場合は、ゲージ増加の補正率として１．１が設定される。以後、プレイヤキャラクタのリードされているゲーム差が大きくなるに従って補正率は大きくなり、プレイヤキャラクタが５ゲームリードされているとき、補正率１．５となる。
【００６３】
この図５の例では、得点差で大きくリードしているキャラクタほどゲージ増加量の補正率は小さくなり、大きくリードされているキャラクタほど補正率が大きくなる。つまり、キャラクタを同じ量移動させても、得点差でリードしているゲーム状況の有利なプレイヤは、累積されるゲージ量が少なくなるので必殺技ショットを行えるようになるまでのゲージ量が貯まるのに時間がかかり、逆に、リードされているゲーム状況の不利なプレイヤは、累積されるゲージ量が多くなるので必殺技ショットを行えるようになるまでのゲージ量が貯まるのが早くなる。したがって、ゲーム状況の不利なプレイヤほど、有利にゲームを進めることができるので、ゲームの優劣が小さくなり、緊張感のある接近したゲーム展開を実現することができる。
【００６４】
なお、テニスゲームの場合の得点の付け方は、得点の最小単位である１ポイントを先に４ポイント先取すれば１ゲームが付与される。そして、６ゲームを先に取得すればそのセットの勝者となる。ゲームルールが３セットマッチの場合は、先に２セット取った方が勝者となる。図５の例では、ゲーム差に基づいて補正率を設定するようにしたが、ポイント差またはセット差に基づいて補正率を設定するようにしてもよい。また、ポイント差、ゲーム差およびセット差のうちのいずれか２つ以上の組み合わせに基づいて補正率を設定するようにしてもよい。
【００６５】
図６には、このゲーム機１２のゲーム動作の一例が示される。ゲームをプレイするとき、上述のように光ディスク１８をゲーム機１２にセットし、電源を投入すると、図６の最初のステップＳ１で、ＣＰＵ３６は、メインメモリ４０の累積ゲージ量記憶領域のリセット処理を行う。具体的には、累積ゲージ量記憶領域に記憶されている累積ゲージ量を０に設定する。
【００６６】
次に、ステップＳ３で、ＣＰＵ３６は、プレイヤキャラクタ選択処理を実行する。例えば、メインメモリ４０の画像データ記憶領域７２に記憶されているキャラクタＡ、キャラクタＢおよびキャラクタＣを個別または一緒に表示し、プレイヤによる選択を促すための選択画面をモニタ３４に表示する。そして、プレイヤが操作手段２６を操作することによっていずれかのキャラクタを選択したことに応じて、ＣＰＵ３６は、選択されたプレイヤキャラクタをゲームに使用するプレイヤキャラクタとして決定し、決定されたプレイヤキャラクタを仮想空間内に登場させる。
【００６７】
続いて、ステップＳ５で、ＣＰＵ３６は、プレイヤキャラクタの移動指示が行われたか否かを判断する。例えば、プレイヤが操作手段２６に含まれるアナログジョイスティックを傾倒操作または十字スイッチを押圧操作することによって、プレイヤキャラクタの移動を指示したか否かを判断する。
【００６８】
このステップＳ５で“ＹＥＳ”であれば、つまり、プレイヤがプレイヤキャラクタを移動させる操作を行った場合には、ＣＰＵ３６は、ステップＳ６で当該操作に応じてプレイヤキャラクタを移動させる。さらに、続くステップＳ７において、移動指示が行われた時点がラリー中であるか否かを判定する。ここで、ラリー中とは、テニスプレイ中の各キャラクタのいずれかがサーブを打ってからポイントが決まるまでの期間を指す。ステップＳ７においては、具体的には、各キャラクタのいずれかがサーブを打つことに応じてオンとなり、かつ、ポイントが決まることに応じてオフとなるフラグを用意しておき、当該フラグがオンであればラリー中と判断すればよい。なお、このメイン処理ルーチンは、単位時間毎に（例えば１フレーム毎に）実行されるものであり、したがってこのステップＳ７が、後述のステップＳ８およびＳ９とともに、単位時間毎に実行される。ステップＳ７で“ＮＯ”であれば、つまり、ラリー中でなければ、ステップＳ５の処理が再び実行される。
【００６９】
一方、ステップＳ７で“ＹＥＳ”であれば、つまり、ラリー中であれば、ＣＰＵ３６は、ステップＳ８で、プレイヤキャラクタの移動量検出処理を実行する。具体的には、所定の単位時間（例えば１フレーム）におけるプレイヤキャラクタの位置座標の変化を検出して座標変化量を算出し、算出された座標変化量を移動量とする。例えば、プレイヤキャラクタの位置座標が（Ｘ１，Ｙ１）から（Ｘ２，Ｙ２）に変化した場合の座標変化量（移動量）Ｍは、以下の式（１）によって求められる。
【００７０】
【数１】
2005342492.tif 000003
また、移動量検出処理の他の例として、プレイヤが操作手段２６を操作してプレイヤキャラクタの移動指示をしている間の操作時間（アナログジョイスティックの傾倒時間または十字スイッチの押圧時間）を検出して移動量を求める方法も考えられる。この場合は、検出された操作時間の値を移動量とすることができる。
【００７１】
続くステップＳ９では、ステップＳ７で検出された移動量Ｍに基づいてゲージ増加量を算出する。例えば、移動量Ｍに所定の数値を乗算することによって算出される値をゲージ増加量として設定する。具体的には、次の式（２）に従ってゲージ増加量が算出される。
（ゲージ増加量）＝（プレイヤキャラクタの移動量Ｍ）／３  …（２）
なお、プレイヤキャラクタの移動量Ｍの単位は、ゲーム空間において定義された所定の単位である。本実施形態においては、上式（２）を用いてゲージ増加量を算出するようにしたが、他の実施形態においては、移動量Ｍの値に対応するゲージ増加量を予めテーブルとして記憶しておき、当該テーブルを参照することによって移動量Ｍに対応するゲージ増加量を設定するようにしてもよい。また、移動量Ｍの値をそのままゲージ増加量として設定してもよい。
【００７２】
ステップＳ１１で、ＣＰＵ３６は、得点差算出処理を実行する。具体的には、ゲームの進行に従って計算処理され、メインメモリ４０のその他の記憶領域８０に更新記憶されているプレイヤキャラクタの得点と対戦相手キャラクタの得点とを参照してその得点差を算出する。
【００７３】
続いて、ステップＳ１３で、ＣＰＵ３６は、図４を参照して、ステップＳ３において選択されたプレイヤキャラクタの種類に基づいてゲージ量を補正するとともに、図５を参照して、ステップＳ１１において算出された得点差に基づいて、ステップＳ９で算出されたゲージ増加量を補正する。具体的には、選択されたプレイヤキャラクタの種類に応じた補正率（図４）および得点差に応じた補正率（図５）を算出されたゲージ量に乗算することによって補正されたゲージ量が求められる。
【００７４】
ステップＳ１５で、ＣＰＵ３６は、メインメモリ４０の累積ゲージ量記憶領域７６を参照して、累積ゲージ量が最大値（例えば１００）に達しているか否かを判断する。このステップＳ１５で“ＮＯ”であれば、つまり、累積ゲージ量が最大値に達していなければ、ＣＰＵ３６は、ステップＳ１７で、ステップＳ１３において補正されたゲージ増加量を累積ゲージ量記憶領域７６に記憶されている累積ゲージ量に累積（加算）する。つまり、累積ゲージ量記憶領域７６に記憶されている累積ゲージ量のデータ値を更新する。なお、ゲージ量は、ゲージ増加量を加算した結果が上記最大値を越える場合、上記最大値となるように更新される。
【００７５】
続くステップＳ１９で、累積ゲージ量記憶領域７６に記憶（更新）された累積ゲージ量に応じてモニタ３４に表示されるゲージを表示変化させる。ゲージの表示を変化させる例については後述する図８〜図１０に示されている。
【００７６】
一方、ステップＳ５で“ＮＯ”であれば、つまり、プレイヤがプレイヤキャラクタを移動指示していない場合には、続くステップＳ２１で、ＣＰＵ３６は、プレイヤキャラクタのショット指示が行われたか否かを判断する。例えば、プレイヤが操作手段２６に含まれるボタンスイッチを押圧操作することによって、プレイヤキャラクタにボールに対するショット（アクション）を行うことを指示したか否かを判断する。なお、ショット指示は、通常のショット動作を行う指示であっても必殺技ショットを行う指示であってもよい。
【００７７】
このステップＳ２１で“ＹＥＳ”であれば、つまり、プレイヤがプレイヤキャラクタにショット動作を行わせることを指示した場合には、ＣＰＵ３６は、ステップＳ２３で、ショット処理を実行する。このショット処理は図７に詳細に示される。
【００７８】
図７の最初のステップＳ４１で、ＣＰＵ３６は、メインメモリ４０の累積ゲージ量記憶領域７６に記憶されている累積ゲージ量の値が最大値に達したか否かを判断する。このステップＳ４１で“ＹＥＳ”であれば、つまり、累積ゲージ量が最大値である場合には、プレイヤキャラクタに必殺技ショット（特殊アクション）を行わせることが許容されているので、ＣＰＵ３６は、ステップＳ４３の処理を行う。すなわち、ＣＰＵ３６は、続くステップＳ４３で、プレイヤによって必殺技ショットが選択されたか否かを判断する。例えば、操作手段に含まれる複数のボタンスイッチにそれぞれ通常ショット用のボタンスイッチおよび必殺技ショット用のボタンスイッチを割り当てられている場合には、どちらのボタンスイッチが操作されたかによって、上記ステップＳ２１で行われたショット指示が通常ショットの指示であったかそれとも必殺技ショットの指示であったかを判断する。また、例えば、通常ショットを行うのか必殺技ショットを行うのかを選択させるためのショット選択画面を表示してプレイヤによる選択を促すようにしてもよい。
【００７９】
このステップＳ４３で“ＹＥＳ”であれば、つまり、プレイヤが必殺技ショットを選択した場合には、ＣＰＵ３６は、ステップＳ４５で、プレイヤキャラクタに必殺技ショットの動作を行わせる。これにより、プレイヤキャラクタがボールに対して必殺技ショットを行う画像がモニタ３４に表示される。この必殺技ショットによって、例えば、通常ショットによって打ち返されたボールよりも速くて威力のある打球等を打ち返すことができる。
【００８０】
続くステップＳ４７で、メインメモリ４０の累積ゲージ量記憶領域７６をリセット処理する。すなわち、累積ゲージ量記憶領域７６に記憶されている累積データ値を０に設定する。続くステップＳ４９で、プレイヤキャラクタのラケットオブジェクトの周りに表示されているゲージを消去する。
【００８１】
一方、ステップＳ４１で“ＮＯ”であれば、つまり、累積ゲージ量が最大値でない場合には、プレイヤキャラクタに必殺技ショットを行わせることが許容されないので、ステップＳ５１の処理が実行される。すなわち、ステップＳ５１においては、通常ショット動作処理が実行される。通常ショット動作処理は、プレイヤキャラクタに通常ショットの動作を行わせる処理である。この処理によって、プレイヤキャラクタがボールに対して通常ショットを行う画像がモニタ３４に表示される。なお、この通常ショット動作処理は図８に詳細に示される。
【００８２】
図８のステップＳ６１において、まずＣＰＵ３６は、プレイヤキャラクタにショット動作をすぐに行わせるかそれとも待機するかを判断する。具体的には、ステップＳ６１の処理は、プレイヤキャラクタとボールとが所定の位置関係にあるか否かによって判断される。より具体的には、プレイヤキャラクタの位置を基準として定められる所定範囲内にボールが存在する場合、プレイヤキャラクタとボールとが所定の位置関係にあると判断される結果、プレイヤキャラクタにショット動作をすぐに行わせると判断される。なお、上記所定範囲は、プレイヤキャラクタがボールをショットすることが可能な範囲であり、プレイヤキャラクタの種類毎および／またはショットの種類（通常ショットまたは必殺技ショット）毎に予め定められている。一方、上記所定範囲内にボールが存在しない場合、プレイヤキャラクタとボールとが所定の位置関係にないと判断される結果、ＣＰＵ３６は、ショット動作を行う処理を待機する。
【００８３】
ステップＳ６１で“ＮＯ”であれば、つまり、プレイヤキャラクタにショット動作を行わせない場合には、ＣＰＵ３６は、ステップＳ６３において待機時間のカウントを開始する。待機時間とは、ショットの指示が行われてからショット動作が実際に行われるまでの「ため時間」である。すなわち、待機時間は、ステップＳ２１でプレイヤによるショット指示が行われてからの経過時間である。なお、この待機時間は、典型的にはフレーム時間を単位として計測される。続くステップＳ６５において、プレイヤキャラクタの移動が制限される。具体的には、ステップＳ６５以降、後述するステップＳ６９で制限が解除されるまで、プレイヤが同じ移動操作を行っても、解除されている場合のプレイヤキャラクタの移動量に比べてプレイヤキャラクタの移動量が小さくなる。また、他の実施形態においては、ステップＳ６５以降、後述するステップＳ６９で制限が解除されるまで、プレイヤキャラクタは移動不可能であるようにしてもよい。ステップＳ６５を終了すると、通常ショット動作処理を終了して図６へ戻る。
【００８４】
一方、ステップＳ６１で“ＹＥＳ”であれば、つまり、プレイヤキャラクタにショット動作を行わせる場合には、ＣＰＵ３６は、ステップＳ６７において待機時間に応じた強さのショット動作をプレイヤキャラクタに行わせる。この待機時間は、前述のステップＳ６３でカウントが開始された時間である。なお、ここで行われるショット動作は通常のショット動作である。ただし、待機時間に応じてショットの強さが変化する。具体的には、プレイヤキャラクタは、待機時間が長いほど強いショットを行うことができる。上述のように、待機時間が計測されている間はプレイヤキャラクタの移動が制限されるので、待機時間を長くしようとすれば、プレイヤは、ボールをショット可能な位置にプレイヤキャラクタを短時間で素早く移動させなければならない。つまり、ボールをショット可能な位置にプレイヤキャラクタを短時間で素早く移動させることができる上級者ほど、強いショットを行うことができる。
【００８５】
ステップＳ６７の次のステップＳ６９において、ＣＰＵ３６は、ステップＳ６５で実行したプレイヤキャラクタの移動の制限を解除する。これ以降、プレイヤキャラクタは通常通りの移動を行うことができる。続くステップＳ７１においては、待機時間に基づいてゲージ増加量が算出される。この待機時間は、ステップＳ６３でカウントが開始されてからステップＳ６７で通常ショットが行われるまでの待機時間である。ゲージ増加量は、例えば、次式（３）に基づいてゲージ増加量が算出される。
（ゲージ増加量）＝（６０−（待機時間））×１０  …（３）
なお、上式（３）において、ゲージ増加量が１０より小さくなる場合、ゲージ増加量は１０とされる。つまり、ゲージ増加量の下限値は１０である。また、上式（３）におけるゲージ増加量の上限値は６００である。このように、本実施形態では、待機時間が短いほどゲージ増加量が大きくなる。つまり、待機時間を長くすることができない初級者ほど、ゲージが早く貯まり、必殺技ショットを出しやすくなる。ステップＳ７１を終了すると、図６に示すステップＳ１１の処理が実行される。
【００８６】
図７の説明に戻り、ステップＳ４３で“ＮＯ”であれば、つまり、プレイヤが必殺技ショットを選択しなかった場合には、ＣＰＵ３６は、ステップＳ５１の通常ショット動作処理を実行する。
【００８７】
ステップＳ４９またはステップＳ５１を終了すると、ＣＰＵ３６は、ショット処理を終了して図６へ戻る。
【００８８】
図６に戻って、ステップＳ２１で“ＮＯ”であれば、つまり、プレイヤがプレイヤキャラクタにショット動作を行わせることを指示していない場合には、ＣＰＵ３６は、ステップＳ２５で、得点処理タイミングか否かを判断する。例えば、プレイヤキャラクタまたは対戦相手キャラクタのショットが決まったり、ショットミスした場合には、プレイヤキャラクタおよび対戦相手キャラクタのいずれかに得点が入るので、得点処理タイミングとなる。
【００８９】
このステップＳ２５で“ＹＥＳ”であれば、つまり、得点処理タイミングであることが判断された場合には、ＣＰＵ３６は、ステップＳ２７で、得点算出処理を実行する。具体的には、メインメモリ４０のその他の記憶領域８０に記憶されているプレイヤキャラクタの得点データまたは対戦相手キャラクタの得点データを加算して更新する。
【００９０】
一方、ステップＳ２５で“ＮＯ”であれば、つまり、得点処理タイミングでないことが判断された場合には、ステップＳ２９へ進む。
【００９１】
また、ステップＳ１５で  “ＹＥＳ”であれば、つまり、累積ゲージ量が最大値に達している場合は、ステップＳ１３において補正されたゲージ量を累積することができないので、ステップＳ２９へ進む。
【００９２】
そして、ステップＳ２９で、ＣＰＵ３６は、試合終了か否か、すなわちこのテニスゲームが終了または勝敗が決したか否かを判断する。このステップＳ２１で“ＮＯ”であれば、つまり、試合終了でなければ、ステップＳ５へ戻る。一方、ステップＳ２１で“ＹＥＳ”であれば、つまり、試合終了であることが判断された場合には、ＣＰＵ３６はゲーム終了処理を実行してこの処理を終了する。
【００９３】
なお、図６〜図８に示すフローチャートにおいては、ボールがゲーム空間を移動する処理を明記していないが、ＣＰＵ３６は、プレイヤキャラクタのショット動作によって決定されるパラメータ（速度や方向等のパラメータ）に従ってゲーム空間においてボールを移動させる。また、上記フローチャートにおいては、プレイヤキャラクタの移動量および待機時間に基づいてゲージ増加量を算出し、ゲージ量を累積する処理について説明したが、対戦相手キャラクタについてもプレイヤキャラクタと同様の処理が行われる。
【００９４】
また、上記フローチャートにおいては、上記所定範囲内にボールが存在しない時点でプレイヤがショット指示を行った後、ボールが所定範囲内に入った時点で再度ショット指示を行ったときに待機時間に応じた強さのショット動作が行われた（図６のステップＳ２１およびＳ２３、図８のステップＳ６１、Ｓ６３およびＳ６７参照）。つまり、ボールが所定範囲内に入った時点でプレイヤが再度のショット指示を行わなければ、ショット動作自体が行われない。ここで、他の実施形態においては、所定範囲内にボールが存在しない時点でプレイヤがショット指示を行った後、ボールが所定範囲内に入れば自動的に待機時間に応じた強さのショット動作が行われるようにしてもよい。また、ボールが所定範囲内に入った時点でプレイヤが再度のショット指示を行わなければ、通常のショット動作が行われるようにしてもよい。
【００９５】
図９、図１０および図１１には、図６〜図８の処理によってモニタ３４に表示されるテニスゲームのゲーム画像（表示画面）１００の一例が示される。図９はゲーム開始直後の表示画面例であり、仮想空間内の手前側（画面の下側）のコート１０１にプレイヤキャラクタ１０２が表示され、奥側（画面の上側）のコート１０３に対戦相手キャラクタ１０４が表示される。プレイヤキャラクタ１０２および対戦相手キャラクタ１０４はそれぞれラケットオブジェクト１０５および１０６をその手に持っており、プレイヤキャラクタ１０２の近傍にはボールオブジェクト（ボール）１０７が表示される。プレイヤキャラクタ１０２はプレイヤの操作手段２６によって操作され、コート１０１内およびその周辺を自由に移動することが可能である。プレイヤは、コート１０１内に飛んできたボールオブジェクト１０７に合わせてプレイヤキャラクタ１０２を移動させ、ラケットオブジェクト１０５を振ってボールオブジェクト１０７をショットさせることによって、対戦相手側のコート１０３にボールを打ち返す。また、対戦相手キャラクタ１０４は、対戦相手のプレイヤの操作手段２６またはＣＰＵ３６によって操作され、コート１０３およびその周辺を移動して、コート１０３内に飛んでくるボールオブジェクト１０７をラケットオブジェクト１０６を用いて打ち返すことにより、プレイヤ側のコート１０１にボールを打ち返す。このように、本実施形態におけるテニスゲームは、仮想空間内を移動するボールオブジェクト１０７に合わせてプレイヤキャラクタ１０２を移動させ、ボールオブジェクト１０７に対してショット（アクション）を行うことにより対戦相手キャラクタ１０４との間でボールを介して行われる対戦ゲームである。図９は、プレイヤキャラクタ１０２がボールオブジェクト１０７をサーブしようとしているところであり、このとき、プレイヤキャラクタ１０２および対戦相手キャラクタ１０４のいずれも移動量が０であり、かつ、ため時間の経過後に行われる通常ショット（「ためショット」や「チャージショット」等と呼ばれる。以下「ためショット」と呼ぶ。）も行われていないので、ゲージ量は０である。
【００９６】
ゲームの進行に従って、プレイヤキャラクタ１０２および対戦相手キャラクタ１０４のそれぞれが移動すると、その移動量等に基づいて算出されたゲージ量（ゲージ増加量）が累積される。また、プレイヤキャラクタ１０２および対戦相手キャラクタ１０４のそれぞれが「ためショット」を行うと、その待機時間（ため時間）に基づいて算出されたゲージ量（ゲージ増加量）が累積される。ゲージ量が累積されると、図１０に示すように、プレイヤキャラクタ１０２の累積ゲージ量に応じたゲージ１０８ａおよび対戦相手キャラクタ１０４の累積ゲージ量に応じたゲージ１０９ａが表示される。このとき、ゲージ１０８ａおよび１０９ａは、それぞれプレイヤキャラクタ１０２および対戦相手キャラクタ１０４がその手に持っているラケットオブジェクト１０５および１０６の周りに表示される。なお、ゲージ１０８ａおよび１０９ａの大きさ（または長さ、面積等）は、累積ゲージ量の値に応じて変化する。このように、ゲージ１０８ａおよび１０９ａをプレイヤキャラクタ１０２および対戦相手キャラクタ１０４に関連付けて表示（ここでは、各キャラクタ１０２および１０４が手に持っているラケットオブジェクト１０５および１０６の周りに表示）することにより、プレイヤは、プレイヤキャラクタ１０２から目を離すことなくゲージ１０８ａの表示状態を認識することができるので、プレイヤキャラクタを操作しながらであってもゲージ量を容易に確認することができる。なお、ゲージは、プレイヤキャラクタの位置に合わせて表示位置が変化するように表示されることが好ましく、ラケットの周囲に限らず、例えばプレイヤキャラクタの周囲に表示されてもよい。
【００９７】
図１１は、プレイヤキャラクタ１０２の累積ゲージ量が最大値に達した場合のゲージ表示の例を示す。このとき、プレイヤキャラクタ１０２のラケットオブジェクト１０５の周りには、ゲージ１０８ｂが表示される。このゲージ１０８ｂは、ラケットオブジェクト１０５の周りを全て囲むようなリング状に表示される。さらに、ゲージ量が最大値に達しているときにはゲージ１０８ｂは点滅表示される。これによって、累積ゲージ量が最大値になったことをプレイヤにとってわかりやすく表示することができる。また、図１１においては、対戦相手キャラクタ１０４のラケットオブジェクト１０６の周りにも、累積ゲージ量の増加に応じてその大きさが増加（変化）したゲージ１０９ｂが表示される。
【００９８】
このように、ラケットオブジェクト１０５および１０６の周りに表示されるゲージ１０８ａ，１０８ｂ，１０９ａおよび１０９ｂ等は、累積ゲージ量が最大値のとき、ラケットオブジェクト１０５または１０６の周りを全て囲むリング状に表示される。一方、累積ゲージ量が最大値でないときは、最大値に対する割合に応じて大きさが変化する不完全なリング（欠けたリング）状に表示される。つまり、ゲージ量の値に応じて表示されるゲージも変化する。
【００９９】
なお、図１０および図１１に示すように、ラケットオブジェクト１０５の周りに欠けたリング状のゲージ１０８ａが表示されているとき、ゲージ１０８ａは、ラケットオブジェクト１０５の周りを周回移動するように表示される。同様に、ラケットオブジェクト１０６の周りに欠けたリング状のゲージ１０９ａまたは１０９ｂが表示されているとき、当該ゲージ１０９ａまたは１０９ｂは、ラケットオブジェクト１０６の周りを周回移動するように表示される。このようにゲージを周回移動して表示することによって、ゲージをより強調して表示することができ、ゲージの表示状態をプレイヤに容易に認識させることができる。
【０１００】
上記実施形態によれば、テニスゲームのような球技ゲームにおいて、プレイヤキャラクタの移動量に応じてゲージ量が設定される。そして、累積ゲージ量に応じて必殺技ショットを行うことができ、ゲームを有利に進めることができる。ここで、テニスゲームにおいては、初級者は、ボールを打ち返すことができる位置を即座に正確に把握することができず、プレイヤキャラクタを必要以上に多く移動させてしまう傾向がある。したがって、本実施形態によれば、プレイヤキャラクタを移動させすぎてしまう初級者ほどゲージ量が早く貯まるので、有利な必殺技ショットを出しやすくなるのである。したがって、本実施形態においては、初級者でも簡単に必殺技を出すことができ、初級者でもテニスゲームを十分に楽しむことができる。また、初心者（初級者）と熟練者（上級者）が対戦した場合には、初心者の方に有利にゲームが進むので、熟練者の一方的な試合展開になるのを防ぎ、白熱した接戦の試合展開を実現することができる。
【０１０１】
また、本実施形態によれば、テニスゲームのような球技ゲームにおいて、「ためショット」の時間に応じてゲージ量が設定される。そして、「ためショット」の時間が短いほどゲージ量が早く貯まり、必殺技ショットを行うことができる。ここで、上述のように、上級者ほど「ためショット」を用いてショットを行うことができるので、初級者ほど早くゲージ量が貯まり、必殺技ショットを行うことができる。したがって、本実施形態においては、この理由によっても、初級者でも簡単に必殺技を出すことができ、初級者でもテニスゲームを十分に楽しむことができると言える。また、上記と同様、初心者（初級者）と熟練者（上級者）が対戦した場合には、初心者の方に有利にゲームが進むので、熟練者の一方的な試合展開になるのを防ぎ、白熱した接戦の試合展開を実現することができる。
【０１０２】
なお、上述の実施形態では、プレイヤキャラクタの移動量に基づいて算出されたゲージ増加量を、選択されたプレイヤキャラクタの種類と得点差とに基づいて補正し、補正したゲージ増加量を累積するようにした。ここで、他の実施形態においては、プレイヤキャラクタの移動量に基づいて算出されたゲージ増加量を補正しないでそのまま累積するようにしてもよい。または、選択されたプレイヤキャラクタの種類および得点差のいずれか一方のみに基づいて補正するようにしてもよい。
【０１０３】
また、上述の実施形態では、累積ゲージ量が最大値に達したとき、プレイヤキャラクタに必殺技ショットを行わせることを許容するようにしているが、最大値以外の所定の値（例えば最大値の８０％）に達したときに必殺技ショットを行わせることを許容するようにしてもよい。また、必殺技ショット毎に消費するゲージ量を予め定めておき、消費する量だけゲージ量が貯まっている必殺技ショットは実行可能であるようにしてもよい。
【０１０４】
また、上記実施形態においては、プレイヤキャラクタの移動量および待機時間に加えて、ボールの移動量に応じてゲージ量が増加するようにしてもよい。例えば、所定の単位時間（例えば１フレーム）当たりのボールの移動量を検出し、検出した移動量に応じてゲージ増加量を算出するようにしてもよい。例えば、次式（４）を用いてゲージ増加量を算出するようにしてもよい。
（ゲージ増加量）＝（ボールの移動量）／１０  …（４）
テニスゲームにおいては、強力なショットやコースを狙ったショットを打つことが初級者には難しいので、初級者のプレイヤ同士がプレイするほどラリーが長く続くおそれがある。しかし、上記のようにボールの移動量に応じてゲージ量が増加するようにすることで、ラリーが続けば必殺技ショットが打てるようになるので、ラリーを終わらせることができる。これによって、あまりに長くラリーが続くためにプレイヤがゲームに飽きてしまったり、ポイントが決まらないためにゲームが面白くなくなることを防止することができる。なお、上記のボールの移動量（移動距離）に代えて、ボールの移動時間に応じてゲージ量を増加させるようにしてもよい。
【０１０５】
また、上記実施形態においては、テニスゲームを例として説明したが、ゲーム空間においてプレイヤキャラクタが対戦相手のキャラクタとの間で被打撃オブジェクトを打ち合ってラリーを行うスポーツゲームであれば、本発明を適用することが可能である。例えば、バトミントンのゲームや卓球のゲームであっても本発明を適用することが可能である。なお、卓球ゲームの場合は、人物を模したキャラクタは表示されずにラケットのみが表示されて、プレイヤはラケットのみを移動操作するものも考えられる。このとき、ラケットがプレイヤキャラクタであると考え、ラケットの移動量に応じてゲージ量を増加させるようにすればよい。
【図面の簡単な説明】
【０１０６】
【図１】本発明の一実施形態に係るビデオゲームシステムの一例を示す外観図
【図２】本実施形態のゲーム装置の電気的な構成を示すブロック図
【図３】図２に示すメインメモリのメモリマップの一例を示す図解図
【図４】プレイヤキャラクタに基づくゲージ量補正テーブルの一例を示す図解図
【図５】得点差に基づくゲージ量補正テーブルの一例を示す図解図
【図６】本実施形態のゲーム装置のゲーム動作の一例を示すフローチャート
【図７】図６におけるショット処理の動作の一例を示すフローチャート
【図８】図７における通常ショット動作処理の動作の一例を示すフローチャート
【図９】ゲージが表示されていない場合におけるテニスゲームのゲーム画面の一例を示す図解図
【図１０】図９の後のゲーム画面の一例を示す図解図
【図１１】図１０の後のゲーム画面の一例を示す図解図
【符号の説明】
【０１０７】
１０  ビデオゲームシステム
１２  ゲーム機
１８  光ディスク
２２  コントローラ
２６  操作手段
３４  モニタ
３６  ＣＰＵ
４０  メインメモリ
４２  ＧＰＵ
１０２  プレイヤキャラクタ
１０４  対戦相手キャラクタ
１０７  ボールオブジェクト
１０８ａ，１０８ｂ，１０９ａ，１０９ｂ  ゲージ
【図１】
2005342492.tif 000004
【図２】
2005342492.tif 000005
【図３】
2005342492.tif 000006
【図４】
2005342492.tif 000007
【図５】
2005342492.tif 000008
【図６】
2005342492.tif 000009
【図７】
2005342492.tif 000010
【図８】
2005342492.tif 000011
【図９】
2005342492.tif 000012
【図１０】
2005342492.tif 000013
【図１１】
2005342492.tif 000014