説明

ゲームプログラム、ゲーム装置、ゲーム制御方法

【課題】接触入力式のモニタの利点を積極的に利用した系統的な操作形態で、命令を指示することができるゲームを、提供する。
【解決手段】本プログラムでは、オブジェクトKBの移動形態データNKが、記憶部13に格納される。そして、オブジェクトKBを、画像データを用いてモニタ3aに表示する。そして、指示手段がモニタ3aに接触したときに、指示手段の接触位置が複数であるか否かが判断される。そして、接触位置が複数であった場合に、複数の接触位置の間隔Lに応じて、複数の移動形態を絞り込む。そして、指示手段が複数の接触位置を起点としてモニタ3aに接触した状態で移動したときに、接触位置の移動状態に応じて、オブジェクトが移動するときの移動形態を、決定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ゲームプログラム、特に、接触入力式の画像表示部に指示手段を接触させることにより、ゲームを実行可能なゲームプログラムに関する。また、このゲームプログラムを実行可能なゲーム装置、およびこのゲームプログラムに基づいてコンピュータにより制御されるゲーム制御方法に関する。
【背景技術】
【0002】
従来から様々なビデオゲームが提案されている。これらビデオゲームは、ゲーム装置において実行されるようになっている。たとえば、一般的な家庭用のゲーム装置は、モニタと、モニタとは別体のゲーム装置本体と、ゲーム装置本体とは別体の入力装置たとえばコントローラとを有している。コントローラには、複数の入力釦が配置されている。
【0003】
また、ポータブルタイプのゲーム装置は、タッチパネル式のモニタと、モニタと一体のゲーム装置本体と、ゲーム装置本体に一体に設けられた入力ボタンとを有している。
【0004】
このようなゲーム装置では、3次元オブジェクトの向きを、モニタ上において回転することができるようになっている。特に、タッチパネル式のモニタを有するゲーム装置では、モニタに表示された3次元オブジェクトたとえば球体の内部において、タッチペンをモニタに接触させ移動すると、タッチペンの移動に連動して、球体が回転する状態が、モニタに表示されるようになっている(特許文献1を参照)。
【0005】
一方で、球体の回転が考慮される可能性のあるゲームの1つとして、たとえば、野球ゲームが知られている(非特許文献1を参照)。この野球ゲームでは、たとえば、プレイヤがコントローラを操作することによって、投手キャラクタから投球されるボールの球種が、設定される。そして、ボールの投球コースが設定され、ボールが投手キャラクタからリリースされると、設定された投球コースに向けてボールが移動する状態が、モニタに表示される。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2006−122285号公報
【非特許文献】
【0007】
【非特許文献1】実況パワフルプロ野球15、コナミ株式会社、2008年7月24日、PlayStation版
【発明の概要】
【発明が解決しようとする課題】
【0008】
従来の野球ゲームは、主に、家庭用のゲーム装置において実現されてきた。しかしながら、近年のポータブルタイプのゲーム装置の普及により、従来のゲームを、ポータブルタイプのゲーム装置においても実現する試みがなされるようになってきた。
【0009】
たとえば、家庭用のゲーム装置において実現されていたゲームを、ポータブルタイプのゲーム装置において実現する場合、最も容易な方法は、家庭用のゲーム装置において実現されていたゲームの仕様を、そのまま、ポータブルタイプのゲーム装置において実現することである。現実に、この方法で、家庭用のゲーム装置において実現されていたゲームが、ポータブルタイプのゲーム装置に移植された例は多い。
【0010】
このようにして、家庭用のゲーム装置のゲームを、ポータブルタイプのゲーム装置に移植した場合、ゲーム装置の大きさに違いはあるものの、両ゲーム装置において実行されるゲームの操作形態は、基本的には同じである。たとえば、ポータブルタイプのゲーム装置がタッチパネルを有する場合、家庭用のゲーム装置のコントローラの十字ボタンで選択していた項目を、ポータブルタイプのゲーム装置ではタッチパネル上で直接選択するといった程度の違いは存在するものの、両ゲーム装置のモニタに表示される情報や、この情報に基づいた命令の指示形態は、基本的には同じである。このように、従来のゲームでは、ゲーム装置の主たる入力装置がコントローラからタッチパネルに変化しても、ゲームの一連の操作形態は、タッチパネルの利点を積極的に利用したものにはなっていなかった。
【0011】
ここで、従来のゲームにおいて対象を回転させる必要がある場合は、上述したように、モニタに表示された対象たとえばボールを、タッチペン等を用いて、回転させることができる。この機能は、モニタに表示されたボールそのものを、視覚的に違和感なく回転するためのものであって、実行中のゲームにおいて、何らかの命令を、指示するためのものではない。このため、この機能を用いて、上記の問題を解決することは難しい。たとえば、上述した従来の野球ゲームの場合、プレイヤがボールをモニタ上で積極的に回転する必要がないため、この機能が従来の野球ゲームで利用される場面はなく、この機能を利用したからといって、上記の問題を解決できるものでもなかった。
【0012】
本発明は、このような考察を鑑みてなされたものであり、本発明の目的は、接触入力式のモニタの利点を積極的に利用した系統的な操作形態で、命令を指示することができるゲームを、提供することにある。
【課題を解決するための手段】
【0013】
請求項1に係るゲームプログラムは、接触入力式の画像表示部に指示手段を接触させることにより、ゲームを実行可能なコンピュータに、以下の機能を実現させるためのプログラムである。
(1)オブジェクトが移動するときの複数の移動形態それぞれを規定するための複数の移動形態データを、記憶部に格納する移動形態データ格納機能。
(2)オブジェクトを、画像データを用いて画像表示部に表示するオブジェクト表示機能。
(3)指示手段が画像表示部に接触したときに、指示手段が画像表示部に接触した接触位置を示す座標データを、制御部に認識させる接触位置認識機能。
(4)接触位置の座標データに基づいて接触位置の数を計算する処理を、制御部に実行させることにより、接触位置が複数であるか否かを判断する接触数判断機能。
(5)接触位置が複数であった場合に、複数の接触位置の間隔データを計算する処理を、制御部に実行させ、間隔データに対応する移動形態データを、制御部に認識させることにより、複数の移動形態を絞り込む移動形態絞込機能。
(6)指示手段が複数の接触位置を起点として画像表示部に接触した状態で移動したときに、移動に伴う接触位置の座標データの変化に基づいて、接触位置の移動状態に関する接触点移動状態データを計算する処理を、制御部に実行させる接触点移動状態認識機能。
(7)接触点移動状態データに対応する1つの移動形態データを制御部に認識させることにより、オブジェクトが移動するときの移動形態を決定する移動形態決定機能。
【0014】
このゲームプログラムが球技用のゲームたとえば野球ゲームに適用された場合を一例として説明すると、このゲームプログラムでは、投手キャラクタからリリースされるボールの球種を規定するための複数の球種データが、記憶部に格納される。そして、ボールが、画像データを用いて画像表示部に表示される。そして、指示手段たとえば少なくとも1本の指が、画像表示部に接触したときに、指が画像表示部に接触した位置(接触位置)を示す座標データが、制御部に認識される。すると、この接触位置の座標データに基づいて接触位置の数を計算する処理が、制御部により実行される。これにより、接触位置が複数であるか否かが、判断される。すなわち、複数の指が画像表示部に接触したか否かが、判断される。そして、接触位置が複数であった場合、たとえば複数の指が画像表示部に接触した場合、複数の指の間隔データを計算する処理が、制御部により実行される。そして、この間隔データに対応する球種データが、制御部に認識される。これにより、球種が絞り込まれる。そして、複数の指が各接触位置を起点として画像表示部に接触した状態で移動したときに、この移動に伴う接触位置の座標データの変化に基づいて、接触位置の移動状態に関する接触点移動状態データを計算する処理が、制御部により実行される。そして、この接触点移動状態データに対応する1つの球種データが、制御部に認識される。これにより、ボールの球種が、決定される。
【0015】
この場合、指示手段が複数であった場合、たとえば複数の指が画像表示部に接触した場合、複数の指の間隔に基づいて、球種が絞り込まれる。そして、現実世界の野球のスローイングに対応するように、複数の指たとえば2本の指が、各接触位置を起点として画像表示部に接触した状態で移動したときに、これら2本の指の移動状態に関するデータ(接触点移動状態データ)が計算され、この計算結果に基づいて、ボールの球種が決定される。
【0016】
このように、請求項1に係る発明では、接触入力式のモニタの利点を積極的に利用することにより、現実世界の野球において、投手がある球種でボールを投げる際に行う行為、たとえば、ボールの握りの決定や、スローイングや、手首のひねり等の行為を、野球ゲームでは、プレイヤが2本の指をモニタに接触する行為、および2本の指をモニタ上でスライドする行為で、再現することができる。また、本発明では、現実世界の投手の行為を野球ゲームにおいて単に再現するだけでなく、この行為を野球ゲームにおいて再現したときのプレイヤの行為、たとえばプレイヤが2本の指をモニタ上でスライドしたときの行為によって、球種の設定に必要な接触点移動状態データを計算することができる。そして、この接触点移動状態データに基づいて、球種が設定される。このように、本発明では、プレイヤが2本の指をモニタに接触する行為、およびプレイヤが2本の指をモニタ上でスライドする行為によって、現実世界の投手の行為を野球ゲームにおいても再現することができ、球種の設定も同時に行うことができる。また、これにより、球種を、効率的に設定することができる。つまり、現実の野球における投球の一連の動作、すなわち、まず投げようとする球種に合わせた握りでボールをつかみ、その後に打者側(ストライクゾーン)に向かって投げ込む、といった動作に類似した操作をゲーム上で再現できるので、プレイヤは従来ゲームでは体験できなかった臨場感を味わうことができ、体感性に優れたゲームを実現できる。すなわち、本発明では、接触入力式のモニタの利点を積極的に利用することにより、系統的な操作形態で球種の設定および投球を行うことができる。
【0017】
請求項2に係るゲームプログラムでは、請求項1に記載のゲームプログラムにおいて、指示手段が複数の接触位置を起点として画像表示部に接触した状態で移動したときに、接触点移動状態データに含まれる移動方向データを計算する処理を、制御部に実行させることにより、接触位置の移動方向が設定される。この機能は、接触点移動状態認識機能において実現される。また、移動方向データに対応する、1つの回転軸データおよび回転方向データを、制御部に認識させることにより、オブジェクトが移動するときの移動形態が、決定される。この機能は、移動形態決定機能において実現される。
【0018】
このゲームプログラムが球技用のゲームたとえば野球ゲームに適用された場合を一例として説明すると、このゲームプログラムでは、複数の指が各接触位置を起点として画像表示部に接触した状態で移動したときに、接触点移動状態データに含まれる移動方向データを計算する処理が、制御部により実行される。これにより、複数の指の移動方向が設定される。そして、移動方向データに対応する、1つの回転軸データおよび回転方向データが、制御部に認識される。これにより、ボールの球種が、決定される。
【0019】
この場合、複数の指が画像表示部に接触し、球種が絞り込まれた状態において、現実世界の投手の手首のひねりに対応するように、複数の指たとえば2本の指が、各接触位置を起点として画像表示部に接触した状態で移動すると、これら2本の指の移動方向に関するデータ(移動方向データ)が計算され、この計算結果に基づいて、ボールの回転軸および回転方向が設定される。これにより、ボールの球種が、決定される。
【0020】
このように、請求項2に係る発明では、現実世界の野球において、投手がある球種でボールを投げる際に行う行為、たとえば投手が手首をひねる行為を、野球ゲームでは、プレイヤが2本の指をモニタ上でスライドする行為で再現することができる。また、本発明では、プレイヤが2本の指をモニタ上でスライドした方向によって、ボールの回転軸および回転方向が、決定される。たとえば、2本の指がモニタ上でスライドした方向に交差する方向が、ボールの回転軸として設定され、ここで設定された回転軸に対応する所定の回転方向が、ボールの回転方向として設定される。このように、本発明では、プレイヤが2本の指をモニタ上でスライドすることによって、現実世界の投手の行為を野球ゲームにおいても再現することができ、球種の設定も同時に行うことができる。また、これにより、球種を、効率的に設定することができる。
【0021】
請求項3に係るゲームプログラムは、請求項1又は2に記載のゲームプログラムにおいて、以下の機能をさらに実現させるためのプログラムである。
(8)オブジェクトが移動するときの複数の移動特性それぞれに関する複数の特性データを、制御部に認識させることにより、オブジェクトが移動するときの移動特性を決定する移動特性決定機能。
【0022】
このゲームプログラムが球技用のゲームたとえば野球ゲームに適用された場合を一例として説明すると、このゲームプログラムでは、複数の指が各接触位置を起点として画像表示部に接触した状態で移動したときに、接触点移動状態データに含まれる移動速度データを計算する処理が、制御部により実行される。これにより、複数の指の移動速度が設定される。すると、移動速度データが、移動速度用の特性データとして、制御部に認識される。これにより、ボールの移動速度が、決定される。
【0023】
この場合、複数の指が画像表示部に接触し、球種が絞り込まれた状態において、現実世界の投手のスローイングに対応するように、複数の指たとえば2本の指が、各接触位置を起点として画像表示部に接触した状態で移動すると、これら2本の指の移動速度に関するデータ(移動速度データ)が計算され、この計算結果に基づいて、投手キャラクタからリリースされるボールの移動速度が、決定される。つまり、ここでは、スローイングの速度を、2本の指の移動速度に対応させ、2本の指の移動速度が、ボールの移動速度に反映されるようになっている。
【0024】
このように、請求項3に係る発明では、現実世界の野球において、投手がある球種でボールを投げる際に行う行為、たとえばスローイングを、野球ゲームでは、プレイヤが2本の指をモニタ上でスライドする行為で再現することができる。また、本発明では、プレイヤが2本の指をモニタ上でスライドしたときの速度によって、ボールの速度が決定される。たとえば、2本の指がモニタ上でスライドしたときの速度に応じて、ボールの速度が決定される。このように、本発明では、プレイヤが2本の指をモニタ上でスライドすることによって、現実世界の投手の行為を野球ゲームにおいても再現することができ、ボールの速度の設定も同時に行うことができる。また、これにより、ボールの速度を、効率的に設定することができる。
【0025】
請求項4に係るゲームプログラムは、請求項1から3のいずれかに記載のゲームプログラムにおいて、以下の機能をさらに実現させるためのプログラムである。
(9)オブジェクトが移動するときの複数の移動特性それぞれに関する複数の特性データを、制御部に認識させることにより、オブジェクトが移動するときの移動特性を決定する移動特性決定機能。
【0026】
このゲームプログラムが球技用のゲームたとえば野球ゲームに適用された場合を一例として説明すると、このゲームプログラムでは、複数の指が各接触位置を起点として画像表示部に接触した状態で移動したときに、接触点移動状態データに含まれる移動距離データを計算する処理が、制御部により実行される。これにより、複数の指の移動距離が設定される。すると、移動距離データが、移動距離用の特性データとして、制御部に認識される。これにより、ボールが移動するときの変化量が、決定される。
【0027】
この場合、複数の指が画像表示部に接触し、球種が絞り込まれた状態において、現実世界の投手のスローイングに対応するように、複数の指たとえば2本の指が、各接触位置を起点として画像表示部に接触した状態で移動すると、これら2本の指の移動距離に関するデータ(移動距離データ)が計算され、この計算結果に基づいて、投手キャラクタからリリースされるボールの変化量が、決定される。つまり、ここでは、手首のひねり量を、2本の指の移動距離に対応させ、2本の指の移動距離が、ボールの変化量に反映されるようになっている。
【0028】
このように、請求項4に係る発明では、現実世界の野球において、投手がある球種でボールを投げる際に行う行為、たとえば手首のひねり量を、野球ゲームでは、プレイヤが2本の指をモニタ上でスライドする行為で再現することができる。また、本発明では、プレイヤが2本の指をモニタ上でスライドしたときの距離によって、ボールの変化量が決定される。たとえば、2本の指がモニタ上でスライドしたときの距離に応じて、ボールの変化量たとえばボールの回転速度が、決定される。このように、本発明では、プレイヤが2本の指をモニタ上でスライドすることによって、現実世界の投手の行為を野球ゲームにおいても再現することができ、ボールの変化量の設定も同時に行うことができる。また、これにより、ボールの変化量を、効率的に設定することができる。
【0029】
請求項5に係るゲームプログラムは、請求項1から4のいずれかに記載のゲームプログラムにおいて、以下の機能をさらに実現させるためのプログラムである。
(10)オブジェクトが移動するときの複数の移動特性それぞれに関する複数の特性データを、制御部に認識させることにより、オブジェクトが移動するときの移動特性を決定する移動特性決定機能。
【0030】
このゲームプログラムが球技用のゲームたとえば野球ゲームに適用された場合を一例として説明すると、このゲームプログラムでは、複数の指が各接触位置を起点として画像表示部に接触した状態で移動したときに、接触点移動状態データに含まれる移動速度データを計算する処理が、制御部により実行される。これにより、複数の指の移動速度が設定される。すると、移動速度データに対応する加速度データが、移動加速度用の特性データとして、制御部に認識される。これにより、ボールの威力が、決定される。
【0031】
この場合、複数の指が画像表示部に接触し、球種が絞り込まれた状態において、現実世界の投手のスローイングに対応するように、複数の指たとえば2本の指が、各接触位置を起点として画像表示部に接触した状態で移動すると、これら2本の指の移動速度に関するデータ(移動速度データ)が計算され、この計算結果に基づいて、投手キャラクタからリリースされるボールの威力たとえばボールの球威が、決定される。つまり、ここでは、スローイングの速度を、2本の指の移動速度に対応させ、2本の指の移動速度が、ボールの球威に反映されるようになっている。
【0032】
このように、請求項5に係る発明では、現実世界の野球において、投手がある球種でボールを投げる際に行う行為、たとえばスローイングを、野球ゲームでは、プレイヤが2本の指をモニタ上でスライドする行為で再現することができる。また、本発明では、プレイヤが2本の指をモニタ上でスライドしたときの速度によって、ボールの球威が決定される。たとえば、2本の指がモニタ上でスライドしたときの速度に応じて、ボールの球威が、決定される。このように、本発明では、プレイヤが2本の指をモニタ上でスライドすることによって、現実世界の投手の行為を野球ゲームにおいても再現することができ、ボールの球威の設定も同時に行うことができる。また、これにより、球威を、効率的に設定することができる。
【0033】
請求項6に係るゲームプログラムは、請求項1から5のいずれかに記載のゲームプログラムにおいて、以下の機能をさらに実現させるためのプログラムである。
(11)接触位置が複数であった場合に、複数の接触位置の座標データと、画像表示部に表示されたオブジェクトの境界および内部領域を規定するための座標データとを、制御部に認識させることにより、複数の接触位置がオブジェクトの境界又は内部に位置するか否かを、判断する第1接触位置判断機能。
【0034】
このゲームプログラムが球技用のゲームたとえば野球ゲームに適用された場合を一例として説明すると、このゲームプログラムでは、複数の指が画像表示部に接触した場合に、各指の接触位置の座標データと、画像表示部に表示されたボールの境界および内部領域を規定するための座標データとが、制御部に認識される。これにより、複数の指が、ボールの境界又は内部に位置するか否かが、判断される。そして、複数の指がボールの境界又は内部に位置した場合、指の間隔を示すデータ(間隔データ)を計算する処理が、制御部により実行される。すると、この間隔データに対応する球種データが、制御部に認識される。これにより、球種が絞り込まれる。
【0035】
この場合、複数の指たとえば2本の指が、画像表示部に接触した場合、これら2本の指それぞれが、ボールの境界又は内部に位置するか否かが、判断される。そして、これら2本の指がボールの境界又は内部に位置した場合、指の間隔が計算され、この間隔に応じて球種が絞り込まれる。
【0036】
このように、請求項6に係る発明では、画像表示部に接触した2本の指それぞれが、ボールの境界又は内部に位置することによって、球種が絞り込まれる。言い換えると、画像表示部に接触した2本の指それぞれが、ボールの境界又は内部に位置してはじめて、プレイヤは、投球に関する命令を指示することができる。このような指示形態を採用することにより、プレイヤは、画面上のボールを握っているかのような感覚、およびこれから実際にボールを投球するかのような感覚を、体験することができるとともに、ボールに対する設定を効率良く実行することができる。
【0037】
請求項7に係るゲームプログラムは、請求項1から6のいずれかに記載のゲームプログラムにおいて、以下の機能をさらに実現させるためのプログラムである。
(12)指示手段が複数の接触位置を起点として画像表示部に接触した状態で移動したときに、移動中の複数の接触位置の座標データと、画像表示部に表示されたオブジェクトの境界および内部領域を規定するための座標データとを、制御部に認識させることにより、複数の接触位置がオブジェクトの境界又は内部に位置するか否かを、判断する第2接触位置判断機能。
【0038】
このゲームプログラムが球技用のゲームたとえば野球ゲームに適用された場合を一例として説明すると、このゲームプログラムでは、複数の指が各接触位置を起点として画像表示部に接触した状態で移動したときに、移動中の複数の指の座標データと、画像表示部に表示されたボールの境界および内部領域を規定するための座標データとが、制御部に認識される。これら座標データに基づいて、複数の指が、オブジェクトの境界又は内部に位置するか否かが、判断される。そして、少なくとも1つの指が、オブジェクトの外部に位置したときに、指の接触位置の座標データに基づいて、指の移動状態を規定するための接触点移動状態データを計算する処理が、制御部により実行される。
【0039】
この場合、複数の指たとえば2本の指が、画像表示部に接触した状態でボールの内部領域で移動した場合、指がボールの外部に出たか否かが、常に監視されている。そして、指がボールの外部に出た場合、2本の指のいずれか一方の座標データに基づいて、指の移動状態を規定するための接触点移動状態データが、計算される。
【0040】
このように、請求項7に係る発明では、2本の指が画像表示部に接触しボールの内部領域を移動した後に、指がボールの外部に出たときに、指の移動状態を示す接触点移動状態データが計算される。言い換えると、プレイヤは、画像表示部に接触した指を、ボールの内部から外部へと移動してはじめて、ボールの移動に関する命令を指示することができる。このような指示形態を採用することにより、プレイヤは、ボールを自分の指からリリースした感覚を、体験することができるとともに、ボールに対する設定を効率良く実行することができる。
【0041】
請求項8に係るゲームプログラムは、請求項1から7のいずれかに記載のゲームプログラムにおいて、以下の機能をさらに実現させるためのプログラムである。
(13)指示手段が複数の接触位置を起点として画像表示部に接触した状態で移動したときに、移動中の複数の接触位置の座標データを、制御部に連続的に認識させることにより、接触位置が画像表示部から離反したか否かを、判断する第3接触位置判断機能。
【0042】
このゲームプログラムが球技用のゲームたとえば野球ゲームに適用された場合を一例として説明すると、このゲームプログラムでは、複数の指が各接触位置を起点として画像表示部に接触した状態で移動したときに、移動中の複数の指の座標データが、制御部に連続的に認識される。これにより、指が画像表示部から離反したか否かが、判断される。そして、少なくとも1つの指が画像表示部から離反したときに、移動に伴う接触位置の座標データの変化に基づいて、接触点移動状態データを計算する処理が、制御部により実行される。
【0043】
この場合、複数の指たとえば2本の指が、画像表示部に接触した状態でボールの内部領域で移動した場合、指が画像表示部から離れたか否かが、常に監視されている。そして、指が画像表示部から離れた場合、指の移動に伴う位置の変化に基づいて、接触点移動状態データが、計算される。
【0044】
このように、請求項8に係る発明では、2本の指が画像表示部に接触しボールの内部領域を移動した後に、指が画面から離れたときに、指の移動状態を示す接触点移動状態データが計算される。言い換えると、プレイヤは、画像表示部に接触した2本の指それぞれを、画面から離してはじめて、ボールに関する命令を指示することができる。このような指示形態を採用することにより、プレイヤは、ボールを自分の指からリリースした感覚を、体験することができるとともに、ボールに対する設定を効率良く実行することができる。
【0045】
請求項9に係るゲームプログラムは、請求項1から8のいずれかに記載のゲームプログラムにおいて、以下の機能をさらに実現させるためのプログラムである。
(14)接触位置が複数であった場合に、オブジェクト用の画像データの形態および明度を変更する処理を、制御部に実行させることにより、複数の指示手段が画像表示部に接触したことを報知する報知画像表示機能。
【0046】
このゲームプログラムが球技用のゲームたとえば野球ゲームに適用された場合を一例として説明すると、このゲームプログラムでは、複数の指が画像表示部に接触した場合に、ボール用の画像データの形態および明度を変更する処理が、制御部により実行される。これにより、複数の指が画像表示部に接触したことが、プレイヤに対して報知される。
【0047】
この場合、複数の指が画像表示部に接触したときに、ボール画像の大きさや明るさが変更され、変更後のボール画像が画像表示部に表示される。これにより、プレイヤは、自分の指(複数の指)が、画像表示部に接触したか否かを、視覚的に確認することができる。
【0048】
請求項10に係るゲームプログラムは、請求項1から9のいずれかに記載のゲームプログラムにおいて、以下の機能をさらに実現させるためのプログラムである。
(15)第1画面において、オブジェクトを送出する第1キャラクタおよび第1キャラクタに対峙する第2キャラクタを、画像表示部に表示するキャラクタ表示機能。
(16)第1キャラクタおよび第2キャラクタが第1画面において表示された状態において、指示手段が画像表示部に接触したときに、指示手段が画像表示部に接触した接触位置を示す座標データを、制御部に認識させることにより、オブジェクトの送出目標を設定する送出目標設定機能。
(17)送出目標が設定されたときに、第1画面を消去するための命令、およびオブジェクトの移動形態を設定するための第2画面を表示するための命令を、制御部に発行させることにより、第1画面から第2画面へと、画面を切り換える第1画面切換機能。
【0049】
このゲームプログラムが球技用のゲームたとえば野球ゲームに適用された場合を一例として説明すると、このゲームプログラムでは、対戦画面において、投手キャラクタおよび打者キャラクタが、画像表示部に表示される。そして、投手キャラクタおよび打者キャラクタが対戦画面において表示された状態において、プレイヤの指がコース設定領域において画像表示部に接触したときに、この指の座標データが、制御部に認識される。これにより、ボールのコースが、設定される。そして、ボールのコースが設定されると、対戦画面を消去するための命令、および球種設定画面を表示するための命令が、制御部から発行される。これにより、対戦画面から球種設定画面へと、画面が切り換えられる。すると、球種設定画面において、ボールが画像データを用いて画像表示部に表示される。
【0050】
この場合、投手キャラクタおよび打者キャラクタが表示された対戦画面において、プレイヤが自分の指でコースを設定すると、対戦画面が消去され、ボール画像が拡大表示された球種設定画面が、表示される。このように、請求項10に係る発明では、投手キャラクタに対する一連の命令を、接触入力式のモニタの利点を積極的に利用することにより、系統的に入力することができる。特に、球種設定時には、対戦画面から球種設定画面に画面を切り換えた上で、球種設定画面において、たとえばボール画像を拡大表示することによって、投手キャラクタに対する命令を、接触入力式のモニタから容易に入力することができる。また、上記の各請求項で述べたような効果も、同時に得ることができる。
【0051】
請求項11に係るゲームプログラムは、請求項10に記載のゲームプログラムにおいて、以下の機能をさらに実現させるためのプログラムである。
(18)第2画面において、オブジェクトが移動するときの複数の移動特性それぞれに関する複数の特性データを、制御部に認識させることにより、オブジェクトが移動するときの移動特性を決定する移動特性決定機能。
(19)オブジェクトが移動するときの移動形態が決定された後に、第2画面を消去するための命令、および第1画面を表示するための命令を、制御部に発行させることにより、第2画面から第1画面へと、画面を切り換える第2画面切換機能。
(20)第1画面において、第1キャラクタおよび第2キャラクタを、画像表示部に再表示するキャラクタ再表示機能。
(21)第1画面において、第1キャラクタから送出されたオブジェクトを、特性データに基づいて、画像表示部に表示する移動オブジェクト表示機能。
【0052】
このゲームプログラムが球技用のゲームたとえば野球ゲームに適用された場合を一例として説明すると、このゲームプログラムでは、球種設定画面において、ボールが移動するときの複数の移動特性それぞれに関する複数の特性データが、制御部に認識される。これにより、ボールが移動するときの移動特性が、決定される。そして、ボールの移動形態が決定されると、球種設定画面を消去するための命令、および対戦画面を表示するための命令が、制御部から発行される。これにより、球種設定画面から対戦画面へと、画面が切り換えられる。そして、対戦画面において、投手キャラクタおよび打者キャラクタが、画像表示部に再表示される。すると、対戦画面において、投手キャラクタからリリースされたボールが、特性データに基づいて、画像表示部に表示される。
【0053】
この場合、球種設定画面において、ボールの移動特性およびボールの移動形態が決定されると、球種設定画面が消去され、対戦画面が再表示される。このようにして、球種設定画面から対戦画面へと、画面が切り換えられると、対戦画面に表示された投手キャラクタからリリースされたボールが、特性データに基づいて、画像表示部に表示される。このように、請求項11に係る発明では、投手キャラクタに対する一連の命令を、接触入力式のモニタの利点を積極的に利用することにより、系統的に入力することができる。特に、球種設定画面において、投手キャラクタに対する命令が指示されると、球種設定画面から対戦画面へと画面が切り換えられる。これにより、投手キャラクタと打者キャラクタとの対戦状況を、プレイヤが容易に把握することができる。また、上記の各請求項で述べたような効果も、同時に得ることができる。
【0054】
請求項12に係るゲームプログラムでは、請求項11に記載のゲームプログラムにおいて、複数の接触位置がオブジェクトの境界又は内部に位置し、複数の接触位置の少なくともいずれか一方が画像表示部から離反した場合、又は複数の接触位置がオブジェクトの境界又は内部に位置し、複数の接触位置の少なくともいずれか一方がオブジェクトの外部に位置した場合に、第2画面を消去するための命令、および第1画面を表示するための命令が、制御部から発行される。これにより、第2画面から第1画面へと、画面が切り換えられる。この機能は、第2画面切換機能において実現される。
【0055】
この場合、球種設定画面において、プレイヤが、2本の指をボールの境界又は内部に位置させた後に移動させ、2本の指の少なくともいずれか一方を画像表示部から離した場合に、球種設定画面が消去され、対戦画面が再表示される。また、球種設定画面において、プレイヤが、2本の指をボールの境界又は内部に位置させた後に移動させ、2本の指の少なくともいずれか一方をボールの外部にまで移動した場合にも、球種設定画面が消去され、対戦画面が再表示される。このように、請求項12に係る発明では、投手キャラクタに対する一連の命令を、接触入力式のモニタの利点を積極的に利用することにより、系統的に入力することができる。特に、球種設定画面において、投手キャラクタに対する命令が指示されると、球種設定画面から対戦画面へと画面が切り換えられる。これにより、投手キャラクタと打者キャラクタとの対戦状況を、プレイヤが容易に把握することができる。また、上記の各請求項で述べたような効果も、同時に得ることができる。
【0056】
請求項13に係るゲーム装置は、接触入力式の画像表示部に指示手段を接触させることにより、ゲームを実行可能なゲーム装置である。このゲーム装置は、オブジェクトが移動するときの複数の移動形態それぞれを規定するための複数の移動形態データを、記憶部に格納する移動形態データ格納手段と、オブジェクトを、画像データを用いて画像表示部に表示するオブジェクト表示手段と、指示手段が画像表示部に接触したときに、指示手段が画像表示部に接触した接触位置を示す座標データを、制御部に認識させる接触位置認識手段と、接触位置の座標データに基づいて接触位置の数を計算する処理を、制御部に実行させることにより、接触位置が複数であるか否かを判断する接触数判断手段と、接触位置が複数であった場合に、複数の接触位置の間隔データを計算する処理を、制御部に実行させ、間隔データに対応する移動形態データを、制御部に認識させることにより、複数の移動形態を絞り込む移動形態絞込手段と、指示手段が複数の接触位置を起点として画像表示部に接触した状態で移動したときに、移動に伴う接触位置の座標データの変化に基づいて、接触位置の移動状態に関する接触点移動状態データを計算する処理を、制御部に実行させる接触点移動状態認識手段と、接触点移動状態データに対応する1つの移動形態データを制御部に認識させることにより、オブジェクトが移動するときの移動形態を決定する移動形態決定手段と、を備えている。
【0057】
請求項14に係るゲーム制御方法は、接触入力式の画像表示部に指示手段を接触させることにより、ゲームをコンピュータにより制御可能なゲーム制御方法である。このゲーム制御方法は、オブジェクトが移動するときの複数の移動形態それぞれを規定するための複数の移動形態データを、記憶部に格納する移動形態データ格納ステップと、オブジェクトを、画像データを用いて画像表示部に表示するオブジェクト表示ステップと、指示手段が画像表示部に接触したときに、指示手段が画像表示部に接触した接触位置を示す座標データを、制御部に認識させる接触位置認識ステップと、接触位置の座標データに基づいて接触位置の数を計算する処理を、制御部に実行させることにより、接触位置が複数であるか否かを判断する接触数判断ステップと、接触位置が複数であった場合に、複数の接触位置の間隔データを計算する処理を、制御部に実行させ、間隔データに対応する移動形態データを、制御部に認識させることにより、複数の移動形態を絞り込む移動形態絞込ステップと、指示手段が複数の接触位置を起点として画像表示部に接触した状態で移動したときに、移動に伴う接触位置の座標データの変化に基づいて、接触位置の移動状態に関する接触点移動状態データを計算する処理を、制御部に実行させる接触点移動状態認識ステップと、接触点移動状態データに対応する1つの移動形態データを制御部に認識させることにより、オブジェクトが移動するときの移動形態を決定する移動形態決定ステップと、を備えている。
【発明の効果】
【0058】
本発明によれば、アーケードゲームのような筐体や立体物を利用したものではなく、携帯式のゲームでありながらも、体感性に優れ、臨場感に溢れたゲームを実現できる。具体的には、たとえば指接触式の携帯ゲームを利用した野球ゲームの投球シーンにおいて、あたかも現実の野球ボールをつかむかのような位置に指を配置した上で、任意の球種でボールを投球できる投球操作を行うことができる。
【図面の簡単な説明】
【0059】
【図1】本発明の一実施形態による携帯ゲーム機を示す図。
【図2】前記携帯ゲーム機のハードウェア構成を示す図。
【図3】前記携帯ゲーム機の一例としての機能ブロック図。
【図4】メンバー設定画面を示す図。
【図5】球種データを説明するための図。
【図6】対戦画面を示す図(リリース前)。
【図7】球種設定画面において指示手段がモニタに接触したときの接触位置を示す図。
【図8】間隔データの計算形態を説明するための図。
【図9】間隔データと球種データとの対応関係を示す図。
【図10】指示手段の移動形態の一例を示す図。
【図11】接触点移動状態データの計算に用いる座標の位置を示す図。
【図12】接触点移動状態データの計算に用いる物理量およびその定義を示す図。
【図13】回転軸データと回転方向データとの対応関係を示す図。
【図14】ボールの移動速度用の関数を示す図。
【図15】ボールの回転速度用の関数を示す図。
【図16】ボールの減速率用の関数を示す図。
【図17】対戦画面を示す図(リリース後)。
【図18】野球ゲームの全体概要を説明するためのフロー
【図19A】野球ゲームにおける投球用の命令指示システムを示すフロー。
【図19B】野球ゲームにおける投球用の命令指示システムを示すフロー。
【発明を実施するための形態】
【0060】
〔ゲーム装置の構成〕
図1は、本発明に係るゲームプログラムを適用しうるコンピュータの一例としての携帯ゲーム機1の外観図である。また、図2は、携帯ゲーム機1の一例としての制御ブロック図である。
【0061】
携帯ゲーム機1は、図1に示すように、主に、本体2と、液晶モニタ部3と、基本操作部4と、マイク5と、スピーカ6とを備えている。モニタ部3は、本体2に設けられており、液晶モニタ3aを有している。ここでは、たとえば、液晶モニタ3aが、静電接触入力式のモニタすなわちタッチパネル式のモニタになっている。この液晶モニタ3aでは、タッチパネルの表面全体に電界が形成されている。そして、この状態のタッチパネルの表面に、指示手段たとえば指や導電性を有するペン等を、接触させると、液晶表面の表面電荷が変化する。そして、この表面電荷の変化が捕捉され、タッチパネル上の指やペン等の位置が検出される。ここでは、投影型のタッチパネルが用いられており、このタッチパネルでは多点同時検出が可能である。
【0062】
基本操作部4は、ホームボタン4a、ボリュームポタン4b、およびスリープボタン4cを有している。ホームボタン4aは、本体2のタッチパネルの下部に設けられている。このホームボタン4aが押されると、ホーム画面が表示されたり、携帯ゲーム機1がスリープ状態から復帰したりする。ボリュームポタン4bは、本体2の側面上部に設けられている。このボリュームポタン4bの上部が押されると、音量が増加し、このボリュームポタン4bの下部が押されると、音量が減少する。スリープボタン4cは、本体2の上面に設けられている。このスリープボタン4cが押されると、携帯ゲーム機1がスリープ状態に移行する。
【0063】
マイク5は、音出力用のマイク5aと、音入力用のマイク5bとを有している。音出力用のマイク5aは、本体2のタッチパネルの上部に設けられている。ゲームを実行する時や、電話通信する時や、音楽を聞く時等には、この音出力用のマイク5aから音が出力される。音入力用のマイク5bは、本体2に内蔵されており、本体2の下面に出力口が設けられている。電話通信する時や録音を行う時等には、この音入力用のマイク5bから音声が入力される。
【0064】
スピーカ6は、本体2に内蔵されており、本体2の下面に出力口が設けられている。ゲームを実行する時や、音楽を聞く時や、録音を聞く時等には、このスピーカ6から音が出力される。なお、ゲーム機1には、イヤホンジャック等も設けられているが、これらについては説明を省略する。
【0065】
また、携帯ゲーム機1は、図2に示すように、主に、制御部すなわち制御装置10と、通信部16と、記憶装置17とを、内部に有している。制御装置10は、マイクロプロセッサを利用したCPU(Central Processing Unit)11と、主記憶装置としてのROM(Read Only Memory)12と、RAM(Random Access Memory)13と、画像処理回路14と、サウンド処理回路15と、を有している。これらは、バス16を介してそれぞれが接続されている。
【0066】
CPU11は、ゲームプログラムからの命令を解釈し、各種のデータ処理や制御を行う。ROM12は、ゲーム機1の基本的な制御(たとえば起動制御)に必要なプログラム等を格納する。RAM13は、CPU11に対する作業領域を確保する。画像処理回路14は、CPU11からの描画指示に応じてモニタ部3を制御して、液晶モニタ3aに所定の画像を表示する。また、画像処理回路14にはタッチ入力検出回路14aが含まれている。タッチパネルに指示手段たとえば指等を接触させたときに、接触信号がタッチ入力検出回路14aからCPU11へと供給され、接触位置がCPU11に認識される。また、液晶パネルに表示された対象物の位置において、タッチパネルに指示手段を接触させると、対象物の選択信号がタッチ入力検出回路14aからCPU11へと供給され、対象物がCPUに認識される。
【0067】
サウンド処理回路15は、CPU11からの発音指示に応じたアナログ音声信号を生成して、音出力用のマイク5aおよび/又はスピーカ6に出力する。また、音入力用のマイク5bから音が入力されたときに、アナログ音声信号をデジタル音声信号に変換する。
【0068】
通信部16は、ゲーム実行時にデータ通信するための通信機能や、携帯電話として通信するための通信機能等を有している。データ通信用の通信機能には、ローカルワイヤレスネットーワーク機能や、ワイヤレスLANによるインターネット接続機能等が、含まれている。
【0069】
通信部16は、通信制御回路20と通信インターフェイス21とを有している。通信制御回路20および通信インターフェイス21は、バス16を介してCPU11に接続されている。通信制御回路20および通信インターフェイス21は、CPU11からの命令に応じて、ゲーム機1をローカルワイヤレスネットーワーク又はワイヤレスLANによるインターネットに接続するための接続信号を制御し発信する。また、電話による通話時には、通信制御回路20および通信インターフェイス21は、CPU11からの命令に応じて、ゲーム機1を電話回線に接続するための接続信号を制御し発信する。
【0070】
記憶装置17は、本体2に内蔵されており、バス16に接続される。たとえば、記憶装置17には、記憶媒体としてのハードディスクやフラッシュメモリドライブ等が用いられる。
【0071】
なお、バス16と各要素との間には必要に応じてインターフェイス回路が介在しているが、ここではそれらの図示は省略した。
【0072】
以上のような構成のゲーム機1では、記憶装置17に格納されたゲームプログラムがロードされ、ロードされたゲームプログラムがCPU11で実行されることにより、プレイヤは様々なジャンルのゲームをモニタ部3上で遊戯することができる。また、通信制御回路20を介して、ワイヤレスネットワークにゲーム機1を接続したり、他のゲーム機と通信ケーブル等を介して接続したりすることで、他のゲーム機との間でデータのやり取りや対戦型のゲームを行うことができる。
【0073】
〔本ゲームシステムにおける各種処理概要〕
本ゲームシステムにおいて実行されるゲームは、たとえば、野球ゲームである。ここでは、野球ゲームを実行するためのゲームプログラムおよび各種のデータは、記憶装置17に格納されている。そして、野球ゲームが実行されるときに、このゲームプログラムおよび各種のデータは、RAM13にロードされる。
【0074】
このようにして実行される野球ゲームでは、タッチパネル式の液晶モニタ部3a(以下、モニタ3aを呼ぶ)に、指示手段たとえばプレイヤの指やタッチペン等を接触させることにより、各種の命令が指示される。図3は、本発明で主要な役割を果たす機能を説明するための機能ブロック図である。なお、以下に示す野球ゲームでは、指示手段が、指である場合を一例として、説明を行う。また、1フレームが、たとえば1/60(sec)である場合を一例として説明を行う。
【0075】
移動形態データ格納手段50は、投手キャラクタが有する複数の球種それぞれを規定するための球種データを、格納する機能を、備えている。
【0076】
この手段では、投手キャラクタが有する複数の球種それぞれを規定するための球種データが、RAM13に格納される。たとえば、投手キャラクタが有する球種は、ゲームプログラムにおいて予め規定されており、各球種に対応する球種データは、RAM13に格納される。
【0077】
キャラクタ表示手段51は、対戦画面において、投手キャラクタおよび打者キャラクタを、表示する機能を、備えている。
【0078】
この手段では、対戦画面において、投手キャラクタおよび打者キャラクタが、RAM13に格納された各キャラクタ用の画像データを用いて、モニタ3aに表示される。たとえば、ここでは、投球モーションに入る前の投手キャラクタ、および打者キャラクタが、モニタ3aに表示される。なお、各キャラクタ用の画像データは、RAM13に格納される。
【0079】
送出目標設定手段52は、ボールのコースを設定する機能を、備えている。詳細には、送出目標設定手段52は、投手キャラクタおよび打者キャラクタが対戦画面において表示された状態において、指がモニタ3aに接触したときに、指がモニタ3aに接触した接触位置を示す座標データを、認識する機能を、備えている。
【0080】
この手段では、投手キャラクタおよび打者キャラクタが対戦画面において表示された状態において、指がモニタ3aに接触したときに、指がモニタ3aに接触した接触位置を示す座標データが、CPU11に認識され、RAM13に格納される。ここでCPU11に認識された座標データは、たとえば、RAM13に格納される。そして、この座標データが示す指の接触位置が、投手キャラクタの投球コースとして設定される。
【0081】
第1画面切換手段53は、対戦画面から球種設定画面へと、画面を切り換える機能を、備えている。詳細には、第1画面切換手段53は、投球コースが設定されたときに、対戦画面を消去するための命令、および球種設定画面を表示するための命令を、発行する機能を、備えている。
【0082】
この手段では、投球コースが設定されたときに、対戦画面を消去するための命令、および球種設定画面を表示するための命令が、CPU11から発行される。これにより、対戦画面がモニタ3aから消去され、対戦画面から球種設定画面へと、画面が切り換えられる。
【0083】
オブジェクト表示手段54は、球種設定用のボール画像を、モニタ3aに表示する機能を、備えている。
【0084】
この手段では、球種設定用のボール画像が、ボール用の画像データを用いてモニタ3aに表示される。なお、ボール用の画像データは、RAM13に格納される。
【0085】
接触位置認識手段55は、少なくとも1本の指がモニタ3aに接触したときに、指がモニタ3aに接触した接触位置を示す座標データを、認識する機能を、備えている。
【0086】
この手段では、少なくとも1本の指がモニタ3aに接触したときに、指がモニタ3aに接触した接触位置を示す座標データが、CPU11に認識され、RAM13に格納される。
【0087】
接触数判断手段56は、指がモニタ3aに複数の位置で接触したか否かを判断する機能を、備えている。詳細には、接触数判断手段56は、接触位置の座標データに基づいて接触位置の数を計算する処理を、実行する機能を、備えている。
【0088】
この手段では、指の接触位置の座標データに基づいて接触位置の数を計算する処理を、CPU11に実行させることにより、指の接触位置が複数であるか否かが判断される。たとえば、所定の時間の間において、指の接触位置の座標データがCPU11に認識されると、指の接触位置の数を示すデータの値をインクリメントする処理が、CPU11により実行される。そして、所定の時間の間において、このデータの値が「2」以上である場合、指の接触位置の数が複数であると判断される。一方で、このデータの値が「0」又は「1」である場合、指の接触位置の数が複数ではないと判断される。なお、指の接触位置の数を示すデータは、RAM13に格納される。
【0089】
報知画像表示手段57は、指がモニタ3aに複数の位置で接触した場合に、複数の指がモニタ3aに接触したことを報知する機能を、備えている。詳細には、報知画像表示手段57は、接触位置が複数であった場合に、ボール用の画像データの形態および明度を変更する処理を、実行する機能を、備えている。
【0090】
この手段では、指がモニタ3aに複数の位置で接触した場合に、ボール用の画像データの形態および明度を変更する処理が、CPU11により実行される。たとえば、接触位置が複数であった場合に、ボール用の画像データを拡大する処理が、CPU11により実行されると、拡大された球種設定用のボール画像が、モニタ3aに表示される。また、ボール用の画像データの明度を高くする処理が、CPU11により実行されると、明度が高い球種設定用のボール画像が、モニタ3aに表示される。このように、指がモニタ3aに複数の位置で接触した場合に、ボール用の画像データの形態および明度を変更することによって、複数の指がモニタ3aに接触したことが画面上で報知される。
【0091】
第1接触位置判断手段58は、指がモニタ3aに複数の位置で接触した場合に、複数の指の接触位置が球種設定用のボール画像の境界又は内部に位置するか否かを、判断する機能を、備えている。詳細には、第1接触位置判断手段58は、複数の接触位置の座標データと、球種設定用のボール画像の境界および内部領域を規定するための座標データとを、認識し、これらの座標データを比較する機能を、備えている。
【0092】
この手段では、指がモニタ3aに複数の位置で接触した場合に、複数の接触位置の座標データと、球種設定用のボール画像の境界および内部領域を規定するための座標データとが、CPU11に認識される。そして、これらの座標データを比較する処理が、CPU11により実行される。これにより、複数の接触位置が球種設定用のボール画像の境界又は内部に位置するか否かが、判断される。
【0093】
移動形態絞込手段59は、球種を絞り込む機能を備えている。詳細には、移動形態絞込手段59は、接触位置が複数であった場合に、複数の接触位置の間隔データを計算する処理を、実行し、この間隔データに対応する球種データを、認識する機能を、備えている。
【0094】
この手段では、指がモニタ3aに複数の位置で接触し、複数の指が球種設定用のボール画像の境界又は内部に位置した場合に、指の接触位置の座標データに基づいて、複数の接触位置の間隔データを計算する処理が、CPU11により実行される。そして、この間隔データに対応する球種データが、CPU11に認識される。たとえば、ある投手キャラクタが有する球種が、フォーク、カーブ、シュート、およびストレートの4種類である場合、間隔データの値が所定の値より大きい場合は、フォーク用の球種データがCPU11に認識される。また、間隔データの値が所定の値より小さい場合は、カーブ用の球種データ、シュート用の球種データ、およびストレート用の球種データが、CPU11に認識される。このようにして、指の接触位置の座標データに基づいて、球種が絞り込り込まれる。
【0095】
第2接触位置判断手段60は、複数の接触位置が球種設定用のボール画像の外部に位置したか否かを、判断する機能を備えている。詳細には、第2接触位置判断手段60は、指が複数の接触位置を起点としてモニタ3aに接触した状態で移動したときに、移動中の複数の接触位置の座標データと、球種設定用のボール画像の境界および内部領域を規定するための座標データとを、認識し、これらの座標データを比較する機能を、備えている。
【0096】
この手段では、指がモニタ3aに複数の位置で接触した状態において、指が複数の接触位置を起点としてモニタ3a上で移動したときに、移動中の複数の接触位置の座標データと、球種設定用のボール画像の境界および内部領域を規定するための座標データとが、CPU11に認識される。そして、これらの座標データを比較する処理が、CPU11により実行される。これにより、複数の接触位置が球種設定用のボール画像の外部に位置したか否かが、判断される。なお、移動中の複数の接触位置の座標データは、1フレームごとに、RAM13に格納される。
【0097】
第3接触位置判断手段61は、接触位置がモニタ3aから離反したか否かを、判断する機能を備えている。詳細には、第3接触位置判断手段61は、指が複数の接触位置を起点としてモニタ3aに接触した状態で移動したときに、移動中の複数の接触位置の座標データを、連続的に認識する機能を、備えている。
【0098】
この手段では、指がモニタ3aに複数の位置で接触した状態において、指が複数の接触位置を起点としてモニタ3a上で移動したときに、移動中の複数の接触位置の座標データが、CPU11に連続的に認識される。そして、これら座標データが、所定の時間以上の間たとえば1フレーム以上の間、CPU11に認識されなかった場合、指がモニタ3aから離反したと、CPU11により判断される。一方で、これら座標データが、CPU11に連続的に認識されている間は、指がモニタ3aに接触しているものと、CPU11により判断される。
【0099】
接触点移動状態認識手段62は、指がモニタ3aに複数の位置で接触した状態において、指が複数の接触位置を起点としてモニタ3a上で移動したときに、移動に伴う接触位置の座標データの変化に基づいて、接触位置の移動状態に関する接触点移動状態データを計算する機能を、備えている。
【0100】
この手段では、指がモニタ3aに複数の位置で接触した状態において、指が複数の接触位置を起点としてモニタ3a上で移動したときに、指の移動に伴う接触位置の座標データの変化に基づいて、接触位置の移動状態に関する接触点移動状態データを計算する処理が、CPU11により実行される。
【0101】
たとえば、移動中の複数の接触位置の中の少なくとも1つの接触位置が、ボールの外部に位置した場合、又はモニタ3aから離反した場合、指の移動に伴う接触位置の座標データの変化に基づいて、指の接触位置の移動状態に関する接触点移動状態データを計算する処理が、CPU11により実行される。ここでは、接触点移動状態データには、移動方向データ、移動速度データ、移動距離データ、および加速度データが含まれる。そして、各接触点移動状態データは、指の移動に伴う接触位置の座標データおよび時間データに基づいて、CPU11により計算される。なお、時間データは、指がモニタ部3aに接触した時点から、指がボールの外部に位置した時点、又は指がモニタ3aに離反した時点までの時間を示すデータである。また、この時間データは、RAM13に格納される。
【0102】
移動形態決定手段63は、ボールの球種を決定する機能を、備えている。詳細には、移動形態決定手段63は、接触点移動状態データに対応する1つの球種データを、認識する機能を、備えている。
【0103】
この手段では、接触点移動状態データに対応する1つの球種データが、CPU11に認識される。たとえば、指が移動した方向を示す移動方向データに対応する、1つの回転軸データおよび回転方向データが、CPU11に認識される。これにより、ボールの球種が決定される。たとえば、投手キャラクタが右投げであり、画面の左斜め下の方向に指が移動した場合、この方向に交差する方向に伸びる軸が、回転軸データとして、CPU11に認識される。すると、この回転軸データに対応する回転方向データが、CPU11に認識される。すると、この場合、画面の左上から画面の右斜め下の方向に伸びる回転軸の上から下へと回転するボール、すなわちカーブが、球種として設定される。同様に、画面の右斜め下の方向に指が移動した場合、画面の右上から画面の左下の方向に伸びる回転軸の上から下へと回転するボール、すなわちシュートが、球種として設定される。また、画面の下の方向に指が移動した場合、水平方向に伸びる回転軸の下から上へと回転するボール、すなわちストレートが、球種として設定される。
【0104】
移動特性決定手段64は、ボールが移動するときの移動特性を決定する機能を、備えている。詳細には、移動特性決定手段64は、ボールが移動するときの複数の移動特性それぞれに関する複数の特性データを、認識する機能を、備えている。
【0105】
この手段では、ボールが移動するときの複数の移動特性それぞれに関する特性データが、CPU11に認識される。具体的には、指の接触位置の移動状態に関する接触点移動状態データ、たとえば、移動速度データ、移動距離データ、および加速度データが、ボールの各特性を規定するための特性データとして、CPU11に認識される。ここでは、リリースされるボールの移動速度は、移動速度データに基づいて設定され、リリースされるボールの変化量は、移動距離データに基づいて設定され、リリースされるボールの威力は、加速度データに基づいて設定される。なお、移動速度データとボールの移動速度との対応関係、移動距離データとボールの変化量との対応関係、および加速度データとボールの威力との対応関係は、ゲームプログラムにおいて予め規定されており、各対応関係を規定するためのデータは、RAM13に格納されている。
【0106】
第2画面切換手段65は、球種設定画面から対戦画面へと、画面を切り換える機能を備えている。詳細には、第2画面切換手段65は、ボールの球種および特性が設定された後に、球種設定画面を消去するための命令、および対戦画面を表示するための命令を、発行する機能を備えている。
【0107】
この手段では、ボールの球種および特性が設定された後に、球種設定画面を消去するための命令、および対戦画面を表示するための命令が、CPU11から発行される。これにより、球種設定画面がモニタ3aから消去され、球種設定画面から対戦画面へと、画面が切り換えられる。
【0108】
キャラクタ再表示手段66は、対戦画面において、投手キャラクタおよび打者キャラクタを、再表示する機能を備えている。
【0109】
この手段では、対戦画面において、投手キャラクタおよび打者キャラクタが、RAM13に格納された各キャラクタ用の画像データを用いて、モニタ3aに再表示される。たとえば、ここでは、投球モーションを行う投手キャラクタ、およびボールを待ち構える打者キャラクタが、モニタ3aに表示される。なお、各キャラクタ用の画像データは、RAM13に格納される。
【0110】
移動オブジェクト表示手段67は、対戦画面において、投手キャラクタからリリースされたボールを表示する機能を、備えている。
【0111】
この手段では、対戦画面において、投手キャラクタからリリースされたボールが、ボール用の画像データを用いて、モニタ3aに表示される。ここでは、投手キャラクタからリリースされたボールを、特性データに基づいて制御する処理が、CPU11により実行される。たとえば、特性データに基づいて設定された、ボールの移動速度、ボールの変化量、およびボールの威力に基づいて、投手キャラクタからリリースされるボールの軌道を、計算する処理が、CPU11により実行される。そして、この軌道上を移動するボールが、ボール用の画像データを用いて、モニタ3aに表示される。なお、ボールの軌道を定義するための軌道方程式は、ゲームプログラムにおいて予め規定されており、RAM13に格納されている。
【0112】
〔野球ゲームにおける投球用の命令指示システムの説明〕
次に、野球ゲームにおける投手用の命令指示システムの具体的な内容について説明する。また、図18および図19に示すフローについても同時に説明する。なお、図19は野球ゲームの全体概要を説明するためのフローであり、図19は上記システムを説明するためのフローである。
【0113】
まず、携帯ゲーム機1の電源が投入され、携帯ゲーム機1が起動されると、野球ゲームプログラムが、記憶装置17たとえばハードディスクから、RAM13にロードされ格納される。このときには、野球ゲームを実行する上で必要となる各種の基本ゲームデータも、同時に、記憶装置17からRAM13にロードされ格納される(S1)。
【0114】
たとえば、基本ゲームデータには、ゲーム空間用の各種の画像に関するデータが含まれている。ゲーム空間用の各種の画像に関するデータには、たとえば、スタジアム用のモデルデータ、選手キャラクタ用のモデルデータ、および各種のオブジェクトのモデルデータ等が、含まれている。また、基本ゲームデータには、ゲーム空間用のモデルデータをゲーム空間に配置するための位置座標データが、含まれている。また、基本ゲームデータには、ゲーム空間に配置されたモデルを、モニタ3aに表示するための画像データが、含まれている。さらに、基本ゲームデータには、本システムで用いられる他の各種データも、含まれている。
【0115】
なお、上記のモデルが、モデル用の位置座標データが示す位置において、ゲーム空間に配置されると、このモデルは、ゲーム空間に配置された仮想カメラにより1フレームごとに撮影され、ここで撮影されたモデル用の画像データが、RAM13に格納される。すると、このモデル用の画像データを用いて、モデル画像がモニタ3aに表示される。これら一連の処理を実行するための命令は、CPU11から指示される。
【0116】
続いて、RAM13に格納された野球ゲームプログラムが、基本ゲームデータに基づいて、CPU11により実行される(S2)。すると、野球ゲームの起動画面がモニタ3aに表示される。すると、野球ゲームを実行するための各種の設定画面がモニタ3aに表示される。ここでは、たとえば、野球ゲームのプレイモードを選択するためのモード選択画面が、モニタ3aに表示される(図示しない)。このモード選択画面に表示された複数のプレイモードの中から、いずれか1つのプレイモードを選択することによって、プレイモードが決定される(S3)。プレイモードには、たとえば、12球団の中からチームを選択して1試合の対戦を楽しむ対戦モード、および12球団の中からチームを選択してペナントレースを戦うペナントモード等が、用意されている。そして、対戦モード用のボタン又はペナントモード用のボタンの位置において、指をモニタ3aに接触させることによって、プレイモードは選択される。
【0117】
続いて、モード選択画面で選択されたプレイモードにおいて、各種のイベントが、CPU11により実行される(S4)。ここで実行される各種のイベントには、たとえば、自動制御プログラム(AIプログラム、Artificial Intelligence Program)に基づいてCPU11により自動制御されるイベントや、プレイヤがモニタ3aに指を接触することによって入力された入力情報(信号)に基づいてプレイヤにより手動制御されるイベントがある。また、選手キャラクタの制御には、自動制御プログラムに基づいて選手キャラクタに命令を自動的に指示する制御(自動制御)や、モニタ3aからの入力信号に基づいて選手キャラクタに命令を指示する制御(手動制御)等がある。このように、本野球ゲームでは、モニタ3aからの指示や自動制御プログラムからの指示に応じて、イベントが制御されたり、選手キャラクタに命令が指示されたりする。
【0118】
なお、ここに示す自動制御プログラムは、野球ゲームプログラムに含まれている。また、この自動制御プログラムとは、プレイヤに代わって、イベントに関する命令および選手キャラクタに対する命令を自動的に制御するためのプログラムである。この自動制御プログラムは、プレイ状況に応じて、各種命令をCPU11に指示する。なお、各プレイ状況に対応する命令は、自動制御プログラムにおいて予め規定されている。
【0119】
続いて、選択されたプレイモードが終了したか否かが、CPU11により判断される(S5)。具体的には、プレイモードが終了したことを示す命令が発行されたか否かが、CPU11により判断される。そして、プレイモードが終了したことを示す命令が発行されたとCPU11により判断された場合(S5でYes)、ゲーム継続用のデータをRAM13に格納する処理が、CPU11により実行される。そして、ゲーム継続用のデータがRAM13に格納されると、この野球ゲームを終了するか否かを選択する選択画面が、モニタ3aに表示される(S6)。そして、この選択画面において、プレイヤが自分の指をモニタ3aに接触させることにより、野球ゲームの終了を示す項目が選択されると(S6でYes)、野球ゲームを終了するための処理がCPU11により実行される(S7)。一方で、この選択画面において、プレイヤが自分の指をモニタ3aに接触させることにより、野球ゲームの継続を示す項目が選択されると(S6でNo)、ステップ3(S3)のモード選択画面が、モニタ3aに再表示される。
【0120】
なお、プレイモードが終了するための命令が発行されたとCPU11に判断されない限り(S5でNo)、モード選択画面で選択されたプレイモードにおいて、各種のイベントがCPU11により繰り返し実行される(S4)。
【0121】
次に、プレイモードとして対戦モードが選択された場合を一例として、投手用の命令指示システムの詳細を説明する。以下では、自動制御プログラムが、先攻であるAチームの選手キャラクタに対して命令を指示し、プレイヤが、後攻であるBチームの選手キャラクタに対して命令を指示する場合の例が、示される。特に、以下では、プレイヤが投手キャラクタに対して命令を指示する場合の例が、詳細に説明される。
【0122】
モード選択画面において対戦モードが選択され(S11)、対戦チームが選択されると、各チームのスターティングメンバーを設定するためのメンバー設定画面が、モニタ3aに表示される。このメンバー設定画面において、Aチームの選手キャラクタは自動制御プログラムにより選択され、Bチームの選手キャラクタはプレイヤにより選択される(S12)。たとえば、図4に示すように、モニタ3aに表示された選手リストの中から、プレイヤが所望する各ポジションの選手キャラクタを、指で選択する。そして、この状態において指をスターティングメンバーリストへとスライドすることによって、選択された選手キャラクタが、スターティングメンバーリストに加えられる。この操作を繰り返すことによって、Bチームのスターティングメンバーが設定される。このように、プレイヤが所望する順序で上から下に並べることで、Bチームの打順が決定される。なお、Aチームの選手キャラクタのポジションおよび打順は、自動制御プログラムによって自動的に決定される。
【0123】
スターティングメンバーが決定された後には、各キャラクタの能力が設定される。たとえば、各選手キャラクタが有する能力を示す能力データは、ゲームプログラムにおいて予め規定されており、RAM13に格納されている。そして、RAM13に格納された各選手キャラクタの能力データを、CPU11に認識させることにより、各選手キャラクタの能力が、設定される。
【0124】
たとえば、投手キャラクタの場合、投手キャラクタが有する能力の1つに、球種(持ち球)がある(S13)。この球種は、球種データNK(ID)を用いて定義される。ここで、記号「ID」は、選手キャラクタを識別するための識別データである。IDに割り当てられる値は、選手キャラクタごとに個別に設定される。このIDに割り当てられる値は、ゲームプログラムにおいて予め規定される。このIDの値によって、各選手キャラクタがCPU11により管理される。
【0125】
たとえば、図5に示すように、投手キャラクタが有する球種が、ストレート、カーブ、シュート、およびフォークの4種類である場合、この投手キャラクタに対しては、4つの球種データNK(ID)が用意される。たとえば、球種がストレートである場合、球種データNK(ID)には数値「1」が割り当てられ、球種がカーブである場合、球種データNK(ID)には数値「2」が割り当てられる。また、球種がシュートである場合、球種データNK(ID)には数値「3」が割り当てられ、球種がフォークである場合、球種データNK(ID)には数値「4」が割り当てられる。このような投手キャラクタが有する球種と、球種データNK(ID)との対応関係を示すデータは、RAM13に用意されている(図5を参照)。なお、後述する球種設定時には、この球種データNK(ID)の値を、CPU11に認識させることにより、球種の絞り込みや設定が行われる。
【0126】
また、たとえば、打者キャラクタの場合、打者キャラクタには、ミート能力等のような能力が設定される。ここでは、ミート能力の高低によって、ミートカーソルの大きさが変更される。ミートカーソルは、プレイヤが打者キャラクタに対して命令を指示するときに、モニタ3aに表示される。たとえば、打者キャラクタのミート能力が、標準値より高い場合、標準のものより大きなミートカーソルが、モニタ3aに表示される(図示しない)。一方で、打者キャラクタのミート能力が、標準値より低い場合、標準のものより小さなミートカーソルが、モニタ3aに表示される(図示しない)。
【0127】
ミートカーソル用の画像データは、RAM13に格納されている。ミートカーソルをモニタ3aに表示するための命令が、CPU11から発行された場合、ミートカーソル用の画像データが、RAM13から読み出される。そして、この画像データの大きさが、ミート能力に対応するデータに基づいて、変更される。そして、変更後の画像データ(等倍の画像データを含む)を用いて、ミートカーソルが、モニタ3aに表示される(図示しない)。
【0128】
なお、ここでは、投手用の命令指示システムの詳細な説明を行うことを目的としているので、打者キャラクタに関する説明は、概要説明に留めている。
【0129】
ここでは、選手キャラクタの能力の例として、投手キャラクタの球種および打者キャラクタのミート能力の説明を行った。選手キャラクタの他の能力については、上述したように、RAM13に格納された各選手キャラクタの能力データを、CPU11に認識させることにより、設定される。
【0130】
このようにして、選手キャラクタの能力が設定されると、図6に示すように、対戦画面PTが、モニタ3aに表示される(S14)。ここでは、キャラクタ用の画像データが、RAM13から読み出され、この画像データを用いて、投球モーションに入る前の投手キャラクタ、打席に入って打撃姿勢をとる打者キャラクタ、および捕球姿勢をとる捕手キャラクタが、モニタ3aに表示される。また、この対戦画面PTでは、ストライクゾーンの範囲を示す矩形状の枠画像が、RAM13に格納された枠画像用の画像データを用いて、打者キャラクタの近傍、たとえば打者キャラクタの側方において、モニタ3aに表示される。
【0131】
この状態において、プレイヤが、投球コースを指示するために、指をモニタ3aに接触させると、指がモニタ3aに接触した接触位置TCを示す座標データが、CPU11に認識され、投球コース用の座標データとしてRAM13に格納される。そして、この座標データが示す位置TCが、投手キャラクタの投球コースとして設定される(S15)。
【0132】
投球コースTCが設定されると、対戦画面PTから球種設定画面PKへと画面を切り換える命令が、CPU11から発行される。たとえば、この場合、対戦画面PTを消去するための命令、および球種設定画面PKを表示するための命令が、CPU11から発行される。すると、球種設定用の画像データがRAM13から読み出され、球種設定画面がモニタ3aに表示される(S16)。ここでは、画像データを用いて、図7に示すように、球種設定用のボール画像KBが、モニタ3aに表示される。
【0133】
この状態において、プレイヤが、指をモニタ3aに接触すると、指がモニタ3aに接触した接触位置CP1,CP2を示す座標データが、CPU11に認識され、RAM13に格納される(S17)。すると、指がモニタ3aに2つの位置で接触したか否かが、判断される(S18)。たとえば、モニタ3aに対する指の接触が検出された時点を基準として、所定の時間の間たとえば5フレームの間において、指の接触位置の数を特定するための指の接触位置CP1,CP2の座標データがCPU11に認識され、指の接触位置の数が、CPU11により計算される。この指の接触位置の数によって、指がモニタ3aに2つの位置で接触したか否かが、判断される。
【0134】
より具体的には、プレイヤが2本の指をモニタ3aに接触させた場合、1本目の指がモニタ3aに接触したときに、指の接触位置の数を示す接触数データSIが、インクリメントされる。これにより、接触数データSIが、「0」から「1」に書き換えられる。そして、2本目の指がモニタ3aに接触したときに、接触数データSIがさらにインクリメントされる。これにより、接触数データSIが、「1」から「2」に書き換えられる。このようにして、指が接触した接触位置の数、すなわち接触数データSIを、計算する処理が、CPU11により実行される。なお、プレイヤが3本以上の指をモニタ3aに接触させた場合も、同様に、接触数データSIの値が、順に、インクリメントされる。
【0135】
ここでは、1本目の指がモニタ3aに接触した時点を基準として、フレーム数がCPU11によりカウントされる。そして、フレーム数が5フレームになったときに、接触数データSIの計算が、CPU11により停止される。そして、このときの接触数データSIが、最終的な接触数データSIとして、CPU11に認識され、RAM13に格納される。
【0136】
なお、本実施形態では、1フレームごとに接触位置の検出を行っているので、プレイヤが複数の指をモニタ3aに接触させたときに、複数の指が全く同時にモニタ3aに接触することは極めて稀である。すなわち、1本目の指がモニタ3aに接触してから、他の指がモニタ3aに接触するまでには、微妙なタイムラグが発生する。ここでは、この点に注目して、指の接触位置の数を計算している。
【0137】
このようにして、接触数データSIがCPU11により計算されると、RAM13に格納された接触数データSIの値が「2」であるか否かを判断する処理が、CPU11により実行される。そして、この接触数データSIの値が「2」であった場合(S18でYes)、指の接触位置の数が2個であると判断される。すなわち、この場合、モニタ3aに接触した指は、2本であると判断される。
【0138】
すると、2本の指がモニタ3aに接触したことを報知する画像が、モニタ3aにおいて提供される(S19)。たとえば、2本の指がモニタ3aに接触した場合、RAM13に格納されたボール用の画像データを拡大する処理が、CPU11により実行される。そして、このボール用の画像データの明度を高くする処理が、CPU11により実行される。すると、形態と明度が強調されたボール用の画像データが、報知用の画像データとして、RAM13に格納される。そして、形態と明度が強調されたボール画像が、報知用の画像データを用いて、モニタ3aに表示される。そして、このボール画像によって、2本の指がモニタ3aに接触したことが、モニタ3a上で報知される。
【0139】
なお、ボール画像の形態や明度を変更するためには、形態用の比率データ、および明度用の比率データが、必要となる。これら比率データは、ゲームプログラムにおいて予め規定されており、この比率データは、RAM13に格納されている。そして、これら比率データそれぞれを、たとえば、ボール画像の直径およびボール画像の明度に乗じる処理を、CPU11に実行させることにより、ボール画像の形態や明度が変更される。
【0140】
ここで、1本の指又は3本以上の指がモニタ3aに接触した場合(S18でNo)、報知画像はモニタ3aに表示されず、ステップ17(S17)の処理が、再実行される。
【0141】
続いて、2本の指がボール画像の境界又は内部に位置するか否かが、判断される(S20)。たとえば、2本の指の接触位置CP1,CP2の座標データ(2つの座標データ)と、球種設定用のボール画像KBの境界および内部領域を規定するための座標データとが、CPU11に認識される。そして、これらの座標データを比較する処理が、CPU11により実行される。
【0142】
ここでは、たとえば、球種設定用のボール画像KBの範囲すなわち球種設定用のボール画像KBの境界および内部領域は、球種設定用のボール画像KBの中心の座標データと、球種設定用のボール画像KBの半径データとに基づいて、規定される。言い換えると、球種設定用のボール画像KBの中心の座標データと、球種設定用のボール画像KBの半径データとをCPU11に認識させることにより、球種設定用のボール画像KBの境界および内部領域の座標データが検出される。
【0143】
すると、2本の指の接触位置CP1,CP2の座標データそれぞれが、球種設定用のボール画像KBの境界および内部領域の座標データのいずれか1つの座標データに一致するか否かが、CPU11により判断される。そして、2本の指の接触位置CP1,CP2の座標データそれぞれが、球種設定用のボール画像KBの境界および内部領域の座標データのいずれか1つの座標データに一致した場合(S20でYes)、2本の指がボール画像の境界又は内部に位置したと、判断する。
【0144】
そして、2本の指がボール画像の境界又は内部に位置した場合(S20でYes)、投手キャラクタからリリースされるボールの球種を絞り込む処理が、CPU11により実行される(S21)。たとえば、この場合、まず、図8に示すように、2本の指の接触位置CP1,CP2の座標データに基づいて、2本の指の接触位置CP1,CP2の間隔データLを計算する処理が、CPU11により実行される。そして、この間隔データLに対応する球種データNK(ID)が、図9に示すような、間隔データLと球種データNK(ID)との対応関係を示す対応テーブルに基づいて、CPU11に認識される。なお、この対応テーブルは、RAM13に格納されている。
【0145】
より具体的には、投手キャラクタが有する球種が、フォーク、カーブ、シュート、およびストレートの4種類である場合、図8および図9に示すように、間隔データLの値が、所定の値たとえば「2(cm)」以上である場合は、数値「4」が、球種データNK(ID)の値として、CPU11に認識される。また、間隔データLの値が所定の値たとえば「2(cm)」未満である場合は、数値「1」、数値「2」、および数値「3」が、球種データNK(ID)の値として、CPU11に認識される。このように、モニタ3aに接触した指の間隔、たとえば間隔データLの値に応じて、球種データNK(ID)の値を設定することにより、球種が絞り込まれる。
【0146】
ここで、2本の指の接触位置CP1,CP2の座標データそれぞれが、球種設定用のボール画像KBの境界および内部領域の座標データのいずれか1つの座標データに一致しなかった場合(S20でNo)、2本の指がボール画像の外部に位置したと、判断する。この場合は、ステップ17(S17)の処理が、再実行される。
【0147】
続いて、プレイヤが、2本の指をモニタ3aに接触させた状態で、2本の指をモニタ3a上で移動させたか否かが、判断される。つまり、2つの接触位置を示す座標データが、変化したか否かが、CPU11により判断される(S22)。ここで、そして、2本の指が、所定の時間たとえば60フレームの間、モニタ3a上で移動しなかった場合(S22でNo)、ステップ17(S17)の処理が、再実行される。
【0148】
一方で、図10に示すように、プレイヤが、2本の指をモニタ3aに接触させた状態で、2本の指をモニタ3a上で移動させた場合(S22でYes)、移動中の2本の指の接触位置CP1,CP2の座標データが、CPU11に連続的に認識され、RAM13に格納される。ここでは、たとえば、移動中の2本の指の接触位置CP1,CP2の座標データが、1フレームごとに、CPU11に認識され、RAM13に格納される。
【0149】
プレイヤが2本の指をモニタ3a上で移動させたときには、球種設定用のボール画像KBの境界又は内部に位置する2本の指が、モニタ3aから離反したか否かを、判断する処理が、所定の時間(監視時間)ごとに、CPU11により実行される(S23)。ここでは、たとえば、移動中の2本の指の接触位置CP1,CP2の座標データが、1フレームごとにCPU11により監視されている。そして、移動中の2本の指の接触位置CP1,CP2の座標データの中の少なくともいずれか一方の座標データが、所定の時間以上の間たとえば1フレーム以上の間、CPU11に認識されなかった場合、指がモニタ3aから離反したと、判断する(S23でYes)。一方で、これら座標データが、1フレームごとにCPU11に認識されている間は、指がモニタ3aに接触しているものと、判断する(S23でNo)。
【0150】
また、プレイヤが2本の指をモニタ3a上で移動させたときには、2本の指が球種設定用のボール画像KBの外部に位置したか否かを、判断する処理が、1フレームごとに、CPU11により実行されている(S24)。ここでは、たとえば、移動中の2本の指の接触位置CP1,CP2の座標データと、球種設定用のボール画像KBの境界および内部領域の座標データとを比較する処理が、CPU11により実行される。
【0151】
たとえば、移動中の2本の指の接触位置CP1,CP2の座標データそれぞれが、球種設定用のボール画像KBの境界および内部領域の座標データのいずれか1つの座標データに一致するか否かが、CPU11により判断される。そして、移動中の2本の指の接触位置CP1,CP2の座標データそれぞれが、球種設定用のボール画像KBの境界および内部領域の座標データのいずれか1つの座標データに一致した場合、移動中の2本の指がボール画像の境界又は内部に位置するものと、判断する(S24でYes)。ここで、移動中の2本の指がボール画像の境界又は内部に位置した場合(S24でYes)、ステップ22(S22)の処理が、再実行される。
【0152】
一方で、移動中の2本の指の接触位置CP1,CP2の座標データの少なくともいずれか一方が、球種設定用のボール画像KBの境界および内部領域の座標データのいずれか1つの座標データに一致しなかった場合、移動中の2本の指がボール画像の外部に位置するものと、判断する(S24でNo)。
【0153】
続いて、プレイヤが2本の指をモニタ3a上で移動させたときに、移動中の2本の指の接触位置CP1,CP2の中の少なくともいずれか一方の接触位置が、モニタ3aから離反した場合(S23でYes)、又はボールの外部に位置した場合(S24でNo)、指の接触位置の移動状態に関する接触点移動状態データDを計算する処理が、CPU11により実行される(S25)。
【0154】
接触点移動状態データDには、移動方向データD1、移動速度データD2、移動距離データD3、および加速度データD4が含まれる。各接触点移動状態データD1,D2,D3,D4は、指の移動に伴う接触位置CP1,CP2の座標データおよび時間データT1,T2に基づいて、CPU11により計算される。
【0155】
たとえば、接触点移動状態データDを計算するときの座標データには、2本の指がモニタ3aに接触したと判断された時点の第1座標データと、2本の指の接触位置CP1,CP2の少なくともいずれか一方が、モニタ3aから離反した時点、又はボールの外部に位置した時点の第2座標データとが、用いられる。また、接触点移動状態データDを計算するときの時間データには、2本の指がモニタ3aに接触したと判断された時点の第1時間データと、2本の指の接触位置CP1,CP2の少なくともいずれか一方が、モニタ3aから離反した時点、又はボールの外部に位置した時点の第2時間データとが、用いられる。なお、これら座標データおよび時間データは、RAM13に格納される。
【0156】
詳細には、図11に示すように、接触点移動状態データDの計算では、2本の指がモニタ3aに接触したと判断された時点の2本の指CP1,CP2の中点CPMを示す座標データ、すなわち2本目の指がモニタ3aに接触したと判断された時点の2つの接触位置の中点を示す座標データが、第1座標データとして、用いられる。また、接触点移動状態データDの計算では、2本の指の接触位置CP1,CP2のいずれか一方が、モニタ3aから離反した時点、又はボールの外部に位置した時点の、2本の指の中点CPM’を示す座標データが、第2座標データとして、用いられる。すなわち、接触点移動状態データDの計算では、2本の指の接触位置CP1,CP2のいずれか一方が、モニタ3aから離反した時点、又はボールの外部に位置した時点の、2つの接触位置CP1,CP2の中点CPM’を示す座標データが、第2座標データとして、用いられる。なお、図11は、2本の指の接触位置CP1,CP2のいずれか一方が、ボールの外部に位置した場合の例が、示されている。
【0157】
また、接触点移動状態データDの計算では、2本の指がモニタ3aに接触したと判断された時点の時間データ、すなわち2本目の指がモニタ3aに接触したと判断された時点の時間データが、第1時間データとして、用いられる。また、2本の指の接触位置CP1,CP2のいずれか一方が、モニタ3aから離反した時点、又はボールの外部に位置した時点の、時間データが、第2時間データとして、計算には用いられる。
【0158】
そして、第1座標データが示す第1位置CPMと、第2座標データが示す第2位置CPM’とに基づいて、2本の指が移動した方向を示す移動方向データ、たとえば角度データD1を、計算する処理が、CPU11により実行される。ここでは、たとえば、球種設定用のボール画像KBの中心を原点として、ゲーム装置の長手方向(ex. 音出力用のマイク5aに向かう方向)をY軸と定義し、このY軸に直交する方向をX軸と定義した場合、Y軸からの角度を示す角度データD1が、CPU11により計算される(図12を参照)。すると、この角度データD1が、2本の指がモニタ3a上で移動したときの方向を示す移動方向データとして、CPU11に認識され、RAM13に格納される。ここでは、角度データD1が、たとえば三角関数を用いて、計算される。
【0159】
また、図12に示すように、第1座標データが示す第1位置CPMと、第2座標データが示す第2位置CPM’とに基づいて、第1位置CPMと第2位置CPM’とを結ぶ線分の長さL1が、CPU11により計算される。すると、この計算結果が、2本の指がモニタ3a上で移動したときの距離を示す移動距離データD3として、CPU11に認識され、RAM13に格納される。また、第1時間データ示す第1時間T1と、第2時間データ示す第2時間T2とに基づいて、第1時間T1から第2時間T2までの経過時間(T2−T1)が、CPU11により計算される。そして、上記の線分の長さL1を、この経過時間(T2−T1)で除算する処理が、CPU11により実行される。すると、この計算結果が、2本の指がモニタ3a上で移動したときの速度を示す移動速度データD2として、CPU11に認識され、RAM13に格納される。さらに、上記の線分の長さL1を、上記の経過時間(T2−T1)の二乗で除算する処理が、CPU11により実行される。すると、この計算結果が、2本の指がモニタ3a上で移動したときの加速度を示す加速度データD4として、CPU11に認識され、RAM13に格納される。
【0160】
続いて、上記の接触点移動状態データDに基づいて、ボールの球種が設定される(S26)。たとえば、接触点移動状態データDに含まれる移動方向データD1に基づいて、ボールの回転軸および回転方向を設定する処理をCPU11に実行させることにより、ボールの球種が設定される。
【0161】
より具体的には、投手キャラクタが右投げである場合、図10に示したように、プレイヤが画面の左斜め下の方向に指を移動すると、図12に示すように、この方向に交差する方向に伸びる軸J2、すなわち移動方向データD1(角度データ)が示す方向の軸J1に交差する軸J2が、ボールの回転軸J2として設定される。ここでは、移動方向データD1が示す方向の軸J1に直交する軸J2の角度データD1’(=D1)が、ボールの回転軸データとして設定される。
【0162】
すると、この回転軸データD1’に対応する回転方向データD10が、CPU11により設定される。回転方向データD10は、ボールの回転方向を規定するためのものである。この回転方向データD10には、所定の値がCPU11により割り当てられる。ここで回転方向データD10に割り当てられる所定の値は、回転軸データD1’に基づいて設定される。
【0163】
たとえば、回転軸データD1’の値が、X軸を基準として時計回りに「α(度)より大きく90(度)未満」である場合、回転方向データD10には数値「2」が、CPU11により割り当てられる。すると、この回転方向データD10の値に基づいて、ボールの回転方向が決定される。たとえば、この場合、第2象限から第4象限へと伸びる回転軸J2の軸心を、第4象限側から見た場合に、時計回りに回転する方向が、ボールの回転方向として設定される。ここでは、回転方向データD10の値が「1」である場合は、回転方向を、反時計回りに定義し、回転方向データD10の値が「2」である場合は、回転方向を、時計回りに定義する。このような処理により、これら回転軸データD1’および回転方向データD10に対応する球種、たとえばカーブが、投手キャラクタからリリースされるボールの球種として、決定される。
【0164】
ここで、後述するように、プレイヤが、球種としてストレートを指示しようとして、画面の下方に指を移動したときに、プレイヤの指が僅かに左斜め下の方向に移動してしまうことがある。この場合、プレイヤは、球種としてストレートを指示したものの、カーブが選択されてしまうおそれがある。このため、ここでは、認識許可角度αを導入することにより、この問題を解決している。なお、上記の認識許可角度αは、ゲームプログラムにおいて予め規定されており、所定の値に設定される。ここでは、たとえば、αの値として10(度)が、割り当てられている。
【0165】
投手キャラクタが右投げであり、画面の右斜め下の方向に指が移動した場合も、画面の左斜め下の方向に指が移動した場合と同様に、接触点移動状態データDに含まれる移動方向データD1に基づいて、ボールの球種が設定される。この場合、移動方向データD1(角度データ)が示す方向の軸J1に交差する軸J2、たとえば移動方向データD1が示す方向の軸J1に直交する軸J2の角度データD1’(=D1)が、ボールの回転軸データD1’として設定される。
【0166】
すると、この回転軸データD1’に対応する回転方向データD10が、CPU11により設定される。たとえば、回転軸データD1’の値が、X軸を基準として時計回りに「−90(度)より大きくβ(度)未満」の範囲である場合、回転方向データD10には数値「2」が、CPU11により割り当てられる。すると、この回転方向データD10の値に基づいて、ボールの回転方向が決定される。たとえば、この場合、図12においてY軸を基準とした軸対象な図を考えると(図示しない)、第3象限から第1象限へと伸びる回転軸の軸心を、第1象限側から見た場合に、時計回りに回転する方向が、ボールの回転方向として設定される。このような処理により、これら回転軸データD1’および回転方向データD10に対応する球種、たとえばシュートが、投手キャラクタからリリースされるボールの球種として、決定される。
【0167】
ここで、後述するように、プレイヤが、球種としてストレートを指示しようとして、画面の下方に指を移動したときに、プレイヤの指が僅かに右斜め下の方向に移動してしまうことがある。この場合、プレイヤは、球種としてストレートを指示したものの、シュートが選択されてしまうおそれがある。このため、ここでは、認識許可角度βを導入することにより、この問題を解決している。なお、認識許可角度βは、ゲームプログラムにおいて予め規定されており、所定の値に設定される。ここでは、たとえば、βの値として10(度)が、割り当てられている。
【0168】
投手キャラクタが右投げであり、画面の下方に指が移動した場合、画面の左斜め下の方向に指が移動した場合(画面の右斜め下の方向に指が移動した場合)と同様に、接触点移動状態データDに含まれる移動方向データD1に基づいて、ボールの球種が設定される。この場合、移動方向データD1(角度データ)が示す方向の軸J1に交差する軸J2、たとえば移動方向データD1が示す方向の軸J1に直交する軸J2の角度データD1’(=D1)が、ボールの回転軸データとして設定される。
【0169】
すると、この回転軸データD1’に対応する回転方向データD10が、CPU11により設定される。たとえば、回転軸データD1’の値が、X軸を基準として時計回りに「−β(度)以上α(度)以下」の範囲にある場合、回転方向データD10には数値「1」が、CPU11により割り当てられる。すると、この回転方向データD10の値に基づいて、ボールの回転方向が決定される。たとえば、この場合、ボールの回転軸を、X軸の正の方向から見た場合に、反時計回りに回転する方向が、ボールの回転方向として設定される。このような処理により、これら回転軸データD1’および回転方向データD10に対応する球種、たとえばストレートが、投手キャラクタからリリースされるボールの球種として、決定される。
【0170】
ここで、上述したように、間隔データLの値が所定の値たとえば「2(cm)」以上である場合、球種は既に1種類に絞り込まれている。このため、このステップでは、ボールの回転軸およびボールの回転方向を設定することなく、既に1種類に絞り込まれているフォークが、投手キャラクタからリリースされるボールの球種として、設定される。しかしながら、後述するように、本実施形態では、ボールの軌道を計算するときに、ボールの回転軸および回転方向が考慮されるので、球種がフォークである場合も、ボールの回転軸データD1’および回転方向データD10が、設定される。
【0171】
たとえば、フォークの場合は、ストレートの場合と同様にして、ボールの回転軸データD1’および回転方向データD10が、設定される。たとえば、画面の下方に指が移動した場合、移動方向データD1(角度データ)が示す方向の軸J1に交差する軸J2、たとえば移動方向データD1が示す方向の軸J1に直交する軸J2の角度データD1’(=D1)が、ボールの回転軸データとして設定される。すると、この回転軸データD1’に対応する回転方向データD10が、CPU11により設定される。たとえば、回転軸データD1’の値が、X軸を基準として時計回りに「−β(度)以上α(度)以下」の範囲にある場合、回転方向データD10には数値「1」が、CPU11により割り当てられる。すると、この回転方向データD10の値に基づいて、ボールの回転方向が決定される。たとえば、この場合、ボールの回転軸を、X軸の正の方向から見た場合に、反時計回りに回転する方向が、ボールの回転方向として設定される。このようにして、フォークの場合も、回転軸データD1’および回転方向データD10が、設定される。
【0172】
ここで、上記のように、回転方向データD10を設定する際には、回転軸データD1’と回転方向データD10との対応関係を示す対応テーブルが、必要となる。この対応テーブルは、RAM13に格納されており、CPU11により適宜参照される(図13を参照)。
【0173】
なお、本実施形態では、2本の指の最初の接触位置CP1,CP2を基準として、2本の指が上方(斜め上方を含む)および側方に移動した場合は、接触点移動状態データDの計算は実行されない。すなわち、2本の指を、下方(斜め下方を含む)に移動した場合にのみ、接触点移動状態データDの計算が実行される。また、ここでは、投手キャラクタが右投げである場合の例を示したが、投手キャラクタが左投げである場合、回転方向データの値は、カーブとシュートとで逆転するが、上述した処理と同様の処理を行うことにより、接触点移動状態データDは計算することができる。
【0174】
上述したように、本実施形態では、まず、移動方向データD1を用いて、ボールの回転軸データD1’および回転方向データD10を設定し、次に、ボールの回転軸データD1’および回転方向データD10を用いて、ボールの球種が設定される場合の例を示した。しかしながら、移動方向データD1を用いて、移動方向データD1が示す方向の軸J1に交差する軸J2を有する球種を、直接的に設定するようにしても良い。
【0175】
この場合、たとえば、投手キャラクタが右投げであり、指が画面の左下の方向に移動した場合、カーブが球種として設定され、指が画面の右下の方向に移動した場合、シュートが球種として設定され、指が画面の下方に移動した場合、ストレートが球種として設定される。なお、フォークの場合は、間隔データLにより既に決定されている。そして、各球種に応じて、所定の回転軸データD1’および所定の回転方向データD10が、CPU11により設定される。ここで設定される、所定の回転軸データD1’および所定の回転方向データD10は、ゲームプログラムにおいて予め規定されており、この値はRAM13に格納されている。
【0176】
続いて、投手キャラクタからリリースされるボールの移動特性が、設定される(S27)。たとえば、ボールが移動するときの複数の移動特性それぞれに関する特性データTDが、CPU11に認識される。より具体的には、指の接触位置の移動状態に関する接触点移動状態データD、たとえば、移動速度データD2、移動距離データD3、および加速度データD4が、ボールの各特性を規定するためのデータとして、CPU11に認識される。ここでは、ボールの特性データTDが、ボールの移動速度V1、ボールの回転速度V2(変化量)、およびボールの減速率V3(威力)を有している。そして、各特性データTDが、移動速度データD2、移動距離データD3、および加速度データD4のような特性用の接触点移動状態データDに基づいて、設定される。
【0177】
ここでは、ボールの移動速度V1は、移動速度データD2に基づいて設定される。たとえば、指の接触位置の移動速度データD2が大きくなるにつれて、ボールの移動速度V1が大きくなるように、ボールの移動速度V1は、設定される。また、ボールの変化量たとえばボールの回転速度V2は、移動距離データD3に基づいて設定される。たとえば、指の接触位置の移動距離データD3が大きくなるにつれて、ボールの回転速度V2が大きくなるように、ボールの回転速度V2は、設定される。また、ボールの威力たとえばボールの減速率V3は、加速度データD4に基づいて設定される。たとえば、指の接触位置の加速度データD4が大きくなるにつれて、ボールの減速率V3が小さくなるように、ボールの減速率V3は、設定される。
【0178】
より具体的には、ボールの移動速度V1、ボールの回転速度V2、ボールの減速率V3は、多項式を用いて評価される。たとえば、図14に示すように、指の接触位置の移動速度データD2に対応する変数をX1とすると、ボールの移動速度V1(X1)は、二次関数たとえば「V1(X1)=A1・X1^2+B1」を用いて、算出される。ここで、A1およびB1は、正の値であり、ゲームプログラムにおいて所定の値が設定されている。なお、移動速度データD2が所定の値Xm以上になった場合は、ボールの移動速度V1(X1)は、所定の上限値V1maxに設定される。この上限値V1maxは、投手キャラクタごとに設定されており、投手キャラクタが投球可能な最高速度に対応している。
【0179】
また、図15に示すように、指の接触位置の移動距離データD3に対応する変数をX2とすると、ボールの回転速度V2(X2)は、二次関数たとえば「V2(X2)=A2・X2^2+B2」を用いて、算出される。ここで、A2およびB2は、正の値であり、ゲームプログラムにおいて所定の値が設定されている。なお、移動距離データD3が、所定の値たとえば球種設定用のボール画像KBの直径X2m以上になった場合は、ボールの回転速度V2(X2)は、所定の上限値V2maxに設定される。この上限値V2maxは、投手キャラクタごとに、所定の値に設定される。
【0180】
さらに、図16に示すように、指の接触位置の加速度データD4に対応する変数をX3とすると、ボールの減速率V3(X3)は、二次関数たとえば「V3(X3)=A3・X3^2+B3」を用いて、算出される。ここで、V3(X3)は、「1.0」以下の正の値をとる。すなわち、B3は、1.0に設定される。また、A3は負の値であり、ゲームプログラムにおいて所定の値に設定される。なお、加速度データD4が所定の値X3m以上になった場合は、ボールの減速率V3(X3)は、所定の下限値V3min(>0)に設定される。この下限値は、投手キャラクタごとに、所定の値に設定される。
【0181】
ここで設定されるボールの減速率V3(X3)は、投手キャラクタから捕手キャラクタへと移動するボールが減速する比率の最大値である。ボールは、投手キャラクタから捕手キャラクタへと移動する間に、徐々に減速することを考慮すると、ボールの減速率は、リリース後のボールの移動距離に応じて変化する。このため、ここでは、たとえば、ボールが捕手キャラクタに到達したときに、ボールの減速率が、最大すなわちV3(X3)になるように、ボールの減速率は、設定される。すなわち、ボールが投手キャラクタからリリースされてから、ボールが捕手キャラクタに到達するまでの間、ボールの減速率は、徐々に大きくなる。たとえば、ボールが投手キャラクタからリリースされた時点の減速率V3は、「0.0」に設定されており、この時点ではボールは減速しない。そして、ボールが捕手キャラクタに到達した時点の減速率は、上記の減速率V3(X3)の値に設定され、ボールは最も減速される。
【0182】
具体的には、ボールが投手キャラクタからリリースされてから、ボールが捕手キャラクタに到達するまでの間の減速率V3は、上記の「0.0」と減速率V3(X3)の値とを用いて、線形補完によって求められる。すなわち、ボールが投手キャラクタからリリースされてから、ボールが捕手キャラクタに到達するまでの間、ボールの減速率V3は、徐々に大きくなる。これにより、現実世界の野球において、投手キャラクタからリリースされたボールが、捕手キャラクタに近づくにつれて、失速する状態を、野球ゲームにおいても再現することができる。
【0183】
上記のようにボールの球種やボールの特性を設定するときの操作形態は、現実世界の野球において投手がボールをリリースするときの動作形態に対応している。たとえば、現実世界の野球において、投手がボールをリリースするときには、腕の振りや手首の回転をボールに伝達すればするほど、ボールの移動速度、ボールの回転速度、およびボールの球威(威力)は、増加する。本野球ゲームでは、プレイヤが自分の指をモニタ3aに接触させた状態で移動させるという操作によって、現実世界の野球の投手の動作を再現している。そして、現実世界の投手の動作を、野球ゲームにおける操作によって再現した上で、この操作によって、現実世界の投手の動作によって決定される、ボールの移動速度、ボールの回転速度、およびボールの球威(威力)が設定されるようにしている。また、指がモニタ3aから離反したタイミング、又は指がボールの外部に位置したタイミングで、ボールを投手キャラクタからリリースさせることにより、現実世界の投手がボールをリリースする感覚も、同時に再現している。
【0184】
なお、上記の図14−図16に示したような、移動速度データD2(X1)とボールの移動速度V1との対応関係、移動距離データD3(X2)とボールの回転速度V2(変化量)との対応関係、および加速度データD4(X3)とボールの減速率V3(威力)との対応関係は、ゲームプログラムにおいて予め規定されており、各対応関係を規定するためのデータは、RAM13に格納されている。
【0185】
ここでは二次関数が用いられているが、ボールの移動速度V1、ボールの回転速度V2、およびボールの減速率V3を評価する関数は、上記の実施形態に限定されず、どのような関数を用いても良い。たとえば、指の接触位置の移動速度データD2が大きくなるにつれて、ボールの移動速度V1が大きくなるような関数、指の接触位置の移動距離データD3が大きくなるにつれて、ボールの回転速度V2が大きくなるような関数、および指の接触位置の加速度データD4が大きくなるにつれて、ボールの減速率V3が小さくなるような関数であれば、どのような関数を用いても良い。
【0186】
続いて、指がモニタ3aから離反したタイミング、又は指がボールの外部に位置したタイミングで、図17に示すように、球種設定画面PKから対戦画面PTへと、画面が切り換えられる(S28)。なお、厳密には、指がモニタ3aから離反した場合、又は指がボールの外部に位置した場合、内部処理として上述したボールの球種および特性が設定された後に、球種設定画面PKから対戦画面PTへと、画面が切り換えられる。
【0187】
ここでは、球種設定画面PKから対戦画面PTへとの画面の切り換え処理についての説明を行う。たとえば、指がモニタ3aから離反したタイミング、又は指がボールの外部に位置したタイミングで、球種設定画面PKを消去するための命令、および対戦画面PTを表示するための命令が、CPU11から発行される。すると、対戦画面用の画像データがRAM13から読み出され、この画像データを用いて、図17に示すような対戦画面PTが、モニタ3aに再表示される。ここでは、たとえば、ボールをリリースした投手キャラクタ、打席に入って打撃姿勢をとる打者キャラクタ、捕球姿勢をとる捕手キャラクタ、および投手キャラクタからリリースされたボールが、モニタ3aに表示される。
【0188】
ここでは、投手キャラクタからリリースされたボールが、ボール用の画像データを用いて、モニタ3aに表示される。たとえば、投手キャラクタからリリースされたボールは、CPU11により制御される。たとえば、接触点移動状態データD、すなわち球種用の接触点移動状態データD1および特性用の接触点移動状態データD2,D3,D4に基づいて、ボールの軌道を設定する処理が、CPU11により実行される。すると、この軌道上を移動するボールが、画像データを用いて、モニタ3aに表示される。
【0189】
より具体的には、ボールの軌道は、RAM13に格納された、ボールの軌道を設定するための基礎方程式(運動方程式)によって定義される。ボールの基礎方程式は、ゲームプログラムにおいて予め規定されている。
【0190】
たとえば、ボールが投手キャラクタからリリースされた時点からの時刻を記号「t」で表現し、各時刻tのボールの位置を示す座標を記号「(x1,x2,x3)」で表現すると、ボールの基礎方程式は、たとえば、「(x1,x2,x3)=(F1,F2,F3)」と表記することができる。ボールの基礎方程式F1,F2,F3では、ボールの移動速度V1、ボールの回転速度V2、ボールの減速率V3、ボールにかかる重力、およびボールが受ける空気抵抗等が、考慮される。また、ボールの基礎方程式では、リリースポイントの座標データ、および投球コースTCの座標データが、考慮される。これにより、ボールの基礎方程式F1,F2,F3が、一意に決定される。
【0191】
たとえば、移動方向データD1に対応する回転軸データD1’および回転方向データD10、およびボールの回転速度V2を、初期条件として用いることにより、基礎方程式F1,F2,F3におけるボールの回転に関する係数が、決定される。また、ボールの移動速度V1を、初期条件として用いることにより、基礎方程式F1,F2,F3におけるボールの速度に関する係数が、決定される。また、特性データTDに基づいて設定されたボールの減速率V3を用いることにより、基礎方程式F1,F2,F3のボールの威力に関する係数が、決定される。さらに、ボールの重力および空気抵抗等を用いることにより、基礎方程式F1,F2,F3のその他の係数が、決定される。このようにして、ボールの基礎方程式F1,F2,F3の各係数を決定することによって、ボールの基礎方程式F1,F2,F3が一意に決定される。これにより、投手キャラクタからリリースされたボールの軌道が、一意に設定される。すると、この軌道上を移動するボールが、1フレームごとに、ボール用の画像データを用いて、モニタ3aに表示される。
【0192】
続いて、自動制御プログラムに基づいて、打者キャラクタに対して打撃に関する命令が指示されると、この打者キャラクタのプレイが終了したか否かが、CPU11により判断される(S29)。そして、この打者キャラクタのプレイが終了していない場合(S29でNo)、ステップ15(S15)の処理が、CPU11により再実行される。一方で、この打者キャラクタのプレイが終了した場合(S29でYes)、チェンジになったか否かが、CPU11により判断される(S30)。そして、チェンジになっていない場合(S30でNo)、次の打者キャラクタが打席に入り、ステップ15(S15)の処理が、CPU11により再実行される。
【0193】
なお、チェンジになった場合(S30でYes)、試合が終了したか否かが、CPU11により判断される(S31)。そして、試合が終了した場合(S31でYes)、図18のステップ7(S7)の処理、すなわちゲーム結果を保存する処理が、CPU11により実行される。ここで、試合が終了していない場合(S31でNo)、攻守が交代する。すると、打者キャラクタに対する打撃用の命令がプレイヤにより指示され、投手キャラクタに対する投球用の命令が自動制御プログラムに基づいて指示される。そして、再び攻守が交代すると、上記のステップ15(S15)の処理が、CPU11により実行される。
【0194】
以上のように、本実施形態では、プレイヤが投手キャラクタに対して投球に関する命令を指示するためのシステム、すなわち投手用の命令指示システムが、実現される。
【0195】
上記のような本実施形態では、接触入力式のモニタ3aの利点を積極的に利用することにより、現実世界の野球において、投手がある球種でボールを投げる際に行う行為、たとえば、ボールの握りの決定や、スローイングや、手首のひねり等の行為を、本実施形態の野球ゲームでは、2本の指をモニタ上でスライドする行為で、再現することができる。また、現実世界の投手の行為を野球ゲームにおいて単に再現するだけでなく、この行為を野球ゲームにおいて再現したときのプレイヤの行為、たとえばプレイヤが2本の指をモニタ上でスライドしたときの行為によって接触点移動状態データDが計算され、この接触点移動状態データDに基づいて球種やボールの特性が設定される。このように、本実施形態では、プレイヤが2本の指をモニタ上でスライドする行為によって、現実世界の投手の行為を野球ゲームにおいても再現することができ、球種の設定やボール特性の設定も、同時に行うことができる。すなわち、本発明では、接触入力式のモニタの利点を積極的に利用することにより、系統的な操作形態で、球種やボールの特性を設定することができる。また、ボールを投球する感覚を、ゲーム上でプレイヤに体験させることができる。
【0196】
〔他の実施形態〕
(a)前記実施形態では、ゲームプログラムを適用しうるコンピュータの一例として、携帯ゲーム機を用いた場合の例を示したが、コンピュータは、前記実施形態に限定されず、モニタが別体に構成されたゲーム装置、モニタが一体に構成されたゲーム装置、ゲームプログラムを実行することによってゲーム装置として機能するパーソナルコンピュータやワークステーションなどにも同様に適用することができる。
(b)本発明には、前述したようなゲームを実行するプログラムおよびこのプログラムを記録したコンピュータ読み取り可能な記録媒体も含まれる。この記録媒体としては、カートリッジ以外に、たとえば、コンピュータ読み取り可能なフレキシブルディスク、半導体メモリ、CD−ROM、DVD、MO、ROMカセット、その他のものが挙げられる。
【産業上の利用可能性】
【0197】
本発明は、接触入力式の画像表示部に指示手段を接触させることにより命令が指示されるゲームにおいて、利用可能である。
【符号の説明】
【0198】
3a 液晶モニタ
10 制御装置
11 CPU
13 RAM
17 記憶装置
50 移動形態データ格納手段
51 キャラクタ表示手段
52 送出目標設定手段
53 第1画面切換手段
54 オブジェクト表示手段
55 接触位置認識手段
56 接触数判断手段
57 報知画像表示手段
58 第1接触位置判断手段
59 移動形態絞込手段
60 第2接触位置判断手段
61 第3接触位置判断手段
62 接触点移動状態認識手段
63 移動形態決定手段
64 移動特性決定手段
65 第2画面切換手段
66 キャラクタ再表示手段
67 移動オブジェクト表示手段
ID 識別データ
NK(ID) 球種データ
CP1,CP2 接触位置
SI 接触数データ
L 間隔データ
D 接触点移動状態データ
D1 移動方向データ
D1’ 回転軸データ
D10 回転方向データ
TD 特性データ
D2 移動速度データ
D3 移動距離データ
D4 加速度データ
TC 投球コース
PT 対戦画面
PK 球種設定画面
KB 球種設定用のボール画像

