(57)【要約】【課題】１つの位置に加えて他の１つの位置に対して接触操作が行われた場合であっても、接触操作が行われた位置に対応させた処理を行うことができる画像制御システムを提供すること。【解決手段】  操作面３９に対する接触操作の操作状態が、操作面３９における第１の位置に対して第１接触操作が行われる第１操作状態では、第１の位置に対応する検出値を出力し、第１接触操作に加えて操作面３９における第２の位置に対して第２接触操作が行われる第２操作状態では、第１の位置と第２の位置との中点に対応する検出値を出力する検出部４０の検出値に基づいて、表示部１８の表示面１７に表示される画像を制御する画像制御システムであって、操作状態が第２操作状態である場合に、第１操作状態において取得された検出位置を一方の端点とし第２操作状態において取得された検出位置を中点とした場合の他方の端点を示す補正位置を求める補正部１０８を含む。【選択図】図３
2011065600.tif 000002
【特許請求の範囲】
【請求項１】
操作面に対する接触操作の操作状態が、前記操作面における第１の位置に対して第１接触操作が行われる第１操作状態では、前記第１の位置に対応する検出値を出力し、前記第１接触操作に加えて前記操作面における第２の位置に対して第２接触操作が行われる第２操作状態では、前記第１の位置と前記第２の位置との中点に対応する検出値を出力する検出部の検出値に基づいて、表示部の表示面に表示される画像を制御するプログラムであって、
前記検出値に基づいて、前記操作面における位置を示す検出位置を取得する取得部と、
前記検出値に基づいて、前記操作状態が前記第１操作状態であるか前記第２操作状態であるかを判定する状態判定部と、
前記操作状態が第２操作状態である場合に、前記第１操作状態において取得された前記検出位置を一方の端点とし前記第２操作状態において取得された前記検出位置を中点とした場合の他方の端点を示す補正位置を求める補正部と、
前記補正位置に基づいて、前記画像を制御する表示制御部としてコンピュータを機能させることを特徴とするプログラム。
【請求項２】
操作面に対する接触操作の操作状態が、前記操作面における第１の位置に対して第１接触操作が行われる第１操作状態では、前記第１の位置に対応する検出値を出力し、前記第１接触操作に加えて前記操作面における第２の位置に対して第２接触操作が行われる第２操作状態では、前記第１の位置と前記第２の位置との中点に対応する検出値を出力する検出部の検出値に基づいて、表示部の表示面に表示される画像を制御するプログラムであって、
前記検出値に基づいて、前記操作面における位置を示す検出位置を取得する取得部と、
前記検出値に基づいて、前記操作状態が前記第１操作状態であるか前記第２操作状態であるかを判定する状態判定部と、
前記操作状態が第２操作状態である場合に、前記第１操作状態における前記検出位置を一方の端点とし前記第２操作状態における前記検出位置を中点とした場合の他方の端点を示す補正位置を求める補正部と、
前記補正位置が特定位置と一致するか否かを判定する位置判定部と、
前記画像を制御する表示制御部としてコンピュータを機能させることを特徴とするプログラム。
【請求項３】
請求項２において、
前記表示制御部は、
前記位置判定部の判定結果に基づいて、前記画像を制御することを特徴とするプログラム。
【請求項４】
請求項１〜３のいずれかにおいて、
前記補正部は、
前記第２操作状態において新たな前記検出位置が取得された場合に、前記第１操作状態において取得された前記検出位置を一方の端点とし前記第２操作状態において新たに取得された前記検出位置を中点とした場合の他方の端点を示す補正位置を求めることを特徴とするプログラム。
【請求項５】
請求項１〜３のいずれかにおいて、
前記補正部は、
前記第２操作状態において新たな前記検出位置が取得された場合に、前記第２操作状態において最初に求めた前記補正位置を一方の端点とし前記第２操作状態において新たに取得された前記検出位置を中点とした場合の他方の端点を示す補正位置を求めることを特徴とするプログラム。
【請求項６】
請求項１〜５のいずれかにおいて、
前記補正位置が変化した場合に、前記補正位置の移動情報を求める移動情報演算部としてコンピュータを更に機能させ、
前記表示制御部は、
前記補正位置の移動情報に基づいて、前記画像を制御することを特徴とするプログラム。
【請求項７】
請求項１〜６のいずれかにおいて、
前記第１操作状態の期間を計測する期間計測部としてコンピュータを更に機能させ、
前記表示制御部は、
前記第１操作状態の期間に基づいて、前記画像を制御することを特徴とするプログラム。
【請求項８】
請求項１〜７のいずれかにおいて、
前記表示制御部は、
前記表示面のうち前記操作面と重複する重複部分に、前記第１接触操作を行うべき第１領域と前記第２接触操作を行うべき第２領域とを識別するための表示物を表示させることを特徴とするプログラム。
【請求項９】
請求項１〜８のいずれかにおいて、
前記状態判定部は、
前記検出値が出力されないことに基づいて、前記操作状態が前記操作面に対して接触操作が行われていない無操作状態であると判定し、
前記操作状態が前記無操作状態である場合に前記検出値が出力されたことに基づいて、前記操作状態が前記第１操作状態であると判定し、
前記操作状態が前記第１操作状態である場合の前記検出位置の移動量が第１閾値を超えたことに基づいて、前記操作状態が前記第２操作状態であると判定することを特徴とするプログラム。
【請求項１０】
請求項１〜９のいずれかにおいて、
前記状態判定部は、
前記操作状態が前記第２操作状態である場合の前記検出位置の移動量が第２閾値を超えたことに基づいて、前記操作状態が前記第１操作状態であると判定することを特徴とするプログラム。
【請求項１１】
コンピュータにより読み取り可能な情報記憶媒体であって、請求項１〜１０のいずれかに記載されたプログラムを記憶することを特徴とする情報記憶媒体。
【請求項１２】
操作面に対する接触操作の操作状態が、前記操作面における第１の位置に対して第１接触操作が行われる第１操作状態では、前記第１の位置に対応する検出値を出力し、前記第１接触操作に加えて前記操作面における第２の位置に対して第２接触操作が行われる第２操作状態では、前記第１の位置と前記第２の位置との中点に対応する検出値を出力する検出部の検出値に基づいて、表示部の表示面に表示される画像を制御する画像制御システムであって、
前記検出値に基づいて、前記操作面における位置を示す検出位置を取得する取得部と、
前記検出値に基づいて、前記操作状態が前記第１操作状態であるか前記第２操作状態であるかを判定する状態判定部と、
前記操作状態が第２操作状態である場合に、前記第１操作状態において取得された前記検出位置を一方の端点とし前記第２操作状態において取得された前記検出位置を中点とした場合の他方の端点を示す補正位置を求める補正部と、
前記補正位置に基づいて、前記画像を制御する表示制御部とを含むことを特徴とする画像制御システム。
【請求項１３】
操作面に対する接触操作の操作状態が、前記操作面における第１の位置に対して第１接触操作が行われる第１操作状態では、前記第１の位置に対応する検出値を出力し、前記第１接触操作に加えて前記操作面における第２の位置に対して第２接触操作が行われる第２操作状態では、前記第１の位置と前記第２の位置との中点に対応する検出値を出力する検出部の検出値に基づいて、表示部の表示面に表示される画像を制御する画像制御システムであって、
前記検出値に基づいて、前記操作面における位置を示す検出位置を取得する取得部と、
前記検出値に基づいて、前記操作状態が前記第１操作状態であるか前記第２操作状態であるかを判定する状態判定部と、
前記操作状態が第２操作状態である場合に、前記第１操作状態における前記検出位置を一方の端点とし前記第２操作状態における前記検出位置を中点とした場合の他方の端点を示す補正位置を求める補正部と、
前記補正位置が特定位置と一致するか否かを判定する位置判定部と、
前記画像を制御する表示制御部とを含むことを特徴とする画像制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報記憶媒体および画像制御システムに関する。
【背景技術】
【０００２】
従来から、操作者が指先や指示体などで操作面に対して接触操作を行うと、接触操作が行われた位置に対応する検出値を出力するいわゆるタッチパネルを備えた画像制御システム（画像制御装置）が知られている。そしてタッチパネルを備えた画像制御システムには、タッチパネルの検出値に基づいて操作面における位置座標を取得して、位置座標に基づいて画像を制御するものがある。
【０００３】
またこのタッチパネルには、操作面における１つの位置に対して接触操作が行われると、１つの位置に対応する検出値を出力し、１つの位置に加えて操作面における他の１つの位置に対して接触操作が行われると、２つの位置の中点に対応する検出値を出力するものがある。従ってこのようなタッチパネルを備えた画像制御システムは、操作面における１つの位置に対して接触操作が行われると、接触操作が行われた位置の位置座標を取得するため、接触操作が行われた位置に対応させて画像を制御することができるが、１つの位置に加えて他の１つの位置に対して接触操作が行われると、接触操作が行われた位置とは異なる位置の位置座標を取得するため、接触操作が行われた位置に対応させて画像を制御することができなくなってしまう。そこでこのようなタッチパネルを用いた画像制御システムには、位置座標の変化が大きい場合には１つの位置に加えて他の１つの位置に対して接触操作が行われたと判定し、警告メッセージを表示するか、あるいはこのような接触操作を無視するものがある（特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１３６６３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
このように、上述したようなタッチパネルを用いた従来の画像制御システムは、１つの位置に加えて他の１つの位置に対して接触操作が行われた場合には、取得した位置座標に対応させた処理を行わないようにしていた。
【０００６】
本発明は、このような事情に鑑みてなされたものであり、その目的は、１つの位置に加えて他の１つの位置に対して接触操作が行われた場合であっても、接触操作が行われた位置に対応させた処理を行うことができる画像制御システムを提供することにある。
【課題を解決するための手段】
【０００７】
（１）本発明は、
操作面に対する接触操作の操作状態が、前記操作面における第１の位置に対して第１接触操作が行われる第１操作状態では、前記第１の位置に対応する検出値を出力し、前記第１接触操作に加えて前記操作面における第２の位置に対して第２接触操作が行われる第２操作状態では、前記第１の位置と前記第２の位置との中点に対応する検出値を出力する検出部の検出値に基づいて、表示部の表示面に表示される画像を制御する画像制御システムであって、
前記検出値に基づいて、前記操作面における位置を示す検出位置を取得する取得部と、
前記検出値に基づいて、前記操作状態が前記第１操作状態であるか前記第２操作状態であるかを判定する状態判定部と、
前記操作状態が第２操作状態である場合に、前記第１操作状態において取得された前記検出位置を一方の端点とし前記第２操作状態において取得された前記検出位置を中点とした場合の他方の端点を示す補正位置を求める補正部と、
前記補正位置に基づいて、前記画像を制御する表示制御部とを含むことを特徴とする画像制御システムに関係する。
【０００８】
また本発明は、上記各部としてコンピュータを機能させるプログラム及びそのようなプログラムを記憶するコンピュータが読み取り可能な情報記憶媒体に関するものである。
【０００９】
本発明では、操作状態が第２操作状態に移行しても第１操作状態における第１の位置が変化しない場合に、補正位置が第２の位置となるように補正位置を求めることができる。従って本発明では、第１の位置に加えて第２の位置に対して接触操作が行われた場合に、第２の位置に対応させて画像を制御することができる。
【００１０】
（２）また本発明は、
操作面に対する接触操作の操作状態が、前記操作面における第１の位置に対して第１接触操作が行われる第１操作状態では、前記第１の位置に対応する検出値を出力し、前記第１接触操作に加えて前記操作面における第２の位置に対して第２接触操作が行われる第２操作状態では、前記第１の位置と前記第２の位置との中点に対応する検出値を出力する検出部の検出値に基づいて、表示部の表示面に表示される画像を制御する画像制御システムであって、
前記検出値に基づいて、前記操作面における位置を示す検出位置を取得する取得部と、
前記検出値に基づいて、前記操作状態が前記第１操作状態であるか前記第２操作状態であるかを判定する状態判定部と、
前記操作状態が第２操作状態である場合に、前記第１操作状態における前記検出位置を一方の端点とし前記第２操作状態における前記検出位置を中点とした場合の他方の端点を示す補正位置を求める補正部と、
前記補正位置が特定位置と一致するか否かを判定する位置判定部と、
前記画像を制御する表示制御部とを含むことを特徴とする画像制御システムに関係する。
【００１１】
また本発明は、上記各部としてコンピュータを機能させるプログラム及びそのようなプログラムを記憶するコンピュータが読み取り可能な情報記憶媒体に関するものである。
【００１２】
本発明では、操作状態が第２操作状態に移行しても第１操作状態における第１の位置が変化しない場合に、補正位置が第２の位置となるように補正位置を求めることができる。従って本発明では、第１の位置に加えて第２の位置に対して接触操作が行われた場合に、第２の位置が特定位置と一致するか否かを判定することができる。
【００１３】
（３）また本発明では、
前記表示制御部は、
前記位置判定部の判定結果に基づいて、前記画像を制御するようにしてもよい。
【００１４】
このようにすれば、第２の位置に対応させて画像を制御することができる。
【００１５】
（４）また本発明では、
前記補正部は、
前記第２操作状態において新たな前記検出位置が取得された場合に、前記第１操作状態において取得された前記検出位置を一方の端点とし前記第２操作状態において新たに取得された前記検出位置を中点とした場合の他方の端点を示す補正位置を求めるようにしてもよい。
【００１６】
このようにすれば、第２操作状態において第２の位置が変化しても、第１操作状態における第１の位置が変化しない場合に、補正位置が第２の位置となるように補正位置を求めることができる。
【００１７】
（５）また本発明では、
前記補正部は、
前記第２操作状態において新たな前記検出位置が取得された場合に、前記第２操作状態において最初に求めた前記補正位置を一方の端点とし前記第２操作状態において新たに取得された前記検出位置を中点とした場合の他方の端点を示す補正位置を求めるようにしてもよい。
【００１８】
このようにすれば、第２操作状態において第１の位置が変化しても、第２の位置が変化しない場合に、補正位置が第１の位置となるように補正位置を求めることができる。
【００１９】
（６）また本発明では、
前記補正位置が変化した場合に、前記補正位置の移動情報を求める移動情報演算部を更に含み、
前記表示制御部は、
前記補正位置の移動情報に基づいて、前記画像を制御するようにしてもよい。
【００２０】
このようにすれば、第２操作状態における第１の位置の移動あるいは第２の位置の移動に対応させて画像を制御することができる。
【００２１】
（７）また本発明では、
前記第１操作状態の期間を計測する期間計測部を更に含み、
前記表示制御部は、
前記第１操作状態の期間に基づいて、前記画像を制御するようにしてもよい。
【００２２】
このようにすれば、第１操作状態の期間に対応させて画像を制御することができる。
【００２３】
（８）また本発明では、
前記表示制御部は、
前記表示面のうち前記操作面と重複する重複部分に、前記第１接触操作を行うべき第１領域と前記第２接触操作を行うべき第２領域とを識別するための表示物を表示させるようにしてもよい。
【００２４】
このようにすれば、操作状態の判定結果や補正位置の精度が高くなるように、操作者の操作を誘導することができる。
【００２５】
（９）また本発明では、
前記状態判定部は、
前記検出値が出力されないことに基づいて、前記操作状態が前記操作面に対して接触操作が行われていない無操作状態であると判定し、
前記操作状態が前記無操作状態である場合に前記検出値が出力されたことに基づいて、前記操作状態が前記第１操作状態であると判定し、
前記操作状態が前記第１操作状態である場合の前記検出位置の移動量が第１閾値を超えたことに基づいて、前記操作状態が前記第２操作状態であると判定するようにしてもよい。
【００２６】
このようにすれば、無操作状態と第１操作状態と第２操作状態との間で操作状態の移行を判定することができる。
【００２７】
（１０）また本発明では、
前記状態判定部は、
前記操作状態が前記第２操作状態である場合の前記検出位置の移動量が第２閾値を超えたことに基づいて、前記操作状態が前記第１操作状態であると判定するようにしてもよい。
【００２８】
このようにすれば、操作状態が第２操作状態から第１操作状態に移行したことを判定することができる。
【図面の簡単な説明】
【００２９】
【図１】本実施形態に係るゲームシステムの外観を示す図。
【図２】本実施形態に係るゲームシステムのタッチパネルの分解図。
【図３】本実施形態に係るゲームシステムの処理を説明するための図。
【図４】本実施形態に係るゲームシステムの機能ブロック図。
【図５】本実施形態に係るゲームシステムで表示される画像の例を示す図。
【図６】本実施形態に係るゲームシステムの処理を説明するための図。
【図７】本実施形態に係るゲームシステムの処理の流れを示すフローチャート。
【図８】本実施形態に係るゲームシステムの処理の流れを示すフローチャート。
【図９】本実施形態に係るゲームシステムの処理の流れを示すフローチャート。
【図１０】本実施形態に係るゲームシステムの処理を説明するための図。
【図１１】本実施形態に係るゲームシステムで表示される画像の例を示す図。
【図１２】本実施形態に係るゲームシステムで表示される画像の例を示す図。
【図１３】本実施形態に係るゲームシステムで表示される画像の例を示す図。
【図１４】本実施形態に係るゲームシステムで表示される画像の例を示す図。
【発明を実施するための形態】
【００３０】
以下において、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００３１】
１．概要
図１は、本実施形態のゲームシステム１０（表示制御システムの一例）の外観を示す図である。図１に示すようにゲームシステム１０は、プレーヤ（操作者、観者）が携帯可能な大きさに形成されており、プレーヤがゲームシステム１０を手で持ってゲームをプレーすることができるようになっている。そしてゲームシステム１０は、本体下部１２と本体上部１４とがヒンジ部１６により連結されており、本体下部１２と本体上部１４とがヒンジ部１６の軸回りに回動可能となっている。そして本体下部１２の中央部には、矩形の第１表示面１７に画像を出力する第１液晶ディスプレイ１８が設けられており、第１液晶ディスプレイ１８の周囲には、プレーヤが操作情報を入力するための十字キー２０、第１ボタン２２〜第４ボタン２８の４つのボタン、スタートボタン３０、セレクトボタン３２が設けられている。また本体上部１４の中央部には、矩形の第２表示面３３に画像を出力する第２液晶ディスプレイ３４が設けられ、第２液晶ディスプレイ３４の左側と右側には音を出力するスピーカ３６が設けられている。またヒンジ部１６には、プレーヤが音入力を行うためのマイク３８が設けられている。
【００３２】
また第１液晶ディスプレイ１８の第１表示面１７（重複部分の一例）には、矩形の操作面３９に対してプレーヤが行った接触操作の位置を検出できるタッチパネル４０が重ねられるように設けられている。そしてプレーヤが、例えば図１に示すタッチペン４１の先端を操作面３９に接触させると、ゲームシステム１０はタッチペン４１の先端が接触した操作面３９における接触位置を検出する。従ってプレーヤは、操作面３９に対して接触操作を行うことによっても操作情報を入力することができる。
【００３３】
これによりゲームシステム１０は、操作面３９における接触位置に応じて第１表示面１７に表示されている選択項目が選択されたことを判定したり、第１表示面１７や第２表示面３３においてキャラクタを発生させたり、移動させたり、消滅させたり、操作面３９における接触位置の移動軌跡を表示して第１表示面１７に文字や絵を描けるようにしたりすることができる。またゲームシステム１０は、操作面３９における接触位置の移動軌跡から、操作面３９における接触位置の移動量、移動方向、移動速度などを求めることができる。
【００３４】
図２は、タッチパネル４０の分解図である。図２に示すようにタッチパネル４０は、いわゆるアナログ抵抗膜方式のものとされ、光を透過するＸ軸用抵抗膜４２とＹ軸用抵抗膜４４とが、スペーサーを介して微少な間隔を空けてそれぞれの面が向かい合うように配置されている。そしてＸ軸用抵抗膜４２には、Ｘ軸方向の両端にＸ軸用電極が設けられ、Ｙ軸用抵抗膜４４には、Ｙ軸方向の両端にＹ軸用電極が設けられている。そしてＸ軸用電極とＹ軸用電極のそれぞれには、１／１２０秒ごとに交互に電圧が印加される。そしてタッチパネル４０に対して接触操作が行われるとＸ軸用抵抗膜４２が撓み、Ｘ軸用抵抗膜４２とＹ軸用抵抗膜４４とが接触して導通する。
【００３５】
従って、例えば図２の点Ａ（第１の位置の一例）に対して接触操作（第１接触操作の一例）が行われることにより、点ＡにおいてＸ軸用抵抗膜４２とＹ軸用抵抗膜４４とが接触して導通すると、Ｘ軸用電極に電圧が印加されている場合には、点ＡのＸ座標成分に応じて分圧された電圧（検出値の一例）がＹ軸用電極に現れ、Ｙ軸用電極に電圧が印加されている場合には、点ＡのＹ座標成分に応じて分圧された電圧（検出値の一例）がＸ軸用電極に現れる。これによりタッチパネル４０は、点Ａに対して接触操作が行われている場合には、点ＡのＸ座標成分に対応する検出値とＹ座標成分に対応する検出値を１／１２０秒ごとに交互に出力することができる。すなわちタッチパネル４０は、１／６０秒ごとに接触位置に対応する検出値を出力することができる。
【００３６】
しかしこのようなアナログ抵抗膜方式のタッチパネル４０では、点Ａに加えて点Ｂ（第２の位置の一例）に対して接触操作（第２接触操作の一例）が行われると、点Ａと点ＢとにおいてＸ軸用抵抗膜４２とＹ軸用抵抗膜４４とが接触して導通する。そしてこのような状態では、Ｘ軸用電極に電圧が印加されている場合には、点ＡのＸ座標成分と点ＢのＸ座標成分とに応じて分圧された電圧がＹ軸用電極に現れ、Ｙ軸用電極に電圧が印加されている場合には、点ＡのＹ座標成分と点ＢのＹ座標成分とに応じて分圧された電圧がＸ軸用電極に現れる。ここで、点ＡのＸ座標成分と点ＢのＸ座標成分とに応じて分圧された電圧は、点Ａと点Ｂの中点ＭのＸ座標成分に応じて分圧された電圧と等しく、点ＡのＹ座標成分と点ＢのＹ座標成分とに応じて分圧された電圧は、点Ａと点Ｂの中点ＭのＹ座標成分に応じて分圧された電圧と等しい。すなわちタッチパネル４０は、点Ａと点Ｂとに対して接触操作が行われている場合には、接触位置に対応する検出値を出力することはできず、点Ａと点Ｂの中点Ｍに対応する検出値を出力する。
【００３７】
従ってゲームシステム１０は、タッチパネル４０の検出値に基づいて操作面３９の座標（位置の一例）を取得すると、点Ａのみに対して接触操作が行われている場合には、点Ａの座標を取得することができるが、点Ａと点Ｂとに対して同時に接触操作が行われている場合には、点Ａと点Ｂの中点Ｍの座標を取得してしまう。そこでゲームシステム１０は、操作面３９に対する接触操作の状態が、操作面３９における１つの位置に対して接触操作が行われている第１操作状態であるか、２つの位置に対して接触操作が行われている第２操作状態であるかを判定する状態判定処理を行う。そして第１操作状態であれば、タッチパネル４０の検出値に対応する検出座標を接触位置の座標とし、第２操作状態であれば、タッチパネル４０の検出値に対応する検出座標を２つの接触位置の中点の座標として扱い、検出座標を補正した補正座標を求める補正処理を行い、補正座標を接触位置の座標とする。
【００３８】
図３（Ａ）〜図３（Ｄ）は、このような状態判定処理と補正処理を説明するための図である。本実施形態のゲームシステム１０は、１／６０秒ごとの取得タイミングで検出座標を取得するが、タッチパネル４０から検出値が出力されていない場合には、操作面３９に対して接触操作が行われていない無操作状態であると判定する。そして無操作状態において、図３（Ａ）に示すように点Ｐ１の検出座標を取得すると、点Ｐ１のみに対して接触操作が行われている第１操作状態であると判定する。従って、無操作状態において同一の取得タイミングで２つの位置に対する接触操作が行われることにより２つの位置の中点の検出座標を取得した場合であっても、１つの位置に対して接触操作が行われている第１操作状態であると判定する。すなわちゲームシステム１０は、同一の取得タイミングで２つの位置に対する接触操作が行われることは希であるから、無操作状態において点Ｐ１の検出座標を取得した場合には、プレーヤが１本のタッチペン４１を点Ｐ１に対して接触させたと仮定する。
【００３９】
そしてゲームシステム１０は、第１操作状態において次の取得タイミングが到来すると、図３（Ｂ）に示すように、今回の取得タイミングで取得した点Ｐ２の検出座標と、前回の取得タイミングで取得した点Ｐ１の検出座標との距離が、距離ｄ（第１閾値の一例）よりも大きいか否かを判定する。ここで距離ｄは、プレーヤが１本のタッチペン４１を操作した場合に、１／６０秒の間にタッチペン４１の先端を移動させることができるであろうと想定する距離よりも大きい距離が設定されている。
【００４０】
従って、点Ｐ２の検出座標と点Ｐ１の検出座標との距離が距離ｄよりも小さい場合には、プレーヤが１本のタッチペン４１の先端を操作面３９に接触させたまま、接触位置を点Ｐ１から点Ｐ２に移動させたことにより移動後の接触位置の座標が取得されたと想定できる。一方、点Ｐ２の検出座標と点Ｐ１の検出座標との距離が距離ｄよりも大きい場合には、１／６０秒以内にプレーヤが１本のタッチペン４１を点Ｐ１から離すとともに他の１本のタッチペン４１を点Ｐ２に対して接触させる操作が行われることは希であるから、プレーヤが１本のタッチペン４１を点Ｐ１に対して接触させている状態で、他の１本のタッチペン４１を操作面３９の他の点に対して接触させたことにより、２本のタッチペン４１の接触位置の中点の座標が取得されたと想定できる。そこでゲームシステム１０は、第１操作状態において、図３（Ｂ）に示すように点Ｐ１の検出座標から距離ｄよりも離れた点Ｐ２の検出座標を取得すると、点Ｐ１に加えて他の点に対しても接触操作が行われている第２操作状態であると判定する。
【００４１】
するとゲームシステム１０は、このような第２操作状態では、図３（Ｃ）に示すように、操作状態が第２操作状態に移行する直前の取得タイミングで取得された点Ｐ１の検出座標を直線Ｌの一方の端点とし、今回の取得タイミングで取得された点Ｐ２の検出座標を直線Ｌの中点とした場合の、直線Ｌの他方の端点を示す点Ｒ１の座標を求める。具体的には点Ｒ１のＸ座標Ｒ１Ｘを、点Ｐ１のＸ座標Ｐ１Ｘと点Ｐ２のＸ座標Ｐ２Ｘから、Ｒ１Ｘ＝２・Ｐ２Ｘ−Ｐ１Ｘのようにして求め、点Ｒ１のＹ座標Ｒ１Ｙを、点Ｐ１のＹ座標Ｐ１Ｙと点Ｐ２のＹ座標Ｐ２Ｙから、Ｒ１Ｙ＝２・Ｐ２Ｙ−Ｐ１Ｙのようにして求める。すなわちゲームシステム１０は、操作状態が第２操作状態に移行しても、一方のタッチペン４１の接触位置が点Ｐ１から移動せずに接触操作が継続されていると仮定して、他方のタッチペン４１の接触位置と想定される点Ｒ１の座標を求める。
【００４２】
そしてゲームシステム１０は、第２操作状態において次の取得タイミングが到来すると、図３（Ｄ）に示すように、今回の取得タイミングで取得した点Ｐ３の検出座標と、前回の取得タイミングで取得した点Ｐ２の検出座標との距離が、距離ｄ／２（第２閾値の一例）よりも大きいか否かを判定する。ここで距離ｄ／２を閾値としているのは、第２操作状態で取得される検出座標は中点の検出座標であると想定されているため、１／６０秒の間に中点が移動できる距離は、プレーヤがタッチペン４１の先端を移動させることができるであろうと想定する距離ｄの１／２程度であると考えられるからである。従って、点Ｐ３の検出座標と点Ｐ２の検出座標との距離が距離ｄ／２よりも小さい場合には、プレーヤが一方のタッチペン４１の先端の接触位置を移動させたか、あるいは両方のタッチペン４１の先端の接触位置を移動させたかのいずれかにより、２本のタッチペン４１の接触位置の中点が移動したと想定できる。そこでゲームシステム１０は、図３（Ｄ）に示すように、点Ｐ３の検出座標と点Ｐ２の検出座標との距離が距離ｄ／２よりも小さい場合には、第２操作状態が継続していると判定する。
【００４３】
しかし、両方のタッチペン４１の先端の接触位置を移動させた場合には、中点の座標からではそれぞれのタッチペン４１の接触位置と想定される点の座標を求めることはできない。そこでゲームシステム１０は、点Ｐ３の検出座標と点Ｐ２の検出座標との距離が距離ｄ／２よりも小さい場合には、プレーヤが一方のタッチペン４１の先端の接触位置を点Ｐ１に維持したまま、他方のタッチペン４１の先端を操作面３９に接触させた状態で接触位置をＲ１から移動させたことにより、２本のタッチペン４１の接触位置の中点が移動したと仮定する。そしてゲームシステム１０は、図３（Ｄ）に示すように、操作状態が第２操作状態に移行する直前の取得タイミングで取得された点Ｐ１の検出座標を直線Ｌの一方の端点とし、今回の取得タイミングで取得された点Ｐ３の検出座標を直線Ｌの中点とした場合の、直線Ｌの他方の端点を示す点Ｒ２の座標を求める。
【００４４】
すなわちゲームシステム１０は、第２操作状態において中点が移動した場合には、操作面３９に対する接触操作が先に行われた図中左のタッチペン４１の接触位置が、点Ｐ１から移動せずに接触操作が継続されていると仮定して、操作面３９に対する接触操作が後に行われた図中右のタッチペン４１の移動後の接触位置と想定される点Ｒ２の座標を求める。
【００４５】
一方、点Ｐ３の検出座標と点Ｐ２の検出座標との距離が距離ｄ／２よりも大きい場合には、プレーヤが一方のタッチペン４１を操作面３９に対して接触させている状態で、他方のタッチペン４１を操作面３９から離したことにより、一方のタッチペン４１の接触位置の座標が取得されたと想定できる。従って、このような場合には、ゲームシステム１０は、点Ｐ３のみに対して接触操作が行われている第１操作状態であると判定する。
【００４６】
こうしてゲームシステム１０は、操作状態が無操作状態であるか、第１操作状態であるか、第２操作状態であるかを判定することができる。そして第２操作状態では、先に接触操作が行われたタッチペン４１の接触位置が第１操作状態における接触位置から変化しなければ、後に接触操作が行われたタッチペン４１の接触位置が変化しても、第２操作状態で取得される検出座標に基づいて、他方のタッチペン４１の接触位置を求めることができる。
【００４７】
２．機能ブロック
図４は、本実施形態におけるゲームシステム１０の機能ブロック図の一例である。なお、本実施形態のゲームシステム１０は、図４の構成要素（各部）の一部を省略した構成としてもよい。
【００４８】
第１検出部５０は、十字キー２０、第１ボタン２２〜第４ボタン２８、スタートボタン３０、セレクトボタン３２に対する操作を検出するためのものであり、その機能は、各種スイッチや感圧センサなどにより実現できる。
【００４９】
第２検出部５２は、操作面３９に対する接触操作の接触位置を検出するためのものであり、その機能は、４線式や５線式のアナログ抵抗膜方式のタッチパネルなどにより実現できる。詳細には第２検出部５２は、操作面３９に対する操作状態が、操作面３９における第１の位置に対して第１接触操作が行われる第１操作状態では、第１の位置に対応する検出値を出力し、第１接触操作に加えて操作面３９における第２の位置に対して第２接触操作が行われる第２操作状態では、第１の位置と第２の位置との中点に対応する検出値を出力する。
【００５０】
音検出部５４は、プレーヤの音声や手拍子などの外部音を検出するためのものであり、その機能はマイクなどにより実現できる。
【００５１】
表示部５６は、ゲームシステム１０により生成された画像を出力するものであり、その機能はＣＲＴディスプレイ、液晶ディスプレイ、プラズマディスプレイ、プロジェクタなどにより実現できる。
【００５２】
音出力部５８は、ゲームシステム１０により生成された音を出力するものであり、その機能は、スピーカ３６やヘッドフォンなどにより実現できる。
【００５３】
情報記憶媒体６０（コンピュータにより読み取り可能な媒体）は、処理部１００が種々の処理を行うためのプログラムやデータなどを格納するものであり、その機能は、メモリカード、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープなどにより実現できる。
【００５４】
記憶部６２は、処理部１００や通信部７０などのワーク領域となるもので、その機能はＲＡＭやＶＲＡＭなどにより実現できる。そして、本実施形態の記憶部６２は、処理部１００のワーク領域として使用される主記憶部６４と、表示部５６に表示させる画像が描画される描画バッファ６６と、画像として表示されるオブジェクト（表示物）のデータが読み込まれるオブジェクトデータ記憶部６８とを含む。
【００５５】
通信部７０は、外部（例えばサーバや他の携帯端末）との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用の集積回路（ＡＳＩＣ）などのハードウェアや、プログラムなどにより実現できる。
【００５６】
なお、本実施形態の各部としてコンピュータを機能させるためのプログラム（データ）は、ホスト装置（サーバ）が有する情報記憶媒体６０からネットワーク及び通信部７０を介して情報記憶媒体６０（記憶部６２）に配信してもよい。このようなホスト装置（サーバ）の情報記憶媒体６０の使用も本発明の範囲内に含めることができる。
【００５７】
処理部１００（プロセッサ）は、第１検出部５０、第２検出部５２、音検出部５４などからの検出情報や、通信部７０からの受信情報や、プログラムやデータなどに基づいて、ゲーム処理、画像生成処理、音生成処理などの処理を行う。この処理部１００は、記憶部６２をワーク領域として各種処理を行い、その機能は各種プロセッサ（ＣＰＵ、ＤＳＰ等）、各種集積回路（ＩＣ、ＡＳＩＣ）などのハードウェアや、プログラムにより実現できる。
【００５８】
特に、本実施形態の処理部１００は、取得部１０２、移動情報演算部１０４、状態判定部１０６、補正部１０８、位置判定部１１０、期間計測部１１２、表示制御部１１４、通信制御部１１６、描画部１２０、音生成部１３０を含む。なお、これらの一部を省略する構成としてもよい。
【００５９】
取得部１０２は、第２検出部５２の検出値に基づいて、操作面３９における位置を示す検出位置を取得する。詳細には取得部１０２は、第２検出部５２から１／１２０秒ごとに操作面３９のＸ座標成分に対応する検出値とＹ座標成分に対応する検出値を交互に取得することにより、１／６０秒ごとの取得タイミングで操作面３９における位置を示す検出座標を取得する。そして取得部１０２は、記憶部６２の検出座標記憶部６２２に検出座標を取得タイミングごとに順次格納する。ここで取得部１０２は、第２検出部５２から検出値が出力されなかったことにより検出座標を取得することができなかった取得タイミングでは、検出座標がないことを示すＮＵＬＬを検出座標記憶部６２２に格納する。
【００６０】
移動情報演算部１０４は、検出座標記憶部６２２に格納された検出座標に基づいて、検出座標の移動情報である検出移動情報を求める。詳細には移動情報演算部１０４は、異なる取得タイミングで格納された複数の検出座標に基づいて、複数の検出座標の間の距離（移動量）である検出移動距離を求める。また移動情報演算部１０４は、異なる取得タイミングで格納された複数の検出座標に基づいて、検出座標の移動方向である検出移動方向を求める。すなわち移動情報演算部１０４は、異なる取得タイミングで格納された複数の検出座標に基づいて、検出座標の移動ベクトルである検出移動ベクトルを求める。そして移動情報演算部１０４は、検出移動情報を求めるごとに記憶部６２の検出移動情報記憶部６２４に検出移動情報を順次格納する。
【００６１】
状態判定部１０６は、第２検出部５２の検出値に基づいて、操作面３９に対する操作状態が、操作面３９に対して接触操作が行われていない無操作状態であるか、操作面３９における第１の位置に対して第１接触操作が行われている第１操作状態であるか、第１接触操作に加えて操作面３９における第２の位置に対して第２接触操作が行われている第２操作状態であるかを判定する。詳細には状態判定部１０６は、第２検出部５２から検出値が出力されないことに基づいて操作状態が無操作状態であると判定し、操作状態が無操作状態である場合に第２検出部５２から検出値が出力されたことに基づいて操作状態が第１操作状態であると判定し、操作状態が第１操作状態である場合の検出座標の移動量が第１閾値を超えたことに基づいて、操作状態が第２操作状態であると判定し、操作状態が第２操作状態である場合の検出座標の移動量が第２閾値を超えたことに基づいて、操作状態が第１操作状態であると判定する。
【００６２】
具体的には状態判定部１０６は、検出座標記憶部６２２にＮＵＬＬが格納されている取得タイミングでは無操作状態であると判定し、記憶部６２の状態フラグを無操作状態に設定する。そして無操作状態では、今回の取得タイミングで検出座標が格納された場合に、今回の取得タイミングから第１操作状態であると判定し、記憶部６２の状態フラグを第１操作状態に設定する。
【００６３】
そして第１操作状態では、今回の取得タイミングでＮＵＬＬが格納された場合に、今回の取得タイミングから無操作状態であると判定し、記憶部６２の状態フラグを無操作状態に設定する。また第１操作状態では、今回の取得タイミングで検出座標が格納された場合に、移動情報演算部１０４が求めた移動距離が図３（Ｂ）で示した距離ｄよりも大きいか否かを判定する。そして移動距離が距離ｄ以下である場合に、第１操作状態が継続していると判定し、記憶部６２の状態フラグを第１操作状態に維持する。一方、移動距離が距離ｄよりも大きい場合に、今回の取得タイミングから第２操作状態であると判定し、記憶部６２の状態フラグを第２操作状態に設定する。
【００６４】
そして第２操作状態では、今回の取得タイミングでＮＵＬＬが格納された場合に、今回の取得タイミングから無操作状態であると判定し、記憶部６２の状態フラグを無操作状態に設定する。また第２操作状態では、今回の取得タイミングで検出座標が格納された場合に、移動情報演算部１０４が求めた移動距離が図３（Ｄ）で示した距離ｄ／２よりも大きいか否かを判定する。そして移動距離が距離ｄ／２以下である場合に、第２操作状態が継続していると判定し、記憶部６２の状態フラグを第２操作状態に維持する。一方、移動距離が距離ｄ／２よりも大きい場合に、今回の取得タイミングから第１操作状態であると判定し、記憶部６２の状態フラグを第１操作状態に設定する。
【００６５】
補正部１０８は、操作状態が第２操作状態である場合に、第１操作状態における検出座標を一方の端点とし、第２操作状態における検出座標を中点とした場合の、他方の端点を示す補正座標を求める。詳細には補正部１０８は、操作状態が第２操作状態に移行する直前の第１操作状態の取得タイミングで格納された検出座標を直線の一方の端点とし、今回の取得タイミングで格納された検出座標を直線の中点とした場合の、直線の他方の端点を示す補正座標を求める。すなわち補正部１０８は、操作状態が第１操作状態から第２操作状態に移行しても、先に行われた第１接触操作の接触位置が第１操作状態における接触位置から移動せずに接触操作が継続されていると仮定して、後に行われた第２接触操作の接触位置と想定される操作面３９における座標を補正座標として求める。そして補正部１０８は、記憶部６２の補正座標記憶部６２６に補正座標を取得タイミングごとに順次格納する。
【００６６】
すると移動情報演算部１０４は、補正座標記憶部６２６に格納された補正座標に基づいて、補正座標の移動情報である補正移動情報を求める。詳細には移動情報演算部１０４は、異なる取得タイミングで格納された複数の補正座標に基づいて、複数の補正座標の間の距離（移動量）である補正移動距離を求める。また移動情報演算部１０４は、異なる取得タイミングで格納された複数の補正座標に基づいて、補正座標の移動方向である補正移動方向を求める。すなわち移動情報演算部１０４は、異なる取得タイミングで格納された複数の補正座標に基づいて、補正座標の移動ベクトルである補正移動ベクトルを求める。そして移動情報演算部１０４は、記憶部６２の補正移動情報記憶部６２８に補正移動情報を求めるごとに順次格納する。
【００６７】
位置判定部１１０は、取得部１０２が取得した検出座標や、補正部１０８が求めた補正座標が、特定座標と一致するか否かを判定する。詳細には位置判定部１１０は、検出座標や補正座標が、操作面３９における予め定められた範囲に属する座標（特定座標の一例）か否かを判定したり、第１液晶ディスプレイ１８の第１表示面１７に表示されているオブジェクトの表示位置に対応する範囲に属する座標（特定座標の一例）か否かを判定する。
【００６８】
期間計測部１１２は、第１操作状態の期間、第２操作状態の期間、無操作状態の期間を計測する。詳細には期間計測部１１２は、操作状態が第１操作状態に設定されたことを契機として記憶部６２の第１カウンタのカウント値の更新を開始し、第１操作状態が終了したことを契機として第１カウンタのカウント値を初期値にリセットする。また期間計測部１１２は、操作状態が第２操作状態に設定されたことを契機として記憶部６２の第２カウンタのカウント値の更新を開始し、第２操作状態が終了したことを契機として第２カウンタのカウント値を初期値にリセットする。また期間計測部１１２は、操作状態が無操作状態に設定されたことを契機として記憶部６２の第３カウンタのカウント値の更新を開始し、無操作状態が終了したことを契機として第３カウンタのカウント値を初期値にリセットする。
【００６９】
表示制御部１１４は、第１検出部５０、第２検出部５２、音検出部５４などからの検出情報や、通信部７０からの受信情報や、プログラムなどに基づいて、表示部５６に表示される画像（オブジェクト画像）の表示制御を行う。詳細には表示制御部１１４は、表示すべきオブジェクト（キャラクタ、移動体、コース、建物、樹木、柱、壁、マップ、背景など）を発生させたり、オブジェクトの表示や表示位置を指示したり、オブジェクトを消滅させたりするなどの表示制御を行う。即ち発生したオブジェクトをオブジェクトリストに登録したり、オブジェクトリストを描画部１２０等に転送したり、消滅したオブジェクトをオブジェクトリストから削除したりするなどの表示制御を行う。そして表示制御部１１４は、移動処理と動作処理とを行う。
【００７０】
移動処理としては、表示制御部１１４は、第１検出部５０、第２検出部５２、音検出部５４などからの検出情報や、通信部７０からの受信情報や、プログラム（移動アルゴリズム）や、各種データ（移動データ）などに基づいて、オブジェクトをオブジェクト空間内で移動させる処理（移動シミュレーション）を行う。具体的には、オブジェクトの移動情報（位置、回転角度、速度、或いは加速度）を、１フレーム（１／６０秒）毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動処理や画像生成処理を行う時間の単位である。
【００７１】
動作処理としては、表示制御部１１４は、第１検出部５０、第２検出部５２、音検出部５４などからの検出情報や、通信部７０からの受信情報や、プログラム（動作アルゴリズム）や、各種データ（モーションデータ）などに基づいて、オブジェクトをオブジェクト空間内で動作（モーション、アニメーション）させる処理（動作シミュレーション）を行う。具体的には、オブジェクトの動作情報（オブジェクトを構成する各パーツの位置、或いは回転角度）を、１フレーム（１／６０秒）毎に順次求めるシミュレーション処理を行う。
【００７２】
また本実施形態では、表示制御部１１４は、第１液晶ディスプレイ１８の第１表示面１７に、第１接触操作を行うべき第１領域と第２接触操作を行うべき第２領域とを識別するためのオブジェクトを表示させる。例えば表示制御部１１４は、第１領域を示すオブジェクトと第２領域を示すオブジェクトとを表示させる、あるいは第１領域の境界と第２領域の境界を示すオブジェクトを表示させる。
【００７３】
特に本実施形態では、表示制御部１１４は、検出座標、検出移動情報、補正座標、補正移動情報や、第１カウンタのカウント値、第２カウンタのカウント値、第３カウンタのカウント値に基づいて、例えば、検出座標や補正座標の移動軌跡に沿って画像の色を変化させる表示制御を行ったり、表示させている画像を他の画像に切り替える表示制御を行ったり、オブジェクトを発生、消滅、変形させたりする表示制御を行ったり、オブジェクトを移動させたり動作させたりする表示制御を行ったりするなど、種々の表示制御を行う。
【００７４】
通信制御部１１６は、他のゲームシステム１０に送信するパケットを生成する処理、パケット送信先のゲームシステム１０のネットワークアドレスを指定する処理、受信したパケットを記憶部６２に保存する処理、受信したパケットを解析する処理、その他のパケットの送受信に関する通信部７０の制御処理等を行う。特に本実施形態では、ゲームをネットワーク（例えば、インターネット）を利用して実行するために必要なデータパケット及びコマンドパケットを生成する制御や、通信部７０を介してデータパケット及びコマンドパケットを送受信させる制御を行う。
【００７５】
描画部１２０は、処理部１００で行われる種々の処理（ゲーム処理）の結果に基づいて描画処理を行い、これにより画像を生成し、表示部５６に出力する。
【００７６】
音生成部１３０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部５８に出力する。
【００７７】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて分散処理により生成してもよい。
【００７８】
３．本実施形態の適用例
以下、本実施形態のゲームシステム１０で実行されるゲームの例について説明する。以下では、プレーヤが指先で操作面３９に対する接触操作を行う場合を例にとり説明する。
【００７９】
図５は、ゲームシステム１０でサッカーのＰＫゲームが実行される例を示す図である。図５の例では、第２表示面３３には、手前側にプレーヤが操作するプレーヤキャラクタ２００が表示され、奥側にゲームシステム１０が操作するコンピュータキャラクタ２０２が表示される。図５の例では、キッカーがプレーヤキャラクタ２００となっており、ゴールキーパーがコンピュータキャラクタ２０２となっている。
【００８０】
そして操作面３９と重複して設けられている第１表示面１７には、操作面３９を左部分２０４（第１領域の一例）と右部分２０６（第２領域の一例）とに区分けする区分オブジェクト２０８が表示される。ここで図５の例のゲームでは、左部分２０４に対して接触操作を行う場合は、プレーヤの左手のいずれか１本の指先を用いて接触操作を行い、右部分２０６に対して接触操作を行う場合は、プレーヤの右手のいずれか１本の指先を用いて接触操作を行うことが、取扱説明書などにより推奨されている。
【００８１】
そして左部分２０４には、プレーヤキャラクタ２００の左足裏を示す左足裏オブジェクト２１０（第１領域の一例）が表示されるとともに、「３回Ｔｏｕｃｈ！」、「Ｈｏｌｄ！」というように、左部分２０４に対する接触操作の回数と態様とを示す文字が表示されている。ここで「３回Ｔｏｕｃｈ！」とは、左部分２０４に対して左手の指先を瞬間的に接触させるタッチ操作を３回行うことを指示する表示であり、「Ｈｏｌｄ！」とは、左部分２０４の１つの位置に対して左手の指先を継続的に接触させるホールド操作（第１接触操作の一例）を行うことを指示する表示である。また右部分２０６には、プレーヤキャラクタ２００の右足を示す右足オブジェクト２１２（第２領域の一例）と、右足オブジェクト２１２から右上、真上、左上のそれぞれに向かう３つの矢印オブジェクト２１４（第２領域の一例）が表示されるとともに、「Ｓｌｉｄｅ！」というように、右部分２０６に対する接触操作の態様を示す文字が表示されている。ここで「Ｓｌｉｄｅ！」とは、右部分２０６に対して右手の指先を接触させたまま接触位置を移動させるスライド操作（第２接触操作の一例）を行うことを指示する表示である。また左部分２０４の「Ｓｔｅｐ１」との表示は、左部分２０４に対して第１番目に接触操作を行うべきことを示す表示であり、右部分２０６の「Ｓｔｅｐ２」との表示は、右部分２０６に対して第２番目に接触操作を行うべきことを示す表示である。すなわち左部分２０４と右部分２０６とには、それぞれに対して接触操作を行うべき順序を示す表示が配置されている。
【００８２】
これにより、プレーヤが第１表示面１７を見ればいかなる接触操作を行えばよいかわかりやすくすることができるとともに、区分オブジェクト２０８や左足裏オブジェクト２１０や右足オブジェクト２１２が表示されることにより、プレーヤがホールド操作を行う位置とスライド操作を行う位置とが操作面３９においてある程度離れた位置となるようにプレーヤの操作を誘導することができ、操作状態の判定結果や補正座標の精度が高くなるようにすることができる。
【００８３】
そして、プレーヤにより左部分２０４に対してタッチ操作が行われると、タッチ操作が行われるごとにプレーヤキャラクタ２００がボール２１６に向かって助走する動作が表示され、タッチ操作が３回行われた後に左部分２０４に対してホールド操作が行われると、プレーヤキャラクタ２００が右足を後方に振り上げて、左足に体重をかける動作が表示される。すなわち左部分２０４に対してホールド操作が行われている間は、プレーヤキャラクタ２００がキック動作を行う前のいわゆるタメ動作を行う様子が表示される。すると、ホールド操作が行われている期間（第１操作状態の期間の一例）がカウントされる。
【００８４】
そして、プレーヤにより右部分２０６に対してスライド操作が開始されると、ホールド操作が行われている期間のカウントが終了され、スライド操作が開始されてから１２回の取得タイミング（０．２秒間、１２フレーム）で取得された検出座標に基づいて、検出座標の移動ベクトルが求められる。すると、ホールド操作が行われていた期間に応じて、ボール２１６の上下方向への移動方向が決定され、スライド操作による検出座標の移動方向に応じて、ボール２１６の左右方向への移動方向が決定され、スライド操作による検出座標の移動速度（０．２秒間の移動量）に応じて、ボール２１６の移動速度が決定される。そしてこれらの処理が行われるとともに、プレーヤキャラクタ２００がボール２１６を蹴る動作を行い、決定された移動方向と移動速度に応じてボール２１６が奧側に向かって移動する様子が表示される。
【００８５】
ここで、プレーヤがホールド操作を終了させてから、すなわち左部分２０４から左手の指先を離してからスライド操作を開始させた場合には、操作面３９の１つの位置に対して接触操作が行われている第１操作状態であるので、スライド操作による接触位置に対応する検出座標が取得される。従ってこの場合には、検出座標の移動ベクトルに対応するボール２１６の移動速度を求めれば、スライド操作による接触位置の移動速度に応じたボール２１６の移動速度が決定される。しかし、プレーヤがホールド操作を終了させる前に、すなわち左部分２０４から左手の指先を離さずにスライド操作を開始させた場合には、操作面３９の２つの位置に対して同時に接触操作が行われている第２操作状態であるので、ホールド操作による接触位置とスライド操作による接触位置との中点に対応する検出座標が取得される。従ってこの場合には、検出座標の移動ベクトルに対応するボール２１６の移動速度を求めても、スライド操作による接触位置の移動速度に応じたボール２１６の移動速度が決定されない。
【００８６】
具体的には図６に示すように、点Ａに対するホールド操作が終了してからスライド操作が行われることにより、検出座標の移動ベクトルがベクトルＢ１Ｂ２となる場合には、同一のスライド操作が行われても、点Ａに対するホールド操作とともにスライド操作が行われると、検出座標の移動ベクトルはベクトルＭ１Ｍ２となってしまう。従って、ホールド操作とともにスライド操作が行われる場合は、ホールド操作が終了してからスライド操作が行われる場合と比較して、検出座標の移動方向は同一（平行）となるが、検出座標の移動速度（移動量）は１／２となってしまう。
【００８７】
そこで本実施形態のゲームシステム１０では、ホールド操作とともにスライド操作が行われた場合には、すなわち操作状態が第２操作状態と判定された場合には、図６に示すように、スライド操作による検出座標を取得する０．２秒の間も点Ａに対するホールド操作が継続されていると仮定して、検出座標を補正した補正座標が求められる。例えば、検出座標が点Ｍ１であれば、点Ａを直線Ｌ１の一方の端点とし、点Ｍ１を直線Ｌ１の中点とした場合の、直線Ｌ１の他方の端点となる点Ｂ１が補正座標として求められる。また、検出座標が点Ｍ２であれば、点Ａを直線Ｌ２の一方の端点とし、点Ｍ２を直線Ｌ２の中点とした場合の、直線Ｌ２の他方の端点となる点Ｂ２が補正座標として求められる。そして補正座標の移動ベクトルを求めれば、ホールド操作が終了してから行われたスライド操作による検出座標の移動ベクトルと想定されるベクトルＢ１Ｂ２が得られる。そして、このような補正座標の移動ベクトルに基づいてボール２１６の移動速度が求められることにより、スライド操作による接触位置の移動速度に応じたボール２１６の移動速度が決定される。
【００８８】
こうして本実施形態のゲームシステム１０では、ホールド操作が終了してからスライド操作が行われた場合であっても、ホールド操作とともにスライド操作が行われた場合であっても、スライド操作による接触位置の移動速度に応じたボール２１６の移動速度が決定されるようにすることができる。すなわち本実施形態のゲームシステム１０によれば、操作面３９の２つの位置に対して同時に接触操作が行われる第２操作状態となっても、プレーヤに違和感を抱かせないようにボール２１６を移動させることができる。つまり本実施形態のゲームシステム１０によれば、タッチパネル４０の操作面３９に対して左右の手の指先を用いて接触操作を行わせる場合に好適なインターフェース環境を実現することができる。
【００８９】
４．本実施形態の処理
次に、本実施形態のゲームシステム１０で行われる処理の流れについて説明する。
【００９０】
図７は、操作面３９に対する接触操作の操作状態を移行させる操作状態移行処理の流れを示すフローチャートである。操作状態移行処理では、まず、初期状態として操作状態が無操作状態に設定され（ステップＳ１０）、無操作状態での取得タイミングにおいて検出座標が取得されない場合は（ステップＳ１２でＮ）、ステップＳ１２に戻る。一方、無操作状態での取得タイミングにおいて検出座標が取得された場合は（ステップＳ１２でＹ）、操作状態が第１操作状態に設定される（ステップＳ１４）。
【００９１】
そして第１操作状態での取得タイミングにおいて検出座標が取得されない場合は（ステップＳ１６でＮ）、操作状態が無操作状態に設定され（ステップＳ１０）、検出座標が取得された場合は（ステップＳ１６でＹ）、今回の取得タイミングで取得された検出座標と、前回の取得タイミングで取得された検出座標との距離である移動距離がｄよりも大きいか否か判定される（ステップＳ１８）。そして移動距離がｄ以下である場合は（ステップＳ１８でＮ）、ステップＳ１６に戻り、移動距離がｄよりも大きい場合は（ステップＳ１８でＹ）、操作状態が第２操作状態に設定される（ステップＳ２０）。
【００９２】
そして第２操作状態での取得タイミングにおいて検出座標が取得されない場合は（ステップＳ２２でＮ）、操作状態が無操作状態に設定され（ステップＳ１０）、検出座標が取得された場合は（ステップＳ２２でＹ）、今回の取得タイミングで取得された検出座標と、前回の取得タイミングで取得された検出座標との距離である移動距離がｄ／２よりも大きいか否か判定される（ステップＳ２４）。そして移動距離がｄ／２よりも大きい場合は（ステップＳ２４でＹ）、操作状態が第１操作状態に設定され（ステップＳ１４）、移動距離がｄ／２以下である場合は（ステップＳ２４でＮ）、ステップＳ２２に戻る。
【００９３】
図８は、検出座標を補正した補正座標を求める補正処理の流れを示すフローチャートである。補正処理では、まず、１／６０ごとの取得タイミングにおいて検出座標が取得され（ステップＳ３０）、この取得タイミングにおいて取得された検出座標により操作状態が第２操作状態に移行された場合は（ステップＳ３２でＹ）、操作状態が第２操作状態に移行する直前の取得タイミングで取得された第１操作状態の検出座標が、検出座標記憶部６２２から抽出される（ステップＳ３４）。そして、抽出された第１操作状態の検出座標を一方の端点とし、今回の取得タイミングの検出座標を中点とした場合の、他方の端点を示す補正座標が演算される（ステップＳ３６）。
【００９４】
そして、次回の取得タイミングにおいて検出座標が取得され（ステップＳ３８）、次回の取得タイミングにおいて取得された検出座標により第２操作状態が終了されない場合は（ステップＳ４０でＮ）、ステップＳ３６に戻り、抽出された第１操作状態の検出座標を一方の端点とし、次回の取得タイミングの検出座標を中点とした場合の、他方の端点を示す補正座標が演算される（ステップＳ３６）。一方、次回の取得タイミングにおいて取得された検出座標により第２操作状態が終了された場合は（ステップＳ４０でＹ）、補正処理を終了する。
【００９５】
図９は、画像に表示される移動体（ボール２１６）の移動情報を演算する移動処理の流れを示すフローチャートである。移動処理では、まず、３回のタッチ操作が行われた後にホールド操作が行われることにより、４回目の第１操作状態に移行すると（ステップＳ５０でＹ）、ホールド操作の期間をカウントする第１カウンタのカウント値の更新が開始される（ステップＳ５１）。
【００９６】
ここで操作状態が無操作状態に移行すると（ステップＳ５２でＹ）、すなわち図５で示した左部分２０４に対するホールド操作が終了されると、その時点における第１カウンタの値が記憶され（ステップＳ５４）、無操作状態の期間をカウントする第３カウンタのカウント値の更新が開始される（ステップＳ５６）。そして操作状態が第１操作状態に移行すると（ステップＳ５８でＹ）、すなわち図５で示した左部分２０４に対するホールド操作が終了されてから右部分２０６に対するスライド操作が開始されると、その時点における第３カウンタの値が記憶され（ステップＳ６０）、スライド操作が開始されてから１フレーム目の検出座標と１２フレーム目の検出座標に基づいて検出移動ベクトルが求められる（ステップＳ６２）。すなわちホールド操作が終了されてからスライド操作が行われたため、補正座標は用いられない。そして、第１カウンタの値と第３カウンタの値と検出移動ベクトルとに基づいて、移動体の移動情報が演算される（ステップＳ６３）。
【００９７】
詳細には、第１カウンタの値が大きいほど、すなわちホールド操作の期間が長いほど移動体の移動方向が上を向くように移動方向が求められ、第３カウンタの値が大きいほど、すなわちホールド操作とスライド操作の間の期間が長いほど移動体の移動速度が低下するように移動速度が求められる。従って本実施形態では、移動体の移動速度を高めるためにはホールド操作とスライド操作の間を短くすることが要求される。
【００９８】
なお、第３カウンタのカウント値の更新が開始されてから（ステップＳ５６）、操作状態が第１操作状態に移行せずに（ステップＳ５８でＮ）、第３カウンタのカウント値が所定値（例えば３秒に相当する値）に達すると（ステップＳ６４でＹ）、すなわちホールド操作が終了されてから３秒間経過してもスライド操作が行われない場合は、ホールド操作（プレーヤキャラクタ２００のタメ動作）がキャンセルされ、ステップＳ５０に戻る。
【００９９】
一方、ステップＳ５２において操作状態が無操作状態に移行せずに（ステップＳ５２でＮ）、第２操作状態に移行すると（ステップＳ７０でＹ）、すなわち図５で示した左部分２０４に対するホールド操作が行われたままスライド操作が開始されると、その時点における第１カウンタの値が記憶され（ステップＳ７２）、スライド操作が開始されてから１フレーム目の補正座標と１２フレーム目の補正座標に基づいて補正移動ベクトルが求められる（ステップＳ７４）。すなわちホールド操作が行われたままスライド操作が行われたため、補正座標が用いられる。そして、第１カウンタの値と補正移動ベクトルとに基づいて、移動体の移動情報が演算される（ステップＳ７６）。
【０１００】
このように本実施形態では、移動体の移動速度を高めるためにホールド操作とスライド操作の間の期間を短くしようとするあまり、プレーヤがホールド操作を行ったままスライド操作を行ってしまう場合が発生することが考えられるが、本実施形態によれば、このような場合でも、スライド操作の接触位置に対応させて移動体を移動させるようにすることができる。
【０１０１】
５．変形例
本発明は、上記の実施形態で説明したものに限らず、種々の変形実施が可能であり、以下に変形例を紹介する。なお、上記実施形態や、以下において変形例として説明する各種の手法は、本発明を実現する制御手法として適宜組み合わせて採用することができる。
【０１０２】
５−１．変形例１
例えば上記実施形態では、図５に示したように、左部分２０４のいずれかに対してホールド操作を行えば、プレーヤキャラクタ２００が右足を後方に振り上げる動作が表示されゲームが進行する例を挙げて説明したが、例えば左足裏オブジェクト２１０などのより狭い第１領域に対して第１接触操作が行われたことに基づいて、ゲームを進行させるようにしてもよい。そしてこのような第１領域を示すオブジェクトを、第１表示面１７の周縁部に表示させるようにしてもよい。このようにすれば、接触操作の接触位置をより効果的に誘導することができ、操作状態の判定結果や補正座標の精度が高くなるようにすることができる。
【０１０３】
また上記実施形態では、状態判定部１０６が、操作状態が無操作状態である場合に第２検出部５２から検出値が出力されたことに基づいて、操作状態が第１操作状態であると判定する例を挙げて説明したが、状態判定部１０６が、第１領域に対応する検出座標が取得されたことに基づいて、操作状態が第１操作状態であると判定するようにしてもよい。
【０１０４】
また上記実施形態では、第１操作状態では検出座標の移動量の第１閾値として距離ｄが設定され、第２操作状態では検出座標の移動量の第２閾値として距離ｄ／２が設定されている例を挙げて説明したが、第１閾値と第２閾値とは同一であってもよいし、第２閾値の方が第１閾値よりも大きな値となってもよい。
【０１０５】
また上記実施形態では、状態判定部１０６が、検出座標の移動量に基づいて操作状態を判定する例を挙げて説明したが、第１操作状態から第２操作状態に移行する瞬間、あるいは第２操作状態から第１操作状態に移行する瞬間には、タッチパネル４０のＸ軸用電極、あるいはＹ軸用電極に現れる電圧の変化にパルス（オーバーシュート）が発生するため、このパルスが発生したことに基づいて操作状態が第１操作状態から第２操作状態に移行したこと、あるいは第２操作状態から第１操作状態に移行したことを判定するようにしてもよい。
【０１０６】
５−２．変形例２
また上記実施形態では、図５の例のように、ホールド操作が終了してからスライド操作が行われても、あるいはホールド操作とともにスライド操作が行われても移動体が移動する例を挙げて説明したが、ホールド操作とともにスライド操作が行われないと、すなわち第２操作状態での接触操作が行われないと、移動体が移動しないようにしてもよい。
【０１０７】
また、プレーヤキャラクタの状態パラメータや、プレーヤキャラクタの種類に応じて、移動体の移動処理を行うようにしてもよい。例えば、プレーヤキャラクタの疲労度パラメータが変化するようにし、疲労度パラメータに応じて、移動体の移動量や移動方向や移動速度や移動精度が変化するようにしてもよい。また例えば本実施形態ではゲームシステム１０をゴルフゲームに適用した場合には、プレーヤキャラクタが握るクラブの種類に応じて、移動体の移動量や移動方向や移動速度や移動精度が変化するようにしてもよい。
【０１０８】
また上記実施形態では、第２操作状態では補正座標を求め、補正座標の移動情報に基づいて移動体を移動させる例を挙げて説明したが、第２操作状態であっても補正座標は求めずに、表示制御部１１４が、操作状態が第１操作状態である場合に、検出座標の移動量に対して特定変換処理を行わずに検出座標の移動量に基づいて移動体を移動させ、操作状態が第２操作状態である場合に、検出座標の移動量に対して特定変換処理を行って検出座標の移動量に基づいて移動体を移動させるようにしてもよい。例えば、図５の例では、ホールド操作とともにスライド操作が行われる場合は、ホールド操作が終了してからスライド操作が行われる場合と比較して、検出座標の移動方向は同一（平行）となり、検出座標の移動速度（移動量）は１／２となるため、検出座標の移動速度（移動量）を２倍してから、移動体の移動速度や移動量を求めるようにしてもよい。このようにすれば、補正座標を求めなくとも、第２操作状態における第１の位置の移動あるいは第２の位置の移動に対応させて、移動体を移動させることができる。
【０１０９】
５−３．変形例３
また上記実施形態では、図３（Ｄ）に示したように、第２操作状態において中点が点Ｐ２から点Ｐ３に移動した場合に、操作面３９に対する接触操作が先に行われた図中左のタッチペン４１の先端の接触位置が点Ｐ１に維持されたまま、操作面３９に対する接触操作が後に行われた図中右のタッチペン４１の先端が操作面３９に接触された状態で接触位置がＲ１から移動されたと仮定して、図中右のタッチペン４１の接触位置と想定される点Ｒ２の座標を求める例を挙げて説明したが、図１０（Ｄ）に示すように、第２操作状態において中点が点Ｐ２から点Ｐ３に移動した場合に、操作面３９に対する接触操作が後に行われた図中右のタッチペン４１の先端の接触位置が点Ｒ１に維持されたまま、操作面３９に対する接触操作が先に行われた図中左のタッチペン４１の先端が操作面３９に接触された状態で接触位置がＰ１から移動されたと仮定して、図中左のタッチペン４１の接触位置と想定される点Ｒ２の座標を求めるようにしてもよい。
【０１１０】
すなわち補正部１０８が、第２操作状態において新たな検出座標が取得された場合に、第２操作状態において最初に求めた補正座標を一方の端点とし第２操作状態において新たに取得された検出座標を中点とした場合の他方の端点を示す補正座標を求めるようにしてもよい。このようにすれば、例えば、まずは第１表示面１７の左部分の点Ｐ１に対してホールド操作を行い、この状態で、右部分のＲ１に対してもホールド操作を行い、その後、左部分においてホールド操作を行っている点Ｐ１からスライド操作を行う場合に、スライド操作の接触位置である点Ｒ２が補正座標として求められる。
【０１１１】
５−４．変形例４
また上記実施形態では、サッカーのＰＫゲームが実行される例を挙げて説明したが、野球ゲームやゴルフゲームなどのサッカー以外の球技スポーツゲームにも上記手法を適用することができる他、例えばスキーゲームや水泳ゲームなど、球技スポーツゲーム以外のスポーツゲームにも上記手法を適用することができる。
【０１１２】
図１１（Ａ）〜（Ｃ）は、ゲームシステム１０で水泳ゲームが実行される例を示す図である。この例では、図１１（Ａ）〜（Ｃ）に示すように、操作面３９でもある第１表示面１７には、左下から右上に向かって延びる右矢印オブジェクト２１８（第１領域の一例）と、右下から左上に向かって延びる左矢印オブジェクト２２０（第２領域の一例）とが、中央で交差するように表示されるとともに、「Ｓｌｉｄｅ！」というように、右矢印オブジェクト２１８に沿うように行うスライド操作と、左矢印オブジェクト２２０に沿うように行うスライド操作とを、交互に行うことが指示されている。またこの例では、図示を省略するが、第２表示面３３には、プレーヤキャラクタが水泳をする様子が表示される。そしてこの例では、右矢印オブジェクト２１８に沿うように行うスライド操作と、左矢印オブジェクト２２０に沿うように行うスライド操作のタイミングや速度や移動軌跡やそれらのバランスに応じてプレーヤキャラクタの移動速度や移動方向が決定される。
【０１１３】
そして図１１（Ａ）に示すように、右指の指先が右矢印オブジェクト２１８に沿って左下から右上に向けて移動するようにスライド操作が行われると、図１１（Ａ）の操作状態は第１操作状態であるので、接触位置の移動と検出座標の移動とが一致する。従ってこの場合には、補正座標は求められずに検出座標の移動速度や移動軌跡に基づいてプレーヤキャラクタの移動情報が決定される。
【０１１４】
一方、図１１（Ｂ）に示すように、右指の指先で右矢印オブジェクト２１８に沿ってスライド操作が行われた後、操作面３９の右上の位置に対して右指の指先でホールド操作が行われている状態で、左指の指先が左矢印オブジェクト２２０に沿って右下から左上に向けて移動するようにスライド操作が行われると、図１１（Ｂ）の操作状態は第２操作状態であるので、接触位置の移動と検出座標の移動とが一致しない。従ってこの場合には、操作面３９の右上の位置に対するホールド操作の接触位置と検出座標とに基づいて補正座標が求められ、補正座標の移動速度や移動軌跡に基づいてプレーヤキャラクタの移動情報が決定される。
【０１１５】
また、図１１（Ｃ）に示すように、左指の指先で左矢印オブジェクト２２０に沿ってスライド操作が行われた後、操作面３９の左上の位置に対して左指の指先でホールド操作が行われている状態で、右指の指先が右矢印オブジェクト２１８に沿って左下から右上に向けて移動するようにスライド操作が行われると、図１１（Ｃ）の操作状態も第２操作状態であるので、接触位置の移動と検出座標の移動とが一致しない。従ってこの場合には、操作面３９の左上の位置と検出座標とに基づいて補正座標が求められ、補正座標の移動速度や移動軌跡に基づいてプレーヤキャラクタの移動情報が決定される。
【０１１６】
５−５．変形例５
また上記実施形態では、タッチパネル４０の検出値に基づく検出座標、検出移動情報、補正座標、補正移動情報に基づいて、第２表示面３３に表示される移動体の移動を制御する例を挙げて説明したが、検出座標、検出移動情報、補正座標、補正移動情報に基づいて、タッチパネル４０の操作面３９でもある第１表示面１７（重複部分の一例）に表示される移動体の移動を制御するようにしてもよい。
【０１１７】
図１２（Ａ）〜（Ｅ）は、ゲームシステム１０で実行されるゲームの例を示す図である。この例では、図１２（Ａ）〜（Ｅ）に示すように、操作面３９でもある第１表示面１７に、多数の羊キャラクタ２２２と、羊キャラクタ２２２を襲う狼キャラクタ２２４とが表示され、羊キャラクタ２２２は狼キャラクタ２２４から逃げるように移動し、狼キャラクタ２２４は羊キャラクタ２２２を追いかけるように移動している。そしてこの例では、図１２（Ａ）に示すように、狼キャラクタ２２４が表示されている位置に対してホールド操作が行われると、狼キャラクタ２２４の移動を停止させる制御が行われる。また、図１２（Ｂ）に示すように、羊キャラクタ２２２が表示されている位置に対してスライド操作が行われると、羊キャラクタ２２２を安全な場所に移動させる制御が行われる。
【０１１８】
そして図１２（Ａ）に示すように、狼キャラクタ２２４が表示されている位置に対してホールド操作が行われると、図１２（Ａ）の操作状態は第１操作状態であるので、接触位置と検出座標とが一致する。従ってこの場合には、補正座標は求められずに検出座標の位置が狼キャラクタ２２４の表示位置（特定位置の一例）と一致しているか否かが判定され、検出座標の位置が狼キャラクタ２２４の表示位置と一致している場合には、狼キャラクタ２２４の移動を停止させる制御が行われる。
【０１１９】
また図１２（Ｂ）に示すように、羊キャラクタ２２２が表示されている位置に対してスライド操作が行われると、図１２（Ｂ）の操作状態は第１操作状態であるので、接触位置と検出座標とが一致する。従ってこの場合には、補正座標は求められずに検出座標の移動軌跡が羊キャラクタ２２２の表示位置（特定位置の一例）と交差（一致の一例）するか否かが判定され、検出座標の移動軌跡が羊キャラクタ２２２の表示位置と交差する場合には、羊キャラクタ２２２を安全な場所に移動させる制御が行われる。
【０１２０】
しかし図１２（Ｃ）に示すように、狼キャラクタ２２４が表示されている位置に対してホールド操作（第１接触操作の一例）が行われたまま、羊キャラクタ２２２が表示されている位置に対してスライド操作（第２接触操作の一例）が行われると、図１２（Ｃ）の操作状態は第２操作状態であるので、接触位置と検出座標とが一致しない。従ってこの場合には、狼キャラクタ２２４に対するホールド操作の接触位置と検出座標とに基づいて補正座標が求められ、補正座標の移動軌跡が羊キャラクタ２２２の表示位置（特定位置の一例）と交差（一致の一例）するか否かが判定され、補正座標の移動軌跡が羊キャラクタ２２２の表示位置と交差する場合には、羊キャラクタ２２２を安全な場所に移動させる制御が行われる。
【０１２１】
またこの例では、所定条件下で、図１２（Ｄ）に示すように、狼キャラクタ２２４が表示されている位置に対してホールド操作（第１接触操作の一例）が行われると、狼キャラクタ２２４の移動を停止させる制御が行われ、その状態で、羊キャラクタ２２２が表示されている位置に対してもホールド操作（第２接触操作の一例）が行われると、羊キャラクタ２２２の移動を停止させる制御が行われるようにしてもよい。しかし、図１２（Ｄ）の操作状態は第２操作状態であるので、接触位置と検出座標とが一致しない。従ってこの場合には、狼キャラクタ２２４が表示されている位置に対するホールド操作の接触位置と検出座標とに基づいて補正座標が求められ、補正座標が羊キャラクタ２２２の表示位置（特定位置の一例）と一致するか否かが判定され、補正座標が羊キャラクタ２２２の表示位置と交差する場合には、羊キャラクタ２２２の移動を停止させる制御が行われるようにしてもよい。そしてその後、狼キャラクタ２２４に対してホールド操作が行われている位置からスライド操作が行われると、図１０（Ｄ）で示したように、スライド操作の接触位置が補正座標として求められ、補正座標に基づいてスライド操作に追従するように狼キャラクタ２２４が移動される制御が行われるようにしてもよい。
【０１２２】
５−６．変形例６
また上記実施形態では、タッチパネル４０の検出値に基づく検出座標、検出移動情報、補正座標、補正移動情報に基づいて、移動体の移動を制御する例を挙げて説明したが、検出座標、検出移動情報、補正座標、補正移動情報に基づいて、接触操作の移動軌跡に対応させて文字や絵が描かれるように表示を制御するようにしてもよい。
【０１２３】
例えば、図１３に示すように、第１表示面１７の左下に表示されたボタン表示２２６（第１領域の一例）が表示されている位置に対して図中左のタッチペン４１によりホールド操作（第１接触操作の一例）が行われた状態で、図中右のタッチペン４１により操作面３９に対して曲線を描く操作（第２接触操作の一例）が行われると、図１３の操作状態は第２操作状態であるので、接触位置と検出座標とが一致しない。従ってこの場合には、ボタン表示２２６に対するホールド操作の接触位置と検出座標とに基づいて補正座標が求められ、補正座標の移動軌跡に沿って曲線２２８が描かれる制御が行われる。
【０１２４】
５−７．変形例７
また上記実施形態では、タッチパネル４０の検出値に基づく検出座標、検出移動情報、補正座標、補正移動情報に基づいて、画像を制御する例を挙げて説明したが、検出座標、検出移動情報、補正座標、補正移動情報に基づいて、特定位置との一致を判定し、音を制御したり、ゲーム演算を行うようにしてもよい。
【０１２５】
例えば、図１４に示すように、第１表示面１７の左下に表示されたボタン表示２２６（第１領域の一例）が表示されている位置に対して図中左のタッチペン４１によりホールド操作（第１接触操作の一例）が行われている間クイズの問題が表示され、第１表示面１７の右上に表示されたマルボタン表示２３０（第２領域の一例）または右下に表示されたバツボタン表示２３２（第２領域の一例）に対してタッチ操作が行われることにより、問題に対する回答操作が行われるようにしてもよい。そしてタッチ操作が行われた接触位置が、正しい回答に対応するボタンの表示位置と一致しているか否かが判定され、一致している場合に、正解を示す音を出力したり、得点を加算するなどの、表示制御処理以外の処理を行うようにしてもよい。
【０１２６】
そして図１４に示すように、ボタン表示２２６が表示されている位置に対して図中左のタッチペン４１によりホールド操作が行われた状態で、図中右のタッチペン４１によりマルボタン表示２３０またはバツボタン表示２３２に対してタッチ操作が行われると、図１４の操作状態は第２操作状態であるので、接触位置と検出座標とが一致しない。従ってこの場合には、ボタン表示２２６に対するホールド操作の接触位置と検出座標とに基づいて補正座標が求められ、補正座標とマルボタン表示２３０またはバツボタン表示２３２の表示位置とが一致しているか否かが判定される。
【０１２７】
５−８．変形例８
また第２操作状態における検出座標の移動軌跡が所定の移動軌跡と一致するか否かを判定するようにしてもよい。例えば、第１表示面１７に、それぞれの一辺の長さが同一となる正三角形と正方形を左右に並べて表示させた状態で、プレーヤが左手の指先で正三角形の各辺をなぞり、プレーヤが右手の指先で正方形の各辺をなぞった場合に、中点の移動軌跡となるデータを予め用意しておき、第２操作状態における検出座標の移動軌跡がこのような移動軌跡と一致するか否かを判定するようにしてもよい。この場合には、第１表示面１７に、正三角形と正方形を左右に並べて表示させてプレーヤの操作を誘導するようにしてもよいし、このような表示は行わないようにしてもよい。また、移動軌跡のデータには、左右の手の指先の動きのずれを考慮して、移動軌跡に所定の幅をもたせるようにしてもよい。
【符号の説明】
【０１２８】
１０  ゲームシステム、１２  本体下部、１４  本体上部、１６  ヒンジ部、
１７  第１表示面、１８  第１液晶ディスプレイ、２０  十字キー、２２  第１ボタン、
２４  第２ボタン、２６  第３ボタン、２８  第４ボタン、３０  スタートボタン、
３２  セレクトボタン、３３  第２表示面、３４  第２液晶ディスプレイ、
３６  スピーカ、３８  マイク、３９  操作面、４０  タッチパネル、
４１  タッチペン、４２  Ｘ軸用抵抗膜、４４  Ｙ軸用抵抗膜、５０  第１検出部、
５２  第２検出部、５４  音検出部、５６  表示部、５８  音出力部、
６０  情報記憶媒体、６２  記憶部、
１００  処理部、１０２  取得部、１０６  状態判定部、１０８  補正部、
１１０  位置判定部、１１２  期間計測部、１１４  表示制御部、１１６  通信制御部、
１２０  描画部、１３０  音生成部
【図２】
2011065600.tif 000003
【図３】
2011065600.tif 000004
【図４】
2011065600.tif 000005
【図５】
2011065600.tif 000006
【図６】
2011065600.tif 000007
【図７】
2011065600.tif 000008
【図８】
2011065600.tif 000009
【図９】
2011065600.tif 000010
【図１０】
2011065600.tif 000011
【図１１】
2011065600.tif 000012
【図１２】
2011065600.tif 000013
【図１３】
2011065600.tif 000014
【図１４】
2011065600.tif 000015
【図１】
2011065600.tif 000016