〔ゲーム装置の構成および動作〕
以下では、ゲーム装置を表示装置として用いる場合の例を、一例として説明を行う。図1は、本発明の一実施形態によるゲーム装置の基本構成を示している。ここでは、ゲーム装置の一例として、家庭用ゲーム装置をとりあげて説明を行うこととする。家庭用ゲーム装置は、家庭用ゲーム機本体および家庭用テレビジョンを備える。家庭用ゲーム機本体には、記録媒体10が装填可能となっており、記録媒体10からゲームデータが適宜読み出されてゲームが実行される。このようにして実行されるゲーム内容が家庭用テレビジョンに表示される。
家庭用ゲーム装置は、制御部1と、記憶部2と、画像表示部3と、音声出力部4と、操作入力部5とからなっており、それぞれがバス6を介して接続される。このバス6は、アドレスバス、データバス、およびコントロールバスなどを含んでいる。ここで、制御部1、記憶部2、音声出力部4および操作入力部5は、家庭用ゲーム装置の家庭用ゲーム機本体に含まれており、画像表示部3は家庭用テレビジョンに含まれている。
制御部1は、主に、ゲームプログラムに基づいてゲーム全体の進行を制御するために設けられている。制御部1は、たとえば、CPU(Central Processing Unit)7と、信号処理プロセッサ8と、画像処理プロセッサ9とから構成されている。CPU7と信号処理プロセッサ8と画像処理プロセッサ9とは、それぞれがバス6を介して互いに接続されている。CPU7は、ゲームプログラムからの命令を解釈し、各種のデータ処理や制御を行う。たとえば、CPU7は、信号処理プロセッサ8に対して、画像データを画像処理プロセッサに供給するように命令する。信号処理プロセッサ8は、主に、3次元空間上における計算と、3次元空間上から擬似3次元空間上への位置変換計算と、光源計算処理と、画像および音声データの生成加工処理とを行っている。画像処理プロセッサ9は、主に、信号処理プロセッサ8の計算結果および処理結果に基づいて、描画すべき画像データをRAM12に書き込む処理を行っている。
記憶部2は、主に、プログラムデータや、プログラムデータで使用される各種データなどを格納しておくために設けられている。記憶部2は、たとえば、記録媒体10と、インターフェース回路11と、RAM(Random Access Memory)12とから構成されている。記録媒体10には、インターフェース回路11が接続されている。そして、インターフェース回路11とRAM12とはバス6を介して接続されている。記録媒体10は、オペレーションシステムのプログラムデータや、画像データ、音声データ並びに各種プログラムデータからなるゲームデータなどを記録するためのものである。この記録媒体10は、たとえば、ROM(Read Only Memory)カセット、光ディスク、およびフレキシブルディスクなどであり、オペレーティングシステムのプログラムデータやゲームデータなどが記憶される。なお、記録媒体10にはカード型メモリも含まれており、このカード型メモリは、主に、ゲームを中断するときに中断時点での各種ゲームパラメータを保存するために用いられる。RAM12は、記録媒体10から読み出された各種データを一時的に格納したり、制御部1からの処理結果を一時的に記録したりするために用いられる。このRAM12には、各種データとともに、各種データの記憶位置を示すアドレスデータが格納されており、任意のアドレスを指定して読み書きすることが可能になっている。
画像表示部3は、主に、画像処理プロセッサ9によってRAM12に書き込まれた画像データや、記録媒体10から読み出される画像データなどを画像として出力するために設けられている。この画像表示部3は、たとえば、テレビジョンモニタ20と、インターフェース回路21と、D/Aコンバータ(Digital-To-Analogコンバータ)22とから構成されている。テレビジョンモニタ20にはD/Aコンバータ22が接続されており、D/Aコンバータ22にはインターフェース回路21が接続されている。そして、インターフェース回路21にバス6が接続されている。ここでは、画像データが、インターフェース回路21を介してD/Aコンバータ22に供給され、ここでアナログ画像信号に変換される。そして、アナログ画像信号がテレビジョンモニタ20に画像として出力される。
ここで、画像データには、たとえば、ポリゴンデータやテクスチャデータなどがある。ポリゴンデータはポリゴンを構成する頂点の座標データのことである。テクスチャデータは、ポリゴンにテクスチャを設定するためのものであり、テクスチャ指示データとテクスチャカラーデータとからなっている。テクスチャ指示データはポリゴンとテクスチャとを対応づけるためのデータであり、テクスチャカラーデータはテクスチャの色を指定するためのデータである。ここで、ポリゴンデータとテクスチャデータとには、各データの記憶位置を示すポリゴンアドレスデータとテクスチャアドレスデータとが対応づけられている。このような画像データでは、信号処理プロセッサ8により、ポリゴンアドレスデータの示す3次元空間上のポリゴンデータ(3次元ポリゴンデータ)が、画面自体(視点)の移動量データおよび回転量データに基づいて座標変換および透視投影変換されて、2次元空間上のポリゴンデータ(2次元ポリゴンデータ)に置換される。そして、複数の2次元ポリゴンデータでポリゴン外形を構成して、ポリゴンの内部領域にテクスチャアドレスデータが示すテクスチャデータが書き込まれる。
音声出力部4は、主に、記録媒体10から読み出される音声データを音声として出力するために設けられている。音声出力部4は、たとえば、スピーカー13と、増幅回路14と、D/Aコンバータ15と、インターフェース回路16とから構成されている。スピーカー13には増幅回路14が接続されており、増幅回路14にはD/Aコンバータ15が接続されており、D/Aコンバータ15にはインターフェース回路16が接続されている。そして、インターフェース回路16にバス6が接続されている。ここでは、音声データが、インターフェース回路16を介してD/Aコンバータ15に供給され、ここでアナログ音声信号に変換される。このアナログ音声信号が増幅回路14によって増幅され、スピーカー13から音声として出力される。音声データには、たとえば、ADPCM(Adaptive Differential Pulse Code Modulation)データやPCM(Pulse Code Modulation)データなどがある。ADPCMデータの場合、上述と同様の処理方法で音声をスピーカー13から出力することができる。PCMデータの場合、RAM12においてPCMデータをADPCMデータに変換しておくことで、上述と同様の処理方法で音声をスピーカー13から出力することができる。
操作入力部5は、主に、コントローラ17と、操作情報インターフェース回路18と、インターフェース回路19とから構成されている。コントローラ17には、操作情報インターフェース回路18が接続されており、操作情報インターフェース回路18にはインターフェース回路19が接続されている。そして、インターフェース回路19にバス6が接続されている。
コントローラ17は、プレイヤが種々の操作命令を入力するために使用する操作装置であり、プレイヤの操作に応じた操作信号をCPU7に送出する。そして、この操作信号に対応する命令が、CPU7から発行される。すると、この命令に対応する処理が、制御部1、記憶部2、画像表示部3、および音声出力部4の少なくともいずれか1つで処理部において実行される。
コントローラ17には、第1ボタン17a、第2ボタン17b、第3ボタン17c、第4ボタン17d、上方向キー17U、下方向キー17D、左方向キー17L、右方向キー17R、L1ボタン17L1、L2ボタン17L2、R1ボタン17R1、R2ボタン17R2、スタートボタン17e、セレクトボタン17f、左スティック17SL及び右スティック17SRが設けられている。
上方向キー17U、下方向キー17D、左方向キー17L及び右方向キー17Rは、例えば、キャラクタやカーソルをテレビジョンモニタ20の画面上で上下左右に移動させるコマンドをCPU7に与えるために使用される。
スタートボタン17eは、記録媒体10からゲームプログラムをロードするようにCPU7に指示するときや、実行中のゲームプログラムを一時停止するときなどに使用される。
セレクトボタン17fは、記録媒体10からロードされたゲームプログラムに対して、各種選択をCPU7に指示するときなどに使用される。
左スティック17SL及び右スティック17SRは、いわゆるジョイスティックとほぼ同一構成のスティック型コントローラである。このスティック型コントローラは、直立したスティックを有している。このスティックは、支点を中心として直立位置から前後左右を含む360°方向に亘って、傾倒可能な構成になっている。左スティック17SL及び右スティック17SRは、スティックの傾倒方向及び傾倒角度に応じて、直立位置を原点とするx座標及びy座標の値を、操作信号として操作情報インターフェース回路18とインターフェース回路19とを介してCPU7に送出する。
第1ボタン17a、第2ボタン17b、第3ボタン17c、第4ボタン17d、L1ボタン17L1、L2ボタン17L2、R1ボタン17R1及びR2ボタン17R2には、記録媒体10からロードされるゲームプログラムに応じて種々の機能が割り振られている。
なお、左スティック17SL及び右スティック17SRを除くコントローラ17の各ボタン及び各キーは、外部からの押圧力によって中立位置から押圧されるとオンになり、押圧力が解除されると中立位置に復帰してオフになるオンオフスイッチになっている。
通信部23は、通信制御回路24および通信インターフェース25を有している。通信制御回路24および通信インターフェース25は、ゲーム装置をサーバや他のゲーム装置等に接続するために用いられる。通信制御回路24および通信インターフェース25は、バス6を介してCPU7に接続されている。通信制御回路24および通信インターフェース25は、CPU7からの命令に応じて、ゲーム装置をインターネットに接続するための接続信号を制御し発信する。また、通信制御回路24および通信インターフェース25は、インターネットを介してゲーム装置をサーバや他のゲーム装置に接続するための接続信号を制御し発信する。
以上のような構成からなる家庭用ゲーム装置の概略動作を、以下に説明する。電源スイッチ(図示省略)がオンにされゲームシステムに電源が投入されると、CPU7が、記録媒体10に記憶されているオペレーティングシステムに基づいて、記録媒体10から画像データ、音声データ、およびプログラムデータを読み出す。読み出された画像データ、音声データ、およびプログラムデータの一部若しくは全部は、RAM12に格納される。そして、CPU7が、RAM12に格納されたプログラムデータに基づいて、RAM12に格納された画像データや音声データにコマンドを発行する。
画像データの場合、CPU7からのコマンドに基づいて、まず、信号処理プロセッサ8が、3次元空間上におけるキャラクタの位置計算および光源計算などを行う。次に、画像処理プロセッサ9が、信号処理プロセッサ8の計算結果に基づいて、描画すべき画像データのRAM12への書き込み処理などを行う。そして、RAM12に書き込まれた画像データが、インターフェース回路21を介してD/Aコンバータ22に供給される。ここで、画像データがD/Aコンバータ22でアナログ映像信号に変換される。そして、画像データはテレビジョンモニタ20に供給され画像として表示される。
音声データの場合、まず、信号処理プロセッサ8が、CPU7からのコマンドに基づいて音声データの生成および加工処理を行う。ここでは、音声データに対して、たとえば、ピッチの変換、ノイズの付加、エンベロープの設定、レベルの設定及びリバーブの付加などの処理が施される。次に、音声データは、信号処理プロセッサ8から出力されて、インターフェース回路16を介してD/Aコンバータ15に供給される。ここで、音声データがアナログ音声信号に変換される。そして、音声データは増幅回路14を介してスピーカー13から音声として出力される。
〔ゲーム装置における各種処理概要〕
本ゲーム装置において実行されるゲームは、たとえば、野球ゲームである。本ゲーム装置では、投手キャラクタがボールを投球し、打者キャラクタがボールを打ち返すゲームが、実現可能になっている。図2は、以下に示す、本発明で主要な役割を果たす機能を、説明するための機能ブロック図である。なお、以下の各手段は、主に制御部1において制御され実行される。また、各種データは、記憶部2に格納されており、適宜、記憶部2から読み出される。
能力設定手段50は、打者キャラクタのミート能力を設定する機能を、備えている。
この手段では、打者キャラクタのミート能力を設定する処理が、制御部1において実行される。具体的には、RAM12に格納された打者キャラクタのミート能力を示す能力データを、CPU7に認識させることによって、打者キャラクタのミート能力が設定される。
最小領域設定手段51は、ミートカーソルの最小の大きさを設定する機能を、備えている。
この手段では、ミートカーソルの最小の大きさを設定する処理が、制御部1において実行される。具体的には、RAM12に格納された、ミートカーソルの大きさを規制するための規制データを、CPU7に認識させることによって、ミートカーソルの最小の大きさが設定される。
ミートゾーン設定手段52は、投手キャラクタの投球動作の対象となるミートゾーンを、ゲーム空間に設定する機能を、備えている。また、ミートゾーン設定手段52は、ミートゾーンに複数の部分領域を設定する第1部分領域設定機能を、さらに備えている。さらに、ミートゾーン設定手段52は、ミートゾーンを複数の区分領域に分割する領域分割機能を、さらに備えている。
この手段では、投手キャラクタの投球動作の対象となるミートゾーンを、ゲーム空間に設定する処理が、制御部1において実行される。そして、ミートゾーンを複数の区分領域に分割する処理が、制御部1において実行される。そして、ミートゾーンに複数の部分領域を設定する処理が、制御部1において実行される。
具体的には、RAM12に格納された、ミートゾーンの隅角部の位置座標データを、CPU7に認識させることによって、矩形状のミートゾーンがゲーム空間に設定される。そして、このミートゾーンをn分割する計算をCPU7に実行させることによって、ミートゾーンが複数の区分領域に分割される。そして、各区分領域の隅角部の位置座標データをCPU7に認識させることによって、各区分領域の範囲が設定される。また、ここでは、各区分領域に所定の識別データを割り当てる処理が、CPU7により実行され、この識別データによって各区分領域は管理される。そして、隣接する所定数の区分領域の識別データを、CPU7に認識させることによって、複数の区分領域から構成される部分領域が、ミートゾーンに設定される。この部分領域の設定は、ミートゾーンの内部の複数箇所において、実行される。なお、ミートゾーンには、4つの矩形状の部分領域、たとえば内角領域、外角領域、高目領域、および低目領域が、設定される。
ミートカーソル設定手段53は、打者キャラクタのはね返し動作の対象となるミートカーソルを、ミートゾーンに設定する機能を、備えている。また、ミートカーソル設定手段53に含まれ、ミートカーソルに複数の部分領域を設定する第2部分領域設定機能を、さらに備えている。
この手段では、打者キャラクタのはね返し動作の対象となるミートカーソルを、ミートゾーンに設定する処理が、制御部1において実行される。具体的には、RAM12に格納された、ミートカーソルの真芯位置を示す位置座標データを、CPU7に認識させることによって、ミートカーソルの真芯位置がゲーム空間に設定される。そして、この真芯位置を基準としてミートカーソルをゲーム空間に設定するための楕円方程式を、CPU7に認識させることによって、楕円状のミートカーソルがミートゾーンに設定される。この楕円方程式は、RAM12に格納されている。ここでは、4つの楕円方程式が用意されており、各楕円方程式によって、ミートカーソルにおける複数の部分領域の境界が設定される。なお、ミートカーソルには、4つの部分領域、たとえば内角領域、外角領域、高目領域、および低目領域が、設定される。
領域関連付け手段54は、ミートゾーンの部分領域とミートカーソルの部分領域とを関連付ける機能を、備えている。
この手段では、ミートゾーンの部分領域とミートカーソルの部分領域とを関連付ける処理が、制御部1において実行される。具体的には、ミートゾーンの部分領域を識別するための識別データと、ミートカーソルの部分領域を規定するための楕円方程式とを関連づける処理を、CPU7に実行させることによって、ミートゾーンの部分領域とミートカーソルの部分領域とが、関連付けられる。なお、ここで用いられる識別データの値は、ゲームプログラムにおいて予め規定されている。
ミートカーソル表示手段55は、ミートカーソルを表示する機能を、備えている。また、ミートカーソル表示手段55は、補正後のミートカーソルを表示する機能を、さらに備えている。
この手段では、ミートカーソルを表示する処理が、画像表示部3において実行される。具体的には、上記の楕円方程式によって定義されるミートカーソルが、ミートカーソル用の画像データを用いて、テレビジョンモニタ20に表示される。なお、ミートカーソル用の画像データは、ゲームプログラムのロード時にRAM12に格納される。
到達位置認識手段56は、投手キャラクタから投球されたボールがミートゾーンに到達した位置を、ボールの到達コースとして認識する機能を、備えている。また、到達位置認識手段56は、到達コースが含まれる区分領域を、到達区分領域として認識する到達領域認識機能を、さらに備えている。
この手段では、投手キャラクタから投球されたボールがミートゾーンに到達した位置を、ボールの到達コースとして認識する処理が、制御部1において実行される。また、到達コースが含まれる区分領域を到達区分領域として認識する処理が、制御部1において実行される。具体的には、投手キャラクタから投球されたボールがミートゾーンに到達した位置示す位置座標データを、CPU7に認識させることによって、ボールの到達コースが認識される。より具体的には、投手キャラクタがある打者キャラクタに対して投球した球数をnと表記すると、n球目の到達コースが、第n到達コースとしてCPU7に認識される。そして、第n到達コースが含まれる区分領域の識別データをCPU7に認識させることによって、第n到達コースが含まれる区分領域が、到達区分領域として設定される。なお、ここで用いたnは、自然数である。
第1部分領域認識手段57は、ミートゾーン上の到達コースに対応する、ミートカーソルの内部の部分領域を、第1対応部分領域として認識する機能を、備えている。
この手段では、ミートゾーン上の到達コースに対応する、ミートカーソルの内部の部分領域を、第1対応部分領域として認識する処理が、制御部1において実行される。具体的には、ミートゾーンの第n到達コースを含む到達区分領域に関連付けられた、ミートカーソルの部分領域を規定するための楕円方程式を、CPU7に認識させることによって、第n到達コースに対応するミートカーソル内部の部分領域が、第1対応部分領域として設定される。なお、この場合、第(n−1)到達コースに対応する第1対応部分領域に代えて、第n到達コースに対応する第1対応部分領域が、新規の第1対応部分領域として設定される。
第2部分領域認識手段58は、ミートゾーンにおいて到達コースに相対する相対位置に対応する、ミートカーソルの内部の部分領域を、第2対応部分領域として認識する機能を、備えている。
この手段では、ミートゾーンにおいて到達コースに相対する相対位置に対応する、ミートカーソルの内部の部分領域を、第2対応部分領域として認識する処理が、制御部1において実行される。具体的には、ミートゾーンにおいて相対位置を含む部分領域に関連付けられた、ミートカーソルの部分領域の識別データを、CPU7に認識させることによって、相対位置に対応するミートカーソルの内部の部分領域が、第2対応部分領域として認識される。より具体的には、ミートゾーンの到達区分領域に相対する相対区分領域を含む部分領域に関連付けられた、ミートカーソルの部分領域の識別データを、CPU7に認識させることによって、相対位置に対応するミートカーソルの内部の部分領域が、第2対応部分領域として認識される。なお、ここで、第n到達コースに相対する相対位置を、第n相対位置と表記すると、第n相対位置に対応する第2対応部分領域が設定されるときには、第(n−1)相対位置に対応する第2対応部分領域に代えて、第n相対位置に対応する第2対応部分領域が、新規の第1対応部分領域として設定される。
領域形態補正手段59は、第1対応部分領域を拡大し第2対応部分領域を縮小し、領域の形態変更に応じてミートカーソル全体の形態を補正する機能を、備えている。
この手段では、第1対応部分領域を拡大し第2対応部分領域を縮小し、これら領域の形態変更に応じてミートカーソル全体の形態を補正する処理が、制御部1において実行される。具体的には、ミートカーソルの真芯の位置(最適ポイント)を基準として、4つの部分領域それぞれの楕円方程式において、長軸の長さおよび短軸の長さを変更する処理を、CPU7に実行させることによって、ミートカーソルの第1対応部分領域が拡大され、ミーカーソルの第2対応部分領域が縮小される。すなわち、ミートカーソル全体の形態が補正される。
領域維持手段60は、打者キャラクタのミート能力が所定の大きさ以上であった場合に、ミートカーソルの大きさを、最小の大きさ以上に維持する機能を備えている。
この手段では、打者キャラクタのミート能力が所定の大きさ以上であった場合に、ミートカーソルの大きさを、最小の大きさ以上に維持する処理が、制御部1において実行される。具体的には、打者キャラクタのミート能力を示す能力データが、所定の値以上であった場合には、領域形態補正手段59によってミートカーソルの大きさが補正されたとしても、楕円方程式の長軸の長さおよび短軸の長さを、上記の規制データによって定義される最小値に設定する処理を、CPU7に実行させることによって、ミートカーソルの大きさが、所定の大きさ以上に維持される。
形態初期化手段61は、打者キャラクタが交代した場合、ミートカーソルの形態を初期化する機能を、備えている。
この手段では、打者キャラクタが交代した場合、ミートカーソルの形態を初期化する処理が、制御部1において実行される。具体的には、打者キャラクタが交代した場合、ミートカーソルを規定するための楕円方程式の各種パラメータを初期化する処理をCPU7に実行させることによって、ミートカーソルの形態が初期化される。
〔野球ゲームにおける意識反映システムの概要〕
次に、野球ゲームにおける意識反映システムの具体的な内容について説明する。また、図12および図13に示すフローについても同時に説明する。なお、図12は野球ゲームの全体概要を説明するためのフローであり、図13は上記システムを説明するためのフローである。
まず、ゲーム装置の電源が投入され、ゲーム装置が起動されると、野球ゲームプログラムが、記録媒体10からRAM12にロードされ格納される。このときには、野球ゲームを実行する上で必要となる各種の基本ゲームデータも、同時に、記録媒体10からRAM12にロードされ格納される(S1)。
たとえば、基本ゲームデータには、3次元ゲーム空間用の各種の画像に関するデータが含まれている。3次元ゲーム空間用の各種の画像に関するデータには、たとえば、各種のオブジェクトのモデルデータ、たとえば、スタジアム用のモデルデータ、選手キャラクタ用のモデルデータ、観客用のモデルデータ、およびボール用のモデルデータ等が、含まれている。また、基本ゲームデータには、3次元ゲーム空間用のモデルデータを3次元ゲーム空間に配置するための位置座標データが、含まれている。また、基本ゲームデータには、3次元ゲーム空間に配置されたモデル(オブジェクト)を、テレビジョンモニタ20に表示するための画像データが、含まれている。画像データは、3次元ゲーム空間に配置されたモデルを、仮想カメラにより撮影することにより、生成される。さらに、基本ゲームデータには、上記システムで用いられる各種のデータも、含まれている。
なお、各モデルは、各モデルに対して固有に設定される識別データを用いて、CPU7により管理される。言い換えると、この識別データをCPU7に認識させることによって、モデル(オブジェクト)が特定され、モデル用の画像データがRAM12から読み出される。
続いて、RAM12に格納された野球ゲームプログラムが、基本ゲームデータに基づいて、CPU7により実行される(S2)。すると、野球ゲームの起動画面がテレビジョンモニタ20に表示される。すると、野球ゲームを実行するための各種の設定画面がテレビジョンモニタ20に表示される。ここでは、たとえば、野球ゲームのプレイモードを選択するためのモード選択画面が、テレビジョンモニタ20に表示される(図示しない)。このモード選択画面において、プレイヤがコントローラ17を操作することにより、プレイモードが決定される(S3)。プレイモードには、たとえば、12球団の中からチームを選択して1試合の対戦を楽しむ対戦モード、12球団の中からチームを選択してペナントレースを戦うペナントモード、プレイヤが監督の立場でチームの選手キャラクタを育成する育成モード、プレイヤがある1人の選手キャラクタの立場になって野球ゲームを体感する成長体感モード等が、用意されている。
続いて、モード選択画面で選択されたプレイモードにおいて、各種のイベントが、CPU7により実行される(S4)。ここで実行される各種のイベントには、たとえば、自動制御プログラム(AIプログラム、Artificial Intelligence Program)に基づいてCPU7により自動制御されるイベントや、コントローラ17からの入力信号に基づいてプレイヤにより手動制御されるイベントがある。また、選手キャラクタの制御には、自動制御プログラムに基づいて選手キャラクタに命令を自動的に指示する自動制御や、コントローラ17からの入力信号に基づいて選手キャラクタに命令を直接的に指示する手動制御等がある。このように、本野球ゲームでは、コントローラ17からの指示や自動制御プログラムからの指示に応じて、イベントが制御されたり、選手キャラクタに命令が指示されたりするようになっている。
なお、ここに示す自動制御プログラムとは、プレイヤに代わって、イベントに関する命令および選手キャラクタに対する命令を自動的に制御するためのプログラムである。この自動制御プログラムは、ゲームプログラムにおいて予め用意されている。
続いて、選択されたプレイモードが終了したか否かが、CPU7により判断される(S5)。具体的には、プレイモードが終了したことを示す命令が発行されたか否かが、CPU7により判断される。そして、プレイモードが終了したことを示す命令が発行されたとCPU7により判断された場合(S5でYes)、ゲーム継続用のデータをRAM12に格納する処理が、CPU7により実行される。そして、ゲーム継続用のデータがRAM12に格納されると、この野球ゲームを終了するか否かを選択する選択画面が、テレビジョンモニタ20に表示される(S6)。そして、この選択画面において、プレイヤがコントローラ17を操作することにより、野球ゲームの終了を示す項目が選択されると(S6でYes)、野球ゲームを終了するための処理がCPU7により実行される(S7)。一方で、この選択画面において、プレイヤがコントローラ17を操作することにより、野球ゲームの継続を示す項目が選択されると(S6でNo)、ステップ3(S3)のモード選択画面が、テレビジョンモニタ20に再表示される。
なお、プレイモードが終了するための命令が発行されたとCPU7に判断されない限り(S5でNo)、モード選択画面で選択されたプレイモードにおいて、各種のイベントがCPU7により実行される(S4)。
次に、野球ゲームにおける意識反映システムの具体的な内容について説明する。
ここでは、試合中の対戦イベントの実行中に、本システムが機能する場合の例が、示される。また、以下では、あるチームをプレイヤが指揮し、相手チームをコンピュータが指揮する場合の例が示される。相手チームに関する命令、たとえば相手チームの設定に関する命令や相手チームの選手キャラクタに対する命令等は、AIプログラムに基づいて、CPU7により実行される。
まず、投手キャラクタと打者キャラクタとが対戦する対戦イベントが、実行されると、チームを設定するためのチーム設定画面が、テレビジョンモニタ20に表示される(図示しない)。そして、このチーム設定画面において、プレイヤがコントローラ17を操作することによって、自分が指揮するチーム(Aチーム)および対戦相手のチーム(Bチーム)が、選択される。すると、RAM12に格納されたチーム用の識別データIDTが、CPU7に認識される。この認識処理によって、プレイヤが指揮するチームと、このプレイヤのチームと対戦するチームとが、CPU7に認識され管理される。なお、チーム用の識別データIDTには、ゲームプログラムにおいて予め規定された所定の値が、割り当てられる。たとえば、Aチーム用の識別データIDTには、1が割り当てられ、Bチーム用の識別データIDTには、2が割り当てられる。このようなチーム用の識別データIDTは、RAM12に格納されており、たとえば、チームの特定時や、チームの情報の特定時等に、RAM12から読み出され、割り当てられる。
以下では、プレイヤが指揮するチーム(Aチーム)が先攻である場合を一例として、説明を行う。スターティングメンバーを設定するためのメンバー設定画面が、テレビジョンモニタ20に表示されると(図示しない)、このメンバー設定画面において、プレイヤがコントローラ17を操作することによって、スターティングメンバーが、選択される。また、この段階において、相手チームのスターティングメンバーも、選択される。各チームの複数の選手キャラクタそれぞれは、異なる識別データIDK(IDT)を有している。選手キャラクタが、プレイヤによる指示又はAIプログラムに基づいて選択されると、RAM12に格納された、選手キャラクタ用の識別データIDK(IDT)が、CPU7に認識される。この認識処理によって、各選手キャラクタが、CPU7に認識され管理される。
なお、選手用の識別データIDK(IDT)には、ゲームプログラムにおいて予め規定された所定の値が、割り当てられている。この選手用の識別データIDK(IDT)は、RAM12に格納されており、たとえば、各選手キャラクタの特定時や、各選手キャラクタに関する情報の特定時等に、RAM12から読み出される。
このようにして両チームのスターティングメンバーが選択されると、各選手キャラクタの能力が、設定される。ここでは、たとえば、RAM12に格納された、打者キャラクタのミート能力を含む能力データN(IDK)が、CPU7に認識される。このようにして、打者キャラクタのミート能力が、設定される。なお、各選手キャラクタの能力データN(IDK)の初期値は、ゲームプログラムにおいて予め所定の値に設定されており、ゲームプログラムのロード時にRAM12に格納される。
続いて、ミートカーソルMCを規定するための情報データが、設定される。情報データは、ミートカーソルMCの初期の大きさを規定するための初期データ、およびミートカーソルMCの最小の大きさを規制するための規制データ等を有している。詳細には、初期データおよび規制データは、所定の値に設定されており、RAM12に格納されている。ここでは、初期データをCPU7に認識させることによって、ミートカーソルMCの初期の大きさが、設定される。また、規制データには、たとえば、ミートカーソルMCの長軸および短軸の長さの最小値が、含まれている。この規制データ、たとえばミートカーソルMCの長軸および短軸の長さの最小値を、CPU7に認識させることによって、後述するように、ミートカーソルMCの最小の大きさが、設定される。なお、規制データ、たとえばミートカーソルMCの長軸および短軸の長さの最小値は、ゲームプログラムにおいて予め規定されており、ゲームプログラムのロード時にRAM12に格納される。
続いて、試合開始命令がCPU7から発行され、試合イベントが開始されると(S401)、ミートゾーン70が設定される(S402)。ミートゾーン70は、ホームベースの上方位置、たとえば、ホームベースの重心上方の所定の高さの位置に、設定される。ミートゾーン70は、図3に示すように、ストライクゾーン71とボールゾーン72とから構成される。ミートゾーン70の範囲、すなわちストライクゾーン71の範囲およびボールゾーン72の範囲は、3次元ゲーム空間において、所定の位置に設定される。
たとえば、矩形状のミートゾーン70の4隅の位置座標データをCPU7に認識させることにより、ミートゾーン70が3次元ゲーム空間に設定される。また、矩形状のストライクゾーン71の4隅の位置座標データをCPU7に認識させることにより、ストライクゾーン71が3次元ゲーム空間に設定される。ここでは、ミートゾーン70の中央部にストライクゾーン71が配置されている。ボールゾーン72は、ミートゾーン70の境界とストライクゾーン71の境界との間の領域に対応し、ミートゾーン70の4隅の位置座標データとストライクゾーン71の4隅の位置座標データとに基づいて、定義される。
なお、ここでは、3次元ゲーム空間における水平面が、X軸およびY軸によって定義され、3次元ゲーム空間における垂直上方が、Z軸が向く方向に定義されている。また、原点、X軸が向く方向、およびY軸が向く方向は、ゲームプログラムにおいて予め規定されている。たとえば、ホームベースの重心を基準として、ホームベースの重心からセンターの中央に向かう方向を、Y軸とすると、上記のミートゾーン70は、XZ平面上に配置される。
また、ここでは、ミートゾーン70を複数の投球エリア(区分領域)に分割する処理が、CPU7により実行される。図3では、ミートゾーン70が、上下方向に5分割、左右方向に5分割されている。そして、ミートゾーン70の中央部の「3×3」のエリア(太線で囲んだエリア)が、ストライクゾーン71となっており、その他のエリアがボールゾーン72となっている。各投球エリアは、エリア用の識別データ(Ia,Ja)で識別される。ここでは、「Ia=2,3,4、Ja=2,3,4」で定義される範囲が、ストライクゾーン71に対応している。また、「Ia≠2,3,4、Ja≠2,3,4」で定義される範囲が、ボールゾーン72に対応している。
さらに、ここでは、上述したミートゾーン70の4隅の位置座標データに基づいて、ミートゾーン70を5つに等分割する処理を、CPU7に実行させることにより、各投球エリア(区分領域)の4隅の位置座標データが算出される。この4隅の位置座標データによって、各投球エリアの位置がゲーム空間において定義される。また、各投球エリアの4隅の位置座標データに基づいて、各投球エリアの重心G(Ia,Ja)の位置座標データを算出する処理が、CPU7により実行される。なお、図3では、重心G(Ia,Ja)は、黒丸記号で記されている。
続いて、ミートゾーン70に、部分領域が設定される。ここでは、ミートゾーン左部の複数の投球エリアの識別データ(Ia,Ja)を、CPU7に認識させることによって、左部の部分領域が、内角領域B1としてミートゾーン70に設定される。また、ミートゾーン右部の複数の投球エリアの識別データ(Ia,Ja)を、CPU7に認識させることによって、右部の部分領域が、外角領域B2としてミートゾーン70に設定される。同様に、ミートゾーン上部の複数の投球エリアの識別データ(Ia,Ja)を、CPU7に認識させることによって、上部の部分領域が、高目領域B3としてミートゾーン70に設定される。また、ミートゾーン下部の複数の投球エリアの識別データ(Ia,Ja)を、CPU7に認識させることによって、下部の部分領域が、低目領域B4としてミートゾーン70に設定される。
図4に示すように、「Ia=1,2、Ja=1,2,3,4,5」で定義される範囲が、内角領域B1に対応している。また、「Ia=4,5、Ja=1,2,3,4,5」で定義される範囲が、外角領域B2に対応している。また、「Ia=1,2,3,4,5、Ja=4,5」で定義される範囲が、高目領域B3に対応している。さらに、「Ia=1,2,3,4,5、Ja=1,2」で定義される範囲が、低目領域B4に対応している。
たとえば、投球エリアの識別データ(Ia,Ja)が、たとえば「Ia=1,2、Ja=3」である場合、内角領域B1の識別データMI(Ia,Ja)に、所定の値「1」を割り当てる処理が、CPU7により実行される。また、投球エリアの識別データ(Ia,Ja)が、たとえば「Ia=4,5、Ja=3」である場合、外角領域B2の識別データMI(Ia,Ja)に、所定の値「2」を割り当てる処理が、CPU7により実行される。また、投球エリアの識別データ(Ia,Ja)が、たとえば「Ia=3、Ja=4,5」である場合、高目領域B3の識別データMI(Ia,Ja)に、所定の値「3」を割り当てる処理が、CPU7により実行される。さらに、投球エリアの識別データ(Ia,Ja)が、たとえば「Ia=3、Ja=1,2」である場合、低目領域B4の識別データMI(Ia,Ja)に、所定の値「4」を割り当てる処理が、CPU7により実行される。
同様に、投球エリアの識別データ(Ia,Ja)が、たとえば「Ia=1,2、Ja=4,5」である場合、「内角領域B1および高目領域B3」の識別データMI(Ia,Ja)に、所定の値「5」が割り当てられる。また、投球エリアの識別データ(Ia,Ja)が、たとえば「Ia=1,2、Ja=1,2」である場合、「内角領域B1および低目領域B4」の識別データMI(Ia,Ja)に、所定の値「6」が割り当てられる。また、投球エリアの識別データ(Ia,Ja)が、たとえば「Ia=4,5、Ja=4,5」である場合、「外角領域B2および高目領域B3」の識別データMI(Ia,Ja)に、所定の値「7」が割り当てられる。さらに、投球エリアの識別データ(Ia,Ja)が、たとえば「Ia=4,5、Ja=1,2」である場合、「外角領域B2および低目領域B4」の識別データMI(Ia,Ja)に、所定の値「8」が割り当てられる。
続いて、ミートカーソルMCの設定が、CPU7により実行される(S403)。詳細には、RAM12に格納された、ミートカーソルMCの真芯位置を示す位置座標データを、CPU7に認識させることによって、ミートカーソルMCの真芯MSがゲーム空間に設定される。ミートカーソルMCの真芯MSの初期位置は、ミートゾーン70の重心位置である(図5を参照)。そして、この真芯MSの位置を基準とした、RAM12に格納された、ミートカーソルMCをゲーム空間に設定するための楕円方程式を、CPU7に認識させることによって、楕円状のミートカーソルMCがミートゾーン70に設定される。
なお、プレイヤからの命令又はAIプログラムに基づいた命令によって、ミートカーソルMCは移動する。この場合も、ミートカーソルMCの真芯MSの位置を基準として、ミートカーソル用の楕円方程式をミートゾーン70上に設定することによって、楕円状のミートカーソルMCがミートゾーン70に設定される。
ここでは、4つの楕円方程式が用意されており、各楕円方程式によって、ミートカーソルMCにおける複数の部分領域の境界が設定される。具体的には、ミートゾーン70上のミートカーソルMCの位置は、上述した絶対座標系(XYZ座標系)で定義される。また、ミートカーソルMCの形態は、図6に示すように、ミートカーソル用の相対座標系(xz座標系)において、定義される。このミートカーソル用の相対座標系では、ミートカーソルMCの真芯MSの位置が、原点に設定される。そして、このミートカーソルMCの真芯MSの位置を基準として、第1象限に位置するミートカーソルMCの境界、第2象限に位置するミートカーソルMCの境界、第3象限に位置するミートカーソルMCの境界、および第4象限に位置するミートカーソルMCの境界それぞれが、楕円方程式によって定義される。以下では、第1象限の楕円方程式、第2象限の楕円方程式、第3象限の楕円方程式、および第4象限の楕円方程式それぞれを、第1楕円方程式D1、第2楕円方程式D2、第3楕円方程式D3、第4楕円方程式D4と呼ぶ。
また、ここで、楕円方程式を、一般的に、「(x・x)/(a・a)+(z・z)/(b・b)=1」と記述すると、この楕円方程式では、「a>b」であり、長軸の長さが「2a」、短軸の長さが「2b」である。図6に示したように、第1楕円方程式D1では、上記の楕円方程式の「a」および「b」を、「a1」および「b1」と記す。また、第2楕円方程式D2では、上記の楕円方程式の「a」および「b」を、「a2」および「b2」と記す。また、第3楕円方程式D3では、上記の楕円方程式の「a」および「b」を、「a3」および「b3」と記す。さらに、第4楕円方程式D4では、上記の楕円方程式の「a」および「b」を、「a4」および「b4」と記す。このように各楕円方程式D1,D2,D3,D4を設定することによって、各楕円方程式D1,D2,D3,D4を区別する。
なお、図5および図6は、各楕円方程式D1,D2,D3,D4を用いてミートカーソルMCの形態を定義した一例である。図5および図6に示した楕円では、各楕円方程式D1,D2,D3,D4の係数は、「a1=a4」、「a2=a3」、「b1=b2」、「b3=b4」の関係を有している。すなわち、後述するように、ある楕円方程式の長軸および短軸の少なくともいずれか一方が、変更された場合、上記の関係に基づいて、他の長軸および短軸の少なくともいずれか一方も、同時に変更される。
また、ミートカーソルMCには、4つの部分領域Rn、たとえば内角領域R1、外角領域R2、高目領域R3、および低目領域R4が、設定される。具体的には、図6のミートカーソルMCにおいて、領域r2および領域r3から構成される短軸左側が、内角領域R1に設定され、領域r1および領域r4から構成される短軸右側が、外角領域R2に設定される。また、図6のミートカーソルMCにおいて、領域r1および領域r2から構成される長軸上側が、高目領域R3に設定され、領域r3および領域r4から構成される長軸下側が、低目領域R4に設定される。
より具体的には、第2象限に位置するミートカーソルMCの境界、および第3象限に位置するミートカーソルMCの境界と、ミートカーソルMCの短軸(ミートカーソル用の相対座標系におけるz軸)とで囲まれた領域が、内角領域R1に設定される。また、第1象限に位置するミートカーソルMCの境界、および第4象限に位置するミートカーソルMCの境界と、ミートカーソルMCの短軸(ミートカーソル用の相対座標系におけるz軸)とで囲まれた領域が、外角領域R2に設定される。同様に、第1象限に位置するミートカーソルMCの境界、および第2象限に位置するミートカーソルMCの境界と、ミートカーソルMCの長軸(ミートカーソル用の相対座標系におけるx軸)とで囲まれた領域が、高目領域R3に設定される。また、第3象限に位置するミートカーソルMCの境界、および第4象限に位置するミートカーソルMCの境界と、ミートカーソルMCの長軸(ミートカーソル用の相対座標系におけるx軸)とで囲まれた領域が、低目領域R4に設定される。なお、ここに示した各境界は、上記の楕円方程式によって定義されている。
続いて、ミートゾーン70の部分領域とミートカーソルMCの部分領域とが、関連付けられる(S404)。詳細には、ミートゾーン70の部分領域を識別するための識別データMI(Ia,Ja)と、ミートカーソルMCの部分領域を規定するための楕円方程式D1,D2,D3,D4とを関連づける処理を、CPU7に実行させることによって、ミートゾーン70の部分領域とミートカーソルMCの部分領域とが、関連付けられる。
たとえば、ミートゾーン70の内角領域B1に対応する識別データMI(Ia,Ja)(=1)と、ミートカーソルMCの内角領域R1を規定するための楕円方程式(第2楕円方程式D2、第3楕円方程式D3)とが、CPU7により関連付けられる。これにより、後述するように、投手キャラクタがボールを投球したときに、ボールの投球エリアの識別データ(Ia,Ja)が、ミートゾーン70の内角領域B1に対応する識別データMI(Ia,Ja)であった場合、すなわちミートゾーン70の部分領域の識別データMI(Ia,Ja)が数値「1」であるとCPU7に判断された場合、ミートカーソルMCの内角領域R1を規定するための、第2楕円方程式D2と第3楕円方程式D3とが、ミートゾーン70の内角領域B1に対応するミートカーソルMCの部分領域を規定する方程式として、CPU7に認識される。
また、ミートゾーン70の外角領域B2に対応する識別データMI(Ia,Ja)(=2)と、ミートカーソルMCの外角領域R2を規定するための楕円方程式(第1楕円方程式D1、第4楕円方程式D4)とが、CPU7により関連付けられる。これにより、後述するように、投手キャラクタがボールを投球したときに、ボールの投球エリアの識別データ(Ia,Ja)が、ミートゾーン70の外角領域B2に対応する識別データMI(Ia,Ja)であった場合、すなわちミートゾーン70の部分領域の識別データMI(Ia,Ja)が数値「2」であるとCPU7に判断された場合、ミートカーソルMCの外角領域R2を規定するための、第1楕円方程式D1と第4楕円方程式D4とが、ミートゾーン70の外角領域B2に対応するミートカーソルMCの部分領域を規定する方程式として、CPU7に認識される。
同様に、ミートゾーン70の高目領域B3に対応する識別データMI(Ia,Ja)(=3)と、ミートカーソルMCの高目領域R3を規定するための楕円方程式(第1楕円方程式D1、第2楕円方程式D2)とが、CPU7により関連付けられる。また、ミートゾーン70の低目領域B4に対応する識別データMI(Ia,Ja)(=4)と、ミートカーソルMCの低目領域R4を規定するための楕円方程式(第3楕円方程式、第4楕円方程式)とが、CPU7により関連付けられる。
同様に、ミートゾーン70の「内角領域B1および高目領域B3」に対応する識別データMI(Ia,Ja)(=5)と、ミートカーソルMCの「内角領域R1および高目領域R3」を規定するための楕円方程式(第1楕円方程式D1、第2楕円方程式D2、第3楕円方程式D3)とが、CPU7により関連付けられる。また、ミートゾーン70の「内角領域B1および低目領域B4」に対応する識別データMI(Ia,Ja)(=6)と、ミートカーソルMCの「内角領域R1および低目領域R4」を規定するための楕円方程式(第2楕円方程式D2、第3楕円方程式D3、第4楕円方程式D4)とが、CPU7により関連付けられる。
同様に、ミートゾーン70の「外角領域B2および高目領域B3」に対応する識別データMI(Ia,Ja)(=7)と、ミートカーソルMCの「外角領域R2および高目領域R3」を規定するための楕円方程式(第1楕円方程式D1、第2楕円方程式D2、第4楕円方程式D4)とが、CPU7により関連付けられる。また、ミートゾーン70の「外角領域B2および低目領域B4」に対応する識別データMI(Ia,Ja)(=8)と、ミートカーソルMCの「外角領域B2および低目領域B4」を規定するための楕円方程式(第1楕円方程式D1、第3楕円方程式D3、第4楕円方程式D4)とが、CPU7により関連付けられる。
これにより、後述するように、投手キャラクタがボールを投球したときに、ボールの投球エリアの識別データが、ミートゾーン70の各部分領域B1,B2,B3,B4に対応する識別データMI(Ia,Ja)であった場合、対応する楕円方程式D1,D2,D3,D4が、CPU7に認識される。また、ボールの投球エリアに相対する相対エリアの識別データが、ミートゾーン70の各部分領域B1,B2,B3,B4に対応する識別データMI(Ia,Ja)であった場合、対応する楕円方程式D1,D2,D3,D4が、CPU7に認識される。
なお、上記のミートゾーン70の部分領域Bnの識別データMI(Ia,Ja)と楕円方程式D1,D2,D3,D4との対応関係は、ゲームプログラムにおいて予め規定されており、この対応関係を示す対応テーブルは、RAM12に格納されている。
続いて、図7に示すように、対戦画面がテレビジョンモニタ20に表示される(S405)。たとえば、試合の対戦に関するモデル、たとえば、選手キャラクタ、球場、および観客等のようなモデル、たとえば各モデルデータを、3次元ゲーム空間に配置する処理が、CPU7により実行される。そして、各モデル(各モデルデータ)が3次元ゲーム空間に配置されると、図7に示すように、試合の対戦に関する画像、たとえば、選手キャラクタ、球場、および観客等のような画像が、各画像データを用いて、テレビジョンモニタ20に表示される。各画像データは、RAM12に格納されており、画像表示時に読み出される。なお、図7では、本発明で主要な役割を果たすキャラクタ、たとえば投手キャラクタおよび打者キャラクタのみを表し、他のキャラクタやオブジェクトは省略している。
また、図7に示すように、対戦画面では、ストライクゾーン71の画像も、画像データを用いて、テレビジョンモニタ20に表示される。なお、この画像データも、RAM12に格納されており、必要に応じて、ストライクゾーン71の表示時に読み出される。なお、図4では、ミートゾーン70を破線で示しているが、テレビジョンモニタ20に表示される領域は、ストライクゾーン71だけである。このことは、後述する図8についても同様である。さらに、図7に示すように、対戦画面では、上記の楕円方程式によって定義されるミートカーソルMCの画像が、ミートカーソル用の画像データを用いて、テレビジョンモニタ20に表示される。なお、ミートカーソル用の画像データは、ゲームプログラムのロード時にRAM12に格納される。
続いて、対戦画面がテレビジョンモニタ20に表示された状態において、AIプログラムに基づいて、投球に関する命令が、投手キャラクタに対して指示される。たとえば、まず、球種を選択する命令がCPU7から発行されると、球種が設定される。球種は、球種データによってCPU7により管理されている。球種データには、球種ごとにRAM12に格納された所定の値が、CPU7により割り当てられる。次に、投手キャラクタに対して投球モーションを開始させるための命令が、CPU7から発行されると、投手キャラクタが投球モーションを開始する。すると、投手キャラクタの投球モーションが、画像データを用いて、テレビジョンモニタ20に表示される(S406)。
続いて、投手キャラクタが投球モーションを行っているときに、ボールを投げ込む目標である投球コース(目標投球コース)を設定するための命令が、CPU7から発行されると、目標投球コースM0のカーソルが、初期位置であるミートゾーン70の重心位置から、目標投球コースに移動する。そして、所定の時間が経過すると、目標投球コースM0のカーソルの位置が決定され、図9に示すように、目標投球コースM0がミートゾーン70上に設定される。すると、3次元ゲーム空間における目標投球コースM0の位置座標データが、CPU7に認識される。続いて、投手キャラクタにボールをリリースさせるための命令がCPU7から発行されると、ボールが投手キャラクタからリリースされる。このときに、3次元ゲーム空間におけるボールのリリースポイントの位置座標データが、CPU7に認識され、RAM12に格納される。
すると、球種データに含まれるボールの初速度データ、回転速度データ、および回転方向データと、目標投球コースM0の位置座標データと、ボールのリリースポイントの位置座標データと、リリースタイミングによって所定の値に設定される放出角度データ等とが、RAM12から読み出され、CPU7に認識される。そして、これらのデータを初期条件として用いることにより、ボールの軌道方程式を構成する各種変数を算出する処理が、CPU7により実行される。そして、ここで求めた各種変数をボールの軌道方程式に代入することによって、3次元ゲーム空間におけるボールの軌道が設定される。
なお、球種がストレートの場合には、上記のボールの軌道方程式がミートゾーン70(XZ平面)と交わる点(後述する第1到達コースM1)が、目標投球コースM0に一致するように、軌道方程式が修正される。すなわち、球種がストレートの場合には、目標投球コースM0と後述する第1到達コースM1とが同じ位置になる。
軌道方程式は、ボールの移動経路を特定するための方程式であるが、この軌道方程式を微分することによって、ボールの移動経路上の各位置におけるボールの移動速度を特定するための速度の方程式が算出される。この速度の方程式に基づいて、3次元ゲーム空間を移動するボールの速度は決定される。以下のボールの移動に関する説明において、ボールの移動速度について特別に記述を行わない場合は、この速度の方程式に基づいて、ボールの速度は決定される。
すると、ボールの軌道方程式によって規定されるボールの軌道が、ミートゾーン70(XZ平面)と交わる点を算出する処理が、CPU7により実行される。すると、ここで算出された点の位置座標データが、第1到達コースの位置座標データとして、CPU7に認識される。このようにして、第1到達コースM1(図9の四角記号を参照)が、ミートゾーン70に設定される(S407)。
上述した図9の第1到達コースM1は、球種が変化球の場合の例を示している。上述したように、球種がストレートの場合は、第1到達コースM1は、目標投球コースM0に一致する。
すると、第1到達コースM1が含まれる投球エリアを検出する処理が、CPU7により実行される。そして、ここで検出された投球エリアが、第1到達エリアE1(第1到達区分領域)として、CPU7に認識される(S408)。たとえば、複数の投球エリアそれぞれの重心の位置座標データと、第1到達コースM1の位置座標データとに基づいて、第1到達コースM1に最も近い投球エリアの重心G’(Ia’,Ja’)を検出する処理が、CPU7により実行される。また、この重心G’(Ia’,Ja’)のエリア用の識別データ(Ia’,Ja’)が、RAM12に格納される。そして、この重心G’(Ia’,Ja’)を有する投球エリアが、第1到達エリアE1として、CPU7に認識される。すなわち、ここで検出された重心G’(Ia’,Ja’)に対応するエリア用の識別データ(Ia’,Ja’)を、CPU7に認識させることにより、第1到達エリアE1が特定される。
ここで、第1到達コースM1に最も近い投球エリアの重心G’(Ia’,Ja’)の算出方法を、より詳細に説明すると、たとえば、複数の投球エリアの重心G(Ia,Ja)それぞれの位置と第1到達コースM1の位置との距離K(Ia,Ja)が、計算される。そして、複数の距離K(Ia,Ja)の中から最小の距離K’(Ia’,Ja’)が、検出される。そして、第1到達コースM1の位置から距離K’(Ia’,Ja’)を隔てた位置に存在する重心、すなわち距離K’(Ia’,Ja’)に対応するエリア用の識別データ(Ia’,Ja’)を、CPU7に認識させることにより、第1到達コースM1に最も近い投球エリアの重心G’(Ia’,Ja’)が決定され、第1到達エリアE1が特定される。
上記では、説明を容易にするために、ある打者キャラクタに対する1球目のボールが、投手キャラクタから投球された場合を例にして説明を行った。このため、ここでは、到達コースを「第1到達コース」という文言で示しているが、ある打者キャラクタに対するn球目のボールが、投手キャラクタから投球された場合は、その到達コースは「第n到達コース」という文言で表現される。以下では、一般的に記述するために、n球目のボールが、投手キャラクタから打者キャラクタに対して投球されたものとして、本システムの説明を行う。すなわち、「第n〜」という文言を用いて、本システムの説明を行う。なお、ここで用いられるnは、自然数である。
上述した内容を、この形態で記すと、n球目の到達コースが、第n到達コースM1としてCPU7に認識される。そして、第n到達コースM1が含まれる第n投球エリアの識別データ(Ia,Ja)を、上記と同様の形態でCPU7に認識させることによって、第n到達コースM1が含まれる第n投球エリアが、第n到達エリアEn(第n到達区分領域)として設定される。なお、以下では、第n投球エリアの識別データは、上記と同様の記号、すなわち(Ia’,Ja’)で表す。
続いて、投手キャラクタが投球したボールの第n到達エリアEnを含む部分領域Bn、すなわち第n到達エリアEnを含む部分領域Bnが、設定される(S409)。詳細には、RAM12に格納された、第n到達エリアEnの識別データ(Ia’,Ja’)を、CPU7に認識させることによって、第n到達エリアEnが含まれる部分領域Bnが、設定される。たとえば、投手キャラクタが投球したボールの第n到達エリアEnを含む部分領域Bnは、ミートゾーン70の内角領域B1、外角領域B2、高目領域B3、および低目領域B4の少なくともいずれか1つである。ここで設定される部分領域Bnは、「内角領域B1」、「外角領域B2」、「高目領域B3」、「低目領域B4」、「外角領域B2および高目領域B3」、「外角領域B2および低目領域B4」、「内角領域B1および高目領域B3」、および「内角領域B1および低目領域B4」のいずれかである。
なお、ここに示した、投手キャラクタが投球したボールの第n到達エリアEnを含む部分領域Bnとは、投手キャラクタがあるコースに投球したときに打者キャラクタが意識するコース、すなわち打者キャラクタの意識が及ぶ領域(範囲)に相当する。
具体的には、ボールの第n到達エリアEnのエリア用の識別データ(Ia’,Ja’)に基づいて、このエリア用の識別データ(Ia’,Ja’)に対応する部分領域Bnの識別データMI(Ia’,Ja’)が、CPU7に認識される。これにより、第n到達エリアEnを含む部分領域Bnが、設定される。たとえば、図9では、投手キャラクタが投球したボールの第n到達エリアEnが含まれる部分領域Bnは、ミートゾーン70の「内角領域B1および高目領域B3」である。ここでは、エリア用の識別データ(2,4)で定義される第n到達エリアEnが、ミートゾーン70の「内角領域B1および高目領域B3」に含まれている。
続いて、ミートゾーン70において、第n到達エリアEnに相対する第n相対エリアSn(相対区分領域)が、設定される(S410)。詳細には、図9に示すように、ミートゾーン70の真ん中(重心)の投球エリア、たとえば識別データ(Ia,Ja)が(3,3)である投球エリアを基準として、第n到達エリアEnに対して点対称の位置に配置された投球エリアが、第n相対エリアSn(第n相対区分領域)として、設定される。たとえば、第n到達エリアEnに対して点対称の位置に配置された投球エリアの識別データ(Ia,Ja)をCPU7に認識させることによって、第n相対エリアSnが設定される。たとえば、図9では、識別データ(4,2)で識別される投球エリアが、第n相対エリアSnとして設定される。
なお、ここでは、第n到達コースM1に相対する第n相対コースを、特定することなく、第n相対エリアSnを直接的に設定する場合の例を示したが、第n到達コースM1に相対する第n相対コースを算出した後に、第n相対コースを含む第n相対エリアSnを設定するようにしても良い。この場合は、ミートゾーン70の真ん中(重心)を基準として、第n到達コースM1の点対称の位置を、第n相対コースとして設定することによって、この第n相対コースを含むエリアが、第n相対エリアSnとして設定される。
続いて、ボールの第n到達エリアEnに相対する相対エリアSnを含む部分領域Bn、すなわち第n相対エリアSnを含む部分領域Bnが、設定される(S411)。たとえば、まず、RAM12に格納された、第n相対エリアSnの識別データ(Ia,Ja)が、CPU7に認識される。次に、第n相対エリアSnの識別データ(Ia,Ja)に基づいて、この第n相対エリアSnの識別データ(Ia,Ja)に対応する部分領域Bnの識別データMI(Ia,Ja)が、CPU7に認識される。このようにして、第n相対エリアSnを含む部分領域Bnが、設定される。
たとえば、第n相対エリアSnを含む部分領域Bnは、ミートゾーン70の内角領域B1、外角領域B2、高目領域B3、および低目領域B4の少なくともいずれか1つである。より具体的には、ここで設定される部分領域は、「内角領域B1」、「外角領域B2」、「高目領域B3」、「低目領域B4」、「外角領域B2および高目領域B3」、「外角領域B2および低目領域B4」、「内角領域B1および高目領域B3」、および「内角領域B1および低目領域B4」のいずれかである。図9では、第n相対エリアSnが含まれる部分領域Bnは、ミートゾーン70の「外角領域B2および低目領域B4」である。
続いて、投手キャラクタからリリースされたボールを、軌道方程式によって規定される軌道上で移動させる処理が、CPU7により実行される。ここで、3次元ゲーム空間においてボールが軌道上を移動しているときには、1フレーム毎に、このボールの位置を、XZ平面(ミートゾーン70が含まれる)に投影する処理が、CPU7により実行される。すると、XZ平面に投影されたボールの位置座標データ、すなわち、3次元ゲーム空間を移動しているボールの位置に対応するミートゾーン70上のボールの位置座標データが、CPU7に認識される。
すると、3次元ゲーム空間を移動するボールの位置を報知するボールBBの画像(図8を参照)と、3次元ゲーム空間を移動するボールをミートゾーン70に投影した位置を報知する第n着弾点CC1(第n報知子、図8および図10を参照)とが、各画像データを用いて、テレビジョンモニタ20に表示される(S412)。ここでは、第n着弾点CC1は、投手キャラクタからボールがリリースされた時点で、図10に示すように、目標投球コースM0の位置において、テレビジョンモニタ20に表示される。
ここで、ボールBBの画像は、投手キャラクタからリリースされたボールに対応し、第n着弾点CC1は、ボールがミートゾーン70に到達する予想位置に対応する。また、投手キャラクタからボールがリリースされると、投手キャラクタからリリースされたボールBBが、第n到達コースM1に近づくにつれて、第n着弾点CC1は、目標投球コースM0から第n到達コースM1に近づく。このような状態の画像が、各画像データを用いて、テレビジョンモニタ20に表示される。
なお、第n着弾点CC1の大きさは、所定の大きさに設定されている。具体的には、着弾点CC1が円である場合、第n着弾点CC1の半径が、所定の大きさに設定されている。すなわち、第n着弾点CC1の半径データR1(初期データ)は、ゲームプログラムにおいて予め所定の値に設定されており、RAM12に格納されている。
続いて、上記の投球結果が、所定の結果、すなわち、打者キャラクタがボールキャラクタを打ち返し、且つそれが内野または外野に飛ぶ以外の結果であるか否かが、CPU7により判断される(S413)。具体的には、見送り(三振を除く)、空振り(三振を除く)、およびファールのいずれかであるか否かが、CPU7により判断される。そして、この投球結果が所定の結果であった場合(S413でYes)、ミートゾーン70上の第n到達コースM1に対応する、ミートカーソルMCの内部の部分領域が、第1対応部分領域TB1として設定される(S414)。具体的には、ミートゾーン70の部分領域Bnの識別データMI(Ia’,Ja’)に基づいて、この識別データMI(Ia’,Ja’)に対応するミートカーソルMC内部の部分領域が、第1対応部分領域TB1として設定される。詳細には、第n到達エリアEn(到達区分領域)を含む部分領域Bnに関連付けられた、ミートカーソルMCの部分領域を規定するための楕円方程式(D1,D2,D3,D4の少なくともいずれか1つ)が、CPU7に認識される。ここでは、この楕円方程式の認識が、第n到達コースM1に対応するミートカーソルMC内部の部分領域TB1(第1対応部分領域)の認識に対応している。
ここで、nが2以上である場合、第n到達コースM1(今回の到達コース)に対応する第1対応部分領域TB1は、第(n−1)到達コース(前回の到達コース)に対応する第1対応部分領域TB1に代えて、新規の第1対応部分領域TB1として設定される。なお、上記の投球結果が所定の結果でなかった場合(S413でNo)、後述するステップ422(S422)の処理が、CPU7により実行される。
続いて、ミートゾーン70上の第n相対位置に対応する、ミートカーソルMCの内部の部分領域が、第2対応部分領域TB2として設定される(S415)。具体的には、ミートゾーン70の第n相対エリアSnが含まれる部分領域Bnの識別データMI(Ia,Ja)に基づいて、この識別データMI(Ia,Ja)に対応するミートカーソルMC内部の部分領域が、第2対応部分領域TB2として設定される。詳細には、ミートゾーン70の第n相対エリアSnを含む部分領域Bnに関連付けられた、ミートカーソルMCの部分領域を規定するための楕円方程式(D1,D2,D3,D4の少なくともいずれか1つ)が、CPU7に認識される。ここでは、この楕円方程式の認識が、第n相対コースに対応するミートカーソルMC内部の部分領域TB2(第2対応部分領域)の認識に対応している。
ここで、nが2以上である場合、第n相対コース(今回の相対コース)に対応する第2対応部分領域は、第(n−1)相対コース(前回の相対コース)に対応する第2対応部分領域に代えて、新規の第1対応部分領域TB1として設定される。
続いて、第1対応部分領域TB1の形態が変更され、第2対応部分領域の形態が変更され、これら形態の変更に応じて、ミートカーソルMC全体の形態が補正される(S416)。詳細には、第1対応部分領域TB1が拡大され、第2対応部分領域が縮小され、これら形態の変更に応じて、ミートカーソルMC全体の形態が補正される。
たとえば、ミートカーソルMCの真芯MSの位置(最適ポイント)を基準として、第1対応部分領域TB1を拡大するために、第1対応部分領域TB1を定義する楕円方程式が、設定される。また、ミートカーソルMCの真芯MSの位置(最適ポイント)を基準として、第2対応部分領域を縮小するために、第2対応部分領域を定義する楕円方程式が、設定される。そして、ミートカーソルMC全体の形態を整えるために、他の楕円方程式が設定される。このようにして、ミートカーソルMC全体の形態が、補正される。
ここでは、4つの部分領域それぞれの楕円方程式において、長軸の長さおよび短軸の長さを所定の大きさに変更する処理を、CPU7に実行させることによって、ミートカーソルMCの第1対応部分領域TB1が拡大され、ミーカーソルの第2対応部分領域が縮小される。
より具体的には、ミートカーソルMCの第1対応部分領域TB1の拡大は、次のように行われる。たとえば、ボールがミートゾーン70の内角領域B1に到達した場合、第2楕円方程式D2の長軸a2を定義する第2長軸データと、第3楕円方程式D3の長軸a3を定義する第3長軸データとに、所定の調整データたとえば0.2を加算する処理が、CPU7により実行される。これにより、ミートカーソルMCの内角領域R1(第1対応部分領域TB1)が拡大される。同様に、ボールがミートゾーン70の外角領域B2に到達した場合、第1楕円方程式D1の長軸a1を定義する第1長軸データと、第4楕円方程式D4の長軸a4を定義する第4長軸データとに、所定の調整データたとえば0.2を加算する処理が、CPU7により実行される。これにより、ミートカーソルMCの外角領域R2(第1対応部分領域TB1)が拡大される。
また、ボールがミートゾーン70の高目領域B3に到達した場合、第1楕円方程式D1の短軸b1を定義する第1短軸データと、第2楕円方程式D2の短軸を定義する第2短軸データb2とに、所定の調整データたとえば0.2を加算する処理が、CPU7により実行される。これにより、ミートカーソルMCの高目領域R3(第1対応部分領域TB1)が拡大される。同様に、ボールがミートゾーン70の低目領域B4に到達した場合、第3楕円方程式D3の短軸b3を定義する第3短軸データと、第4楕円方程式D4の短軸b4を定義する第4短軸データとに、所定の調整データたとえば0.2を加算する処理が、CPU7により実行される。これにより、ミートカーソルMCの低目領域R4(第1対応部分領域TB1)が拡大される。
同様に、ミートカーソルMCの第2対応部分領域の縮小は、次のように行われる。たとえば、ボールがミートゾーン70の内角領域B1に到達した場合、第1楕円方程式D1の長軸a1を定義する第1長軸データと、第4楕円方程式D4の長軸a4を定義する第4長軸データとから、所定の調整データたとえば0.2を減算する処理が、CPU7により実行される。これにより、ミートカーソルMCの外角領域R2(第2対応部分領域)が縮小される。同様に、ボールがミートゾーン70の外角領域B2に到達した場合、第2楕円方程式D2の長軸a2を定義する第2長軸データと、第3楕円方程式D3の長軸a3を定義する第3長軸データとから、所定の調整データたとえば0.2を減算する処理が、CPU7により実行される。これにより、ミートカーソルMCの内角領域R1(第2対応部分領域)が縮小される。
また、ボールがミートゾーン70の高目領域B3に到達した場合、第3楕円方程式D3の短軸b3を定義する第3短軸データと、第4楕円方程式D4の短軸b4を定義する第4短軸データとから、所定の調整データたとえば0.2を減算する処理が、CPU7により実行される。これにより、ミートカーソルMCの低目領域R4(第2対応部分領域)が縮小される。同様に、ボールがミートゾーン70の低目領域B4に到達した場合、第1楕円方程式D1の短軸b1を定義する第1短軸データと、第2楕円方程式D2の短軸b2を定義する第2短軸データとから、所定の調整データたとえば0.2を減算する処理が、CPU7により実行される。これにより、ミートカーソルMCの高目領域R3(第2対応部分領域)が縮小される。
ここでは、ボールが、ミートゾーン70における1つの部分領域Bn、たとえば内角領域B1、外角領域B2、高目領域B3、および低目領域B4のいずれか1つの部分領域に、到達した場合の例が、示されている。しかしながら、ボールが、ミートゾーン70において2つの部分領域が重なった領域(重合領域)、たとえば「外角領域B2および高目領域B3」、「外角領域B2および低目領域B4」、「内角領域B1および高目領域B3」、および「内角領域B1および低目領域B4」のいずれかの重合領域に、到達した場合、上述した、ボールが1つの部分領域に到達した場合の処理が、各部分領域に対して繰り返し実行される。
たとえば、ボールが内角高目の領域B1,B3に到達した場合、第1楕円方程式D1、第2楕円方程式D2、および第3楕円方程式D3それぞれが、上記のように修正される。また、ボールが内角低目の領域B1,B4に到達した場合、第2楕円方程式D2、第3楕円方程式D3、および第4楕円方程式D4それぞれが、上記のように修正される。同様に、ボールが外角高目の領域B2,B3に到達した場合、第1楕円方程式D1、第2楕円方程式D2、および第4楕円方程式D4それぞれが、上記のように修正される。また、ボールが外角低目の領域B2,B4に到達した場合、第1楕円方程式D1、第3楕円方程式D3、および第4楕円方程式D4それぞれが、上記のように修正される。
このように、ミートカーソルMCの真芯MSの位置(最適ポイント)を基準として、第1対応部分領域TB1を拡大し、第2対応部分領域TB2を縮小することによって、ミートカーソル全体の形態が補正される。
具体的には、図9に示したコース、たとえば(2,4)で定義される内角高目のコースに、ボールが投球された場合、図11に示すように、ミートカーソルMCの形態が補正される。この場合は、ミートカーソルの内角高目の領域r2が拡大され、ミートカーソルの外角低めの領域r4が縮小される。そして、これらの領域r2,r4の拡大および縮小に連動して、隣接する領域r1,r3が調整される。このようにして、ミートカーソル全体の形態が補正される。また、次の繰り返し計算において、たとえば、図9に示したコースに再び投球された場合、ミートカーソルの内角高目の領域r2がさらに拡大され、ミートカーソルの外角低めの領域r4がさらに縮小される。
なお、図11には、図9に示したコースにボールが1球投球された場合の例が、示されている。また、図11では、補正前のミートカーソルを破線で示し、補正後のミートカーソルを太線で示している。
このように、本実施形態では、同じコースに投球された場合は、そのコース(ex. 内角高目)に対する打者の意識が強くなるので、この意識の強さが、ミートカーソルの大きさで示される。また、この場合は、そのコースに相対するコース(ex. 外角低目)に対する打者の意識が弱くなるので、この意識の弱さが、ミートカーソルの小ささで示される。ここでは、図9に示したコースに再び投球された場合を一例として、説明を行ったが、たとえば、図9に示したコースとは異なる他のコースに投球されたとしても、上記の補正処理を実行することによって、コースに対して打者が持つ意識を、ミートカーソルMCの大きさで示すことができる。
なお、たとえば、投手キャラクタが、n球目に、あるコース(ex. 内角高目)に投球した後に、(n+1)球目に、このコースに相対するコース(ex. 外角低目)に投球した場合、まず、ミートカーソルの形状は、n球目において、内角高目が拡大され、外角低目が縮小される。次に、(n+1)球目において、外角低目が拡大され、内角高目が拡大される。このように、n球目の投球において、(n+1)球目の投球コースに相対する投球コースに投球された場合、前回のミートカーソルの補正が、今回のミートカーソルの補正によって取り消される。すなわち、n球目の結果として内角に向かった意識の影響が、(n+1)球目の外角への投球のため、相殺されて取り消されることとなり、(n+3)球目では、結果的に、n球目と同じミートカーソルで、打撃を行うことになる。これにより、上述したようなコースに対する意識の集中を再現するだけでなく、コースに対する意識の開放も同時に再現することができる。
ここで、ボールが、ミートゾーン(第1領域)の重心位置、たとえば(3,3)で定義される投球エリアの重心位置に投球された場合についての説明を行っておく。この場合は、ミートカーソルMCの形態が初期化される。具体的には、ボールがど真ん中に投球された場合、ミートカーソルMCを規定するための楕円方程式D1,D2,D3,D4の各種パラメータを所定の初期値に設定する処理が、CPU7により実行される。また、ボールが、ミートゾーン(第1領域)の重心位置を除いた中央部、たとえば(3,3)で定義される投球エリア内において重心位置を除いた位置に、投球された場合、ミートカーソルMCの形態は、補正されず維持化される。具体的には、ボールが、ど真ん中近傍に投球された場合、楕円方程式D1,D2,D3,D4の各種パラメータを変更する処理が、CPU7により実行されない。このように、本実施形態では、ど真ん中やど真ん中近傍の投球コース(ミートゾーンの中央部)は、内角、外角、高目、および低目等のような投球コースと比較して、打者の意識が影響を受けにくいという考えに基づいて、ここではミートカーソルMCの形態が、上下左右に偏りを生じないように、設定される。言い換えると、本実施形態では、投球ボールが、上記の中央部(ど真ん中の部分)を除いた部分、すなわち偏った領域に到達したときのみ、ミートカーソルの形態が、打者の意識影響を反映した偏りのある形態に設定される。この理由は、現実の野球では、ボールが中央部に来ている場合は、打者にとっての意識が上下左右いずれかの方向にずれることはないためである。
上記の調整処理において、楕円方程式の係数の関係が、「a>b」ではなく、「a<b」となった場合、長軸と短軸とが入れ替えられる。すなわち、この場合、楕円の焦点は、z軸上に形成され、縦長の楕円になる。また、「a=b」の場合は、円の方程式で、ミートカーソルMCの境界は定義される。
続いて、打者キャラクタのミート能力が所定の大きさ以上であるか否かが、判断される(S417)。そして、打者キャラクタのミート能力が所定の大きさ以上である場合(S417でYes)、ミートカーソルMCの大きさが、所定の大きさ未満であるか否かが判断される。そして、ミートカーソルMCの大きさが、所定の大きさ未満であった場合に、ミートカーソルMCが、所定の大きさに補正される(S419)。
具体的には、打者キャラクタのミート能力を示す能力データN(IDK)が、所定の値以上であった場合、RAM12に格納された、楕円方程式の長軸の長さおよび短軸の所定の長さ、すなわち能力が高い打者キャラクタ用の長軸および短軸の所定の最小値が、CPU7に認識される。そして、ミートカーソルMCの大きさが、所定の大きさ未満であった場合、楕円方程式の長軸の長さおよび短軸の長さを上記の最小値に設定する処理が、CPU7により実行される。これにより、ミート能力の高い打者キャラクタは、ミートカーソルMCの大きさが所定の大きさ未満にならないように、ミートカーソルMCの大きさが補正される。
なお、打者キャラクタのミート能力が所定の大きさ未満である場合(S417でNo)、後述するステップ420(S420)の処理が、CPU7により実行される。また、ミートカーソルMCの大きさが、所定の大きさ以上であった場合(S418でNo)も、後述するステップ420(S420)の処理が、CPU7により実行される。
続いて、この打者キャラクタが交代したか否かを判断する処理が、CPU7により実行される(S420)。そして、この打者キャラクタが交代した場合(S420でYes)、ミートカーソルMCの形態が初期化される(S421)。ここでは、この打者キャラクタが交代した場合、ミートカーソルMCを規定するための楕円方程式の各種パラメータを所定の初期値に設定する処理が、CPU7により実行される。これによって、ミートカーソルMCの形態が初期化される。
一方で、この打者キャラクタが交代していない場合(S420でNo)、すなわちこの打者キャラクタが未だに投手キャラクタと対戦している場合、上記のステップ403(S403)の処理が、CPU7により再実行される。この場合、ステップ403(S403)では、ステップ416(S416)において補正された楕円方程式に基づいて、ミートカーソルを設定する処理が、CPU7により実行される。これにより、ステップ405(S405)では、打者キャラクタのコースに対する意識が反映されたミートカーソルが、テレビジョンモニタ20に表示される。
このように、投手キャラクタが投球を繰り返すと、投球されたコースに応じて、ミートカーソルの形態も繰り返し補正される。このため、ここでは、上記の打者キャラクタの能力とは関係なく、ミートカーソルの大きさの上限値および下限値、たとえば、長軸の長さおよび短軸の長さに対する上限値および下限値が、設定されている。これにより、ミートカーソルの形態の補正が繰り返されたときに、ミートカーソルが、大きくなり過ぎたり、小さくなり過ぎたりしないように、規制することができる。なお、ここで設定される下限値は、能力の高い打者キャラクタに用意された最小値より小さな値に、設定されている。
続いて、ミートカーソルMCの形態が初期化されると、試合イベントが終了したか否かが、CPU7により判断される(S422)。そして、試合イベントが終了していない場合(S422でNo)、ステップ402(S402)の処理が、CPU7により実行される。すなわち、次の打者キャラクタとの対戦が、開始される。一方で、試合イベントが終了した場合(S422でYes)、試合結果のデータやゲーム継続用のデータ等を保存する命令が、CPU7から発行される。すると、これらのデータが、RAM12に格納され、試合イベントが終了する。
上記のような本実施形態では、打者キャラクタのスイング動作の対象となるミートカーソルMCにおいて、ボールの到達コースに対応する部分領域(第1対応部分領域TB1)が、拡大される。また、この部分領域において、ボールの到達コースに相対する相対コースに対応する部分領域(第2対応部分領域TB2)が、縮小される。このように、ボールの到達コースに対応する部分領域を拡大し、相対コースに対応する部分領域を縮小することによって、打者キャラクタの意識がボールの到達コースに存在する事象を、ミートカーソルMCの形態変化によって、再現することができる。
〔他の実施形態〕
(a)前記実施形態では、ミートカーソルを所定の割合で補正する場合の例、たとえば長軸データおよび短軸データの少なくともいずれか一方の値に、所定の調整データを加算したり減算したりする場合の例が、示されている。しかしながら、ミートカーソルを補正する形態は、前記実施形態に限定されず、どのようにしても良い。具体的には、ミートゾーン(第1領域)の重心位置とボールの到達コースとの距離や、(3,3)で定義される投球エリアと、ボールの到達エリアとの距離等に応じて、ミートカーソルの補正率を変更するようにしても良い。これは、上記の長軸データや短軸データに加算・減算される調整データに、上記の距離に応じた補正係数を乗じる処理を実行することによって、実現される。たとえば、長軸データおよび短軸データそれぞれを、「AD」および「BD」と表記し、調整データおよび補正係数それぞれを、「CD」および「H(k)」と表記すると、補正後の長軸データAD’および短軸データBD’それぞれは、「AD’=AD±H(k)・CD」および「BD’=BD±H(k)・CD」によって算出される。ここで、パラメータkは、上記の距離に対応するパラメータであり、このパラメータkと補正計数H(k)との関係は、所定の対応テーブルにおいて規定されている。この対応テーブルは、ゲームプログラムにおいて予め規定されており、RAM12に格納されている。
(b)前記実施形態では、ゲームプログラムを適用しうるコンピュータの一例としての開発用のゲーム装置を用いた場合の例を示したが、コンピュータは、前記実施形態に限定されず、モニタが別体に構成されたゲーム装置、モニタが一体に構成されたゲーム装置、ゲームプログラムを実行することによってゲーム装置として機能するパーソナルコンピュータやワークステーションなどにも同様に適用することができる。
(c)本発明には、前述したようなゲームを実行するプログラムおよびこのプログラムを記録したコンピュータ読み取り可能な記録媒体も含まれる。この記録媒体としては、カートリッジ以外に、たとえば、コンピュータ読み取り可能なフレキシブルディスク、半導体メモリ、CD−ROM、DVD、MO、ROMカセット、その他のものが挙げられる。