(57)【特許請求の範囲】
【請求項１】
ユーザの所定操作に従って操作対象キャラクタが移動体を打つスポーツゲームを実行するゲーム装置において、
前記所定操作が行われた場合、前記操作対象キャラクタの位置に基づいて設定される判定領域内に前記移動体が位置しているか否かを判定する判定手段と、
前記移動体が前記判定領域内に位置していると判定された場合、前記操作対象キャラクタに前記移動体を打たせる操作対象キャラクタ制御手段と、
前記所定操作が行われたタイミング又は前記操作対象キャラクタが前記移動体を打ったタイミングの少なくとも一方に基づく基準タイミングにおける、前記判定領域内における前記移動体の位置に基づいて、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを制御する判定領域制御手段と、
を含むことを特徴とするゲーム装置。
【請求項２】
請求項１に記載のゲーム装置において、
前記判定領域制御手段は、前記基準タイミングにおける、前記操作対象キャラクタの位置と、前記判定領域内における前記移動体の位置と、の間の距離に基づいて、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを制御することを特徴とするゲーム装置。
【請求項３】
請求項２に記載のゲーム装置において、
前記判定領域制御手段は、
前記基準タイミングにおける、前記操作対象キャラクタの位置と、前記判定領域内における前記移動体の位置と、の間の距離が第１基準距離より大きいか否かを判定する手段と、
前記基準タイミングにおける、前記操作対象キャラクタの位置と、前記判定領域内における前記移動体の位置と、の間の距離が前記第１基準距離より大きい場合、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを現在の大きさよりも小さくする手段と、
前記基準タイミングにおける、前記操作対象キャラクタの位置と、前記判定領域内における前記移動体の位置と、の間の距離が第２基準距離より小さいか否かを判定する手段と、
前記基準タイミングにおける、前記操作対象キャラクタの位置と、前記判定領域内における前記移動体の位置と、の間の距離が前記第２基準距離より小さい場合、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを現在の大きさよりも大きくする手段と、を含む、
ことを特徴とするゲーム装置。
【請求項４】
請求項１に記載のゲーム装置において、
前記判定領域制御手段は、前記基準タイミングにおける、前記判定領域内における前記移動体の位置が、前記判定領域内の部分領域内に含まれるか否かを判定する手段を含み、その判定結果に基づいて、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを制御することを特徴とするゲーム装置。
【請求項５】
請求項４に記載のゲーム装置において、
前記判定領域は、前記操作対象キャラクタの位置を含むように設定される第１領域と、前記第１領域外の領域である第２領域と、を含み、
前記判定領域制御手段は、
前記基準タイミングにおける、前記判定領域内における前記移動体の位置が前記第１領域又は前記第２領域に含まれるか否かを判定する手段と、
前記基準タイミングにおける、前記判定領域内における前記移動体の位置が前記第２領域に含まれる場合、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを現在の大きさよりも小さくする手段と、
前記基準タイミングにおける、前記判定領域内における前記移動体の位置が前記第１領域に含まれる場合、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを現在の大きさよりも大きくする手段と、を含む、
ことを特徴とするゲーム装置。
【請求項６】
ユーザの所定操作に従って操作対象キャラクタが移動体を打つスポーツゲームを実行するゲーム装置の制御方法において、
前記所定操作が行われた場合、前記操作対象キャラクタの位置に基づいて設定される判定領域内に前記移動体が位置しているか否かを判定する判定ステップと、
前記移動体が前記判定領域内に位置していると判定された場合、前記操作対象キャラクタに前記移動体を打たせ、前記移動体が前記判定領域内に位置していないと判定された場合、前記操作対象キャラクタに空振りさせる操作対象キャラクタ制御ステップと、
前記所定操作が行われたタイミング又は前記操作対象キャラクタが前記移動体を打ったタイミングの少なくとも一方に基づく基準タイミングにおける、前記判定領域内における前記移動体の位置に基づいて、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを制御する判定領域制御ステップと、
を含むことを特徴とするゲーム装置の制御方法。
【請求項７】
ユーザの所定操作に従って操作対象キャラクタが移動体を打つスポーツゲームを実行するゲーム装置としてコンピュータを機能させるためのプログラムであって、
前記所定操作が行われた場合、前記操作対象キャラクタの位置に基づいて設定される判定領域内に前記移動体が位置しているか否かを判定する判定手段、
前記移動体が前記判定領域内に位置していると判定された場合、前記操作対象キャラクタに前記移動体を打たせ、前記移動体が前記判定領域内に位置していないと判定された場合、前記操作対象キャラクタに空振りさせる操作対象キャラクタ制御手段、及び、
前記所定操作が行われたタイミング又は前記操作対象キャラクタが前記移動体を打ったタイミングの少なくとも一方に基づく基準タイミングにおける、前記判定領域内における前記移動体の位置に基づいて、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを制御する判定領域制御手段、
として前記コンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はゲーム装置、ゲーム装置の制御方法及びプログラムに関する。
【背景技術】
【０００２】
ユーザの所定操作に応じて操作対象キャラクタが移動体を繰り返す打つスポーツゲームが知られている。例えば、テニスゲームや卓球ゲーム等が知られている。このようなスポーツゲームでは、ユーザが所定操作を行った場合、例えば操作対象キャラクタの位置に基づいて特定される判定領域内に移動体が含まれるか否かが判定される。そして、移動体が判定領域内に含まれる場合、操作対象キャラクタが移動体を打つ様子がゲーム画面に表示され、移動体が判定領域内に含まれない場合、操作対象キャラクタが空振りする様子がゲーム画面に表示される。
【特許文献１】特開２００３−２０５１７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
例えば、実際のテニスの試合では対戦相手によって良いコースにボールが打ち込まれた場合、選手はボールまで十分に近づくことができず、ボールとの間の距離が比較的離れた状態でボールを打たなければならない場合がある。このような場合、選手は体勢を崩してしまい、次に対戦相手から打ち返されたボールを打つまでに体勢を立て直すことができず、無理な体勢でボールを打ち返さなければならなくなってしまう場合がある。従来のテニスゲームは、ボールとの間の距離が比較的離れた状態で選手がボールを打ったことによって体勢を崩してしまうことをユーザに実感させる点で物足りないところがあり、リアリティに欠けるところがあった。卓球ゲーム等についても同様であった。
【０００４】
本発明は上記課題に鑑みてなされたものであって、その目的は、ユーザの所定操作に応じて操作対象キャラクタが移動体を打つスポーツゲームのリアリティを向上できるようになるゲーム装置、ゲーム装置の制御方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明に係るゲーム装置は、ユーザの所定操作に従って操作対象キャラクタが移動体を打つスポーツゲームを実行するゲーム装置において、前記所定操作が行われた場合、前記操作対象キャラクタの位置に基づいて設定される判定領域内に前記移動体が位置しているか否かを判定する判定手段と、前記移動体が前記判定領域内に位置していると判定された場合、前記操作対象キャラクタに前記移動体を打たせる操作対象キャラクタ制御手段と、前記所定操作が行われたタイミング又は前記操作対象キャラクタが前記移動体を打ったタイミングの少なくとも一方に基づく基準タイミングにおける前記移動体の位置に基づいて、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを制御する判定領域制御手段と、を含むことを特徴とする。
【０００６】
また、本発明に係るゲーム装置の制御方法は、ユーザの所定操作に従って操作対象キャラクタが移動体を打つスポーツゲームを実行するゲーム装置の制御方法において、前記所定操作が行われた場合、前記操作対象キャラクタの位置に基づいて設定される判定領域内に前記移動体が位置しているか否かを判定する判定ステップと、前記移動体が前記判定領域内に位置していると判定された場合、前記操作対象キャラクタに前記移動体を打たせ、前記移動体が前記判定領域内に位置していないと判定された場合、前記操作対象キャラクタに空振りさせる操作対象キャラクタ制御ステップと、前記所定操作が行われたタイミング又は前記操作対象キャラクタが前記移動体を打ったタイミングの少なくとも一方に基づく基準タイミングにおける前記移動体の位置に基づいて、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを制御する判定領域制御ステップと、を含むことを特徴とする。
【０００７】
また、本発明に係るプログラムは、ユーザの所定操作に従って操作対象キャラクタが移動体を打つスポーツゲームを実行するゲーム装置として、据置型ゲーム機（家庭用ゲーム機）、携帯ゲーム機、業務用ゲーム機、携帯電話機、携帯情報端末（ＰＤＡ）又はパーソナルコンピュータなどのコンピュータを機能させるためのプログラムであって、前記所定操作が行われた場合、前記操作対象キャラクタの位置に基づいて設定される判定領域内に前記移動体が位置しているか否かを判定する判定手段、前記移動体が前記判定領域内に位置していると判定された場合、前記操作対象キャラクタに前記移動体を打たせ、前記移動体が前記判定領域内に位置していないと判定された場合、前記操作対象キャラクタに空振りさせる操作対象キャラクタ制御手段、及び、前記所定操作が行われたタイミング又は前記操作対象キャラクタが前記移動体を打ったタイミングの少なくとも一方に基づく基準タイミングにおける前記移動体の位置に基づいて、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを制御する判定領域制御手段、として前記コンピュータを機能させるためのプログラムである。
【０００８】
また、本発明に係る情報記憶媒体は、上記プログラムを記録したコンピュータ読み取り可能な情報記憶媒体である。また、本発明に係るプログラム配信装置は、上記プログラムを記録した情報記憶媒体を備え、当該情報記憶媒体から上記プログラムを読み出し、配信するプログラム配信装置である。また、本発明に係るプログラム配信方法は、上記プログラムを記録した情報記憶媒体から上記プログラムを読み出し、配信するプログラム配信方法である。
【０００９】
本発明は、ユーザの所定操作に従って操作対象キャラクタが移動体を打つスポーツゲームを実行するゲーム装置に関するものである。本発明では、所定操作が行われた場合、操作対象キャラクタの位置に基づいて設定される判定領域内に移動体が位置しているか否かが判定される。移動体が判定領域内に位置していると判定された場合、操作対象キャラクタが移動体を打つように制御される。さらに、「所定操作が行われたタイミング」又は「操作対象キャラクタが移動体を打ったタイミング」の少なくとも一方に基づく基準タイミングにおける移動体の位置に基づいて、操作対象キャラクタが移動体を打った後における判定領域の大きさが制御される。本発明によれば、例えば、ボールとの間の距離が比較的離れた状態で選手がボールを打ったことによって体勢を崩してしまうことをユーザに実感させることが可能になり、その結果として、ユーザの所定操作に応じて操作対象キャラクタが移動体を打つスポーツゲームのリアリティを向上できるようになる。
【００１０】
また、本発明の一態様では、前記判定領域制御手段は、前記基準タイミングにおける前記操作対象キャラクタの位置と前記移動体の位置との間の距離に基づいて、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを制御するようにしてもよい。
【００１１】
この態様では、前記判定領域制御手段は、前記基準タイミングにおける前記操作対象キャラクタの位置と前記移動体の位置との間の距離が第１基準距離より大きいか否かを判定する手段と、前記基準タイミングにおける前記操作対象キャラクタの位置と前記移動体の位置との間の距離が前記第１基準距離より大きい場合、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを現在の大きさよりも小さくする手段と、前記基準タイミングにおける前記操作対象キャラクタの位置と前記移動体の位置との間の距離が第２基準距離より小さいか否かを判定する手段と、前記基準タイミングにおける前記操作対象キャラクタの位置と前記移動体の位置との間の距離が前記第２基準距離より小さい場合、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを現在の大きさよりも大きくする手段と、を含むようにしてもよい。
【００１２】
また、本発明の一態様では、前記判定領域制御手段は、前記基準タイミングにおける前記移動体の位置が、前記判定領域内の部分領域内に含まれるか否かを判定する手段を含み、その判定結果に基づいて、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを制御するようにしてもよい。
【００１３】
この態様では、前記判定領域は、前記操作対象キャラクタの位置を含むように設定される第１領域と、前記第１領域外の領域である第２領域と、を含み、前記判定領域制御手段は、前記基準タイミングにおける前記移動体の位置が前記第１領域又は前記第２領域に含まれるか否かを判定する手段と、前記基準タイミングにおける前記移動体の位置が前記第２領域に含まれる場合、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを現在の大きさよりも小さくする手段と、前記基準タイミングにおける前記移動体の位置が前記第１領域に含まれる場合、前記操作対象キャラクタが前記移動体を打った後における前記判定領域の大きさを現在の大きさよりも大きくする手段と、を含むようにしてもよい。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施形態の一例について図面に基づき詳細に説明する。ここでは、本発明の実施形態に係るゲーム装置を携帯ゲーム機を用いて実現する場合について説明する。なお、本発明の実施形態に係るゲーム装置は、据置型ゲーム機（家庭用ゲーム機）、業務用ゲーム機、携帯電話機、携帯情報端末（ＰＤＡ）又はパーソナルコンピュータ等を用いて実現することも可能である。
【００１５】
図１及び図２は本実施の形態に係るゲーム装置１０の外観を示す。図３は本実施の形態に係るゲーム装置１０のハードウェア構成を示す。
【００１６】
図１はゲーム装置１０を正面前方から見た様子を表す斜視図である。図１に示すように、ゲーム装置１０は第１筐体２０と第２筐体３０とを含む。第１筐体２０と第２筐体３０とはヒンジ部１４を介して結合される。第１筐体２０の表面２０ａにはタッチスクリーン２２、十字ボタン２４ｃ、ボタン２４ａ，２４ｂ，２４ｘ，２４ｙが設けられている。タッチスクリーン２２は第１液晶表示部２２ａとタッチパネル２２ｂとを含む（図３参照）。タッチパネル２２ｂは第１液晶表示部２２ａの上に重ねられる。十字ボタン２４ｃは上指示部２４ｃｕ、下指示部２４ｃｂ、左指示部２４ｃｌ、右指示部２４ｃｒを含み、例えば方向指示操作に用いられる。ボタン２４ａ，２４ｂ，２４ｘ，２４ｙは各種操作に用いられる。第２筐体３０の表面３０ａには第２液晶表示部３２が設けられている。また第２筐体３０にはスピーカ３４が内蔵されている。
【００１７】
図２は、折り畳み状態（第１筐体２０の表面２０ａと第２筐体３０の表面３０ａとが合わされた状態）のゲーム装置１０の背面図である。図２に示すように、第１筐体２０の背面側側面の左右にはボタン２４ｌ，２４ｒがそれぞれ設けられる。また、第１筐体２０の背面側側面の中央には、情報記憶媒体であるゲームメモリカード４０（図３参照）を装着可能なメモリカードスロット２６が設けられている。なお、ゲーム装置１０には電源スイッチ等の図示しない他の部材も取り付けられている。
【００１８】
図３に示すように、ゲーム装置１０はタッチスクリーン２２（第１液晶表示部２２ａ及びタッチパネル２２ｂ）、操作キー部２４、メモリカードスロット２６、第２液晶表示部３２、スピーカ３４、バス４２、マイクロプロセッサ４４、主記憶４６、画像処理部４８、入出力処理部５０、音声処理部５２、通信インタフェース５４を含む。これらは電池（図示せず）とともに筐体内に収容されており、該電池により駆動される。
【００１９】
マイクロプロセッサ４４は、図示しないＲＯＭに格納されるオペレーティングシステムや、ゲームメモリカード４０に格納されるプログラムやデータに基づいてゲーム装置１０の各部を制御する。主記憶４６は例えばＲａＭを含んで構成される。ゲームメモリカード４０から読み出されたプログラムが主記憶４６に必要に応じて書き込まれる。主記憶４６はマイクロプロセッサ４４の作業用メモリとしても用いられる。バス４２はアドレス及びデータをゲーム装置１０の各部でやり取りするために用いられる。マイクロプロセッサ４４、主記憶４６、画像処理部４８及び入出力処理部５０は、バス４２によって相互データ通信可能に接続される。
【００２０】
第１液晶表示部２２ａ及び第２液晶表示部３２は公知の液晶表示パネルである。画像処理部４８はＶＲａＭを含む。画像処理部４８はマイクロプロセッサ４４からの指示に従って画像をＶＲａＭ上に描画する。ＶＲａＭ上に描画された画像は所定のタイミングで第１液晶表示部２２ａや第２液晶表示部３２に表示される。
【００２１】
入出力処理部５０は、マイクロプロセッサ４４がタッチパネル２２ｂ、操作キー部２４、メモリカードスロット２６、音声処理部５２、通信インタフェース５４とデータ授受するためのインタフェースである。入出力処理部５０にはタッチパネル２２ｂ、操作キー部２４、メモリカードスロット２６、音声処理部５２、通信インタフェース５４が接続される。
【００２２】
操作キー部２４はユーザが操作入力を行うための入力手段である。操作キー部２４は十字ボタン２４ｃ、ボタン２４ａ，２４ｂ，２４ｘ，２４ｙ，２４ｌ，２４ｒを含む。入出力処理部５０は一定周期ごと（例えば１／６０秒ごと）に操作キー部２４の各部の状態をスキャンし、そのスキャン結果を表す操作信号をバス４２を介してマイクロプロセッサ４４に供給する。マイクロプロセッサ４４はユーザの操作内容をその操作信号に基づいて判断する。タッチパネル２２ｂもユーザが操作入力を行うための入力手段である。タッチパネル２２ｂは、ユーザによって押圧された位置に応じた押圧位置情報を入出力処理部５０を介してマイクロプロセッサ４４に供給する。マイクロプロセッサ４４はユーザが押圧したタッチパネル２２ｂ上の位置をその押圧位置情報に基づいて判断する。
【００２３】
メモリカードスロット２６はゲームメモリカード４０に記憶されたゲームプログラムやゲームデータをマイクロプロセッサ４４からの指示に従って読み出す。ゲームメモリカード４０は、ゲームプログラムやゲームデータが記憶されるＲＯＭと、例えばセーブデータ等のゲームデータが記憶されるＥＥＰＲＯＭと、を含む。なお、ここでは、ゲームプログラムやゲームデータをゲーム装置１０に供給するためにゲームメモリカード４０を用いるが、光ディスクなどの他の情報記憶媒体を用いるようにしてもよい。または、インターネット等の通信ネットワークを介して遠隔地からゲームプログラムやゲームデータをゲーム装置１０に供給するようにしてもよい。あるいは、赤外線通信等の各種データ通信を利用してゲームプログラムやゲームデータをゲーム装置１０に供給するようにしてもよい。
【００２４】
音声処理部５２はサウンドバッファを含む。音声処理部５２はゲームメモリカード４０からサウンドバッファに読み出された各種音声データをスピーカ３４から出力する。通信インタフェース５４はゲーム装置１０を通信ネットワークに接続するためのインタフェースである。
【００２５】
上記の構成を有するゲーム装置１０ではテニスゲームが実行される。テニスゲームはゲームメモリカード４０に記憶されたプログラムが実行されることによって実現される。
【００２６】
図４はテニスゲームのゲーム画面の一例を示す。図４に示すように、ゲーム画面６０にはテニスコートが表されるとともに、操作対象キャラクタ６２と対戦相手キャラクタ６４とボール６６（移動体）とが表示される。操作対象キャラクタ６２はユーザによって操作されるゲームキャラクタである。操作対象キャラクタ６２はユーザの方向指示操作に従って移動し、ユーザのショット指示動作に従ってラケットを振る。一方、対戦相手キャラクタ６４はマイクロプロセッサ４４又は対戦相手ユーザによって操作されるゲームキャラクタである。ユーザは、対戦相手キャラクタ６４が自コート６８ａ内に向けて打ってきたボール６６を操作対象キャラクタ６２に対戦相手コート６８ｂ内に向かって打ち返させるべく、操作対象キャラクタ６２を操作する。
【００２７】
特に本実施の形態では、ショット可能領域案内画像７０が表示される。ショット可能領域案内画像７０は、操作対象キャラクタ６２のショット可能領域を案内するための画像である。ショット可能領域とは、操作対象キャラクタ６２がショット可能なボール６６の位置の範囲である。後述するように、ショット可能領域は操作対象キャラクタ６２の位置に基づいて設定される。このため、ショット可能領域案内画像７０の表示位置は操作対象キャラクタ６２の位置に基づいて決定される。また、ショット可能領域案内画像７０は、ショット可能領域のうちの第１領域を案内する第１領域部分７２と、ショット可能領域のうちの第２領域を案内する第２領域部分７４と、を含む。
【００２８】
ここで、ショット可能領域について詳しく説明する。図５はショット可能領域の一例を示す。図５において、Ｆ方向は操作対象キャラクタ６２の前方方向（正面方向）を示す。なお、ここでは、操作対象キャラクタ６２、対戦相手キャラクタ６４やボール６６が２次元ゲーム空間に配置される場合を例に説明する。すなわち、操作対象キャラクタ６２、対戦相手キャラクタ６４やボール６６の位置等がスクリーン座標系（２つの座標要素）で管理される場合を例に説明する。
【００２９】
図５に示すように、ショット可能領域８０は、横長の楕円の右側の長半径（以下、「第１長半径」と記載する。）８６ａの長さをＲａに、左側の長半径（以下、「第２長半径」と記載する。）８６ｂの長さをＲｂに、短半径８８の長さをＲｃに設定して変形することによって得られる形状の領域になっている。言い換えれば、ショット可能領域８０は、長半径の長さがＲａであって、かつ、短半径の長さがＲｃである横長の楕円の右半分部分と、長半径の長さがＲｂであって、かつ、短半径の長さがＲｃである横長の楕円の左半分部分と、を結合して得られる領域になっている。
【００３０】
ショット可能領域８０は第１領域８２と第２領域８４とを含む。第１領域８２は半径が所定長（Ｒｄ）である円形領域であり、第２領域８４はショット可能領域８０から第１領域８２を除いた領域である。第１領域８２の中心点８３は、操作対象キャラクタ６２の位置（足元位置）に設定される。また、ショット可能領域８０は、ショット可能領域８０の基準点８１ａが第１領域８２の中心点８３から前方（Ｆ方向）に所与の距離（Ｌ）離れた位置となるように設定される。ショット可能領域８０の基準点８１ａと第１領域８２の中心点８３との間の距離Ｌは、ショット可能領域８０の短軸とショット可能領域８０の境界線８１ｂとの交点８１ｃ（操作対象キャラクタ６２の後方側の交点）でショット可能領域８０と第１領域８２とが接するように調整されるようになっている。ショット可能領域８０の基準点８１ａとは変形前の楕円の中心点に相当する点である。なお、ショット可能領域８０と第１領域８２とが交点８１ｃで接しないようにしてもよい。すなわち、第１領域８２の後方に第２領域８４が存在してもよい。例えば、ショット可能領域８０の基準点８１ａと第１領域８２の中心点８３とが一致するようにしてもよい。
【００３１】
上述したように、ショット可能領域８０は、第１領域８２の中心点８３が操作対象キャラクタ６２の位置（足元位置）に一致するようにして設定される。このため、ショット可能領域８０は操作対象キャラクタ６２に従動する。また、第１領域８２は、操作対象キャラクタ６２の位置からの距離が所定距離（Ｒｄ）以内である領域ということができる。また、第２領域８４は、ショット可能領域８０内の領域であって、かつ、操作対象キャラクタ６２の位置からの距離が所定距離（Ｒｄ）よりも大きい領域ということができる。
【００３２】
ショット可能領域８０の第１長半径８６ａ、第２長半径８６ｂ、短半径８８の長さ（Ｒａ，Ｒｂ，Ｒｃ）は、操作対象キャラクタ６２の能力パラメータの値に基づいて決定される。ここで、操作対象キャラクタ６２の利き腕が右腕である場合を想定する。この場合、操作対象キャラクタ６２の右腕側である第１長半径８６ａの長さ（Ｒａ）は、操作対象キャラクタ６２のフォアハンドパラメータの値に基づいて決定される。フォアハンドパラメータとは、フォアハンド能力（ボール６６をフォアハンドで打つ能力）の高さを示すパラメータである。操作対象キャラクタ６２のフォアハンド能力が高いほど、第１長半径８６ａの長さ（Ｒａ）は長く設定される。また、操作対象キャラクタ６２の左腕側である第２長半径８６ｂの長さ（Ｒｂ）は、操作対象キャラクタ６２のバックハンドパラメータの値に基づいて決定される。バックハンドパラメータとは、バックハンド能力（ボール６６をバックハンドで打つ能力）の高さを示すパラメータである。操作対象キャラクタ６２のバックハンド能力が高いほど、第２長半径８６ｂの長さ（Ｒｂ）は長く設定される。また、短半径８８の長さ（Ｒｃ）は例えば第１長半径８６ａ、第２長半径８６ｂの長さ（Ｒａ，Ｒｂ）に基づいて決定される。例えば、短半径８８の長さ（Ｒｃ）は、第１長半径８６ａと第２長半径８６ｂとのいずれか短い方の長さに所定割合（例えば８０％）を乗じることによって得られる長さに設定される。なお、短半径８８の長さ（Ｒｃ）は、操作対象キャラクタ６２のフォアハンドパラメータ及びバックハンドパラメータ以外の能力パラメータの値に基づいて決定されるようにしてもよい。
【００３３】
操作対象キャラクタ６２にボール６６をショットさせるために、ユーザはボール６６がショット可能領域８０内に含まれるタイミングを見計らって、ショット指示ボタン（例えばボタン２４ａ）を押下する必要がある。ボール６６がショット可能領域８０内に含まれないタイミングでユーザがショット指示ボタンを押下した場合、操作対象キャラクタ６２は空振りする。一方、ボール６６がショット可能領域８０内に含まれるタイミングでユーザがショット指示ボタンを押下した場合、操作対象キャラクタ６２はショット動作を行い、ラケットでボール６６を打ち返す。
【００３４】
ユーザは、ボール６６を打ち返す領域を十字ボタン２４ｃを用いて指示することができる。図６及び図７は、ボール６６を打ち返す領域の指示について説明するための図である。図６は、対戦相手コート６８ｂ内に設定される複数の目標領域Ａ〜Ｉについて示す図である。また図７は、目標領域Ａ〜Ｉと、その目標領域を指示するためにユーザが行うべき十字ボタン２４ｃの操作内容と、を対応づけてなるデータの一例を示す図である。例えば、ボール６６を目標領域Ａ内に打ち返すことを操作対象キャラクタ６２に対して指示する場合、ユーザは十字ボタン２４ｃの上指示部２４ｃｕ及び左指示部２４ｃｌを押下しながらショット指示ボタンを押下する。また例えば、ボール６６を目標領域Ｅ内に打ち返すことを操作対象キャラクタ６２に対して指示する場合、ユーザは十字ボタン２４ｃを押下していない状態でショット指示ボタンを押下する。
【００３５】
ユーザによって指示された目標領域内に向かってボール６６が移動するか否かは、ユーザがショット指示ボタンを押下したタイミングでボール６６が第１領域８２又は第２領域８４のいずれに含まれていたかに基づいて決定される。ボール６６が第１領域８２内に位置しているタイミングでユーザがショット指示ボタンを押下した場合、ユーザが指定した目標領域内にボール６６が確実に打ち返される。一方、ボール６６が第２領域８４内に位置しているタイミングでユーザがショット指示ボタンを押下した場合、ショットの精度が低下し、ユーザが指定した目標領域内にボール６６が打ち返されない場合も生じる。なお、ショット可能領域８０の境界線８１ｂ上にボール６６が位置しているタイミングでユーザがショット指示ボタンを押下した場合、操作対象キャラクタ６２はボール６６の方に向かって飛びつきながらボール６６を打ち返す。この場合、一定期間、操作対象キャラクタ６２は行動不能になる。
【００３６】
以上のように、操作対象キャラクタ６２にボール６６を打ち返させるために、ユーザは、ボール６６がショット可能領域８０内に含まれるタイミングでショット指示ボタンを押下する必要がある。また、操作対象キャラクタ６２にボール６６をユーザが指示した目標領域内に確実に打ち返させるために、ユーザはボール６６が第１領域８２内に含まれるタイミングでショット指示ボタンを押下する必要がある。本実施の形態では、ユーザは、ショット可能領域案内画像７０（第１領域部分７２及び第２領域部分７４）を頼りに、ボール６６がショット可能領域８０（第１領域８２及び第２領域８４）内に含まれるタイミングであるか否かを把握できる。なお本実施の形態のように、操作対象キャラクタ６２やボール６６の位置等がスクリーン座標系（２つの座標要素）で管理される場合、ショット可能領域８０はショット可能領域案内画像７０の表示領域に一致することになる。また、第１領域８２はショット可能領域案内画像７０の第１領域部分７２の表示領域に一致し、第２領域８４はショット可能領域案内画像７０の第２領域部分７４の表示領域に一致することになる。
【００３７】
本実施の形態では、特に、ショット可能領域８０（第２領域８４）の大きさが変化するようになっている。すなわち、ボール６６が第２領域８４内に含まれるタイミングでユーザがショット指示ボタンを押下するごとに、ショット可能領域８０（第２領域８４）の大きさが小さくなっていく。より具体的には、ボール６６が第２領域８４内に含まれるタイミングでユーザがショット指示ボタンを押下するごとに、ショット可能領域８０の第１長半径８６ａ、第２長半径８６ｂ、短半径８８の長さ（Ｒａ，Ｒｂ，Ｒｃ）が短くなっていく。また、ショット可能領域８０（第２領域８４）の大きさが初期状態よりも小さくなっている状態において、ボール６６が第２領域８４内に含まれるタイミングでユーザがショット指示ボタンを押下すると、ショット可能領域８０の第１長半径８６ａ、第２長半径８６ｂ、短半径８８の長さ（Ｒａ，Ｒｂ，Ｒｃ）が初期値に戻る。なお、第１領域８２の半径の長さ（Ｒｄ）は変化しないようになっている。
【００３８】
実際のテニスの試合では対戦相手が良いコースにボールを打ち込んできた場合、選手はボールまで十分に近づくことができず、ボールとの間の距離が比較的離れた状態でボールを打たなければならない場合がある。このような場合、選手は体勢を崩してしまい、次に対戦相手から打ち返されたボールを打つまでに体勢を立て直すことができず、無理な体勢でボールを打ち返さなければならなくなる。無理な体勢でボールを打ち返そうとすると、通常、ボールを打ち返すことができる領域（ラケットの届く領域）が狭くなる。この点、ゲーム装置１０では、ボール６６が第２領域８４内に位置しているタイミングでユーザがショット指示ボタンを押下した場合（すなわち、ボール６６が第２領域８４内に位置している状態で操作対象キャラクタ６２がボール６６を打ち返した場合）、操作対象キャラクタ６２のショット可能領域８０（第２領域８４）が狭くなるようになっている。その結果、操作対象キャラクタ６２が体勢を崩したことをユーザが実感できるようになっている。
【００３９】
また、実際のテニスの試合では選手が体勢を崩した場合、選手は、対戦相手から打ち返されたボールを無理な体勢で打ち返さなければならなくなり、さらに体勢を崩してしまう場合がある。この点、ゲーム装置１０では、ボール６６が第２領域８４内に位置しているタイミングでユーザがショット指示ボタンを押下するごとに（すなわち、ボール６６が第２領域８４内に位置している状態で操作対象キャラクタ６２がボール６６を打ち返すごとに）、操作対象キャラクタ６２のショット可能領域８０（第２領域８４）が徐々に狭くなるようになっている。その結果、操作対象キャラクタ６２の体勢が徐々に悪くなっていくことをユーザが実感できるようになっている。
【００４０】
また、実際のテニスの試合では選手が体勢を崩した場合でも、選手が体勢を立て直し、
良いショットを行う場合がある。この点、ゲーム装置１０では、操作対象キャラクタ６２のショット可能領域８０（第２領域８４）が初期状態よりも狭くなっている状態で、ユーザが、ボール６６が第１領域８２内に位置しているタイミングでショット指示ボタンを押下した場合（すなわち、ボール６６が第１領域８２内に位置している状態で操作対象キャラクタ６２がボール６６を打ち返した場合）、操作対象キャラクタ６２のショット可能領域８０（第２領域８４）が初期状態に戻るようになっている。その結果、体勢を崩した操作対象キャラクタ６２が体勢を立て直したことをユーザが実感できるようになっている。
【００４１】
図８はゲーム装置１０で実現される機能のうち、本発明に関連する機能を示す機能ブロック図である。図８に示すように、ゲーム装置１０は、ゲームデータ記憶部９０と、ゲーム状況データ更新部９２と、表示制御部９４と、を機能的に含む。これらの機能ブロックはゲーム装置１０がプログラムを実行することによって実現される。
【００４２】
ゲームデータ記憶部９０は例えばゲームメモリカード４０や主記憶４６によって実現される。ゲームデータ記憶部９０はテニスゲームに関する各種データを記憶する。例えば、ゲームデータ記憶部９０は操作対象キャラクタ６２や対戦相手キャラクタ６４の各種能力の高さを示す能力パラメータを記憶する。例えば、フォアハンドパラメータやバックハンドパラメータが記憶される。
【００４３】
ゲームデータ記憶部９０はゲーム状況データ記憶部９０ａを含む。ゲーム状況データ記憶部９０ａはテニスゲームの現在状況を示すゲーム状況データを記憶する。例えば、ゲーム状況データは現在の得点状況を示すデータを含む。またゲーム状況データは、操作対象キャラクタ６２及び対戦相手キャラクタ６４の現在の状態（位置、姿勢や動作内容等）を示すデータを含む。また、ゲーム状況データはボール６６の現在の状態（位置、移動速度・方向等）を示すデータを含む。
【００４４】
また、ゲーム状況データはショット可能領域８０の現在の状態を示すデータを含む。例えば、ゲーム状況データ記憶部９０ａは、ショット可能領域８０の基準点８１ａの位置、第１長半径８６ａの長さ（Ｒａ）の初期値（テニスゲーム開始時における値）、第２長半径８６ｂの長さ（Ｒｂ）の初期値、短半径８８の長さ（Ｒｃ）の初期値、第１領域８２の中心点８３の位置等が記憶されるとともに、ショット可能領域８０の現在の縮小係数（ｋ）を記憶する。縮小係数（ｋ）は、第１長半径８６ａの長さ（Ｒａ）、第２長半径８６ｂの長さ（Ｒｂ）や、短半径８８の長さ（Ｒｃ）を初期値からどれだけ縮小するかを示す数値である。縮小係数（ｋ）は０から１までの値をとる。
【００４５】
第１長半径８６ａの長さ（Ｒａ）の初期値は次のようにして決定される。例えば、フォアハンドパラメータ又はバックハンドパラメータの値と、第１長半径８６ａの長さ（Ｒａ）の初期値と、を対応づけてなるデータがゲームデータ記憶部９０（ゲームメモリカード４０）に記憶される。このデータは、フォアハンドパラメータ又はバックハンドパラメータの値が高くなると（操作対象キャラクタ６２のフォアハンド能力又はバックハンド能力が高くなると）、第１長半径８６ａの長さ（Ｒａ）の初期値が大きくなるように設定される。また、このデータは演算式形式のデータであってもよいし、テーブル形式のデータであってもよい。例えば操作対象キャラクタ６２の利き腕が右腕である場合、このデータと、操作対象キャラクタ６２のフォアハンドパラメータの値と、に基づいて、第１長半径８６ａの長さ（Ｒａ）の初期値が算出される。また例えば操作対象キャラクタ６２の利き腕が左腕である場合、このデータと、操作対象キャラクタ６２のバックハンドパラメータの値と、に基づいて、第１長半径８６ａの長さ（Ｒａ）の初期値が算出される。第２長半径８６ｂの長さ（Ｒｂ）の初期値も第１長半径８６ａと同様にして決定される。また、短半径８８の長さ（Ｒｃ）の初期値は次のようにして決定される。例えば、短半径８８の長さ（Ｒｃ）の初期値は、第１長半径８６ａの長さ（Ｒａ）及び第２長半径８６ｂの長さ（Ｒｂ）の短い方に所定係数（例えば０．８）を乗じることによって算出される。なお、第１領域８２の半径の長さ（Ｒｄ）は固定値であり、ゲームデータ記憶部９０（ゲームメモリカード４０）に記憶される。また、縮小係数（ｋ）の初期値は１である。
【００４６】
ゲーム状況データ更新部９２はマイクロプロセッサ４４を主として実現される。ゲーム状況データ更新部９２はゲーム状況データを更新する。ゲーム状況データ更新部９２は操作対象キャラクタ６２の状態データをユーザの操作内容に基づいて更新する。例えば、操作対象キャラクタ６２の位置データがユーザの方向指示操作の内容に基づいて更新される。また、ゲーム状況データ更新部９２は対戦相手キャラクタ６４の状態データを所定のアルゴリズムに従って更新する。また、ゲーム状況データ更新部９２はボール６６の状態データを更新する。さらに、ゲーム状況データ更新部９２は得点状況データも更新する。
【００４７】
ゲーム状況データ更新部９２は判定部９２ａ、操作対象キャラクタ制御部９２ｂ、ショット可能領域制御部９２ｃ（判定領域制御手段）を含む。
【００４８】
判定部９２ａは、ユーザがショット指示操作（ショット指示ボタンの押下）を行った場合、操作対象キャラクタ６２の位置に基づいて設定されるショット可能領域８０（判定領域）内にボール６６が位置しているか否かを判定する。
【００４９】
操作対象キャラクタ制御部９２ｂは、ユーザがショット指示操作（ショット指示ボタンの押下）を行った場合、判定部９２ａの判定結果に基づいて操作対象キャラクタ６２を動作させる。ボール６６がショット可能領域８０内に位置していると判定された場合、操作対象キャラクタ制御部９２ｂは操作対象キャラクタ６２にボール６６を打ち返させる。一方、ボール６６がショット可能領域８０内に位置していないと判定された場合、操作対象キャラクタ制御部９２ｂは操作対象キャラクタ６２に空振りさせる。
【００５０】
ショット可能領域制御部９２ｃは、ショット指示操作が行われたタイミング又は操作対象キャラクタ６２がボール６６を打ったタイミングの少なくとも一方に基づく基準タイミングにおけるボール６６の位置に基づいて、操作対象キャラクタ６２がボール６６を打った後における操作対象キャラクタ６２のショット可能領域８０の大きさを制御する。
【００５１】
ここで、基準タイミングは、例えばショット指示操作が行われたタイミング自体である。または、基準タイミングは、例えばショット指示操作が行われる直前のタイミングであってもよい。または、基準タイミングは、例えば操作対象キャラクタ６２がボール６６を打ったタイミング自体であってもよい。または、基準タイミングは、例えばショット指示操作が行われてから操作対象キャラクタ６２がボール６６を打つまでの間のタイミングであってよい。
【００５２】
例えば、ショット可能領域制御部９２ｃは、基準タイミングにおける操作対象キャラクタ６２の位置とボール６６の位置との間の距離に基づいて、操作対象キャラクタ６２がボール６６を打った後におけるショット可能領域８０の大きさを制御する。
【００５３】
より具体的には、ショット可能領域制御部９２ｃは、基準タイミングにおける操作対象キャラクタ６２の位置とボール６６の位置との間の距離が第１基準距離より大きいか否かを判定する。そして、基準タイミングにおける操作対象キャラクタ６２の位置とボール６６の位置との間の距離が第１基準距離より大きいと判定された場合、ショット可能領域制御部９２ｃは、操作対象キャラクタ６２がボール６６を打った後におけるショット可能領域８０の大きさを現在の大きさよりも小さくする。また、ショット可能領域制御部９２ｃは、基準タイミングにおける操作対象キャラクタ６２の位置とボール６６の位置との間の距離が第２基準距離以下であるか否かを判定する。ショット可能領域８０の大きさが元々の大きさよりも小さくなっている状態において、基準タイミングにおける操作対象キャラクタ６２の位置とボール６６の位置との間の距離が第２基準距離以下であると判定された場合、ショット可能領域制御部９２ｃは、操作対象キャラクタ６２がボール６６を打った後におけるショット可能領域８０の大きさを元々の大きさまで大きくする。本実施の形態では、第１基準距離と第２基準距離とが同じ距離（Ｒｄ）になっている。すなわち、基準タイミングにおける操作対象キャラクタ６２の位置とボール６６の位置との間の距離がＲｄより大きい場合、操作対象キャラクタ６２がボール６６を打った後におけるショット可能領域８０の大きさが現在の大きさよりも小さくなる。また、ショット可能領域８０の大きさが元々の大きさよりも小さくなっている状態において、基準タイミングにおける操作対象キャラクタ６２の位置とボール６６の位置との間の距離がＲｄ以下である場合、操作対象キャラクタ６２がボール６６を打った後におけるショット可能領域８０の大きさが元々の大きさまで大きくなる。なお、第１基準距離と第２基準距離とは異なる距離としてもよい。ただし、第１基準距離は第２基準距離よりも大きい距離に設定される。
【００５４】
また例えば、ショット可能領域制御部９２ｃは、基準タイミングにおけるボール６６の位置がショット可能領域８０内の部分領域内に含まれるか否かを判定する。そして、ショット可能領域制御部９２ｃは、その判定結果に基づいて、操作対象キャラクタ６２がボール６６を打った後におけるショット可能領域８０の大きさを制御する。
【００５５】
本実施の形態におけるショット可能領域制御部９２ｃは、基準タイミングにおけるボール６６の位置が第１領域８２（第１部分領域）又は第２領域８４（第２部分領域）に含まれるか否かを判定する。基準タイミングにおけるボール６６の位置が第２領域８４に含まれると判定された場合、操作対象キャラクタ６２がボール６６を打った後におけるショット可能領域８０の大きさを現在の大きさよりも小さくする。また、ショット可能領域８０の大きさが元々の大きさよりも小さくなっている状態において、基準タイミングにおけるボール６６の位置が第１領域８２に含まれると判定された場合、ショット可能領域制御部９２ｃは、操作対象キャラクタ６２がボール６６を打った後におけるショット可能領域８０の大きさを元々の大きさまで大きくする。
【００５６】
表示制御部９４はマイクロプロセッサ４４及び画像処理部４８を主として実現される。表示制御部９４は、ゲームデータ記憶部９０の記憶内容に基づいて、第１液晶表示部２２ａ又は第２液晶表示部３２にゲーム画面６０を表示する。
【００５７】
次に、ゲーム装置１０で実行される処理について説明する。図９は、ショット指示操作が行われた場合にゲーム装置１０が実行する処理を示すフロー図である。マイクロプロセッサ４４はゲームメモリカード４０に記憶されたプログラムに従って、図９に示す処理を実行する。
【００５８】
図９に示すように、まずマイクロプロセッサ４４（判定部９２ａ）はボール６６の位置が操作対象キャラクタ６２のショット可能領域８０内であるか否かを判定する（Ｓ１０１）。このとき、ショット可能領域８０は操作対象キャラクタ６２の現在位置に基づいて特定される。また、第１長半径８６ａの長さの初期値（ＲＯａ）と、縮小係数（ｋ）の現在値と、に基づいて、第１長半径８６ａの長さ（Ｒａ）はＲＯａ＊ｋに設定される。なお、「＊」は乗算演算子である。同様に、第２長半径８６ｂの長さの初期値（ＲＯｂ）と、縮小係数（ｋ）の現在値と、に基づいて、第２長半径８６ｂの長さ（Ｒｂ）はＲＯｂ＊ｋに設定される。また、短半径８８の長さ（Ｒｃ）の初期値（ＲＯｃ）と、縮小係数（ｋ）の現在値と、に基づいて、短半径８８の長さ（Ｒｃ）はＲＯｃ＊ｋに設定される。また、ショット可能領域８０の基準点８１ａと第１領域８２の中心点８３との間の距離（Ｌ）はＲｃ−Ｒｄに設定される。なお、ＲＯａ＊ｋの値が第１領域８２の半径の長さ（Ｒｄ）よりも小さい場合には、第１長半径８６ａの長さ（Ｒａ）は第１領域８２の半径と同じ長さ（Ｒｄ）に設定される。第２長半径８６ｂの長さ（Ｒｂ）や短半径８８の長さ（Ｒｃ）についても同様である。これは、ショット可能領域８０の大きさが第１領域８２の大きさよりも小さくならないようにするためである。
【００５９】
このステップ（Ｓ１０１）では、ボール６６の代表点（例えば中心点）がショット可能領域内に含まれる場合、ボール６６の位置がショット可能領域８０内であると判定される。なお、ボール６６の少なくとも一部がショット可能領域８０内に含まれる場合、ボール６６の位置がショット可能領域８０内であると判定するようにしてもよい。または、ボール６６全体がショット可能領域８０内に含まれる場合にのみ、ボール６６の位置がショット可能領域８０内であると判定するようにしてもよい。
【００６０】
ボール６６の位置が操作対象キャラクタ６２のショット可能領域８０内でない場合、マイクロプロセッサ４４（操作対象キャラクタ制御部９２ｂ）は、操作対象キャラクタ６２が空振りするように、操作対象キャラクタ６２やボール６６の状態データを更新する（Ｓ１１３）。
【００６１】
一方、ボール６６の位置が操作対象キャラクタ６２のショット可能領域８０内である場合、マイクロプロセッサ４４は、ユーザによって指示された目標領域内でボール６６の移動目標位置を決定する（Ｓ１０２）。このステップでは、まず十字ボタン２４ｃの操作状態が判断される。そして、十字ボタン２４ｃの操作状態と、図７に示すデータと、に基づいて、ユーザによって指示された目標領域が判断される。例えば、十字ボタン２４ｃの上指示部２４ｃｕ及び右指示部２４ｃｒが押下されている場合、ユーザによって目標領域Ｃが指示されたと判断される。その後、ユーザによって指示された目標領域内でボール６６の移動目標位置が決定される。
【００６２】
その後、マイクロプロセッサ４４はボール６６の位置が第１領域８２内であるか否かを判定する（Ｓ１０３）。ボール６６の位置が第１領域８２内である場合、マイクロプロセッサ４４（操作対象キャラクタ制御部９２ｂ）は、操作対象キャラクタ６２が通常のショット動作を行うように、操作対象キャラクタ６２の状態データを更新する（Ｓ１０４）。「通常のショット動作」とは、操作対象キャラクタ６２が立った状態でボール６６を打ち返す動作である。また、マイクロプロセッサ４４（ゲーム状況データ更新部９２）は、ボール６６に移動目標位置に向けての移動を開始するように、ボール６６の状態データを更新する（Ｓ１０５）。さらに、マイクロプロセッサ４４（ショット可能領域制御部９２ｃ）は操作対象キャラクタ６２のショット可能領域８０の縮小係数（ｋ）を初期値（１）に戻す（Ｓ１０６）。このステップの処理が実行されることによって、操作対象キャラクタ６２のショット可能領域８０の大きさは初期状態に戻る。
【００６３】
一方、ボール６６の位置が第１領域８２内でない場合（すなわち、ボール６６の位置が第２領域８４内である場合）、マイクロプロセッサ４４（ショット可能領域制御部９２ｃ）は操作対象キャラクタ６２のショット可能領域８０の縮小係数（ｋ）の値を０．１減少させる（Ｓ１０７）。このステップの処理が実行されることによって、操作対象キャラクタ６２のショット可能領域８０の大きさが現在の大きさよりも小さくなる。なお、縮小係数（ｋ）の現在値が０．１である場合にはこのステップの処理は実行されない。縮小係数（ｋ）の値が０にならないようにするためである。また、このステップでは、縮小係数（ｋ）の値が、現在値に対して所定係数（０より大きく１より小さい所定値：例えば０．９）を乗じることによって得られる値に更新されるようにしてもよい。
【００６４】
その後、マイクロプロセッサ４４はボール６６の位置が操作対象キャラクタ６２のショット可能領域８０の境界線８１ｂ上であるか否かを判定する（Ｓ１０８）。このステップでは、ボール６６の少なくとも一部がショット可能領域８０の境界線８１ｂ上である場合に、ボール６６の位置がショット可能領域８０の境界線８１ｂ上であると判定される。なお、ボール６６の代表点（例えば中心点）がショット可能領域８０の境界線８１ｂ上である場合、ボール６６の位置がショット可能領域８０の境界線８１ｂ上であると判定されるようにしてもよい。なお、境界線８１ｂは所定の幅を有する領域としてもよい。
【００６５】
ボール６６の位置がショット可能領域８０の境界線８１ｂ上でない場合、マイクロプロセッサ４４（操作対象キャラクタ制御部９２ｂ）は、操作対象キャラクタ６２が通常のショット動作を行うように、操作対象キャラクタ６２の状態データを更新する（Ｓ１０９）。Ｓ１０４のステップと同様、「通常のショット動作」とは、操作対象キャラクタ６２が立った状態でボール６６を打ち返す動作である。一方、ボール６６の位置がショット可能領域８０の境界線８１ｂ上である場合、マイクロプロセッサ４４（操作対象キャラクタ制御部９２ｂ）は、操作対象キャラクタ６２が特殊のショット動作を行うように、操作対象キャラクタ６２の状態データを更新する（Ｓ１１０）。ここで、「特殊のショット動作」とは、操作対象キャラクタ６２がボール６６に向かって飛びつきながらボール６６を打ち返す動作である。
【００６６】
Ｓ１０９又はＳ１１０の処理が実行された後、マイクロプロセッサ４４はボール６６の移動目標位置を変更する（Ｓ１１１）。例えば、ボール６６の移動目標位置が、Ｓ１０２で決定された位置から、乱数に基づいて決定される方向に、乱数に基づいて決定される距離移動した位置に変更される。この場合、ボール６６の移動目標位置が、ユーザによって指示された目標領域外になってしまう場合もあるし、対戦相手コート６８ｂ外になってしまう場合もある。ボール６６の移動目標位置が変更された後、マイクロプロセッサ４４（ゲーム状況データ更新部９２）は、変更後の移動目標位置に向かっての移動をボール６６に開始するように、ボール６６の状態データを更新する（Ｓ１１２）。
【００６７】
なお、マイクロプロセッサ４４及び画像処理部４８（表示制御部９４）は、所定時間（例えば１／６０秒）ごとにゲーム画面６０を更新する。ゲーム画面６０に表示される操作対象キャラクタ６２、対戦相手キャラクタ６４やボール６６の状態は、操作対象キャラクタ６２、対戦相手キャラクタ６４やボール６６の状態データに基づいて更新される。また、ゲーム画面６０に表示されるショット可能領域案内画像７０は、ショット可能領域８０の状態データに基づいて更新される。
【００６８】
以上説明したゲーム装置１０によれば、操作対象キャラクタ６２が体勢を崩したことをユーザに実感させることが可能になる。また、操作対象キャラクタ６２の体勢が徐々に悪くなっていくことをユーザに実感させることが可能になる。体勢を崩した操作対象キャラクタ６２が体勢を立て直したことをユーザに実感させることが可能になる。その結果として、本発明によれば、テニスゲームのリアリティを向上することが可能になる。
【００６９】
なお、本発明は以上に説明した実施の形態に限定されるものではない。
【００７０】
例えば、ゲーム画面６０を表示するために仮想３次元空間が主記憶４６に構築されるようにしてもよい。仮想３次元空間には、テニスコートを表すオブジェクトが配置されるとともに、操作対象キャラクタ６２、対戦相手キャラクタ６４、ボール６６に対応するオブジェクトが配置される。また、ショット可能領域案内画像７０に対応するオブジェクトも仮想３次元空間に配置される。そして、この仮想３次元空間を仮想カメラから見た様子がゲーム画面６０に表示される。この場合、操作対象キャラクタ６２、対戦相手キャラクタ６４、ボール６６の位置等は３つの座標要素で管理されることになる。図１０はこの場合のショット可能領域の一例について説明するための図である。図１０に示す例では、ショット可能領域８０ａが筒状領域になっている。ショット可能領域８０ａの底面は図５に示すショット可能領域８０と同様の形状になっている。また、ショット可能領域８０ａの高さ（Ｈ）は例えば操作対象キャラクタ６２の身長に基づいて決定される。また、第１領域８２ａも筒状領域になっている。第１領域８２ａの底面は図５に示す第１領域８２と同様の形状になっている。また、ショット可能領域８０ａ内の、第１領域８２ａ以外の領域が第２領域８４ａになる。第１領域８２ａの底面の中心点８３ａが操作対象キャラクタ６２の足元位置６２ａになるように、ショット可能領域８０ａは設定される。また、この場合、ショット可能領域案内画像７０に対応するオブジェクトとして、例えばショット可能領域８０ａの底面領域を表すオブジェクトが配置される。また、第１領域８２ａの底面領域を表すオブジェクトも配置される。その結果として、このゲーム画面６０には、ショット可能領域８０ａの底面領域を示すショット可能領域案内画像７０が表示される。このとき、ショット可能領域案内画像７０の第１領域部分７２は第１領域８２ａの底面領域を示すことになる。
【００７１】
また例えば、係数（ｋ）は、ショット可能領域８０が元々の大きさよりも小さくなる程度を示す係数（縮小係数）ではなく、ショット可能領域８０が元々の大きさよりも大きくなる程度を示す係数（拡大係数）としてもよい。この場合、係数ｋは１以上の値をとる。そして、図９のＳ１０６では係数ｋの値に例えば０．１が加算されるようにしてもよい。また、図９のＳ１０７では係数ｋの値が初期値（１）に戻されるようにしてもよい。
【００７２】
このようにして、ショット可能領域制御部９２ｃは、基準タイミングにおける操作対象キャラクタ６２の位置とボール６６の位置との間の距離が第２基準距離以下であると判定された場合、ショット可能領域制御部９２ｃは、操作対象キャラクタ６２がボール６６を打った後におけるショット可能領域８０の大きさを現在の大きさよりも大きくするようにしてもよい。また、ショット可能領域８０の大きさが元々の大きさよりも大きくなっている状態において、基準タイミングにおける操作対象キャラクタ６２の位置とボール６６の位置との間の距離が第１基準距離より大きいと判定された場合、ショット可能領域制御部９２ｃは、操作対象キャラクタ６２がボール６６を打った後におけるショット可能領域８０の大きさを元々の大きさまで小さくするようにしてもよい。なお、本態様では第１基準距離と第２基準距離とが同じ距離（Ｒｄ）になるが、第１基準距離と第２基準距離とは異なる距離としてもよい。ただし、第１基準距離は第２基準距離よりも大きい距離に設定される。
【００７３】
言い換えれば、ショット可能領域制御部９２ｃは、基準タイミングにおけるボール６６の位置が第１領域８２に含まれると判定された場合、操作対象キャラクタ６２がボール６６を打った後におけるショット可能領域８０の大きさを現在の大きさよりも大きくするようにしてもよい。また、ショット可能領域８０の大きさが元々の大きさよりも大きくなっている状態において、基準タイミングにおけるボール６６の位置が第２領域８４に含まれると判定された場合、ショット可能領域制御部９２ｃは、操作対象キャラクタ６２がボール６６を打った後におけるショット可能領域８０の大きさを元々の大きさまで小さくするようにしてもよい。
【００７４】
上記のようにして、ボール６６が第１領域８２内に位置しているタイミングでユーザがショット指示ボタンを押下した場合、操作対象キャラクタ６２が十分な体勢でボール６６を打っているとみなし、操作対象キャラクタ６２のショット可能領域８０（第２領域８４）を初期状態よりも大きくするようにしてもよい。また、ボール６６が第２領域８４内に位置しているタイミングでユーザがショット指示ボタンを押下した場合、操作対象キャラクタ６２が体勢を崩したとみなし、操作対象キャラクタ６２のショット可能領域８０（第２領域８４）を初期状態に戻すようにしてもよい。こうしても、テニスゲームのリアリティを向上することができる。
【００７５】
また例えば、ショット可能領域制御部９２ｃは、大きさや形状の異なる複数のショット可能領域８０のデータをあらかじめ記憶しておくようにしてもよい。そして、ショット可能領域制御部９２ｃは、上記のデータに基づいて、ショット可能領域８０の大きさや形状を変化させるようにしてもよい。例えば、ショット可能領域８０の大きさを１０段階で変化させる場合、ショット可能領域制御部９２ｃは、各段階に対応するショット可能領域８０を特定するためのデータをあらかじめ記憶しておき、このデータに基づいて、ショット可能領域８０の大きさを変化させるようにしてもよい。
【００７６】
また例えば、ショット可能領域８０には３つ以上の領域が含まれるようにしてもよい。例えば、ショット可能領域８０は、第１領域８２と、第２領域８４と、第３領域と、を含むようにしてもよい。例えば、第３領域は、第１領域８２の中心点からの距離がＲｄより大きく、かつ、Ｒｅ（Ｒｅ＞Ｒｄ）以下の領域である。この場合、第１領域８２と第２領域８４との間に第３領域が設けられることになる。なお、基準タイミングにおけるボール６６の位置が第３領域に含まれる場合、ショット可能領域８０の大きさが現在の大きさよりも大きくなるようにしてもよい。このとき、ショット可能領域８０の大きさの変化の程度は、基準タイミングにおけるボール６６の位置が第１領域８２に含まれた場合よりも小さくなるようにすると好適である。すなわち、基準タイミングにおけるボール６６の位置が第３領域に含まれた場合には、ショット可能領域８０の大きさが少しだけ大きくなり、元々の大きさまでは戻らないようにすると好適である。または、基準タイミングにおけるボール６６の位置が第３領域に含まれる場合、ショット可能領域８０の大きさが現在の大きさよりも小さくなるようにしてもよい。このとき、ショット可能領域８０の大きさの変化の程度は、基準タイミングにおけるボール６６の位置が第２領域８４に含まれる場合よりも小さくなるようにすると好適である。
【００７７】
また例えば、操作対象キャラクタ６２はユーザの方向指示操作に従って移動するのではなく、マイクロプロセッサ４４による操作に従って自動的に移動するようにしてもよい。この場合、ユーザはショット指示操作のみを行うことになる。
【００７８】
また例えば、本発明はテニスゲーム以外のスポーツゲームにも適用することができる。本発明は、例えば卓球ゲーム、バレーボールゲームや野球ゲームにも適用することができる。なお本発明は、例えばテニス、卓球、バレーボールや野球等の実際のスポーツを模した架空のスポーツのゲームにも適用することができる。
【００７９】
また、以上の説明では、プログラムを情報記憶媒体たるゲームメモリカード４０からゲーム装置１０に供給するようにしたが、通信ネットワークを介してプログラムをゲーム装置１０に配信するようにしてもよい。図１１は、通信ネットワークを用いたプログラム配信システムの全体構成を示す図である。図１１に基づいて本発明に係るプログラム配信方法を説明する。図１１に示すように、このプログラム配信システム１００はプログラム配信装置１０８と通信ネットワーク１０６とゲーム装置１０とを含む。プログラム配信装置１０８はデータベース１０２とサーバ１０４とを含む。通信ネットワーク１０６は例えばインターネットやケーブルテレビネットワークを含む。このシステムでは、データベース（情報記憶媒体）１０２に、メモリカード４０の記憶内容と同様のプログラムが記憶される。そして、ゲーム装置１０を用いて需要者がプログラム配信要求をすることによって、それが通信ネットワーク１０６を介してサーバ１０４に伝えられる。そして、サーバ１０４はプログラム配信要求に応じてデータベース１０２からプログラムを読み出し、それをゲーム装置１０に送信する。ここではプログラム配信要求に応じてプログラムを送信するようにしたが、サーバ１０４から一方的にプログラムを送信するようにしてもよい。このように通信ネットワーク１０６を介してプログラムを配信するようにすれば、需要者はプログラムを容易に入手できるようになる。
【図面の簡単な説明】
【００８０】
【図１】本実施の形態に係るゲーム装置の外観を示す斜視図である。
【図２】本実施の形態に係るゲーム装置の外観を示す図である。
【図３】本実施の形態に係るゲーム装置のハードウェア構成を示す図である。
【図４】ゲーム画面の一例を示す図である。
【図５】ショット可能領域の一例を示す図である。
【図６】ボールを打ち返す方向の指示について説明するための図である。
【図７】ボールを打ち返す方向の指示について説明するための図である。
【図８】本実施の形態に係るゲーム装置の機能ブロック図である。
【図９】ゲーム装置が実行する処理を示すフロー図である。
【図１０】ショット可能領域の他の一例を示す図である。
【図１１】本実施の形態に係るプログラム配信システムの全体構成を示す図である。
【符号の説明】
【００８１】
１０  ゲーム装置、１２  携帯ゲーム機、１４  ヒンジ部、２０  第１筐体、２０ａ  第１筐体の表面、２２  タッチスクリーン、２２ａ  第１液晶表示部、２２ｂ  タッチパネル、２４  操作キー部、２４ａ，２４ｂ，２４ｘ，２４ｙ，２４ｌ，２４ｒ  ボタン、２４ｃ  十字ボタン、２４ｃｕ  上指示部、２４ｃｂ  下指示部、２４ｃｌ  左指示部、２４ｃｒ  右指示部、２６  メモリカードスロット、３０  第２筐体、３０ａ  第２筐体の表面、３２  第２液晶表示部、３４  スピーカ、４０  ゲームメモリカード、４２  バス、４４  マイクロプロセッサ、４６  主記憶、４８  画像処理部、５０  入出力処理部、５２  音声処理部、５４  通信インタフェース、６０  ゲーム画面、６２  操作対象キャラクタ、６２ａ  操作対象キャラクタの足元位置、６４  対戦相手キャラクタ、６６  ボール、６８ａ  自コート、６８ｂ  対戦相手コート、７０  ショット可能領域案内画像、７２  第１領域部分、７４  第２領域部分、８０，８０ａ  ショット可能領域、８１ａ  ショット可能領域の基準点、８１ｂ  ショット可能領域の境界線、８２，８２ａ  第１領域、８３  第１領域の中心点、８４，８４ａ  第２領域、８６ａ  第１長半径、８６ｂ  第２長半径、８８  短半径、９０  ゲームデータ記憶部、９０ａ  ゲーム状況データ記憶部、９２  ゲーム状況データ更新部、９２ａ  判定部、９２ｂ  操作対象キャラクタ制御部、９２ｃ  ショット可能領域制御部、９４  表示制御部、１００  プログラム配信システム、１０２  データベース、１０４  サーバ、１０６  通信ネットワーク、１０８  プログラム配信装置。
【図１】
0005192779.tif 000002
【図２】
0005192779.tif 000003
【図３】
0005192779.tif 000004
【図４】
0005192779.tif 000005
【図５】
0005192779.tif 000006
【図６】
0005192779.tif 000007
【図７】
0005192779.tif 000008
【図８】
0005192779.tif 000009
【図９】
0005192779.tif 000010
【図１０】
0005192779.tif 000011
【図１１】
0005192779.tif 000012