【特許請求の範囲】
【請求項1】
接触入力式の画像表示部に指示手段を接触させることにより、ゲームを実行可能なコンピュータに、
オブジェクトが移動するときの複数の移動形態それぞれを規定するための複数の移動形態データを、記憶部に格納する移動形態データ格納機能と、
前記オブジェクトを、画像データを用いて画像表示部に表示するオブジェクト表示機能と、
前記指示手段が画像表示部に接触したときに、前記指示手段が画像表示部に接触した接触位置を示す座標データを、制御部に認識させる接触位置認識機能と、
前記接触位置の座標データに基づいて前記接触位置の数を計算する処理を、制御部に実行させることにより、前記接触位置が複数であるか否かを判断する接触数判断機能と、
前記接触位置が複数であった場合に、前記複数の接触位置の間隔データを計算する処理を、制御部に実行させ、前記間隔データに対応する前記移動形態データを、制御部に認識させることにより、複数の前記移動形態を絞り込む移動形態絞込機能と、
前記指示手段が複数の前記接触位置を起点として画像表示部に接触した状態で移動したときに、前記移動に伴う前記接触位置の座標データの変化に基づいて、前記接触位置の移動状態に関する接触点移動状態データを計算する処理を、制御部に実行させる移動状態認識機能と、
前記接触点移動状態データに対応する1つの前記移動形態データを制御部に認識させることにより、前記オブジェクトが移動するときの移動形態を決定する移動形態決定機能と、
を実現させるためのゲームプログラム。
【請求項2】
前記移動状態認識機能では、前記指示手段が複数の前記接触位置を起点として画像表示部に接触した状態で移動したときに、前記接触点移動状態データに含まれる移動方向データを計算する処理を、制御部に実行させることにより、前記接触位置の移動方向が設定され、
前記移動形態決定機能では、前記移動方向データに対応する、1つの回転軸データおよび回転方向データを、制御部に認識させることにより、前記オブジェクトが移動するときの移動形態が、決定される、
請求項1に記載のゲームプログラム。
【請求項3】
前記コンピュータに、
前記オブジェクトが移動するときの複数の移動特性それぞれに関する複数の特性データを、制御部に認識させることにより、前記オブジェクトが移動するときの移動特性を決定する移動特性決定機能、
をさらに実現させ、
前記移動状態認識機能では、前記指示手段が複数の前記接触位置を起点として画像表示部に接触した状態で移動したときに、前記接触点移動状態データに含まれる移動速度データを計算する処理を、制御部に実行させることにより、前記接触位置の移動速度が設定され、
前記移動特性決定機能では、前記移動速度データを移動速度用の特性データとして制御部に認識させることにより、前記オブジェクトが移動するときの移動速度が、決定される、
請求項1又は2に記載のゲームプログラム。
【請求項4】
前記コンピュータに、
前記オブジェクトが移動するときの複数の移動特性それぞれに関する複数の特性データを、制御部に認識させることにより、前記オブジェクトが移動するときの移動特性を決定する移動特性決定機能、
をさらに実現させ、
前記移動状態認識機能では、前記指示手段が複数の前記接触位置を起点として画像表示部に接触した状態で移動したときに、前記接触点移動状態データに含まれる移動距離データを計算する処理を、制御部に実行させることにより、前記接触位置の移動距離が設定され、
前記移動特性決定機能では、前記移動距離データを移動距離用の特性データとして制御部に認識させることにより、前記オブジェクトが移動するときの変化量が、決定される、
請求項1から3のいずれかに記載のゲームプログラム。
【請求項5】
前記コンピュータに、
前記オブジェクトが移動するときの複数の移動特性それぞれに関する複数の特性データを、制御部に認識させることにより、前記オブジェクトが移動するときの移動特性を決定する移動特性決定機能、
をさらに実現させ、
前記移動状態認識機能では、前記指示手段が複数の前記接触位置を起点として画像表示部に接触した状態で移動したときに、前記接触点移動状態データに含まれる移動速度データを計算する処理を、制御部に実行させることにより、前記接触位置の移動速度が設定され、
前記移動特性決定機能では、前記移動速度データに対応する加速度データを、移動加速度用の特性データとして制御部に認識させることにより、前記オブジェクトが移動するときの威力が、決定される、
請求項1から4のいずれかに記載のゲームプログラム。
【請求項6】
前記コンピュータに、
前記接触位置が複数であった場合に、複数の前記接触位置の座標データと、画像表示部に表示された前記オブジェクトの境界および内部領域を規定するための座標データとを、制御部に認識させることにより、複数の前記接触位置が前記オブジェクトの境界又は内部に位置するか否かを、判断する第1接触位置判断機能、
をさらに実現させ、
前記移動形態絞込機能では、複数の前記接触位置が前記オブジェクトの境界又は内部に位置した場合に、前記複数の接触位置の間隔データを計算する処理を、制御部に実行させ、前記間隔データに対応する前記移動形態データを、制御部に認識させることにより、複数の前記移動形態が絞り込まれる、
請求項1から5のいずれかに記載のゲームプログラム。
【請求項7】
前記コンピュータに、
前記指示手段が複数の前記接触位置を起点として画像表示部に接触した状態で移動したときに、移動中の複数の前記接触位置の座標データと、画像表示部に表示された前記オブジェクトの境界および内部領域を規定するための座標データとを、制御部に認識させることにより、複数の前記接触位置が前記オブジェクトの境界又は内部に位置するか否かを、判断する第2接触位置判断機能、
をさらに実現させ、
前記移動状態認識機能では、複数の前記接触位置の中の少なくとも1つの接触位置が、前記オブジェクトの外部に位置したときに、前記接触位置の座標データに基づいて、前記接触位置の移動状態に関する接触点移動状態データを計算する処理が、制御部により実行される、
請求項1から6のいずれかに記載のゲームプログラム。
【請求項8】
前記コンピュータに、
前記指示手段が複数の前記接触位置を起点として画像表示部に接触した状態で移動したときに、移動中の複数の前記接触位置の座標データを、制御部に連続的に認識させることにより、前記接触位置が画像表示部から離反したか否かを、判断する第3接触位置判断機能、
をさらに実現させ、
前記移動状態認識機能では、前記指示手段が複数の前記接触位置を起点として画像表示部に接触した状態で移動し、前記オブジェクトの境界又は内部において、複数の前記接触位置の中の少なくとも1つの接触位置が、画像表示部から離反したときに、前記移動に伴う前記接触位置の座標データの変化に基づいて、前記接触点移動状態データを計算する処理が、制御部により実行される、
請求項1から7のいずれかに記載のゲームプログラム。
【請求項9】
前記コンピュータに、
前記接触位置が複数であった場合に、前記オブジェクト用の画像データの形態および明度を変更する処理を、制御部に実行させることにより、複数の前記指示手段が画像表示部に接触したことを報知する報知画像表示機能、
をさらに実現するための請求項1から8のいずれかに記載のゲームプログラム。
【請求項10】
前記コンピュータに、
第1画面において、前記オブジェクトを送出する第1キャラクタおよび前記第1キャラクタに対峙する第2キャラクタを、画像表示部に表示するキャラクタ表示機能と、
前記第1キャラクタおよび前記第2キャラクタが第1画面において表示された状態において、前記指示手段が画像表示部に接触したときに、前記指示手段が画像表示部に接触した接触位置を示す座標データを、制御部に認識させることにより、前記オブジェクトの送出目標を設定する送出目標設定機能と、
前記送出目標が設定されたときに、前記第1画面を消去するための命令、および前記オブジェクトの移動形態を設定するための第2画面を表示するための命令を、制御部に発行させることにより、前記第1画面から前記第2画面へと、画面を切り換える第1画面切換機能と、
をさらに実現させ、
前記オブジェクト表示機能では、前記第2画面において、前記オブジェクトが画像データを用いて画像表示部に表示される、
請求項1から9のいずれかに記載のゲームプログラム。
【請求項11】
前記コンピュータに、
前記第2画面において、前記オブジェクトが移動するときの複数の移動特性それぞれに関する複数の特性データを、制御部に認識させることにより、前記オブジェクトが移動するときの移動特性を決定する移動特性決定機能と、
前記オブジェクトが移動するときの移動形態が決定された後に、前記第2画面を消去するための命令、および前記第1画面を表示するための命令を、制御部に発行させることにより、前記第2画面から前記第1画面へと、画面を切り換える第2画面切換機能と、
前記第1画面において、前記第1キャラクタおよび前記第2キャラクタを、画像表示部に再表示するキャラクタ再表示機能と、
前記第1画面において、前記第1キャラクタから送出された前記オブジェクトを、前記特性データに基づいて、画像表示部に表示する移動オブジェクト表示機能と、
をさらに実現させるための請求項10に記載のゲームプログラム。
【請求項12】
前記第2画面切換機能では、複数の前記接触位置が前記オブジェクトの境界又は内部に位置した後に、複数の前記接触位置の少なくともいずれか一方が画像表示部から離反した場合、又は複数の前記接触位置が前記オブジェクトの境界又は内部に位置した後に、複数の前記接触位置の少なくともいずれか一方が前記オブジェクトの外部に位置した場合に、前記第2画面を消去するための命令、および前記第1画面を表示するための命令を、制御部に発行させることにより、前記第2画面から前記第1画面へと、画面が切り換えられる、
請求項11に記載のゲームプログラム。
【請求項13】
接触入力式の画像表示部に指示手段を接触させることにより、ゲームを実行可能なゲーム装置であって、
オブジェクトが移動するときの複数の移動形態それぞれを規定するための複数の移動形態データを、記憶部に格納する移動形態データ格納手段と、
前記オブジェクトを、画像データを用いて画像表示部に表示するオブジェクト表示手段と、
前記指示手段が画像表示部に接触したときに、前記指示手段が画像表示部に接触した接触位置を示す座標データを、制御部に認識させる接触位置認識手段と、
前記接触位置の座標データに基づいて前記接触位置の数を計算する処理を、制御部に実行させることにより、前記接触位置が複数であるか否かを判断する接触数判断手段と、
前記接触位置が複数であった場合に、前記複数の接触位置の間隔データを計算する処理を、制御部に実行させ、前記間隔データに対応する前記移動形態データを、制御部に認識させることにより、複数の前記移動形態を絞り込む移動形態絞込手段と、
前記指示手段が複数の前記接触位置を起点として画像表示部に接触した状態で移動したときに、前記移動に伴う前記接触位置の座標データの変化に基づいて、前記接触位置の移動状態に関する接触点移動状態データを計算する処理を、制御部に実行させる移動状態認識手段と、
前記接触点移動状態データに対応する1つの前記移動形態データを制御部に認識させることにより、前記オブジェクトが移動するときの移動形態を決定する移動形態決定手段と、
を備えるゲーム装置。
【請求項14】
接触入力式の画像表示部に指示手段を接触させることにより、ゲームをコンピュータにより制御可能なゲーム制御方法であって、
オブジェクトが移動するときの複数の移動形態それぞれを規定するための複数の移動形態データを、記憶部に格納する移動形態データ格納ステップと、
前記オブジェクトを、画像データを用いて画像表示部に表示するオブジェクト表示ステップと、
前記指示手段が画像表示部に接触したときに、前記指示手段が画像表示部に接触した接触位置を示す座標データを、制御部に認識させる接触位置認識ステップと、
前記接触位置の座標データに基づいて前記接触位置の数を計算する処理を、制御部に実行させることにより、前記接触位置が複数であるか否かを判断する接触数判断ステップと、
前記接触位置が複数であった場合に、前記複数の接触位置の間隔データを計算する処理を、制御部に実行させ、前記間隔データに対応する前記移動形態データを、制御部に認識させることにより、複数の前記移動形態を絞り込む移動形態絞込ステップと、
前記指示手段が複数の前記接触位置を起点として画像表示部に接触した状態で移動したときに、前記移動に伴う前記接触位置の座標データの変化に基づいて、前記接触位置の移動状態に関する接触点移動状態データを計算する処理を、制御部に実行させる移動状態認識ステップと、
前記接触点移動状態データに対応する1つの前記移動形態データを制御部に認識させることにより、前記オブジェクトが移動するときの移動形態を決定する移動形態決定ステップと、
を備えるゲーム制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19A】
image rotate

【図19B】
image rotate


【公開番号】特開2011−55998(P2011−55998A)
【公開日】平成23年3月24日(2011.3.24)
【国際特許分類】
【出願番号】特願2009−208071(P2009−208071)
【出願日】平成21年9月9日(2009.9.9)
【出願人】(506113602)株式会社コナミデジタルエンタテインメント (1,441)
【Fターム(参考)】