(57)【要約】【課題】  プレイヤが直感的な操作で選択状態を解除することができるゲームプログラムおよびゲーム装置を提供すること。【解決手段】  プレイヤが画面上に表示されているオブジェクト群を選択すると、当該オブジェクト群が選択された状態であることを示す選択関連領域の表示がなされる。この表示が出ているときに、プレイヤが、スティック等で当該選択関連領域を横断する軌跡を描くような入力を行う。そして、この入力軌跡と選択関連領域とが交差していると判定されると、上記選択された状態が解除される。【選択図】  図２１
2006304855.tif 000002
【特許請求の範囲】
【請求項１】
ゲーム画像を表示するための表示画面と当該表示画面に関連して設けられるポインティングデバイスとを備えるゲーム装置のコンピュータに、
前記表示画面上の所定のオブジェクト群あるいは所定の領域がプレイヤにより選択されたとき、当該選択されたオブジェクト群あるいは領域に関連付けて、画面上の所定の領域を選択関連領域として設定する選択領域設定ステップと、
前記ポインティングデバイスからの出力信号に基づいて、当該ポインティングデバイスを通じて入力される前記表示画面上の位置を示す座標値を検出してメモリに順次格納する座標検出ステップと、
前記座標検出ステップにより前記メモリに格納された座標値群に基づいて、プレイヤの入力軌跡が前記選択関連領域を通過する軌跡であるか否かを判定する通過判定ステップと、
前記通過判定ステップによりプレイヤの入力座標の軌跡が前記選択関連領域を通過する軌跡であると判定されたとき、前記選択を解除する選択解除ステップとを実行させる、ゲームプログラム。
【請求項２】
前記選択領域設定ステップにより前記選択関連領域が設定されたときに、当該選択関連領域として設定された画面上の所定の領域が選択関連領域であることを示す選択領域表示を行う選択領域表示ステップと、
前記選択解除ステップにより前記選択が解除されたときに、前記選択領域表示を消去する選択領域表示消去ステップとを前記コンピュータに更に実行させる、請求項１に記載のゲームプログラム。
【請求項３】
前記選択関連領域の輪郭部分に相当する前記表示画面上の座標を示す輪郭データを取得する輪郭データ取得ステップを前記コンピュータに更に実行させ、
前記通過判定ステップは、前記座標検出ステップにより前記メモリに格納された座標値群および前記輪郭データに基づいて前記プレイヤの入力軌跡が前記輪郭を通過する軌跡であるか否かを判定し、
前記選択解除ステップは、前記通過判定ステップによりプレイヤの入力座標の軌跡が前記輪郭を通過する軌跡であると判定されたとき、前記選択を解除することを特徴とする、請求項１に記載のゲームプログラム。
【請求項４】
前記メモリに格納された座標値群に基づいて、連続する各座標値の間の距離および方向を示すベクトルデータ群を算出するベクトルデータ算出ステップと、
前記第１の入力座標値が前記選択関連領域外であるか否かを判定する入力開始位置判定ステップと、
前記ベクトルデータ群のうち、前記輪郭と交差しているベクトルデータが少なくとも２つ存在するか否かを判定する交差判別ステップとを更に前記コンピュータに実行させ、
前記選択状態解除ステップは、前記交差判別ステップによって前記交差しているベクトルデータが２つ以上あると判定されたときに、前記選択状態の解除を行う、請求項３記載のゲームプログラム。
【請求項５】
前記選択状態解除ステップは、前記輪郭と交差しているベクトルデータのうち、１回目の交差時のベクトルデータと２回目の交差時のベクトルデータとのなす角度が所定の角度以下であるときに、前記選択状態の解除を行うことを特徴とする、請求項４記載のゲームプログラム。
【請求項６】
請求項１から５のいずれかに記載のゲームプログラムを記憶した記憶手段と、
前記記憶手段に記憶されたゲームプログラムを実行するプログラム実行手段とを備えたゲーム装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲーム操作処理に関し、より特定的には、入力装置としてポインティングデバイスを用いたゲーム操作処理に関する。
【背景技術】
【０００２】
従来から、十字キーやボタンからなるコントローラ以外の入力装置を用いて遊ぶゲ−ム装置が提案されている。例えば、タッチパネルを通じて手書きで図形を入力し、入力された図形の認識結果によりゲームの進行が行われるゲーム装置がある（例えば、特許文献１）。
【０００３】
また、シミュレーションゲームなどにおいて、移動したいキャラクタを選択した後、当該キャラクタの選択を解除可能にするために、所定のボタン、例えばキャンセルボタン等が押されたかどうかに応じて選択解除を行うようにする技術があった。
【特許文献１】特開２０００−２４５９６０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、最近のゲーム装置では、コントローラに多数のボタンを備えているものが主流となってきている。そのため、操作説明書を読まない限り、選択解除のためのボタンがどれであるのか分からないことも多い。また、操作説明書を読んだとしても、ゲームのプレイ中、選択解除のためのボタンがどれであったか忘れてしまったり、ボタンを押し間違えたりすることがあり、プレイヤに快適な操作環境を与えることができないという問題があった。
【０００５】
それ故に、本発明の目的は、プレイヤが直感的な操作で選択状態を解除することができるゲームプログラムおよびゲーム装置を提供することである。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明は以下のような構成を採用した。
【０００７】
第１の発明は、表示画面（実施例との対応関係を示せば、例えば第２のＬＣＤ１２）と、ポインティングデバイス（１５）とを有するゲーム装置のコンピュータで実行されるゲームプログラムである。ゲームプログラムは、選択関連領域設定ステップ（実施例との対応関係を示せば、例えばステップＳ５およびＳ１２；以下単にステップ番号だけを示す）と、座標検出ステップ（Ｓ２）と、通過判定ステップ（Ｓ５５）と、選択状態解除ステップ（Ｓ６０）とを有する。表示画面は、ゲーム画像を表示する。ポインティングデバイスは、表示画面に関連して設けられる入力デバイスである。選択関連領域設定ステップは、表示画面上の所定のオブジェクト群あるいは所定の領域がプレイヤにより選択されたとき、当該選択されたオブジェクト群あるいは領域に関連付けて、画面上の所定の領域を選択関連領域として設定する。座標検出ステップは、ポインティングデバイスからの出力信号に基づいて、当該ポインティングデバイスを通じて入力される表示画面上の位置を示す座標値を単位時間間隔で順次メモリに格納する。通過判定ステップは、メモリに格納された座標値群に基づいて、プレイヤの入力軌跡が選択関連領域を通過する軌跡であるか否かを判定する。選択状態解除ステップは、通過判定ステップによりプレイヤの入力座標の軌跡が選択関連領域を通過する軌跡であると判定されたとき、選択を解除する。
【０００８】
第２の発明は、第１の発明において、選択領域表示ステップ（Ｓ１２）と、選択領域表示消去ステップ（Ｓ６１）とをコンピュータに更に実行させる。選択領域表示ステップは、選択領域設定ステップにより選択関連領域が設定されたときに、当該選択関連領域として設定された画面上の所定の領域が選択関連領域であることを示す選択領域表示を行う。選択領域表示消去ステップは、選択解除ステップにより選択が解除されたときに、選択領域表示を消去する。
【０００９】
第３の発明は、第１の発明において、選択関連領域の輪郭部分に相当する表示画面上の座標を示す輪郭データを取得する輪郭データ取得ステップをコンピュータに更に実行させる。また、通過判定ステップでは、座標検出ステップによりメモリに格納された座標値群および輪郭データに基づいてプレイヤの入力軌跡が輪郭を通過する軌跡であるか否かを判定する。また、選択状態解除ステップでは、通過判定ステップによりプレイヤの入力座標の軌跡が輪郭を通過する軌跡であると判定されたとき、選択を解除する。
【００１０】
第４の発明は、第３の発明において、ベクトルデータ算出ステップと、入力開始位置判定ステップと、交差判別ステップとを更にコンピュータに実行させる。ベクトルデータ算出ステップは、メモリに格納された座標値群に基づいて、連続する各座標値の間の距離および方向を示すベクトルデータ群を算出する。入力開始位置判定ステップは、第１の入力座標値が選択関連領域外であるか否かを判定する。交差判別ステップは、ベクトルデータ群のうち、輪郭と交差しているベクトルデータが少なくとも２つ存在するか否かを判定する。また、選択状態解除ステップは、交差判別ステップによって交差しているベクトルデータが２つ以上あると判定されたときに、選択状態の解除を行う。
【００１１】
第５の発明は、第４の発明において、選択状態解除ステップでは、輪郭と交差しているベクトルデータのうち、１回目の交差時のベクトルデータと２回目の交差時のベクトルデータとのなす角度が所定の角度以下であるときに、選択状態の解除を行う。
【００１２】
なお、以上の発明は、上記ゲームプログラムが実行されるコンピュータを備えるゲーム装置の形態によって提供されてもよい。
【発明の効果】
【００１３】
第１の発明によれば、選択関連領域を通過するような軌跡をポインティングデバイスを用いて入力することで、選択された状態が解除される。すなわち、選択関連領域を「切る」ような直感的な操作で選択状態を解除できる。そのため、プレイヤに直感的な操作感覚を提供することができ、操作性の向上を図ることが可能となる。
【００１４】
第２の発明によれば、選択関連領域が画面上のどこにあるかが表示される。そのため、選択解除のための操作を行うべき場所をプレイヤに理解し易くすることができ、操作性の向上を図ることができる。
【００１５】
第３の発明によれば、選択関連領域の輪郭を通過するような軌跡がポインティングデバイスを用いて入力されれば、選択が解除される。そのため、選択関連領域の端のほうだけを「切る」ような操作で選択の解除ができ、操作性の向上を図ることができる。
【００１６】
第４の発明によれば、選択関連領域を横断する軌跡の開始点が当該領域の外側でなければ選択状態は解除されない。そのため、選択解除の操作について、より直感的に「切る」という操作感覚をプレイヤに提供する。また、入力軌跡が選択関連領域の輪郭を２回交差しないと選択解除は行われない。そのため、例えば、移動操作を行うために選択関連領域の輪郭の一部のみを内側から外側に通過するような入力軌跡を描いた場合に、誤って選択状態が解除されてしまうというような、プレイヤの意図しない選択解除操作を防ぐことができ、より良い操作性をプレイヤに提供できる。
【００１７】
第５の発明によれば、選択解除のための入力軌跡について、条件を加えることができる。特に、１回目の交差と２回目の交差における入力軌跡が所定角度以下のものとすることにより、直線的な入力軌跡が描かれた場合のみ選択解除されるとすることが可能となる。これにより、選択解除のために「切る」という操作感覚をより分かりやすくプレイヤに与えるとともに、プレイヤの意図しない選択解除操作を防ぐことも可能となる。
【００１８】
また、本発明のゲーム装置によれば、上述した本発明のゲームプログラムと同様の効果を得ることができる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施形態に係るゲーム装置の構成および動作を説明する。
【００２０】
図１は、本発明の一実施形態に係るゲーム装置の外観図である。図１において、ゲーム装置１０は、第１のＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）１１および第２のＬＣＤ１２を含む。ハウジング１３は上側ハウジング１３ａと下側ハウジング１３ｂとによって構成されており、第１のＬＣＤ１１は上側ハウジング１３ａに収納され、第２のＬＣＤ１２は下側ハウジング１３ｂに収納される。第１のＬＣＤ１１および第２のＬＣＤ１２の解像度はいずれも２５６ｄｏｔ×１９２ｄｏｔである。なお、本実施形態では表示装置としてＬＣＤを用いているが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置など、他の任意の表示装置を利用することができる。また任意の解像度のものを利用することができる。
【００２１】
上側ハウジング１３ａには、後述する１対のスピーカ（図２の３０ａ、３０ｂ）からの音を外部に放出するための音抜き孔１８ａ、１８ｂが形成されている。
【００２２】
下側ハウジング１３ｂには、入力装置として、十字スイッチ１４ａ、スタートスイッチ１４ｂ、セレクトスイッチ１４ｃ、Ａボタン１４ｄ、Ｂボタン１４ｅ、Ｘボタン１４ｆ、Ｙボタン１４ｇ、Ｌボタン１４ＬおよびＲボタン１４Ｒが設けられている。また、さらなる入力装置として、第２のＬＣＤ１２の画面上にタッチパネル１５が装着されている。また、下側ハウジング１３ｂには、電源スイッチ１９や、メモリカード１７やスティック１６を収納するための挿入口も設けられている。
【００２３】
タッチパネル１５としては、例えば抵抗膜方式や光学式（赤外線方式）や静電容量結合式など、任意の方式のものを利用することができる。タッチパネル１５は、その表面をスティック１６で触れると、その接触位置に対応する座標データを出力する機能を有している。なお、以下ではプレイヤがタッチパネル１５をスティック１６で操作するものとして説明を行うが、スティック１６の代わりにペン（スタイラスペン）や指でタッチパネル１５を操作することももちろん可能である。本実施形態では、タッチパネル１５として、第２のＬＣＤ１２の解像度と同じく２５６ｄｏｔ×１９２ｄｏｔの解像度（検出精度）のものを利用する。ただし、必ずしもタッチパネル１５の解像度と第２のＬＣＤ１２の解像度が一致している必要はない。
【００２４】
メモリカード１７はゲームプログラムを記録した記録媒体であり、下部ハウジング１３ｂに設けられた挿入口に着脱自在に装着される。
【００２５】
次に、図２を参照してゲーム装置１０の内部構成を説明する。
【００２６】
図２において、ハウジング１３に収納される電子回路基板２０には、ＣＰＵコア２１が実装される。ＣＰＵコア２１には、バス２２を介して、コネクタ２３が接続されるとともに、入出力インターフェース回路（図面ではＩ／Ｆ回路と記す）２５、第１ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２６、第２ＧＰＵ２７、ＲＡＭ２４、ＬＣＤコントローラ３１、およびワイヤレス通信部３３が接続される。コネクタ２３には、メモリカード１７が着脱自在に接続される。メモリカード１７は、ゲームプログラムを記憶するＲＯＭ１７ａと、バックアップデータを書き換え可能に記憶するＲＡＭ１７ｂを搭載する。メモリカード１７のＲＯＭ１７ａに記憶されたゲームプログラムはＲＡＭ２４にロードされ、ＲＡＭ２４にロードされたゲームプログラムがＣＰＵコア２１によって実行される。ＲＡＭ２４には、ゲームプログラムの他にも、ＣＰＵコア２１がゲームプログラムを実行して得られる一時的なデータや、ゲーム画像を生成するためのデータが記憶される。Ｉ／Ｆ回路２５には、タッチパネル１５、右スピーカ３０ａ、左スピーカ３０ｂおよび図１の十字スイッチ１４ａやＡボタン１４ｄ等から成る操作スイッチ部１４が接続される。右スピーカ３０ａと左スピーカ３０ｂは、音抜き孔１８ａ、１８ｂの内側にそれぞれ配置される。
【００２７】
第１ＧＰＵ２６には、第１ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）２８が接続され、第２ＧＰＵ２７には、第２ＶＲＡＭ２９が接続される。第１ＧＰＵ２６は、ＣＰＵコア２１からの指示に応じて、ＲＡＭ２４に記憶されているゲーム画像を生成するためのデータに基づいて第１のゲーム画像を生成し、第１ＶＲＡＭ２８に描画する。第２ＧＰＵ２７は、同様にＣＰＵコア２１からの指示に応じて第２のゲーム画像を生成し、第２ＶＲＡＭ２９に描画する。第１ＶＲＡＭ２８および第２ＶＲＡＭ２９はＬＣＤコントローラ３１に接続されている。
【００２８】
ＬＣＤコントローラ３１はレジスタ３２を含む。レジスタ３２はＣＰＵコア２１からの指示に応じて０または１の値を記憶する。ＬＣＤコントローラ３１は、レジスタ３２の値が０の場合は、第１ＶＲＡＭ２８に描画された第１のゲーム画像を第１のＬＣＤ１１に出力し、第２ＶＲＡＭ２９に描画された第２のゲーム画像を第２のＬＣＤ１２に出力する。また、レジスタ３２の値が１の場合は、第１ＶＲＡＭ２８に描画された第１のゲーム画像を第２のＬＣＤ１２に出力し、第２ＶＲＡＭ２９に描画された第２のゲーム画像を第１のＬＣＤ１１に出力する。
【００２９】
ワイヤレス通信部３３は、他のゲーム装置のワイヤレス通信部３３との間で、ゲーム処理に利用されるデータやその他のデータをやりとりする機能を有しており、一例としてＩＥＥＥ８０２．１１の無線ＬＡＮ規格に則った無線通信機能を提供する。そして、ワイヤレス通信部３３は、受信したデータをＣＰＵコア２１に出力する。また、ワイヤレス通信部３３は、ＣＰＵコア２１から指示されたデータを他のゲーム装置へ送信する。なお、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）等のプロトコルや所定のブラウザをワイヤレス通信部３３やゲーム装置１０内の記憶部に実装することによって、ゲーム装置１０は、ワイヤレス通信部３３を介してインターネット等のネットワークとの接続が可能となる。そして、ゲーム装置１は、ネットワーク上で公開されている文書や画像等のデータを第１のＬＣＤ１１および第２のＬＣＤ１２で閲覧することができる。
【００３０】
なお、上記のようなゲーム装置１０の構成は単なる一例に過ぎず、本発明は、ポインティングデバイス（タッチパネル、マウス、タッチパッド等）と少なくとも１つの表示装置を有する任意のコンピュータシステムに適用することができる。また、本発明のゲームプログラムは、メモリカード１７などの外部記憶媒体を通じてコンピュータシステムに供給されるだけでなく、有線または無線の通信回線を通じてコンピュータシステムに供給されてもよいし、さらにはコンピュータシステム内部の不揮発性記憶装置に予め記録されていてもよい。
【００３１】
次に、図３〜図１２を用いて、本実施形態で想定するゲームの概要について説明する。図３は、本実施形態で想定するゲームの画面の一例である。本ゲームでは、プレイヤキャラクタ４１が画面上に散らばっており、初期状態では、各プレイヤキャラクタ４１は、其々の動作プログラムに沿って独自に行動している。この状態で、プレイヤは、画面上に散らばっているプレイヤキャラクタ４１のうち、任意のプレイヤキャラクタ４１を操作対象として選択する操作を行う。この選択操作には２パターンあり、単一のプレイヤキャラクタ４１を選択する場合と、複数のプレイヤキャラクタ４１を選択する場合とがある。単一のプレイヤキャラクタ４１を選択する場合は、図４に示すように、選択したいプレイヤキャラクタ４１を直接スティック１６（または指）で押さえ、スティックを離す操作を行う。一方、複数のプレイヤキャラクタを選択するときは、選択したいプレイヤキャラクタ群をスティック１６で囲む操作を行う。具体的には、図５に示すように、プレイヤは、タッチパネル１５上において、スティック１６を移動させる操作を行う。このとき、プレイヤは、スティック１６を移動させた軌跡が任意のプレイヤキャラクタ４１を囲むような操作を行う。この軌跡は、タッチパネル１５上においてプレイヤによる入力が行われた位置を示すものであり、以下、この軌跡を入力軌跡と呼ぶ。そして、任意のプレイヤキャラクタ群を囲むと、囲まれたプレイヤキャラクタ群は、好ましくは一箇所に寄り集まり、隊列を構成する。このとき、図６に示すように、当該プレイヤキャラクタ群は、輪形の赤い円６１（以下、指示待ち輪と呼ぶ）で囲まれた状態で表示される。以下、この状態を指示可能状態と呼ぶ。また、これは単一のプレイヤキャラクタ４１を選択した場合も同様である。すなわち、単一のプレイヤキャラクタ４１を選択した場合は、図７に示すように、プレイヤキャラクタ４１が１匹だけの隊列が構成されることになる。そして、この指示可能状態にある隊列にプレイヤがタッチすると、プレイヤがタッチパネル１５からスティック１６を離すまでの間、上記指示待ち輪６１が輪形の黄色の円６２（以下、操作輪と呼ぶ）に変わる。これは、当該隊列を移動操作中であることを示すものである。同時に、プレイヤがタッチパネル１５に触れていることを示すものでもある。以下、当該操作輪６２が表示された状態を操作中状態と呼ぶ。そして、この操作中状態においてタッチパネル１５に触れたままスティック１６を移動させると、スティック１６の接触位置（より正確には、スティック１６の接触位置に対応するゲーム世界中の地点）を移動目標として、当該移動目標に向かって各フォーカスキャラが各々の速度で移動を開始する。このようにしてプレイヤは、図８および図９に示すように、当該隊列を引っ張るようにして移動させることができる。そして、当該隊列を画面上のいろんな場所に移動させて、隊列を組んでいるプレイヤキャラクタ群に様々な行動（以下「仕事」と呼ぶ）を行わせる。この仕事の内容としては、例えば、敵キャラクタ４３を攻撃することや、落ちている食料４２を基地に運ぶことや、隊列に入っていないプレイヤキャラクタ４１を隊列に加えること等がある。本ゲームは、上記のような操作を繰り返して、プレイヤキャラクタ４１をゲーム内の世界で生活させ、育成等するゲームである。
【００３２】
また、ゲーム画像には、入力軌跡を示す入力軌跡表示５１が表示される（図５に示す太線）。入力軌跡表示５１は、タッチパネル１５に対して入力が行われた位置に対応する表示画面上の位置に表示される。つまり、タッチパネル１５上においてプレイヤが指を実際に移動させた位置に入力軌跡表示５１が表示される。図５においては、入力軌跡が円に近い形状であることが分かる。入力軌跡表示５１によって、プレイヤは自身の入力操作による入力軌跡を明確且つ直感的に知ることができる。従って、プレイヤは、プレイヤキャラクタ４１等をうまく囲めているかどうかや、次に説明する「切る」という操作がうまく行えたか否か等を即座に知ることができる。なお、当該入力軌跡表示５１は、一定時間表示された後、自動的に消去されていく。
【００３３】
また、本実施形態では、上記隊列化しているプレイヤオブジェクト群について、指示待ち輪６１を「切る」ような操作を行うことで、隊列を解散することができる。この解散操作について、図１０〜図１２を用いて説明する。図１０は、解散前の隊列の状態を示す図である。この状態で、図１１に示すように、スティック１６で指示待ち輪６１を通過する横線を引くような操作（すなわち、切るような操作）を行う。すると、指示待ち輪６１の表示が消えて、当該隊列が解散される。その結果、図１２に示すように、隊列化されていた各プレイヤキャラクタ４１は、プレイヤの指示から離れて各々所定の行動（休んだり、別の場所に移動したり、その場で遊んだりする）を開始する。
【００３４】
次に、ゲーム処理の際にＲＡＭ２４に記憶されるデータについて説明する。図１３は、図２に示したＲＡＭ２４のメモリマップを示す図解図である。図１３において、ＲＡＭ２４は、ゲームプログラム記憶領域２４０およびデータ記憶領域２５０を含む。ゲームプログラム記憶領域２４０は、ＣＰＵコア２１によって実行されるゲームプログラムを記憶し、このゲームプログラムは、ゲームメイン処理プログラム２４１と、ゲーム画像生成プログラム２４２と、ゲーム画像表示プログラム２４３と、タッチ入力検出プログラム２４４などによって構成される。
【００３５】
ゲームメイン処理プログラム２４１は、上述したようなゲームのメインルーチンを処理するためのプログラムである。ゲーム画像生成プログラム２４２は、後述する画像データ２５１を用いて、プレイヤキャラクタ４１、敵キャラクタ４３、敵キャラクタ以外のノンプレイヤキャラおよび背景オブジェクトなどのゲーム画像を生成するためのプログラムである。ゲーム画像表示プログラム２４３は、ゲーム画像生成プログラム２４２によって生成されたゲーム画像をＬＣＤ１１およびＬＣＤ１２に表示するためのプログラムである。
【００３６】
タッチ入力検出プログラム２４４は、プレイヤによるタッチ入力があるか否かを一定時間（本実施形態では、１フレーム）毎に検出して、後述のタッチ入力フラグ２５５の成立（オン）／不成立（オフ）を制御する。更に、タッチ入力があるときは、当該タッチ入力による検出座標に対応する座標データを入力座標リスト２５２に時系列に従って記憶（一時記憶）するためのプログラムである。ここで、タッチ入力があるか否かは、タッチ入力による検出座標に対応する座標データがタッチパネル１５から入力されるか否かで判断される。
【００３７】
なお、図示は省略するが、ゲームプログラム記憶領域２４０には、音再生プログラムやバックアッププログラムなども記憶される。音再生プログラムは、音データを用いて、ゲームに必要な音を再生するためのプログラムである。また、バックアッププログラムは、ゲームの進行に従って発生するデータ（ゲームの途中データや結果データ）をプレイヤの指示や所定のタイミング（イベント）に従ってメモリカード１７のＲＡＭ２４に記憶（セーブ）するためのプログラムである。
【００３８】
データ記憶領域２５０には、画像データ２５１、入力座標リスト２５２、初回交差ベクトル２５３、指示待ち輪座標データ２５４などのデータが記憶されるとともに、タッチ入力フラグ２５５、フォーカスフラグ２５６、操作中フラグ２５７、交差フラグ２５８などのフラグも記憶される。
【００３９】
画像データ２５１は、ゲーム画像（プレイヤキャラクタ、ノンプレイヤキャラクタ（敵キャラクタを含む）、背景オブジェクト、所定のキャラクタ）を生成するためのデータ（ポリゴンデータやテクスチャデータなど）である。
【００４０】
入力座標リスト２５２は、入力順番と上記座標データとの組の集合である。本実施形態では、プレイヤによって入力された座標データは、所定の単位時間間隔で検出される。座標データは、プレイヤの入力が連続している間（プレイヤの指等がタッチパネルから離れていない間）、図１４に示すように、１つのリストとしてＲＡＭ２４に記憶される。
【００４１】
初回交差ベクトル２５３は、入力座標リスト２５２に格納されている座標データのうち、隣接する座標データの間の距離および方向を示すベクトルデータ群の中の１つあって、指示待ち輪６１と一度目に交差した関係にあるベクトルデータである（詳細は後述）。初回交差ベクトル２５３は、入力座標リスト２５２から算出される。
【００４２】
指示待ち輪座標データ２５４は、上記指示待ち輪６１が表示されている画面上の部分に相当する座標値群を示すデータである。
【００４３】
タッチ入力フラグ２５５は、タッチ入力のオン／オフの状態を示すフラグであり、タッチ入力検出プログラム２４４に従ってオン／オフが切替えられる。なお、本実施形態では、タッチ入力フラグ２５５は、１ビットのデジタルデータで表され、タッチ入力がオンのときは「１」に設定され、タッチ入力がオフのときは「０」に設定される。以下に述べる各種フラグも、オン・オフの設定については同様である。
【００４４】
フォーカスフラグ２５６は、画面上に表示される複数のプレイヤキャラクタ４１のうち、プレイヤが選択したキャラ、すなわち、プレイヤが操作し得るキャラクタを示すフラグである。そのため、当該フラグは、各プレイヤキャラクタ毎に設定されている。プレイヤに選択されている状態のときはオンになり、選択されていないときはオフになる。また、当該フラグがオンのキャラクタ群が隊列を構成することになる。すなわち、フォーカスフラグ２５６がオンのキャラクタは、隊列を構成して、指示待ち輪６１で囲まれることになる。
【００４５】
操作中フラグ２５７は、上記フォーカスフラグ２５６がオンのキャラ（以下、フォーカスキャラと称す）に対して、スティック１６を用いて何らかの操作を行っている状態か否かを示すフラグである。当該フラグがオンのときは、操作輪６２が表示されることになる。当該フラグがオフのときは、プレイヤはフォーカスキャラの操作を行っていないことを示す。
【００４６】
交差フラグ２５８は、プレイヤの入力軌跡が指示待ち輪６１と一度交差したか否かを示すフラグである。当該フラグがオンのときは、プレイヤの入力軌跡が既に一度、指示待ち輪６１と交差していることを示し、オフのときは、まだ一度も交差していないことを示す。
【００４７】
なお、図１５は、上記各フラグの内容をまとめた表である。また、図示は省略するが、データ記憶領域２５０には、ゲームに必要な音を出力するための音データや、ゲームの進行に伴って発生するデータ（ゲームの途中データ、結果データ）やフラグ（イベントフラグ）なども記憶される。
【００４８】
次に、ゲーム装置１０において実行されるゲーム処理の流れを図１６〜図２１を用いて説明する。図１６は、ゲーム装置１０において実行されるゲーム処理の流れを示すフローチャートである。ゲーム装置１０の電源が投入されると、ゲーム装置１０のＣＰＵコア２１は、図示しないブートＲＯＭに記憶されている起動プログラムを実行し、ＲＡＭ２４等の各ユニットが初期化される。そして、メモリカード１７に格納されたゲームプログラムがＲＡＭ２４に読み込まれ、当該ゲームプログラムの実行が開始される。その結果、第１ＧＰＵ２６を介して第１ＬＣＤ１１にゲーム画像が表示されることによって、ゲームが開始される（ステップＳ１）。
【００４９】
次に、ステップＳ２において、タッチ入力が検出される。すなわち、タッチパネル１５から入力される座標データが検出される。その結果、タッチ入力が無ければ（ステップＳ２でＮＯ）、後述のタッチオフ処理（ステップＳ１１）が行われる。一方、タッチ入力が検出されれば（ステップＳ２でＹＥＳ）、更に、タッチ入力位置を入力座標リスト２５２に格納する。つまり、タッチパネル１５から入力された座標データを時系列に従って入力座標リスト２５２に一時記憶する。そして、続くステップＳ３において、タッチ入力フラグがＯＮか否か、つまり、タッチパネルを押しつづけている状態（以下、継続入力）か、押し初めの状態（以下、新規入力）かの判定が行われる。
【００５０】
ステップＳ３の判定の結果、新規入力であれば（ステップＳ３でＮＯ）、続くステップＳ４において、画面に表示されているプレイヤキャラクタ４１の何れかが選択されたか否かが判定される。ステップＳ４においては、入力座標位置が何れかのプレイヤキャラクタ４１の当たり判定領域内であるか否かで、当該選択がされたか否かを判定する。なお、当該当たり判定領域については、上記初期化処理において設定されているものとする。なお、既に隊列が構成されているときは、上記プレイヤキャラクタ４１の当たり判定領域に加え、当該隊列自体の当たり判定領域も判定の対象となる。隊列自体の当たり判定領域の設定は、後述するタッチオフ処理（ステップＳ１２）において行われる。
【００５１】
ステップＳ４の判定の結果、何れのプレイヤキャラクタ４１も選択されてないときは（ステップＳ４でＮＯ）、ステップＳ７の画面描画処理へ進む。一方、ステップＳ４の判定の結果、何れかのプレイヤキャラクタ４１が選択されたとき（ステップＳ４でＹＥＳ）、続くステップＳ５において当該プレイヤキャラクタ４１を選択状態にするためのフォーカス処理が行われる。図１７は、上記ステップＳ５で示したフォーカス処理の詳細を示すフローチャートである。ここでは、フォーカスフラグ２５６をオンにすることで、当該プレイヤキャラクタ４１をフォーカスキャラ（プレイヤが操作し得る状態のキャラ）とする処理が行われる。
【００５２】
図１７において、まず、上記指定されたプレイヤキャラのフォーカスフラグ２５６がＯＮか否かを判定する（ステップＳ２１）。その結果、フォーカスフラグ２５６がオフであれば（ステップＳ２１でＮＯ）、ステップＳ２２において、全てのプレイヤキャラクタ４１のフォーカスフラグ２５６をＯＦＦにする。これはすなわち、既にフォーカスフラグ２５６がオンのキャラがいるときを想定して、一旦全プレイヤキャラクタ４１のフォーカスフラグ２５６をオフ、すなわち、選択状態を解除するものである。次に、ステップＳ２３において、上記選択されたプレイヤキャラクタ４１のフォーカスフラグ２５６をオンにする。これにより、以前、他のプレイヤキャラクタ４１が選択状態になっていても、今回選択したプレイヤキャラクタ４１にフォーカスが移り、選択状態とすることができる。一方、上記ステップＳ２１の判定の結果、既にフォーカスフラグ２５６がオンであれば（ステップＳ２１でＹＥＳ）、既に存在しているフォーカスキャラ（隊列）を選択したことになるため、そのまま当該フォーカス処理を終了する。なお、当該フォーカスキャラは、プレイヤに操作されない限りは動かずにその場に待機する。
【００５３】
図１６に戻り、次に、ステップＳ６において、上記フォーカスキャラを操作中であることを示す操作輪６２を表示する処理を行う。図１８は、上記ステップＳ６で示した操作輪表示処理の詳細を示すフローチャートである。図１８において、まず、操作中フラグ２５７をＯＮにする（ステップＳ３１）。次に、上記フォーカスキャラを中心とする操作輪６２を生成する（ステップＳ３２）。以上で、操作輪表示処理は終了する。
【００５４】
図１６に戻り、次に、ステップＳ７において画面描画処理が行われる。これにより、各オブジェクト等が移動後の位置で表示され、上記操作輪６２等が表示されることになる。その後、ステップＳ８において、ゲーム終了か否かが判定される。ゲーム終了条件が満たされていないときは（ステップＳ８でＹＥＳ）、上記ステップＳ２の処理に戻る。一方、ゲーム終了条件が満たされているときは（ステップＳ８でＮＯ）、当該ゲーム処理は終了する。
【００５５】
次に、上記ステップＳ２において、タッチ入力がなかったとき（ステップＳ２でＮＯ）の処理（ステップＳ１２）について説明する。本処理は、タッチパネル１５からスティック１６を離したとき、すなわちタッチオフしたときに行われる処理である。ここでは、入力座標リスト２５２を初期化する処理が行われる。更に、操作中フラグ２５７がオンであれば、当該操作中フラグ２５７をオフにし、上記操作輪６２を消去する処理が行われる。そして、操作輪６２の代りに指示待ち輪６１を生成する処理が行われる。このとき、当該指示待ち輪６１の内側の領域について、当該隊列の当たり判定範囲とする設定も併せて行う。つまり、プレイヤが隊列（フォーカスキャラあるいは指示待ち輪６１内の領域）に触れているときは黄色の操作輪６２が表示されて当該隊列を移動することができる状態であり、プレイヤがスティック１６を離したタイミングで、黄色の操作輪６２が赤色の指示待ち輪６１に切り替わり、隊列はその場で待機してプレイヤの操作を待つことになる。換言すれば、プレイヤがスティック１６でプレイヤキャラクタ４１を押さえた直後は黄色の操作輪６２が表示されており、当該スティック１６をタッチパネル１５から離した時点で赤色の指示待ち輪６１に切り替わることになる（なお、当該指示待ち輪６１の内側の領域が「選択関連領域」に相当する）。
【００５６】
一方、タッチオフした時点において操作中フラグ２５７がオフのときは、フォーカスキャラ（隊列）が存在すれば、当該フォーカスキャラを囲むような上記指示待ち輪６１を生成し（既に隊列がいるということは、指示待ち輪６１も既に表示されているため、より正確には指示待ち輪６１を表示を更新する処理になる）、フォーカスキャラが存在しなければ、そのままタッチオフ処理を終了する処理が行われる。以上で、図１６のステップＳ１２におけるタッチオフ処理が終了する。
【００５７】
次に、上記ステップＳ３において、継続操作と判定されたとき（ステップＳ３でＮＯ）の処理について説明する。まず、ステップＳ９において、操作中フラグ２５７がオンか否かを判定する。オンであれば（ステップＳ９でＹＥＳ）、これはすなわちフォーカスキャラ（隊列）をプレイヤが操作中であることを意味する。そのため、操作中の処理（ステップＳ１０）が行われる。ステップＳ１０においては、例えば、フォーカスキャラを移動させる処理やフォーカスキャラが敵キャラクタ４３へ攻撃する等の処理が行われる。なお、本実施形態においては、このステップＳ１０の処理は本発明と直接関連しないので、詳細な説明は省略する。
【００５８】
一方、ステップＳ９における判定の結果、操作中フラグ２５７がオフのときは、画面上の隊列以外の部分をタッチし続けていることを意味する。このときは、ステップＳ１１において、次に説明する非操作中の処理が行われる。
【００５９】
図１９は、上記ステップＳ１１で示した非操作中の処理の詳細を示すフローチャートである。図１９において、まず、プレイヤの入力した入力軌跡が何れかのプレイヤキャラクタ４１を囲むような閉曲線を形成したか否かを判定する（ステップＳ４１）。これは、例えば、入力座標リスト２５２を参照し、一定時間毎に検出される座標データを時系列に従って線で結んだ場合に、線が交わったかどうかで判断するなどが考えられる。ステップＳ４１の判定の結果、プレイヤキャラクタ４１（複数でも単数でも可）が囲まれたときは（ステップＳ４１でＹＥＳ）、続くステップＳ４２で、囲まれたプレイヤキャラクタ４１を１つの隊列として構成する処理が行われる。この処理には、閉曲線で囲まれた各プレイヤキャラクタ４１のフォーカスフラグ２５６をＯＮにして、その他のプレイヤキャラクタ４１のフォーカスフラグ２５６をＯＦＦにする処理が含まれる。なお、当該ステップＳ４２の処理については、本発明と直接関連しないので、詳細な説明は省略する。
【００６０】
一方、ステップＳ４１の判定の結果、プレイヤキャラクタが囲まれたと判定されなければ（ステップＳ４１でＮＯ）、処理を次のステップＳ４３の解散処理に進める。以下、この解散処理について、図２０〜図２１を用いて説明する。
【００６１】
まず、ステップＳ４３における解散処理で行われる処理の概要について、図２０を用いて説明する。図２０は、上記解散処理を模式的に示す図である。まず、図２０（Ａ）に示すように、プレイヤが指示待ち輪６１を水平に横切るようにスティック１６を操作するときを例として説明する。なお、この操作において、タッチパネル１５を通じて、入力座標が６回検出されるもの（検出点が６つ；図２０（Ｂ）のＰ１〜Ｐ６）とする。すなわち、入力座標リスト２５２（図１４参照）には、Ｐ１〜Ｐ６に対応した６つの座標データが格納されることになる。その結果、図２０（Ａ）に示すような操作を行うと、図２０（Ｂ）に示すようなベクトルＢ１〜Ｂ５を順次算出していく。そして、各ベクトルの算出時に、当該ベクトルが指示待ち輪６１と交差しているか否かを判定する。その結果、図２０（Ｂ）の場合であれば、ベクトルＢ２を算出したときに、指示待ち輪６１との最初の交差が検出される。このとき、交差フラグ２５８をオンにする。併せて、ベクトルＢ２を、初回交差ベクトル２５３として保持する。この後、続いて算出されるベクトルＢ３、Ｂ４の算出時点では交差は検出されずに、その後のベクトルＢ５を算出したときに指示待ち輪６１との２度目の交差が検出される。この時点では、交差フラグ２５８は既にオンである。そのため、２度目の交差であることが分かる。そしてこのときに、ベクトルＢ５とＢ２との成す角度が所定角度以下であるか、例えば３０度以下かどうかを、両ベクトルの内積に基づいて判定する。図２０（Ｂ）の場合であれば、両ベクトルのなす角度は０度となり、当該条件が満たされることになる（図２０（Ｃ）参照）。そして、当該条件が満たされたときは、フォーカスフラグ２５６をオフにし、指示待ち輪６１を消去する等の処理を行って、隊列を解散する処理、すなわち、上記フォーカスキャラを選択していた状態を解除する処理が行われるものである。
【００６２】
また、図２０（Ｄ）のように、プレイヤの入力軌跡が少し曲がった線で指示待ち輪６１を横切った場合、図２０（Ｅ）に示すようなベクトルＥ１〜Ｅ５が順次算出される。このような場合は、指示待ち輪６１と交差しているベクトルＥ２とＥ５の成す角が判定されることになる。その結果、両者の成す角は、図２０（Ｆ）に示すように、１５度となり、３０度以下という条件を満たす。その結果、この場合も、上記と同様に隊列を解散するための処理が行われる。一方、図２０（Ｇ）に示すような、大きく曲がった線を描くような操作を行ったときは、図２０（Ｈ）に示すようなベクトルＨ１〜Ｈ５が得られる。この場合は、図２０（Ｉ）に示すように、指示待ち輪６１と交差するベクトルＨ２およびＨ５の成す角は８０度となり、３０度以下という条件を満たさない。その結果、この場合は、隊列を解散する処理は行われないまま、解散処理が終了することになる。
【００６３】
次に、図２１を用いて、上記解散処理の詳細について説明する。図２１は、上記ステップＳ４３で示した解散処理の詳細を示すフローチャートである。図２１において、まず、ステップＳ５１でフォーカスフラグ２５６がオンのキャラ、すなわち、プレイヤの指示を待っているフォーカスキャラ（隊列）が存在しているか否かを判定する。その結果、フォーカスキャラが存在しなければ、そのまま解散処理を終了する。一方、フォーカスキャラが存在していれば（ステップＳ５１でＹＥＳ）、当該フォーカスキャラを囲む指示待ち輪６１が表示されている画面上の位置に相当する座標値群、すなわち指示待ち輪座標データ２５４を取得済みか否かを判定する（ステップＳ５２）。その結果、まだ指示待ち輪座標データ２５４を取得していなければ、指示待ち輪６１が表示されている部分に相当する画面上の座標値群を取得し、一時的にメモリに保持する（ステップＳ５３）。そして、処理をステップＳ５４へ進める。一方、指示待ち輪座標データ２５４を既に取得済みであれば（ステップＳ５２でＹＥＳ）、そのまま処理をステップＳ５４へ進める。
【００６４】
次に、ステップＳ５４において、入力座標リスト２５２を参照して、ｎ−１番目の座標データとｎ番目の座標データとを結ぶベクトルデータＨｎを算出する（ステップＳ５４）。次に、当該ベクトルデータＨｎに相当する画面上の座標値群を算出する。そして、当該ベクトルデータＨｎの座標値群と上記指示待ち輪座標データ２５４とで一致する座標があるか否か、すなわち、上記ベクトルＨｎと指示待ち輪６１が交差したか否かを判定する（ステップＳ５５）。この判定の結果、交差していなければ（ステップＳ５５でＮＯ）、そのまま解散処理を終了する。一方、交差しているときは（ステップＳ５５でＹＥＳ）、続くステップＳ５６で、交差フラグ２５８がオンであるか否かを判定する。これはすなわち、今回のタッチ入力開始後、初めて指示待ち輪６１と交差したのか否かを判定するものである。その結果、交差フラグ２５８がオフであれば（ステップＳ５６でＮＯ）、続くステップＳ５７で、当該ベクトルデータＨｎを初回交差ベクトル２５３として、メモリに保持する。更に、ステップＳ５８で、交差フラグ２５８をオンにする。その後、解散処理を終了する。
【００６５】
なお、本実施形態では、上記ステップＳ５５において、ベクトルデータＨｎを構成する座標値群と指示待ち輪座標データ２５４とで一致する座標があるか否かを判定することによって、ベクトルＨｎと指示待ち輪６１が交差したか否かを判定するようにしているが、本発明はこれに限らない。例えば、ベクトルＨｎの始点と終点のそれぞれについて、指示待ち輪６１の内部に位置するか外部に位置するかを判定し、始点および終点の一方が内部に位置し、他方が外部に位置する場合に、ベクトルＨｎと指示待ち輪６１が交差したと判定するようにしてもよい。特に、指示待ち輪６１が円形や楕円形の場合には、ベクトルＨｎの始点と終点が指示待ち輪６１の内部に位置するか外部に位置するかを簡単な演算によって判定することが可能となる。例えば、指示待ち輪６１が円形の場合には、指示待ち輪６１の中心からベクトルＨｎの始点（または終点）までの距離が指示待ち輪６１の半径よりも大きいか小さいかを判定することによって、ベクトルＨｎの始点（または終点）が指示待ち輪６１の内部に位置するか外部に位置するかを判定することができる。
【００６６】
一方、ステップＳ５６の判定の結果、交差フラグ２５８がオン、すなわち、既に一度交差しているときは（ステップＳ５６でＹＥＳ）、上記メモリに保持されている初回交差ベクトル２５３と、ステップＳ５４で算出したベクトルＨｎとでなす角が所定角度以上か否かを判定する（ステップＳ５９）。その結果、所定角度以下でなければ（ステップＳ５９でＮＯ）、そのまま解散処理を終了する。一方、所定角度以下であれば（ステップＳ５９でＹＥＳ）、続くステップＳ６０で、フォーカスフラグ２５６をオフにする。更に、ステップＳ６１で、指示待ち輪６１を消去する。これにより、フォーカスキャラの選択状態を解除することになる。その結果、隊列は解散し、フォーカスキャラであったプレイヤキャラクタ４１は、各々の動作プログラムによって独自の行動を開始する。そして、ステップＳ６２において、メモリに保持していた指示待ち輪座標データ２５４をクリアする。続くステップＳ６３で、交差フラグ２５８をオフにする。以上で、解散処理は終了する。そして、図１９に戻り、非操作中の処理も終了する。
【００６７】
図１６に戻り、ステップＳ１１における非操作中の処理が終われば、次に、上述したステップＳ７の画面描画処理が行われる。続いて、ステップＳ８において、ゲーム終了条件が満たされているか否かが判定される。ゲーム終了条件が満たされていないときは（ステップＳ８でＹＥＳ）、上記ステップＳ２に戻って処理を繰り返す。一方、ゲーム終了条件が満たされているときは（ステップＳ８でＮＯ）、当該ゲーム処理は終了する。以上で、本実施形態に係るゲーム処理は終了する。
【００６８】
このように、本実施形態によれば、プレイヤにより選択されている領域（隊列）について、ポインティングデバイスを用いて横切るような操作を行うことで、当該選択状態を解除（隊列の解散）することができる。これにより、横切るような操作、すなわち「切る」という直感的な操作で選択解除を行うことができ、プレイヤの操作性を向上させることができる。また、選択領域を横切る操作において、最初に交差したベクトルと２回目に交差したベクトルとの成す角が所定角度以下でなければ、上記選択状態の解除は行われない。これにより、「切る」という直線的な入力操作が行われたときのみ選択解除を行うことができ、より直感的な操作感覚を提供することができる。
【００６９】
なお、上述した実施形態では、選択状態を示す指示待ち輪６１は輪形であったが、これに限らず、円形等の閉領域を代りに表示することで選択状態であることを示してもよい。この場合、上記ステップＳ５３において、指示待ち輪座標データ２５４の代りに、当該閉領域の輪郭に相当する座標値群（当該閉領域の境界部分の座標値群）を、取得する。そして、ステップＳ５５において、ベクトルデータＨｎに相当する座標のうち、上記輪郭に該当する座標と一致する座標があるか否か（すなわち、ベクトルデータＨｎが輪郭と交差しているか否か）を判定するようにすればよい。その後の処理については、図２１を用いて説明したステップＳ５６以降の処理と同様であるため、詳細な説明は省略する。
【００７０】
また、選択状態であることを示す指示待ち輪６１についても、必ずしも表示されている必要はない。指示待ち輪６１を表示しないときにおける解散操作の判定について、図２２を用いて説明する。図２２（Ａ）は、隊列を構成する各キャラクタのフォーカスフラグはオンになっているが、指示待ち輪６１が表示されていない場合の隊列を示す図である。このようなときは、隊列を構成している各フォーカスキャラの重心となる座標を結ぶことでできる図形（以下、横断判定用図形）を用いて解散操作を判定させることが考えられる。図２２（Ｂ）は、横断判定用図形の一例を示す図である。そして、上述したステップＳ５２〜Ｓ５９の処理において、当該横断判定用図形の輪郭について、入力軌跡が２度交差したか（横断したか）否かが判定されるようにすればよい。また、図２２（Ｃ）に示すように、例えば隊列内のフォーカスキャラの数に応じて、予めメモリに格納されているパターン図形データを読み出し、隊列の中心に合わせるよう重ねることで、横断判定用図形として用いて上記判定が行われるようにすることも考えられる。例えば、隊列内のフォーカスキャラの数が多ければ、それに応じて大き目の図形が読み出され、少なければ小さ目の図形が読み出されるようにする等の処理が考えられる。
【００７１】
更に、入力軌跡が当該横断判定用図形の輪郭を２度交差したと判定された後、横断判定用図形を入力軌跡によって分割し、それぞれの図形（領域）内に存在するフォーカスキャラの数を比較して解散操作を行うようにしてもよい。例えば、図２２（Ｄ）に示すように、横断判定用図形のほぼ中心を縦に横断するような入力が行われたとする。このときは、当該入力にかかる入力軌跡を境として当該横断判定用図形を２つの図形に分割する。次に、各図形（に相当する画面上の領域）内に存在するフォーカスキャラクタ（の重心）の数の差を算出する。そして、当該差が所定範囲以内、例えば、２から−２の範囲内であれば、上述したような解散処理が行われるようにすればよい。図２２（Ｄ）のようなときであれば、入力軌跡の右側には３つのフォーカスキャラが存在する。一方、入力軌跡の左側には２つのフォーカスキャラが存在する。そして、例えば、入力軌跡の右側の数−左側の数としてこれらの差を求めると、その差は１になる。その結果、この差は所定範囲内であると判定され、その結果、当該隊列の解散処理が行われることになる。一方、図２２（Ｅ）に示すように、横断判定用図形の中心よりも右よりの部分を縦に横断するような入力が行われたとする。この場合は、入力軌跡の右側には１つのフォーカスキャラが存在し、入力軌跡の左側には４つのフォーカスキャラが存在する。その結果、これらの差は−３となり、上記所定範囲内ではないと判定される。その結果、当該隊列の解散処理は行われないことになる。このように、入力軌跡を境として横断判定用図形を分割し、それぞれの図形内のフォーカスキャラの数の比率に応じて（互いのキャラ数がある程度近いときに限るなど）解散処理を行うようにすれば、不要な解散操作や意図しない解散操作を防ぐことができる。例えば、隊列を解散するつもりはなかったが、誤操作で上記横断判定用図形の端のほうをかすめるような横断操作を行ってしまった場合（図２２（Ｅ）に相当）にでも、不必要に解散処理が行われてしまうことを防ぐことができ、操作性の向上を図ることができる。
【００７２】
また、隊列を構成するフォーカスキャラの輪郭を上記横断判定用図形として用いるようにしてもよい。そして、入力軌跡が隊列内のフォーカスキャラの何れか１つのキャラクタの輪郭を横断したと判定されたときに、上記解散処理が行われるようにしてもよい。つまり、１つの隊列内に上記横断判定用図形が複数存在することになる。これにより、例えば大きな隊列が構成されているときなどで、その隊列を横切るための長い入力軌跡を描かずとも、隊列内の何れかのフォーカスキャラを横切るような短い入力軌跡を描くだけで上記解散処理を行わせることができ、操作性を高めることが可能となる。
【００７３】
また、上記実施形態では、スティック１６（あるいは指）を用いた操作を例として説明したが、これに限らず、ポインティングデバイスとして、例えばマウスを用いてもよい。この場合は、マウスの左ボタンを押したままマウスを移動させる操作が、上述したスティック１６をタッチパネル１５に接触させたまま移動させる操作に相当する。また、マウスの左ボタンから指を離す操作が、タッチオフ操作に相当することになる。
【００７４】
また、上記実施形態においては、隊列を解散（選択状態の解除）していたが、隊列を解散する代りに新たな隊列を生成（複数の選択状態の生成）をするようにしてもよい。つまり、例えば６つのフォーカスキャラで構成されている１つの隊列に対して上述のような入力操作を行うことにより、３つのフォーカスキャラで構成される隊列が２つとなるような処理を行ってもよい。そして、プレイヤはこれらの隊列を任意に切替えて操作できるようにしてもよい。その結果、複数の隊列を用いて同時に複数の仕事処理を行わせることができ、より多彩なゲームの遊び方をプレイヤに提供することができる。
【図面の簡単な説明】
【００７５】
【図１】本発明の一実施形態に係るゲーム装置の外観図
【図２】ゲーム装置の内部構成図
【図３】本実施形態で想定するゲームの画面の一例
【図４】単一のプレイヤキャラクタを指定する様子を示す図
【図５】複数のプレイヤキャラクタを指定する様子を示す図
【図６】プレイヤキャラクタが複数の隊列を示す図
【図７】プレイヤキャラクタが１匹だけの隊列を示す図
【図８】プレイヤキャラクタを移動中の状態を示す図
【図９】プレイヤキャラクタを移動中の状態を示す図
【図１０】解散前の隊列の状態を示す図
【図１１】解散操作中の状態を示す図
【図１２】隊列解散後の状態を示す図
【図１３】図２に示したＲＡＭ２４のメモリマップを示す図解図
【図１４】入力座標リスト２５２の一例を示す図
【図１５】本実施形態で使われる各フラグについてまとめた表
【図１６】ゲーム装置１０において実行されるゲーム処理の流れを示すフローチャート
【図１７】図１６のステップＳ５で示したフォーカス処理の詳細を示すフローチャート
【図１８】図１６のステップＳ６で示した操作輪表示処理の詳細を示すフローチャート
【図１９】図１６のステップＳ１１で示した非操作中の処理の詳細を示すフローチャート
【図２０】図１９のステップＳ４３で示した解散処理を模式的に示す図
【図２１】図１９のステップＳ４３で示した解散処理の詳細を示すフローチャート
【図２２】解散操作の例を模式的に示す図
【符号の説明】
【００７６】
１０  ゲーム装置
１１  第１のＬＣＤ
１２  第２のＬＣＤ
１３  ハウジング
１３ａ  上側ハウジング
１３ｂ  下側ハウジング
１４  操作スイッチ部
１４ａ  十字スイッチ
１４ｂ  スタートスイッチ
１４ｃ  セレクトスイッチ
１４ｄ  Ａボタン
１４ｅ  Ｂボタン
１４ｆ  Ｘボタン
１４ｇ  Ｙボタン
１４Ｌ  Ｌボタン
１４Ｒ  Ｒボタン
１５  タッチパネル
１６  スティック
１７  メモリカード
１７ａ  ＲＯＭ
１７ｂ  ＲＡＭ
１８ａ，１８ｂ  音抜き孔
１９  電源スイッチ
２０  電子回路基板
２１  ＣＰＵコア
２２  バス
２３  コネクタ
２４  ＲＡＭ
２５  Ｉ／Ｆ回路
２６  第１ＧＰＵ
２７  第２ＧＰＵ
２８  第１ＶＲＡＭ
２９  第２ＶＲＡＭ
３０ａ  右スピーカ
３０ｂ  左スピーカ
３１  ＬＣＤコントローラ
３２  レジスタ
４１  プレイヤキャラクタ
４２  食料
４３  敵キャラクタ
５１  入力軌跡表示
６１  指示待ち輪
６２  操作輪
【図１】
2006304855.tif 000003
【図２】
2006304855.tif 000004
【図３】
2006304855.tif 000005
【図４】
2006304855.tif 000006
【図５】
2006304855.tif 000007
【図６】
2006304855.tif 000008
【図７】
2006304855.tif 000009
【図８】
2006304855.tif 000010
【図９】
2006304855.tif 000011
【図１０】
2006304855.tif 000012
【図１１】
2006304855.tif 000013
【図１２】
2006304855.tif 000014
【図１３】
2006304855.tif 000015
【図１４】
2006304855.tif 000016
【図１５】
2006304855.tif 000017
【図１６】
2006304855.tif 000018
【図１７】
2006304855.tif 000019
【図１８】
2006304855.tif 000020
【図１９】
2006304855.tif 000021
【図２０】
2006304855.tif 000022
【図２１】
2006304855.tif 000023
【図２２】
2006304855.tif 000024