(58)【調査した分野】(Int.Cl.,DB名)
複数の操作部が所定方向に並べて設けられ、かつ前記複数の操作部のそれぞれに対する操作を操作部ごとに検出可能な入力装置と、前記ユーザが操作すべき操作部を当該ユーザに指示し、かつ前記操作部に対する操作の指示と前記入力装置が検出したユーザの操作との比較に基づいて前記ユーザの操作を評価する制御手段とを備え、前記複数の操作部の前記所定方向における間隔が、ユーザによる2以上の操作部の同時操作が生じ得る範囲に設定されたゲーム機において、
前記制御手段は、いずれか一の操作部の操作の指示に対応して、前記一の操作部を基準として前記所定方向に連続する複数の操作部を含むように設定された判定範囲内で2以上に設定される有効検出数を超えない数の操作が検出された場合には、前記一の操作部に対する操作が行われたと判定し、前記有効検出数を超える数の操作が検出された場合には、前記一の操作部に対応する操作が行われなかったと判定する操作判定手段を備え、
前記判定範囲が前記所定方向に連続する3以上の所定数の操作部を含むように設定され、前記有効検出数が前記所定数未満に設定されるゲーム機。
前記操作判定手段は、2以上の操作部の同時的な操作が指示され、かつそれらの操作部に対応して設定されるべき判定範囲に重複部分が生じ、かつ前記重複部分にて操作が検出された場合、前記重複部分に対する一方の側の判定範囲と他方の側の判定範囲のそれぞれにおける操作の検出数が1以上かつ前記有効検出数以下となるようにして、前記重複部分で検出された操作を前記一方の側の判定範囲又は前記他方の側の判定範囲の操作として割り当てることが可能か否かを判別し、割り当てることが可能な場合には前記一方の側の判定範囲及び前記他方の側の判定範囲のそれぞれに対応する操作部の操作が行われたと判定し、割り当てることが不可能な場合には前記一方の側の判定範囲に対応する操作部又は前記他方の側の判定範囲に対応する操作部の操作が行われなかったと判定する請求項1〜3のいずれか一項に記載のゲーム機。
前記操作部の前記所定方向における間隔が、いずれか一の操作部をユーザが指で操作したときに、当該一の操作部に対して少なくともいずれか一方の側に隣接する操作部が前記指に接して巻き込まれるように操作される範囲に設定される請求項5に記載のゲーム機。
前記入力装置として、ユーザがタッチ操作した位置に応じた信号を出力するタッチパネル入力装置が設けられ、前記複数の操作部のそれぞれは前記タッチパネル入力装置上に設定される請求項1〜6のいずれか一項に記載のゲーム機。
複数の操作部が所定方向に並べて設けられ、かつ前記複数の操作部のそれぞれに対する操作を操作部ごとに検出可能な入力装置を有し、前記複数の操作部の前記所定方向における間隔が、ユーザによる2以上の操作部の同時操作が生じ得る範囲に設定されたゲーム機のコンピュータを、前記ユーザが操作すべき操作部を当該ユーザに指示し、かつ前記操作部に対する操作の指示と前記入力装置が検出したユーザの操作との比較に基づいて前記ユーザの操作を評価する制御手段として機能させるコンピュータプログラムであって、
前記制御手段を、いずれか一の操作部の操作の指示に対応して、前記一の操作部を基準として前記所定方向に連続する複数の操作部を含むように設定された判定範囲内で2以上に設定される有効検出数を超えない数の操作が検出された場合には、前記一の操作部に対する操作が行われたと判定し、前記有効検出数を超える操作が検出された場合には、前記一の操作部に対応する操作が行われなかったと判定する操作判定手段としてさらに機能させ、
前記判定範囲が前記所定方向に連続する3以上の所定数の操作部を含むように設定され、前記有効検出数が前記所定数未満に設定されるように構成されるコンピュータプログラム。
【発明を実施するための形態】
【0009】
図1〜
図3は、本発明の一形態に係るゲーム機の外観構成を示している。ゲーム機1は、筐体2と、筐体2に取り付けられた表示装置の一例としてのメインモニタ3と、メインモニタ3の手前のコントロールパネル部2a上に配置された入力装置4を備えている。メインモニタ3には、例えば液晶モニタ等のフラットパネルディスプレイが用いられている。メインモニタ3は、その表示面を斜め上方に向けるようにして筐体2に取り付けられている。入力装置4は、ユーザがメインモニタ3と向かい合うようにして筐体2の前方に立ったとき、そのユーザから見てメインモニタ3の手前側でかつメインモニタ3の左右方向の一端部から他端部まで延びるように設けられている。以下、ユーザを基準として方向を特定する場合には、特に断らない限り、ユーザがメインモニタ3と向かい合うようにして立った状態を基準としたときの方向を意味するものとする。なお、筐体2のメインモニタ3の上端側にはトップパネル部2bが設けられ、そのトップパネル部2bにはサブモニタ6が設けられている。サブモニタ6はゲームを演出し、あるいはユーザに所定の情報を提示する表示装置として用いられる。サブモニタ6の下端部の左右にはスピーカ7がさらに設けられている。
【0010】
入力装置4には、ユーザから見て手前側に位置する第1入力部4aと、第1入力部4aよりも奧側に位置する第2入力部4bとが設けられている。
図2から明らかなように、第2入力部4bは第1入力部4aよりも僅かに高い位置に配置されている。第1入力部4a及び第2入力部4bのそれぞれには、複数の操作部材10がユーザから見て左右方向に一定間隔で並べて設けられている。操作部材10はユーザから見て前後方向に長く、左右方向には幅が狭い鍵盤状の形状に形成されている。第1入力部4aと第2入力部4bとでは操作部材10の個数が異なり、かつ操作部材10の前後方向の長さも異なるが、操作部材10同士の間隔は共通である。操作部材10がゲーム機1における操作部の一例に相当する。
【0011】
以下、
図4〜
図6を参照して入力装置4の構成を説明する。なお、
図4〜
図6は第1入力部4aの一部を示すが、操作部材10の個数は実際の第1入力部4aよりも少なく描かれている。また、第2入力部4bは操作部材10の前後長が異なるものであって、構成は同様である。よって、第2入力部4bの詳細については、第1入力部4aの説明をもってこれに代える。
【0012】
図4〜
図6に示すように、入力装置4には、多数の操作部材10に加えて、支持構造体の一例としての支持台11が設けられている。支持台11は、ベース12と、そのベース12の前後端部に沿って配置された多数の弾性支持部14とを備えている。弾性支持部14は操作部材10ごとに独立して設けられている。操作部材10はその前後端のフランジ部10aが弾性支持部14に重ね合わされることにより、弾性支持部14間に架け渡されるようにして支持台11上に支持される。操作部材10を押し込み操作したとき、弾性支持部14は弾性的に圧縮変形可能である。弾性支持部14の弾性変形に対する復元力により、操作部材10は上下方向に関する初期位置に保持される。初期位置にて各操作部材10の上端面10bは互いに等しい高さに位置する。弾性支持部14が操作部材10ごとに設けられているため、操作部材10は互いに独立して押し込み操作することが可能である。弾性支持部14には、一例としてスポンジ状の樹脂ブロックが用いられる。ゴム、エラストマー、コイルばねその他の各種の弾性体が弾性支持部14に用いられてよい。
【0013】
操作部材10の並び間隔(左右方向における操作部材10のピッチに相当する。)Pは、ユーザが一つの操作部材10の左右方向における中心位置を正確に操作すれば、その操作部材10に対して左右に隣接する操作部材10に指が触れることなく操作することが可能であって、かつ操作部材10の中心位置から幾らか偏った位置を指で押し込み操作したときは左又は右側に隣接する操作部材10に指が触れてその操作部材10が巻き込むように操作される範囲に設定される。例えば、操作部材10の並び間隔Pは、一般的なピアノ等の鍵盤楽器の一つの鍵盤(白鍵)の幅よりも明確に小さく設定される。一例として、間隔Pは、標準的な成人男性の指一本分の幅と同程度の幅に設定されている。目安としては、一つの操作部材10の幅方向中心位置を正確に押し込み操作すれば隣接する操作部材10を巻き込むことなく単一の操作部材10を操作することが可能であり、一方で、操作部材10を押し込み操作する位置がその幅方向中心位置から左右に幾らずれた場合には、隣接する操作部材10が不可避的に指に触れて巻き込まれるように操作されるように間隔Pが設定される。そのような間隔Pは一例として11〜12mm程度とすることができる。
【0014】
図5から明らかなように、隣接する操作部材10同士の間には幾らか隙間Gが設けられている。操作部材10の上端面10bの長手方向に沿った両側縁にはそれらの全長に亘って角部を面取りして除去するように処理した形状の角処理部10cが設けられている。それにより、操作部材10の上端面10b付近で隙間Gが拡大されている。隙間Gは、隣接する操作部材10同士を視覚的に明確に区分し、間隔Pが狭く設定されている状況下で、ユーザが一つの操作部材10を狙って押し込み操作を行うことを容易化するといった作用効果を奏する。上端面10bの付近で隙間Gを拡大することにより、そのような作用効果をさらに高めることができる。また、角処理部10cが設けられることにより、ユーザが指を左右に滑らせて複数の操作部材10を順番に操作する、いわゆるグリッサンド奏法に倣った操作を容易に行うことができる利点も得られる。なお、角処理部10cは面取り形状に限らず、アール加工のような丸みを帯びた形状に形成されてもよい。
【0015】
図6に示したように、支持台11の内部には、操作部材10の操作を検出する検出機構15が設けられている。検出機構15は、操作部材10ごとに設けられた操作部材10と同数の検出部16を備えている。一つの検出部16は、対応する操作部材10の押し込み操作を検出して所定の検出信号を出力する。したがって、検出機構15は、操作部材10ごとに独立して押し込み操作を検出可能である。各検出部16は、操作部材10の下面側に取り付けられた検出対象部の一例としての磁石16aと、磁石16aと上下方向に向かい合うようにして支持台11に固定されたセンサ部の一例としての一対の磁気センサ16bとを備えている。
【0016】
磁気センサ16bは磁場の強さに応じて出力信号が変化する周知のセンサ素子である。操作部材10が押し込み操作されると、その押し込み操作の操作量に応じて磁石16aと磁気センサ16bとの間の距離が変化する。それにより、磁気センサ16bの周囲の磁場の強さが変化し、磁気センサ16bの出力信号が押し込み操作の操作量に応じて変化する。したがって、磁気センサ16bの出力信号に基づいて、操作部材10の操作量、操作速度、あるいは操作の加速度といった物理量を検出することができる。磁気センサ16bの両側には、磁石16aが磁気センサ16bと接しないように操作部材10の押し込み操作可能な範囲を制限するストッパ17が設けられている。磁気センサ16bの間にはLED発光素子18が設けられている。操作部材10には、LED発光素子18から射出される光を適度に散乱させつつ透過させる光学特性が与えられている。それにより、操作部材10は、LED発光素子18の光を受けて適度に発光する。なお、センサ部としては磁気センサ16bに代えて、近接センサ、光学センサといったような検出対象物との距離に応じて出力信号が変化する各種のセンサが用いられてよい。
【0017】
支持台11にはカバー19が設けられている。カバー19は、弾性支持部14及びその上に配置される操作部材10のフランジ部10aを外側から覆い隠すようにして支持台11に取り付けられている。カバー19には抜き窓19a(
図4)が設けられ、その抜き窓19aからは操作部材10のフランジ部10a以外の部分が上方に突出する。
【0018】
次に、
図7を参照してゲーム機1の制御系の構成を説明する。
図7に示すように、ゲーム機1には、コンピュータとしての制御ユニット30が設けられている。制御ユニット30は、制御主体としてのゲーム制御部31と、そのゲーム制御部31からの指示に従ってメインモニタ3及びサブモニタ6に表示すべき画像信号を生成する表示制御部32と、ゲーム制御部31からの指示に従ってゲーム機1のスピーカ7(
図1参照)から出力させるべき音再生信号を生成する音出力制御部33とを備えている。ゲーム制御部31には、入力装置4の第1入力部4a及び第2入力部4bが接続されている。入力部4a、4bのそれぞれからは、検出機構15の各磁気センサ16bの出力信号が入力される。それにより、ゲーム制御部31は、操作部材10のそれぞれの操作量を個別に検出することが可能である。その他にも、各種の入力装置がゲーム制御部31に接続されてよいが、ここでは図示を省略した。さらに、ゲーム制御部31には、外部記憶装置34が接続されている。外部記憶装置34には、EEPROM等の不揮発性半導体メモリ装置、あるいは磁気記憶装置といった、電源の供給がなくても記憶を保持可能な記憶媒体が使用される。
【0019】
外部記憶装置34には、ゲームプログラム35と、ゲームデータ36とが記録されている。ゲームプログラム35は、ゲーム機1にて所定の手順に従って音楽ゲームを実行するために必要なコンピュータプログラムであり、そこには、音楽ゲームを実行するために必要なシーケンス制御モジュール37及び評価モジュール38が含まれている。音楽ゲームは、音楽に合わせた操作をユーザに指示し、その指示とユーザの実際の操作とを比較してユーザのプレイを評価するタイプのゲームである。ゲーム機1が起動されると、ゲーム制御部31はその内部記憶装置に記録されたオペレーションプログラムを実行することにより、ゲーム機1として動作するために必要な各種の初期設定を実行し、続いて、外部記憶装置34からゲームプログラム35を読み込んでこれを実行することにより、音楽ゲームを実行するための環境を設定する。ゲームプログラム35のシーケンス制御モジュール37がゲーム制御部31にて実行されることにより、ゲーム制御部31にはシーケンス処理部40が生成される。また、ゲームプログラム35の評価モジュール38がゲーム制御部31にて実行されることにより、ゲーム制御部31には操作評価部41が生成される。シーケンス処理部40及び操作評価部41は、コンピュータハードウエアとコンピュータプログラムとの組み合わせによって実現される論理的装置である。
【0020】
シーケンス処理部40は、プレイヤとしてのユーザが選択した音楽(楽曲)の再生に合わせてユーザに操作を指示し、あるいはユーザの操作に応じて効果音を発生させるといった音楽ゲームのプレイに必要な各種の処理を実行する。操作評価部41は、ユーザの操作を評価し、かつその評価結果に応じたゲームの制御といった処理を実行する。なお、ゲームプログラム35には、上述したモジュール37、38の他にも音楽ゲームを実行するために必要な各種のプログラムモジュールが含まれ、ゲーム制御部31にはそれらのモジュールに対応した論理的装置が生成されるが、それらの図示は省略した。
【0021】
ゲームデータ36には、ゲームプログラム35に従って音楽ゲームを実行する際に参照されるべき各種のデータが含まれている。例えば、ゲームデータ36には、楽曲データ42、効果音データ43及び画像データ44が含まれている。楽曲データ42は、ゲームの対象となる楽曲をスピーカ7から再生出力させるために必要なデータである。
図7では、一種類の楽曲データ42が示されているが、実際には、ユーザが選択可能な複数の楽曲のそれぞれに対応した楽曲データ42が用意される。効果音データ43は、音楽ゲームのプレイ中に再生させるべき効果音、例えば、ユーザの操作に対応してスピーカ7から出力させるべき効果音等を再生するためのデータである。画像データ44は、ゲーム画面内に表示させるべき背景画像、各種のオブジェクト、アイコンといった表示要素(又は画像要素)をモニタ3、6に表示させるために必要なデータである。
【0022】
ゲームデータ36には、さらにシーケンスデータ45が含まれている。シーケンスデータ45は、ユーザが音楽ゲームのプレイ中に行うべき操作を定義したデータである。一曲の楽曲データ42に対して、最低一個のシーケンスデータ45が用意される。シーケンスデータ45には、ユーザに対して指示すべき入力装置4の操作の位置及び操作の時期を指定するための情報が記録される。例えば、操作の時期を指定する情報としては、ゲームのプレイ開始からの経過時間、あるいは楽曲上の位置を指定する情報がシーケンスデータ45に記録される。
【0023】
一方、操作の位置を指定する情報としては、入力装置4の各操作部材10に対して互いにユニークな操作部番号を設定し、いずれの操作部材10が操作されるべきか、をその操作部番号によって指定する情報がシーケンスデータ45に記録される。操作の位置及び操作の時期を指定する情報は互いに対をなすように記録される。例えば、ゲーム上のどの時期にどの操作部材10が操作されるべきか、を指定するようにしてシーケンスデータ45が作成される。なお、同一の操作時期に2以上の操作部材10の操作が指定されることがある。また、第1入力部4a及び第2入力部4bのそれぞれの操作が混ぜ合わせて指定される場合には、第1入力部4a又は第2入力部4bのいずれが操作されるべきか、を指定する情報がシーケンスデータ45に含まれてもよい。ただし、操作部材10ごとに割り当てられる操作部番号により、第1入力部4a又は第2入力部4bを区別できる場合には、入力部4a又は4bを指定する情報の追加が省略されてもよい。
【0024】
シーケンス処理部40は、シーケンスデータ45に基づいてユーザにメインモニタ3を介して各操作部材10の操作を指示する。
図8は、シーケンス処理部40がメインモニタ3を介して提示する操作指示画面の一例を示している。なお、
図8は一部の操作部材10のみを対象として描かれている。まず、操作指示画面100の基本構成を説明する。操作指示画面100には、左右方向に複数の区切線101で区分された複数本のレーン102が設定される。区切線101は表示されてもよいし、表示されなくてもよい。レーン102間隔は第1入力部4aの操作部材10の間隔Pと一致し、レーン102の本数は第1入力部4aにおける操作部材10の個数と一致する。ユーザから見たときの各レーン102の左右方向における位置は第1入力部4aの操作部材10の左右方向における位置とほぼ一致する。それにより、第1入力部4aの操作部材10とレーン102とは1対1に対応付けられ、ユーザから見て一の操作部材10に対応するレーン102はその操作部材10の前後方向における延長線上に位置している。
【0025】
なお、第2入力部4bの操作部材10の間隔も第1入力部4aのそれと一致する。第1入力部4aと第2入力部4bとで操作部材10は左右方向に同一位置にある。換言すれば、第1入力部4aの操作部材10の延長上に第2入力部4bの操作部材10が位置している。そのため、レーン102は第2入力部4bの操作部材10とも1対1の対応関係にある。ただし、第2入力部4bの操作部材10が第1入力部4aのそれに対して間隔Pの1/2だけ左右方向にずらして配置されてもよい。その場合には、区切線101上の位置が第2入力部4bの操作部材10と対応付けられる。以下では、第1入力部4aの操作部材10に対して操作が指示される場合を例にして説明を続ける。なお、
図8では、レーン102と操作部材10との対応関係を示すために操作部材10を図示しているが、操作指示画面100のレーン102の下方に操作部材10を模した画像が表示されてもよい。
【0026】
レーン102には、ユーザが操作すべき操作部材10の位置及び操作が行われるべき時期を指定するためのシンボル103が表示される。シンボル103は一例として音符状の形状で示される。シンボル103は、ユーザが操作すべき操作部材10に対応するレーン102上に表示される。つまり、シンボル103がいずれのレーン102に表示されているかにより、ユーザに対して操作が行われるべき位置が指定される。シンボル103は、所定時刻にレーン102の上端部に出現し、楽曲の演奏の進行に伴ってレーン102を矢印Dで示したように徐々に下降する。シンボル103は、操作部材10を操作すべき時期にレーン102の下端部の基準領域104と一致する。それにより、シンボル103に対応した操作部材10を操作すべき時期が指定される。
図8では、左から三番目のレーン102にてシンボル103が基準領域104と重なり合っている。ユーザは、シンボル103が基準領域104と重なり合ったタイミングで、そのシンボル103が表示されているレーン102に対応する操作部材10を操作すれば、シンボル103にて指定された位置の操作部材をシンボル103にて指定された時期に操作することができる。なお、ゲーム機1では、多数の操作部材10が左右方向の比較的長い範囲に亘って設けられているため、操作部材10を右手又は左手のいずれで操作することが望ましいかが操作部材10の位置に応じて変化する。そのため、シーケンス処理部40は、右手の操作が推奨されるシンボル103と、左手の操作が推奨されるシンボル103とで色、模様その他の表示態様が変化するようにしてシンボル103を表示する。
【0027】
シンボル103がレーン102の上端部に出現する時期は、そのシンボル103によって指定されるべき操作の時期に対して所定秒時早い時期に設定される。一例として、出現時期は、操作時期に対して楽曲の二小節に相当する時間長だけ先行した時刻に設定される。したがって、レーン102の基準領域104の中央をゲーム上の現在時刻Taとすれば、レーン102の上端部に位置するシンボル103は現在時刻に対して所定秒後の時刻Tbに操作時期が到来することを示している。また、基準領域104から各シンボル103までの上下方向における距離は、現在時刻から各シンボル103にて指定される操作時期までの時間差△Tを示している。
【0028】
シーケンス処理部40は、シーケンスデータ45に基づいて現在時刻Taから所定秒時後の時刻Tbまでの間に操作時期が到来する操作を判別し、判別した操作の位置に対応したレーン102上にて基準領域104から時間差△Tに対応する距離だけ上方に離れた位置にシンボル103が配置されるように、各シンボル103の位置を演算する。そのような処理を操作指示画面100の描画周期に応じて繰り返すことにより、操作指示画面100の各レーン102をシンボル103が徐々に下降して操作時期に基準領域104に到達する画像がメインモニタ3上に表示される。それにより、ユーザに対してシーケンスデータ45に記述されている操作が逐次指示され、ユーザはその指示に合わせて操作部材10を操作するようにしてゲームをプレイする。なお、第2入力部4bの操作部材10の操作を指示する場合には、シンボル103の表示形態、例えば形状、大きさ、色あるいは模様を第1入力部4aに対応するシンボル103のそれから変更するといった調整を施せばよい。あるいは、第1入力部4aに対応する操作指示画面100と、第2入力部4bに対応する操作指示画面100とを分けて上下二段に表示することにより、入力部4a、4bに対する指示を区別してもよい。第2入力部4bに対する操作の指示は、第1入力部4aに対する操作の指示と同程度の頻度で行われてもよいし、原則として第1入力部4aに対する操作を指示し、特別な場合、あるいは例外的な場合に限って、表示態様が異なる特別なシンボル103を表示させて第2入力部4bに対する操作を指示してもよい。レーン102は必ずしも上下方向に直線状に延ばされている必要はない。レーン102の一部又は全部が曲線を描くように規定されてもよい。シンボル103の移動速度も一定速度に限らず、適宜に速度が変更されてもよい。レーン102間でシンボル103の移動速度に差が生じるようにシンボル103の表示が制御されてもよい。
【0029】
シーケンス処理部40が上記の処理によってユーザに操作を指示する間、これと並行して、操作評価部41は、シーケンスデータ45に記録された操作の指示と入力装置4の磁気センサ16bが検出したユーザの操作(実際に行われた操作)との比較に基づいて、ユーザのプレイを評価する。シーケンスデータ45にて指定された操作とユーザが行った操作との一致度が高いほどユーザのプレイが高く評価される。一致度は、操作の位置及び操作の時期の両者の観点で判定される。そのうち、操作の時期の一致度は、シーケンスデータ45にて指定された操作の時期と、操作の検出時期とのずれ量に基づいて、複数段階で評価するといった公知の音楽ゲーム機のそれと同様に行ってよい。一方、操作の位置に関しては、指定された操作部材10を正しく操作したか否かに基づいて行われる。ただし、操作評価部41における評価では、入力装置4における操作部材10の間隔Pが狭く、一つの操作部材10を操作した際に隣接する操作部材10が巻き込まれるように操作され得ることを考慮して、以下に述べるような特有の判定手法を用いて操作部材10の操作の有無を判定する。以下、順に説明する。
【0030】
(1)判定範囲及び有効検出数の設定
上記のように操作部材10の間隔Pが狭いため、ユーザが指定された操作部材10を操作しようとした場合、その操作部材10に代えて、又は加えて、隣接する操作部材10を操作してしまうおそれがある。そこで、
図9に示したように、操作評価部41は、操作が指定された操作部材10を基準として、左右方向に連続する複数の操作部材10を含むように所定幅の判定範囲RDを設定する。
図9の例では、シンボル103が付された操作部材10が操作すべき対象として指定されているものとしたとき、その操作部材10を中心として連続する3個の操作部材10を含む範囲が所定幅の判定範囲RDとして設定されている。この場合、判定範囲RDは操作部材10を中心として左右対称的に設定されることになる。さらに、操作評価部41は、判定範囲RD内に対して、同時的な操作が許容されるべき操作部材10の個数として有効検出数を設定する。有効検出数は、2以上でかつ判定範囲RDに含まれる操作部材10の個数よりも少ない値に設定される。
図9の例では、有効検出数が2に設定される。
【0031】
さらに、操作評価部41は、いずれか一の操作部材10の操作が指定されている場合、その一の操作部材(以下では、指定操作部材と呼ぶことがある。)10に対応した判定範囲RD内において、有効検出数を超えない数の操作が検出されていれば、その指定操作部材10に対する操作が行われたと判定し、有効検出数を超える数の操作が検出された場合には、指定操作部材10に対する操作が行われなかったものと判定する。したがって、
図9において、例えば判定範囲RD内でハッチングを付した二つの操作部材10の操作が検出された場合には、その検出数が2で有効検出数を超えていないので、指定操作部材10に対して操作が行われたと判定される。一方、判定範囲RD内で三つの操作部材10の操作が検出された場合には、操作の検出数が3で有効検出数を超えているので、指定操作部材10に対する操作が行われなかったと判定される。
【0032】
以上の判定手法によれば、ユーザが指定操作部材10を操作しようとして、その指定操作部材10に代えて、又は加えて隣接する操作部材10も巻き込むように操作した場合でも、同時的に操作された操作部材10の個数が2個以下であれば指定操作部材10が操作されたものと判定される。それにより、ユーザが指定操作部材10を正しく操作したか否かに関する判定基準が緩和される。したがって、操作部材10の間隔Pが狭く設定されても、ユーザに過度に厳しい操作を強いる不都合が生じない。一方、有効検出数を超える数の操作が同時的に検出された場合には指定操作部材10に対する操作が行われなかったと判定されるため、ユーザが許容限度を超える多数の操作部材10を同時に操作したような場合には、その操作がなかったものとみなして当該操作を評価対象の操作から除外することができる。したがって、ユーザが指定された位置の操作部材10を大凡正しく操作すれば操作が行われたと判定され、ユーザが意図的に多数の操作部材10を操作した場合には操作が行われなかったと判定される。操作部材10の間隔Pが狭いため、操作位置が多少ずれても判定に違和感が生じるおそれは少ない。そのため、ゲームの興趣が損なわれるおそれを抑えつつ、判定基準を緩和することが可能である。
【0033】
指定操作部材10を基準として判定範囲RDが設定されることにより、指定操作部材10とユーザが操作した位置(ユーザが操作した操作部材10)との左右方向のずれの許容範囲を適度に制限することができる。特に、判定範囲RDが指定操作部材10を中心として左右方向に対称的に設定されることにより、指定操作部材10に対するユーザの操作位置のずれを左右に均等な範囲で許容することができる。さらに、有効検出数が判定範囲RDに含まれる操作部材10の個数よりも小さく設定されているため、ユーザが過度に多数の操作部材10を同時に操作するといったような不適切な操作を評価対象の操作から除外することができる。例えば、ユーザがその指で指定操作部材10を正しく操作しようと試みることなく、腕などを利用して指定操作部材10の付近で判定範囲RD内の操作部材10を超えて連続する多数の操作部材10を同時に操作したような場合には、判定範囲RD内における操作の検出数が、判定範囲RD内の操作部材10の個数と一致するため、そのような操作を不適切な操作であると判断して、評価対象から除外することが可能である。
【0034】
(2)連続操作時における判定範囲の調整
判定範囲を設定して指定操作部材に対する操作の有無を判定する場合、一の操作とその次の操作との関係で不適切な判定が行われる可能性がある。例えば、先行する一の操作に対して次の操作が行われるべき位置が左右方向いずれか一方の側にずれ、かつそれらの操作に関して設定されるべき判定範囲が重複部分を有する場合には、一の操作の指示と次の操作の指示とのいずれに対してもユーザが同一の操作部材を操作し、あるいは一の操作の指示に対応してユーザが操作した操作部材からみて、他方の側に位置する操作部材をユーザが次の操作の指示に対して操作しても、次の操作が正しく行われたと判定される可能性がある。
【0035】
例えば、
図10Aに示すように、先行する左側のシンボル103と、そのシンボル103に対して所定の時間差△Txで追従する次のシンボル103とが表示されている場合、まず先行するシンボル103に対応する操作部材10を中心として三つの操作部材10を含むように判定範囲RDが設定され、その判定範囲RDの右端に位置するハッチングが付された操作部材10に対する操作が検出されたと仮定する。この操作は、左側のシンボル103に対応する操作として判定される。一方、次のシンボル103によって指示される操作部材10は、先のシンボル103によって指示される操作部材10に対して右側に操作部材10の二つ分だけ離れた位置にある。このような状況で、次に操作されるべき操作部材10を中心として3個の操作部材10が含まれるように判定範囲RDを設定した場合、その判定範囲RDには、先のシンボル103に対応して操作された操作部材10が含まれる。したがって、次のシンボル103に対応してユーザが同一の操作部材10を操作すれば、操作すべき位置の指示が先のシンボル103とは異なっているにも拘わらず、次のシンボル103に対して適切な操作が行われたと判定されることになる。
【0036】
このような不都合を回避するため、操作評価部41は、所定の時間差内で連続する二つの操作が指示される場合であって、先行する一の操作の指示に対して判定範囲RD内で操作が検出され、次の操作に対して原則通りに判定範囲RDを設定すれば、その判定範囲RDに先の操作の検出位置が含まれる場合、その検出位置を含まないように判定範囲RDを調整する処理を例外的に実行する。例えば、
図10Aの通りに操作が検出された場合には、
図10Bに示すように、次のシンボル103によって指示される操作に対応する判定範囲RDを、先の操作が検出された操作部材10が含まれないように右側にずらして設定することにより、次のシンボル103にて指示される操作に対応した判定範囲RDが調整される。
【0037】
以上のように判定範囲RDが調整される場合、先行するシンボル103にて指示された操作に対応してユーザが操作範囲RD内のいずれかの操作部材10を操作した場合、次のシンボル103による指示に対して、ユーザが先に操作した操作部材10よりも右側に位置する操作部材10を操作しない限り、次のシンボル103に対応した操作が適切に行われたと判定されることはない。これにより、位置が異なりかつ判定範囲RDが重複し得る可能性がある二つの操作が前後して指示される場合、ユーザが同一の操作部材10を操作し、あるいは逆方向に位置する操作部材10を操作しても、その操作が次の操作の指示に対応する適切な操作として誤って判定されるおそれが排除される。
【0038】
なお、
図10Bの例では判定範囲RDの左右方向における幅を一定、つまり3個の操作部材10に相当する幅に維持しつつ判定範囲RDを左右方向いずれか一方の側に移動させたが、先の操作が検出された操作部材10が含まれないように、次のシンボル103に対応する判定範囲RDの幅を狭めることにより、次のシンボル103にて指示される操作に対応した判定範囲RDが調整されてもよい。
図10Bの例では、同図に想像線で示したように、判定範囲RDの幅が2個の操作部材10のみが含まれるように右側に狭められてもよい。判定範囲RDの調整は、一の操作が行われるべき時期と次の操作が行われるべき時期との時間差△Txが所定時間範囲内にある場合に限って適用される。時間差△Txが短い場合には、ユーザが位置の異なる連続的な操作の指示に追従できず、同一の操作部材10を操作し、あるいは逆方向に位置する操作部材10を操作するといった失敗が生じる可能性が高まるため、そのような失敗を見逃すことなく操作の適否を的確に判定することが望ましい。一方、時間差△Txが適度に拡大すれば、ユーザが余裕を持って次の操作に臨むことができる。したがって、そのような場合には、次に操作されるべき操作部材10を基準として原則通りに判定範囲RDを設定することが望ましいためである。ただし、時間差△Txの大小を考慮することなく、時間的な前後関係がある二つの操作を対象として判定範囲RDを調整する処理が適用されてもよい。
【0039】
(3)同時的な操作が指示された場合の判定
複数の操作部材10の同時的な操作が要求された場合、少なくとも二つの操作のそれぞれに対応する判定範囲に重複部分が生じ、かつその重複部分にて操作が検出される可能性がある。この場合、操作評価部41は、重複部分で検出された操作を、二つの判定範囲のうちいずれか一方の判定範囲にて検出された操作として割り当て、他方の判定範囲に関しては一方の判定範囲に割り当てられた操作を除外して、その判定範囲にて操作が検出されたか否かを判定する。ただし、上述したように、各判定範囲には有効検出数が設定されているため、重複部分で検出された操作を割り当てるべき判定範囲を決定する際には、重複部分に対して左側の判定範囲と右側の判定範囲のそれぞれにおける操作の検出数が有効検出数以下となるようにして、重複部分で検出された操作を左右いずれかの判定範囲に割り当てることが可能な場合にその割り当てを実行し、割り当てることが不可能な場合には、左右の判定範囲の少なくともいずれか一方では、判定範囲内にて操作が行われなかったものとみなす。
【0040】
以下、
図11A〜
図11Gを参照して、同時的な操作が指示された場合の判定処理の一例を説明する。
図11A〜
図11Gは、三つの操作部材10の同時的な操作が指示され、かつそれらの操作に対応して設定される判定範囲RD間に重複部分ORが生じている例を示している。なお、
図11A〜11Gでは、シンボル103及びそれらのシンボル103に対応する判定範囲RDを添え字a〜cで相互に区別し、かつ重複部分ORは添え字1、2で相互に区別する。
【0041】
図11Aに示すように、三つのシンボル103a〜103cによる操作の指示に対応して、図中にハッチングを付した四つの操作部材10の操作が検出されたものとする。この例では、三つのシンボル103a〜103cのそれぞれに対応する操作部材10を基準として設定される判定範囲RDa〜RDc間に重複部分OR1、OR2が生じている。重複部分OR1、OR2はいずれも一つの操作部材10を含み、かつ重複部分OR1、OR2のそれぞれでは操作部材10の操作が検出されている。この場合、まず、左側のシンボル103aに対応した判定範囲RDaについて検討すると、その判定範囲RDaの検出数は、その右の判定範囲RDbの検出数よりも少ない。そのため、
図11Bに示したように、四つの操作部材10のうち、重複部分OR1に含まれている操作部材10に対する操作は、その重複部分OR1の左側の判定範囲RDaにて検出された操作として割り当てられる。つまり、四つの操作部材10のうち、重複部分OR1に含まれている操作部材10に対する操作は左側のシンボル103aに対応して行われた操作とみなされる。以下、割り当て済の操作部材10は
図11Bに示すようにグレーで塗り潰して表示されるものとする。
【0042】
次に、
図11Cに示すように、中央のシンボル103bに対応する操作部材10を中心とした判定範囲RDbについて見ると、その判定範囲RDbでは三つの操作部材10の操作が検出されているが、左側の操作部材10、つまり重複部分OR1の操作部材10の操作は既に判定範囲RDaの操作として割り当てられている。したがって、判定範囲RDbにおける操作の判定からは除外される。したがって、判定範囲RDbにおける操作の検出数は2であって、その検出数は有効検出数以内である。この場合、判定範囲RDbの中央及び右側の操作部材10のそれぞれの操作を判定範囲RDbにて検出された操作として割り当てることができるが、ここでは、右側の判定範囲RDcの検出数も2で同数であるため、ひとまず重複部分OR2に含まれている操作部材10の操作は判定範囲RDcに割り当てることとして、判定範囲RDbにおける操作の判定からは除外する。それにより、
図11Dに示したように、判定範囲RDbの中央に位置する操作部材10の操作が判定範囲RDbの操作として割り当てられる。つまり、判定範囲RDbの中央の操作部材10の操作が中央のシンボル103bに対応して行われた操作とみなされる。
【0043】
次に、
図11Eに示すように、右側のシンボル103bに対応する操作部材10を中心とした判定範囲RDcについて見ると、重複部分OR2の操作部材10の操作は右側の判定範囲RDcの操作として割り当てられているため、判定範囲RDcにおける操作の検出数は2である。この場合、
図11Fに示すように、判定範囲RDcの中央及び左側の操作部材10のそれぞれの操作が判定範囲RDcにて検出された操作として割り当てられる。つまり、判定範囲RDcの中央及び左側の操作部材10の操作が右側のシンボル103cに対応して行われた操作とみなされる。
【0044】
以上のようにして重複部分OR1、OR2の操作部材10の操作をいずれかの判定範囲RDに割り当てた上で、各判定範囲RDの検出数を見ると、判定範囲RDa、RDbの検出数はそれぞれ1、判定範囲RDcの検出数は2であって、いずれの判定範囲RDでも操作の検出数は有効検出数以下である。よって、シンボル103a〜103cのいずれに対応する操作も適切に行われたと判定することができる。なお、上記の例では、重複部分OR2の操作部材10に対する操作を中央の判定範囲RDbに割り当てたとしても、シンボル103a〜103bのそれぞれに対する操作が適切に行われたと判定することができる。
【0045】
図11Gは、
図11A〜
図11Fの例と異なって、少なくとも一のシンボル103に対する操作が検出されなかったと判定される例を示している。
図11Gの例では、中央のシンボル103bに対応する判定範囲RDb及び右側のシンボル103cに対応する判定範囲RDcのそれぞれでは、重複部分OR2の操作部材10のみ操作が検出されており、それ以外の位置で操作が検出されていない。したがって、重複部分OR2の操作部材10の操作を、判定範囲RDb、RDcのいずれか一方に割り当てれば、他方では操作の検出数がゼロとなり、判定範囲RDb、RDcのいずれも操作が検出されたものとみなすように重複部分OR2で検出された操作を振り分けることができない。したがって、シンボル103b、103cの少なくともいずれか一方に関しては、操作が行われなかったと判定される。ただし、このような場合には、シンボル103b、103cのいずれに関しても対応する操作がなかったと判定されてもよい。
【0046】
上述した判定範囲及び有効検出数の設定処理(上記(1))、判定範囲を調整する処理(上記(2))、及び同時的な操作が指定された場合の処理(上記(3))は、ゲームのあらゆる状況下で適用されることを必ずしも要しない。例えば、上記(1)及び(3)の処理は、指定された操作位置に変えて、又は加えて他の操作位置をユーザが操作した場合を適度な範囲で許容するものであることから、ユーザを救済する作用効果を奏する。したがって、ユーザのゲームに対する熟練度(あるいはスキル)、あるいはゲームの難易度といった事情を考慮してその適用の可否を変化させてもよい。例えば、熟練度が高いユーザがプレイする場合、あるいはゲームそれ自体の難易度が比較的高く設定されている場合には、上記(1)の処理に代えて、操作が指示された操作部材10が操作され、かつ隣接する操作部材10が操作されていないことを条件として適切な操作が行われたと判定されるように処理が変更されてもよい。この場合、隣接する二以上の操作部材10の同時操作が指定されない限り上記(3)の処理も不要である。したがって、操作部材10の押し間違いが許容されず、ユーザには一層正確な操作が要求されることになる。一方、ゲームに習熟していない初心者のユーザがプレイする場合、あるいはゲームの難易度が低い場合には上記(1)及び(3)の処理を適用してユーザを適度に救済するようにしてもよい。また、上記(2)の処理については、連続操作時の操作誤りの許容度を狭める作用を有するため、初心者のユーザがプレイする場合、あるいはゲームの難易度が相対的に低く設定されている場合には処理を適用しないこととして許容度を広げ、熟練者のユーザがプレイする場合、あるいはゲームの難易度が相対的に高く設定されている場合には処理を適用してもよい。さらに、上記(1)〜(3)の処理の適用の有無をユーザが選択できるようにしてもよい。もちろん、ゲームのあらゆる状況下で上記(1)〜(3)の処理が全て適用されるものとしてもよい。
【0047】
図12及び
図13は、上述した判定ロジックを用いて操作評価部41がユーザの操作の有無を判定するために所定周期で繰り返し実行する操作判定処理の手順の一例を示している。操作評価部41は、
図12の操作判定処理を開始すると、まず連続操作が指定されているか否かを判別する(ステップS1)。操作判定処理にて最も直近に判定した操作とそれに続いてシーケンスデータ45で指定されている次の操作との時間差△Txが所定時間内である場合に連続操作と判定される。連続操作と判定されなかった場合、操作評価部41は、シーケンスデータ45にて複数の操作部材10の同時操作が指定されているか否かを判別する(ステップS2)。ただし、ここでは、判定範囲RDに重複部分ORが生じない範囲で操作部材10の位置がずれていれば、同時操作ではないと判断される。
【0048】
ステップS2で同時操作が指定されていないと判断された場合、操作評価部41はシーケンスデータ45にて指定されている操作位置、つまり操作されるべき操作部材10に対応する判定範囲RD内で操作が検出されたか否かを入力装置4の出力信号に基づいて判定する(ステップS3)。操作が検出されている場合、操作評価部41はその検出数が有効検出数以内か否かを判別する(ステップS4)。有効検出数以内であれば、操作評価部41は今回検出された操作により、指定された操作部材10の操作に成功したものと判定する(ステップS5)。この判定は、シーケンスデータ45にて指定された操作部材10の位置と検出された操作の位置とが許容範囲内で一致するという意味での成功判定であり、操作時期のずれは別途に判定される。一方、ステップS3で操作が検出されなかったと判断された場合、あるいは検出数が有効検出数を超えていると判断された場合、操作評価部41は、指定された操作部材10の操作に失敗したものと判定する(ステップS6)。この場合の判定は、シーケンスデータ45にて指定された操作部材10が操作されていないとの判定である。ステップS6の失敗判定は、判定範囲RD外の操作部材10が操作された場合、有効検出数を超える個数の操作部材10が操作された場合、あるいは操作部材10が全く操作されなかった場合のいずれかで生じる。その場合、プレイの評価に影響が生じないようにしてもよいし、何らかの不利益、例えば得点の減算がユーザに対して与えられてもよい。
【0049】
ステップS1にて連続操作と判断された場合、操作評価部41は、前回の操作判定処理にて検出された操作位置を取得する(ステップS10)。次に、操作評価部41は、取得した前回の操作検出位置が、次の操作に対応して設定されるべき判定範囲RD内か否かを判別する(ステップS11)。つまり、
図9に例示したように、次に操作されるべき操作部材10を中心として左右方向に連なる3個の操作部材10を含むように判定範囲RDを設定したと仮定すれば、その判定範囲RDに前回の操作の検出位置が含まれるか否かが判別される。判定範囲RD内に含まれないと判断された場合、操作評価部41はステップS3へと進む。一方、ステップS11で判定範囲RD内に含まれると判断された場合、操作評価部41は前回の操作の検出位置が、今回の判定範囲RDに含まれないように判定範囲RDを調整する。調整の一例は
図10A及び
図10Bに示した通りである。判定範囲の調整後、操作評価部41はステップS3へ進む。
【0050】
ステップS2で同時操作が指定されていると判断された場合、操作評価部41はステップS20の割り当て処理ルーチンへと進む。
図13はその割り当て処理ルーチンの手順を示している。なお、
図13のルーチンでは、判定範囲RD間を、操作部材10の並び方向左から右側に向かって順次検査するものとする。割り当て処理ルーチンを開始すると、操作評価部41はまず検査対象の重複部分ORを指定する変数Nに1をセットし(ステップS101)、次にN番目の重複部分ORの操作部材10の操作が検出されているか否かを判別する(ステップS102)。操作が検出されている場合、操作評価部41は、重複部分ORを挟んで左右に並ぶ判定範囲RDのそれぞれにおける操作の検出数を比較し(ステップS103)、検出数が同数か否かを判別する(ステップS104)。同数でなければ、操作評価部41は重複部分ORで検出された操作を、検出数が少ない一方の側の判定範囲RDにて検出された操作として割り当てる(ステップS105)。一方、ステップS104で同数と判断された場合、操作評価部41は、重複部分ORの操作を右側の判定範囲RDにて検出された操作として割り当てる(ステップS106)。
【0051】
次に、操作評価部41は、他方の側の判定範囲RD、つまりステップS105又はS106にて操作が割り当てられた側の判定範囲RDに対する反対側の判定範囲RDから、重複部分ORの操作を除外する(ステップS107)。ここでいう除外とは、操作の検出数を数える対象から除外することを意味する。続いて、操作評価部41は全ての重複部分ORに関して、ステップS102〜S107の検査が終了したか否かを判別する(ステップS108)。終了していない場合、操作評価部41は変数Nに1を加算し(ステップS109)、その後、ステップS102の処理に戻る。また、操作評価部41は、ステップS102にて操作が検出されていないと判断した場合、ステップS102〜S107をスキップしてステップS108へと進む。
【0052】
ステップS108で全ての重複部分の検査が終了していると判断された場合、操作評価部41は、全ての判定範囲RDのそれぞれにて操作の検出数が有効検出数を超えていないか否か、つまり各判定範囲RDの操作の検出数が有効検出数以内か否かを判別する(ステップS110)。全ての判定範囲RDの操作の検出数が有効検出数以内の場合、操作評価部41は、指定された全ての同時操作に成功したものと判定する(ステップS111)。一方、ステップS110にて少なくとも一つの判定範囲RDで操作の検出数が有効検出数を超えていると判断された場合、操作評価部41は同時操作に失敗したものと判定する(ステップS112)。この場合、指定された全ての操作が失敗したと判定されてもよいし、検出数が有効検出数を超えている判定範囲RDに対応する操作部材10の操作のみが失敗し、その他の操作は成功したと判定されてもよい。
【0053】
なお、入力装置4においては、操作部材10の操作量に応じた信号を磁気センサ16bから出力しているため、操作が検出されたか否かの判断に関して操作量がさらに考慮されてもよい。例えば、操作量が所定量を超えた場合に操作が検出されたと判断され、操作量が所定量未満の場合には操作が検出されていないと判断されてもよい。シーケンスデータ45にて操作部材10の操作量の大小、言い換えれば押し込み操作の強弱を段階的に指定し、操作指示画面100では、シンボル103ごとに操作の強弱を指定する情報を追加し、指定された強さに対応する操作量で操作部材10が操作された場合に、操作が検出されたものと判断して上記の処理が適用されてもよい。操作量の大小を、例えば操作部材10の操作に対応して出力される効果音の大小等に反映させることにより、鍵盤楽器などを演奏している感覚をユーザに与えてゲームの興趣を高めることができる。
【0054】
上述した判定手法は、物理的な操作部材10を有する入力装置4に代えて、タッチパネル入力装置を備えたゲーム機においても適用可能である。例えば、
図14に示すように、メインモニタ3上にタッチパネル入力装置50を重ね合わせ、メインモニタ3の表示画像とタッチパネル入力装置50との組み合わせによって、そのタッチパネル入力装置50上にて左右方向に並ぶように複数の操作部51が設定される場合でも、いずれの操作部51がタッチ操作されたかを上記の判定手法にて判定することができる。
【0055】
さらに、タッチパネル入力装置50が用いられ、かつ複数の操作部のそれぞれが明示的にユーザに示されない場合でも上述した判定手法は適用可能である。例えば、
図15に示すように、メインモニタ3の操作指示画面100にてシンボル103が基準領域104に重なったタイミングに合わせてそのシンボル103の位置をユーザがタッチするように操作を指示する場合において、シンボル103の位置を中心に一定の広がりを有する判定範囲RDを設定してその範囲RD内で有効検出数以内の操作が検出された場合に操作がなされたと判定してもよい。また、連続操作時には上述した判定範囲RDの調整を適用することができる。さらに、判定範囲RD同士の間に重複部分ORが生じ、その重複部分ORにて操作が検出された場合には、上述した割り当て手法を適用することができる。
【0056】
例えば、
図16Aに示すように、二つの判定範囲RDa、RDb間で重複部分ORが生じ、一方の判定範囲RDb内に二つの検出位置Pd1、Pd2が存在し、そのうち一つの検出位置Pd2が他方の判定範囲RDaとの重複部分ORに存在する場合、その検出位置Pd2における操作を左側の判定範囲RDaに割り当て、右側の判定範囲RDbからは検出位置Pd2の操作を除外して操作が検出されているか否かを判別すれば、両判定範囲RDa、RDbのいずれでも操作が行われたと判定することができる。
図16Bに示すように、重複部分ORに複数(図示例では二つ)の検出位置Pd1、Pd2が存在する場合には、各判定範囲RDa、RDbのそれぞれで検出数が有効検出数を超えないようにして、各検出位置Pd1、Pd2の操作を判定範囲RDa、RDbに適宜に振り分けるように割り当てることが可能か否かを判別すればよい。振り分ける基準は適宜に定めてよいが、一例として、
図16Bの場合には、検出位置Pd1、Pd2から判定範囲RDa、RDbのそれぞれの中心位置までの距離を手掛かりとして、中心までの距離がより小さくなる側の判定範囲RDに操作を割り当てることにより、検出位置Pd1の操作は右側の判定範囲RDbに、検出位置Pd2の操作は左側の判定範囲RDaにそれぞれ割り当てる、といった処理が可能である。
【0057】
図11A〜
図11Gに示した例では、重複部分ORに単一の操作部材10のみが含まれているため、重複部分ORにて複数の操作が検出されるおそれはないが、複数の操作部材10が隣接する判定範囲RDの重複部分ORに含まれるように判定範囲RDが設定されてもよい。その場合にも、重複部分ORにて検出された複数の操作を、両側の判定範囲RDのそれぞれにおける操作の検出数が有効検出数を超えない範囲で適宜に割り当てることが可能か否かを判別すればよい。例えば、
図13の割り当て処理のステップS110が否定判断された場合において、ステップS105又はS106における割当数を適宜に増減しつつステップS102〜S110の処理を繰り返して、全ての判定範囲RDの検出数が有効検出数を超えない範囲に収まるような割り当てが存在するか否かを判定すればよい。
【0058】
なお、タッチパネル入力装置50を用いる例において、ゲーム機1は
図1〜
図3に示すような筐体2を有する構成に限定されることなく、携帯ゲーム機、スマートフォン、タッチパッド、パーソナルコンピュータのようにタッチパネルが実装された各種のコンピュータ装置を利用してゲーム機を構成することが可能である。
【0059】
本発明は、上述した形態に限定されることなく、適宜の変更又は変形を施して実施することが可能である。例えば、入力装置はユーザから見て前後に二列で配置される例に限らず、単列又は三列以上に操作部材が並べられるように構成されてもよい。入力装置は、操作部材が押し込み操作されるように構成される例に限らない。例えば、操作部材の上端面にユーザがタッチすることでその操作部材が操作されたものとして検出されるように入力装置が構成されてもよい。判定範囲は、操作が指定された一の操作部材10を中心として左右対称に三つの操作部材10を含むように設定される例に限らない。判定範囲に含まれる操作部材10の個数は2以上であれば適宜に変更されてよい。判定範囲を2個の操作部材10が含まれるように設定する場合には、有効検出数も2に設定すればよい。左右方向に関して非対称に判定範囲が設定されてもよい。入力装置としてタッチパネル入力装置が用いられてもよいことは上述した通りであるが、その場合の判定範囲は、タッチパネル入力装置上に論理的に設定される複数の操作部のうち、所定方向に連続する2以上の適宜数の操作部が包含されるようにして設定することが可能である。本発明は、音楽に合わせた操作を指示する音楽ゲーム機として構成される例に限らない。ユーザが操作すべき操作部が指示される形態を備える限り、音楽ゲーム以外のジャンルのゲームをユーザにプレイさせるゲーム機にも本発明は適用可能である。
【0060】
上述した実施の形態及び変形例のそれぞれから導き出される本発明の各種の態様を以下に記載する。なお、以下の説明では、本発明の各態様の理解を容易にするために添付図面に図示された対応する部材を括弧書きにて付記するが、それにより本発明が図示の形態に限定されるものではない。
【0061】
本発明の一態様に係るゲーム機は、複数の操作部(10;51)が所定方向に並べて設けられ、かつ複数の操作部のそれぞれに対する操作を操作部ごとに検出可能な入力装置(4;50)と、前記ユーザが操作すべき操作部を当該ユーザに指示し、かつ前記操作部に対する操作の指示と前記入力装置が検出したユーザの操作との比較に基づいて前記ユーザの操作を評価する制御手段(31)とを備え、前記複数の操作部の前記所定方向における間隔(P)が、ユーザによる2以上の操作部の同時操作が生じ得る範囲に設定されたゲーム機(1)において、前記制御手段は、いずれか一の操作部の操作の指示に対応して、前記一の操作部を基準として前記所定方向に連続する複数の操作部(一例として3個の操作部)を含むように設定された判定範囲(RD)内で2以上に設定される有効検出数を超えない数の操作が検出された場合には、前記一の操作部に対する操作が行われたと判定し(S5、S111)、前記有効検出数を超える数の操作が検出された場合には、前記一の操作部に対応する操作が行われなかったと判定(S6、S112)する操作判定手段(41)を備えるものである。
【0062】
本発明の一態様に係るコンピュータプログラムは、複数の操作部(10;51)が所定方向に並べて設けられ、かつ前記複数の操作部のそれぞれに対する操作を操作部ごとに検出可能な入力装置(4;50)を有し、前記複数の操作部の前記所定方向における間隔(P)が、ユーザによる2以上の操作部の同時操作が生じ得る範囲に設定されたゲーム機のコンピュータ(30)を、前記ユーザが操作すべき操作部を当該ユーザに指示し、かつ前記操作部に対する操作の指示と前記入力装置が検出したユーザの操作との比較に基づいて前記ユーザの操作を評価する制御手段(31)として機能させるコンピュータプログラム(35)であって、前記制御手段を、いずれか一の操作部の操作の指示に対応して、前記一の操作部を基準として前記所定方向に連続する複数の操作部(一例として3個の操作部)を含むように設定された判定範囲(RD)内で2以上に設定される有効検出数を超えない数の操作が検出された場合には、前記一の操作部に対する操作が行われたと判定し(S5、S111)、前記有効検出数を超える操作が検出された場合には、前記一の操作部に対応する操作が行われなかったと判定(S6、S112)する操作判定手段(41)としてさらに機能させるように構成されるものである。
【0063】
上記態様のゲーム機及びコンピュータプログラムによれば、操作が指示された操作部を基準として複数の連続した操作部を含むように判定範囲が設定されるので、操作が指示された操作部を含む判定範囲で有効検出数を超えない数の操作部をユーザが操作する限り、複数の操作部が同時に操作されてもユーザが適切な操作を行ったものとして判定することができる。この場合、指定された操作部のみを正しく操作しなくとも適切な操作が行われたと判定され得るため、操作の有無に関する判定基準を緩和し、それにより、過度に正確な操作を要求することによる不都合が生じるおそれを抑えることができる。一方、有効検出数を超える操作部の同時的な操作が検出された場合には、指定された操作部に対する操作が行われなかったと判定されるので、ユーザが多数の操作部を意図的に操作しても適切な操作が行われたと判定される不都合の解消を図ることができる。それにより、操作の有無の判定に関する正確さ、あるいは信頼性が低下するおそれを抑えて、ゲームの興趣を高めることができる。
【0064】
なお、本発明の一態様に係るコンピュータプログラムは、記憶媒体に記憶された状態で提供されてもよい。この記憶媒体を用いれば、例えばコンピュータに本発明に係るコンピュータプログラムをインストールして実行することにより、そのコンピュータを利用して本発明のゲームシステムを実現することができる。コンピュータプログラムを記憶した記憶媒体は、CDROM等の非一過性の記憶媒体であってもよい。
【0065】
上記態様のゲーム機においては、前記判定範囲が前記所定方向に連続する3以上の所定数の操作部を含むように設定され、前記有効検出数が前記所定数未満に設定されてもよい。これによれば、判定範囲内の全ての操作部が操作されたような場合には、指示された操作部が操作されなかったものと判定される。したがって、判定範囲を適度に緩く設定しつつ、その判定範囲内において同時的な操作が許容される操作部の数を適切な範囲に制限することができる。
【0066】
さらに、前記所定数が3に設定され、前記有効検出数が2に設定されてもよい。この場合には、操作が指定された操作部に代えて、又は加えてその操作部に隣接する他の一の操作部をユーザが操作した場合には、指定された操作部が操作されたものと判定される。一方、3以上の操作部が操作された場合には、指定された操作部が操作されなかったものと判定される。したがって、指定された操作部以外の操作部が操作された場合の許容範囲を必要最小限に設定することができる。
【0067】
上記態様のゲーム機においては、前記判定範囲が前記一の操作部を中心として前記所定方向に対称的に設定されてもよい。これによれば、指定された操作部の両側に均等に判定範囲が設定される。したがって、指定された操作部に対していずれの側に操作が偏っても、等しく操作の有無を判定することができる。
【0068】
上記態様のゲーム機において、前記操作判定手段は、2以上の操作部の同時的な操作が指示され、かつそれらの操作部に対応して設定されるべき判定範囲に重複部分(OR)が生じ、かつ前記重複部分にて操作が検出された場合、前記重複部分に対する一方の側の判定範囲と他方の側の判定範囲のそれぞれにおける操作の検出数が1以上かつ前記有効検出数以下となるようにして、前記重複部分で検出された操作を前記一方の側の判定範囲又は前記他方の側の判定範囲の操作として割り当てることが可能か否かを判別し(S101〜S110)、割り当てることが可能な場合には前記一方の側の判定範囲及び前記他方の側の判定範囲のそれぞれに対応する操作部の操作が行われたと判定し(S111)、割り当てることが不可能な場合には前記一方の側の判定範囲に対応する操作部又は前記他方の側の判定範囲に対応する操作部の操作が行われなかったと判定(S112)してもよい。複数の操作部の同時的な操作が指示された場合には、判定範囲間に重複部分が生じることがあり、その重複部分にて操作が検出された場合には、その操作をいずれの判定範囲で検出された操作とみなすべきかで、有効検出数を超える数の操作が検出されたか否かの判断結果が異なる可能性がある。そこで、重複部分に対する一方の側の判定範囲と他方の側の判定範囲のそれぞれにおける操作の検出数が1以上かつ有効検出数以下となるようにして、重複部分で検出された操作をいずれかの判定範囲の操作として割り当てることが可能か否かを判別すれば、重複部分で検出された操作を可能な限り活かしつつ、各判定範囲で有効検出数内の操作が検出されたか否かを判断することができる。
【0069】
上記態様のゲーム機においては、前記所定方向がユーザから見たときの左右方向であってもよい。これによれば、左右方向に並べられた複数の操作部のいずれかを操作するように指示された場合において、ユーザが指示された操作部を操作したか否かの判定を適度に行うことができる。
【0070】
さらに、前記操作部の前記左右方向における間隔が、いずれか一の操作部をユーザが指で操作したときに、当該一の操作部に対して少なくともいずれか一方の側に隣接する操作部が前記指に接して巻き込まれるように操作される範囲に設定されてもよい。このように操作部の間隔が狭く設定されている場合には、指定された操作部に代えて、又は加えて、その操作部に隣接する操作部がユーザの意図に反して同時的に操作される可能性が相対的に高くなる。したがって、判定範囲を適度に緩く設定することによる操作位置の判定基準の緩和作用を効果的に発揮させることができる。しかも、操作部の間隔が狭いために、指定された操作部に隣接する操作部が操作されたにも拘わらず操作が適切に行われたと判定されたとしても、ユーザに過度の違和感を与えない。
【0071】
前記入力装置(4)は、前記複数の操作部として、前記所定方向に並べられた複数の物理的な操作部材(10)を備えていてもよい。あるいは、前記入力装置として、ユーザがタッチ操作した位置に応じた信号を出力するタッチパネル入力装置(50)が設けられ、前記複数の操作部(51)のそれぞれは前記タッチパネル入力装置上に設定されてもよい。すなわち、操作部は物理的な操作部材によって提供されてもよいし、タッチパネル入力装置上の論理的な操作部として提供されてもよい。いずれの場合にも、上記態様に従って、複数の操作部の同時的な操作が検出された場合の判定を適切に行うことができる。
【解決手段】複数の操作部の操作を操作部ごとに操作を検出可能な入力装置と、ユーザが操作すべき操作部をユーザに指示し、操作部に対する操作の指示と入力装置が検出したユーザの操作との比較に基づいてユーザの操作を評価するゲーム制御部とを備え、操作部の間隔が複数の操作部の同時操作が生じ得る範囲に設定されたゲーム機において、ゲーム制御部は、一の操作部の操作の指示に対応して、その操作部を基準として所定方向に連続する複数の操作部を含む判定範囲RD内で、2以上に設定される有効検出数を超えない数の操作が検出された場合には、その操作部に対する操作が行われたと判定し、有効検出数を超える数の操作が検出された場合には操作が行われなかったと判定する。