(57)【要約】【課題】タッチ操作したときにタッチパネルの平坦面に触れただけの感触とは異なる操作感を与えることができる遊戯装置を実現する。【解決手段】所与のタイミングでのタッチ操作を指示する複数種類のマーカをタッチパネルに順次表示制御し、表示されたマーカの種類に応じた振動形態でタッチ面を振動させる制御を行う。例えば、プレイ曲の８拍以上に渡ってタッチを維持することが要求されるホールドマーカについては、周期的に最大加振力ＶＰmaxが訪れるような振動形態で振動させる。【選択図】図８
2015066292.tif 000002
【特許請求の範囲】
【請求項１】
タッチ面が振動するタッチパネルの当該タッチ面へのタッチ操作を音楽に合わせるように行って楽しむゲームを実行する遊戯装置であって、
前記音楽を出力制御する音楽出力制御手段と、
所与のタイミングでのタッチ操作を指示する複数種類の指示マーカとして、少なくとも単発的なタッチ操作を指示するワンショット指示マーカと、継続的なタッチ操作を指示する継続指示マーカとの少なくとも２種類の指示マーカを前記タッチパネルに表示制御する表示制御手段と、
前記表示制御された指示マーカの種類に応じた振動形態で前記タッチ面を振動させる制御を行う振動制御手段と、
を備えた遊戯装置。
【請求項２】
前記振動制御手段は、前記指示マーカの種類に応じて、振動の大きさを変化させるパターンを変えて前記タッチ面を振動制御する、
請求項１に記載の遊戯装置。
【請求項３】
前記振動制御手段は、
前記ワンショット指示マーカに対応する振動形態を振動の大きさを単発的に変化させるパターンとして振動制御を行う第１の振動制御手段と、
前記継続指示マーカに対応する振動形態を振動の大きさを周期的に変化させるパターンとして振動制御を行う第２の振動制御手段と、
を有する、
請求項１又は２に記載の遊戯装置。
【請求項４】
タッチ操作がなされた場合に、前記表示制御された指示マーカの中から、当該タッチ操作に対応する指示マーカを判定する判定手段を更に備え、
前記振動制御手段は、タッチ操作がなされた場合に、前記判定手段により判定された指示マーカの種類に応じた振動形態での振動制御を開始する、
請求項３に記載の遊戯装置。
【請求項５】
前記継続指示マーカには、タッチ操作の開始目標タイミングおよび終了目標タイミングが定められており、
前記第２の振動制御手段は、当該継続指示マーカに定められた終了目標タイミングで振動制御を終了する、
請求項４に記載の遊戯装置。
【請求項６】
前記第２の振動制御手段は、前記継続指示マーカに対するタッチ操作がなされたタイミングと前記開始目標タイミングとの差に基づいて、振動の大きさを可変に制御する、
請求項５に記載の遊戯装置。
【請求項７】
前記第２の振動制御手段は、前記継続指示マーカに対するタッチ操作がなされたタイミングと前記開始目標タイミングとの差が、所与の大差条件を満たす場合に、所与の振動形態での振動制御を行う、
請求項５又は６に記載の遊戯装置。
【請求項８】
前記第２の振動制御手段は、前記継続指示マーカに定められた終了目標タイミングにおいて振動の大きさが所定の大きさに達するように振動制御し、当該終了目標タイミングの経過時に振動制御を終了する、
請求項５〜７の何れか一項に記載の遊戯装置。
【請求項９】
前記第２の振動制御手段は、振動制御の開始から前記終了目標タイミングまでの間において、振動の大きさを変化させる周期を調整する周期調整期間を少なくとも１回設け、当該終了目標タイミングにおいて振動の大きさが前記所定の大きさに達するように当該周期を調整する、
請求項８に記載の遊戯装置。
【請求項１０】
前記第２の振動制御手段は、前記音楽のリズムのＮ拍分以下（Ｎは自然数）の長さを前記周期調整期間として設ける、
請求項９に記載の遊戯装置。
【請求項１１】
前記第２の振動制御手段は、前記音楽のリズムにあった周期で振動の大きさを変化させる、
請求項３〜１０の何れか一項に記載の遊戯装置。
【請求項１２】
前記第２の振動制御手段は、前記音楽のリズムの３拍分、４拍分或いは８拍分の周期で振動の大きさを変化させる、
請求項１１に記載の遊戯装置。
【請求項１３】
前記振動制御手段は、前記表示制御手段によって表示制御された指示マーカの順に、当該指示マーカの種類に応じた振動形態で前記タッチ面を振動させる、
請求項１〜３の何れか一項に記載の遊戯装置。
【請求項１４】
タッチ面が振動するタッチパネルの当該タッチ面へのタッチ操作を音楽に合わせるように行って楽しむゲームをコンピュータに実行させるためのプログラムであって、
前記音楽を出力制御する音楽出力制御手段、
所与のタイミングでのタッチ操作を指示する複数種類の指示マーカとして、少なくとも単発的なタッチ操作を指示するワンショット指示マーカと、継続的なタッチ操作を指示する継続指示マーカとの少なくとも２種類の指示マーカを前記タッチパネルに表示制御する表示制御手段、
前記表示制御された指示マーカの種類に応じた振動形態で前記タッチ面を振動させる制御を行う振動制御手段、
として前記コンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、遊戯装置等に関する。
【背景技術】
【０００２】
マーカの表示をたよりにタイミングに合わせた操作入力を楽しむゲームのジャンルの一つに、いわゆる「音楽ゲーム」「音ゲー」「演奏ゲーム」「リズムゲーム」と呼ばれるジャンルがある（以下代表して「音楽ゲーム」という。）。例えば、特許文献１には、プレイヤーが、ラインに沿って流れ表示されるマーカ（操作入力の的）を、入力タイミングライン（評価位置）に到達するタイミングを見計らって操作入力するゲームが開示されている。マーカが入力タイミングラインに到達するタイミングは音楽のリズムと一致するように設定されているので、プレイヤーは音楽のリズムにのって操作入力すれば、高得点が得られるようになっている。
【０００３】
また、近年いわゆる「触覚フィードバック」「ハプティクス技術」の一つとして、タッチパネルへのタッチ操作に応じてタッチするプレイヤーの指に操作感を抱かせる触覚をフィードバックする技術が注目されている。例えば、デバイスとしては、画像表示可能なフラットパネルディスプレイの上に、タッチ操作位置に応じて信号を発するセンサ圧電セルレイヤーと、信号を受けて圧電効果により作動して触覚を提供するアクチュエータ圧電セルレイヤーとを、層状に設けたデバイスなどが考案されている（例えば、特許文献２を参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１８１６５０号公報
【特許文献２】特開２０１１−２４２３８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
近年、タッチパネルへのタッチ操作でプレイする音楽ゲームが多数開発されており、マーカに対するタッチ操作によってゲームプレイするスタイルが一般的に採用されている。そのため、こういった音楽ゲーム等のタッチ操作でプレイする遊戯装置において、触覚フィードバックの技術を用いた新しい興趣を提供したい。
【０００６】
本発明は、こうした事情を鑑みて考案されたものであり、タッチ操作したときにタッチパネルの平坦面に触れただけの感触とは異なる操作感を与えることができる遊戯装置を実現することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決するための第１の発明は、タッチ面（例えば、図４の透明板３２ａ）が振動するタッチパネルの当該タッチ面へのタッチ操作を音楽に合わせるように行って楽しむゲームを実行する遊戯装置であって、
前記音楽を出力制御する音楽出力制御手段（例えば、図１の制御基板５０、図１０の処理部２００、ゲーム演算部２０２、音楽出力制御部２０３、図１１の音楽データ５１２、図１５のステップＳ４）と、  所与のタイミングでのタッチ操作を指示する複数種類の指示マーカとして、少なくとも単発的なタッチ操作を指示するワンショット指示マーカ（例えば、図５のショットマーカ２Ｓ）と、継続的なタッチ操作を指示する継続指示マーカ（例えば、図５のホールドマーカ２Ｈ）との少なくとも２種類の指示マーカを前記タッチパネルに表示制御する表示制御手段（例えば、図１の制御基板５０、図１０の処理部２００、ゲーム演算部２０２、図１１の譜面データ５２０、図１５のステップＳ４）と、
前記表示制御された指示マーカの種類に応じた振動形態で前記タッチ面を振動させる制御を行う振動制御手段（例えば、図１の制御基板５０、図１０の処理部２００、ゲーム演算部２０２、振動制御部２１０、図１４の振動形態関数６３０、図１５のステップＳ２０、図１６のステップＳ１３０〜Ｓ１３６）と、を備えた遊戯装置（例えば、図１の遊戯装置１０）である。
【０００８】
第１の発明によれば、音楽の出力とともに画面表示される指示マーカの種類に応じた振動形態で前記タッチ面を振動させることで、タッチパネルの平坦面に触れただけの感触とは異なるいわゆる触覚フィードバック、ハプティクスを実現することができる。
【０００９】
タッチパネルに触れたときの触覚をより多彩にして、ゲームの興趣を高めることを望むならば、第２の発明として、前記振動制御手段が、前記指示マーカの種類に応じて、振動の大きさを変化させるパターンを変えて前記タッチ面を振動制御する（例えば、図６及び図７で示す加振力の違い。図１６のステップＳ１３１〜Ｓ１３６）、第１の発明の遊戯装置を構成すると好適である。
【００１０】
更には、第３の発明として、前記振動制御手段は、前記ワンショット指示マーカに対応する振動形態を振動の大きさを単発的に変化させるパターン（例えば、図６に示すパターン）として振動制御を行う第１の振動制御手段（例えば、図１０の第１振動制御部２１１）と、前記継続指示マーカに対応する振動形態を振動の大きさを周期的に変化させるパターンとして振動制御を行う第２の振動制御手段（例えば、図１０の第２振動制御部２１２）と、を有する、第１又は第２の発明の遊戯装置を構成することができる。
【００１１】
また更には、第４の発明として、タッチ操作がなされた場合に、前記表示制御された指示マーカの中から、当該タッチ操作に対応する指示マーカを判定する判定手段（例えば、図１０のタッチ対象マーカ判定部２０６、図１５のステップＳ１４）を更に備え、前記振動制御手段が、タッチ操作がなされた場合に、前記判定手段により判定された指示マーカの種類に応じた振動形態での振動制御を開始する、第３の発明の遊戯装置を構成することができる。
【００１２】
第５の発明は、前記継続指示マーカには、タッチ操作の開始目標タイミングおよび終了目標タイミングが定められており、前記第２の振動制御手段は、当該継続指示マーカに定められた終了目標タイミングで振動制御を終了する、第４の発明の遊戯装置である。
【００１３】
第５の発明によれば、終了目標タイミングを、触覚を通じてプレイヤーに知らせることができる。つまり、ゲームプレイのガイド機能を果たすことができる。
【００１４】
第６の発明は、前記第２の振動制御手段が、前記継続指示マーカに対するタッチ操作がなされたタイミングと前記開始目標タイミングとの差に基づいて、振動の大きさを可変に制御する（例えば、図２２のステップＳ１４２）、第５の発明の遊戯装置である。
【００１５】
第６の発明によれば、タッチ操作のタイミングのズレを触覚フィードバックでプレイヤーに伝えることができる。
【００１６】
第７の発明は、前記第２の振動制御手段が、前記継続指示マーカに対するタッチ操作がなされたタイミングと前記開始目標タイミングとの差が、所与の大差条件を満たす場合に、所与の振動形態での振動制御を行う（例えば、図２２のステップＳ１４４）、第５又は第６の発明の遊戯装置である。
【００１７】
第７の発明によれば、タッチ操作のタイミングが大きく外れた場合には、その旨を明確にプレイヤーに触覚フィードバックで伝えることができる。
【００１８】
もし、ガイド機能をより高めることを望むならば、第８の発明として、前記第２の振動制御手段が、前記継続指示マーカに定められた終了目標タイミングにおいて振動の大きさが所定の大きさに達するように振動制御し、当該終了目標タイミングの経過時に振動制御を終了する、第５〜第７の何れかの発明の遊戯装置を構成するとよい。
【００１９】
更には、第９の発明として、前記第２の振動制御手段は、振動制御の開始から前記終了目標タイミングまでの間において、振動の大きさを変化させる周期を調整する周期調整期間（例えば、図８の先頭累増パート６２）を少なくとも１回設け、当該終了目標タイミングにおいて振動の大きさが前記所定の大きさに達するように当該周期を調整する、第８の発明の遊戯装置を構成することができる。
【００２０】
更には、第１０の発明として、前記第２の振動制御手段が、前記音楽のリズムのＮ拍分以下（Ｎは自然数）の長さを前記周期調整期間として設ける、第９の発明の遊戯装置を構成するとしてもよい。
【００２１】
また、上記発明の作用効果を音楽ゲームにて得ようとするならば、第１１の発明として、前記第２の振動制御手段が、前記音楽のリズムにあった周期で振動の大きさを変化させる、第３〜第１０の何れかの発明の遊戯装置を構成すればよい。
【００２２】
更には、第１２の発明として、前記第２の振動制御手段が、前記音楽のリズムの３拍分、４拍分或いは８拍分の周期で振動の大きさを変化させる、第１１の発明の遊戯装置を構成するとしてもよい。
【００２３】
また、振動部の耐久性やメンテナンス性を考慮するならば、第１３の発明として、前記振動制御手段が、前記表示制御手段によって表示制御された指示マーカの順に、当該指示マーカの種類に応じた振動形態で前記タッチ面を振動させる、第１〜第３の何れかの発明の遊戯装置を構成すると好適である。
【００２４】
第１４の発明は、タッチ面が振動するタッチパネルの当該タッチ面へのタッチ操作を音楽に合わせるように行って楽しむゲームをコンピュータに実行させるためのプログラムであって、前記音楽を出力制御する音楽出力制御手段、所与のタイミングでのタッチ操作を指示する複数種類の指示マーカとして、少なくとも単発的なタッチ操作を指示するワンショット指示マーカと、継続的なタッチ操作を指示する継続指示マーカとの少なくとも２種類の指示マーカを前記タッチパネルに表示制御する表示制御手段、前記表示制御された指示マーカの種類に応じた振動形態で前記タッチ面を振動させる制御を行う振動制御手段、として前記コンピュータを機能させるためのプログラム（例えば、図１０のゲームプログラム５０２）である。
【００２５】
第１４の発明によれば、第１の発明と同様の作用効果を得ることができる。
【図面の簡単な説明】
【００２６】
【図１】遊戯装置を斜め前方より見た斜視外観図。
【図２】遊戯装置の側面図。
【図３】ハプティクスユニットの構成例を示す斜視外観図。
【図４】ハプティクスユニットの構成例を示す図３のＡ−Ａ断面図。
【図５】ゲーム画面の例を示す図。
【図６】ショットマーカへの指示操作と表示遷移、およびハプティクスについて説明するための図。
【図７】ホールドマーカへの指示操作と表示遷移、およびハプティクスについて説明するための図。
【図８】ホールドマーカへのハプティクスにおける振動形態の例を示す図。
【図９】ホールドマーカへのハプティクスにおける振動形態の例を示す図。
【図１０】遊戯装置の機能構成例を示す機能ブロック図。
【図１１】プレイ曲候補データのデータ構成の一例を示す図。
【図１２】プレイデータのデータ構成例を示す図。
【図１３】マーカ管理データのデータ構成例を示す図。
【図１４】マーカ別振動形態データのデータ構成例を示す図である。
【図１５】遊戯装置におけるハプティクス制御に係る処理の流れについて説明するためのフローチャート。
【図１６】図１５より続くフローチャート。
【図１７】振動形態関数生成処理の流れを説明するためのフローチャート。
【図１８】加振力算出関数決定処理の流れを説明するためのフローチャート。
【図１９】ホールドマーカへのハプティクスにおける振動形態の変形例を示す図。
【図２０】ホールドマーカへのハプティクスにおける振動形態の変形例を示す図。
【図２１】ホールドマーカへのハプティクスにおける振動形態の変形例を示す図。
【図２２】ハプティクス制御に係る処理の流れの変形例について説明するためのフローチャート。
【発明を実施するための形態】
【００２７】
〔第１実施形態〕
図１は、本実施形態における遊戯装置１０を斜め前方より見た斜視外観図である。
図２は、本実施形態における遊戯装置１０の側面図である。ただし、構造を理解し易いようにプレイヤーから見て右側のスピーカの支持構造の図示を省略している。
【００２８】
本実施形態の遊戯装置１０は、タッチ操作を用いて音楽ゲームを楽しむための業務用ビデオゲーム装置としてデザインされている。遊戯装置１０は、１）画面表示およびプレイヤーが操作を行う操作入力デバイスを具備する基部１２と、２）プレイヤーから見て基部１２の背部から上方へ向けて設けられた立設背部１４と、３）立設背部１４から操作ポジションにあるプレイヤー９の頭部付近へ向けて延設されたスピーカ支持部１６と、を備える。
【００２９】
立設背部１４は、その正面（プレイヤーから見れば目の前）に、複数の発光素子（例えば、発光ダイオード）を縦に配列した発光演出部１５を複数列備える。発光演出部１５は、ゲーム中の演出として発光制御される。
【００３０】
スピーカ支持部１６は、上面視略Ｕ字型または略コの字型を有し、凹部の底にあたる内側部で立設背部１４の背面に固定されている。そして、スピーカ支持部１６の上下方向の幅は、想定される平均的なプレイヤー像の頭部の寸法（上下方向の幅）よりも大きく設定されている。
【００３１】
本実施形態では、スピーカ支持部１６は、装置にとっての右側であるプレイヤーの頭部左方付近に左スピーカユニット１７Ｌを支持する左側部１６Ｌを備え、装置にとっての左側であるプレイヤーの頭部右方付近に右スピーカユニット１７Ｒを支持する右側部１６Ｒを備える。
【００３２】
左側部１６Ｌは、基部１２の上方にあって、操作するプレイヤーの頭部の左側方付近、より詳しくは左耳の左斜め前方位置に到るように構成され、前端部の内面側に左スピーカユニット１７Ｌを備える。同様に、右側部１６Ｒは、基部１２の上方にあって、操作するプレイヤーの頭部の右側方付近、より詳しくは右耳の右斜め前方位置に到るように構成され、前端部の内面側に右スピーカユニット１７Ｒを備える。
【００３３】
左スピーカユニット１７Ｌ及び右スピーカユニット１７Ｒは、左右反転の対称形をなしており、それぞれが操作ポジションにいるプレイヤーの左右の耳位置に向けられたスピーカを備えている。つまり、左スピーカユニット１７Ｌ及び右スピーカユニット１７Ｒは、プレイヤーの頭部を左右から挟み込むように配置されている。
【００３４】
基部１２は、筐体の主たる部位であって、画像表示デバイスと操作入力デバイスを兼ねたタッチパネル２０と、操作中のプレイヤーが寄りかかることのできる身体支持部２２と、プレイ対価の支払いをするための対価支払装置２４と、ウーハー（Woofer）２６と、制御基板５０とを備える。
【００３５】
図２に示すように、タッチパネル２０は、本実施形態では表示装置２１とハプティクスユニット３０とを備えて構成され、上辺が下辺よりも高くなるように、すなわち表示画面が装置前方斜め上方に向く姿勢で基部１２の上端部に設けられている。本実施形態では、プレイヤー９は、タッチパネル２０を斜め上から見ながら、表示画面へ向けてスライド操作を含むタッチ操作をしてプレイする。全画面を縦横に使って上下左右に両腕を伸ばしたり縮めたりしながらダイナミックにプレイするスタイルを想定しており、タッチパネル２０のサイズはできるだけ大きなサイズとする。１４インチ以上、望ましくは２４インチ〜３０インチとするが、これ以外のサイズとしてもよい。
【００３６】
表示装置２１は、例えばフラットパネルディスプレイなどの画像表示装置により実現され、本実施形態の音楽ゲームのゲーム画面を表示する。
【００３７】
図３及び図４は、本実施形態におけるハプティクスユニット３０の構成例を示す図であって、前者は斜視外観図、後者は図３のＡ−Ａ断面図に相当する。
ハプティクスユニット３０は、表示装置２１の表示面の上に設けられ、表示画面へ向けたタッチ操作の検出と、当該タッチ操作に伴う皮膚感覚のフィードバックいわゆる触覚フィードバックを実現する。
【００３８】
本実施形態のハプティクスユニット３０は、１）表示装置２１の画面サイズと同サイズ又は大きくて、表示画面の全域を覆うことができるタッチ位置検出部３２と、２）タッチ位置検出部３２の縁部を保持する保持部３３と、４）保持部３３を基部１２の内部フレーム１２ｆに防振支持する弾性部材３４と、５）保持部３３に固定された加振部３５と、を備える。
【００３９】
本実施形態のタッチ位置検出部３２は、表示装置２１の表示面直上に配置される透明板３２ａと、当該透明板３２ａの上に重ねられた額縁状の枠体３２ｂとで構成される。
【００４０】
透明板３２ａは、強化ガラスやアクリルなどの合成樹脂でできた略無色透明の平板体であって、プレイヤーがタッチ操作する指が触れる面となる。透明板３２ａは表示装置２１の画面サイズより大きな大きさを有する。
【００４１】
枠体３２ｂの内側には赤外光などを発する発光素子と光センサーとが対向配列されており、タッチ操作するプレイヤーの指が光を遮断することで位置を検出し、検出情報（あるいは位置座標）を制御基板５０へ出力することができる。
【００４２】
本実施形態では表示装置２１の画面サイズが１４インチ以上に設定されているので、コストと耐久性の観点からタッチパネル２０をこうした赤外線方式としているが、要求を満たすのであればその他の方式（例えば、抵抗膜方式や静電容量方式、表面弾性波方式など）のタッチパネルにより実現してもよいのは勿論である。
【００４３】
保持部３３は、タッチ位置検出部３２の縁部、すなわち透明板３２ａと枠体３２ｂとを、纏めて挟持する。本実施形態では、タッチ位置検出部３２の上下左右の四辺それぞれの縁部を保持する第１の保持部３３ａ〜第４の保持部３３ｄがあり（図３）、各保持部は辺沿いに長尺の平支持板３３ｆと屈曲した押さえ板３３ｇとで構成され、弾性部材３４の一端にとも締めで固定される（図４）。
【００４４】
加振部３５は、制御基板５０からの駆動信号を受けて作動する電気信号を機械的な振動に変換する素子である。例えば、偏心回転質量を回転させるモータやリニア共振アクチュエータなどの振動トランスデューサなどにより実現できる。
【００４５】
一つの加振部３５は、タッチ位置検出部３２でタッチ位置が検出されている間振動を発生させるように制御される。加振部３５が振動すると、その振動は第１の保持部３３ａを介してタッチ位置検出部３２に伝達される。つまり、加振部３５、保持部３３および透明板３２ａが一体的に振動し、タッチ操作したプレイヤーの指に、振動していない時の透明板３２ａに触れたときとは異なる皮膚感覚を与える。つまり、触覚フィードバックをもたらす。加振部３５で生じた振動は、タッチ位置検出部３２と保持部３３とを一体に振動させるが、弾性部材３４により減衰・抑制されるので基部１２の内部フレーム１２ｆにはほとんど伝わらないようになっている。
【００４６】
本実施形態では、タッチ位置検出部３２の上辺を保持する第１の保持部３３ａに、２つの加振部３５が左右の均等位置に取り付けられている。本実施形態の表示装置２１は比較的大きなサイズである。相対的に触覚フィードバックに必要な加振力が大きくなるが、単独の加振部３５で要求される加振力をまかなうよりも、こうして複数の加振部３５を用いて要求される加振力を分担して担わせることで、タッチする位置による触覚フィードバックの感触の違いを抑制することができる。
また、二つの加振部３５が同時に故障する可能性は極めて低く、何れか一方が故障しても他方が残る。一方が故障すると得られる触覚フィードバックは半分に弱まるが、機能が全く損なわれる訳では無く、仮にゲームプレイ中に故障が発生したとしてもそれなりにゲーム終了まで触覚フィードバックを維持できる。つまり、複数の加振部３５を用いることで故障に対する稼働性を高めることにもなる。
【００４７】
また、タッチ位置検出部３２の保持を辺別に独立させた構成を採用することで、加振部３５の故障修理にともない保持部３３を取り外す必要があったとしても、問題の加振部３５が固定されている保持部３３だけ外せばよくなり、タッチ位置検出部３２ごと取り外す必要は無い。よって、メンテナンス性をより高めることができる。
【００４８】
また、加振部３５をタッチ位置検出部３２の上辺の縁を保持する第１の保持部３３ａに固定する構成としたことで、加振部３５を収容するスペースをタッチパネル２０の上側に設ければ良くなった。本実施形態では、比較的大きな画面サイズを採用するので、タッチパネル２０も大きくなり透明板３２ａもそれに応じて大きく重くなる。結果として、加振部３５に要求される振動発生力も大きくなり大型化する。もし、加振部３５を第３の保持部３３ｃに固定する構成としたならば、加振部３５を収容するためのスペースがプレイヤーとタッチパネル２０との間となり、プレイヤーをタッチパネル２０から遠ざけてしまったり、操作性を損なうといった虞がある。しかし、加振部３５を収容するスペースをタッチパネル２０の上側に設けることができるのでその心配はない。
【００４９】
図１及び図２に戻って、身体支持部２２は、操作中のプレイヤーが腹部を当てて体の重さを部分的に支持させることができるように設定されている。具体的には、身体支持部２２は、基部１２の前端部に、より詳しくはタッチパネル２０の前方下端付近に固定されており、プレイヤーに当接する面がプレイヤーに向けて凸の曲面をなし、プレイヤーが体の重さを掛けても負担とならないように適当な弾性材で覆われている。そして、身体支持部２２のプレイヤーが当接する面（凸曲面の前端位置）は、基部１２よりもプレイヤー側へ突出するように設定されており、身体支持部２２の下方には、プレイヤーが身体支持部２２に腹部を当てた姿勢で立ったときにつま先を納めることのできる空間が確保される（図２）。
【００５０】
対価支払装置２４は、硬貨投入装置や、プリペイドカードや電子マネー機能を備えたＩＣカードなどのリーダーライターなどにより実現される。
【００５１】
ウーハー２６は、低音域を担当する第３のスピーカユニットである。ウーハー２６は、プレイヤーの下半身、より具体的には足下に向けて設置されており、重低音をプレイヤーの下半身に向けて放音することができる。
【００５２】
制御基板５０は、ＣＰＵ５１やＧＰＵ，ＤＳＰなどの各種マイクロプロセッサと、ＡＳＩＣ，ＶＲＡＭ，ＲＡＭ，ＲＯＭ等の各種ＩＣメモリ５２とが搭載されている。また、タッチパネルドライバＩＣ５４や、左スピーカユニット１７Ｌ・右スピーカユニット１７Ｒ・ウーハー２６への音声信号を生成し増幅出力する音声合成ＩＣ５５、加振部３５の駆動信号を生成する駆動信号生成ＩＣ５６、それらと外部との信号の入出力を制御するインターフェースＩＣ５７、通信回線に接続して外部装置とデータ通信をするための通信モジュール５８、などが搭載されている。これら制御基板５０に搭載されている各要素は、それぞれバス回路などを介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。そして、制御基板５０は、ＩＣメモリ５２に記憶しているプログラムやデータを読み出して演算処理を実行し、タッチパネル２０などからの操作入力に応じて遊戯装置１０の各部を制御してゲームプレイ可能にする。
【００５３】
［ゲーム内容の説明］
図５は、本実施形態におけるゲーム画面の例を示す図である。
ゲーム画面は、タッチパネル２０に表示される。本実施形態の音楽ゲームでは、プレイする音楽の再生とともに、そのリズムに合わせて基準線１に沿って画面に次々にマーカ２（２Ｓ，２Ｈ,…）が表示される。これがいわゆる「譜面」に当たる。プレイヤーは、放音される音楽のリズムに合わせて表示された順番にマーカ２（２Ｓ，２Ｈ，…）めがけてタッチパネル２０へタッチ操作してプレイする。タッチ操作は、マーカ２への「指示操作」である。
【００５４】
基準線１は、所定期間の間のマーカ２（２Ｓ，２Ｈ，…）が配置されてゆく方向性を定義するが、プレイヤーには見えない非表示の線である。例えば、直線や曲線、閉ループ、ジグザグなどの組み合わせで定義される。
【００５５】
マーカ２（２Ｓ，２Ｈ、…）は、プレイヤーへ所与のタイミングでのタッチ操作を指示する指示マーカであって、基準線１に沿って次々に出現・消滅するように表示される。図５の例では、基準線１は１本であるが、同時刻に複数の基準線１が存在してもよい。例えば、画面の左右にそれぞれ１本ずつあって、画面の左右で同時に複数のマーカ２が表示されるケースや、画面の左右で交互にマーカ２が次々に表示されるケースもあり得る。タッチパネル２０の大きな画面サイズと相まって、同時に片手でタッチ操作が不可能な位置に複数のマーカ２が表示されるケースもある。加えて、基準線１がプレイヤーには見えない上に、不規則に蛇行や折り返しをするので、マーカ２はあたかも画面の不特定位置から不特定方向に順次表示されるように見える。
【００５６】
各マーカ２（２Ｓ，２Ｈ、…）には、それぞれ要求されるタッチ操作の継続時間、換言するとそのマーカにタッチし続ける目標時間が予め設定されている。この時間を「要求操作時間」と呼ぶ。プレイする音楽の再生開始を基準とする要求操作時間が始まるタイミング、すなわちマーカに対してタッチ操作する目標タイミングを「開始目標タイミング」と呼ぶ。また、音楽の再生開始を基準とする要求操作時間が終わるタイミング、すなわち当該マーカに対するタッチ操作をやめる目標タイミングを「終了目標タイミング」と呼ぶ。
【００５７】
マーカ２は、それぞれに予め設定されている「開始目標タイミング」から所定時間前に基準線１の直上に出現する。または、適当に基準線１からの距離を与えられて、基準線１から少し離れた位置に出現する。そして、マーカ２にはそれぞれ第１タイミングガイド４が添付表示され、この第１タイミングガイド４がタッチ操作するべきタイミングをガイドする。
【００５８】
本実施形態では、第１タイミングガイド４は、対応するマーカ２の出現とともにその外周部に表示される。図５の例では、第１タイミングガイド４は弧状体を４つ１セットとして構成されているが、その他のデザインでも良い。
【００５９】
マーカ２とともに出現したばかりの第１タイミングガイド４は、マーカ２の外縁と所定距離（例えば画面上５ｃｍ以内の距離）を有する程度に大きく、時間経過とともに徐々に縮小表示され、対応するマーカ２の開始目標タイミングでちょうどマーカ２の外縁と重なるように表示制御される。図５の例では、図中右のショットマーカ２Ｓに付された第１タイミングガイド４（４ａ）が出現時の位置関係を示している。第１タイミングガイド４は、そこから時間経過とともに中央のホールドマーカ２Ｈに付された第１タイミングガイド４（４ｂ）の状態を経て、図中左のショットマーカ２Ｓに付された第１タイミングガイド４（４ｃ）のようにマーカ２と重なった状態に変化する。そして、第１タイミングガイド４は、開始目標タイミングが経過すると消去される。
【００６０】
開始目標タイミングは、基本的にはゲームプレイ開始とともに放音制御される音楽のメロディラインなどのリズムに一致させてある。プレイヤーは、次々に出現するマーカ２の位置から目に見えない基準線１を想像することで、次のマーカ２が出現する位置を予想しつつ、第１タイミングガイド４がマーカ２と重なるタイミングを見計らって指示操作してゲームプレイする。
【００６１】
各マーカ２には、プレイヤーには見えない内部処理上の入力許容エリア８が別途設定されている。そして、タッチ操作された位置が見かけ上のマーカ２から若干外れても入力許容エリア８の範囲内であれば当該マーカへの入力が行われたもの見なされる。
【００６２】
本実施形態の入力許容エリア８は、マーカ２とおおむね同じ形状を有し、マーカ２の表示サイズよりも大きく、第１タイミングガイド４の初期表示サイズとほぼ同じ大きさに設定されている。なお、入力許容エリア８の形状や大きさは適宜変更可能である。また、形状や大きさは固定に限らず、ゲーム難易度（例えば、プレイヤーがゲーム開始前に選択したり、プレイヤーのプレイ履歴に応じて自動的に選択される）に応じて、難易度が上がるほど小さくなると言った具合に可変としてもよい。
【００６３】
［マーカの種類とハプティクスについて］
本実施形態では、要求操作時間及び入力評価の要素の違いに応じて、ショットマーカ２Ｓとホールドマーカ２Ｈとの２種類のマーカが表示される。ショットマーカ２Ｓは、要求操作時間がプレイする音楽における３拍未満に設定されたマーカである。ホールドマーカ２Ｈは、要求操作時間がプレイする音楽における３拍以上に設定されている。
【００６４】
図６は、ショットマーカ２Ｓへの指示操作と表示遷移、および触覚フィードバック（ハプティクス）の振動形態について説明するための図である。
ショットマーカ２Ｓは、単発的なタッチ操作を指示するワンショット指示マーカである。開始目標タイミング（ｔｓ）から終了目標タイミング（ｔｅ）の時間、すなわち要求操作時間（ｔｃ）がプレイする音楽における“０拍以上３拍未満”に設定されており、開始目標タイミング（ｔｓ）から終了目標タイミング（ｔｅ）の間、ゲーム画面に表示される。そして、ショットマーカ２Ｓについては、開始目標タイミング（ｔｓ）とタッチ操作の開始タイミングすなわちタッチ検出タイミング（ｔ１）との時間差が入力評価の対象とされる。
【００６５】
ショットマーカ２Ｓへのタッチ操作が検出されると、タッチ検出タイミング（ｔ１）から当該タッチ操作が解除されるまでの間、制御基板５０はハプティクスユニット３０の加振部３５へショットマーカ２Ｓ用の駆動信号を出力する。本実施形態の加振部３５は、スピーカと同じ原理で振動を発生させる振動トランスデューサを用いるので、駆動信号は周波数と音量の２成分を有する。駆動信号の周波数で振動の細かさを決め、音量で振動の強さを決めることができる。
【００６６】
ショットマーカ２Ｓ用の駆動信号は、所定周期で、加振部３５で最大加振力ＶＰmaxが得られる音量を有するように設定されている。つまり、ショットマーカ２Ｓ用の触覚フィードバック（ハプティクス）の振動形態は均一な振動である。ショットマーカ２Ｓにタッチするやいなやプレイヤーの指先には、はっきりとした一定の強さで感じられる触覚フィードバックが実現されることになる。
【００６７】
なお、周波数は、２０Ｈｚ〜４０Ｈｚの範囲とする。２０Ｈｚ〜４０Ｈｚの周波数の範囲は、人が皮膚感覚として明瞭に振動を感じられる範囲といわれる８０Ｈｚ以下であり、かつ、人の可聴域下限に近い周波数である。よって、触覚フィードバック用に発生された振動は、音楽ゲームの操作感として好ましい皮膚感覚をもたらしつつも、それでいて聴覚的にノイズとして認識され難い。
【００６８】
本実施形態の触覚フィードバック（ハプティクス）は、開始目標タイミング（ｔｓ）から終了目標タイミング（ｔｅ）の期間で、タッチしている間だけ発生するように制御される。
図６では、タッチ検出タイミング（ｔ１）が開始目標タイミング（ｔｓ）よりやや遅れ、タッチ解除タイミング（ｔ９）が終了目標タイミング（ｔｅ）に一致した例を示しているが、このケースでは制御基板５０はタッチ検出タイミング（ｔ１）から終了目標タイミング（ｔｅ）の間駆動信号を出力する。仮に、タッチ検出タイミング（ｔ１）が開始目標タイミング（ｔｓ）より早くとも、制御基板５０は駆動信号を出力しない。また仮に、タッチ解除タイミング（ｔ９）が終了目標タイミング（ｔｅ）より後になっても、終了目標タイミング（ｔｅ）の時点で加振部３５への駆動信号の出力は打ち切られる。
【００６９】
図７は、ホールドマーカ２Ｈへの指示操作と表示遷移、および触覚フィードバック（ハプティクス）の振動形態について説明するための図である。
ホールドマーカ２Ｈは、継続的なタッチ操作を指示する継続指示マーカである。開始目標タイミング（ｔｓ）から終了目標タイミング（ｔｅ）、すなわち要求操作時間（ｔｃ）がプレイする音楽における“３拍以上”に設定されており、開始目標タイミング（ｔｓ）から終了目標タイミング（ｔｅ）の間、ゲーム画面に表示される。そして、ホールドマーカ２Ｈについては、タッチ操作を開始したタイミングとタッチ操作を解除したタイミングの２つのタイミングが入力評価の対象とされる。
【００７０】
ホールドマーカ２Ｈでは、表示開始から第１タイミングガイド４が表示され、ショットマーカ２Ｓと同様にして表示変化し、開始目標タイミング（ｔｓ）に達すると消える。その一方で、開始目標タイミング（ｔｓ）になるとホールドマーカ２Ｈに第２タイミングガイド５が添付表示される。本実施形態の第２タイミングガイド５は、表示色は異なるが第１タイミングガイド４と同様に表示遷移する表示体で、終了目標タイミング（ｔｅ）のときに丁度当該マーカの外縁と重なる大きさとなるように徐々に円環が縮まるように表示変化する。そして、第２タイミングガイド５は、終了目標タイミング（ｔｅ）に到ると、ホールドマーカ２Ｈともどもゲーム画面から消去される。
【００７１】
ホールドマーカ２Ｈについての触覚フィードバックも、ショットマーカ２Ｓの時と同様に開始目標タイミング（ｔｓ）から終了目標タイミング（ｔｅ）の期間で、タッチしている間だけ発生するように制御される。図７の例では、ホールドマーカ２Ｈへのタッチ操作が検出されると、タッチ検出タイミング（ｔ１）からタッチ解除タイミング（ｔ９）までの間、制御基板５０が駆動信号を出力し触覚フィードバック（ハプティクス）が実現されることになる。
【００７２】
ホールドマーカ２Ｈについての触覚フィードバックの振動形態は、曲に合わせた抑揚が生まれるように振動の強さの増減が含まれている。つまり、加振部３５で発生される加振力に強弱が生じるように設定される。
【００７３】
図８及び図９は、ホールドマーカ２Ｈについての触覚フィードバック（ハプティクス）の振動形態の例を示す図である。
図８に示すように、ホールドマーカ２Ｈについての触覚フィードバック（ハプティクス）の振動形態は、先頭累減パート６０（長破線で囲われた範囲）と、先頭累増パート６２（網掛け表示された範囲）と、タッチ操作されたホールドマーカ２Ｈの要求操作時間（ｔｃ）の長さに応じた単数又は複数のループパート６４（網掛け領域の右側の範囲）とを有する。
【００７４】
先頭累減パート６０は、タッチ検出タイミング（ｔ１）から所定期間Δｔ１２の間の加振力の変化部であって、時間経過に応じて加振力が徐々に小さくなる所定の「先頭累減パート加振力算出関数Ｆhd（ｔ）」によって定義される。
【００７５】
先頭累減パート加振力算出関数Ｆhd（ｔ）は、最初の加振力は最大加振力ＶＰmaxよりもやや小さく、所定期間Δｔ１２が経過したタイミング（ｔ２）における加振力が必須最小加振力ＶＰmin（指で触覚フィードバックを感じられる最小の加振力）に至るように定義されている。その間の加振力の累減度合いは適宜設定可能であるが、本実施形態ではコサインカーブ状とする。勿論、それ以外でもよく、例えば指数関数状としてもよい。
【００７６】
単数又は複数のループパート６４は、時間経過に逆行する範囲で規定すると、終了目標タイミング（ｔｅ）から先頭累増パート６２に至るまでの間の加振力の変化部であって、プレイする音楽における拍子やリズムに基づいて算出される所与の“基準ループ時間（ｔｒｐ）”を１単位として周期的に加振力を増減させる。
【００７７】
基準ループ時間（ｔｒｐ）は、プレイする音楽の拍子の整数倍、望ましくは２倍に相当する時間である。例えば、４／４拍子の音楽であれば４拍子の２倍の８拍とし、これに１分間当たりの拍数（ＢＰＭ：Beat Per Minutes）を乗じて求める。３／４拍子の音楽であれば３拍子の２倍の６拍に、ＢＰＭから求められる１拍当たりの時間（sec.）を乗じて求める。
【００７８】
ループパート６４は、タッチ操作されたホールドマーカ２Ｈの要求操作時間内いっぱいに設定される。図９（１）の例は、図８の例と同様にループパート６４は１つであるが、仮にこの例よりも要求操作時間（ｔｃ）が基準ループ時間（ｔｒｐ）もう１つ分長ければ、ループパート６４が終了目標タイミング（ｔｅ）から前に２つ連続して設けられることになり、図９（３）の例のようになる。つまり、ループパート６４は、ホールドマーカ２Ｈの要求操作時間（ｔｃ）に応じて１回以上繰り返されることになる。この返し回数を“ループ予定回数（Ｎｒ）”と呼ぶ。図９（１）の例ではループ予定回数（Ｎｒ）は「１」であるが、図９（３）では「２」となる。よって、最初のループパート６４は、基準ループ時間（ｔｒｐ）にループ予定回数（Ｎｒ）を乗じた時間だけ終了目標タイミング（ｔｅ）より前のタイミング（図８の例では、タイミング（ｔ４））より開始され、最後のループパート６４は終了目標タイミング（ｔｅ）で終了するように設定される。
【００７９】
図８に戻って、１つのループパート６４は、当該パートの先頭側に設けられる累減サブパート６６とその後側に設けられる累増サブパート６８とで構成される。
【００８０】
累減サブパート６６は、当該ループパートの開始タイミングから所定の累減期間ｔｄで加振力が徐々に小さくなる変化部である。この間の加振力は、累減サブパート加振力算出関数Ｆd（ｔ）により定義される。
【００８１】
累減サブパート加振力算出関数Ｆd（ｔ）は、当該サブパートの開始予定タイミング（図８の例ではタイミング（ｔ４））で最大加振力ＶＰmaxを通り、累減期間ｔｄ後の当該サブパートの終了予定タイミング（図８の例ではタイミング（ｔ６））で必須最小加振力ＶＰminに至る関数とする。例えば、負の比例関数としてもよいし、指数関数としてもよい。
【００８２】
累増サブパート６８は、累減サブパート６６の終了予定タイミングを開始予定タイミング（図８の例ではタイミング（ｔ６））とし、ループパート６４の開始タイミング（図８の例ではタイミング（ｔ４））から基準ループ時間（ｔｒｐ）経過後のタイミング（図８の例ではタイミング（ｔ８））を終了予定タイミングとし、加振力が時間経過とともに徐々に大きくなる変化部である。累増サブパート加振力算出関数Ｆi（ｔ）により定義される。
【００８３】
累増サブパート加振力算出関数Ｆi（ｔ）は、開始予定タイミング（ｔ６）で必須最小加振力ＶＰminを通り、終了予定タイミング（ｔ８）から所定時間Δ７８だけ前のタイミング（ｔ７）で最大加振力ＶＰmaxに達し、そこから終了予定タイミング（ｔ８）まで最大加振力ＶＰmaxを維持する関数とする。加振力が累増する部分（ｔ６→ｔ７）は、例えば比例関数としてもよいし、指数関数としてもよい。
【００８４】
先頭累増パート６２は、先頭累減パート６０の終了予定タイミング（ｔ２）から所定時間Δｔ２３だけ前のタイミングを開始予定タイミング（ｔ３）とし、１つ目のループパート６４の開始予定タイミング（ｔ４）を終了タイミングとして、加振力が時間経過とともに徐々に増加する変化部である。先頭累増パート加振力算出関数Ｆhi（ｔ）により定義される。
【００８５】
先頭累増パート加振力算出関数Ｆhi（ｔ）は、当該パートの開始予定タイミング（ｔ３）にて必須最小加振力ＶＰminを通り、当該パートの終了予定タイミング（ｔ４）より所定時間Δｔ４５だけ前のタイミング（ｔ５）にて最大加振力ＶＰmaxに達し、そこから終了予定タイミング（ｔ４）まで最大加振力ＶＰmaxを維持する関数とする。加振力が累増する部分（ｔ３→ｔ５）は、例えば比例関数としてもよいし、当該サブパートの開始予定タイミング（ｔ３）で漸近線（必須最小加振力ＶＰmin）まで所定値まで接近する指数関数としてもよい。
【００８６】
先頭累増パート６２は、先頭累減パート６０と１つ目のループパート６４との間にあり、両者をつなぐパートとなる。先頭累減パート６０がタッチ開始タイミング（ｔ１）を基点に所定期間Δｔ１２に設定され、ループパート６４が終了目標タイミング（ｔｅ）を基点に時間をさかのぼる方向に設定されるので、先頭累増パート６２はそれらの残り期間を埋めるように設定される。換言すると、振動形態における加振力の増減タイミングを調整するために設けられた、音楽のリズムのＮ拍分以下（Ｎは自然数）の長さを有する周期調整期間としての役割を担う。より具体的には、２拍子、３拍子、４拍子の音楽が多く親しまれているので、音楽のリズムの３拍分、４拍分或いは８拍分の周期で振動の大きさを変化させることになる。この周期の拍数である３、４或いは８をＮとすると好適であるが、周期拍数より小さい数をＮとしてもよい。そして、その結果、先頭累増パート６２は、開始予定タイミング（ｔ３）と終了予定タイミング（ｔ４）とが大きく変化し得る（ずれる可能性のある）パートとなる。
【００８７】
例えば、図９（１）と図９（２）の２つの例は、タッチ操作されたホールドマーカ２Ｈの要求操作時間（ｔｃ）の長さ違いであるが、基準ループ時間（ｔｒｐ）が同じケースである。前者の方が、後者よりも要求操作時間（ｔｃ）が短いため、その分の先頭累増パート６２が、後者よりも短い期間となっている。
【００８８】
このように、ホールドマーカ２Ｈについての触覚フィードバック（ハプティクス）の振動形態は、タッチしている間に振動の強さが時間とともに増減する。そして、最後の振動が増加しきったタイミングがそのホールドマーカ２Ｈへのタッチ操作を解除するべきタイミングとなっている。また、そこに至るまでの単数又は複数のループパート６４の周期的な加振力の増減は、基準ループ時間（ｔｒｐ）がプレイする音楽の拍子の整数倍となるように合わせてある。よって、ホールドマーカ２Ｈへのハプティクスは、音楽ゲームとして望ましいプレイ曲のリズム感に合致したフィーリングを提供することとなる。
【００８９】
また、所定時間Δｔ４５及びΔｔ７８の間は、最大加振力ＶＰmaxがある程度維持されるので、プレイヤーに最大加振力ＶＰmaxに達したことを明確に感じさせる効果を生む。
しかも、本実施形態では、所定時間Δ７８の長さを、ホールドマーカ２Ｈへのタッチ操作の終了タイミングの評価にて高評価が得られる判定期間（厳密には、当該ホールドマーカ２Ｈの終了予定タイミング（ｔｅ）から前後に設けられる判定期間の前側の判定期間）に合わせてある。よって、プレイヤーは最後のループパート６４の触覚が最高潮に上がったタイミングでタッチ操作を解除すれば、少なくとも終了タイミングについては高評価が得られることになる。これもまた、音楽ゲームとして望ましいプレイ曲のリズム感に合致したフィーリングを提供することとなり、ゲームの興趣を高める。
【００９０】
［機能ブロックの説明］
図１０は、本実施形態における遊戯装置１０の機能構成例を示す機能ブロック図である。
本実施形態の遊戯装置１０は、操作入力部１００と、処理部２００と、振動発生部３４０と、音出力部３５０と、画像表示部３６０と、通信部３７０と、記憶部５００とを備える。
【００９１】
操作入力部１００は、プレイヤーによって為された各種の操作入力に応じて操作入力信号を処理部２００に出力する。例えば、プッシュスイッチや、ジョイスティック、タッチパッド、トラックボール、加速度センサー、ジャイロ、ＣＣＤモジュール、などによって実現できる。図１のタッチパネル２０がこれに該当する。
【００９２】
処理部２００は、例えばＣＰＵやＧＰＵ等のマイクロプロセッサや、ＡＳＩＣ（特定用途向け集積回路）、ＩＣメモリなどの電子部品によって実現され、操作入力部１００や記憶部５００を含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部１００からの操作入力信号や各種データに基づいて各種の演算処理を実行して遊戯装置１０の動作を制御する。図１の例では制御基板５０がこれに該当する。
【００９３】
本実施形態における処理部２００は、ゲーム演算部２０２と、駆動信号生成部２４０と、音生成部２５０と、画像生成部２６０と、通信制御部２７０とを備える。
【００９４】
ゲーム演算部２０２は、ゲームの進行制御に係る各種処理を実行する。
例えば、
１）プレイする音楽（プレイ曲）をプレイヤーに選択させる処理、
２）選択された音楽の再生処理、
３）マーカ２の表示処理、
４）マーカ２へのタッチ操作の検出処理、
５）触覚フィードバック（ハプティクス）に係る処理、
６）各マーカ２へのタッチ操作の入力判定処理、
７）入力判定の結果に応じた得点の付与処理、
８）その他、計時やフラグの管理などを行うことができる。
【００９５】
具体的には、本実施形態のゲーム演算部２０２は、音楽出力制御部２０３と、表示制御部２０４と、タッチ位置検出部２０５と、タッチ対象マーカ判定部２０６と、振動制御部２１０と、入力評価部２２０と、得点付与部２２２と、を有する。
【００９６】
音楽出力制御部２０３は、プレイする音楽（プレイ曲）の再生処理を実行する。
表示制御部２０４は、プレイする音楽の再生に合わせてマーカ２などの譜面表示に係る表示制御を行う。
【００９７】
タッチ位置検出部２０５は、操作入力部１００から操作入力信号に基づいてタッチ操作された座標を、ゲーム画面の画像表示座標系で算出することができる。また、既に検出されているタッチ位置毎に時系列の変位を追跡することができる。図１の構成では、タッチパネルドライバＩＣ５４がこれに該当し、こうした機能は公知のタッチパネルによるタッチ位置の検出技術や、タッチ位置の追跡によるスライド操作の検出技術などを適宜利用することにより実現できる。
【００９８】
タッチ対象マーカ判定部２０６は、検出されたタッチ操作がゲーム画面に表示されているどのマーカ２に対応するかを判定する。換言すると、タッチ操作をマーカ２に割り当てる機能部である。
【００９９】
振動制御部２１０は、タッチ操作に応じた触覚フィードバックに係る制御、すなわちハプティクス制御を実行する。本実施形態では、第１振動制御部２１１と、第２振動制御部２１２とを有する。
【０１００】
第１振動制御部２１１は、ワンショット指示マーカであるショットマーカ２Ｓに対応する振動形態を、振動の大きさを単発的に変化させるパターンとして振動制御を行う。図６で示したパターンのハプティクス制御がこれに該当する。
【０１０１】
第２振動制御部２１２は、継続指示マーカであるホールドマーカ２Ｈに対応する振動形態を、振動の大きさを周期的に変化させるパターンとして振動制御を行う。具体的には、図８で示した各種振動パターン（先頭累減パート６０、先頭累増パート６２、単数または複数のループパート６４）を選択あるいは各振動パターンにおける加振部３５で発生させるべき加振力を算出するための加振力算出関数を作成する。そして、それぞれの開始予定タイミングから終了予定タイミングに基づいてその時々に割り当てられた振動パターンからそのタイミングにおける加振力を決定することで、タッチ検出タイミング（ｔ１）からタッチ解除タイミング（ｔ８）までの振動の大きさの変化、すなわち振動形態を定義する振動形態関数を決定する。そして、振動形態関数に基づいて振動の大きさ、加振部３５で発生させるべき加振力を決定し制御する。
【０１０２】
入力評価部２２０は、タッチ対象マーカ判定部２０６によりマーカ２と対応づけられたタッチ操作のタッチ検出タイミング（ｔ１）やタッチ解除タイミング（ｔ８）に基づいてマーカへの指示操作入力の善し悪しを評価する。
得点付与部２２２は、入力評価部２２０による評価結果に基づいて得点を付与する。
【０１０３】
駆動信号生成部２４０は、振動発生部３４０に触覚フィードバック用に振動を発生させるための駆動信号を生成する。本実施形態では、振動された透明板３２ａからノイズが生じないように２０Ｈｚ〜４０Ｈｚの範囲内の周波数の正弦波を、振動制御部２１０で決定された加振力が生み出される振幅に加工して出力する。この加工はいわゆるＡＭ変調に当たる。図１の例では、駆動信号生成ＩＣ５６がこれに該当する。
【０１０４】
振動発生部３４０は、駆動信号に従って定常的な振動を発生させる素子や装置である。振動の発生方法は特には問わない。偏心加重を回転させる方式や、共振現象や圧電現象を利用する方式など適宜利用可能である。図３や図４の加振部３５がこれに該当する。
【０１０５】
音生成部２５０は、例えばデジタルシグナルプロセッサ（ＤＳＰ）や、音声合成ＩＣなどのプロセッサ、音声ファイル再生可能なオーディオコーデック等によって実現され、ゲーム進行に応じて効果音やＢＧＭ、各種操作音の音信号を生成し、音出力部３５０に出力する。図１の例では音声合成ＩＣ５５がこれに該当する。
【０１０６】
音出力部３５０は、音生成部２５０から入力される音信号に基づいて効果音やＢＧＭ等を音出力する装置によって実現される。図１のスピーカユニット１７Ｌ，１７Ｒやウーハー２６がこれに該当する。
【０１０７】
画像生成部２６０は、例えば、ＧＰＵ、デジタルシグナルプロセッサ（ＤＳＰ）などのプロセッサ、ビデオ信号ＩＣ、ビデオコーデックなどのプログラム、フレームバッファ等の描画フレーム用ＩＣメモリ等によって実現される。画像生成部２６０は、ゲーム進行に応じて１フレーム時間（例えば１／６０秒）で１枚のゲーム画面の画像を生成し、生成したゲーム画面の画像信号を画像表示部３６０に出力する。
【０１０８】
画像表示部３６０は、画像生成部２６０から入力される画像信号に基づいて各種ゲーム画像を表示する。例えば、フラットパネルディスプレイ、ブラウン管（ＣＲＴ）、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。本実施形態では、図１のタッチパネル２０、図２の表示装置２１がこれに該当する。
【０１０９】
通信制御部２７０は、データ通信に係るデータ処理を実行し、通信部３７０を介して外部装置とのデータのやりとりを実現する。通信部３７０は、通信回線と接続して通信を実現する機器、例えば、無線通信機、モデム、ＴＡ（ターミナルアダプタ）、有線用の通信ケーブルのジャックや制御回路等によって実現される。図１の通信モジュール５８がこれに該当する。
【０１１０】
記憶部５００は、処理部２００に遊戯装置１０を統合的に制御させるための諸機能を実現するためのシステムプログラムや、遊戯実行すなわちゲームプレイに必要なプログラム、各種データ等を記憶する。また、処理部２００の作業領域として用いられ、処理部２００が各種プログラムに従って実行した演算結果や操作入力部１００から入力される入力データ等を一時的に記憶する。こうした機能は、例えばＲＡＭやＲＯＭなどのＩＣメモリ、ハードディスク等の磁気ディスク、ＣＤ−ＲＯＭやＤＶＤなどの光学ディスク、通信回線を介して接続される外部記憶装置などによって実現される。図１の制御基板５０が搭載するＩＣメモリ５２がこれに該当する。
【０１１１】
記憶部５００は、システムプログラム５０１と、ゲームプログラム５０２とを記憶している。システムプログラム５０１は、遊戯装置１０のコンピュータとしての入出力の基本機能を実現するためのプログラムである。ゲームプログラム５０２は、処理部２００が読み出して実行することによってゲーム演算部２０２としての機能を実現させるためのアプリケーションソフトウェアである。システムプログラム５０１の一部として組み込まれた構成でも良い。
【０１１２】
もし、本実施形態のゲームをオンラインゲームの形態で実現するならば、ゲームプログラム５０２は、オンラインゲームを実現する技術手法に応じて専用のクライアントプログラムとしてもよいし、ウェブブラウザプログラム及びインタラクティブな画像表示を実現するプラグインなどにより構成するとしてもよい。すなわち、ゲーム演算部２０２の機能の一部または全部をオンラインゲームサーバーにて実現する構成とすることとし、遊戯装置１０はゲームプレイの対価の支払いのための機能を備えたオンラインゲームのプレイヤー端末として機能させることも可能である。
【０１１３】
また、記憶部５００には、ゲームプレイ可能な音楽毎に用意された複数のプレイ曲候補データ５１０が予め記憶されている。勿論、これらは定期的に更新されるとしても良い。また、記憶部５００は、ゲームプレイに伴ってゲームの進行状況を記述する各種データをプレイデータ５５０として記憶する。その他、各種フラグ、経過時間のカウンタ、などの情報も適宜記憶することができる。
【０１１４】
図１１は、プレイ曲候補データ５１０のデータ構成の一例を示す図である。
プレイ曲候補データ５１０は、ゲームプレイ可能な音楽毎に用意され、当該音楽をプレイするために必要な定義データを格納する。１つのプレイ曲候補データ５１０は、例えば、プレイ時に再生される音楽の識別情報である音楽ＩＤ５１１と、音楽を再生するための音楽データ５１２と、音楽のテンポの速さを示すＢＰＭ５１３と、音楽の拍子５１４と、基準線設定データ５１５と、譜面データ５２０とを含む。勿論、当該プレイ曲に関するその他の情報も適宜対応づけて格納することもできる。
【０１１５】
基準線設定データ５１５は、基準線１（図５参照）を定義する。例えば、基準線１を表す基準線関数を格納する。基準線関数の定義の仕方は適宜可能であるが、例えば、（１）画面座標系の始点座標及び終点座標と、（２）始点座標と終点座標の間を結ぶ直線や曲線、屈曲線などを定義する関数と、で定義される。
【０１１６】
譜面データ５２０は、当該音楽の再生に合わせて表示するマーカに関する各種データを格納する。例えば、表示開始タイミング５２１と対応づけて、表示するマーカのマーカ種類５２２と、要求操作時間（ｔｃ）５２３と、開始目標タイミング（ｔｓ）５２４と、終了目標タイミング（ｔｅ）５２５とを対応づけて格納する。勿論、これら以外の情報も適宜格納することができる。
【０１１７】
表示開始タイミング５２１は、マーカ２を表示開始するタイミングを定義する。例えば、音楽再生開始から計時される経過時間、あるいはゲーム画面の表示開始から積算されるフレーム数などで定義される。
【０１１８】
マーカ種類５２２は、本実施形態ではショットマーカ２Ｓ、ホールドマーカ２Ｈの２種の何れかを格納する。勿論、これら以外のマーカ種類をゲームに登場させる場合には、それらも適宜設定することができる。
【０１１９】
要求操作時間（ｔｃ）５２３は、当該マーカに対するタッチ操作を維持する時間を定義する。本実施形態では拍子５１４に基づく「拍数」が格納される。勿論、拍数とＢＰＭ５１３とから求められる秒数などでもよい。
【０１２０】
開始目標タイミング（ｔｓ）５２４は、当該マーカへのタッチ操作を開始する目標タイミングを定義する。例えば、音楽再生開始から計時される経過時間、あるいはゲーム画面の表示開始から積算されるフレーム数などで定義される。入力評価の基準値の１つである。
【０１２１】
終了目標タイミング（ｔｅ）５２５は、当該マーカへのタッチ操作を終了する目標タイミングを定義する。例えば、音楽再生開始から計時される経過時間、あるいはゲーム画面の表示開始から積算されるフレーム数などで定義される。入力評価の基準値の１つである。なお、ショットマーカ２Ｓについては、本実施形態では終了目標タイミング（ｔｅ）５２５の設定は無いので、“設定無し”を意味する値（例えば、NULL）が設定される。
【０１２２】
なお、マーカ２の表示開始を、当該マーカ２の開始目標タイミング（ｔｓ）５２４から逆算して決定する構成とする場合には、表示開始タイミング５２１を省略することができる。
【０１２３】
図１２は、プレイデータ５５０のデータ構成例を示す図である。
プレイデータ５５０は、ゲーム進行状況を記述する各種データを格納する。例えば、プレイ音楽ＩＤ５５１と、フレーム数５５２と、経過時間５５３と、得点５５４と、タッチ操作データ５６０と、マーカ管理データ５７０と、ハプティクス管理データ５８０とを格納する。勿論、ゲーム内容等に応じて適宜これら以外のパラメータ値も格納することができる。
【０１２４】
プレイ音楽ＩＤ５５１は、ゲームプレイする音楽の音楽ＩＤ５１１（図１１）を格納する。
【０１２５】
フレーム数５５２および経過時間５５３は、それぞれゲーム開始からカウントされるゲーム画面の描画フレーム数であり、ゲーム開始から計時された時間である。マーカ２の表示開始タイミング５２１など各種タイミングを記述・判定するための基準となるパラメータ値である。
【０１２６】
得点５５４は、各マーカ２へ対応づけられた（割り当てられた）タッチ操作の入力評価結果の都度付与される点数の積算値である。ゲーム開始時の初期値は勿論「０」である。
【０１２７】
タッチ操作データ５６０は、タッチ操作が検出される都度作成される。入力評価の結果に応じて得点が付与されると抹消される。１つのタッチ操作データ５６０は、自動付与される固有のタッチＩＤ５６１と、タッチ検出タイミング（ｔ１）５６２と、タッチ位置座標５６３と、割当先マーカＩＤ５６４と、タッチ解除タイミング（ｔ９）５６５とを含む。勿論これら以外にも含めることができる。
【０１２８】
タッチ検出タイミング５６２には、新たなタッチ操作の開始が検出された時のフレーム数５５２または経過時間５５３が格納される。図６〜図８のタイミング（ｔ１）がこれに該当する。
【０１２９】
タッチ位置座標５６３には、新たなタッチ操作の開始が検出された時のタッチパネル２０の座標系の座標（＝画面座標系の座標）が格納される。
【０１３０】
割当先マーカＩＤ５６４は、当該タッチ操作が対応づけられたマーカの識別情報が格納される。マーカの識別情報は、マーカ管理データ５７０で画面表示されているマーカ２へ自動付与される固有の識別情報と対応する。
【０１３１】
タッチ解除タイミング５６５は、当該タッチ操作が解除された時のフレーム数５５２または経過時間５５３が格納される。図６〜図７のタイミング（ｔ９）がこれに該当する。
【０１３２】
図１３は、マーカ管理データ５７０のデータ構成例を示す図である。
マーカ管理データ５７０は、ゲーム画面に表示されている各マーカ２の状態を記述する各種データと、各マーカ２へのタッチ操作の対応関係（割り当ての結果）とが、新たなマーカ２がゲーム画面に表示される都度登録される。
具体的には、表示タイミング５７１と、マーカＩＤ５７２と、マーカ種類５７３と、表示座標５７４と、第１タイミングガイド制御データ５７５と、第２タイミングガイド制御データ５７６と、割当タッチＩＤ５７７と、を対応づけて格納する。勿論、これら以外のパラメータ値もマーカ別に対応づけて格納することができる。
【０１３３】
表示タイミング５７１には、マーカ２が表示された時点のフレーム数５５２または経過時間５５３が格納される。
マーカＩＤ５７２には、新たなマーカ２が表示される都度、当該マーカ固有の識別情報が自動生成され格納される。
マーカ種類５７３には、表示されるマーカのマーカ種類５２２（図１１）が格納される。
表示座標５７４には、マーカ２が表示されたゲーム画面の座標系座標値が格納される。
【０１３４】
第１タイミングガイド制御データ５７５および第２タイミングガイド制御データ５７６は、それぞれ当該マーカの第１タイミングガイド４および第２タイミングガイド５（図５）を制御するためのデータである。当該マーカの表示開始から逐次更新される。本実施形態では、いずれのタイミングガイドも円環状のデザインなので、その円環の半径を格納する。初期値は初期外径Ｒ０が格納され、表示遷移とともに最新の半径が格納される。図中の半径Ｒｓ２がこれに該当する。表示開始タイミング（ｔｓ）に達すると、マーカ外形Ｒmとなる。
【０１３５】
割当タッチＩＤ５７７は、当該マーカに対応付けされ割り当てられたタッチ操作のタッチＩＤ５６１（図１２）が格納される。初期状態は、“未定”を意味する所定値が設定される。
【０１３６】
図１２に戻って、ハプティクス管理データ５８０は、振動フィードバックを実行するための各種情報を格納する。例えば、ハプティクス制御の対象とされるマーカのマーカＩＤ５７２を格納するハプティクス対象マーカＩＤリスト５８１と、総合加振力５８２と、ハプティクス制御の対象とされるマーカ別に生成されるマーカ別振動形態データ６００とを含む。勿論、これら以外にも含めることができる。
【０１３７】
ハプティクス対象マーカＩＤリスト５８１は、初期状態は登録無しとされ、画面表示されているマーカ２にタッチ操作が割り当てられると当該マーカのマーカＩＤ５７２が追加登録される。
【０１３８】
総合加振力５８２は、その瞬間に振動発生部３４０で発生させる加振力の強さを示す。同時に複数のマーカ２についてハプティクス制御が行われる場合には、マーカ別のその瞬間の加振力が合算、または大きい方の加振力が選択されることになる。
【０１３９】
マーカ別振動形態データ６００は、そのマーカの振動形態を作成するためのパラメータ値や振動形態の元になる各種加振パターンを定義するデータを格納する。
例えば、図１４に示すように、１つのマーカ別振動形態データ６００は、
割当マーカＩＤ６０１と、
基準ループ時間（ｔｒｐ）６０２と、
ループ予定回数（Ｎｒ）６０３と、
先頭累減パート開始予定タイミング（ｔ１）６１１と、
先頭累減パート終了予定タイミング（ｔ２）６１２と、
先頭累増パート開始予定タイミング（ｔ３）６１３と、
先頭累増パート終了予定タイミング（ｔ４）６１４と、
先頭累増パート最大加振力到達目標タイミング（ｔ５）６１５と、
累増サブパート開始予定タイミング（ｔ６）６１６と、
累増サブパート最大加振力到達目標タイミング（ｔ７）６１７と、
累増サブパート終了予定タイミング（ｔ８）６１８と、
終了目標タイミング（ｔｅ）６１９と、を格納する。
【０１４０】
また、先頭累減パート加振力算出関数Ｆhd（ｔ）６２０と、
先頭累増パート加振力算出関数Ｆhi（ｔ）６２２と、
累減サブパート加振力算出関数Ｆd（ｔ）６２４と、
累増サブパート加振力算出関数Ｆi（ｔ）６２６と、
振動形態関数６３０と、を含む。
【０１４１】
割当マーカＩＤ６０１は、当該マーカ別振動形態データが適用されるマーカＩＤを格納する。
【０１４２】
振動形態関数６３０は、割当マーカＩＤ６０１のマーカ２に対応する振動形態すなわち、プレイ曲の再生開始からの経過時間（または経過フレーム数）を変数としてその時々の振動の強さ、加振力を定義する関数である。
具体的には、振動形態関数６３０は、
１）先頭累減パート開始予定タイミング（ｔ１）６１１〜先頭累増パート開始予定タイミング（ｔ３）６１３における先頭累減パート加振力算出関数Ｆhd（ｔ）６２０と、
２）先頭累増パート開始予定タイミング（ｔ３）６１３〜先頭累減パート終了予定タイミング（ｔ２）６１２における先頭累減パート加振力算出関数Ｆhd（ｔ）６２０と先頭累増パート加振力算出関数Ｆhi（ｔ）６２２のうち、算出される加振力が大きい方と、
３）先頭累減パート終了予定タイミング（ｔ２）６１２〜先頭累増パート終了予定タイミング（ｔ４）６１４の先頭累増パート加振力算出関数Ｆhi（ｔ）６２２と、
４）ループ予定回数（Ｎｒ）６０３だけの累減サブパート加振力算出関数Ｆd（ｔ）６２４および累増サブパート加振力算出関数Ｆi（ｔ）６２６のセットの繰り返しと、によって合成される。つまり、ハプティクス対象とされるマーカ２についてのその瞬間瞬間の加振力は、振動形態関数６３０により決定できる。
【０１４３】
［動作の説明］
次に、本実施形態における遊戯装置１０の動作について説明する。
図１５〜図１６は、遊戯装置１０におけるハプティクス制御に係る処理の流れについて説明するためのフローチャートである。当該フローチャートの一連の処理の流れは、処理部２００がシステムプログラム５０１を実行した状態で、ゲームプログラム５０２を実行することにより実現される。
【０１４４】
遊戯装置１０の処理部２００は、先ずプレイ曲の選択処理を実行する（ステップＳ２）。例えば、プレイ曲候補データ５１０（図１１）から音楽ＩＤ５１１を読み出して、タッチパネル２０で曲別にリスト表示し、リストへのタッチ操作に応じてプレイする曲を決定する。選曲の結果は、プレイデータ５５０のプレイ音楽ＩＤ５５１（図１２）に格納される。
【０１４５】
次に、処理部２００はゲームを開始する（ステップＳ４）。
例えば、先に選曲されたプレイ曲の音楽データ５１２の再生処理を開始し、スピーカユニット１７Ｌ，１７Ｒおよびウーハー２６から放音させる。また、タッチパネル２０にマーカ２を表示／消去させる制御を開始し、新たにマーカ２を表示する毎にマーカ管理データ５７０に当該マーカを登録し、第１タイミングガイド４や第２タイミングガイド５の表示遷移の制御を開始する。また、音楽の再生開始とともに、フレーム数５５２のカウントならびにプレイ開始時間からの経過時間５５３の計時を開始する。そして、ゲームが開始されると、処理部２００は所定の制御サイクルで、ゲームが終了するまでステップＳ１０〜Ｓ２０２（図１６）を繰り返す。
【０１４６】
タッチパネル２０への新たな接触すなわちタッチ操作が検出されると（ステップＳ１０のＹＥＳ）、処理部２００は新たにタッチ操作データ５６０（図１２）を生成する（ステップＳ１２）。
【０１４７】
次いで、処理部２００は、タッチ操作対象マーカの判定処理を実行し、当該新たに検出されたタッチ操作が画面に表示されているどのマーカ２に対して行われたかを判定する（ステップＳ１４）。つまり、タッチ操作とマーカとの対応づけ、マーカへの割り当てを決定する。対応づけされたマーカ２のマーカ管理データ５７０の割当タッチＩＤ５７７には、新たに生成されたタッチ操作データ５６０のタッチＩＤ５６１が設定され、当該タッチ操作データ５６０の割当先マーカＩＤ５６４に、対応づけられたマーカのマーカＩＤ５７２が設定される。
【０１４８】
次いで、処理部２００は、新たに対応づけされたマーカ２のマーカＩＤ５７２を、ハプティクス対象マーカＩＤリスト５８１（図１２）に追加登録する（ステップＳ１６）。そして、当該マーカがホールドマーカ２Ｈであれば（ステップＳ１８のＹＥＳ）更に振動形態関数生成処理を実行する（ステップＳ２０）。
【０１４９】
図１７は、振動形態関数生成処理の流れを説明するためのフローチャートである。
同処理において、処理部２００は先ず、新たにマーカ別振動形態データ６００（図１４）を生成し初期化する（ステップＳ４０）。具体的には、割当マーカＩＤ６０１には、今回新たにタッチ操作と対応づけされたマーカのマーカＩＤ５７２を格納する。それ以外のパラメータ値については未定とする。
【０１５０】
次に、処理部２００は、マーカ別振動形態データ６００に、所定の先頭累減パート加振力算出関数Ｆhd（ｔ）６２０を設定する（ステップＳ４２）。そして、基準ループ時間（ｔｒｐ）６０２を決定し（ステップＳ４４）、ループ予定回数（Ｎｒ）６０３を算出する（ステップＳ４６）。そして、処理部２００は加振力算出関数決定処理を実行する（ステップＳ４８）。
【０１５１】
図１８は、加振力算出関数決定処理の流れを説明するためのフローチャートである。
同処理において、処理部２００は先ず、先頭累減パート開始タイミング（ｔ１）６１１に、ステップＳ１０で新たに検出されたタッチ操作のタッチ検出タイミング（ｔ１）５６２を複製して設定する（ステップＳ６０）。
【０１５２】
次に、先頭累減パート開始予定タイミング（ｔ１）に所定時間Δｔ１２を加算して、先頭累減パート終了予定タイミング（ｔ２）６１２を算出し（ステップＳ６２）、更にこの先頭累減パート終了予定タイミング（ｔ２）から所定時間Δｔ２３だけ前のタイミングすなわち先頭累増パート開始予定タイミング（ｔ３）６１３を算出する（ステップＳ６４）。
【０１５３】
次に、処理部２００は、譜面データ５２０（図１１）を参照して、ステップＳ１４でタッチ操作と対応づけされたマーカ２の終了目標タイミング（ｔｅ）５２５を読み出して、マーカ別振動形態データ６００の終了目標タイミング（ｔｅ）６１９に複製し設定する（ステップＳ６６）。
【０１５４】
次に、処理部２００は、終了目標タイミング（ｔｅ）から、基準ループ時間（ｔｒｐ）にループ予定回数（Ｎｒ）乗じた時間だけ前のタイミングを算出して、先頭累増パート終了予定タイミング（ｔ４）６１４を決定する（ステップＳ６８）。そして、先頭累増パート終了予定タイミング（ｔ４）から所定時間Δｔ４５だけ前のタイミングを算出して、先頭累増パート最大加振力目標到達タイミング（ｔ５）６１５を決定する（ステップＳ７０）。
【０１５５】
次に、処理部２００は、先頭累増パート終了予定タイミング（ｔ４）に所定の累減期間ｔｄを加算して、累減サブパート６６の終了予定タイミングも兼ねる累増サブパート開始予定タイミング（ｔ６）６１６を決定する（ステップＳ７２）。次いで、累増サブパート開始予定タイミング（ｔ６）に所定の累減期間ｔｉを加算して累減サブパート最大加振力到達目標タイミング（ｔ７）６１７を決定する（ステップＳ７４）。そして、終了目標タイミング（ｔｅ）から、１回少ないループ予定回数（Ｎｒ）を基準ループ時間（ｔｒｐ）に乗じた値を減算して、増減サブパート終了予定タイミング（ｔ８）６１８を決定する（ステップＳ７６）。
【０１５６】
次に、処理部２００は、先頭累増パート加振力算出関数Ｆhi（ｔ）６２２、累減サブパート加振力算出関数Ｆd（ｔ）６２４、累増サブパート加振力算出関数Ｆi（ｔ）６２６を順次算出し（ステップＳ８０〜Ｓ８４）、加振力算出関数決定処理を終了する。
【０１５７】
図１７のフローチャートに戻って、処理部２００は振動形態関数６３０を決定する（ステップＳ１００）。具体的には、１）先頭累減パート開始タイミング（ｔ１）〜先頭累増パート開始予定タイミング（ｔ３）の先頭累減パート加振力算出関数Ｆhd（ｔ）６２０と；２）先頭累増パート開始予定タイミング（ｔ３）〜先頭累減パート終了予定タイミング（ｔ２）における先頭累減パート加振力算出関数Ｆhd（ｔ）６２０と先頭累増パート加振力算出関数Ｆhi（ｔ）６２２のうち、算出される加振力が大きい方と；３）先頭累減パート終了予定タイミング（ｔ２）〜先頭累増パート終了予定タイミング（ｔ４の先頭累増パート加振力算出関数Ｆhi（ｔ）６２２と；４）ループ予定回数（Ｎｒ）だけの累減サブパート加振力算出関数Ｆd（ｔ）６２４および累増サブパート加振力算出関数Ｆi（ｔ）６２６のセットの繰り返しと；を順次つなげて合成する。すなわち、タッチ検出タイミング（ｔ１）〜終了目標タイミング（ｔｅ）の範囲で、その時々のタイミングに対応する加振力算出関数により算出される加振力の値のうち最大値が得られる関数を求める。そして、振動形態関数生成処理を終了する。
【０１５８】
図１５のフローチャートに戻って、処理部２００は、タッチ操作の解除を検出すると（ステップＳ１００のＹＥＳ）、タッチ解除が検出されたマーカ２をハプティクス対象マーカＩＤリスト５８１（図１２）から登録抹消し（ステップＳ１０２）、当該マーカのマーカ別振動形態データ６００を抹消（ステップＳ１０４）する。
【０１５９】
図１６のフローチャートに移って、処理部２００は、今回の制御サイクルにおいて発生させるべき振動の強さを決定するために、先ず総合加振力５８２（図１２）を「０」に初期化する（ステップＳ１３０）。
【０１６０】
次いで、処理部２００は、ハプティクス対象マーカＩＤリスト５８１に登録されているショットマーカ２Ｓごとに個別の加振力を算出する（ステップＳ１３２）。本実施形態では、ショットマーカ２Ｓについてのハプティクス制御は、加振力を最大加振力ＶＰmaxの一定に保った連続加振とするので、実質的には最大加振力ＶＰmaxとなる。勿論、ショットマーカ２Ｓについてのハプティクス制御も、ホールドマーカ２Ｈについてのハプティクス制御と同様に加振力を時間経過に応じて可変する構成も可能であり、その場合は、予め定めたショットマーカ２Ｓ用の振動形態関数に基づいて個別の加振力を算出するものとする。
【０１６１】
次に処理部２００は、ハプティクス対象マーカＩＤリスト５８１に登録されているホールドマーカ２Ｈごとに、それぞれの振動形態関数６３０から当該制御サイクルにおける個別の加振力を算出する（ステップＳ１３２）。そして、ステップＳ１３１とステップＳ１３２で算出された個別の加振力を合算して総合加振力５８２を更新する（ステップＳ１３４）。或いは、ステップＳ１３１とステップＳ１３２で算出された個別の加振力のうち最も大きい値を選択して総合加振力５８２としてもよい。
【０１６２】
これで、今回の制御サイクルにおいて発生させるべき振動の強さを決定したことになる。よって、次に処理部２００は、総合加振力５８２の値に応じた振動の強さが得られるように、所定周波数（本実施形態では２０Ｈｚ〜４０Ｈｚの範囲の固定周波数）の駆動信号を生成して加振部３５（図３）へ出力する（ステップＳ１３６）。これで、タッチパネル２０にてハプティクスが実現される。
【０１６３】
次に、処理部２００は入力評価処理を実行して、タッチ操作のタイミングの善し悪しを評価し（ステップＳ１３８）、その評価結果に応じた点数を得点５５４（図１２）に加算する（ステップＳ１９８）。そして、タッチ解除されたタッチ操作データ５６０を抹消する（ステップＳ２００）。
【０１６４】
次に、処理部２００はゲーム終了条件を満たしているか判定する（ステップＳ２００）。
ゲーム終了条件は適宜設定可能であるが、本実施形態ではプレイ曲の再生が終了すると肯定判定する。
【０１６５】
もし、ゲーム終了条件を満たしていなければ（ステップＳ２００のＮＯ）、ステップＳ１０に戻り次の制御サイクルに移る。
もし、ゲーム終了条件を満たしていれば（ステップＳ２００のＹＥＳ）、ゲーム終了をつげる演出を表示させるなどのゲーム終了処理を実行して（ステップＳ２０２）、一連の処理を終える。
【０１６６】
以上、本実施形態によれば、タッチ操作したときにタッチパネルの平坦面に触れただけの感触とは異なる操作感を与えることができる新たな興趣を創出した遊戯装置１０を実現することができる。
【０１６７】
また、比較的タッチしている時間が短いショットマーカ２Ｓについては、強く一定の振動でタッチパネル２０を振動させることができるので、切れが良く爽快感ある触覚フィードバックをプレイヤーに与えることができる。また、比較的タッチしている時間が長くなるホールドマーカ２Ｈについては、振動のピークがそのマーカへのタッチ操作の終了目標タイミングに合致し、かつ、プレイ曲の拍子と同期するようにさせることができる。ホールドマーカ２Ｈをタッチするべき時間が長ければ長いほど、振動の大きさの増減はプレイ曲の拍子と同期する波状感覚として指先から伝わる。よって、プレイ曲と共鳴しているような心地よい触覚フィードバックをプレイヤーに与えることができる。
こうした、プレイヤーがタッチしたマーカの種類に応じて異なる態様でタッチパネル２０を振動させることにより、触覚フィードバックは実に多くの多様性をもつことになり、ゲームの興趣をひときわ高める効果を生む。
【０１６８】
〔変形例〕
以上、本発明を適用した実施形態について説明したが、本発明の適用形態はこれに限定されるものではなく、適宜構成要素の追加・省略・変更を施すことができる。
【０１６９】
［その１］
例えば、上記実施形態では遊戯の例としてビデオゲームの音楽ゲームを挙げたが、その他のジャンルのゲームとすることができる。更には、遊戯のカテゴリーはビデオゲームに限らず、パチンコやパチスロ、スロットマシーン、メダルゲーム、カラオケなどとすることもできる。
【０１７０】
［その２］
また、上記実施形態ではタッチパネル２０へのタッチを検出したのに応じて加振部３５が駆動するように構成されているが、タッチの有無にかかわらず駆動するように構成することもできる。
具体的には、譜面データ５２０（図１１）にて、表示開始タイミング５２１と対応づけて予め“専用振動形態データ”を格納しておく。専用振動形態データは、そのマーカ２の開始目標タイミング（ｔｓ）から終了目標タイミング（ｔｅ）までに適用される振動形態を定義するデータである。ホールドマーカ２Ｈの専用振動形態データは、上記実施形態における振動形態関数６３０と同様の特性を備えており、ゲーム制作段階で事前に定義され、譜面データ５２０にて各マーカ２に対応づけて格納されている。そして、マーカ２が出現されると、対応する専用振動形態データに基づくマーカ個別の加振力を算出して、総合加振力５８２を算出して駆動信号を生成・出力すればよい。
【０１７１】
［その３］
また、上記実施形態の振動制御部２１０に、振動形態関数６３０の一部に終了目標タイミングを予告するための“終了予告低加振部”を設定する機能部を追加することができる。
具体的には、例えば、図１９に示すように、単数又は複数のループパート６４のうち、最も終了目標タイミング（ｔｅ）寄りのループパート６４について、累増サブパート６８の最大加振力ＶＰmaxの期間（Δｔ７８）に、断続的に加振力が最大加振力ＶＰmaxを下回る加振力の“谷”を設けて終了予告低振動部６９とする。
【０１７２】
［その４］
また、上記実施形態では、加振部３５の振動の周波数は一定として説明したが、適宜周波数を変更する構成としてもよい。
例えば、図２０に示すように、必須最小加振力ＶＰminの時には２０Ｈｚ、最大加振力ＶＰmaxの時には４０Ｈｚとし、その間は加振力と同様に振動形態関数６３０に従って周波数を増減させる構成としてもよい。
【０１７３】
［その５］
また、上記実施形態では、ホールドマーカ２Ｈについての振動形態を決定する際、所定時間Δｔ４５及びΔｔ７８を固定としたが（図８参照）、可変とすることもできる。例えば、振動制御部２１０に、プレイする音楽の拍子又はリズムに基づいて、そのＮ倍又はＮ分の１（ただし、Ｎは自然数）の長さを算出し、所定時間Δｔ４５及びΔｔ７８として設定する機能部を追加すればよい。
【０１７４】
［その６］
また、上記実施形態では、ループパート６４はその最後に必ず最大加振力ＶＰmaxに達する構成としたがこれに限らない。
例えば、ループ予定回数（Ｎｒ）が複数の場合には、１回目のループパート６４のループ末尾の加振力を最大加振力ＶＰmaxの７０％とし、ループパート６４が繰り返される毎に徐々にパート末尾の加振力が上昇し、最後のループパート６４で最大加振力ＶＰmaxに達するように構成してもよい。
また例えば、ステップＳ１３６にて駆動信号の出力を決定する際、プレイ曲の終了所定時間前に達してからは、総合加振力の本来の値をプレイ曲の終了所定時間に近づくほど小さくなるように補正し、補正後の値で駆動信号を決定するとしてもよい。この場合、プレイ曲の最後にホールドマーカ２Ｈへタッチ操作する場面で、当該ホールドマーカ２Ｈの触覚フィードバックをプレイ曲の終了に合わせてフェードアウトさせることができる。
【０１７５】
［その７］
また、振動形態関数の求め方は上記実施形態の例に限らず、その他の手法で求めるとしてもよい。
例えば、図２１（１）に示すように、プラスピークの１つを終了目標タイミング（te）に合わせるようにして、少なくとも１周期分を含むように周期関数を求めることで、振動形態関数６３０を求めても良い。この場合、当該周期関数のプラスピーク値は、最大加振力ＶＰmaxよりもやや大きい値として、のちに最大加振力ＶＰmaxを上限閾値として補正する（クリップする）と好適である。あるいは、図２１（２）に示すように、もっと簡単に線形関数の組み合わせとして振動形態関数６３０を求めてもよい。
【０１７６】
［その８］
また、上記実施形態に入力評価の結果に応じて加振部３５で発生させる振動を可変する構成を追加することもできる。
例えば、図２２は当該構成を適用した場合に、図１６に換えて適用可能なフローチャートである。図１６のフローチャートと比べるとステップＳ１３６が省略され、代わりにステップＳ１４０〜Ｓ１４４を実行する。
【０１７７】
例えば、ステップＳ１３８では、開始目標タイミング５２４とタッチ検出タイミング５６２とのズレや、終了目標タイミング５２５とタッチ解除タイミング５６５とのズレが、小さいほど高評価とするように、高い方から順に「ＪＵＳＴ」「ＧＯＯＤ」「ＢＡＤ」の３段階のうち何れかを決定するものとする。
【０１７８】
入力評価結果が「ＢＡＤ」でなければ（ステップＳ１４０のＮＯ）、処理部２００は総合加振力を入力評価処理の結果に応じた倍率を乗じて変更し、可変後の総合加振力に基づいて駆動信号を出力する（ステップＳ１４２）。あるいは、駆動信号を入力評価処理の結果に応じた倍率で可変出力するとしてもよい。ここで言う「倍率」は、最も高い入力評価結果のときを「１．０」とし、評価が下がるほど「１．０」より小さな値とする。例えば、「ＪＵＳＴ」で「１．０」、「ＧＯＯＤ」で「０．６」といった具合である。
【０１７９】
そして、入力評価結果が「ＢＡＤ」の場合、すなわちタッチ操作が要求されるタイミングに対して大きく外れたと判定された場合には（ステップＳ１４０のＹＥＳ）、処理部２００は「ＢＡＤ」評価専用の振動形態に基づいて駆動信号を出力する（ステップＳ１４４）。当該振動形態は、予め用意されていて、入力を失敗したことを明確にプレイヤーへ伝えることができるように設定されている。例えば、音楽のリズムと全く関係の無いスパイク状の振動とすると好適である。あるいは、駆動信号を出力しないとしてもよい。また更に別の例として、総合駆動力を反転して駆動信号を出力するとしてもよい。具体的には、最大加振力から総合加振力を引いた値に基づいて出力するとしてもよい。
【符号の説明】
【０１８０】
２…マーカ
２Ｈ…ホールドマーカ
２Ｓ…ショットマーカ
９…プレイヤー
１０…遊戯装置
２０…タッチパネル
２１…表示装置
３０…ハプティクスユニット
３５…加振部
５０…制御基板
５１…ＣＰＵ
５２…ＩＣメモリ
６０…先頭累減パート
６２…先頭累増パート
６４…ループパート
６６…累減サブパート
６８…累増サブパート
６９…終了予告低振動部
２００…処理部
２０２…ゲーム演算部
２０３…音楽出力制御部
２０４…表示制御部
２０５…タッチ位置検出部
２０６…タッチ対象マーカ判定部
２１０…振動制御部
２１１…第１振動制御部
２１２…第２振動制御部
２２０…入力評価部
２４０…駆動信号生成部
３４０…振動発生部
５００…記憶部
５０１…システムプログラム
５０２…ゲームプログラム
５１０…プレイ曲候補データ
５１２…音楽データ
５１４…拍子
５２０…譜面データ
５２１…表示開始タイミング
５２２…マーカ種類
５２３…要求操作時間
５２４…開始目標タイミング（ｔｓ）
５２５…終了目標タイミング（ｔｅ）
５５０…プレイデータ
５６０…タッチ操作データ
５６１…タッチＩＤ
５６２…タッチ検出タイミング（ｔ１）
５６３…タッチ位置座標
５６５…タッチ解除タイミング（ｔ９）
５７０…マーカ管理データ
５７１…表示タイミング
５７２…マーカＩＤ
５７３…マーカ種類
５７４…表示座標
５８０…ハプティクス管理データ
５８１…ハプティクス対象マーカＩＤリスト
５８２…総合加振力
６００…マーカ別振動形態データ
６０１…割当マーカＩＤ
６０２…基準ループ時間（ｔｒｐ）
６０３…ループ予定回数（Ｎｒ）
６２０…先頭累減パート加振力算出関数Ｆhd（ｔ）
６２２…先頭累増パート加振力算出関数Ｆhi（ｔ）
６２４…累減サブパート加振力算出関数Ｆd（ｔ）
６２６…累増サブパート加振力算出関数Ｆi（ｔ）
６３０…振動形態関数
ＶＰmax：最大加振力
ＶＰmin：必須最小加振力
ｔｄ…累減期間
ｔｉ…累減期間
【図１】
2015066292.tif 000003
【図２】
2015066292.tif 000004
【図３】
2015066292.tif 000005
【図４】
2015066292.tif 000006
【図５】
2015066292.tif 000007
【図６】
2015066292.tif 000008
【図７】
2015066292.tif 000009
【図８】
2015066292.tif 000010
【図９】
2015066292.tif 000011
【図１０】
2015066292.tif 000012
【図１１】
2015066292.tif 000013
【図１２】
2015066292.tif 000014
【図１３】
2015066292.tif 000015
【図１４】
2015066292.tif 000016
【図１５】
2015066292.tif 000017
【図１６】
2015066292.tif 000018
【図１７】
2015066292.tif 000019
【図１８】
2015066292.tif 000020
【図１９】
2015066292.tif 000021
【図２０】
2015066292.tif 000022
【図２１】
2015066292.tif 000023
【図２２】
2015066292.tif 000024