(57)【要約】【課題】複数のマーカを近接表示させた状態が起きてもプレイヤーの意図に合ったマーカへの指示操作の割り当てが可能な技術を提供する。【解決手段】二つの同時押しマーカ２Ｍａ，２Ｍｂが近接表示された状態で、これらのマーカに向けて第１のタッチ操作Ｔ１と第２のタッチ操作Ｔ２がなされた場合、入力許容エリア８ａ，８ｂを論理和合成した一つの入力エリア８’を有する一つのターゲット群に、二つの同時押しマーカ２Ｍａ，２Ｍｂに相当する二つの操作入力の設定枠７ａ，７ｂがあるものとみなして、第１のタッチ操作Ｔ１と第２のタッチ操作Ｔ２を割り当てを行う。マーカ群に対する複数のタッチ操作の割り当てが完了したら、入力評価を実行する。【選択図】図５
2018079391.tif 000002
【特許請求の範囲】
【請求項１】
表示制御されるマーカに対するポインティング操作を行って楽しむゲームをコンピュータに実行させるためのプログラムであって、
当該マーカに対する入力を許容する時間的な範囲である入力許容期間と入力位置を許容する範囲である入力許容エリアとが定められたマーカを順次表示する制御を行うマーカ表示制御手段、
入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる複数のマーカでなるマーカ群に対する複数のポインティング操作について、当該マーカ群の各マーカにポインティング操作を割り当てて、当該マーカ群に対する操作入力の評価を行うマーカ群入力評価手段であって、ポインティング操作がなされる毎に、当該マーカ群のうちの最先に表示されたマーカに当該ポインティング操作の割り当てを行うとともに、当該マーカに既にポインティング操作が割り当てられている場合には、割り当てられているポインティング操作を、マーカの表示順に玉突き状に順繰り送りすることで最先に表示されたマーカの割り当てを解除した後に、最先に表示されたマーカに当該ポインティング操作の割り当てを行うマーカ群入力評価手段、
として前記コンピュータを機能させるためのプログラム。
【請求項２】
表示制御されるマーカに対するポインティング操作を行って楽しむゲームをコンピュータに実行させるためのプログラムであって、
当該マーカに対する入力を許容する時間的な範囲である入力許容期間と入力位置を許容する範囲である入力許容エリアとが定められたマーカを順次表示する制御を行うマーカ表示制御手段、
入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる複数のマーカでなるマーカ群に対する複数のポインティング操作について、当該マーカ群の各マーカにポインティング操作を割り当てて、当該マーカ群に対する操作入力の評価を行うマーカ群入力評価手段であって、前記マーカ群の各マーカに対するポインティング操作の割り当てを、マーカの表示位置とポインティング操作の操作位置との距離を用いて行うマーカ群入力評価手段、
として前記コンピュータを機能させるためのプログラム。
【請求項３】
前記マーカ群入力評価手段は、前記マーカ群の各マーカに対応付けられた目標タイミングと、割り当て済のポインティング操作の操作タイミングとの時間差を用いて、当該マーカ群に対する操作入力を評価する、
請求項１又は２に記載のプログラム。
【請求項４】
前記マーカ群入力評価手段は、マーカに割り当てられたポインティング操作の操作タイミングと、当該マーカの目標タイミングとの時間差を用いて、当該マーカに対する操作入力を評価する、
請求項３に記載のプログラム。
【請求項５】
前記マーカ群に対する複数のポインティング操作について、各ポインティング操作の入力時点で所定の効果音を出力する効果音出力制御手段として前記コンピュータを更に機能させるための請求項１〜４の何れか一項に記載のプログラム。
【請求項６】
前記マーカ群入力評価手段による評価結果に応じた音を出力する評価結果対応音出力制御手段として前記コンピュータを更に機能させるための請求項１〜５の何れか一項に記載のプログラム。
【請求項７】
前記コンピュータは、タッチパネルを内蔵、又は、有線或いは無線で外付け接続して備え、
前記マーカ表示制御手段は、前記タッチパネルの不特定位置から不特定方向に前記マーカを順次表示制御し、
前記タッチパネルへのタッチ操作を前記ポインティング操作として操作入力する操作入力手段として前記コンピュータを更に機能させるための、
請求項１〜６の何れか一項に記載のプログラム。
【請求項８】
前記マーカ表示制御手段は、タッチ位置を指示するための第１種マーカと、タッチ位置及びスライド方向を指示するための第２種マーカとを少なくとも含むマーカの中から選択したマーカを順次表示し、
前記マーカ群入力評価手段は、前記第２種マーカを含むマーカ群に対するタッチ操作としてタッチ位置及びスライド方向を含むタッチ操作がなされた場合に、当該スライド方向に適合する第２種マーカに優先的に当該タッチ操作を割り当てる優先割当手段を有する、
請求項７に記載のプログラム。
【請求項９】
前記マーカ群入力評価手段は、前記第２種マーカを含むマーカ群に対するタッチ操作の割り当てを、タッチ位置が入力された後、スライド方向の入力がなされるか、或いは、所与のスライド入力待機時間が経過するまで待機する割当待機制御手段を有する、
請求項８に記載のプログラム。
【請求項１０】
表示制御されるマーカに対するポインティング操作を行って楽しむゲームを実行するゲーム装置であって、
当該マーカに対する入力を許容する時間的な範囲である入力許容期間と入力位置を許容する範囲である入力許容エリアとが定められたマーカを順次表示する制御を行うマーカ表示制御手段と、
入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる複数のマーカでなるマーカ群に対する複数のポインティング操作について、当該マーカ群の各マーカにポインティング操作を割り当てて、当該マーカ群に対する操作入力の評価を行うマーカ群入力評価手段であって、ポインティング操作がなされる毎に、当該マーカ群のうちの最先に表示されたマーカに当該ポインティング操作の割り当てを行うとともに、当該マーカに既にポインティング操作が割り当てられている場合には、割り当てられているポインティング操作を、マーカの表示順に玉突き状に順繰り送りすることで最先に表示されたマーカの割り当てを解除した後に、最先に表示されたマーカに当該ポインティング操作の割り当てを行うマーカ群入力評価手段と、
を備えたゲーム装置。
【請求項１１】
表示制御されるマーカに対するポインティング操作を行って楽しむゲームを実行するゲーム装置であって、
当該マーカに対する入力を許容する時間的な範囲である入力許容期間と入力位置を許容する範囲である入力許容エリアとが定められたマーカを順次表示する制御を行うマーカ表示制御手段と、
入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる複数のマーカでなるマーカ群に対する複数のポインティング操作について、当該マーカ群の各マーカにポインティング操作を割り当てて、当該マーカ群に対する操作入力の評価を行うマーカ群入力評価手段であって、前記マーカ群の各マーカに対するポインティング操作の割り当てを、マーカの表示位置とポインティング操作の操作位置との距離を用いて行うマーカ群入力評価手段と、
を備えたゲーム装置。
【請求項１２】
プレイヤー端末をマンマシンインターフェースとして利用し、表示制御されたマーカに対するポインティング操作を行って楽しむゲームを前記プレイヤー端末で行うためのサーバシステムであって、
当該マーカに対する入力を許容する時間的な範囲である入力許容期間と入力位置を許容する範囲である入力許容エリアとが定められたマーカを順次表示する制御を行うマーカ表示制御手段と、
入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる複数のマーカでなるマーカ群に対する複数のポインティング操作について、当該マーカ群の各マーカにポインティング操作を割り当てて、当該マーカ群に対する操作入力の評価を行うマーカ群入力評価手段であって、ポインティング操作がなされる毎に、当該マーカ群のうちの最先に表示されたマーカに当該ポインティング操作の割り当てを行うとともに、当該マーカに既にポインティング操作が割り当てられている場合には、割り当てられているポインティング操作を、マーカの表示順に玉突き状に順繰り送りすることで最先に表示されたマーカの割り当てを解除した後に、最先に表示されたマーカに当該ポインティング操作の割り当てを行うマーカ群入力評価手段と、
を備えたサーバシステム。
【請求項１３】
プレイヤー端末をマンマシンインターフェースとして利用し、表示制御されたマーカに対するポインティング操作を行って楽しむゲームを前記プレイヤー端末で行うためのサーバシステムであって、
当該マーカに対する入力を許容する時間的な範囲である入力許容期間と入力位置を許容する範囲である入力許容エリアとが定められたマーカを順次表示する制御を行うマーカ表示制御手段と、
入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる複数のマーカでなるマーカ群に対する複数のポインティング操作について、当該マーカ群の各マーカにポインティング操作を割り当てて、当該マーカ群に対する操作入力の評価を行うマーカ群入力評価手段であって、前記マーカ群の各マーカに対するポインティング操作の割り当てを、マーカの表示位置とポインティング操作の操作位置との距離を用いて行うマーカ群入力評価手段と、
を備えたサーバシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示制御されるマーカに対するポインティング操作を行って楽しむゲームをコンピュータに実行させるためのプログラム等に関する。
【背景技術】
【０００２】
マーカの表示をたよりにタイミングに合わせた操作入力を楽しむゲームのジャンルの一つに、いわゆる「音楽ゲーム」「音ゲー」「演奏ゲーム」「リズムゲーム」と呼ばれるジャンルがある。（以下代表して「音楽ゲーム」という。）
【０００３】
例えば、特許文献１には、プレイヤーが、ラインに沿って流れ表示されるマーカ（操作入力の的）を、入力タイミングライン（評価位置）に到達するタイミングを見計らって操作入力するゲームが開示されている。マーカが入力タイミングラインに到達するタイミングは音楽のリズムと一致するように設定されているので、プレイヤーは音楽のリズムにのって操作入力すれば、高得点が得られるようになっている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１８１６５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
近年、タッチパネルへのタッチ操作でプレイする音楽ゲームが多数開発されており、マーカに対するタッチ操作によってゲームプレイするスタイルが一般的に採用されている。
【０００６】
このゲームスタイルにおいて重要となるのが、どのマーカに対するタッチ操作であるかを識別する技術である。逆説的に言えば検出されたタッチ操作を、表示されているどのマーカに割り当てるかの技術である。割り当てが適切に行われないと、プレイヤーの意図したマーカと異なるマーカにタッチ操作が割り当てられ、プレイヤーのプレイ操作を正しく入力評価できない事態が起きてしまう。その最も単純で効果的な対処法がマーカの表示間隔を誤認や誤判定しないように時間的および表示位置的に十分離して表示することである。
【０００７】
一方、タッチ操作によるゲームスタイルであっても、楽曲（プレイ曲）をバリエーション豊かに用意する必要があるため、例えば上級プレイヤー向けに、細かく刻むように連打する激しいタッチ操作を要求する高難易度の楽曲も用意したいところである。しかし、そのような楽曲は、短時間の間に多くのマーカに対するタッチ操作を要求するため、必然的にマーカ同士の表示位置間隔が短くなり、互いに接近した位置にマーカを表示する必要が生じ得る。そのため、上述の割り当て問題が発生する。すなわち、割り当て問題を回避するために、タッチ操作すべき前後のマーカ同士の表示位置間隔に下限を設ける結果、短時間の間に多くのマーカに対するタッチ操作を要求するような楽曲が想定以上の高難易度となるおそれがあった。
【０００８】
ポインティング操作の１つの例としてタッチ操作を挙げたが、マウス等を用いたゲームスタイルであっても同様の問題がある。
本発明は、上述した課題を解決するために考案されたものである。
【課題を解決するための手段】
【０００９】
上述した課題を解決するための第１の発明は、表示制御されるマーカに対するポインティング操作を行って楽しむゲームをコンピュータに実行させるためのプログラムであって、
当該マーカに対する入力を許容する時間的な範囲である入力許容期間と入力位置を許容する範囲である入力許容エリアとが定められたマーカを順次表示する制御を行うマーカ表示制御手段（例えば、図１の制御基板１４５０、図８の処理部２００、マーカ表示制御部２０８、図１２のステップＳ１２）、
入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる複数のマーカでなるマーカ群に対する複数のポインティング操作について、当該マーカ群の各マーカにポインティング操作を割り当てて、当該マーカ群に対する操作入力の評価を行うマーカ群入力評価手段（例えば、図１の制御基板１４５０、図８の処理部２００、マーカ群入力評価部２１０、図１５の同時押しマーカ用ルーチン、図１２のステップＳ１７０）、として前記コンピュータを機能させるためのプログラムである。
【００１０】
入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なるようにして複数のマーカが表示される場面において、単純にポインティング操作が検出される都度、マーカへ割り当てを行うと、プレイヤーが意図した操作とは異なる割り当てがなされる場合がある。例えば、ほぼ同時或いは同時に入力すべきマーカであって、入力許容エリアの一部が重なるほど近くに第１及び第２のマーカが表示される場面において、若干の時間差をおいて２つのポインティング操作がなされた場合である。具体的には、入力許容エリアの重なる領域に対して１番目のポインティング操作がなされ、第１のマーカの入力許容エリアのうちの第２のマーカの入力許容エリアと重なっていない領域に対して２番目のポインティング操作がなされた場合である。この場合には、２番目のポインティング操作について割り当てが行えない問題が生じる。この問題を回避するためには、従来においては、入力許容期間や入力許容エリアを重複させないようにマーカを表示する必要があった。例えば、同時に入力すべきマーカを、極端に離れた位置に表示せざるを得なかった。なお、従来は、入力マーカそれ自体が入力許容エリアを示していたことも、この問題の原因の１つと言えた。
【００１１】
しかし、第１の発明によれば、入力許容期間や入力許容エリアが重なり合うように近接して表示されたマーカを“群れ（マーカ群）”として捉え、複数のポインティング操作をその“群れ（マーカ群）”に対する操作と見なすことで、マーカ群を構成する各マーカに適切にポインティング操作を割り当てることができる。
【００１２】
よって、従来ならば不可能であったマーカが密集するような表示も可能になり、ゲームの興趣を高めることができる。当然、マーカを密集するように表示してもポインティング操作を適切に割り当てできるので、マーカ同士が近接し、細かく刻むように連打する激しいポインティング操作が要求されるプレイも実現することが可能となる。
【００１３】
第２の発明は、前記マーカ群入力評価手段が、前記マーカ群の各マーカそれぞれへのポインティング操作の割り当てが完了するか、或いは、前記マーカ群に係る入力許容期間が経過するまで、当該マーカ群に対する操作入力の評価を待機する評価待機制御手段（例えば、図１の制御基板１４５０、図８の処理部２００、評価待機制御部２１２、図１１のマーカ管理データ５７０の完了フラグ５７９、図１５のステップＳ９４〜Ｓ９６、図１７のステップＳ２００）を有する、第１の発明のプログラムである。
【００１４】
第２の発明によれば、割り当てが完了しないうちは入力評価を行わないように、或いは入力許容期間が経過するまで入力評価を行わないようにできる。
もしも、単純に入力された順にポインティング操作をマーカに割り当て、割り当てる毎に入力評価を行う構成を採用すると、割り当ての誤りの修正が効かなくなる。例えば、プレイヤーとしては同時入力したつもりでも実際にはほんの僅かな入力の時間ズレが有る２つの入力を行った場合などである。この第２の発明によれば、マーカ群に含まれる各マーカ毎の割り当てが完了するのを待って入力評価が行われるため、こういった問題はなくなる。
【００１５】
ポインティング操作の割り当てについては、様々な方法をとることができる。
例えば、第３の発明として、前記マーカ群入力評価手段が、前記マーカ群の各マーカに対するポインティング操作の割り当てを、マーカの表示順番を用いて行う、第１又は第２の発明のプログラムを構成することができる。
【００１６】
更には、第４の発明として、前記マーカ群入力評価手段が、ポインティング操作がなされる毎に、当該マーカ群のうちの最先に表示されたマーカに当該ポインティング操作の割り当てを行うとともに、当該マーカに既にポインティング操作が割り当てられている場合には、割り当てられているポインティング操作を、マーカの表示順に玉突き状に順繰り送りすることで最先に表示されたマーカの割り当てを解除した後に、最先に表示されたマーカに当該ポインティング操作の割り当てを行う、第３の発明のプログラムを構成することもできる。
【００１７】
また、第５の発明として、前記マーカ群入力評価手段が、前記マーカ群の各マーカに対するポインティング操作の割り当てを、マーカの表示位置とポインティング操作の操作位置との距離を用いて行う、第１又は第２の発明のプログラムを構成することができる。
【００１８】
また、入力評価については、様々な方法をとることができる。
例えば、第６の発明として、前記マーカ群入力評価手段が、前記マーカ群の各マーカに対応付けられた目標タイミングと、割り当て済のポインティング操作の操作タイミングとの時間差を用いて、当該マーカ群に対する操作入力を評価する、第１〜第５の何れかの発明のプログラムを構成することができる。
【００１９】
また、第７の発明として、前記マーカ群入力評価手段が、マーカに割り当てられたポインティング操作の操作タイミングと、当該マーカの目標タイミングとの時間差を用いて、当該マーカに対する操作入力を評価する、第６の発明のプログラムを構成することができる。
【００２０】
第８の発明は、前記マーカ群に対する複数のポインティング操作について、各ポインティング操作の入力時点で所定の効果音を出力する効果音出力制御手段（例えば、図１の制御基板１４５０、図８の処理部２００、効果音出力制御部２３０、図１２のステップＳ２４）として前記コンピュータを更に機能させるための第１〜第７の何れかの発明のプログラムである。
【００２１】
第８の発明によれば、マーカ群に対する操作入力の評価を待機するとしても、待機による効果音の出力遅れが生じることはない。
【００２２】
第９の発明は、前記マーカ群入力評価手段による評価結果に応じた音を出力する評価結果対応音出力制御手段（例えば、図１の制御基板１４５０、図８の処理部２００、評価結果対応音出力制御部２３２、図１７のステップＳ２２２）として前記コンピュータを更に機能させるための第１〜第８の何れかの発明のプログラムである。
【００２３】
第９の発明によれば、入力の評価結果を音でプレイヤーに知らせることができる。
【００２４】
第１０の発明は、前記コンピュータが、タッチパネルを内蔵、又は、有線或いは無線で外付け接続して備え、前記マーカ表示制御手段は、前記タッチパネルの不特定位置から不特定方向に前記マーカを順次表示制御し、前記タッチパネルへのタッチ操作を前記ポインティング操作として操作入力する操作入力手段として前記コンピュータを更に機能させるための、第１〜第９の何れかの発明のプログラムである。
【００２５】
第１０の発明によれば、タッチパネルの全域を使って様々な位置にポインティング操作するプレイスタイルを実現できるので、第１〜第３の発明の効果の発揮と相まって、従来にない興趣性を実現できる。左右の腕を伸縮等することでタッチパネルの全域にポインティング操作が可能となる画面サイズとすると、活発な手や腕の振りを用いた舞踊やパラパラダンス風のスタイリッシュなゲームプレイスタイルを実現できるであろう。
【００２６】
第１１の発明は、前記マーカ表示制御手段が、タッチ位置を指示するための第１種マーカと、タッチ位置及びスライド方向を指示するための第２種マーカとを少なくとも含むマーカの中から選択したマーカを順次表示し、前記マーカ群入力評価手段は、前記第２種マーカを含むマーカ群に対するタッチ操作としてタッチ位置及びスライド方向を含むタッチ操作がなされた場合に、当該スライド方向に適合する第２種マーカに優先的に当該タッチ操作を割り当てる優先割当手段（例えば、図１の制御基板１４５０、図８の処理部２００、優先割当制御部２１４、図１６のステップＳ１３０〜Ｓ１３２）を有する、第１０の発明のプログラムである。
【００２７】
第１１の発明によれば、要求するポインティング操作の内容が異なる第１種マーカと第２種マーカとを織り交ぜて登場させることで、プレイ中連続的に行うポインティング操作に変化をもたらすことができる。
【００２８】
しかも第２種マーカについてはスライド方向に適合するものを優先的に選択してタッチ操作を割り当てできるので、例えばプレイヤーが意図した操作入力が実は順番的に後から出現した第２種マーカに対する操作入力であったとしてもこれを救済し、あたかもプレイヤーが意図した操作入力が正しかったかのように評価することが可能となる。これにより、ゲームの興趣を削ぐような事態を未然に回避することができる。
【００２９】
第１２の発明は、前記マーカ群入力評価手段が、前記第２種マーカを含むマーカ群に対するタッチ操作の割り当てを、タッチ位置が入力された後、スライド方向の入力がなされるか、或いは、所与のスライド入力待機時間が経過するまで待機する割当待機制御手段（例えば、図１の制御基板１４５０、図８の処理部２００、割当待機制御部２１６、図１６のステップＳ１２６〜Ｓ１４０）を有する、第１１の発明のプログラムである。
【００３０】
第２種マーカについても、単純に入力された順にポインティング操作をマーカに割り当て、割り当てる毎に入力評価を行う構成を採用すると、割り当ての誤りの修正が効かなくなる。第１２の発明によれば、この事態を未然に防ぐことができる。
【００３１】
第１３の発明は、表示制御されるマーカに対するポインティング操作を行って楽しむゲームを実行するゲーム装置であって、
当該マーカに対する入力を許容する時間的な範囲である入力許容期間と入力位置を許容する範囲である入力許容エリアとが定められたマーカを順次表示する制御を行うマーカ表示制御手段と、
入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる複数のマーカでなるマーカ群に対する複数のポインティング操作について、当該マーカ群の各マーカにポインティング操作を割り当てて、当該マーカ群に対する操作入力の評価を行うマーカ群入力評価手段と、
を備えたゲーム装置である。
【００３２】
また、第１４の発明は、プレイヤー端末をマンマシンインターフェースとして利用し、表示制御されたマーカに対するポインティング操作を行って楽しむゲームを前記プレイヤー端末で行うためのサーバシステムであって、
当該マーカに対する入力を許容する時間的な範囲である入力許容期間と入力位置を許容する範囲である入力許容エリアとが定められたマーカを順次表示する制御を行うマーカ表示制御手段と、
入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる複数のマーカでなるマーカ群に対する複数のポインティング操作について、当該マーカ群の各マーカにポインティング操作を割り当てて、当該マーカ群に対する操作入力の評価を行うマーカ群入力評価手段と、
を備えたサーバシステムである。
【００３３】
第１３及び第１４の発明によれば、第１の発明と同様の効果を得ることができる。
【図面の簡単な説明】
【００３４】
【図１】業務用ゲーム装置の構成の一例を示す斜視外観図。
【図２】業務用ゲーム装置の右側面図。
【図３】ゲーム画面の例を示す図。
【図４】入力許容エリアの重複エリアになされた操作入力についてのマーカへの割り当ての基本的な考え方について説明する図。
【図５】同時押しマーカに対する操作入力の割り当てと、割り当て後の扱いについての考え方を示す図。
【図６】フリックマーカに対する基本となる操作入力の割り当てと割り当て後の扱いについての考え方を示す図。
【図７】割当候補集合に複数のフリックマーカが含まれる場合の操作入力の割り当てと割り当て後の扱いについての考え方を示す図。
【図８】業務用ゲーム装置の機能構成の一例を示す機能ブロック図。
【図９】選択候補曲データセットのデータ構成の一例を示す図。
【図１０】プレイデータのデータ構成例を示す図。
【図１１】マーカ管理データのデータ構成の一例を示す図。
【図１２】業務用ゲーム装置の処理の流れについて説明するためのフローチャート。
【図１３】操作割当処理の流れを説明するためのフローチャート。
【図１４】単独マーカ用ルーチンにおける処理の流れを説明するためのフローチャート。
【図１５】同時押しマーカ用ルーチンにおける処理の流れを説明するためのフローチャート。
【図１６】フリックマーカ用ルーチンにおける処理の流れを説明するためのフローチャート。
【図１７】入力評価処理の流れを説明するためのフローチャート。
【図１８】オンラインゲームとして実現する場合のシステム構成例を示す図。
【図１９】単独マーカ用ルーチンの変形例における処理の流れを説明するためのフローチャート。
【図２０】同時押しマーカ用ルーチンの変形例における処理の流れを説明するためのフローチャート。
【発明を実施するための形態】
【００３５】
〔第１実施形態〕
本発明を適用した第１実施形態として、音楽ゲームを実行する業務用ゲーム装置の例について説明する。
図１は、本実施形態における業務用ゲーム装置の構成の一例を示す斜視外観図である。
図２は、本実施形態における業務用ゲーム装置の右側面図である。ただし、構造を理解し易いように右スピーカの支持構造の図示を省略している。
【００３６】
本実施形態の業務用ゲーム装置１４００は、タッチ操作を用いて音楽ゲームを楽しむためのビデオゲーム装置としてデザインされている。業務用ゲーム装置１４００は、１）画面表示およびプレイヤーが操作を行うデバイスを具備する基部１４０１と、２）プレイヤーから見て基部１４０１の背部から上方へ設けられた立設背部１４０２と、３）当該立設背部から操作ポジションにあるプレイヤー９の頭部付近へ向けて延設されたスピーカ支持部１４０６Ｒ，１４０６Ｌと、を備える。
【００３７】
スピーカ支持部１４０６Ｒ，１４０６Ｌは、上面視略Ｕ字型または略コの字型を有し、凹部の底にあたる内側部で立設背部１４０２の背面に固定されている。スピーカ支持部１４０６Ｒ，１４０６Ｌの上下方向（高さ方向）の幅は、想定される平均的なプレイヤーの頭部の高さ方向の幅（上下方向の幅）よりも大きく設定されている。そして、スピーカ支持部１４０６Ｒ，１４０６Ｌは、それぞれ音出力面がプレイヤーの頭部に向けて配置されたスピーカユニット１４０８Ｒ，１４０８Ｌを備える。
【００３８】
基部１４０１は、主たる筐体部であって、画面表示部と操作入力部とを兼ねるタッチパネル１４２０と、操作中のプレイヤーが体をもたれ掛けることのできる身体支持部１４２２と、プレイ対価の支払いをするための対価支払装置１４２４と、ウーハー（Woofer）１４２６と、制御基板１４５０とを備える。
【００３９】
タッチパネル１４２０は、基部１４０１の上端部に画面を上方又は斜め上方に向けて設けられている。本実施形態では、プレイヤー９が画面を上から見ながら、画面に沿って上下左右に両腕を伸ばしたり縮めたりしながらダイナミックなスライド操作を含むタッチ操作ベースのプレイスタイルを想定しており、タッチパネル１４２０のサイズはできるだけ大きなサイズとする。望ましくは、１４インチ以上、例えば２４インチ〜３０インチとするが、これ以外のサイズとしてもよい。なお、タッチパネル１４２０は、基部１４０１に一体に内蔵されている構成に限らず、基部１４０１に外付けされる構成（通信接続は有線でも無線でもよい）であってもよい。
【００４０】
身体支持部１４２２は、操作中のプレイヤーが腹部を当てて体の重さを部分的に支持させることができるように設定されている。具体的には、身体支持部１４２２は、基部１４０１の前端部であり、タッチパネル１４２０の前方下端付近に固定されており、プレイヤー９が当接する面が凸の曲面を成しており、更に体の重さを掛けても負担とならないように適当な弾性材で覆われている。身体支持部１４２２の下方には、プレイヤー９が立ったときにつま先を納めることのできる空間が確保される。
【００４１】
対価支払装置１４２４は、硬貨投入装置や、プリペイドカードや電子マネー機能を備えたプレイヤーカードなどのリーダーライタなどにより実現される。ここで言う、プレイヤーカードは、予めプレイヤー登録手続きを経ることで発行される記憶媒体を備えたカード型のプレイヤー識別情報担持媒体であって、プレイヤーのアカウントなどの各種登録情報を書き換え可能に記憶しており、例えばＮＦＣ（Near Field Communication：近距離無線通信）を利用したＮＦＣリーダーライタによりデータの読み出し及び書き込みがなされる。尚、プレイヤーカードは、ＮＦＣに対応してデータを保存できる装置、例えばスマートフォンや携帯型ゲーム装置といった携帯型情報端末であってもよい。ゲームプレイの対価支払いは、プレイヤーカードに記憶されているプリペイドポイントの消費などにより代替することができる。
【００４２】
ウーハー１４２６は、低音域を担当する第３のスピーカユニットである。ウーハー１４２６は、プレイヤー９の下半身、より具体的には足下に向けて設置されており、重低音をプレイヤーの下半身に向けて放音することができる。
【００４３】
制御基板１４５０には、ＣＰＵ（Central Processing Unit）１４５１やＧＰＵ（Graphics Processing Unit）、ＤＳＰ（Digital Signal Processor）などの各種マイクロプロセッサ、ＡＳＩＣ（Application Specific Integrated Circuit）、ＶＲＡＭやＲＡＭ，ＲＯＭ等の各種ＩＣメモリ１４５２、通信回線Ｎに接続するための通信装置１４５３、タッチパネル１４２０のドライバＩＣ１４５４、Ｉ／Ｆ（Interface）コントロールＩＣ１４５７等が搭載されている。Ｉ／ＦコントロールＩＣ１４５７は、例えば（１）スピーカへ音声信号を出力する出力アンプ回路や、対価支払装置１４２４への信号入出力回路などを搭載し、ＣＰＵ１４５１と各種デバイスとの信号の入出力を制御する。制御基板１４５０に搭載されているこれらの要素は、バス回路などを介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。
【００４４】
通信回線Ｎは、データ通信が可能な通信路を意味する。すなわち、通信回線Ｎとは、直接接続のための専用線（専用ケーブル）やイーサネット（登録商標）等によるＬＡＮ（Local Area Network）の他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方法については有線／無線を問わない。
【００４５】
そして、制御基板１４５０は、ＩＣメモリ１４５２に記憶されたプログラムを読み出して実行して、各種のデータや操作入力に基づいて演算処理することによって、業務用ゲーム装置１４００を統合的に制御して本実施形態のゲームの進行制御をする。尚、プログラムやデータは、予めＩＣメモリ１４５２に記憶されているとしてもよいし、外部のサーバシステムから通信回線Ｎを介してダウンロードするとしてもよい。
【００４６】
［ゲーム内容についての説明］
図３は、本実施形態におけるゲーム画面の例を示す図である。
本実施形態の音楽ゲームでは、プレイする音楽の再生とともに、そのリズムに合わせてタッチパネル１４２０のゲーム画面上に不特定位置から不特定方向にマーカ２（２Ｓ，２Ｍ，２Ｆ）が順次表示される。
【００４７】
具体的には、タッチパネル１４２０の表示領域全域に亘って規則的或いは不規則的に折り返す基準線１に沿って次々にマーカ２（２Ｓ，２Ｍ，２Ｆ）を表示制御する。これを「譜面」と呼ぶ。
プレイヤーは、放音される音楽のリズムに合わせて表示された順番にマーカ２めがけてタッチパネル１４２０にタッチ操作をしたり、タッチ後にスライド操作するなどしてプレイする。タッチ操作やスライド操作が、本実施形態における「ポインティング操作」となる。
【００４８】
基準線１は、マーカ２が配置されていく方向性を定義するが、プレイヤーには見えない非表示の線である。例えば、直線や曲線、閉ループ、ジグザグなどの組み合わせで定義される。
【００４９】
マーカ２（２Ｓ，２Ｍ，２Ｆ）は、基準線１に沿って次々に出現・消滅するように表示される。マーカ２は、ポインティング操作を開始するべき「目標タイミング（音楽のリズムに合致する正解となるタイミングの一つ）」から所定時間前に基準線１の直上に出現する。または、適当に基準線１からの距離を与えられて、基準線１から少し離れた位置に出現する。そして、マーカ２にはそれぞれタイミングガイド４が添付表示され、このタイミングガイド４がポインティング操作を開始するべきタイミング、すなわち当該マーカ２に最初にタッチ操作するべきタイミングをガイドする。タイミングガイド４が示す目標タイミングの前後所定時間（より具体的には所定フレーム数）の間は、当該マーカに対する入力を許容する時間的な範囲すなわち入力許容期間とされる。
【００５０】
本実施形態では、タイミングガイド４は、対応するマーカ２の出現とともにその外周部に表示される。図３の例では、タイミングガイド４は弧状体の４つを１セットとして環状に配置して構成されているが、その他のデザインでも良い。
【００５１】
マーカ２とともに出現したばかりのタイミングガイド４は、マーカ２の外縁と所定距離（例えば画面上５ｃｍ以内の距離）を有する程度に大きく、時間経過とともに徐々に縮小表示され、対応するマーカ２の目標タイミングでちょうどマーカ２の外縁と重なるように表示制御される。図３の例では、図３中の一番右側に示されたマーカ２（２Ｆ）に付されたタイミングガイド４が出現時の位置関係を示している。タイミングガイド４は、そこから時間経過とともに中央２つのマーカ２（２Ｍａ，２Ｍｂ）に付されたタイミングガイド４の状態を経て、一番左側に示されたマーカ２（２Ｓ）に付されたタイミングガイド４のようにマーカ２と重なった状態に変化し、そこから短時間でマーカ２とタイミングガイド４はともに画面から消去される。
【００５２】
目標タイミングは、基本的にはゲームプレイ開始とともに放音制御される音楽のメロディラインなどのリズムに一致させてある。プレイヤーは、次々に出現するマーカ２の位置から目に見えない基準線１を想像することで、次のマーカ２が出現する位置を予想しつつ、タイミングガイド４がマーカ２と重なるタイミングを見計らってタッチ操作してゲームプレイする。
【００５３】
［マーカの種類について］
本実施形態の音楽ゲームでは、ポインティング操作の多様性向上と、ゲームの難易度調整と、操作のリズム感演出の向上とを目的として、単独マーカ２Ｓと、同時押しマーカ２Ｍ（２Ｍａ，２Ｍｂ）と、フリックマーカ２Ｆとの３種類のマーカを使用する。
【００５４】
単独マーカ２Ｓは、ポインティング操作における最初のタッチ位置を指示するための第１種マーカである。単独マーカ２Ｓは、それ単独で出現表示され、それ一つをタッチすれば、当該マーカについての入力評価が可能になる。
【００５５】
同時押しマーカ２Ｍは、共通の目標タイミングが設定された複数の第１種マーカで構成される。図３の例では、目標タイミングが同じ同時押しマーカ２Ｍａと同時押しマーカ２Ｍｂの２つで１つのグループを構成している。同じグループの同時押しマーカ２Ｍａ，２Ｍｂは同じタイミングでゲーム画面に表示され、プレイヤーはそれらに対して同時にタッチ操作することが求められる。換言すれば、見かけ上２つの同時押しマーカ２Ｍａと同時押しマーカ２Ｍｂは、実質的には操作入力の割当枠が２つある両者合わせた全体として１つのマーカであって、入力評価をするためには、２つの操作入力のタイミングが必要とされる種類のマーカである。なお、一のグループを構成する同時押しマーカ２Ｍの数は３つ以上としてもよい。
【００５６】
フリックマーカ２Ｆは、タッチ操作の後にタッチを維持したまま当該マーカの指定方向表示３の方向へスライドさせてから指を離す操作、いわゆる「払い操作」「フリック操作」をすることが求められるマーカである。つまり、フリックマーカ２Ｆは、タッチ位置及びスライド方向を指示するための第２種マーカであって、入力評価をするためにタッチ位置とスライド方向の２つの操作内容が必要とされる。
【００５７】
本実施形態においてゲームプレイされる音楽は、プレイヤーが選択肢の中から任意に選択可能である。選択肢となる音楽のジャンルやテンポは適宜設定可能である。換言すれば、選曲の結果によっては、テンポが早く連続的に多数のマーカ２が近接して表示されるケースも想定される。従って、本実施形態におけるマーカ２の表示サイズは、近接して複数のマーカ２が表示されても各々のマーカ２を容易に識別できるように指先より少し大きめのサイズ（例えば、直径２ｃｍ〜３ｃｍ程度）に設定されている。
【００５８】
また、各マーカ２には、プレイヤーには見えない内部処理上の入力許容エリア８を別途設定する。そして、タッチ操作された位置が見かけ上のマーカ２から若干外れても入力許容エリア８の範囲内であれば当該マーカへの入力が行われたものと見なすこととし、マーカ２の表示サイズに関する要件と、プレイスタイルから想定される操作性に係る要件とを両立させる。
【００５９】
本実施形態の入力許容エリア８は、マーカ２と概ね同じ形状を有し、マーカ２の表示サイズよりも大きく、タイミングガイド４の初期表示サイズとほぼ同じ大きさに設定されている。なお、入力許容エリア８の形状や大きさは適宜変更可能である。また、形状や大きさは固定に限らず、ゲーム難易度（例えば、プレイヤーがゲーム開始前に選択したり、プレイヤーのプレイ履歴に応じて自動的に選択される）に応じて、難易度が上がるほど小さくなると言った具合に可変としてもよい。
【００６０】
［近接表示されたマーカの扱いについて］
さて、複数のマーカ２が、入力許容エリア８の一部又は全部が重複するように近接表示されたとき、その重複した範囲になされたタッチ操作を一体どのマーカ２に対応する操作入力と判定するべきかが重要となる。このタッチ操作とマーカ２との対応づけのことを「操作入力のマーカへの割り当て」あるいは単に「操作割当」と呼ぶ。
【００６１】
本実施形態では、最新のタッチ操作は、割り当ての候補となり得るマーカ２のうちの最も早く表示されたマーカ２に対してなされた操作であると解釈することを基本とする。従って、入力許容エリア８の重複している複数のマーカ２がある場合、そのうち最も表示順が早いマーカ２から順に操作入力を割り当てることを基本とする。
その上で、入力許容期間や入力許容エリア８が重なり合うように近接して表示されたマーカを“群れ（マーカ群）”として捉え、複数のタッチ操作をその“群れ（マーカ群）”に対する操作と見なすことで、マーカ群を構成する各マーカに操作入力を割り当てる。
【００６２】
例えば、図４（１）において、単独マーカ２Ｓａ，２Ｓｂの表示順で２つのマーカが表示されたとする。そして、単独マーカ２Ｓａの入力許容エリア８ａと、単独マーカ２Ｓｂの入力許容エリア８ｂとが重複する範囲内に第１のタッチ操作Ｔ１が行われ、第２のタッチ操作Ｔ２が単独マーカ２Ｓａの入力許容エリア８ａ内になされたとする。ちなみに、単独マーカ２Ｓａ，２Ｓｂの表示順の前後関係は、それぞれのタイミングガイド４ａ，４ｂの表示遷移状態からも分かる。
【００６３】
先ず、第１のタッチ操作Ｔ１を割り当て可能な「割当候補マーカ」を集める。これを「割当候補集合」と呼ぶ。第１のタッチ操作Ｔ１のタッチ位置は、単独マーカ２Ｓａと単独マーカ２Ｓｂとのどちらの入力許容エリア８ａ，８ｂにも入るので、第１のタッチ操作Ｔ１についての割当候補集合１２Ａは、単独マーカ２Ｓａと単独マーカ２Ｓｂで構成される。
【００６４】
操作割当の基本の考え方を適用すると、割当候補集合１２Ａを構成する単独マーカ２Ｓａと単独マーカ２Ｓｂのうち、最も表示順が早い単独マーカ２Ｓａが、最初に第１のタッチ操作Ｔ１の割り当て先として選ばれる。単独マーカ２Ｓａには未だ操作入力が割り当てられていないので、第１のタッチ操作Ｔ１が割り当てられる。しかし、第２のタッチ操作Ｔ２についての割当候補集合１２Ｂは、単独マーカ２Ｓａのみとなる。操作割当の基本の考え方を適用すると、当然単独マーカ２Ｓａが選択される。しかし、単独マーカ２Ｓａには既に第１のタッチ操作Ｔ１が割り当てられているので割り当てできないことになる。
【００６５】
図４（１）のケースのように、単独マーカ２Ｓａと単独マーカ２Ｓｂとの表示タイミングが明らかに離れていれば、第１のタッチ操作Ｔ１と第２のタッチ操作Ｔ２とでタッチされるタイミングに明らかに時間のズレを認識できるので、仮に上述のように第２のタッチ操作Ｔ２の割り当てができないとしても、プレイヤーも納得できる。
しかし、それらの表示タイミングが近ければ近いほど、第１のタッチ操作Ｔ１と第２のタッチ操作Ｔ２のタイミングはほとんど同時に近くなり、タッチ操作が実際に検出される順番の後先がプレイヤーの意図したところと逆転しても分かり難くなる。例えば単独マーカ２Ｓａと単独マーカ２Ｓｂとの表示タイミングが同時或いはほぼ同時の場合、プレイヤーの意図や操作の感覚としては、第１のタッチ操作Ｔ１を単独マーカ２Ｓｂに向けて先行して行い、その僅か後に第２のタッチ操作Ｔ２を単独マーカ２Ｓａに向けて行ったとすると、プレイヤーが意図したのとは異なる割り当てになったように感じられることが予想される。
【００６６】
そこで、こうした問題を回避するために、先に述べた「マーカ群」の考え方を適用する。
図４（１）に示すように、単独マーカ２Ｓａと単独マーカ２Ｓｂとが、入力許容期間が全く重ならないほどに表示タイミングが離れているケースでは、単独マーカ２Ｓａについて、“入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる他のマーカ”を検索しても、該当する他のマーカは存在しないことになる。よって、この場合の“入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる複数のマーカでなるマーカ群”は単独マーカ２Ｓａの一つで構成され、当該マーカ群に対するポインティング操作である第１のタッチ操作Ｔ１は、単独マーカ２Ｓａに割り当てするほかない。よって、当該ケースでは「マーカ群」の考え方を適用しても第２のタッチ操作Ｔ２を割り当てることはできず、第２のタッチ操作Ｔ２は“ミス操作”の扱いとなる。
【００６７】
しかし、図４（２）に示すように、単独マーカ２Ｓａと単独マーカ２Ｓｂとが、入力許容期間が一部が重なるほどに表示タイミングが近いケースでは、単独マーカ２Ｓａについて、“入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる他のマーカ”を検索すると、単独マーカ２Ｓｂが検索される。
【００６８】
このケースでの「マーカ群」は、単独マーカ２Ｓａと単独マーカ２Ｓｂとの二つで構成され、当該マーカ群に対する第２のタッチ操作Ｔ２は、そのいずれの単独マーカに割り当てても良いと考えられる。よって、単独マーカ２Ｓａについては既に第１のタッチ操作Ｔ１が割り当てられているとしても、未だ操作割当がなされていない単独マーカ２Ｓｂに、第２のタッチ操作Ｔ２を割り当てることができる。そのため、厳密には、プレイヤーの意図した操作入力割り当てと実際の割り当てとが逆の関係になったとしても、ゲームプレイの結果としては、プレイヤーの意図に合った操作割当と同じとなり、プレイヤーに気持ちよくプレイしてもらうことができる。
【００６９】
このような「表示順最早の優先選択の原則」と「マーカ群として扱う概念」とを用いることで、複数のマーカを近接表示しても適切な操作割り当てができる。よって、マーカ同士の表示位置間隔の下限が必要以上に大きくなって、短時間の間に多くのマーカに対するタッチ操作を要求するような楽曲をプレイできるようにしても、想定以上の高難易度になってしまうと言った問題も起きない。
【００７０】
［同時押しマーカの扱い］
同様の考え方は同時押しマーカ２Ｍへの操作割当においても勿論有効である。
図５は、目標タイミングを共通とする同グループに属する二つの同時押しマーカ２Ｍａ，２Ｍｂが入力許容エリア８の一部が重なるほどに近接して表示された場面であり、プレイヤーが第１のタッチ操作Ｔ１と第２のタッチ操作Ｔ２とを実行した状況を示している。プレイヤーは二つのタッチ操作を同時に実現したつもりであるが、実際には僅かな時間ズレで第１のタッチ操作Ｔ１が先行したとする。また、第１のタッチ操作Ｔ１のタッチ位置と、第２のタッチ位置Ｔ２の位置関係は図４の例と同様とする。
【００７１】
一つのグループを構成する複数の同時押しマーカ２Ｍａ，２Ｍｂは、目標タイミングを共通としているので、そもそも入力許容期間の全部が重なり合っている。その上で、入力許容エリアの一部又は全部が重なるように近接して配置されている。よって、見かけ上はそれぞれが独立し、内部処理的にもそれぞれ独立した入力許容エリア８ａ，８ｂを有しているが、二つの入力許容エリア８ａ，８ｂを論理和合成された一つの入力許容エリア８’を有する一つの「マーカ群」と見なすことができる。そして、当該マーカ群には、同グループに属する同時押しマーカ２Ｍと同じだけの複数の操作入力の「割当枠」が有るものとして扱うことができる。
【００７２】
具体的には、図５（１）に示すように、第１のタッチ操作Ｔ１が入力許容エリア８ａと入力許容エリア８ｂとが重複する範囲になされると、当該タッチ操作は同時押しマーカ２Ｍａ，２Ｍｂのどちらにも割り当て可能である。第１のタッチ操作Ｔ１についての割当候補集合１２Ｃはそれらで構成される。第１のタッチ操作Ｔ１は何れか一方に割り当てされる。仮に左の同時押しマーカ２Ｍａに割り当てされたとする。このとき同時押しマーカ２Ｍａ，２Ｍｂを一つのマーカ群と見なせば、論理和合成された入力許容エリア８’に二つの操作入力の割当枠７ａ，７ｂがあって、その内の一つがこれで決まったことになる。
【００７３】
同時押しマーカ２Ｍａ，２Ｍｂのどちらか一方に操作の割り当てが行われたが、他の割当枠（この例では、同グループのもう一方の同時押しマーカ２Ｍｂの分の割当枠７ｂ）の割り当てが済んでいない。よって、マーカ群への操作の割り当ては完了しておらず、この段階では同時押しマーカ２Ｍａ，２Ｍｂについての入力評価処理は行われず、次にタッチ操作の検出待ちとなる。
【００７４】
そして、図５（２）に示すように、僅かな時間をおいて、第２のタッチ操作Ｔ２が同時押しマーカ２Ｍａの入力許容エリア８ａ内で検出されたとする。
第２タッチ操作Ｔ２についての割当候補集合１２Ｄは、同時押しマーカ２Ｍａのみであるが、当該マーカには既に先行した第１のタッチ操作Ｔ１が割り当て済みなので、“入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる複数のマーカでなるマーカ群”を求める。すると、当該同時押しマーカ２Ｍａと、目標タイミングを同じくするグループの同時押しマーカ２Ｍｂと、からなるマーカ群が得られる。つまり、「マーカ群」を求めることで、左の同時押しマーカ２Ｍａの入力許容エリア８ａと、右の同時押しマーカ２Ｍｂの入力許容エリア８ｂとの論理和合成された仮想の入力許容エリア８’に含まれていて、未だ操作入力が割り当てられていない同時押しマーカが検出される。そして「マーカ群」の考えに基づけば、検出されたマーカへ第２のタッチ操作Ｔ２を割り当てることができる。
【００７５】
なお、「マーカ群」内での割り当ての仕方としては、別の考え方もできる。例えば、左の同時押しマーカ２Ｍａに既に割り当てされている第１のタッチ操作Ｔ１の割り当てを解除して保留扱いとし、代わりに第２のタッチ操作Ｔ２を割り当てる。そして、解除・保留された第１のタッチ操作Ｔ１を同じグループの右の同時押しマーカ２Ｍｂに割り当てると考えても良い。つまり、第２タッチ操作Ｔ２で第１のタッチ操作Ｔ１を“玉突き状”に突き出して割り当て可能な他の同時押しマーカに再割り当てすると考えても良い。
【００７６】
何れにせよ第２のタッチ操作Ｔ２の割り当てが完了すると、共通の目標タイミングを有する全ての同時押しマーカ２Ｍａ、２Ｍｂへの操作入力の割り当てが完了となる。すなわち論理和合成された入力許容エリア８’を有する「マーカ群」に対する複数のポインティング操作が、仮定した二つの操作入力の割当枠７ａ，７ｂの二つに割り当てされたことになる。よって、同グループの全ての同時押しマーカ２Ｍａ，２Ｍｂが操作入力の割当完了になるので入力評価の処理の待機・遅延が解除され、これら二つの同時押しマーカ２Ｍａ，２Ｍｂについての入力評価が行われる。
【００７７】
同時押しマーカ２Ｍの入力評価は、二つの操作入力のタイミングと共通する目標タイミングとの時間差に基づいて入力評価が行われる。そして、評価結果に応じた得点がプレイヤーに付与される。入力評価が終わると、同時押しマーカ２Ｍはゲーム画面上から消され、内部処理上も消される。つまり、次の新たなタッチ操作検知の際には参照されなくなる。なお、操作入力の割り当てが完了していなくとも入力許容期間が経過したマーカ２については操作入力の入力評価の待機・遅延が解除されて評価が行われる。
【００７８】
［フリックマーカの扱い］
図６は、フリックマーカ２Ｆに対する基本となる操作入力の割り当てと割り当て後の扱いについての考え方を示す図である。
フリックマーカ２Ｆは、タッチ位置及びスライド方向を指示するためのマーカ（第２種マーカ）であって、操作入力の割当枠７ｃ，７ｄが二つ用意されているものと見なす。一つはタッチ操作のタッチ位置に対応する割当枠７ｃ、もう一つは「払い操作（＝タッチを維持したまま指をスライド移動させて最後にタッチを解除する操作：フリック操作）」の割当枠７ｄとなる。
【００７９】
具体的に割当枠の割り当てについて説明する。まず、図６（１）に示すように、フリックマーカ２Ｆへのタッチ操作Ｔ１が検出され、割り当て可能なマーカは当該フリックマーカ２Ｆのみであったとする。タッチ操作Ｔ１のタッチ位置を割当枠７ｃに割り当ててしまってもよさそうであるが、本実施形態ではこの段階では割り当てを行わない。当然、この段階では当該マーカに係る操作割当は完了せず入力評価処理は実行されない。所与のスライド入力待機時間が経過するまで待機する。
【００８０】
図６（２）に示すように、所与のスライド入力待機時間内に、タッチ操作Ｔ１に連続するようにして払い操作が行われると、タッチ位置のスライド方向ベクトルすなわち「払い操作方向Ｖ１」が判定される。そして、判定された払い操作方向Ｖ１が、割り当て可能なフリックマーカ２Ｆの指定方向表示３で示される指定方向（図中の破線黒矢印）に適合していれば、ここで初めて、割り当てが保留されていたタッチ操作Ｔ１と、払い操作方向Ｖ１とがそれぞれタッチ操作の割当枠７ｃ、払い操作の割当枠７ｄに割り当てられる。この段階になって、フリックマーカ２Ｆへの操作入力の割り当てが完了したと判断され、当該マーカに係る入力評価の処理の遅延・待機が解除されて入力評価が行われる。
なお、フリックマーカ２Ｆも入力許容期間が経過すると、操作入力の割り当てが完了していなくとも入力評価の待機が解除されて評価が実行される。
【００８１】
こうしたフリックマーカ２Ｆについての基本的な操作入力の割り当てと、上述の「マーカ群」の考え方を実装すると、次に説明するような複数のフリックマーカ２Ｆが近接表示された状況において。プレイヤーの操作感覚が気持ちよくプレイ結果に反映される割り当てを実現できる。
【００８２】
図７は、複数のフリックマーカ２Ｆが近接表示された場合の操作入力の割り当てと割り当て後の扱いについての考え方を示す図である。
図７（１）に示すように、僅かな時間差をおいて左のフリックマーカ２Ｆａが先に表示され、続いて右のフリックマーカ２Ｆｂが後に表示されたとする。同時表示でもよい。そして、プレイヤーは、二つのフリックマーカ２Ｆａ，２Ｆｂそれぞれに対応するべく、第１のタッチ操作Ｔ１と払い操作（払い操作方向Ｖ１）を行い、それと同時または僅かに遅れて第２のタッチ操作Ｔ２との払い操作（払い操作方向Ｖ２）を行ったとする。しかも、第１のタッチ操作Ｔ１と第２のタッチ操作Ｔ２は、それらは両フリックマーカ２Ｆａ，２Ｆｂの入力許容エリア８ａ，８ｂの重複する範囲になされたものとする。
【００８３】
第１のタッチ操作Ｔ１の割当候補集合１２は、フリックマーカ２Ｆａ，２Ｆｂで構成される。よって、第１のタッチ操作Ｔ１はフリックマーカ２Ｆａ，２Ｆｂのどちらにも割り当てされ得る。しかし、図６で説明したフリックマーカ２Ｆについての基本的な割り当ての考え方に則ると、図７（２）に示すように、第１のタッチ操作Ｔ１の払い操作方向Ｖ１が適合する指定方向を有する右のフリックマーカ２Ｆｂに、第１のタッチ操作Ｔ１とその払い操作方向Ｖ１が優先して割り当てられることとなる。
【００８４】
そして、第２のタッチ操作Ｔ２の割当候補集合１２もフリックマーカ２Ｆａ，２Ｆｂで構成されるが、同様にして図７（３）のように、第２のタッチ操作Ｔ２とそれに続く払い操作の払い操作方向Ｖ２は、左のフリックマーカ２Ｆａに割り当てられることになる。つまり、プレイヤーが意図したのと同じ操作割当の結果が得られ、プレイ結果（得点）にもプレイヤーの意図した割り当てのイメージが反映される。
【００８５】
このように、本実施形態によれば、単独マーカ２Ｓと、同時押しマーカ２Ｍと、フリックマーカ２Ｆとを用いる音楽ゲームでありながら、短時間の間に多くのマーカに対するタッチ操作を接近した位置で要求するような楽曲を適当な難易度でプレイできる音楽ゲームが実現できる。
【００８６】
［機能構成の説明］
次に、本実施形態における機能構成について説明する。
図８は、本実施形態における業務用ゲーム装置１４００の機能構成の一例を示す機能ブロック図である。本実施形態の業務用ゲーム装置１４００は、操作入力部１００と、処理部２００と、音出力部３５０と、画像表示部３６０と、通信部３７０と、記憶部５００とを備える。
【００８７】
操作入力部１００は、プレイヤーによって為された各種の操作入力に応じて操作入力信号を処理部２００に出力する。例えば、プッシュスイッチや、ジョイスティック、タッチパッド、トラックボール、加速度センサ、ジャイロ、ＣＣＤモジュール、などによって実現できる。図１のタッチパネル１４２０がこれに該当する。
【００８８】
処理部２００は、例えばＣＰＵやＧＰＵ等のマイクロプロセッサや、ＡＳＩＣ（特定用途向け集積回路）、ＩＣメモリなどの電子部品によって実現され、操作入力部１００や記憶部５００を含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部１００からの操作入力信号や各種データに基づいて各種の演算処理を実行して業務用ゲーム装置１４００の動作を制御する。図１の制御基板１４５０がこれに該当する。そして、本実施形態における処理部２００は、ゲーム演算部２０２と、音生成部２５０と、画像生成部２６０と、通信制御部２７０とを備える。
【００８９】
ゲーム演算部２０２は、ゲームの進行制御に係る各種処理を実行する。
例えば、背景を表示させつつ、音楽の再生に合わせてマーカ２などの譜面表示を行う。そして、マーカ２の入力許容エリア８内へのタッチ操作を検出すると、タッチ操作されたマーカ２に設定されている目標タイミングと、そのタッチ操作のタイミングとを比較して、入力を評価して得点を加算する。
【００９０】
具体的には、本実施形態のゲーム演算部２０２は、ポインティング操作検出部２０４と、プレイ曲選択制御部２０６と、マーカ表示制御部２０８と、マーカ群入力評価部２１０と、効果音出力制御部２３０と、を備える。
【００９１】
ポインティング操作検出部２０４は、画像表示されたマーカ２へ向けたポインティング操作を検出し、ポインティングされている位置座標を画像表示座標系の座標値で周期的に検出して処理部２００へ出力することができる。また、既に検出されているポインティング位置毎に時系列の変位を追跡することができる。図１の構成では、タッチパネルのドライバＩＣ１４５４がこれに該当し、こうした機能は公知のタッチパネルによるタッチ位置の検出技術や、タッチ位置の追跡によるスライド操作の検出技術などを適宜利用することにより実現できる。
【００９２】
プレイ曲選択制御部２０６は、ゲーム開始前にゲームプレイする音楽の選択に関する処理を実行する。例えば、記憶部５００に記憶されている選択候補曲データセット５１０を参照して、プレイヤーが選択可能な音楽の曲名をリスト表示して、操作入力部１００からの操作入力に応じて何れかを選択・決定させる処理をする。選択結果は、記憶部５００のプレイデータ５５０に格納する。
【００９３】
マーカ表示制御部２０８は、音楽に合わせたタッチ操作をするためのマーカ２の表示を含む譜面の表示に係る処理を行う。表示する背景や、音楽、マーカ２の表示タイミング、目標タイミング等の情報は、記憶部５００に選択候補曲データセット５１０として音楽毎に格納されているので、これを参照する。
【００９４】
マーカ群入力評価部２１０は、操作入力のマーカへの割り当て制御と、入力評価の待機及び待機解除の制御、入力評価、入力評価結果に基づく得点付与の制御を行う。
すなわち、マーカ群入力評価部２１０は、入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる複数のマーカでなるマーカ群に対する複数のポインティング操作について、当該マーカ群の各マーカにポインティング操作を割り当てて、当該マーカ群に対する操作入力の評価を行うことができる。
【００９５】
本実施形態のマーカ群入力評価部２１０は、評価待機制御部２１２と、優先割当制御部２１４と、割当待機制御部２１６とを有する。
【００９６】
評価待機制御部２１２は、マーカ群の各マーカそれぞれへのポインティング操作の割り当てが完了するか、或いは、マーカ群に係る入力許容期間が経過するまで、当該マーカ群に対する操作入力の評価を待機する制御を行う。
【００９７】
優先割当制御御部２１４は、第２種マーカを含むマーカ群に対するタッチ操作としてタッチ位置及びスライド方向を含むタッチ操作がなされた場合に、当該スライド方向に適合する第２種マーカに優先的に当該タッチ操作を割り当てる制御を行う。本実施形態では、複数のフリックマーカ２Ｆが重複エリア１０を形成して表示されたケースにおける操作入力の割り当てに関する制御（図７）がこれに該当する。
【００９８】
割当待機制御部２１６は、第２種マーカを含むマーカ群に対するタッチ操作の割り当てを、タッチ位置が入力された後、スライド方向の入力がなされるか、或いは、所与のスライド入力待機時間が経過するまで待機する制御をする。本実施形態では、複数のフリックマーカ２Ｆが重複エリア１０を形成して表示されたケースにおける操作入力の割り当てに関する制御（図７）がこれに該当する。
【００９９】
効果音出力制御部２３０は、タッチ操作が検出されたタイミングで操作音に相当する所定の効果音を出力制御することができる。マーカ群に対する複数のポインティング操作についても、各ポインティング操作の入力時点で所定の効果音を出力することができる。このため、評価待機制御部２１２によって、マーカ群へのポインティング操作の評価が遅れたとしても、効果音は、ポインティング操作時に出力することができ、プレイヤーの操作感覚を聴覚的に適合させることができる。
また、効果音出力制御部２３０は評価結果対応音出力制御部２３２を有し、マーカ群入力評価部２１０による評価結果に応じた音を出力制御することができる。
【０１００】
音生成部２５０は、例えばデジタルシグナルプロセッサ（ＤＳＰ）や、音声合成ＩＣなどのプロセッサ、音声ファイル再生可能なオーディオコーデック等によって実現され、ゲーム進行に応じて効果音やＢＧＭ、各種操作音の音信号を生成し、音出力部３５０に出力する。本実施形態では、プレイ開始とともにプレイ曲選択制御部２０６により選択された音楽の音信号の生成を開始する。
【０１０１】
音出力部３５０は、音生成部２５０から入力される音信号に基づいて効果音やＢＧＭ等を音出力する装置によって実現される。図１の右スピーカユニット１４０８Ｒ、左スピーカユニット１４０８Ｌ、ウーハー１４２６がこれに該当する。
【０１０２】
画像生成部２６０は、例えば、ＧＰＵ、デジタルシグナルプロセッサ（ＤＳＰ）などのプロセッサ、ビデオ信号ＩＣ、ビデオコーデックなどのプログラム、フレームバッファ等の描画フレーム用ＩＣメモリ等によって実現される。画像生成部２６０は、ゲーム進行に応じて１フレーム時間（例えば１／６０秒）で１枚のゲーム画面の画像を生成し、生成したゲーム画面の画像信号を画像表示部３６０に出力する。
【０１０３】
画像表示部３６０は、画像生成部２６０から入力される画像信号に基づいて各種ゲーム画像を表示する。例えば、フラットパネルディスプレイ、ブラウン管（ＣＲＴ）、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。本実施形態では、図１のタッチパネル１４２０がこれに該当する。
【０１０４】
通信制御部２７０は、データ通信に係るデータ処理を実行し、通信部３７０を介して外部装置とのデータのやりとりを実現する。通信部３７０は、通信回線Ｎ（図１）と接続して通信を実現する機器、例えば、無線通信機、モデム、ＴＡ（ターミナルアダプタ）、有線用の通信ケーブルのジャックや制御回路等によって実現される。図１の通信装置１４５３がこれに該当する。
【０１０５】
記憶部５００は、処理部２００に業務用ゲーム装置１４００を統合的に制御させるための諸機能を実現するためのシステムプログラムや、ゲームプレイに必要なプログラム、各種データ等を記憶する。また、処理部２００の作業領域として用いられ、処理部２００が各種プログラムに従って実行した演算結果や操作入力部１００から入力される入力データ等を一時的に記憶する。こうした機能は、例えばＲＡＭやＲＯＭなどのＩＣメモリ、ハードディスク等の磁気ディスク、ＣＤ−ＲＯＭやＤＶＤなどの光学ディスクなどによって実現される。図１の制御基板１４５０が搭載するＩＣメモリ１４５２が該当する。
【０１０６】
記憶部５００には、システムプログラム５０１と、ゲームプログラム５０２とを記憶している。システムプログラム５０１は、業務用ゲーム装置１４００のコンピュータとしての入出力の基本機能を実現するためのプログラムである。ゲームプログラム５０２は、処理部２００が読み出して実行することによってゲーム演算部２０２としての機能を実現させるためのアプリケーションソフトウェアである。システムプログラム５０１の一部として組み込まれた構成であっても良い。
【０１０７】
もし、本実施形態のゲームをオンラインゲームの形態で実現するならば、ゲームプログラム５０２は、オンラインゲームを実現する技術手法に応じて専用のクライアントプログラムとしてもよいし、ウェブブラウザプログラム及びインタラクティブな画像表示を実現するプラグインなどにより構成するとしてもよい。すなわち、ゲーム演算部２０２の機能の一部または全部をオンラインゲームサーバにて実現する構成とすることとし、業務用ゲーム装置１４００はゲームプレイの対価の支払いのための機能を備えたオンラインゲームのプレイヤー端末として機能させることも可能である。
【０１０８】
また、記憶部５００には、ゲームプレイ可能な音楽毎に用意された複数の選択候補曲データセット５１０が予め記憶されている。勿論、これらは定期的に更新されるとしても良い。また、記憶部５００には、ゲームプレイに伴ってプレイデータ５５０が記憶される。その他、各種フラグ、経緯時間のカウンタ、などの情報も適宜記憶される。
【０１０９】
図９は、選択候補曲データセット５１０のデータ構成の一例を示す図である。
選択候補曲データセット５１０は、プレイ時に再生される音楽の識別情報である音楽ＩＤ５１２と、音楽を再生するための音楽データ５１４と、基準線設定データ５１８と、譜面データ５２０とを含む。勿論、選択曲に関するその他の情報も適宜対応づけて格納することもできる。
【０１１０】
基準線設定データ５１８は、基準線１（図３）を定義する。例えば、基準線を表す基準線関数を格納する。基準線関数の定義の仕方は適宜可能であるが、例えば、（１）画面座標系の始点座標及び終点座標と、（２）始点座標と終点座標の間を結ぶ直線や曲線、屈曲線などを定義する関数と、で定義される。
【０１１１】
譜面データ５２０は、当該音楽の再生に合わせて表示するマーカ２の表示タイミング５２１と、表示するマーカ２の種類とを定義する。例えば、表示タイミング５２１と対応づけて、表示するマーカのマーカ種類５２２と、そのマーカの配置構成を表すパラメータ値であるマーカ配置パラメータ値５２３と、目標タイミング５２４とを対応づけて格納する。
【０１１２】
表示タイミング５２１は、マーカ２を表示開始するタイミングを定義する。例えば、音楽再生開始から計時される経過時間、あるいはゲーム画面の表示開始から積算されるフレーム数などで定義される。
【０１１３】
マーカ種類５２２は、本実施形態では単独マーカ２Ｓ、同時押しマーカ２Ｍ、フリックマーカ２Ｆの３種の何れかを格納する。
【０１１４】
マーカ配置パラメータ値５２３は、単独マーカ２Ｓについては特に格納されない。同時押しマーカ２Ｍについては、同グループとする同時押しマーカの数や、それらの相対位置関係を定義するデータ（例えば、表示位置の座標の差や距離、方向など）を格納する。フリックマーカ２Ｆについては指定方向の基準となる角度（指定方向角度）を格納する。
【０１１５】
目標タイミング５２４は、当該マーカへの操作入力の最適タイミングを定義する。例えば、音楽再生開始から計時される経過時間、あるいはゲーム画面の表示開始から積算されるフレーム数などで定義される。
【０１１６】
なお、マーカ２の表示開始を、当該マーカ２の目標タイミング５２４から逆算して決定する構成とする場合には、表示タイミング５２１を省略することができる。
【０１１７】
図１０は、プレイデータ５５０のデータ構成例を示す図である。
プレイデータ５５０は、ゲーム進行状況を記述する各種データを格納する。
例えば、プレイ音楽ＩＤ５５１と、フレーム数５５２と、経過時間５５３と、得点５５４と、タッチ操作データ５６０と、マーカ管理データ５７０と、割当候補集合１２を構成するマーカリストである割当候補集合データ５８０とを格納する。また、操作入力の割り当てを確定するための期間を計時する割当確定期間タイマー５８２と、払い操作を受け付ける期間を計時する払い操作受付期間タイマー５８４と、を格納する。勿論、ゲーム内容等に応じて適宜これら以外のパラメータ値も格納することができる。
【０１１８】
プレイ音楽ＩＤ５５１は、ゲームプレイする音楽の音楽ＩＤ５１２（図９）を格納する。
【０１１９】
フレーム数５５２および経過時間５５３は、それぞれゲーム開始からカウントされるゲーム画面の描画フレーム数であり、ゲーム開始から計時された時間である。マーカ２の表示タイミングや操作入力の操作開始タイミングを記述するためのパラメータ値である。
【０１２０】
得点５５４は、各マーカ２へ割り当てられた操作入力の入力評価結果の都度付与される点数の積算値である。ゲーム開始時の初期値は勿論「０」である。
【０１２１】
タッチ操作データ５６０は、タッチ操作が検出される都度作成される。
本実施形態では、自動付与される固有の操作ＩＤ５６１と、操作開始タイミング５６２と、開始位置座標５６３と、位置座標変化履歴５６４と、割当済フラグ５６５とを含む。勿論これら以外にも含めることができる。
【０１２２】
操作開始タイミング５６２には、タッチ操作が検出された時のフレーム数５５２または経過時間５５３が格納される。
開始位置座標５６３には、タッチ操作が検出された時のタッチパネル１４２０の座標系の座標（＝画面座標系の座標）が格納される。
【０１２３】
位置座標変化履歴５６４は、タッチ操作開始からのタッチ位置の変化を記述するデータであって、例えばポインティング操作検出部２０４から所定の周期で連続的に検出されるタッチ位置のリストや移動軌跡を記述する関数などである。当該履歴から払い操作方向を求めることができる。
割当済フラグ５６５は、初期状態は「０（未割当）」であり、何れかのマーカ２に割り当てされると「１（割当済）」とされる。
【０１２４】
マーカ管理データ５７０は、ゲーム画面に表示されている各マーカ２の状態を記述する各種データと、各マーカ２への操作入力の割り当て結果を格納する。
例えば、図１１に示すように、マーカ管理データ５７０は、表示タイミング５７１と、マーカＩＤ５７２と、マーカ種類５７３と、表示座標５７４と、タイミングガイド制御データ５７５と、入力許容エリア定義データ５７６と、割当操作ＩＤ５７７と、割当払い操作方向５７８と、完了フラグ５７９とを対応づけて格納する。勿論、これら以外のパラメータ値もマーカ別に対応づけて格納することができる。
【０１２５】
表示タイミング５７１には、マーカ２が表示された時点のフレーム数５５２または経過時間５５３が格納される。
マーカＩＤ５７２には、当該マーカ固有の識別情報が自動生成される。
マーカ種類５７３には、表示されるマーカのマーカ種類５２２（図９）が格納される。
表示座標５７４には、マーカ２が表示されたゲーム画面の座標系座標値が格納される。
タイミングガイド制御データ５７５は、当該マーカのタイミングガイド４（図３）を制御するためのデータである。表示開始から逐次更新される。
【０１２６】
入力許容エリア定義データ５７６は、当該マーカの入力許容エリア８（図３）を定義するデータである。本実施形態では対応するマーカの表示座標５７４を基準点として所定の半径Ｒｉで記述される円形エリアとしているがこれに限らない。マーカ種類５７３に応じて所定のルールで半径Ｒｉを変えたり、形状を変更してもよい。
【０１２７】
割当操作ＩＤ５７７は、当該マーカに割り当てられたタッチ操作の操作ＩＤ５６１（図１０）が格納される。操作入力の割当枠７ａ，７ｂ（図５）やタッチ操作の割当枠７ｃ（図７）に相当する。初期状態は、“未定”を意味する所定値が設定される。
【０１２８】
割当払い操作方向５７８は、フリックマーカ２Ｆについてのみ設定されるパラメータである。払い操作の割当枠７ｄ（図７）に相当し、払い操作方向Ｖ１、Ｖ２（図６，図７）を格納する。初期状態は、マーカ種類５７３が「単独」または「同時押し」の場合には“未使用”を意味する所定値（例えばＮＵＬＬ）が設定される。マーカ種類５７３が「フリック」の場合には“未定”を意味する所定値が設定される。
【０１２９】
完了フラグ５７９は、対応するマーカに係る入力評価をするのに必要な操作入力の割り当てが完了したことを示すフラグで、初期値は「０」、入力評価に必要な情報が揃ったと判断されると「１」が格納される。
【０１３０】
［動作の説明］
次に、本実施形態における業務用ゲーム装置１４００の動作について説明する。
図１２は、業務用ゲーム装置１４００の処理の流れについて説明するためのフローチャートである。当該フローチャートの一連の処理の流れは、処理部２００がシステムプログラム５０１を実行した状態で、ゲームプログラム５０２を実行することにより実現される。
【０１３１】
処理部２００は、先ず初期化処理する（ステップＳ２）。プレイデータ５５０の各パラメータ値は全て「０」である。タッチ操作データ５６０はまだ生成されていない。マーカ管理データ５７０も何れのマーカ２も登録されていない。
【０１３２】
次に、処理部２００はプレイする音楽の選択に関する処理を実行する（ステップＳ４）。例えば、選択候補曲データセット５１０（図９）それぞれから音楽ＩＤ５１２を抽出してプレイヤーが選択可能にリスト表示する。選択結果は、プレイデータ５５０（図１０）のプレイ音楽ＩＤ５５１として記憶する。ゲーム開始以降は、プレイ音楽ＩＤ５５１の示す選択候補曲データセット５１０が参照されることになる。
【０１３３】
ゲームプレイを開始すると（ステップＳ６）、処理部２００は選択候補曲データセット５１０から音楽データ５１４を読み出してプレイ音楽の再生処理を開始するとともにゲーム画面の表示を開始する。それに合わせてフレーム数５５２のカウントと、経過時間５５３の計時も開始する。
【０１３４】
ゲーム開始以降、譜面データ５２０（図９）の表示タイミング５２１が到来、あるいは、目標タイミング５２４から所定時間前のタイミングが到来すると、処理部２００は新たなマーカ２の発生タイミングに到来したと判断し（ステップＳ１０のＹＥＳ）、マーカ種類５２２の示すマーカ２を新たに発生させる。
具体的には、マーカ管理データ５７０の表示タイミング５７１に、現在のフレーム数５５２または経過時間５５３の値を格納し、マーカ種類５７３に発生されるマーカ２の種類識別子を格納する。表示座標５７４は、基準線１の始点から経過時間５５３に応じて算出される位置を基準に算出される。タイミングガイド制御データ５７５は初期値が格納される。割当操作ＩＤ５７７及び割当払い操作方向５７８は、“未割当”を示す所定値を設定する。完了フラグ５７９は「０」とされる。そして、マーカ管理データ５７０に新たに登録されたマーカ２をゲーム画面上に表示させる。
【０１３５】
ゲーム開始以降、新たなタッチ操作を検出すると（ステップＳ２０のＹＥＳ）、処理部２００は当該タッチ操作の内容を管理するためにタッチ操作データ５６０（図１０）を新たに生成する（ステップＳ２２）。具体的には、操作開始タイミング５６２には現在のフレーム数５５２または経過時間５５３の値を格納し、開始位置座標５６３には、ポインティング操作検出部２０４から出力された最新の座標値を格納する。割当済フラグ５６５は初期値「０（未割当）」のままである。
【０１３６】
次いで、処理部２００は、所定の効果音をタッチ操作音として音出力制御し（ステップＳ２４）、マーカへの割り当てが未だなされていないタッチ操作、具体的には割当済フラグ５６５が「０（未割当）」のタッチ操作について、操作割当処理を実行する（ステップＳ２６）。
【０１３７】
図１３は、本実施形態における操作割当処理の流れを説明するためのフローチャートである。同処理において、処理部２００は先ず割当候補集合１２を設定する（ステップＳ５０）。具体的には、ループＡの処理対象とされるタッチ操作の開始位置座標５６３と、マーカ管理データ５７０の入力許容エリア定義データ５７６とを比較して、当該タッチ操作のタッチ開始位置を入力許容エリア８に含むマーカ２を抽出する。そして、抽出したマーカ２のマーカＩＤ５７２のリストを割当候補集合データ５８０（図１０）とする。
【０１３８】
次に、設定した割当候補集合１２の母数が「１」以上であれば（ステップＳ５２の“１以上”）、割当候補集合１２に含まれるマーカのうち最も表示順が早いマーカを「割当候補マーカ」として選定する（ステップＳ５４）。
【０１３９】
「割当候補マーカ」の種類が単独マーカであったならば（ステップＳ５６の単独）、処理部２００は単独マーカ用ルーチンを実行する（ステップＳ６０）。
【０１４０】
図１４は、単独マーカ用ルーチンにおける処理の流れを説明するためのフローチャートである。同ルーチンにおいて、処理部２００は先ず、現在の割当候補マーカの操作入力の割り当て状況を確認する。もし、未だ割り当てがなされていなければ（ステップＳ６２のＮＯ）、割当候補マーカへ処理対象としているタッチ操作を割り当てる（ステップＳ６４）。単独マーカ２Ｓは、これで入力評価に必要な情報が揃ったことになる。すなわち、操作入力の割り当てが確定したので、割当候補マーカの完了フラグ５７９を初期値の「０」から割り当て完了を意味する「１」に変更する（ステップＳ７２）。そして、当該ルーチンを抜けて図１３のフローチャートに戻る。そして、現在の処理対象としているタッチ操作についての操作割当処理を終了する。
【０１４１】
もし、割当候補マーカが割り当て済ならば（ステップＳ６２のＹＥＳ）、処理部２００は全マーカの中から、現在の割当候補マーカと入力許容期間が重なり、且つ、入力許容エリアの重なるマーカを検索する（ステップＳ６６）。すなわち、“入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる複数のマーカでなるマーカ群”を求める。そして、検索されたマーカの中に操作入力が未だ割り当てられていない未割当マーカがあれば（ステップＳ６８のＹＥＳ）、該当するマーカの何れかに処理対象のタッチ操作を割り当てる（ステップＳ７０）。そして、割当候補マーカの完了フラグ５７９を初期値の「０」から割り当て完了を意味する「１」に変更する（ステップＳ７２）。ステップＳ６６〜Ｓ７０を経る処理の流れは、図４（２）のケースに該当する。
【０１４２】
もし、ステップＳ６６で検索したマーカの中に、未割当のマーカが無ければ（ステップＳ６８のＮＯ）、処理部２００は、現在の割当候補マーカの割当候補集合１２における表示順が最後であれば本ルーチンを抜けることとし、最後でなければ（ステップＳ７４のＮＯ）、現在の割当候補集合１２に含まれるマーカの中から、表示順が現在の割当候補マーカの次に早いマーカを、次の「割当候補マーカ」として再設定し（ステップＳ７６）、当該ルーチンを抜け、図１３のステップＳ５６に移行する。
【０１４３】
図１３のフローチャートに戻って、「割当候補マーカ」の種類が「同時押しマーカ」であったならば（ステップＳ５６の同時押し）、処理部２００は同時押しマーカ用ルーチンを実行する（ステップＳ８０）。
【０１４４】
図１５は、同時押しマーカ用ルーチンにおける処理の流れを説明するためのフローチャートである。同ルーチンにおいて、処理部２００は先ず、現在の割当候補マーカの操作入力の割り当て状況を確認する。
【０１４５】
もし、未だ割り当てがなされていなければ（ステップＳ８２のＮＯ）、割当候補マーカへ処理対象としているタッチ操作を割り当てる（ステップＳ８４）。
もし、割当候補マーカが割り当て済ならば（ステップＳ８２のＹＥＳ）、処理部２００は全マーカの中から、現在の割当候補マーカと入力許容期間が重なり、且つ、入力許容エリアの重なるマーカを検索する（ステップＳ８６）。すなわち、“入力許容期間の一部又は全部が重なり、且つ、入力許容エリアの一部又は全部が重なる複数のマーカでなるマーカ群”を求める。より具体的には、全マーカの中から、現在の割当候補マーカと同グループの同時押しマーカで、且つ、現在の割当候補マーカと入力許容エリア８が重複する他の同時押しマーカを検索する。
【０１４６】
そして、ステップＳ８６で検索された同時押しマーカの中に操作入力が未だ割り当てられていない未割当マーカがあれば（ステップＳ９０のＹＥＳ）、該当する同時押しマーカの何れかに処理対象としているタッチ操作を割り当てる（ステップＳ９２）。
【０１４７】
そして、ステップＳ８４またはステップＳ９２で割り当てた結果、現在の割当候補マーカと、目標タイミングを同じくする同グループの全ての同時押しマーカ２Ｍについて、操作入力が割り当て済となったならば（ステップＳ９４のＹＥＳ）、処理部２００は、それら同時押しマーカ２Ｍを入力評価するための情報が揃ったと判断し、それら全ての同時押しマーカ２Ｍの完了フラグ５７９を「１（完了）」に設定する（ステップＳ９６）。そして、当該ルーチンを抜ける。
【０１４８】
一方、検索された同時押しマーカのどれもが操作入力の割り当て済ならば（ステップＳ９０のＮＯ）、割当候補マーカの現在の割当候補集合１２における表示順が最後であれば本ルーチンを抜けることとし、最後でなければ（ステップＳ１００のＮＯ）、処理部２００は割当候補集合１２に含まれるマーカの中から、表示順が現在の割当候補マーカの次に早いマーカを、次の「割当候補マーカ」として再設定し（ステップＳ１０２）、当該ルーチンを抜け、図１３のステップＳ５６へ移行する。
【０１４９】
図１３のフローチャートに戻って、「割当候補マーカ」の種類が「フリックマーカ」であったならば（ステップＳ５６のフリック）、処理部２００はフリックマーカ用ルーチンを実行する（ステップＳ１２０）。
【０１５０】
図１６は、フリックマーカ用ルーチンにおける処理の流れを説明するためのフローチャートである。同ルーチンにおいて、処理部２００は先ず、現在の割当候補マーカの操作入力の割り当て状態を確認する。
【０１５１】
もし、未だ割り当てがなされていなければ（ステップＳ１２２のＮＯ）、処理部２００は払い操作受付期間タイマー５８４を起動させて受付期間の計時を開始する（ステップＳ１２４）。
【０１５２】
プレイヤーが画面にタッチした後、画面に指を触れさせたまま移動させると、ポインティング操作検出部２０４はその移動量が規定値を超えると払い操作方向Ｖ１を算出して出力することができる。
処理部２００は、払い操作方向Ｖ１がポインティング操作検出部２０４から出力されたことをもって払い操作を検出することができる。払い操作受付期間内に払い操作を検出できた場合（ステップＳ１２６のＹＥＳ）、処理部２００は、現在の割当候補マーカの指定方向と払い操作方向Ｖ１とを比較して、払い操作方向Ｖ１が適合するか判定する（ステップＳ１３０）。
【０１５３】
払い操作方向Ｖ１と指定方向との方向差が所定の基準値以下なら適合と判断し（ステップＳ１３０のＹＥＳ）、現在の割当候補マーカに処理対象としているタッチ操作と、ステップＳ１２６で払い操作検出の元になった払い操作方向Ｖ１とを割り当てる（ステップＳ１３２）。具体的には、割当候補マーカの割当操作ＩＤ５７７を処理対象としているタッチ操作の操作ＩＤ５６１に変更し、割当払い操作方向５７８を払い操作方向Ｖ１に変更する。そして、割当候補マーカの完了フラグ５７９を「１」に変更して（ステップＳ１４０）、当該ルーチンを終了する。
【０１５４】
もし、払い操作方向Ｖ１が指定方向と適合せず（ステップＳ１３０のＮＯ）、且つ、現在の割当候補集合１２の中に他のフリックマーカ２Ｆがあれば（ステップＳ１３４のＹＥＳ）、処理部２００は該当する他のフリックマーカ２Ｆの何れかを新たな「割当候補マーカ」に再設定して（ステップＳ１３６）、当該再設定された割当候補マーカの指定方向と、ステップＳ１２６で払い操作検出の元になった払い操作方向Ｖ１との適合判定をする（ステップＳ１３０）。
【０１５５】
しかし、現在の割当候補集合１２の中に他のフリックマーカ２Ｆが無ければ（ステップＳ１３４のＮＯ）、処理部２００は、現在の割当候補マーカに、処理対象としているタッチ操作と、“払い操作の入力無し”を意味する所定値あるいは所定ベクトルとを割り当てる（ステップＳ１３８）。そして、割当候補マーカの完了フラグ５７９を「１」に変更して（ステップＳ１４０）、当該ルーチンを終了する。
なお、ステップＳ１２６にて、払い操作受付期間内に払い操作が検出されてなければ、例えば、プレイヤーがタッチ操作の後に払い操作をせずに指を離してしまった場合などでも（ステップＳ１２６のＮＯ）同様である。
【０１５６】
また、そもそも現在の割当候補マーカに操作入力が既に割り当て済ならば（ステップＳ１２２のＹＥＳ）、現在の割当候補マーカの割当候補集合１２における表示順が最後であれば本ルーチンを抜けることとし、最後でなければ（ステップＳ１４２のＮＯ）、処理部２００は割当候補集合１２に含まれるマーカの中から、表示順が現在の割当候補マーカの次に早いマーカを、次の「割当候補マーカ」として再設定し（ステップＳ１４４）、当該ルーチンを抜け、図１３のステップＳ５６へ移行する。
【０１５７】
図１３のフローチャートに戻って、「単独マーカ用ルーチン」「同時押しマーカ用ルーチン」「フリックマーカ用ルーチン」を終了すると操作入力処理が終了される。
【０１５８】
図１２のフローチャートに戻って、操作割当処理の実行の後（ステップＳ２６）、処理部２００は入力評価処理を実行する（ステップＳ１７０）。
【０１５９】
図１７は、入力評価処理の流れを説明するためのフローチャートである。
同処理において、処理部２００は先ず、入力評価可能なマーカを抽出する（ステップＳ２００）。すなわち、マーカ種類別に決められた入力評価に必要な情報が割り当てられているマーカ、より具体的には完了フラグ５７９が「１」のマーカを抽出する。また、目標タイミング５２４から求められる入力許容期間の期限に達したマーカも抽出する。そして、抽出された全てのマーカについて表示順にループＣを実行して入力評価を行う（ステップＳ２０２〜Ｓ２２４）。
逆説的に、完了フラグ５７９が「０」のマーカについては入力評価が見送りされる。すなわち、実質的にそのマーカに対する入力評価は待機状態となる。
【０１６０】
ループＣでは、処理対象マーカの種類が「単独マーカ」の場合には（ステップＳ２０４の“単独”）、処理部２００は、処理対象マーカに割り当てられている操作の操作開始タイミング５６２（処理対象マーカの割当操作ＩＤ５７７（図１１）に合致するタッチ操作データ５６０（図１０）に有り）と、処理対象マーカの目標タイミング５２４（図９：譜面データ５２０の中から、処理対象マーカの表示タイミング５７１に合致する表示タイミング５２１を検索して目標タイミング５２４を判定）との時間差から入力評価を段階的に決定する（ステップＳ２０６）。
【０１６１】
もし、処理対象マーカの種類が「同時押しマーカ」の場合には（ステップＳ２０４の“同時押し”）、処理部２００は、目標タイミング５２４が処理対象マーカと同じ同時押しマーカのグループについて、同時押しマーカ別に、割当済の操作の操作開始タイミング５６２と、当該グループに共通の目標タイミング５２４との時間差を算出し（ステップＳ２０８）、その合計値に基づいて入力評価を段階的に決定する（ステップＳ２１０）。
【０１６２】
もし、処理対象マーカの種類が「フリックマーカ」の場合には（ステップＳ２０４の“フリック”）、処理部２００は、処理対象マーカに割当済の操作の操作開始タイミング５６２と処理対象マーカの目標タイミング５２４との時間差を算出し（ステップＳ２１２）、算出した時間差と、処理対象マーカに割当払い操作方向５７８の適否結果とに基づいて入力評価を段階的に決定する（ステップＳ２１４）。なお、ここで言う適否は、割当払い操作方向５７８が払い操作の“入力無し”を意味する所定値あるいは所定ベクトル（図１６のステップＳ１３８参照）の場合に「否」判定とし、それ以外は「適」判定とする。
【０１６３】
そして、入力評価を決定したならば、その入力評価に応じて予め決まった点数を得点５５４（図１０）に加算・付与し（ステップＳ２２０）、入力評価に応じた効果音を出力し（ステップＳ２２２）、ループＣを終了する（ステップＳ２２４）。そして、ステップＳ２００で抽出された全てのマーカについてループＣを実行したならば、入力評価処理を終了する。
【０１６４】
図１２のフローチャートに戻って、処理部２００は、次に入力評価されたマーカの消去処理（ステップＳ２５２）、目標タイミングが到来したマーカの消去処理（ステップＳ２５４）をする。消去処理では、マーカ管理データ５７０から該当するマーカの登録を抹消しゲーム画面から消去する制御を行う。
【０１６５】
次いで、消去されずに残っている表示中のマーカの表示遷移処理、例えば、タイミングガイド４の大きさを変える制御などを実行する（ステップＳ２５６）。
【０１６６】
そして、ゲーム終了条件を満たしていなければ（ステップＳ２６０のＮＯ）、ステップＳ１０に戻りゲーム進行を継続する。
もし、ゲーム終了条件を満たしていれば（ステップＳ２６０のＹＥＳ）、処理部２００はゲームプレイ結果の評価を表示したり、エンディング演出を表示するなどのゲーム終了処理を実行して（ステップＳ２６２）、一連の処理を終了する。
【０１６７】
以上、本実施形態によれば、入力許容期間や入力許容エリアが重なり合うように近接して表示されたマーカについても、ポインティング操作を適切に割り当てて入力評価することができる。よって、従来ならば不可能であったマーカが密集するような譜面表示も可能になり、よりゲームの興趣を高めることができる。当然、マーカを密集するように表示してもポインティング操作を適切に割り当てできるので、マーカ同士が近接し、細かく刻むように連打する激しいポインティング操作が要求されるプレイも実現することが可能となり、ゲームの興趣を高めることができる。
【０１６８】
〔変形例〕
なお、本発明の適用形態は上記実施形態に限定されるものではなく、適宜構成要素の追加・省略・変更を施すことができる。
【０１６９】
［その１］
例えば、業務用ゲーム装置１４００は、家庭用据え置き型ゲーム装置や、携帯型ゲーム装置、パソコン、スマートフォン、タブレット型コンピュータなど他の形態のコンピュータや電子機器に置き換えることができる。
【０１７０】
［その２］
また、上記実施形態では、ポインティング操作をタッチパネルで行う構成としたが、マウスや、トラックパッド、モーションキャプチャデバイスなどで実現するとしてもよい。モーションキャプチャデバイスは、プレイヤーをデジタルカメラで撮影するとともに距離センサで被写体の各部までの距離を計測して、プレイヤーの骨格の動きを検出する公知のデバイス（例えば、マイクロソフト社製のキネクト（登録商標）など）を利用して、プレイヤーの手指の位置や動きからポインティング操作を検出するとすればよい。
【０１７１】
［その３］
また、本発明をオンラインゲームやネットワークゲームに適用することもできる。
その場合、例えば図１８に示すように、業務用ゲーム装置１４００や、スマートフォンなどのプレイヤー端末１５００が、通信回線Ｎを介してサーバシステム１１００に接続して、クライアント・サーバ型のシステムを構成し、プレイヤーは、業務用ゲーム装置１４００や、タッチパネル１５０６を備えたプレイヤー端末１５００でオンラインゲームをプレイ可能な構成とする。そして、上記実施形態で説明した機能構成（図８参照）を、サーバシステム１１００にて実現する構成とすればよい。その際、分散処理の観点から、機能構成の一部を業務用ゲーム装置１４００やプレイヤー端末１５００側で実行させる構成とすることもできる。オンラインゲームをピア・ツー・ピア型のシステムで実現する場合も適宜機能分散すればよい。
【０１７２】
サーバシステム１１００は、本体装置１１０１と、キーボード１１０６と、タッチパネル１１０８と、ストレージ１１４０とを備える。本体装置１１０１には、制御基板１１５０が搭載されている。制御基板１１５０には、ＣＰＵ１１５１やＧＰＵ、ＤＳＰなどの各種マイクロプロセッサ、ＡＳＩＣ、ＶＲＡＭやＲＡＭ，ＲＯＭ等の各種ＩＣメモリ１１５２、通信装置１１５３が搭載されている。
【０１７３】
サーバシステム１１００は、通信接続された業務用ゲーム装置１４００やプレイヤー端末１５００へゲームを実行するのに必要なプログラムやデータを随時管理・配信するゲーム管理機能を有する。図１８の例では、サーバシステム１１００は単体として記しているが、サーバシステム１１００には複数のブレードサーバを搭載し、相互に内部バスを介してデータ通信可能に接続された構成であっても良い。或いは、離れた場所に設置された独立した複数のサーバーを通信回線Ｎを介してデータ通信させることで、全体としてサーバシステム１１００として機能させる構成であっても良い。
【０１７４】
［その４］
また、「操作入力のマーカへの割り当て」は次のようにすることもできる。
例えば、図１９は単独マーカ用ルーチンの変形例における処理の流れを説明するためのフローチャートである。基本的には、図１４のフローチャートにおける処理の流れと同様であるが、ステップＳ７０に代えて、ステップＳ６９〜Ｓ７１を実行する。
より具体的には、処理部２００は、現在の割当候補マーカに割り当てられている操作を、ステップＳ６６で検索された未割当マーカのうち、何れかのマーカに割り当てを移動させる（ステップＳ６９）。そして、現在の割当候補マーカへ割当の対象としている操作を割り当てる（ステップＳ７１）。つまり、割当候補マーカに既に操作が割り当てられている場合には、割り当てられている操作をマーカの表示順に玉突き状に順繰り送りすることができる。
【０１７５】
図２０は、同時押しマーカ用ルーチンの変形例における処理の流れを説明するためのフローチャートである。基本的には、図１５のフローチャートにおける処理の流れと同様であるが、ステップＳ９２に代えて、ステップＳ９１〜Ｓ９３を実行する。より具体的には、処理部２００は、現在の割当候補マーカに割り当てられている操作を、ステップＳ８６で検索された未割当マーカのうち、何れかのマーカに割り当てを移動させる（ステップＳ９１）。そして、現在の割当候補マーカへ割当の対象としている操作を割り当てる（ステップＳ９３）。つまり、同時押しマーカ２Ｍへの操作割り当てにおいても、割当候補マーカに既に操作が割り当てられている場合には、割り当てられている操作をマーカの表示順に玉突き状に順繰り送りすることができる。
【０１７６】
なお、図１９のステップＳ６９、図２０のステップＳ９１において操作割り当てを移す先の選択は次の方法のどれかを適宜選択することができる。
１）図１９のステップＳ６６、図２０のステップＳ８６で検索されたマーカのうち表示順最先のマーカを選ぶ。
２）割り当て対象のタッチ操作の開始位置座標５６３（図１０）とマーカの表示座標５７４（図１１）の距離に基づいて、例えば最も距離が近いマーカを選ぶ。
３）割り当て対象のタッチ操作の操作開始タイミング５６２とマーカの目標タイミング５２４（図９）との時間差に基づいて、例えば最も小さいマーカを選ぶ。
【符号の説明】
【０１７７】
１…基準線
２…マーカ
２Ｆ，２Ｆａ，２Ｆｂ…フリックマーカ
２Ｍ，２Ｍａ，２Ｍｂ…同時押しマーカ
２Ｓ，２Ｓａ，２Ｓｂ，２Ｓｃ…単独マーカ
３…指定方向表示
４…タイミングガイド
７ａ〜７ｄ…割当枠
８，８ａ，８ｂ，８ｃ…入力許容エリア
１０…重複エリア
１２…割当候補集合
２００…処理部
２０２…ゲーム演算部
２０４…ポインティング操作検出部
２０６…プレイ曲選択制御部
２０８…マーカ表示制御部
２１０…マーカ群入力評価部
２１２…評価待機制御部
２１４…優先割当制御御部
２１６…割当待機制御部
２３０…効果音出力制御部
５００…記憶部
５０２…ゲームプログラム
５１０…選択候補曲データセット
５１４…音楽データ
５２０…譜面データ
５２１…表示タイミング
５２２…マーカ種類
５２４…目標タイミング
５５０…プレイデータ
５６０…タッチ操作データ
５６２…操作開始タイミング
５６５…割当済フラグ
５７０…マーカ管理データ
５７１…表示タイミング
５７３…マーカ種類
５７６…入力許容エリア定義データ
５７７…割当操作ＩＤ
５７８…割当払い操作方向
５７９…完了フラグ
５８０…割当候補集合データ
５８２…割当確定期間タイマー
５８４…払い操作受付期間タイマー
１１００…サーバシステム
１１５０…制御基板
１１５１…ＣＰＵ
１１５２…ＩＣメモリ
１４００…業務用ゲーム装置
１４２０…タッチパネル
１４５０…制御基板
１４５１…ＣＰＵ
１４５２…ＩＣメモリ
【図１】
2018079391.tif 000003
【図２】
2018079391.tif 000004
【図３】
2018079391.tif 000005
【図４】
2018079391.tif 000006
【図５】
2018079391.tif 000007
【図６】
2018079391.tif 000008
【図７】
2018079391.tif 000009
【図８】
2018079391.tif 000010
【図９】
2018079391.tif 000011
【図１０】
2018079391.tif 000012
【図１１】
2018079391.tif 000013
【図１２】
2018079391.tif 000014
【図１３】
2018079391.tif 000015
【図１４】
2018079391.tif 000016
【図１５】
2018079391.tif 000017
【図１６】
2018079391.tif 000018
【図１７】
2018079391.tif 000019
【図１８】
2018079391.tif 000020
【図１９】
2018079391.tif 000021
【図２０】
2018079391.tif 000022