(57)【特許請求の範囲】
【請求項１】
タッチパネルによって検出される接触位置が、複数の方向にそれぞれ対応するように設定された複数の領域のうちのいずれに含まれるかを判定することによって、方向入力を受け付ける方向入力受付手段と、
前記接触位置が前記複数の領域のうちの一の領域内から他の領域内に変化したか否かを判定する判定手段と、
前記接触位置が前記一の領域内から前記他の領域内に変化した場合に、前記タッチパネルを振動させるための制御を実行する振動制御手段と、
を含むことを特徴とするゲーム制御装置。
【請求項２】
請求項１に記載のゲーム制御装置において、
前記複数の領域のうちの、前記接触位置が含まれる領域に対応する方向を向くように、ユーザの操作対象の向きを設定する操作対象制御手段を含む、
ことを特徴とするゲーム制御装置。
【請求項３】
請求項１又は２に記載のゲーム制御装置において、
前記複数の領域は、第１の領域と、前記第１の領域と隣り合う第２の領域と、を含み、
前記第２の領域は、前記第１の領域との境界付近に設定される第３の領域を含み、
前記振動制御手段は、前記接触位置が前記第１の領域内から前記第２の領域内に変化した場合、前記接触位置が前記第２の領域内の前記第３の領域以外の領域に含まれる状態になるまで、前記タッチパネルを振動させることを待機させる手段を含む、
ことを特徴とするゲーム制御装置。
【請求項４】
請求項１又は２に記載のゲーム制御装置において、
前記複数の領域は、第１の領域と、前記第１の領域と隣り合う第２の領域と、を含み、
前記ゲーム制御装置は、前記接触位置が前記第１の領域内から前記第２の領域内に変化した場合、前記第２の領域が前記第１の領域側に広がり、かつ、前記第１の領域が狭まるように前記第１の領域と前記第２の領域との間の境界を変更する手段を含む、
ことを特徴とするゲーム制御装置。
【請求項５】
請求項１乃至４のいずれかに記載のゲーム制御装置において、
前記複数の領域は基準位置を中心に設定され、
前記複数の領域の各々は、前記基準位置付近に設定される第４の領域を含み、
前記振動制御手段は、前記接触位置が前記一の領域内に変化した場合、前記接触位置が前記一の領域内の前記第４の領域以外の領域に含まれる状態になるまで、前記タッチパネルを振動させることを待機させる手段を含む、
ことを特徴とするゲーム制御装置。
【請求項６】
請求項１乃至５のいずれかに記載のゲーム制御装置において、
前記複数の領域を前記接触位置に基づいて設定する手段を含む、
ことを特徴とするゲーム制御装置。
【請求項７】
請求項１乃至６のいずれかに記載のゲーム制御装置において、
前記接触位置が検出されている状態から前記接触位置が検出されない状態へと変わった後で前記接触位置が検出された場合、前記複数の領域を前記接触位置に基づいて移動させる手段を含む、
ことを特徴とするゲーム制御装置。
【請求項８】
請求項１乃至７のいずれかに記載のゲーム制御装置において、
前記複数の領域のうちの、前記接触位置が含まれる領域に対応する方向を示す画像を、前記タッチパネルを備えた表示手段に表示させるための制御を実行する画像表示制御手段を含む、
ことを特徴とするゲーム制御装置。
【請求項９】
請求項８に記載のゲーム制御装置において、
前記複数の領域は基準位置を中心に設定され、
前記画像表示制御手段は、前記複数の領域のうちの、前記接触位置が含まれる領域に関連づけて前記画像を表示し、前記基準位置から見て、前記接触位置よりも外側の位置に前記画像を表示させる、
ことを特徴とするゲーム制御装置。
【請求項１０】
請求項１乃至９のいずれかに記載のゲーム制御装置において、
前記接触位置が前記複数の領域のうちのいずれかの領域内から前記複数の領域外に変化したか否かを判定する領域外判定手段を含み、
前記振動制御手段は、前記接触位置が前記複数の領域のうちのいずれかの領域内から前記複数の領域外に変化した場合に、前記タッチパネルを振動させるための制御を実行する手段を含む、
ことを特徴とするゲーム制御装置。
【請求項１１】
請求項１乃至１０のいずれかに記載のゲーム制御装置において、
前記振動制御手段は、前記接触位置が前記一の領域内から前記他の領域内に変化した場合に、所定のタイミングにおける前記接触位置の変化速度に基づいて、前記タッチパネルを振動させる場合の振動の態様を設定する振動態様設定手段を含む、
ことを特徴とするゲーム制御装置。
【請求項１２】
請求項１乃至１０のいずれかに記載のゲーム制御装置において、
前記振動制御手段は、前記接触位置が前記一の領域内から前記他の領域内に変化した場合に、所定のタイミングにおける前記接触位置に基づいて、前記タッチパネルを振動させる場合の振動の態様を設定する振動態様設定手段を含む、
ことを特徴とするゲーム制御装置。
【請求項１３】
請求項１２に記載のゲーム制御装置において、
前記複数の領域は基準位置を中心に設定され、
前記振動態様設定手段は、前記所定のタイミングにおける前記接触位置と前記基準位置との間の距離に基づいて、前記タッチパネルを振動させる場合の振動の態様を設定する手段を含む、
ことを特徴とするゲーム制御装置。
【請求項１４】
請求項１乃至１３のいずれかに記載のゲーム制御装置において、
ユーザの操作対象と、前記ユーザの操作対象に関連づけて表示される表示対象とを表示手段に表示させるための制御を実行する操作対象表示制御手段を含み、
前記複数の領域は基準位置を中心に設定され、
前記操作対象表示制御手段は、前記表示対象の位置を前記ユーザの操作対象の位置に基づいて設定する手段であって、前記ユーザの操作対象から前記表示対象への方向が、前記基準位置から前記接触位置への方向と対応するようにして、前記表示対象の位置を設定する手段を含む、
ことを特徴とするゲーム制御装置。
【請求項１５】
請求項１乃至１３のいずれかに記載のゲーム制御装置において、
ユーザの操作対象と、前記ユーザの操作対象に関連づけて表示される表示対象とを表示手段に表示させるための制御を実行する操作対象表示制御手段を含み、
前記操作対象表示制御手段は、前記表示対象の位置を前記ユーザの操作対象の位置に基づいて設定する手段であって、前記ユーザの操作対象から前記表示対象への方向が、前記接触位置が含まれる領域に対応する方向と対応するようにして、前記表示対象の位置を設定する手段を含む、
ことを特徴とするゲーム制御装置。
【請求項１６】
タッチパネルによって検出される接触位置が、複数の方向にそれぞれ対応するように設定された複数の領域のうちのいずれに含まれるかを判定することによって、方向入力を受け付ける方向入力受付手段と、
前記接触位置が前記複数の領域のうちの一の領域内から他の領域内に変化したか否かを判定する判定手段と、
前記接触位置が前記一の領域内から前記他の領域内に変化した場合に、前記タッチパネルを振動させるための制御を実行する振動制御手段と、
を含むことを特徴とするゲームシステム。
【請求項１７】
タッチパネルによって検出される接触位置が、方向入力を受け付けるために設定された複数の領域であって、かつ、複数の方向にそれぞれ対応するように設定された複数の領域のうちの一の領域内から他の領域内に変化したか否かを判定する判定手段の判定結果を取得する手段、及び、
前記接触位置が前記一の領域内から前記他の領域内に変化した場合に、前記タッチパネルを振動させるための制御を実行する振動制御手段、
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はゲーム制御装置、ゲームシステム、及びプログラムに関する。
【背景技術】
【０００２】
据置型ゲーム機のゲームパッドや携帯型ゲーム機には、方向入力操作を受け付けるための方向ボタン又は方向レバーが備えられている。これに対し、例えばスマートフォンやタブレット型コンピュータのような端末装置にはタッチパネルが備えられており、上記のような方向ボタンや方向レバーが備えられていないことが多い。このような端末装置では、仮想的な方向ボタン又は方向レバーを画面に表示することによって、タッチパネルを介して方向入力操作を受け付けることが行われている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−０２８０５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
据置型ゲーム機のゲームパッド等に備えられる現実の方向ボタンや方向レバーの場合、ユーザは方向ボタンや方向レバーを操作している感触を得ることができるのに対し、上記のような仮想的な方向ボタンや方向レバーの場合、ユーザは方向ボタンや方向レバーを操作している感触を得ることができない。その結果、ユーザが入力方向を変えるべく操作を行った場合に、その操作によって本当に入力方向が変わったか否かをユーザ自身が把握し難い場合があり、方向入力操作を行い難い場合があった。
【０００５】
本発明は上記課題に鑑みてなされたものであって、その目的は、タッチパネルを介して受け付けられる方向入力操作をユーザが行い易くなるように補助することが可能なゲーム制御装置、ゲームシステム、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明に係るゲーム制御装置は、タッチパネルによって検出される接触位置が、複数の方向にそれぞれ対応するように設定された複数の領域のうちのいずれに含まれるかを判定することによって、方向入力を受け付ける方向入力受付手段と、前記接触位置が前記複数の領域のうちの一の領域内から他の領域内に変化したか否かを判定する判定手段と、前記接触位置が前記一の領域内から前記他の領域内に変化した場合に、前記タッチパネルを振動させるための制御を実行する振動制御手段と、を含む。
【０００７】
また、本発明に係るゲームシステムは、タッチパネルによって検出される接触位置が、複数の方向にそれぞれ対応するように設定された複数の領域のうちのいずれに含まれるかを判定することによって、方向入力を受け付ける方向入力受付手段と、前記接触位置が前記複数の領域のうちの一の領域内から他の領域内に変化したか否かを判定する判定手段と、前記接触位置が前記一の領域内から前記他の領域内に変化した場合に、前記タッチパネルを振動させるための制御を実行する振動制御手段と、を含む。
【０００８】
また、本発明に係るプログラムは、タッチパネルによって検出される接触位置が、方向入力を受け付けるために設定された複数の領域であって、かつ、複数の方向にそれぞれ対応するように設定された複数の領域のうちの一の領域内から他の領域内に変化したか否かを判定する判定手段の判定結果を取得する手段、及び、前記接触位置が前記一の領域内から前記他の領域内に変化した場合に、前記タッチパネルを振動させるための制御を実行する振動制御手段、としてコンピュータを機能させるためのプログラムである。
【０００９】
また、本発明に係る情報記憶媒体は、上記プログラムを記録したコンピュータ読み取り可能な情報記憶媒体である。
【発明の効果】
【００１０】
本発明によれば、タッチパネルを介して受け付けられる方向入力操作をユーザが行い易くなるように補助することが可能になる。
【図面の簡単な説明】
【００１１】
【図１】ゲーム装置（ゲーム制御装置）のハードウェア構成の一例を示す図である。
【図２】ゲーム画面の一例を示す図である。
【図３】方向パッドの一例について説明するための図である。
【図４】上画像、下画像、左画像、及び右画像について説明するための図である。
【図５】蝶キャラクタについて説明するための図である。
【図６】蝶キャラクタについて説明するための図である。
【図７】振動待機領域の一例について説明するための図である。
【図８】振動の待機について説明するための図である。
【図９】振動の待機について説明するための図である。
【図１０】ゲーム装置の機能ブロック図である。
【図１１】記憶部に記憶されるデータの一例を示す図である。
【図１２】ゲーム装置で実行される処理の一例を示すフロー図である。
【図１３】ゲーム装置で実行される処理の一例を示すフロー図である。
【図１４】ゲーム装置の機能ブロック図である。
【図１５】領域設定部の機能について説明するための図である。
【図１６】領域設定部の機能について説明するための図である。
【図１７】ゲーム装置の機能ブロック図である。
【図１８】対応関係データの一例を示す図である。
【図１９】対応関係データの他の一例を示す図である。
【図２０】ゲーム装置の機能ブロック図である。
【図２１】ゲームシステムの全体構成の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態の例について図面に基づき詳細に説明する。
【００１３】
図１は本発明の実施形態に係るゲーム装置（ゲーム制御装置）のハードウェア構成を示す。ゲーム装置１０はユーザがゲームをプレイするために使用するコンピュータである。例えば、ゲーム装置１０は、携帯電話機（スマートフォンを含む）又は携帯情報端末（タブレット型コンピュータを含む）によって実現される。なお、ゲーム装置１０は、携帯型ゲーム機、据置型ゲーム機、ラップトップ型コンピュータ、又はデスクトップ型コンピュータ等によって実現されるようにしてもよい。
【００１４】
図１に示すように、ゲーム装置１０は制御部１１、記憶部１２、通信部１３、操作部１４、振動部１５、表示部１６、及び音声出力部１７を含む。
【００１５】
制御部１１は一又は複数のマイクロプロセッサ等を含み、オペレーティングシステムやその他のプログラムに従って処理を実行する。記憶部１２は主記憶部（例えばＲＡＭ）及び補助記憶部（例えばハードディスクドライブ又はソリッドステートドライブ）を含む。通信部１３は通信ネットワークを介してデータ通信を行うためのものである。
【００１６】
操作部１４はユーザがゲーム操作を行うためのものである。例えば、操作部１４は、ユーザによって接触された位置を検出可能なタッチパネル１４Ｔを含み、ユーザはタッチパネル１４Ｔを触ることによってゲーム操作を行う。例えば、タッチパネル１４Ｔは表示部１６に重ねて設けられ、検出結果を示す信号を出力する。例えば、接触位置の検出は所定時間（例えば１／６０秒）ごとに繰り返し行われる。なお、タッチパネル１４Ｔとしては各種方式のタッチパネルを採用することが可能である。例えば、静電容量方式のタッチパネルを採用することが可能である。静電容量方式のタッチパネルでは、タッチパネルの表面がユーザによって接触された場合に生じる電荷の変化に基づいて、ユーザによって接触されている位置が検出される。当然のことながら、静電容量方式以外の方式のタッチパネルを採用することも可能である。
【００１７】
振動部１５は操作部１４を振動させるためのものである。例えば、携帯電話機（スマートフォン）又は携帯情報端末（タブレット型コンピュータ）のように、操作部１４が筐体と一体的に形成されている場合、筐体に内蔵され、筐体を振動させるための振動モータが振動部１５の一例に相当する。制御部１１は振動部１５を駆動させることによって振動を発生させる。なお例えば、制御部１１は振動の態様を制御できるようになっている。例えば、制御部１１は振動の大きさ（振幅）、長さ、又は間隔（周波数）を制御できるようになっている。
【００１８】
表示部１６は例えば液晶表示パネル又は有機ＥＬディスプレイ等であり、制御部１１の指示に従って画面を表示する。音声出力部１７は例えばスピーカ又はヘッドホン等であり、制御部１１の指示に従って音声データを出力する。
【００１９】
プログラムやデータは通信ネットワークを介してゲーム装置１０に供給される。なお、ゲーム装置１０は、情報記憶媒体（例えば光ディスク又はメモリカード等）に記憶されたプログラム又はデータを読み取るための構成要素を含むようにしてもよい。そして、プログラムやデータが情報記憶媒体を介してゲーム装置１０に供給されるようにしてもよい。
【００２０】
ゲーム装置１０では各種ゲームを実行することが可能である。以下では、ゲーム装置１０で実行されるゲームの一例として、ユーザの操作対象がユーザの操作に従ってゲーム空間内を移動するゲームについて説明する。なお、「ゲーム空間」は、互いに直交する三つの座標軸によって位置が示されるような仮想的な三次元空間であってもよいし、互いに直交する二つの座標軸によって位置が示されるような仮想的な二次元空間であってもよい。
【００２１】
図２は表示部１６に表示されるゲーム画面の一例を示す。図２に示すように、ゲーム画面２０にはユーザキャラクタ２２が表示される。ユーザキャラクタ２２はユーザの操作対象のキャラクタであり、ユーザの操作に従ってゲーム空間内を移動する。
【００２２】
また図２に示すように、ゲーム画面２０には蝶キャラクタ２４が表示される。蝶キャラクタ２４はユーザキャラクタ２２に関連づけて表示される。蝶キャラクタ２４はユーザキャラクタ２２の付近に表示され、ユーザキャラクタ２２に従動する。蝶キャラクタ２４の役割については後述する。
【００２３】
また図２に示すように、ゲーム画面２０には仮想的な方向パッド３０（方向ボタン）が表示される。方向パッド３０は方向を入力（指示）するために設定された方向入力領域であり、ユーザが方向入力操作を行うために用いられる。なお、ここで、「方向入力操作」とは、例えば四方向又は八方向等のような、有限数の方向のうちのいずれかを入力（指示）するような操作のことを意味している。図２に示す例の場合、方向パッド３０はユーザキャラクタ２２の向き（移動方向）を指示するために用いられる。例えば、ユーザは指を方向パッド３０に接触させた状態のままその指を動かす（スライドさせる）ことによって、ユーザキャラクタ２２の向き（移動方向）を指示する。
【００２４】
図３は方向パッド３０の一例について説明するための図である。なお、ここでは、上下左右の四方向を入力できるようにする場合について説明するが、四方向よりも多い方向を入力できるようにしたり、四方向よりも少ない方向のみ入力できるようにしたりしてもよい。例えば、上、下、左、右、左上、右上、左下、右下の八方向を入力できるようにしてもよい。
【００２５】
図３に示す方向パッド３０は基準位置３２を中心とする所定半径の円形領域になっている。なお、方向パッド３０の形状は円形領域に限られず、方向パッド３０は円形領域以外の領域としてもよい。
【００２６】
図３に示すように、方向パッド３０には、上下左右の四方向にそれぞれ対応する四つの領域が設定される。すなわち、上方向に対応する上領域３４Ｕと、下方向に対応する下領域３４Ｄと、左方向に対応する左領域３４Ｌと、右方向に対応する右領域３４Ｒとが設定される。さらに、方向パッド３０には、いずれの方向にも対応づけられていないニュートラル領域３４Ｎも設定される。なお、図３では領域の境界線が示されているが、この境界線はゲーム画面２０に表示されてもよいし、表示されなくてもよい。
【００２７】
ニュートラル領域３４Ｎは基準位置３２付近に設定される。例えば、基準位置３２を含む領域がニュートラル領域３４Ｎとして設定される。図３に示す例の場合、ニュートラル領域３４Ｎは基準位置３２を中心とする所定半径の円形領域である。当然のことながら、ニュートラル領域３４Ｎの半径は方向パッド３０の半径よりも小さい。
【００２８】
上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒは基準位置３２を中心として設定されている。図３に示す例では、これらの四つの領域が基準位置３２を中心として放射状に設定されている。
【００２９】
上領域３４Ｕは基準位置３２の上側に位置している。上領域３４Ｕは、基準位置３２から上方向に広がる９０度の扇状領域からニュートラル領域３４Ｎを除いた領域となっている。同様に、下領域３４Ｄは基準位置３２の下側に位置している。下領域３４Ｄは、基準位置３２から下方向に広がる９０度の扇状領域からニュートラル領域３４Ｎを除いた領域となっている。
【００３０】
また、左領域３４Ｌは基準位置３２の左側に位置している。左領域３４Ｌは、基準位置３２から左方向に広がる９０度の扇状領域からニュートラル領域３４Ｎを除いた領域となっている。同様に、右領域３４Ｒは基準位置３２の右側に位置している。右領域３４Ｒは、基準位置３２から右方向に広がる９０度の扇状領域からニュートラル領域３４Ｎを除いた領域となっている。
【００３１】
ユーザは上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのいずれかに指を接触させることによって、上下左右のうちのいずれかの方向を指示する。いずれかの方向がユーザによって指示されると、ユーザによって指示された方向に基づいてゲーム処理が実行される。例えば、ユーザによって指示された方向に基づいてユーザキャラクタ２２の向き（移動方向）が設定される。例えば、ユーザは指を上領域３４Ｕに接触させた場合、ユーザキャラクタ２２の向き（移動方向）が上方向に設定される。
【００３２】
また図３に示すように、方向パッド３０には、上方向に対応する上画像３６Ｕと、下方向に対応する下画像３６Ｄと、左方向に対応する左画像３６Ｌと、右方向に対応する右画像３６Ｒとが含まれている。上画像３６Ｕは上領域３４Ｕに関連づけて表示され、下画像３６Ｄは下領域３４Ｄに関連づけて表示される。また、左画像３６Ｌは左領域３４Ｌに関連づけて表示され、右画像３６Ｒは右領域３４Ｒに関連づけて表示される。
【００３３】
なお、「画像が領域に関連づけて表示される」とは、画像と領域とが関連していることをユーザが把握できるように画像を表示することを意味している。例えば、画像の少なくとも一部が領域の少なくとも一部と重なるようにして画像を表示することや、画像を領域付近に表示することが「画像を領域に関連づけて表示する」ことに相当する。
【００３４】
上画像３６Ｕ、下画像３６Ｄ、左画像３６Ｌ、及び右画像３６Ｒはユーザが指示している方向を示す役割を果たす。図４は上画像３６Ｕ、下画像３６Ｄ、左画像３６Ｌ、及び右画像３６Ｒについて説明するための図である。
【００３５】
図４はユーザが指Ｆを上領域３４Ｕに接触させている場合を示す。すなわち、ユーザが上方向を指示している場合を示す。この場合、上領域３４Ｕに対応する上画像３６Ｕが強調表示される。例えば、上画像３６Ｕが他の画像（下画像３６Ｄ、左画像３６Ｌ、及び右画像３６Ｒ）と区別表示される。
【００３６】
例えば、上画像３６Ｕの色が他の画像と異なる色に設定される。例えば、上画像３６Ｕの色が他の画像の色よりも明るい色に設定される。また例えば、上画像３６Ｕの大きさが他の画像と異なる大きさに設定される。例えば、上画像３６Ｕの大きさが他の画像よりも大きく設定される。また例えば、上画像３６Ｕが方向パッド３０の外側方向に移動する。すなわち、上画像３６Ｕと基準位置３２との間の距離が他の画像と基準位置との間の距離よりも大きく設定される。
【００３７】
このように、ゲーム装置１０ではユーザが上領域３４Ｕを接触している場合に上画像３６Ｕが強調表示される。このため、ユーザは自分が上方向を指示していることを一見して把握することができる。
【００３８】
なお、上記の場合、上画像３６Ｕの位置は、基準位置３２から見てユーザの接触位置よりも外側の位置に表示される。このようにすることによって、上画像３６Ｕがユーザの指に隠れないようになっており、ユーザは自分が上方向を指示していることを把握し易くなっている。
【００３９】
またゲーム装置１０では、蝶キャラクタ２４もユーザが指示している方向を示す役割を果たす。図５及び図６は蝶キャラクタ２４について説明するための図である。なお、図５に示す位置Ｐはユーザの接触位置を示す。
【００４０】
図５及び図６に示すように、「ユーザキャラクタ２２と蝶キャラクタ２４との位置関係」が「方向パッド３０の基準位置３２とユーザの接触位置Ｐとの位置関係」と対応するようにして、蝶キャラクタ２４の位置は設定される。
【００４１】
例えば、「ユーザキャラクタ２２の代表点２２Ａから蝶キャラクタ２４への方向」が「方向パッド３０の基準位置３２からユーザの接触位置Ｐへの方向」と対応するようにして、蝶キャラクタ２４の位置は設定される。
【００４２】
なお、「ユーザキャラクタ２２の代表点２２Ａから蝶キャラクタ２４までの距離」が「方向パッド３０の基準位置３２からユーザの接触位置Ｐまでの距離」と対応するようにして、蝶キャラクタ２４の位置を設定するようにしてもよい。また、図６に示す例では頭部（顔）の中心がユーザキャラクタ２２の代表点２２Ａとして設定されているが、例えば、胴体の中心（胸部又は腹部等）が代表点２２Ａとして設定されるようにしてもよい。
【００４３】
以上のようにして蝶キャラクタ２４の位置が設定されることによって、ユーザは自分が接触している方向パッド３０内の位置をユーザキャラクタ２２と蝶キャラクタ２４との位置関係から把握することができる。ユーザはユーザキャラクタ２２に注目しながらゲームをプレイするのが一般的であるが、上記の蝶キャラクタ２４によれば、ユーザはユーザキャラクタ２２に注目しながら自分が接触している方向パッド３０内の位置を把握することができる。
【００４４】
なお、ここでは、蝶キャラクタ２４を表示するようにしたが、当然のことながら、蝶キャラクタ２４以外のキャラクタを表示するようにしてもよい。また、キャラクタ以外の画像（例えばマーク、カーソル、又はアイコン等）を表示するようにしてもよい。
【００４５】
ところで、従来のゲーム装置では、ユーザが入力方向を変えるべく仮想的な方向パッドを操作した場合に、その操作によって本当に入力方向が変わったか否かをユーザ自身が把握し難い場合があり、方向入力操作を行い難い場合があった。これに対し、ゲーム装置１０では、ユーザが入力方向を変えるべく方向パッド３０を操作した場合に、その操作によって本当に入力方向が変わったか否かをユーザ自身が把握し易くなっている。
【００４６】
すなわち、ゲーム装置１０では、ユーザが接触している領域が上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのうちで変化した場合にタッチパネル１４Ｔが振動する。つまり、ユーザが接触している領域が上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのうちの一の領域から他の領域に変化した場合にタッチパネル１４Ｔが振動する。その結果、入力方向が変わったことをユーザが把握できるようになっている。
【００４７】
ユーザが接触している領域がニュートラル領域３４Ｎから上画像３６Ｕ、下画像３６Ｄ、左画像３６Ｌ、及び右画像３６Ｒのいずれかに変化した場合にもタッチパネル１４Ｔが振動するようになっている。ただし、ユーザが接触している領域が上画像３６Ｕ、下画像３６Ｄ、左画像３６Ｌ、及び右画像３６Ｒのいずれかからニュートラル領域３４Ｎに変化した場合にはタッチパネル１４Ｔが振動しないようになっている。
【００４８】
なお、ユーザの接触位置が領域の境界付近で変化した場合、接触位置が境界線を越える度に振動が発生してしまうと、必要以上に連続的に振動が発生してしまうおそれがある。この点、ゲーム装置１０では、振動の発生を待機する領域（以下「振動待機領域」と呼ぶ。）が境界付近に設定されている。図７は振動待機領域の一例について説明するための図である。
【００４９】
図７に示すように、上領域３４Ｕ内には振動待機領域４０Ａ，４０Ｂ，４０Ｃが含まれている。振動待機領域４０Ａは上領域３４Ｕと左領域３４Ｌとの間の境界付近に設定されている。振動待機領域４０Ａは上領域３４Ｕと左領域３４Ｌとの間の境界線に基づいて設定される。例えば、上領域３４Ｕ内の領域であって、かつ、上記境界線を含む領域が振動待機領域４０Ａとして設定される。また例えば、上領域３４Ｕ内の領域であって、かつ、上記境界線に隣接する領域が振動待機領域４０Ａとして設定される。例えば、上領域３４Ｕ内の領域であって、かつ、上記境界線からの距離が所定距離以内である領域が振動待機領域４０Ａとして設定される。
【００５０】
また、振動待機領域４０Ｂは上領域３４Ｕと右領域３４Ｒとの間の境界付近に設定されている。振動待機領域４０Ｂは上領域３４Ｕと右領域３４Ｒとの間の境界線に基づいて設定される。例えば、上領域３４Ｕ内の領域であって、かつ、上記境界線を含む領域が振動待機領域４０Ｂとして設定される。また例えば、上領域３４Ｕ内の領域であって、かつ、上記境界線に隣接する領域が振動待機領域４０Ｂとして設定される。例えば、上領域３４Ｕ内の領域であって、かつ、上記境界線からの距離が所定距離以内である領域が振動待機領域４０Ｂとして設定される。
【００５１】
さらに、振動待機領域４０Ｃは上領域３４Ｕとニュートラル領域３４Ｎとの間の境界付近に設定されている。振動待機領域４０Ｃは上領域３４Ｕとニュートラル領域３４Ｎとの間の境界線に基づいて設定される。例えば、上領域３４Ｕ内の領域であって、かつ、上記境界線を含む領域が振動待機領域４０Ｃとして設定される。また例えば、上領域３４Ｕ内の領域であって、かつ、上記境界線に隣接する領域が振動待機領域４０Ｃとして設定される。例えば、上領域３４Ｕ内の領域であって、かつ、上記境界線からの距離が所定距離以内である領域が振動待機領域４０Ｃとして設定される。
【００５２】
同様に、右領域３４Ｒ内には振動待機領域４０Ｄ，４０Ｅ，４０Ｆが含まれている。また、下領域３４Ｄ内には振動待機領域４０Ｇ，４０Ｈ，４０Ｉが含まれている。さらに、左領域３４Ｌ内には振動待機領域４０Ｊ，４０Ｋ，４０Ｌが含まれている。以下では、振動待機領域４０Ａ〜４０Ｌを総称して「振動待機領域４０」と記載する場合がある。
【００５３】
図８は振動の待機について説明するための図であり、ユーザの接触位置の変化の一例を示す。図８は、ユーザの接触位置が位置Ｐ１，Ｐ２，Ｐ３，Ｐ４，Ｐ５，Ｐ６，Ｐ７，Ｐ８の順で変化した場合を示している。図８に示す例ではユーザの接触位置が左領域３４Ｌと上領域３４Ｕとの間の境界付近で変化している。
【００５４】
図８に示す例では、ユーザの接触位置が位置Ｐ２から位置Ｐ３に変化した際に、ユーザの接触位置が左領域３４Ｌから上領域３４Ｕに変化している。ただし、この場合、ユーザの接触位置（位置Ｐ３）は振動待機領域４０Ａ内に含まれているため、この時点では振動が発生しないようになっている。
【００５５】
また図８に示す例では、ユーザの接触位置が左領域３４Ｌ（位置Ｐ２）から上領域３４Ｕ（位置Ｐ３）に変化した後に、ユーザの接触位置が左領域３４Ｌ（位置Ｐ４，Ｐ５）に戻っている。ただし、この場合、ユーザの接触位置が左領域３４Ｌから上領域３４Ｕに変化した場合の振動が発生することなく、ユーザの接触位置が上領域３４Ｕから左領域３４Ｌに戻っているため、振動が発生しないようになっている。
【００５６】
また図８に示す例では、ユーザの接触位置が左領域３４Ｌに戻った後に、ユーザの接触位置が左領域３４Ｌ（位置Ｐ４，Ｐ５，Ｐ６）から上領域３４Ｕ（位置Ｐ７）に変化している。ただし、先述の場合と同様、ユーザの接触位置（位置Ｐ７）は振動待機領域４０Ａ内に含まれているため、この時点では振動が発生しないようになっている。
【００５７】
さらに図８に示す例では、ユーザの接触位置が上領域３４Ｕ内の位置Ｐ７に変化した後に、上領域３４Ｕ内でユーザの接触位置が位置Ｐ７から位置Ｐ８に変化している。この際、ユーザの接触位置は振動待機領域４０Ａ内から振動待機領域４０Ａ外に変化している。ゲーム装置１０ではこの時点で振動が発生するようになっている。
【００５８】
例えば、ユーザの接触位置が位置Ｐ２から位置Ｐ３に変化した際、ユーザの接触位置が位置Ｐ３から位置Ｐ４に変化した際や、ユーザの接触位置が位置Ｐ６から位置Ｐ７に変化した際に振動が発生してしまうと、必要以上に連続的に振動が発生してしまうことになり、却ってユーザが戸惑ってしまうおそれがある。この点、ゲーム装置１０ではこのような不都合が生じないようになっている。
【００５９】
図９も振動の待機について説明するための図であり、ユーザの接触位置の変化の他の一例を示す。図９は、ユーザの接触位置が位置Ｐ１，Ｐ２，Ｐ３，Ｐ４，Ｐ５の順で変化した場合を示している。図９に示す例ではユーザの接触位置がニュートラル領域３４Ｎと上領域３４Ｕとの間の境界付近で変化している。
【００６０】
図９に示す例では、ユーザの接触位置が位置Ｐ１から位置Ｐ２に変化した際に、ユーザの接触位置がニュートラル領域３４Ｎから上領域３４Ｕに変化している。ただし、この場合、ユーザの接触位置（位置Ｐ２）は振動待機領域４０Ｃ内に含まれているため、この時点では振動が発生しないようになっている。
【００６１】
また図９に示す例では、ユーザの接触位置がニュートラル領域３４Ｎ（位置Ｐ１）から上領域３４Ｕ（位置Ｐ２）に変化した後に、ユーザの接触位置がニュートラル領域３４Ｎ（位置Ｐ３）に戻っている。先述したように、ユーザの接触位置が上領域３４Ｕからニュートラル領域３４Ｎに変化した場合には振動が発生しないようになっている。
【００６２】
また図９に示す例では、ユーザの接触位置がニュートラル領域３４Ｎ（位置Ｐ３）に戻った後に、ユーザの接触位置がニュートラル領域３４Ｎ（位置Ｐ３）から上領域３４Ｕ（位置Ｐ４）に変化している。ただし、先述の場合と同様、ユーザの接触位置（位置Ｐ４）は振動待機領域４０Ｃ内に含まれているため、この時点では振動が発生しないようになっている。
【００６３】
さらに図９に示す例では、ユーザの接触位置が上領域３４Ｕ内の位置Ｐ４に変化した後に、上領域３４Ｕ内でユーザの接触位置が位置Ｐ４から位置Ｐ５に変化している。この際、ユーザの接触位置は振動待機領域４０Ｃ内から振動待機領域４０Ｃ外に変化している。ゲーム装置１０ではこの時点で振動が発生するようになっている。
【００６４】
例えば、ユーザの接触位置が位置Ｐ１から位置Ｐ２に変化した際や、ユーザの接触位置が位置Ｐ３から位置Ｐ４に変化した際に振動が発生してしまうと、必要以上に連続的に振動が発生してしまうことになり、却ってユーザが戸惑ってしまうおそれがある。この点、ゲーム装置１０ではこのような不都合が生じないようになっている。
【００６５】
次に、以上に説明したような機能を実現するための構成について説明する。図１０は、ゲーム装置１０で実現される機能ブロックを示す機能ブロック図である。図１０に示すように、ゲーム装置１０は方向入力受付部５０、判定部５２、振動制御部５４、操作対象制御部５６、及び表示制御部５８を含む。例えば、これらの機能ブロックはゲーム装置１０の制御部１１によって実現される。すなわち、制御部１１がプログラムに従って処理を実行することによって、制御部１１が上記の機能ブロックとして機能するようになる。
【００６６】
方向入力受付部５０は、タッチパネル１４Ｔによって検出される接触位置が、複数の方向にそれぞれ対応するように設定された複数の領域のうちのいずれに含まれるかを判定することによって、方向入力を受け付ける。なお、先述したように、ここでの「方向入力操作」とは、例えば四方向又は八方向等のような、有限数の方向のうちのいずれかを入力するような操作のことを意味している。
【００６７】
判定部５２は、接触位置が複数の領域のうちの一の領域内から他の領域内に変化したか否かを判定する。振動制御部５４は、接触位置が一の領域内から他の領域内に変化した場合に、タッチパネル１４Ｔを振動させるための制御を実行する。
【００６８】
例えば、上記の複数の領域は、第１の領域と、第１の領域と隣り合う第２の領域と、を含み、第２の領域は、第１の領域との境界付近に設定される第３の領域を含む。ここで、例えば、第３の領域は第２の領域内の領域であって、かつ、第１の領域との間の境界を含む領域である。また例えば、第３の領域は、第２の領域内の領域であって、かつ、第１の領域との境界に隣接する領域である。例えば、第３の領域は、第２の領域内の領域であって、かつ、第１の領域との境界からの距離が所定距離以下の領域である。例えば、接触位置が第１の領域内から第２の領域内に変化した場合、振動制御部５４は、接触位置が第２の領域内の第３の領域以外の領域に含まれる状態になるまで、タッチパネル１４Ｔを振動させることを待機させる。
【００６９】
また例えば、上記の複数の領域は基準位置を中心に設定され、複数の領域の各々は、基準位置付近に設定される第４の領域を含む。ここで、例えば、第４の領域は、基準位置からの距離が所定距離以下の領域である。例えば、接触位置が上記の複数の領域のうちの一の領域内に変化した場合、振動制御部５４は、接触位置が当該一の領域内の第４の領域以外の領域に含まれる状態になるまで、タッチパネル１４Ｔを振動させることを待機させる。
【００７０】
図２〜図９で説明した例の場合、上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒが「複数の領域」の一例に相当する。例えば、振動待機領域４０Ａ，４０Ｂ，４０Ｄ，４０Ｅ，４０Ｇ，４０Ｈ，４０Ｊ，４０Ｋの各々が「第３の領域」の一例に相当する。例えば、左領域３４Ｌが「第１の領域」に相当し、上領域３４Ｕが「第２の領域」に相当する場合、振動待機領域４０Ａが「第３の領域」に相当する。また例えば、上領域３４Ｕが「第１の領域」に相当し、左領域３４Ｌが「第２の領域」に相当する場合、振動待機領域４０Ｋが「第３の領域」に相当する。また、振動待機領域４０Ｃ，４０Ｆ，４０Ｉ，４０Ｌの各々が「第４の領域」の一例に相当する。
【００７１】
図２〜図９で説明した例の場合、方向入力受付部５０は、タッチパネル１４Ｔによって検出される接触位置が上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのうちのいずれに含まれるかを判定することによって、ユーザによって指示された方向を判断する。
【００７２】
また判定部５２は、接触位置が上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのうちの一の領域内から他の領域内に変化したか否かを判定する。そして、接触位置が上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのうちの一の領域内から他の領域内に変化したと判定された場合、振動制御部５４は振動部１５を制御することによって振動を発生させる。
【００７３】
なお例えば、接触位置が左領域３４Ｌ内から上領域３４Ｕ内に変化した場合、振動制御部５４は、接触位置が振動待機領域４０Ａ（すなわち、上領域３４Ｕ内に設定された振動待機領域４０であって、かつ、左領域３４Ｌと上領域３４Ｕとの間の境界付近に設定された振動待機領域４０）以外の領域に含まれる状態になるまで、タッチパネル１４Ｔを振動させることを待機させる。言い換えれば、振動制御部５４は、接触位置が振動待機領域４０Ａ内に含まれている間、タッチパネル１４Ｔの振動を抑制する。
【００７４】
また例えば、接触位置がニュートラル領域３４Ｎ内から上領域３４Ｕ内に変化した場合、振動制御部５４は、接触位置が振動待機領域４０Ｃ（すなわち、上領域３４Ｕ内に設定された振動待機領域４０であって、かつ、ニュートラル領域３４Ｎと上領域３４Ｕとの間の境界付近に設定された振動待機領域４０）以外の領域に含まれる状態になるまで、タッチパネル１４Ｔを振動させることを待機させる。言い換えれば、振動制御部５４は、接触位置が振動待機領域４０Ｃ内に含まれている間、タッチパネル１４Ｔの振動を抑制する。
【００７５】
操作対象制御部５６は、複数の方向にそれぞれ対応するように設定された複数の領域のうちの、接触位置が含まれる領域に対応する方向を向くように、ユーザの操作対象の向きを設定する。
【００７６】
図２〜図９で説明した例の場合、ユーザキャラクタ２２が「ユーザの操作対象」の一例に相当する。すなわち、操作対象制御部５６は、上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのうちの、接触位置が含まれる領域に対応する方向を向くように、ユーザキャラクタ２２の向きを設定する。例えば、接触位置が上領域３４Ｕに含まれる場合、操作対象制御部５６はユーザキャラクタ２２の向きを上方向に設定する。
【００７７】
表示制御部５８はゲーム画面２０を表示部１６に表示させるための制御を実行する。例えば、表示制御部５８は操作対象表示制御部５８Ａと画像表示制御部５８Ｂとを含む。操作対象表示制御部５８Ａは、ユーザの操作対象と、ユーザの操作対象に関連づけて表示される表示対象とを表示部１６に表示させるための制御を実行する。
【００７８】
ここで、「ユーザの操作対象に関連づけて表示される表示対象」とは、ユーザの操作対象と表示対象とが関連していることをユーザが認識できるようにして、表示対象を表示することを意味している。例えば、表示対象の位置はユーザの操作対象の位置に基づいて設定される。例えば、表示対象はユーザの操作対象の付近に表示され、ユーザの操作対象に従動する。
【００７９】
例えば図２〜図９で説明した例の場合、ユーザキャラクタ２２が「ユーザの操作対象」の一例に相当し、蝶キャラクタ２４が「表示対象」の一例に相当する。
【００８０】
操作対象表示制御部５８Ａは、蝶キャラクタ２４の位置をユーザキャラクタ２２の位置に基づいて設定する。例えば、操作対象表示制御部５８Ａは、ユーザキャラクタ２２から蝶キャラクタ２４への距離が所定距離となるようにして、蝶キャラクタ２４の位置を設定する。また例えば、操作対象表示制御部５８Ａは、ユーザキャラクタ２２から蝶キャラクタ２４への方向が、方向パッド３０の基準位置３２からユーザの接触位置への方向と対応するようにして、蝶キャラクタ２４の位置を設定する。
【００８１】
画像表示制御部５８Ｂは、複数の方向にそれぞれ対応するように設定された複数の領域のうちの、タッチパネル１４Ｔによって検出された接触位置が含まれる領域に対応する方向を示す画像を表示部１６に表示させるための制御を実行する。
【００８２】
例えば図２〜図９で説明した例の場合、上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒが「複数の領域」の一例に相当し、上画像３６Ｕ、下画像３６Ｄ、左画像３６Ｌ、及び右画像３６Ｒのうちの強調表示されたものが「画像」の一例に相当する。
【００８３】
例えば図４に示すように、ユーザの接触位置が上領域３４Ｕに含まれる場合、画像表示制御部５８Ｂは上画像３６Ｕを強調表示する。すなわち、画像表示制御部５８Ｂは、上画像３６Ｕの表示態様（例えば、色、大きさ、形状、又は基準位置３２からの距離等）を他の画像（下画像３６Ｄ、左画像３６Ｌ、及び右画像３６Ｒ）と異ならせることによって、上画像３６Ｕを区別表示する。
【００８４】
なお、ユーザの接触位置が下領域３４Ｄに含まれる場合、画像表示制御部５８Ｂは下画像３６Ｄを強調表示する。また、ユーザの接触位置が左領域３４Ｌ又は右領域３４Ｒに含まれる場合、画像表示制御部５８Ｂは左画像３６Ｌ又は右画像３６Ｒを強調表示する。
【００８５】
また例えば図４に示すように、ユーザの接触位置が上領域３４Ｕに含まれる場合、画像表示制御部５８Ｂは、方向パッド３０の基準位置３２から見て、接触位置よりも外側の位置に上画像３６Ｕを表示させる。言い換えれば、画像表示制御部５８Ｂは、方向パッド３０の基準位置３２と上画像３６Ｕとの間の距離が基準位置３２とユーザの接触位置との間の距離よりも大きくなるようにして、上画像３６Ｕの位置を設定する。例えば、画像表示制御部５８Ｂは、ユーザの接触位置から上画像３６Ｕまでの距離が所定距離以上となるようにして、上画像３６Ｕの位置を設定する。
【００８６】
なお、ユーザの接触位置が下領域３４Ｄに含まれる場合、同様にして、画像表示制御部５８Ｂは下画像３６Ｄの位置を設定する。また、ユーザの接触位置が左領域３４Ｌ又は右領域３４Ｒに含まれる場合、同様にして、画像表示制御部５８Ｂは左画像３６Ｌ又は右画像３６Ｒの位置を設定する。
【００８７】
次に、ゲーム装置１０で実行される処理について説明する。図１１は記憶部１２に記憶されるデータの一例を示し、図１２及び図１３は、ゲーム装置１０で所定時間（例えば１／６０秒）ごとに実行される処理の一例を示す。
【００８８】
図１１に示すデータはゲームの現在の状況を示すデータであり、図１２及び図１３に示す処理を実行するために必要なデータである。なお、図１１に示すデータの他にも、例えば、方向パッド３０の基準位置３２、上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、右領域３４Ｒ、及びニュートラル領域３４Ｎ等を特定するためのデータが記憶部１２には記憶されている。
【００８９】
例えば、図１１に示すデータは接触位置データを含む。接触位置データはユーザの現在の接触位置を示す。すなわち、接触位置データはタッチパネル１４Ｔによって検出された最新の接触位置を示す。
【００９０】
また、図１１に示すデータは接触領域の履歴データを含む。この履歴データはユーザの接触領域の変化の履歴を示す。なお、ここでは、上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、右領域３４Ｒ、及びニュートラル領域３４Ｎのうちの、ユーザによって接触された領域（すなわち、ユーザの接触位置が含まれた領域）のことを「接触領域」と記載している。
【００９１】
図１１に示すデータでは、現在の接触領域（すなわち、ユーザが現在接触している領域）と、一つ前の接触領域（すなわち、ユーザが一つ前に接触していた領域）とが記憶されている。図１１に示す例は、ユーザが現在接触している領域が上領域３４Ｕであり、ユーザが一つ前に接触していた領域が左領域３４Ｌである場合を示している。
【００９２】
さらに、図１１に示すデータは振動待機フラグを含む。振動待機フラグは振動の発生を待機している状態であるか否かを示す。例えば、値「０」又は「１」が振動待機フラグに設定される。値「０」が振動待機フラグに設定されている場合（すなわち、振動待機フラグが立っていない場合）とは、振動の発生を待機していない状態に相当する。一方、値「１」が振動待機フラグに設定されている場合（すなわち、振動待機フラグが立っている場合）とは、振動の発生を待機している状態に相当する。
【００９３】
また、図１１に示すデータはユーザキャラクタ２２の位置データ及び向きデータを含む。これらのデータはユーザキャラクタ２２の現在の位置及び向きを示す。さらに、図１１に示すデータは蝶キャラクタ２４の位置データを含む。この位置データは蝶キャラクタ２４の現在の位置を示す。
【００９４】
図１２に示すように、まず制御部１１は、タッチパネル１４Ｔによって接触位置が検出されているか否かを判定する（Ｓ１０１）。タッチパネル１４Ｔによって接触位置が検出されている場合、制御部１１は接触位置を取得する（Ｓ１０２）。この場合、制御部１１は接触位置データを更新する。
【００９５】
その後、制御部１１は、ステップＳ１０２で取得された接触位置が上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、右領域３４Ｒ、及びニュートラル領域３４Ｎのいずれかに含まれているか否かを判定する（Ｓ１０３）。
【００９６】
ステップＳ１０２で取得された接触位置が上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、右領域３４Ｒ、及びニュートラル領域３４Ｎのいずれかに含まれている場合、制御部１１はユーザの接触領域が変化したか否かを判定する（Ｓ１０４）。すなわち、制御部１１は、接触領域の履歴データが示す現在の接触領域と、ステップＳ１０２で取得された接触位置が含まれている領域とが異なっているか否かを判定する。
【００９７】
ユーザの接触領域が変化した場合、制御部１１は接触領域の履歴データを更新する（Ｓ１０５）。また、制御部１１は現在の接触領域がニュートラル領域３４Ｎであるか否かを判定する（Ｓ１０６）。現在の接触領域がニュートラル領域３４Ｎである場合、制御部１１は振動待機フラグを「０」に設定する（Ｓ１０９）。本実施形態では、ユーザの接触領域が上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、又は右領域３４Ｒのいずれかからニュートラル領域３４Ｎに変化した場合には振動を発生させないため、このような処理が実行される。
【００９８】
一方、現在の接触領域がニュートラル領域３４Ｎでない場合、すなわち、現在の接触領域が上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、又は右領域３４Ｒである場合、制御部１１は振動制御フラグが「０」であるか否かを判定する（Ｓ１０７）。振動制御フラグが「０」である場合、制御部１１は振動制御フラグを「１」に更新する（Ｓ１０８）。
【００９９】
一方、ステップＳ１０７において振動制御フラグが「０」でないと判定された場合、すなわち、振動制御フラグが「１」であると判定された場合とは、ユーザの接触位置が第１の領域から第２の領域へと変化した後、第２の領域内で振動待機領域４０（第１の領域と第２の領域との間の境界付近に設定される振動待機領域４０）から出ることなく、第２の領域から第１の領域へと戻った場合である。例えば、図８に示す例においてユーザの接触位置が位置Ｐ３から位置Ｐ４へと変化した場合や、図９に示す例においてユーザの接触位置が位置Ｐ２から位置Ｐ３へと変化した場合である。このような場合、制御部１１は振動制御フラグを「０」にリセットする（Ｓ１０９）。
【０１００】
ステップＳ１０８又はＳ１０９が実行された後、図１３に示すように、制御部１１は振動待機フラグが「１」であるか否かを判定する（Ｓ１１０）。
【０１０１】
振動待機フラグが「１」である場合、制御部１１は、ステップＳ１０２で取得された接触位置が、現在の接触領域内に設定された振動待機領域４０であって、かつ、現在の接触領域と一つ前の接触領域との間の境界付近に設定された振動待機領域４０に含まれているか否かを判定する（Ｓ１１１）。例えば、現在の接触領域が上領域３４Ｕであり、かつ、一つ前の接触領域が左領域３４Ｌである場合、制御部１１は、ステップＳ１０２で取得された接触位置が振動待機領域４０Ａに含まれているか否かを判定する。
【０１０２】
ステップＳ１０２で取得された接触位置が上記の振動待機領域４０に含まれている場合とは、例えば、ステップＳ１０２で取得された接触位置が図８に示す位置Ｐ３又はＰ７である場合や、ステップＳ１０２で取得された接触位置が図９に示す位置Ｐ２又はＰ４である場合である。このような場合、制御部１１は後述のステップＳ１１２，Ｓ１１３を実行することなく、ステップＳ１１４を実行する。この場合、タッチパネル１４Ｔの振動は待機される。
【０１０３】
一方、ステップＳ１０２で取得された接触位置が上記の振動待機領域４０に含まれていない場合とは、例えば、ステップＳ１０２で取得された接触位置が図８に示す位置Ｐ８である場合や、ステップＳ１０２で取得された接触位置が図９に示す位置Ｐ５である場合である。このような場合、制御部１１は振動部１５を駆動することによって、タッチパネル１４Ｔを振動させる（Ｓ１１２）。また、制御部１１は振動待機フラグを「０」にリセットする（Ｓ１１３）。
【０１０４】
また、制御部１１はユーザキャラクタ２２の位置データ及び向きデータを更新する（Ｓ１１４）。例えば、制御部１１は、ユーザキャラクタ２２が現在の接触領域に対応する方向を向くように、ユーザキャラクタ２２の向きを設定する。また制御部１１は、ユーザキャラクタ２２が向いている方向に移動するように、ユーザキャラクタ２２の位置を更新する。
【０１０５】
また、制御部１１は蝶キャラクタ２４の位置データを更新する（Ｓ１１５）。例えば、制御部１１は、「ユーザキャラクタ２２の代表点２２Ａから蝶キャラクタ２４への方向」が「方向パッド３０の基準位置３２からステップＳ１０２で取得された接触位置への方向」と対応するようにして、蝶キャラクタ２４の位置を設定する。さらに、制御部１１は図１１に示すデータに基づいてゲーム画面２０を更新する（Ｓ１１６）。
【０１０６】
なお、ステップＳ１０１において、タッチパネル１４Ｔによって接触位置が検出されていないと判定された場合、制御部１１は接触位置データ、接触領域の履歴データ、及び振動待機フラグをリセットする（Ｓ１１７）。この場合、接触位置データは接触位置が検出されていないことを示すことになる。また、接触領域の履歴が消去され、振動待機フラグが「０」に設定される。その後、ゲーム画面２０が更新される（Ｓ１１６）。
【０１０７】
また、ステップＳ１０３において、接触位置が上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、右領域３４Ｒ、及びニュートラル領域３４Ｎのいずれにも含まれていないと判定された場合にも、制御部１１は接触位置データ、接触領域の履歴データ、及び振動待機フラグをリセットする（Ｓ１１７）。その後、ゲーム画面２０が更新される（Ｓ１１６）。
【０１０８】
以上に説明したゲーム装置１０では、ユーザが入力している方向が変化した場合に振動が発生するようになっている。このため、ゲーム装置１０によれば、ユーザが入力方向を変えるべく操作を行った場合に、その操作によって本当に入力方向が変わったか否かをユーザ自身が把握できるようになる。
【０１０９】
またゲーム装置１０では振動待機領域４０が設定されるようになっている。その結果、ゲーム装置１０によれば、ユーザの接触位置が領域の境界付近で変化したような場合であっても、必要以上に連続的に振動が発生しないように担保することが可能になる。
【０１１０】
さらにゲーム装置１０では、上画像３６Ｕ、下画像３６Ｄ、左画像３６Ｌ、及び右画像３６Ｒのうちの、ユーザの接触位置が含まれている領域に対応する画像が強調表示される。ゲーム装置１０によれば、ユーザが入力している方向をユーザ自身が把握し易くなる。
【０１１１】
またゲーム装置１０では、蝶キャラクタ２４が表示されることによって、ユーザが接触している方向パッド３０内の位置をユーザ自身が把握し易くなる。
【０１１２】
なお、本発明は以上に説明した実施の形態に限定されるものではない。
【０１１３】
［変形例１］以上に説明した実施形態では、上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒが固定されていたが、上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒが変化するようにしてもよい。
【０１１４】
図１４はこの場合の機能ブロック図を示す。図１４に示す機能ブロック図は、領域設定部６０がゲーム装置１０に含まれる点で図１０と異なっている。他の機能ブロックと同様、領域設定部６０も制御部１１によって実現される。なお、領域設定部６０以外の機能ブロックは図１０と同様であるため、以下では領域設定部６０について説明する。
【０１１５】
［変形例１−１］例えば、以上に説明した実施形態では、ユーザの接触位置が領域の境界付近で変化したような場合であっても、必要以上に連続的に振動が発生しないように担保するために、振動待機領域４０を設定するようになっていた。しかしながら、振動待機領域４０を設定する代わりに、上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及びの右領域３４Ｒの境界を変更するようにしてもよい。
【０１１６】
この場合の領域設定部６０は、接触位置が上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのうちの第１の領域内から第２の領域（第１の領域と隣り合う領域）内に変化した場合、第２の領域が第１の領域側に広がり、かつ、第１の領域が狭まるように、第１の領域と第２の領域との間の境界を変更する。
【０１１７】
図１５及び図１６はこの場合の領域設定部６０の機能について説明するための図である。図１５はユーザの接触位置が左領域３４Ｌ内の位置Ｐ１から上領域３４Ｕ内の位置Ｐ２に変化した場合を示す。この場合、振動制御部５４によって振動が発生される。またこの場合、図１６に示すように、領域設定部６０は、上領域３４Ｕが左領域３４Ｌ側に広がり、かつ、左領域３４Ｌが狭まるように、左領域３４Ｌと上領域３４Ｕとの間の境界を変更する。
【０１１８】
この場合、ユーザの接触位置が位置Ｐ２から左領域３４Ｌに向かって多少変化したとしても、左領域３４Ｌと上領域３４Ｕとの間の境界が変更されているため、ユーザの接触位置は左領域３４Ｌに含まれ難くなる。その結果、振動が発生し難くなる。すなわち図１６に示すように、ユーザの接触位置が位置Ｐ２から位置Ｐ３に変化したとしても、ユーザの接触位置は左領域３４Ｌに含まれなくなり、その結果、振動が発生しなくなる。このようにしても、ユーザの接触位置が領域の境界付近で変化したような場合であっても、必要以上に連続的に振動が発生しないように担保することが可能になる。
【０１１９】
［変形例１−２］また例えば、領域設定部６０は方向パッド３０（上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒ）を接触位置に基づいて設定するようにしてもよい。
【０１２０】
例えば、接触位置が検出されていない状態から、接触位置がによって検出される状態へと変化した場合に、領域設定部６０は、タッチパネル１４Ｔによって検出された接触位置に基づいて、方向パッド３０の位置を初期設定するようにしてもよい。例えば、領域設定部６０は、タッチパネル１４Ｔによって検出された接触位置を方向パッド３０の基準位置３２として決定するようにしてもよい。
【０１２１】
また例えば、接触位置が方向パッド３０内から方向パッド３０外に変化した場合に、領域設定部６０は方向パッド３０の位置を接触位置に基づいて変更（補正）するようにしてもよい。例えば、領域設定部６０は、接触位置が方向パッド３０の領域内に含まれるようにすべく、方向パッド３０を移動させるようにしてもよい。例えば、領域設定部６０は、方向パッド３０の基準位置３２から接触位置への方向に方向パッド３０を移動させるようにしてもよい。ただし、方向パッド３０と接触位置とが離れすぎている場合、領域設定部６０は方向パッド３０の移動を行わないようにしてもよい。例えば、方向パッド３０の基準位置３２と接触位置との間の距離が所定距離以内である場合に限って、領域設定部６０は方向パッド３０の移動を行うようにしてもよい。
【０１２２】
以上のようにすれば、ユーザの接触位置に合わせて方向パッド３０の位置を設定できるようになり、その結果として、ユーザが方向パッド３０の位置に合わせて接触位置を調整する手間が軽減されるため、ユーザの操作のし易さを向上することが可能になる。
【０１２３】
［変形例１−３］また例えば、接触位置が検出されている状態から接触位置が検出されない状態へと変わった後で接触位置が検出された場合に、領域設定部６０は、方向パッド３０（上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒ）を接触位置に基づいて移動させるようにしてもよい。
【０１２４】
ここで、接触位置として位置Ｐ１が検出されている状態から接触位置が検出されない状態へと変わった後で接触位置として位置Ｐ２が検出された場合を想定する。なお、位置Ｐ１，Ｐ２は方向パッド３０内の位置であることとする。
【０１２５】
この場合、例えば、領域設定部６０は位置Ｐ１，Ｐ２が近いか否かを判定する。例えば、領域設定部６０は、位置Ｐ１，Ｐ２の間の距離が所定距離以内であるか否かを判定する。そして、上記距離が所定距離以内である場合、領域設定部６０は、方向パッド３０（基準位置３２）と位置Ｐ２との位置関係が方向パッド３０（基準位置３２）と位置Ｐ１との位置関係と一致するようにすべく、方向パッド３０を移動するようにしてもよい。言い換えれば、領域設定部６０は、基準位置３２に対する位置Ｐ２の相対的位置が基準位置３２に対する位置Ｐ１の相対的位置と一致するようにすべく、方向パッド３０を移動するようにしてもよい。
【０１２６】
位置Ｐ１，Ｐ２が近い場合、ユーザは方向パッド３０内の同じ位置を接触しているつもりである可能性が高い。この点、以上のようにすれば、ユーザの意図に合わせて方向パッド３０の位置を設定することが可能になり、その結果として、ユーザが方向パッド３０の位置に合わせて接触位置を調整する手間が軽減されるため、ユーザの操作のし易さを向上することが可能になる。
【０１２７】
［変形例２］例えば、振動制御部５４は、タッチパネル１４Ｔを振動させる場合の振動の態様を変えるようにしてもよい。なお、「振動の態様を変える」とは、例えば、振動の大きさ（振幅）、長さ、又は間隔（周波数）を変えることである。
【０１２８】
図１７はこの場合の機能ブロック図を示す。図１７に示す機能ブロック図は、振動態様設定部５４Ａが振動制御部５４に含まれる点で図１０と異なっている。なお、振動制御部５４（振動態様設定部５４Ａ）以外の機能ブロックは図１０と同様であるため、以下では振動制御部５４（振動態様設定部５４Ａ）について説明する。
【０１２９】
［変形例２−１］例えば、振動態様設定部５４Ａは、接触位置が、上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのうちの一の領域内から他の領域内に変化した場合に、所定のタイミングにおける接触位置の変化速度に基づいて、タッチパネルを振動させる場合の振動の態様を設定するしてもよい。
【０１３０】
ここで、「所定のタイミング」とは、接触位置が一の領域内から他の領域内に変化したタイミングである。なお、「所定のタイミング」とは、接触位置が一の領域内から他の領域内に変化する直前のタイミングであってもよいし、接触位置が一の領域内から他の領域内に変化した後のタイミングであってもよい。例えば、「所定のタイミング」とは、接触位置が一の領域内から他の領域内に変化した後において、接触位置が他の領域内において振動待機領域４０内から振動待機領域４０外に変化したタイミングであってもよい。
【０１３１】
また、「接触位置の変化速度」は、所定時間（例えば単位時間）当たりの接触位置の変化量である。言い換えれば、「接触位置の変化速度」は、所定時間（例えば単位時間）の間における接触位置の移動距離である。例えば、あるタイミングＴ１における接触位置の変化速度は、例えば、タイミングＴ１における接触位置と、タイミングＴ１よりも前のタイミングＴ２における接触位置との間の距離（接触位置の変化量）を、タイミングＴ１，Ｔ２の間の時間で除することによって取得される。
【０１３２】
接触位置の変化速度に基づいて振動の態様を設定する場合には、接触位置の変化速度と振動の態様との対応関係を示す対応関係データが必要となる。図１８はこの対応関係データの一例を示す。なお、図１８は、接触位置の変化速度（ｖ）に基づいて振動の大きさを変える場合の対応関係データの一例を示す。図１８に示す例では、接触位置の変化速度（ｖ）が速いほど、振動の大きさが大きくなるようになっている。この場合、振動態様設定部５４Ａは、所定のタイミングにおける接触位置の変化速度と、図１８に示す対応関係データとに基づいて、振動の大きさを決定する。
【０１３３】
以上のようにすれば、ユーザが振動の態様から接触位置の変化速度を把握できるように補助することが可能になる。
【０１３４】
［変形例２−２］例えば、振動態様設定部５４Ａは、接触位置が、上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのうちの一の領域内から他の領域内に変化した場合に、所定のタイミングにおける接触位置に基づいて、タッチパネルを振動させる場合の振動の態様を設定するようにしてもよい。なお、「所定のタイミング」は変形例２−１と同様である。
【０１３５】
例えば、振動態様設定部５４Ａは、所定のタイミングにおける接触位置と基準位置３２との間の距離に基づいて、タッチパネルを振動させる場合の振動の態様を設定する。
【０１３６】
接触位置に基づいて振動の態様を設定する場合には、接触位置と振動の態様との対応関係を示す対応関係データが必要となる。例えば、接触位置と基準位置３２との間の距離に基づいて振動の態様を設定する場合には、上記距離と振動の態様との対応関係を示す対応関係データが必要となる。図１９はこの対応関係データの一例を示す。なお、図１９は、上記距離（ｄ）に基づいて振動の大きさを変える場合の対応関係データの一例を示す。図１９に示す例では、上記距離（ｄ）が長いほど、振動の大きさが大きくなるようになっている。この場合、振動態様設定部５４Ａは、所定のタイミングにおける上記距離と、図１９に示す対応関係データとに基づいて、振動の大きさを決定する。
【０１３７】
以上のようにすれば、ユーザの接触領域が変化した場合における接触位置（ユーザの接触位置が基準位置３２がどれだけ離れているか）をユーザが振動の態様から把握できるように補助することが可能になる。
【０１３８】
［変形例３］例えば、接触位置が上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのうちのいずれかの領域内からこれらの領域外に変化した場合にも、振動制御部５４はタッチパネル１４Ｔを振動させるための制御を実行するようにしてもよい。
【０１３９】
図２０はこの場合の機能ブロック図を示す。図２０に示す機能ブロック図は、領域外判定部６２がゲーム装置１０に含まれる点で図１０と異なっている。他の機能ブロックと同様、領域外判定部６２も制御部１１によって実現される。なお、領域外判定部６２及び振動制御部５４以外の機能ブロックは図１０と同様であるため、以下では領域外判定部６２及び振動制御部５４について説明する。
【０１４０】
例えば、領域外判定部６２は、接触位置が上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのうちのいずれかの領域内から方向パッド３０外に変化したか否かを判定する。このような変化があったと判定された場合に、振動制御部５４はタッチパネル１４Ｔを振動させるための制御を実行する。
【０１４１】
なお、振動制御部５４は、この場合の振動の態様（例えば大きさ、長さ、又は周波数）を、上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのうちの一の領域からの他の領域へと変化した場合の振動の態様と異ならせるようにしてもよい。例えば、振動制御部５４は、この場合の振動の大きさを、上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのうちの一の領域からの他の領域へと変化した場合の振動の大きさよりも大きくするようにしてもよい。
【０１４２】
このようにすれば、接触位置が方向パッド３０内から方向パッド３０外に変化したことをユーザが把握できるように補助することが可能になる。
【０１４３】
［変形例４］例えば、操作対象表示制御部５８Ａは、「ユーザキャラクタ２２から蝶キャラクタ２４への方向」が「接触位置が含まれる領域に対応する方向」と対応するようにして、蝶キャラクタ２４の位置を設定するようにしてもよい。
【０１４４】
例えば、接触位置が上領域３４Ｕに含まれる場合、操作対象表示制御部５８Ａは蝶キャラクタ２４をユーザキャラクタ２２の真上に表示するようにしてもよい。また例えば、接触位置が左領域３４Ｌに含まれる場合、操作対象表示制御部５８Ａは、ユーザから見てユーザキャラクタ２２の左側に蝶キャラクタ２４を表示するようにしてもよい。このようにしても、ユーザがユーザキャラクタ２２に注目しながら自分が指示している方向を把握できるように補助することが可能になる。
【０１４５】
［変形例５］本発明は、サーバとゲーム装置とを含むゲームシステムにも適用することが可能である。すなわち、本発明は、サーバとゲーム装置との間でデータ通信を行いながら実行されるゲームにも適用することが可能である。
【０１４６】
図２１は本発明の他の実施形態に係るゲームシステムの全体構成を示す。図２１に示すように、ゲームシステム１００はサーバ１１０とゲーム装置１０とを含む。サーバ１１０及びゲーム装置１０は通信ネットワーク１２０に接続される。このため、サーバ１１０とゲーム装置１０との間で相互にデータ通信が可能である。
【０１４７】
サーバ１１０は例えばサーバコンピュータによって実現される。図２１に示すように、サーバ１１０は制御部１１１、記憶部１１２、及び通信部１１３を含む。制御部１１１、記憶部１１２、及び通信部１１３はゲーム装置１０の制御部１１、記憶部１２、及び通信部１３と同様である。なお、プログラムやデータは例えば通信ネットワーク１２０を介してサーバ１１０に供給される。サーバ１１０は、情報記憶媒体（例えば光ディスク又はメモリカード等）に記憶されたプログラム又はデータを読み取るための構成要素を含むようにしてもよい。そして、プログラムやデータが情報記憶媒体を介してサーバ１１０に供給されるようにしてもよい。
【０１４８】
この場合、図１０、図１７、及び図２０に示す機能ブロックはサーバ１１０の制御部１１１によって実現されるようにしてもよいし、ゲーム装置１０の制御部１１によって実現されるようにしてもよい。例えば、すべての機能ブロックがサーバ１１０（ゲーム制御装置）によって実現されるようにしてもよい。または、一部の機能ブロックがゲーム装置１０によって実現され、残りの機能ブロックがサーバ１１０によって実現されるようにしてもよい。
【０１４９】
なお例えば、判定部５２がサーバ１１０によって実現される場合、方向入力受付部５０の受付結果を示すデータがゲーム装置１０からサーバ１１０に送信され、このデータに基づいて判定部５２の判定が実行される。
【０１５０】
また例えば、方向入力受付部５０がサーバ１１０によって実現される場合、タッチパネル１４Ｔの検出結果を示すデータがゲーム装置１０からサーバ１１０に送信され、接触位置が上領域３４Ｕ、下領域３４Ｄ、左領域３４Ｌ、及び右領域３４Ｒのいずれに含まれるかが方向入力受付部５０（サーバ１１０）によって判定される。
【０１５１】
また例えば、振動制御部５４がサーバ１１０によって実現される場合、振動制御部５４（サーバ１１０）は、振動部１５を駆動することを指示するデータをゲーム装置１０に送信することによって、タッチパネル１４Ｔを振動させる。
【０１５２】
また例えば、表示制御部５８がサーバ１１０によって実現される場合、表示制御部５８（サーバ１１０）は、ゲーム画面２０を表示するためのデータをゲーム装置１０に送信することによって、ゲーム画面２０を表示部１６に表示させる。
【０１５３】
［その他の変形例］例えば、以上の変形例１〜５のうちの複数を組み合わせるようにしてもよい。
【０１５４】
また例えば、操作対象制御部５６、操作対象表示制御部５８Ａ、及び画像表示制御部５８Ｂは必須でなく、省略するようにしてもよい。例えば、蝶キャラクタ２４を表示することは必須でない。また例えば、振動待機領域４０やニュートラル領域３４Ｎを設定することは必須でない。
【０１５５】
また例えば、以上に説明した実施形態では、ユーザキャラクタ２２のような人型のゲームキャラクタがユーザの操作対象になっているが、ユーザの操作対象は人型のゲームキャラクタに限られない。また、以上に説明した実施形態では、蝶キャラクタ２４がユーザキャラクタ２２に関連づけて表示されているが、蝶キャラクタ２４以外のキャラクタがユーザキャラクタ２２に関連づけて表示されるようにしてもよいし、キャラクタ以外の画像（例えばマーク、カーソル、又はアイコン等）がユーザキャラクタ２２に関連づけて表示されるようにしてもよい。
【０１５６】
また例えば、本発明は、ユーザが方向入力操作を行うようなゲームに適用することが可能である。すなわち、本発明は、ユーザが仮想的な方向パッド（又は方向ボタン、方向レバー）を用いて方向入力操作を行うようなゲームに適用することが可能であり、以上に説明したゲーム以外のゲームにも適用することが可能である。例えば、本発明は、スポーツゲーム（例えばサッカーゲーム、野球ゲーム、アイスホッケーゲーム、又はバスケットボールゲーム）、ロールプレイングゲーム、格闘ゲーム、アクションゲーム、シューティングゲーム、又はパズルゲーム等の各種ゲームに適用することが可能である。
【０１５７】
［発明のまとめ］以上の記載から本発明は例えば以下のように把握される。
【０１５８】
本発明に係るゲーム制御装置は、タッチパネル（１４Ｔ）によって検出される接触位置が、複数の方向にそれぞれ対応するように設定された複数の領域のうちのいずれに含まれるかを判定することによって、方向入力を受け付ける方向入力受付手段（５０）と、前記接触位置が前記複数の領域のうちの一の領域内から他の領域内に変化したか否かを判定する判定手段（５２）と、前記接触位置が前記一の領域内から前記他の領域内に変化した場合に、前記タッチパネルを振動させるための制御を実行する振動制御手段（５４）と、を含む。
【０１５９】
本発明に係るゲームシステムは、タッチパネル（１４Ｔ）によって検出される接触位置が、複数の方向にそれぞれ対応するように設定された複数の領域のうちのいずれに含まれるかを判定することによって、方向入力を受け付ける方向入力受付手段（５０）と、前記接触位置が前記複数の領域のうちの一の領域内から他の領域内に変化したか否かを判定する判定手段（５２）と、前記接触位置が前記一の領域内から前記他の領域内に変化した場合に、前記タッチパネルを振動させるための制御を実行する振動制御手段（５４）と、を含む。
【０１６０】
本発明に係るプログラムは、タッチパネル（１４Ｔ）によって検出される接触位置が、方向入力を受け付けるために設定された複数の領域であって、かつ、複数の方向にそれぞれ対応するように設定された複数の領域のうちの一の領域内から他の領域内に変化したか否かを判定する判定手段（５２）の判定結果を取得する手段、及び、前記接触位置が前記一の領域内から前記他の領域内に変化した場合に、前記タッチパネルを振動させるための制御を実行する振動制御手段（５４）、としてコンピュータを機能させるためのプログラムである。
【０１６１】
本発明によれば、ユーザが入力方向を変えるべく操作を行った場合に、その操作によって本当に入力方向が変わったか否かをユーザが振動によって把握できるようになるため、タッチパネルを介して行われる方向入力操作をユーザが行い易くなるように補助することが可能になる。
【０１６２】
本発明の一態様では、前記複数の領域のうちの、前記接触位置が含まれる領域に対応する方向を向くように、ユーザの操作対象の向きを設定する操作対象制御手段（５８Ａ）を含むようにしてもよい。このようにすれば、ユーザが操作対象の向きを変えるべく操作を行った場合に、その操作によって本当に操作対象の向きが変わったか否かをユーザが振動によって把握できるようになり、また、操作対象の向きが変わったことをユーザが視覚的にも把握できるようになるため、タッチパネルを介して行われる、操作対象の向きを指示する操作をユーザが行い易くなるように補助することが可能になる。
【０１６３】
本発明の一態様では、前記複数の領域は、第１の領域と、前記第１の領域と隣り合う第２の領域と、を含み、前記第２の領域は、前記第１の領域との境界付近に設定される第３の領域を含み、前記振動制御手段（５４）は、前記接触位置が前記第１の領域内から前記第２の領域内に変化した場合、前記接触位置が前記第２の領域内の前記第３の領域以外の領域に含まれる状態になるまで、前記タッチパネルを振動させることを待機させる手段を含むようにしてもよい。このようにすれば、接触位置が領域の境界付近で変化するような場合に必要以上に連続的に振動が発生してしまうことを抑制できるようになる。
【０１６４】
本発明の一態様では、前記複数の領域は、第１の領域と、前記第１の領域と隣り合う第２の領域と、を含み、前記ゲーム制御装置は、前記接触位置が前記第１の領域内から前記第２の領域内に変化した場合、前記第２の領域が前記第１の領域側に広がり、かつ、前記第１の領域が狭まるように前記第１の領域と前記第２の領域との間の境界を変更する手段（６０）を含むようにしてもよい。このようにしても、接触位置が領域の境界付近で変化するような場合に必要以上に連続的に振動が発生してしまうことを抑制できるようになる。
【０１６５】
本発明の一態様では、前記複数の領域は基準位置を中心に設定され、前記複数の領域の各々は、前記基準位置付近に設定される第４の領域を含み、前記振動制御手段（５４）は、前記接触位置が前記一の領域内に変化した場合、前記接触位置が前記一の領域内の前記第４の領域以外の領域に含まれる状態になるまで、前記タッチパネルを振動させることを待機させる手段を含むようにしてもよい。このようにすれば、接触位置が領域の境界付近で変化するような場合に必要以上に連続的に振動が発生してしまうことを抑制できるようになる。
【０１６６】
本発明の一態様では、前記複数の領域を前記接触位置に基づいて設定する手段（６０）を含むようにしてもよい。このようにすれば、接触位置に合わせて複数の領域が設定されるようになり、その結果として、ユーザが複数の領域に合わせて接触位置を調整する手間が軽減されるため、ユーザの操作のし易さを向上することが可能になる。
【０１６７】
本発明の一態様では、前記接触位置が検出されている状態から前記接触位置が検出されない状態へと変わった後で前記接触位置が検出された場合、前記複数の領域を前記接触位置に基づいて移動させる手段（６０）を含むようにしてもよい。このようにすれば、接触位置が検出されている状態から接触位置が検出されない状態へと変わった後で接触位置が検出された場合に、当該接触位置に合わせて複数の領域が移動するようになり、その結果として、ユーザが複数の領域に合わせて接触位置を調整する手間が軽減されるため、ユーザの操作のし易さを向上することが可能になる。
【０１６８】
本発明の一態様では、前記複数の領域のうちの、前記接触位置が含まれる領域に対応する方向を示す画像を、前記タッチパネルを備えた表示手段に表示させるための制御を実行する画像表示制御手段（５８Ｂ）を含むようにしてもよい。このようにすれば、接触位置が含まれる領域に対応する方向（すなわち、入力されている方向）をユーザが把握し易くなるようにすることが可能になる。
【０１６９】
本発明の一態様では、前記複数の領域は基準位置を中心に設定され、前記画像表示制御手段（５８Ｂ）は、前記複数の領域のうちの、前記接触位置が含まれる領域に関連づけて前記画像を表示し、前記基準位置から見て、前記接触位置よりも外側の位置に前記画像を表示させるようにしてもよい。このようにすれば、接触位置が含まれる領域に対応する方向（すなわち、入力されている方向）を示す画像がユーザの指等によって隠れて見難くなってしまうことを防ぐことができるようになるため、接触位置が含まれる領域に対応する方向（すなわち、入力されている方向）をユーザが視覚的に把握し易くなるようにすることが可能になる。
【０１７０】
本発明の一態様では、前記接触位置が前記複数の領域のうちのいずれかの領域内から前記複数の領域外に変化したか否かを判定する領域外判定手段（６２）を含み、前記振動制御手段（５４）は、前記接触位置が前記複数の領域のうちのいずれかの領域内から前記複数の領域外に変化した場合に、前記タッチパネルを振動させるための制御を実行する手段を含むようにしてもよい。このようにすれば、接触位置が複数の領域のうちのいずれかの領域内から複数の領域外に変化したことをユーザが把握し易くなるようにすることが可能になる。
【０１７１】
本発明の一態様では、前記振動制御手段（５４）は、前記接触位置が前記一の領域内から前記他の領域内に変化した場合に、所定のタイミングにおける前記接触位置の変化速度に基づいて、前記タッチパネルを振動させる場合の振動の態様を設定する振動態様設定手段（５４Ａ）を含むようにしてもよい。このようにすれば、接触位置が一の領域内から他の領域内に変化した場合に、接触位置の変化速度をユーザが振動の態様から把握できるようにすることが可能になる。
【０１７２】
本発明の一態様では、前記振動制御手段（５４）は、前記接触位置が前記一の領域内から前記他の領域内に変化した場合に、所定のタイミングにおける前記接触位置に基づいて、前記タッチパネルを振動させる場合の振動の態様を設定する振動態様設定手段（５４Ａ）を含むようにしてもよい。このようにすれば、接触位置が一の領域内から他の領域内に変化した場合に、複数の領域内における接触位置をユーザが振動の態様から把握できるようにすることが可能になる。
【０１７３】
本発明の一態様では、前記複数の領域は基準位置を中心に設定され、前記振動態様設定手段（５４Ａ）は、前記所定のタイミングにおける前記接触位置と前記基準位置との間の距離に基づいて、前記タッチパネルを振動させる場合の振動の態様を設定する手段を含むようにしてもよい。このようにすれば、接触位置が一の領域内から他の領域内に変化した場合に、接触位置と基準位置との間の距離（すなわち、接触位置が基準位置からどの程度離れているのか）をユーザが振動の態様から把握できるようにすることが可能になる。
【０１７４】
本発明の一態様では、ユーザの操作対象と、前記ユーザの操作対象に関連づけて表示される表示対象とを表示手段に表示させるための制御を実行する操作対象表示制御手段（５８Ａ）を含み、前記複数の領域は基準位置を中心に設定され、前記操作対象表示制御手段（５８Ａ）は、前記表示対象の位置を前記ユーザの操作対象の位置に基づいて設定する手段であって、前記ユーザの操作対象から前記表示対象への方向が、前記基準位置から前記接触位置への方向と対応するようにして、前記表示対象の位置を設定する手段を含むようにしてもよい。このようにすれば、ユーザが、操作対象に注目しながら、基準位置から接触位置への方向（言い換えれば、基準位置に対する接触位置の相対的な位置）を把握できるようにすることが可能になる。
【０１７５】
本発明の一態様では、ユーザの操作対象と、前記ユーザの操作対象に関連づけて表示される表示対象とを表示手段に表示させるための制御を実行する操作対象表示制御手段（５８Ａ）を含み、前記操作対象表示制御手段（５８Ａ）は、前記表示対象の位置を前記ユーザの操作対象の位置に基づいて設定する手段であって、前記ユーザの操作対象から前記表示対象への方向が、前記接触位置が含まれる領域に対応する方向と対応するようにして、前記表示対象の位置を設定する手段を含むようにしてもよい。このようにすれば、ユーザが、操作対象に注目しながら、接触位置が含まれる領域に対応する方向（すなわち、入力している方向）を把握できるようにすることが可能になる。
【０１７６】
なお、上記では、本発明の理解を容易にするために、図面に記載の符号を括弧書きで記載しているが、これにより本発明が図示の態様に限定されるものではない。
【符号の説明】
【０１７７】
１０  ゲーム装置、１１，１１１  制御部、１２，１１２  記憶部、１３，１１３  通信部、１４  操作部、１４Ｔ  タッチパネル、１５  振動部、１６  表示部、１７  音声出力部、２０  ゲーム画面、２２  ユーザキャラクタ、２２Ａ  代表点、２４  蝶キャラクタ、３０  方向パッド、３２  基準位置、３４Ｕ  上領域、３４Ｄ  下領域、３４Ｌ  左領域、３４Ｒ  右領域、３４Ｎ  ニュートラル領域、３６Ｕ  上画像、３６Ｄ  下画像、３６Ｌ  左画像、３６Ｒ  右画像、４０Ａ，４０Ｂ，４０Ｃ，４０Ｄ，４０Ｅ，４０Ｆ，４０Ｇ，４０Ｈ，４０Ｉ，４０Ｊ，４０Ｋ，４０Ｌ  振動待機領域、５０  方向入力受付部、５２  判定部、５４  振動制御部、５４Ａ  振動態様設定部、５６  操作対象制御部、５８  表示制御部、５８Ａ  操作対象表示制御部、５８Ｂ  画像表示制御部、６０  領域設定部、６２  領域外判定部、１００  ゲームシステム、１１０  サーバ、１２０  通信ネットワーク。
【図１】
0005843908.tif 000002
【図２】
0005843908.tif 000003
【図３】
0005843908.tif 000004
【図４】
0005843908.tif 000005
【図５】
0005843908.tif 000006
【図６】
0005843908.tif 000007
【図７】
0005843908.tif 000008
【図８】
0005843908.tif 000009
【図９】
0005843908.tif 000010
【図１０】
0005843908.tif 000011
【図１１】
0005843908.tif 000012
【図１２】
0005843908.tif 000013
【図１３】
0005843908.tif 000014
【図１４】
0005843908.tif 000015
【図１５】
0005843908.tif 000016
【図１６】
0005843908.tif 000017
【図１７】
0005843908.tif 000018
【図１８】
0005843908.tif 000019
【図１９】
0005843908.tif 000020
【図２０】
0005843908.tif 000021
【図２１】
0005843908.tif 000022