(57)【特許請求の範囲】
【請求項１】
入力手段の入力に応じて移動するオブジェクトを表示手段に表示する情報処理装置のオブジェクト移動制御プログラムであって、
前記情報処理装置のプロセサを、
前記表示手段の画面に対して前記入力手段によって入力された座標を検出する座標検出手段、
前記座標検出手段による検出座標が前記画面上の第１領域内の座標であるか否かを判定する第１判定手段、
前記第１判定手段によって前記検出座標が前記第１領域内であると判定された後に連続的に検出される座標が、前記画面上の第２領域外の座標になったか否かを判定する第２判定手段、
前記第２判定手段によって前記検出座標が前記第２領域外の座標になったと判定されるときの前記検出座標に基づいて移動方向を決定する方向決定手段、および
前記オブジェクトが前記方向決定手段によって決定された前記移動方向に移動するように制御する移動制御手段として機能させる、オブジェクト移動制御プログラム。
【請求項２】
前記移動制御手段は、前記第２判定手段によって前記検出座標が前記第２領域外の座標になったと判定されるタイミングで、前記オブジェクトの移動を開始する、請求項１記載のオブジェクト移動制御プログラム。
【請求項３】
前記プロセサを、前記第１領域内に前記オブジェクトの画像を表示するオブジェクト画像表示手段としてさらに機能させる、請求項１または２記載のオブジェクト移動制御プログラム。
【請求項４】
前記第２領域は前記第１領域を包含する、請求項１ないし３のいずれかに記載のオブジェクト移動制御プログラム。
【請求項５】
前記第２領域は、前記第１判定手段によって前記検出座標が前記第１領域内であると判定されたときの前記検出座標を基準として設けられる、請求項１ないし４のいずれかに記載のオブジェクト移動制御プログラム。
【請求項６】
前記第２領域は、前記第１領域内の所定位置を基準として設けられる、請求項１ないし４のいずれかに記載のオブジェクト移動制御プログラム。
【請求項７】
前記方向決定手段は、前記第１領域内の所定位置と前記第２判定手段によって前記検出座標が前記第２領域外の座標になったと判定されるときの前記検出座標とに基づいて、前記移動方向を決定する、請求項１ないし６のいずれかに記載のオブジェクト移動制御プログラム。
【請求項８】
前記方向決定手段は、前記第１判定手段によって前記検出座標が前記第１領域内であると判定されたときの前記検出座標と前記第２判定手段によって前記検出座標が前記第２領域外の座標になったと判定されるときの前記検出座標とに基づいて、前記移動方向を決定する、請求項１ないし６のいずれかに記載のオブジェクト移動制御プログラム。
【請求項９】
前記方向決定手段は、前記第１判定手段によって前記検出座標が前記第１領域内であると判定されてから前記第２判定手段によって前記検出座標が前記第２領域外の座標になったと判定されるまでに前記座標検出手段によって連続的に検出された座標のうち少なくとも２点の座標に基づいて、移動方向を決定する、請求項１ないし６のいずれかに記載のオブジェクト移動制御プログラム。
【請求項１０】
前記プロセサを、前記第１判定手段によって前記検出座標が前記第１領域内であると判定された後に連続的に検出される座標が、前記画面上の少なくとも前記第２領域と異なる第３領域外の座標になったか否かを判定する第３判定手段としてさらに機能させ、
前記方向決定手段は、前記第３判定手段によって前記検出座標が前記第３領域外の座標になったと判定されるときの前記検出座標と前記第２判定手段によって前記検出座標が前記第２領域外の座標になったと判定されるときの前記検出座標とに基づいて、前記移動方向を決定する、請求項１ないし６のいずれかに記載のオブジェクト移動制御プログラム。
【請求項１１】
前記プロセサを、前記第１判定手段によって前記検出座標が前記第１領域内であると判定されてから前記第２判定手段によって前記検出座標が前記第２領域外の座標になったと判定されるまでに経過した時間に基づいて移動速度を決定する速度決定手段としてさらに機能させ、
前記移動制御手段は、前記速度決定手段で決定された前記移動速度で前記オブジェクトが移動するように制御する、請求項１ないし１０のいずれかに記載のオブジェクト移動制御プログラム。
【請求項１２】
前記プロセサを、前記第１判定手段によって前記検出座標が前記第１領域内であると判定された後に連続的に検出される座標が、前記画面上の少なくとも前記第２領域と異なる第３領域外の座標になったと判定されてから前記第２判定手段によって前記検出座標が前記第２領域外の座標になったと判定されるまでに経過した時間に基づいて移動速度を決定する速度決定手段としてさらに機能させ、
前記移動制御手段は、前記速度決定手段で決定された前記移動速度で前記オブジェクトが移動するように制御する、請求項１ないし１０のいずれかに記載のオブジェクト移動制御プログラム。
【請求項１３】
前記方向決定手段は、前記第１判定手段によって前記検出座標が前記第１領域内であると判定された後、前記第２判定手段によって前記検出座標が前記第２領域外の座標になったと判定される前に、前記座標検出手段によって座標が検出されなくなったとき、前記第２判定手段によって前記検出座標が前記第２領域外の座標になったと判定されるときの前記検出座標に代えて、当該検出されなくなった直前の検出座標に基づいて、前記移動方向を決定する、請求項１ないし１２のいずれかに記載のオブジェクト移動制御プログラム。
【請求項１４】
前記移動制御手段は、前記第１判定手段によって前記検出座標が前記第１領域内であると判定された後に連続的に検出される座標が、前記画面上の少なくとも前記第２領域と異なる第３領域外の座標になったと判定される前に、前記座標検出手段によって座標が検出されなくなったときには、前記オブジェクトを移動させない、請求項１ないし１３のいずれかに記載のオブジェクト移動制御プログラム。
【請求項１５】
前記プロセサを、前記移動制御手段によって前記オブジェクトが移動されるとき、当該オブジェクトとは別のオブジェクトを発生させるオブジェクト発生手段としてさらに機能させる、請求項１ないし１４のいずれかに記載のオブジェクト移動制御プログラム。
【請求項１６】
前記第１領域は前記オブジェクトの表示領域よりも大きい、請求項１ないし１５のいずれかに記載のオブジェクト移動制御プログラム。
【請求項１７】
前記第１領域は前記オブジェクトの表示領域と同等の大きさである、請求項１ないし１６のいずれかに記載のオブジェクト移動制御プログラム。
【請求項１８】
入力手段の入力に応じて移動するオブジェクトを表示手段に表示する情報処理装置のオブジェクト移動制御プログラムであって、
前記情報処理装置のプロセサを、
前記オブジェクトを前記表示手段に表示するオブジェクト表示制御手段、
前記表示手段の画面に対して前記入力手段によって入力された座標を検出する座標検出手段、
前記座標検出手段による検出座標が前記画面上の第１領域内の座標であるか否かを判定する第１判定手段、
前記第１判定手段によって前記検出座標が前記第１領域内であると判定された後に連続的に検出される座標が、前記画面上の第２領域外の座標になったか否かを判定する第２判定手段、
前記第１判定手段によって前記検出座標が前記第１領域内であると判定されてから前記第２判定手段によって前記検出座標が前記第２領域外の座標になったと判定されるまでに前記座標検出手段によって連続的に検出された座標のうち少なくとも２点の座標に基づいて移動方向を決定する方向決定手段、および
前記第２判定手段によって前記検出座標が前記第２領域外の座標になったと判定されるタイミングで、前記方向決定手段によって決定された前記移動方向に前記オブジェクトを移動する移動制御手段として機能させる、オブジェクト移動制御プログラム。
【請求項１９】
入力手段の入力に応じて移動するオブジェクトを表示手段に表示する情報処理装置であって、
前記表示手段の画面に対して前記入力手段によって入力された座標を検出する座標検出手段、
前記座標検出手段による検出座標が前記画面上の第１領域内の座標であるか否かを判定する第１判定手段、
前記第１判定手段によって前記検出座標が前記第１領域内であると判定された後に連続的に検出される座標が、前記画面上の第２領域外の座標になったか否かを判定する第２判定手段、
前記第２判定手段によって前記検出座標が前記第２領域外の座標になったと判定されるときの前記検出座標に基づいて移動方向を決定する方向決定手段、および
前記オブジェクトが前記方向決定手段によって決定された前記移動方向に移動するように制御する移動制御手段を備える、情報処理装置。
【請求項２０】
入力手段の入力に応じて移動するオブジェクトを表示手段に表示する情報処理装置であって、
前記オブジェクトを前記表示手段に表示するオブジェクト表示制御手段、
前記表示手段の画面に対して前記入力手段によって入力された座標を検出する座標検出手段、
前記座標検出手段による検出座標が前記画面上の第１領域内の座標であるか否かを判定する第１判定手段、
前記第１判定手段によって前記検出座標が前記第１領域内であると判定された後に連続的に検出される座標が、前記画面上の第２領域外の座標になったか否かを判定する第２判定手段、
前記第１判定手段によって前記検出座標が前記第１領域内であると判定されてから前記第２判定手段によって前記検出座標が前記第２領域外の座標になったと判定されるまでに前記座標検出手段によって連続的に検出された座標のうち少なくとも２点の座標に基づいて移動方向を決定する方向決定手段、および
前記第２判定手段による判定結果が肯定的となったタイミングで、前記方向決定手段によって決定された前記移動方向に前記オブジェクトを移動する移動制御手段を備える、情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、オブジェクト移動制御プログラムおよび情報処理装置に関し、特にたとえば、タッチパネル上のスライド入力に応じて画面上のオブジェクトを移動させる、オブジェクト移動制御プログラムおよび情報処理装置に関する。
【背景技術】
【０００２】
タッチパネルを用いた打撃模擬によって仮想球を移動させる技術が特許文献１に開示されている。具体的には、この特許文献１の技術では、ユーザがペンの先を仮想球の上に下ろし、続いてペンを振り上げたときのペンの軌跡に対応する座標が計測される。計測された軌跡のうち隣接する座標点間の距離が初めて所定値以上になったときが、振り上げ動作が始まったときと見なされ、そのときの座標点が打撃の始点として決定される。また、ペンが仮想球に下ろされてから所定時間経過したときのペンの位置に対応する座標点が終点として決定される。この始点と終点とを結ぶ線の角度が仮想球の打撃方向として決定される。また、終点から順に所定数個の隣接座標点間の距離の最大値が打撃力として決定される。さらに、終点が発生したときのタイミングすなわちペンダウンから所定時間経過時が打撃を行うタイミングとして決定される。
【特許文献１】特開平５−３１２５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上述の従来技術では、入力の開始から所定時間経過したときの座標点を、打撃方向を決めるための終点と認定するようにしていたので、ユーザにとっては仮想球の移動方向を意図通りに入力することが困難であった。たとえば、終点決定のために設定される所定時間が短いと、的確な軌跡を入力することができなくなる。つまり、ユーザがまだ入力中であるにもかかわらず終点が決定されてしまうので、ユーザの意図しない方向に仮想球が動き出してしまう事態が発生する。一方、所定時間が長いと、的確な軌跡を入力した後の冗長な入力まで計測されてしまうことになる。つまり、ユーザ自身は的確な入力をし終わったと思ってもまだ入力を受け付ける状態が継続しているので、意図的でない入力で終点が決定されてそのような入力が仮想球の移動動作に反映されてしまう。
【０００４】
それゆえに、この発明の主たる目的は、新規な、オブジェクト移動制御プログラムおよび情報処理装置を提供することである。
【０００５】
この発明の他の目的は、ユーザの意図通りにオブジェクトを移動させることができる、オブジェクト移動制御プログラムおよび情報処理装置を提供することである。
【課題を解決するための手段】
【０００６】
第１の発明（請求項１の発明）は、入力手段の入力に応じて移動するオブジェクトを表示手段に表示する情報処理装置のオブジェクト移動制御プログラムである。このオブジェクト移動制御プログラムは、情報処理装置のプロセサを、座標検出手段、第１判定手段、第２判定手段、方向決定手段、および移動制御手段として機能させる。座標検出手段は、表示手段の画面に対して入力手段によって入力された座標を検出する。第１判定手段は、座標検出手段による検出座標が画面上の第１領域内の座標であるか否かを判定する。第２判定手段は、第１判定手段によって検出座標が第１領域内であると判定された後に連続的に検出される座標が、画面上の第２領域外の座標になったか否かを判定する。方向決定手段は、第２判定手段によって検出座標が第２領域外の座標になったと判定されるときの検出座標に基づいて移動方向を決定する。移動制御手段は、オブジェクトが方向決定手段によって決定された移動方向に移動するように制御する。
【０００７】
請求項１の発明では、情報処理装置（１０）のプロセサ（４２）は、オブジェクト移動制御プログラムに従って処理を実行し、入力手段（２２）の入力に応じて移動するオブジェクト（７０）を表示手段（１４）に表示する。座標検出手段（Ｓ３−Ｓ７、Ｓ１０３−Ｓ１０７）は、表示画面に対して入力手段によって入力された座標を検出する。入力手段はたとえばタッチパネルのようなポインティングデバイスであり、この座標検出手段でユーザによって指示された位置に対応する座標が検出される。第１判定手段（Ｓ１３、Ｓ１１１）は、検出座標が画面上の第１領域（７４）内の座標であるか否かを判定する。第１領域は、たとえばユーザによるオブジェクト移動のための入力が開始されたか否かを判定するための領域である。たとえば、画面上にオブジェクトが表示されている場合には、第１領域は、オブジェクトの表示領域を含んでよい。第１領域は、オブジェクトの表示領域と一致していてもよいし、オブジェクトの表示領域を含み当該表示領域よりも広い領域としてもよいし、オブジェクトの表示領域の少なくとも１部（典型的にはオブジェクトの表示領域の中央部分）を含み当該表示領域よりも狭い領域としてもよい。なお、オブジェクトが画面上に表示されるタイミングは適宜に設定され、たとえば、オブジェクトは、ユーザによる入力前から所定位置（例えば、第１領域内の所定位置（典型的には中心位置））に表示されていてもよいし、あるいは入力が開始されてから所定位置、入力開始位置、現入力位置などに表示されてもよいし、あるいは移動方向が決定されたときに移動開始位置に表示されてもよい。第２判定手段（Ｓ２７、Ｓ１２９）は、第１判定手段によって検出座標が第１領域内であると判定された後に連続的に検出される座標が、画面上の第２領域（７６）外の座標になったか否かを判定する。第２領域は、たとえばオブジェクトに対する入力の終点を判定するための領域である。第２領域は、たとえば第１領域内の所定位置を基準として設けられてよい。第２領域の基準点は、たとえば、オブジェクトの位置（たとえば中心座標）であってもよいし、入力の始点であってもよい。たとえば、この基準から所定の距離内の範囲が第２領域とされてよい。なお、第２領域は第１領域と同一の領域であっても良いし、異なる領域であってもよい。方向決定手段（Ｓ５３、Ｓ１６７）は、第２判定手段によって検出座標が第２領域外の座標になったと判定されたときの検出座標に基づいて移動方向を決定する。移動方向は、たとえば、検出座標が第２領域外になったときの座標と検出座標が第１領域内になったときの座標とに基づいて決定されてよいし、検出座標が第２領域外になったときの座標とオブジェクトの位置に基づいて決定されてよいし、第１領域内の座標検出後の連続的な入力が所定の領域外に出たときの座標と検出座標が第２領域外になったときの座標とに基づいて決定されてもよい。移動制御手段（Ｓ５７、Ｓ８１、Ｓ８７、Ｓ１７１）は、オブジェクトが方向決定手段によって決定された移動方向に移動するように制御する。
【０００８】
なお、オブジェクトの移動開始位置は、第１領域内の所定位置、第１判定手段によって検出座標が第１領域内であると判定されたときの検出座標、後述の第３判定手段によって検出座標が第３領域外の座標になったと判定されるときの検出座標などに設定してもよい。この場合、オブジェクトは、当該開始位置から決定された移動方向に向けて移動する。
【０００９】
また、オブジェクトの移動経路は、第２判定手段によって検出座標が第２領域外の座標になったと判定されるときの検出座標を含むようにしてもよい。すなわち、オブジェクトは、当該検出座標から決定された移動方向に向けて移動し、または、当該検出座標を通過するように決定された移動方向に向けて移動する。
【００１０】
請求項１の発明によれば、第１領域内の座標検出後に連続的に検出される座標が第２領域外の座標になったと判定されるときの検出座標に基づいて、オブジェクトの移動方向を決定するようにした。このように、移動制御のための入力の範囲や、入力として受け付けられる終わりの位置を明確にすることができる。したがって、移動方向の決定に使用される入力の終わりの座標点をユーザの意識どおりに決めることができるので、ユーザの意図通りにオブジェクトを移動させることが可能になる。
【００１１】
請求項２の発明は、請求項１の発明に従属し、移動制御手段は、第２判定手段による判定結果が肯定的となったタイミングで、オブジェクトの移動を開始する。したがって、第２領域外の座標が検出されたときに、オブジェクトの移動方向を決めるとともに、当該オブジェクトを当該移動方向に移動させ始めることができる。
【００１２】
請求項３の発明は、請求項１または２の発明に従属し、プロセサを、第１領域内にオブジェクトの画像を表示するオブジェクト画像表示手段としてさらに機能させる。オブジェクト画像表示手段（Ｓ１、Ｓ６５、Ｓ１０１、Ｓ１８１）によって、オブジェクトが画面上の第１領域内に表示される。したがって、たとえば、オブジェクトが最初から表示される場合には、オブジェクトの表示領域に対応する座標またはその近傍の座標を入力することが要求される。あるいは、オブジェクトが入力開始または移動方向決定に応じて表示される場合等には、入力に応じて第１領域内にオブジェクトを表示できる。
【００１３】
請求項４の発明は、請求項１ないし３の発明のいずれかに従属し、第２領域は前記第１領域を包含する。このように、第２領域が第１領域を包含するようにして設けられるので、第１領域の全周囲に第２領域が存在することとなり、移動方向を決めるための座標点（たとえば入力の終点）を第１領域すなわちオブジェクトから３６０度全方向で決めることが可能になる。したがって、オブジェクトをあらゆる方向へ向けて移動させることができる。第２領域は、第１領域と同じ領域であってもよいし、異なる領域であってもよい。後者の場合には、第２領域は、第１領域を含み当該領域よりも広い領域となる。
【００１４】
請求項５の発明は、請求項１ないし４の発明のいずれかに従属し、第２領域は、第１判定手段によって検出座標が第１領域内であると判定されたときの検出座標を基準として設けられる。つまり、第１領域内の検出座標を基準として、たとえばオブジェクトに対する入力の始点を基準として、移動方向の決定に使用される座標点（たとえば入力の終点）を決定するための第２領域を設定することができるので、第１領域（たとえばオブジェクトの表示領域）に対する入力の状況に応じて第２領域が決められることとなる。したがって、第１領域内の座標検出後のユーザの入力をより正確に測定することができるので、ユーザの入力の意図をより正確にオブジェクトの移動に反映することができる。
【００１５】
請求項６の発明は、請求項１ないし４の発明のいずれかに従属し、第２領域は、第１領域内の所定位置を基準として設けられる。つまり、移動方向の決定に使用される座標点（たとえば入力の終点）を決めるための第２領域を、第１領域内の所定位置（たとえばオブジェクトの位置）を基準として設定することができる。したがって、入力を正確に測定することができるので、ユーザの意図を正確に反映させた移動を行わせることができる。
【００１６】
請求項７の発明は、請求項１ないし６の発明のいずれかに従属し、方向決定手段は、第１領域内の所定位置と第２判定手段によって検出座標が第２領域外の座標になったと判定されるときの検出座標とに基づいて、移動方向を決定する。したがって、オブジェクトの移動方向を、第１領域内の所定位置（たとえばオブジェクトの位置）と検出座標が第２領域外の座標になるときの座標点（たとえば入力の終点）とに基づいて決定することができるので、たとえばオブジェクトからユーザに指示された座標点（終点）へ向かう方向へオブジェクトを移動させることができる。
【００１７】
請求項８の発明は、請求項１ないし６の発明のいずれかに従属し、方向決定手段は、第１判定手段によって検出座標が第１領域内であると判定されたときの検出座標と第２判定手段によって検出座標が第２領域外の座標になったと判定されるときの検出座標とに基づいて、移動方向を決定する。したがって、オブジェクトの移動方向を、検出座標が第１領域内の座標になったときの座標点（たとえば入力の始点）と検出座標が第２領域外の座標になるときの座標点（たとえば入力の終点）とに基づいて決定することができることができるので、たとえばユーザが入力位置を移動させた方向へオブジェクトを移動させることができる。
【００１８】
請求項９の発明は、請求項１ないし６の発明のいずれかに従属し、方向決定手段は、第１判定手段によって検出座標が第１領域内であると判定されてから第２判定手段によって検出座標が第２領域外の座標になったと判定されるまでに座標検出手段によって連続的に検出された座標のうち少なくとも２点の座標に基づいて、移動方向を決定する。
【００１９】
請求項９の発明では、方向決定手段（Ｓ１６７）は、検出座標が第１領域内の座標になったときの座標点（たとえば入力の始点）から検出座標が第２領域外の座標になるときの座標点（たとえば入力の終点）までの複数の座標点のうち少なくとも２点の座標に基づいて移動方向を決定する。したがって、たとえば、ユーザの連続的な入力の意図を、オブジェクトの移動方向に反映させることができる。
【００２０】
請求項１０の発明は、請求項１ないし６の発明のいずれかに従属し、プロセサを、第１判定手段によって検出座標が第１領域内であると判定された後に連続的に検出される座標が、画面上の少なくとも第２領域と異なる第３領域外の座標になったか否かを判定する第３判定手段としてさらに機能させる。方向決定手段は、第３判定手段によって検出座標が第３域外の座標になると判定されたときの検出座標と第２判定手段によって検出座標が第２領域外の座標になったと判定されるときの検出座標とに基づいて、移動方向を決定する。
【００２１】
請求項１０の発明では、第３判定手段（Ｓ２１）は、第１領域内の座標検出後に連続的に検出される座標が第３領域（７８）外の座標になったか否かを判定する。第３領域は、少なくとも第２領域とは異なる領域である。第３領域は、たとえば、第１領域内の所定位置を基準に設けられてもよいし、第１領域内の座標検出があったときの座標点を基準として設けられてもよい。そして、方向決定手段によって、検出座標が第３領域外になったときの座標点と検出座標が第２領域外になったときの座標点とに基づいて移動方向が決定される。したがって、たとえば、第１領域内の座標検出後の第３領域内の迷っているときの入力は移動方向に反映されず、ユーザが方向を決めて迷いが無くなった後の入力に基づいて移動方向を決定できるので、ユーザの意図をより正確に移動方向に反映できる。
【００２２】
請求項１１の発明は、請求項１ないし１０の発明のいずれかに従属し、プロセサを、第１判定手段によって検出座標が第１領域内であると判定されてから第２判定手段によって検出座標が第２領域外の座標になったと判定されるまでに経過した時間に基づいて移動速度を決定する速度決定手段としてさらに機能させる。移動制御手段は、速度決定手段で決定された移動速度でオブジェクトが移動するように制御する。
【００２３】
請求項１１の発明では、速度決定手段（Ｓ１６９）は、第１領域内の座標が検出されてから検出座標が第２領域外に出たときまでに経過した時間に基づいて移動速度を決定する。つまり、第２領域は、移動方向を決定する座標点の判定領域であると同時に、移動速度を決定するための時間計測終了時点の判定領域でもある。移動制御手段は、決定された移動速度でオブジェクトを移動する。したがって、移動速度を決めるための入力の範囲が、第１領域内から第２領域外までに限られて明確にされるので、ユーザの入力を正確に計測することができ、ユーザの意図通りの速度で意図通りの方向にオブジェクトを移動させることができる。
【００２４】
請求項１２の発明は、請求項１ないし１０の発明のいずれかに従属し、プロセサを、第１判定手段によって検出座標が第１領域内であると判定された後に連続的に検出される座標が、画面上の少なくとも第２領域と異なる第３領域外の座標になったと判定されてから第２判定手段によって検出座標が第２領域外の座標になったと判定されるまでに経過した時間に基づいて移動速度を決定する速度決定手段としてさらに機能させる。移動制御手段は、速度決定手段で決定された移動速度でオブジェクトが移動するように制御する。
【００２５】
請求項１２の発明では、速度決定手段（Ｓ５５）は、第１領域内の座標検出後の連続的な座標が第３領域外になったときから第２領域外になったときまでに経過した時間に基づいて移動速度を決定する。つまり、第２領域は、移動方向を決定する座標点の判定領域であると同時に、移動速度を決定するための時間計測終了時点の判定領域でもある。また、第３領域は、少なくとも第２領域と異なる領域であり、たとえば、第１領域内の所定位置を基準に設けられてもよいし、第１領域内の座標検出があったときの座標点を基準として設けられてもよいし、あるいは、第１領域と同一であってもよい。移動制御手段は、決定された移動速度でオブジェクトを移動する。このように、移動速度を決めるための入力の範囲が、第３領域を出てから第２領域外に出るまでに限られて明確にされるので、ユーザの入力をより正確に計測することができる。したがって、ユーザの意図をより的確に反映した速度で、意図通りの方向にオブジェクトを移動させることができる。
【００２６】
請求項１３の発明は、請求項１ないし１２の発明のいずれかに従属し、方向決定手段は、第１判定手段によって検出座標が第１領域内であると判定された後、第２判定手段によって検出座標が第２領域外の座標になったと判定される前に、座標検出手段によって座標が検出されなくなったとき、第２判定手段によって検出座標が第２領域外の座標になったと判定されるときの検出座標に代えて、当該検出されなくなった直前の検出座標に基づいて、移動方向を決定する。
【００２７】
請求項１３の発明では、方向決定手段は、第１領域内の座標検出後の連続的な検出座標が第２領域外の座標になる前に、座標が検出されなくなった場合には、第２領域外の座標を検出することができないので、当該第２領域外の検出座標に代えて、座標が検出されなくなった直前の検出座標に基づいて、移動方向を決定する。つまり、第１領域内の座標検出後の連続的な入力が第２領域外に出る前に、ユーザによって入力が終了されたときには、その直前の入力座標に基づいて移動方向を決定することができる。このように、第２領域外まで入力を移動させなくても入力無し状態にすることによって移動方向を決定することができ、オブジェクトの移動を開始させることができる。したがって、たとえば、方向の指示が既に意図通りに入力できているとユーザが判断したときには、第２領域外になる前に入力を終了することによって、素早くオブジェクトの移動を開始させることができる。また、複数のオブジェクトを移動させる場合には、これらを素早くかつ簡単に移動させることができる。
【００２８】
請求項１４の発明は、請求項１ないし１３の発明のいずれかに従属し、移動制御手段は、第１判定手段によって検出座標が第１領域内であると判定された後に連続的に検出される座標が、画面上の少なくとも第２領域と異なる第３領域外の座標になったと判定される前に、座標検出手段によって座標が検出されなくなったときには、オブジェクトを移動させない。
【００２９】
請求項１４の発明では、移動制御手段（Ｓ４９、Ｓ１６１）は、第１領域内の座標検出後の連続的な座標が第３領域外の座標になる前に、座標が検出されなくなったときには、オブジェクトを移動させない。第３領域は、少なくとも第２領域と異なる領域であり、たとえば、第１領域内の所定位置を基準に設けられてもよいし、第１領域内の座標検出があったときの座標点を基準として設けられてもよいし、あるいは、第１領域と同一であってもよい。このように、第１領域内の座標検出があっても第３領域外の座標が検出されなければ、オブジェクトが移動されないようにすることができるので、ユーザは、入力をキャンセルすることができ、入力をやり直すことができる。
【００３０】
請求項１５の発明は、請求項１ないし１４の発明のいずれかに従属し、プロセサを、移動制御手段によってオブジェクトが移動されるとき、当該オブジェクトとは別のオブジェクトを発生させるオブジェクト発生手段としてさらに機能させる。
【００３１】
請求項１５の発明では、オブジェクト発生手段（Ｓ６３、Ｓ１７９）は、オブジェクトが入力に応じて移動されるとき、別のオブジェクトを発生する。したがって、１つのオブジェクトを移動させるたびに別のオブジェクトを発生させることができるので、複数のオブジェクトを次々と移動させるようなゲームを実現できる。たとえば標的にボールを当てるようなゲームでは、複数のボールを次々と発生させながら各ボールを意図通りに移動させて標的に当てることができる。また、第１領域および第２領域に対する入力の出入に応じてオブジェクトの移動が制御されるようにしているので、入力の有無を切り替えたりすることなく入力を継続したままで複数のオブジェクトを次々と移動させることができる。
【００３２】
請求項１６の発明は、請求項１ないし１５の発明のいずれかに従属し、第１領域はオブジェクトの表示領域よりも大きい。したがって、オブジェクトに対する入力の判定領域を当該オブジェクトの表示領域よりも大きく設定するので、オブジェクトの移動のための入力を素早く開始することができ、操作性がよい。
【００３３】
請求項１７の発明は、請求項１ないし１６の発明のいずれかに従属し、第１領域はオブジェクトの表示領域と同等の大きさである。このように、オブジェクトに対する入力の判定領域を当該オブジェクトの表示領域と同等の大きさに設定するので、オブジェクトに対する入力を開始するために、ユーザに当該オブジェクトの表示領域に対応する位置への入力を行うことを、たとえばタッチパネルの場合にはオブジェクトにまさに触れることを、要求することができる。
【００３４】
第２の発明（請求項１８の発明）は、入力手段の入力に応じて移動するオブジェクトを表示手段に表示する情報処理装置のオブジェクト移動制御プログラムである。このオブジェクト移動制御プログラムは、情報処理装置のプロセサを、オブジェクト表示制御手段、座標検出手段、第１判定手段、第２判定手段、方向決定手段、および移動制御手段として機能させる。オブジェクト表示制御手段は、オブジェクトを表示手段に表示する。座標検出手段は、表示手段の画面に対して入力手段によって入力された座標を検出する。第１判定手段は、座標検出手段による検出座標が画面上の第１領域内の座標であるか否かを判定する。第２判定手段は、第１判定手段によって検出座標が第１領域内であると判定された後に連続的に検出される座標が、画面上の第２領域外の座標になったか否かを判定する。方向決定手段は、第１判定手段による判定結果が肯定的となってから第２判定手段によって検出座標が第２領域外の座標になったと判定されるまでに座標検出手段によって連続的に検出された座標のうち少なくとも２点の座標に基づいて移動方向を決定する。移動制御手段は、第２判定手段による判定結果が肯定的となったタイミングで、方向決定手段によって決定された移動方向にオブジェクトを移動する。
【００３５】
請求項１８の発明では、情報処理装置（１０）のプロセサ（４２）は、オブジェクト移動制御プログラムに従って処理を実行し、入力手段（２２）の入力に応じて移動するオブジェクト（７０）を表示手段（１４）に表示する。オブジェクト表示制御手段（Ｓ１、Ｓ６５、Ｓ１０１、Ｓ１８１）は、オブジェクトを表示手段に表示する。なお、オブジェクトが画面上に表示されるタイミングは適宜に設定され、たとえば、オブジェクトは、最初から所定位置に表示されていてもよいし、あるいは入力が開始されたときに所定位置または入力位置などに表示されてもよいし、あるいは移動方向が決定されたときに所定位置、入力開始位置または現入力位置などに表示されてもよい。座標検出手段（Ｓ３−Ｓ７、Ｓ１０３−Ｓ１０７）は、表示画面に対して入力手段によって入力された座標を検出する。入力手段はたとえばタッチパネルのようなポインティングデバイスであり、この座標検出手段でユーザによって指示された位置に対応する座標が検出される。第１判定手段（Ｓ１３、Ｓ１１１）は、検出座標が画面上の第１領域（７４）内の座標であるか否かを判定する。第１領域は、たとえばユーザによるオブジェクト移動のための入力が開始されたか否かを判定するための領域である。たとえば、画面上にオブジェクトが表示されている場合には、第１領域は、オブジェクトの表示領域を含んでよい。第２判定手段（Ｓ２７、Ｓ１２９）は、第１判定手段によって検出座標が第１領域内であると判定された後に連続的に検出される座標が、画面上の第２領域（７６）外の座標になったか否かを判定する。第２領域は、たとえばオブジェクトに対する入力の終点を判定するための領域である。第２領域は、たとえば第１領域内の所定位置を基準として設けられてよい。第２領域の基準点は、たとえば、オブジェクトの位置（たとえば中心座標）であってもよいし、入力の始点であってもよい。たとえば、この基準から所定の距離内の範囲が第２領域とされてよい。なお、第２領域は第１領域と同一の領域であっても良いし、異なる領域であってもよい。方向決定手段（Ｓ５３、Ｓ１６７）は、第１領域内の座標が検出されてから第２領域外の座標が検出されるまでに連続的に検出された座標のうち少なくとも２点の座標に基づいて移動方向を決定する。移動方向は、たとえば、検出座標が第１領域内になったときの座標と検出座標が第２領域外になったときの座標の２点に基づいて決定されてよいし、あるいは複数の座標点に基づいて、たとえば第１領域内から第２領域外までの各隣接座標点同士を結ぶ直線の角度の平均などに基づいて、決定されてもよい。移動制御手段（Ｓ５７、Ｓ８１、Ｓ８７、Ｓ１７１）は、第１領域内の座標検出後の連続的な座標が第２領域外になったと判定されるタイミングで、決定された移動方向にオブジェクトを移動する。
【００３６】
請求項１８の発明によれば、第１領域内の座標が検出されてから第２領域外の座標が検出されるまでの連続的な検出座標に基づいて移動方向を決定するとともに、当該連続的な検出座標が第２領域外になったときのタイミングで、オブジェクトを移動させるようにした。このように、移動制御のための入力の範囲や、入力として受け付けられる終わりの位置、オブジェクトの移動が開始される入力位置などを明確にすることができる。したがって、移動方向の決定に使用される入力の終わりの座標点をユーザの意識どおりに決めることができるので、ユーザの意図通りにオブジェクトを移動させることが可能になる。
【００３７】
第３の発明（請求項１９の発明）は、入力手段の入力に応じて移動するオブジェクトを表示手段に表示する情報処理装置である。この情報処理装置は、座標検出手段、第１判定手段、第２判定手段、方向決定手段、および移動制御手段を備える。座標検出手段は、表示手段の画面に対して入力手段によって入力された座標を検出する。第１判定手段は、座標検出手段による検出座標が画面上の第１領域内の座標であるか否かを判定する。第２判定手段は、第１判定手段によって検出座標が第１領域内であると判定された後に連続的に検出される座標が、画面上の第２領域外の座標になったか否かを判定する。方向決定手段は、第２判定手段によって検出座標が第２領域外の座標になったと判定されるときの検出座標に基づいて移動方向を決定する。移動制御手段は、オブジェクトが方向決定手段によって決定された移動方向に移動するように制御する。
【００３８】
請求項１９の発明は、上述の第１の発明に対応する情報処理装置であり、上述の第１の発明と同様にして、ユーザの意図通りにオブジェクトを移動させることが可能になる。
【００３９】
第４の発明（請求項２０の発明）は、入力手段の入力に応じて移動するオブジェクトを表示手段に表示する情報処理装置である。この情報処理装置は、オブジェクト表示制御手段、座標検出手段、第１判定手段、第２判定手段、方向決定手段、および移動制御手段を備える。オブジェクト表示制御手段は、オブジェクトを表示手段に表示する。座標検出手段は、表示手段の画面に対して入力手段によって入力された座標を検出する。第１判定手段は、座標検出手段による検出座標が画面上の第１領域内の座標であるか否かを判定する。第２判定手段は、第１判定手段によって検出座標が第１領域内であると判定された後に連続的に検出される座標が、画面上の第２領域外の座標になったか否かを判定する。方向決定手段は、第１判定手段による判定結果が肯定的となってから第２判定手段によって検出座標が第２領域外の座標になったと判定されるまでに座標検出手段によって連続的に検出された座標のうち少なくとも２点の座標に基づいて移動方向を決定する。移動制御手段は、第２判定手段によって検出座標が第２領域外の座標になったと判定されるタイミングで、方向決定手段によって決定された移動方向にオブジェクトを移動する。
【００４０】
請求項２０の発明は、上述の第２の発明に対応する情報処理装置であり、上述の第２の発明と同様にして、ユーザの意図通りにオブジェクトを移動させることできる。
【発明の効果】
【００４１】
この発明によれば、第１領域によってオブジェクトの移動に対する入力の開始を判定し、第２領域によってオブジェクトの移動に対する入力の終了を判定するようにした。そして、第１領域内の座標検出後の連続的な座標が第２領域外になったときの座標に基づいて、あるいは第１領域内の座標検出から第２領域外の座標検出までに連続的に検出された座標のうちの少なくとも２点の座標に基づいて、オブジェクトの移動方向を決定して、当該決定した移動方向へオブジェクトを移動するようにした。このように、オブジェクトの移動を制御可能な入力の範囲や、移動方向を決める入力の終わりの位置を明確にすることができるので、移動方向の決定に使用される座標点をユーザの意識どおりに決めることができる。したがって、ユーザの入力の意図を移動方向に反映することができるので、ユーザの意図しない方向にオブジェクトが移動されるという事態を無くすことができ、ユーザの意図通りにオブジェクトを移動させることができる。
【００４２】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【発明を実施するための最良の形態】
【００４３】
図１を参照して、この発明の実施例である情報処理装置１０は、一例としてゲーム装置の形態で実現される。情報処理装置すなわちゲーム装置１０は、第１の液晶表示器（ＬＣＤ）１２および第２のＬＣＤ１４を含む。このＬＣＤ１２およびＬＣＤ１４は、所定の配置位置となるようにハウジング１６に収納される。この実施例では、ハウジング１６は、上側ハウジング１６ａと下側ハウジング１６ｂとによって構成され、ＬＣＤ１２は上側ハウジング１６ａに収納され、ＬＣＤ１４は下側ハウジング１６ｂに収納される。したがって、ＬＣＤ１２とＬＣＤ１４とは縦（上下）に並ぶように近接して配置される。
【００４４】
なお、この実施例では、表示器としてＬＣＤを用いるようにしてあるが、ＬＣＤに代えて、ＥＬ(Electronic Luminescence)ディスプレイやプラズマディスプレイを用いるようにしてもよい。
【００４５】
図１からも分かるように、上側ハウジング１６ａは、ＬＣＤ１２の平面形状よりも少し大きな平面形状を有し、一方主面からＬＣＤ１２の表示面を露出するように開口部が形成される。一方、下側ハウジング１６ｂは、その平面形状が上側ハウジング１６ａよりも横長に選ばれ、横方向の略中央部にＬＣＤ１４の表示面を露出するように開口部が形成される。また、下側ハウジング１６ｂには、音抜き孔１８が形成されるとともに、操作スイッチ２０（２０ａ，２０ｂ，２０ｃ，２０ｄ，２０ｅ，２０Ｌおよび２０Ｒ）が設けられる。
【００４６】
また、上側ハウジング１６ａと下側ハウジング１６ｂとは、上側ハウジング１６ａの下辺（下端）と下側ハウジング１６ｂの上辺（上端）の一部とが回動可能に連結されている。したがって、たとえば、ゲームをプレイしない場合には、ＬＣＤ１２の表示面とＬＣＤ１４の表示面とが対面するように、上側ハウジング１６ａを回動させて折りたたんでおけば、ＬＣＤ１２の表示面およびＬＣＤ１４の表示面に傷がつくなどの破損を防止することができる。ただし、上側ハウジング１６ａと下側ハウジング１６ｂとは、回動可能に連結せずに、それらを一体的（固定的）に設けたハウジング１６を形成するようにしてもよい。
【００４７】
操作スイッチないし操作キー２０は、方向指示スイッチ（十字スイッチ）２０ａ，スタートスイッチ２０ｂ、セレクトスイッチ２０ｃ、動作スイッチ（Ａボタン）２０ｄ、動作スイッチ（Ｂボタン）２０ｅ、動作スイッチ（Ｌボタン）２０Ｌおよび動作スイッチ（Ｒボタン）２０Ｒを含む。スイッチ２０ａ，２０ｂおよび２０ｃは、下側ハウジング１６ｂの一方主面において、ＬＣＤ１４の左側に配置される。また、スイッチ２０ｄおよび２０ｅは、下側ハウジング１６ｂの一方主面において、ＬＣＤ１４の右側に配置される。さらに、スイッチ２０Ｌおよびスイッチ２０Ｒは、それぞれ、下側ハウジング１６ｂの上端（天面）の一部であり上側ハウジング１６ａとの連結部以外の部分において、当該連結部を挟むようにして左右に配置される。
【００４８】
なお、この実施例では、後述するように、タッチパネル２２を用いて入力された座標に基づいてオブジェクトの移動を制御する処理が実行されるので、ここでは、操作スイッチ２０の一般的な働きを説明しておく。
【００４９】
方向指示スイッチ（方向キー）２０ａは、ディジタルジョイスティックとして機能し、操作対象の移動方向を指示するために用いられる。つまり、４つの押圧部の１つを操作することによって、プレイヤ（ユーザ）によって操作可能なプレイヤキャラクタ（またはプレイヤオブジェクト）やカーソル等を当該操作した部分に対応する方向に移動させることができる。
【００５０】
スタートスイッチ２０ｂは、プッシュボタンで構成され、ゲームの開始（再開）、や一時停止等のために用いられる。セレクトスイッチ２０ｃは、プッシュボタンで構成され、ゲームモードの選択等のために用いられる。
【００５１】
動作スイッチ（動作キー）２０ｄすなわちＡボタンは、プッシュボタンで構成され、移動方向以外の動作の指示のために用いられる。たとえばプレイヤキャラクタに、打つ（パンチ）、投げる、つかむ（取得）、乗る、ジャンプする、切る等の任意の動作（アクション）をさせることができる。たとえば、アクションゲームにおいては、ジャンプ、パンチ、武器を動かす等を指示することができる。また、ロールプレイングゲーム（ＲＰＧ）やシミュレーションＲＰＧにおいては、アイテムの取得、武器やコマンドの選択および決定等を指示することができる。また、メニュー選択の際には、カーソルの表示された、すなわち、選択状態にあるメニュー項目を決定して当該項目に対応する動作ないし処理を実行させることが可能である。
【００５２】
動作スイッチ２０ｅすなわちＢボタンは、プッシュボタンで構成され、たとえばセレクトスイッチ２０ｃで選択したゲームモードの変更やＡボタン２０ｄで決定したアクションの取り消し等のために用いられる。また、Ｂボタン２０ｅも、Ａボタン２０ｄと同様に、プレイヤキャラクタの動作を指示するための動作キーとして使用され得る。
【００５３】
動作スイッチ２０Ｌ（Ｌボタン）および動作スイッチ２０Ｒ（Ｒボタン）は、プッシュボタンで構成され、Ｌボタン２０ＬおよびＲボタン２０Ｒは、上述の各動作スイッチ２０ｄ、２０ｅと同じまたは別の操作に用いることができ、また、上述の各動作スイッチ２０ｄ、２０ｅの補助的な操作に用いることができる。なお、上述のプッシュボタンは、キートップを押し下げることにより作動するスイッチとして構成されてよい。したがって、各スイッチを押し下げるという簡単な操作によって、動作指示等を行うことができる。
【００５４】
また、ＬＣＤ１４の上面には、タッチパネル２２が装着される。タッチパネル２２としては、たとえば、抵抗膜方式、光学式（赤外線方式）および静電容量結合式のいずれかの種類のものを用いることができる。また、タッチパネル２２は、その上面をスティック２４ないしはペン（スタイラスペン）或いは指（以下、これらを「スティック２４等」という場合がある。）で、押圧したり、撫でたり、触れたり、叩いたりすることによって操作すると、スティック２４等によって指示された（つまり、タッチ入力された）位置の座標を検出して、当該検出した座標を示す座標データを出力する。したがって、プレイヤはスティック２４等でタッチパネル２２を操作することにより、タッチ位置に対応する座標を入力することができる。
【００５５】
なお、この実施例では、ＬＣＤ１４（ＬＣＤ１２も同じ、または略同じ。）の表示面の解像度は２５６ｄｏｔ×１９２ｄｏｔであり、タッチパネル２２の検出精度（操作面）も表示画面に対応して２５６ｄｏｔ×１９２ｄｏｔとしてある。ただし、図１では、タッチパネル２２を分かり易く示すために、タッチパネル２２をＬＣＤ１４と異なる大きさで示してあるが、ＬＣＤ１４の表示画面の大きさとタッチパネル２２の操作面の大きさとは同じ大きさである。なお、タッチパネル２２の検出精度は、表示画面の解像度よりも低くてもよく、高くてもよい。
【００５６】
このように、ゲーム装置１０は、２画面分の表示部となるＬＣＤ１２およびＬＣＤ１４を有し、いずれか一方（この実施例では、ＬＣＤ１４）の上面にタッチパネル２２が設けられるので、２画面ないし２表示領域（１２，１４）と２系統の操作部（２０，２２）とを有する構成になっている。
【００５７】
なお、この実施例では、第１のＬＣＤ１２と第２のＬＣＤ１４とを縦方向に並べて配置するようにしているが、２つのＬＣＤの配置は適宜に変更され得る。たとえば他の実施例のゲーム装置１０では、第１のＬＣＤ１２と第２のＬＣＤ１４とを横方向に並べて配置するようにしてもよい。
【００５８】
また、この実施例では、２つのゲーム画面をそれぞれ表示する２つのＬＣＤを設けるようにしていたが、表示手段としてのＬＣＤの数は適宜変更され得る。たとえば他の実施例のゲーム装置１０では、縦長形状の１つのＬＣＤを設けて、表示領域を上下に分けて、２つのゲーム画面をそれぞれの表示領域に表示するようにしてもよいし、あるいは、横長形状の１つのＬＣＤを設けて、表示領域を左右に分割し、２つゲーム画面をそれぞれの表示領域に表示するようにしてもよい。
【００５９】
スティック２４は、たとえば上側ハウジング１６ａの側面（右側面）近傍に設けられる収納部（穴ないし凹部）２６に収納することができ、必要に応じて取り出される。ただし、スティック２４を設けない場合には、収納部２６を設ける必要もない。
【００６０】
さらに、ゲーム装置１０はメモリカード（またはゲームカートリッジ）２８を含む。このメモリカード２８は着脱自在であり、下側ハウジング１６ｂの裏面ないしは底面（下端）に設けられる挿入口３０から挿入される。図１では省略するが、挿入口３０の奥部には、メモリカード２８の挿入方向先端部に設けられるコネクタ（図示せず）と接合するためのコネクタ４６（図２参照）が設けられており、したがって、メモリカード２８が挿入口３０に挿入されると、コネクタ同士が接合され、ゲーム装置１０のＣＰＵコア４２（図２参照）がメモリカード２８にアクセス可能となる。
【００６１】
なお、図１では表現できないが、下側ハウジング１６ｂの音抜き孔１８と対応する位置であり、この下側ハウジング１６ｂの内部には、スピーカ３２（図２参照）が設けられる。
【００６２】
また、図１では省略するが、たとえば、下側ハウジング１６ｂの裏面側には、電池収容ボックスが設けられ、また、下側ハウジング１６ｂの底面側には、電源スイッチ、音量スイッチ、外部拡張コネクタおよびイヤフォンジャックなども設けられてよい。
【００６３】
図２はゲーム装置１０の電気的な構成を示すブロック図である。図２を参照して、ゲーム装置１０は電子回路基板４０を含み、この電子回路基板４０にはＣＰＵコア４２等の回路コンポーネントが実装される。ＣＰＵコア４２は、バス４４を介してコネクタ４６に接続されるとともに、ＲＡＭ４８、第１のグラフィック処理ユニット（ＧＰＵ）５０、第２のＧＰＵ５２、入出力インターフェイス回路（以下、「Ｉ／Ｆ回路」という。）５４、ＬＣＤコントローラ６０およびワイヤレス通信部６４に接続される。
【００６４】
コネコタ４６には、上述したように、メモリカード２８が着脱自在に接続される。メモリカード２８は、ＲＯＭ２８ａおよびＲＡＭ２８ｂを含み、図示は省略するが、ＲＯＭ２８ａおよびＲＡＭ２８ｂは、互いにバスで接続され、さらに、コネクタ４６と接合されるコネクタ（図示せず）に接続される。したがって、上述したように、ＣＰＵコア４２は、ＲＯＭ２８ａおよびＲＡＭ２８ｂにアクセスすることができるのである。
【００６５】
ＲＯＭ２８ａは、ゲーム装置１０で実行すべきゲーム（仮想ゲーム）のためのゲームプログラム、画像（キャラクタ画像、オブジェクト画像、背景画像、アイテム画像、アイコン（ボタン）画像、メッセージ画像、カーソル画像など）データおよびゲームに必要な音（音楽）のデータ（音データ）等を予め記憶する。この実施例のオブジェクト移動制御プログラムはゲームプログラムに含まれる。ＲＡＭ（バックアップＲＡＭ）２８ｂは、そのゲームの途中データや結果データを記憶（セーブ）する。
【００６６】
なお、ゲーム以外のアプリケーションが実行される場合、メモリカード２８のＲＯＭ２８ａには、当該アプリケーションについてのプログラムおよび当該アプリケーションの実行に必要な画像データ等が記憶される。また、必要に応じて音（音楽）データも記憶されてよい。
【００６７】
ＲＡＭ４８は、バッファメモリないしはワーキングメモリとして使用される。つまり、ＣＰＵコア４２は、メモリカード２８のＲＯＭ２８ａに記憶されたプログラム、画像データおよび音データ等をＲＡＭ４８にロードし、ロードしたプログラムに従って処理を実行する。また、ＣＰＵコア４２は、ゲーム等の進行に応じて発生または取得されるデータ（ゲームデータやフラグデータ等）をＲＡＭ４８に記憶しつつ処理を実行する。
【００６８】
なお、プログラム、画像データおよび音データ等は、ＲＯＭ２８ａから一度に全部または必要に応じて部分的にかつ順次的に読み出され、ＲＡＭ４８に記憶される。ただし、この実施例のように、固定的にプログラムおよびデータを記憶している記憶媒体をＣＰＵコア４２に直接接続可能なゲーム装置１０の場合には、ＣＰＵコア４２が記憶媒体に直接アクセスできるので、ＲＡＭ４８にプログラムやデータを転送して保持しなくてよい。
【００６９】
ＧＰＵ５０およびＧＰＵ５２は、それぞれ、描画手段の一部を形成し、たとえばシングルチップＡＳＩＣで構成され、ＣＰＵコア４２からのグラフィックスコマンド（graphics command ：作画命令）を受け、そのグラフィックスコマンドに従ってゲーム画像データを生成する。ただし、ＣＰＵコア４２は、グラフィックスコマンドに加えて、ゲーム画像データの生成に必要な画像生成プログラム（ゲームプログラムに含まれる。）をＧＰＵ５０およびＧＰＵ５２のそれぞれに与える。
【００７０】
また、ＧＰＵ５０には、第１のビデオＲＡＭ（以下、「ＶＲＡＭ」という。）５６が接続され、ＧＰＵ５２には、第２のＶＲＡＭ５８が接続される。ＧＰＵ５０およびＧＰＵ５２が作画コマンドを実行するにあたって必要なデータ（画像データ：キャラクタデータやテクスチャ等のデータ）は、ＧＰＵ５０およびＧＰＵ５２が、それぞれ、第１のＶＲＡＭ５６および第２のＶＲＡＭ５８にアクセスして取得する。ただし、ＣＰＵコア４２は、描画に必要な画像データをＲＡＭ４８から読み出し、ＧＰＵ５０およびＧＰＵ５２を介して第１のＶＲＡＭ５６および第２のＶＲＡＭ５８に書き込む。ＧＰＵ５０はＶＲＡＭ５６にアクセスして表示のためのゲーム画像データを作成し、その画像データをＶＲＡＭ５６の描画バッファに記憶する。ＧＰＵ５２はＶＲＡＭ５８にアクセスして描画のためのゲーム画像データを作成し、その画像データをＶＲＡＭ５８の描画バッファに記憶する。描画バッファとしてはフレームバッファまたはラインバッファ等が採用されてよい。
【００７１】
ＶＲＡＭ５６およびＶＲＡＭ５８は、ＬＣＤコントローラ６０に接続される。ＬＣＤコントローラ６０はレジスタ６２を含み、レジスタ６２はたとえば１ビットで構成され、ＣＰＵコア４２の指示によって「０」または「１」の値（データ値）を記憶する。ＬＣＤコントローラ６０は、レジスタ６２のデータ値が「０」である場合には、ＧＰＵ５０によって作成されたゲーム画像データをＬＣＤ１２に出力し、ＧＰＵ５２によって作成されたゲーム画像データをＬＣＤ１４に出力する。一方、レジスタ６２のデータ値が「１」である場合には、ＬＣＤコントローラ６０は、ＧＰＵ５０によって作成されたゲーム画像データをＬＣＤ１４に出力し、ＧＰＵ５２によって作成されたゲーム画像データをＬＣＤ１２に出力する。
【００７２】
なお、ＬＣＤコントローラ６０は、ＶＲＡＭ５６およびＶＲＡＭ５８から直接画像データを読み出すことができるし、あるいはＧＰＵ５０およびＧＰＵ５２を介してＶＲＡＭ５６およびＶＲＡＭ５８から画像データを読み出すこともできる。
【００７３】
また、ＶＲＡＭ５６およびＶＲＡＭ５８はＲＡＭ４８に設けられてもよいし、あるいはその描画バッファおよびＺバッファがＲＡＭ４８に設けられてもよい。
【００７４】
Ｉ／Ｆ回路５４には、操作スイッチ２０，タッチパネル２２およびスピーカ３２が接続される。ここで、操作スイッチ２０は、上述したスイッチ２０ａ，２０ｂ，２０ｃ，２０ｄ，２０ｅ，２０Ｌおよび２０Ｒであり、操作スイッチ２０が操作されると、対応する操作信号（操作データ）がＩ／Ｆ回路５４を介してＣＰＵコア４２に入力される。また、タッチパネル２２から出力される操作データ（座標データ）がＩ／Ｆ回路５４を介してＣＰＵコア４２に入力される。さらに、ＣＰＵコア４２は、ゲーム音楽（ＢＧＭ）、効果音またはゲームキャラクタの音声（擬制音）などのゲームに必要な音データをＲＡＭ４８から読み出し、Ｉ／Ｆ回路５４を介してスピーカ３２からその音を出力する。
【００７５】
ワイヤレス通信部６４は他のゲーム装置１０との間で無線によってデータを送受信するための通信手段である。すなわち、ワイヤレス通信部６４は、ＣＰＵコア４２からの相手方への通信データを無線信号に変調してアンテナから送信し、また、相手方のゲーム装置１０からの無線信号を同じアンテナで受信して通信データに復調しＣＰＵコア４２に与える。
【００７６】
情報処理装置１０では、画面上に表示されたオブジェクトの移動がタッチパネル２２の入力に応じて制御される。一例として、ゲーム画面上のゲームオブジェクトを移動させて標的に当てるようなゲームが実行される場合を説明する。なお、このオブジェクト移動制御処理は、この実施例のようなゲームに限られず、オブジェクトを画面上で別の場所に移動させるようなあらゆる場合で適用可能である。
【００７７】
図３には、ゲーム画面の一例が示される。このゲーム画面はタッチパネル２２の重ねられるＬＣＤ１４に表示される。ゲームオブジェクトの一例としてのボール７０は、たとえば画面上の所定位置に表示される。また、このボール７０で狙うべき標的７２も所定位置に表示されている。この実施例では、表示されたボール７０に対するタッチパネル２２上の対応する位置への入力に応じて、当該ボール７０の移動の詳細が決められて、当該ボール７０が移動される。プレイヤは、基本的にはボール７０に触れてボール７０から標的７２へ向かう方向にスティック２４等による指示位置を移動させるという直感的な操作によって、標的７２の方向へボール７０を移動させることができる。
【００７８】
このボール７０に対する入力の有無を判定するために、ボール７０の表示領域に対応する領域を含む第１領域７４が操作面ないし操作領域上に設けられる。この第１領域７４は、ユーザのタッチパネル２２における入力が、ボール７０に触れてこれを移動させようとするものであるか否かを判定するための領域である。
【００７９】
第１領域７４は、この実施例ではボール７０よりもやや大きいサイズを有し、この第１領域７４内にボール７０が配置される。この実施例では、ボール７０および第１領域７４はともに円形であり、ボール７０は、第１領域７４の中心座標にボール７０の中心が一致するように配置される。一例として、ボール７０の直径は１８ドット程度に設定され、第１領域７４の直径は３０ドット程度に設定されてよい。なお、ボール７０の形状は円形に限定されず、楕円、三角形、矩形など適宜変更されてよい。また、第１領域７４はオブジェクト７０の形状に合わせた形状に形成されてもよいし、オブジェクト７０の形状に合わせず所定の形状であってもよい。この実施例のように、ボール７０よりも第１領域７４を大きく形成すれば、ボール７０に対する入力をユーザに開始させ易くすることができるし、ボール７０の移動のための入力を素早く開始することができ、操作性がよい。たとえばボール７０が画面上で小さく表示されてしまうようなサイズに設定される場合には特に有効である。ボールのサイズが大きいか、或いは操作をわざと難しくする場合は、ボール７０の表示領域と第１領域７４の大きさを同一にしても良い。
【００８０】
図４を参照して、具体的にボール７０に対する入力の開始の判定について説明する。第１領域７４への入力が開始されたと判定されるときに、ボール７０に対する入力が開始されたと見なされる。すなわち、スティック２４等により第１領域７４外が指示されている状態から連続的に第１領域７４内が指示されることとなったとき、または、タッチパネル２２への入力無し状態から最初に第１領域７４内が指示されたときに、ボール７０に対する入力が開始されたと見なされる。
【００８１】
この実施例では、第１領域７４への入力が開始されたと判定されると、そのときの検出座標が始点として記憶される。そして、その後のユーザの入力の挙動の詳細を調査し測定するために、タッチパネル２２の操作面上に、当該始点を基準として第２領域７６および第３領域７８が設定される。
【００８２】
第２領域７６は、第１領域７４内の所定位置を基準として設けられ、この実施例では、上述のように、入力の始点を基準として設けられる。この第２領域７６は、ボール７０に対する入力の終点を判定するために設けられる。つまり、始点から連続するスライド入力が第２領域７６外に出たときに、ボール７０に対する入力が終了したと見なされる。スライド入力は、タッチパネル２２上をスティック２４等で触れたままでその指示位置を移動させる入力のことをいう。この第２領域７６外に出たときの検出座標が入力の終点とされる。ボール７０の移動方向は、少なくともこの終点に基づいて決定され、この実施例では、ボール７０の中心と終点とに基づいて決定される。
【００８３】
また、第３領域７８は、ボール７０の移動速度を決定するための時間の計測の開始点を判定するために設けられている。始点から連続するスライド入力が第３領域７８を出たときに、時間の計測が開始され、その後、当該スライド入力が第２領域７６を出たときに、時間の計測が終了される。この計測された時間、すなわち、スライド入力が第３領域７８を出てから第２領域７６を出るまでに掛かった時間に基づいて、ボール７０の移動速度が決定される。
【００８４】
また、始点から連続するスライド入力が第２領域７６を出たときがボール７０の移動が開始されるタイミングであり、上述のように決定される移動方向および移動速度に従ってボール７０が移動し始める。
【００８５】
具体的には、第２領域７６は、始点から所定距離以下の範囲であり、すなわち、始点を中心としかつ所定距離を半径とする円の範囲内が第２領域７６とされる。第２領域７６の範囲を規定する所定距離は、たとえば円の半径データとして予め記憶されている。一例として、第２領域７６の直径は１１８ドット程度に設定されてよい。この第２領域７６の判定よって、ボール７０の移動方向や移動速度が決定されてボール７０が発射されることとなる。第２領域７６のサイズは、標的７２の存在する位置が第２領域７６内に含まれないような値に設定される。これによって、スライド入力が標的７２の位置に達する前に、移動方向および移動速度が決定されてボール７０が発射されることとなるので、ゲーム性を確保することができる。なお、他の実施例では、第２領域７６は第１領域７８と同一の領域に設定されてもよい。
【００８６】
また、第３領域７８は、始点から所定距離以下の範囲であり、すなわち、始点を中心としかつ所定距離を半径とする円の範囲内が第３領域７８とされる。この第３領域７８を規定する所定距離の値は適宜に設定される。ただし、この第３領域７８は第２領域７６とは異なり、第３領域７８を規定する所定距離は、上記第２領域７６を規定する所定距離よりも小さい値である。第３領域７８の範囲を規定する所定距離は、たとえば円の半径データとして予め記憶されている。一例として、第３領域７８の直径は２２ドット程度に設定されてよい。また、この第３領域７８は、ユーザがボール７０の発射方向を決める前に迷うことを許容するための遊び領域でもあり、この第３領域７８内にある限りはスライド入力があちこち移動されても、ボール７０の移動速度や移動方向は決められないし発射もされない。第３領域７８がボール７０を触れつつ発射を迷うことが可能な遊び領域であることを表現できればよいので、第３領域７８のサイズは、ボール７０と同程度かやや大きい値に設定される。図４では、第３領域７８は、ボール７０への入力開始を判定するための第１領域７４よりも小さいサイズを有するが、第３領域７８の大きさは、第１領域７４と同程度でもよいし、第１領域７４より大きくてもよいし、あるいは、ボール７０と同程度でもよい。
【００８７】
また、図４からわかるように、この実施例では、第２領域７６は、ボール７０をその内部に包含しボール７０の全周囲を包囲することが可能なサイズに設定されている。したがって、ボール７０から見て全方向に終点を決定することが可能なように第２領域７６が設けられるので、ボール７０の移動方向をスライド入力の移動方向に合わせて３６０度全方向に設定することができる。
【００８８】
第１領域７４、第２領域７６および第３領域７８は、この実施例では画面上に明示されていない。この実施例では、ボール７０に触れてこれをつかみ所望の方向にスライドさせるという直感的な操作でその方向にボール７０を移動させることができるようにしている。したがって、第１領域７４、第２領域７６および第３領域７８をそれぞれ表示しなくても、各領域のサイズを適宜に設定しておくことで、ユーザの入力を正確に測定してその意図を的確に把握することが可能である。また、操作面上に設定した領域を基準として、ユーザの入力の挙動を解析し、ボール７０の移動を制御するためのパラメータ（方向、速度）の値を決定するようにしているので、ユーザは上記直感的な操作を何度か繰返せば、自らのスライド入力がボール７０の移動方向、移動速度および移動開始タイミングなどにどのように反映されるのかを理解することが可能である。このように、ユーザにとっても所望の入力を行い易い操作性が実現されている。
【００８９】
なお、場合によっては、これら第１領域７４、第２領域７６および第３領域７８のたとえば境界線を表示したり、各領域を他の場所と違う色などで表示したりしてもよい。ユーザに各領域を明示することができるので、ユーザが入力と移動制御との関係性をより早く、あるいは、より正確に把握することが可能になる。たとえば、初心者にこつをのみ込ませる場合などに有用である。
【００９０】
図５には、移動速度のための時間計測開始時点の判定における条件が示される。図４に示した入力の始点決定後に連続的に検出される座標が第３領域７８外の座標となったとき、時間計測が開始される。たとえば、そのときのフレーム番号が計測開始時点として記憶される。上述のように、第３領域７８は遊び領域でもあり、スライド入力が第３領域７８外に出なければボール７０は発射されない。また、スライド入力が第３領域７８外に出る前にスティック２４等がタッチパネル２２から離されたときには、入力のキャンセルと見なされてボール７０は移動されない。一方、スライド入力が第３領域７８外に一度でも出たときにはこの実施例ではボール７０は終点の決定後に移動されることとなる。
【００９１】
図６には、終点の判定における条件が示される。この終点決定条件は、移動方向のための終点および移動速度のための時間計測終了時点の決定条件であり、同時にボール７０の発射条件である。始点決定後に連続的に検出される座標が第２領域７６外の座標となったとき、当該座標点が入力の終点に決定される。また、時間計測が終了され、たとえば、そのときのフレーム番号が計測終了時点として記憶される。
【００９２】
また、図７には、終点の判定における他の条件が示される。スライド入力が第３領域７８外へ一度でも出た後にタッチオフされたとき、つまり、始点決定後の連続的な検出において第３領域７８外の座標が一度でも検出されてから座標の検出がなくなったとき、入力の終了と見なされる。この場合、入力の終点はタッチオフの直前に検出された座標点となる。また、移動速度のための時間計測も終了され、たとえばタッチオフが検出されたときのフレーム番号が計測終了時点として記憶される。このように、第２領域７６外まで入力を移動させなくても入力無し状態にすることによって終点を決定することができる。そして、オブジェクトの移動を開始させることができる。したがって、たとえば、方向の指示が既に意図通りに入力できているとユーザが判断したときには、第３領域７８外で入力を終了することによって終点が決定されるので、素早くボール７０の移動を開始させることができる。また、この実施例のように複数のボール７０を次々に移動させる場合には、これらを素早くかつ簡単に移動させることができる。
【００９３】
図８には、移動方向の決定方法の一例が示される。この実施例では、移動方向は、ボール７０の位置（たとえば表示領域の中心）と入力の終点の２点に基づいて決定される。具体的には、ボール７０の中心と終点とを結ぶ直線と、操作面における所定の方向（たとえば左右方向）とのなす角度θが算出されて、移動方向として決定される。また、移動速度は、時間計測の開始時点から終了時点までに経過したフレーム数、すなわち、スライド入力が第３領域７８外に最初に出てから第２領域７６外に出るまでに経過した時間に基づいて決定される。
【００９４】
図９には、メモリカード２８のＲＯＭ２８ａのメモリマップの一例が示される。ＲＯＭ２８ａはゲームプログラム記憶領域８０およびデータ記憶領域８２を含む。なお、図９にはメモリマップの一部が示されており、ＲＯＭ２８ａにはその他の必要なプログラムおよびデータが予め記憶されている。
【００９５】
記憶領域８４には表示プログラムが記憶される。このプログラムによって、画像データ等を使用して、ボール７０および標的７２等が登場する画面を表示するための画像データが生成され、当該画面がＬＣＤ１４に表示される。
【００９６】
記憶領域８６には入力座標検出プログラムが記憶される。このプログラムによって、タッチパネル２２から取得された入力データから、タッチパネル２２での入力の有無や、その操作面でスティック２４等によって指示された位置の座標が検出される。タッチパネル２２からの入力データは一定時間（たとえば１フレーム（１／６０秒））ごとに検出される。
【００９７】
記憶領域８８には、始点判定プログラムが記憶される。このプログラムによって、ボール７０に対する入力の始点の決定条件が満たされたか否かが判定される。この始点決定条件は、この実施例では、図４で示したように、ボール７０への入力が開始されていない状態での検出座標が第１領域７４内に入ったこと、または、タッチパネル２２への入力無し状態での検出座標が第１領域７４内の座標であったことである。また、このプログラムによって、移動速度のための時間計測開始時点の決定条件が満たされたか否かが判定される。この計測開始時点決定条件は、この実施例では、図５で示したように、始点決定後の連続的に検出される座標が初めて第３領域７８外の座標になったことである。
【００９８】
記憶領域９０には、終点判定プログラムが記憶される。このプログラムによって、ボール７０に対する入力の終点の決定条件が満たされたか否かが判定される。この入力の終点は、移動方向のための終点であり、移動速度のための時間計測終了時点でもある。この終点決定条件は、図６で示したように、始点決定後の連続的に検出される座標が第２領域７６外の座標になったこと、または、図７で示したように、第３領域７８外の座標が検出された後に座標が検出されなくなったこと（入力無し状態に変化した）ことである。
【００９９】
記憶領域９２には、移動方向決定プログラムが記憶される。このプログラムによって、ボール７０の移動方向が、この実施例ではボール７０の位置（中心座標）と終点とに基づいて決定される。具体的には、図８で示したように、ボール７０の中心と終点とを結ぶ直線と、所定の方向（たとえば操作面の左右方向）とのなす角度θが移動方向として決定されてよい。
【０１００】
記憶領域９４には、移動速度決定プログラムが記憶される。このプログラムによって、ボール７０の移動速度が、計測開始時点から計測終了時点までの経過時間に基づいて決定される。この実施例では、経過時間は、第３領域７８を出てから第２領域７６を出るまでに経過したフレーム数、または、第３領域７８を出てからタッチオフが検出されるまでに経過したフレーム数で算出される。たとえば、代表的な経過時間と移動速度とを対応付けたテーブルデータを準備しておきて、当該テーブルデータを参照して経過時間に対応する移動速度を選択または算出するようにしてもよい。なお、経過時間を複数の時間区分に分割し、その区分ごとに移動速度を対応付けるようにしてもよい。あるいは、移動速度は経過時間に基づいて所定の関係式に従って算出されてもよい。なお、他の実施例では、移動速度は入力を反映せずに所定値に設定されてもよい。
【０１０１】
記憶領域９８には、移動制御プログラムが記憶される。このプログラムによって、ボール７０の移動が、決定した移動方向および移動速度に基づいて制御される。ボール７０の移動は、終点判定プログラムによって終点決定条件が満足されたと判定されたときに、つまり、移動方向および移動速度が決定されたときに開始される。
【０１０２】
記憶領域１００には画像データが記憶される。たとえば、ボール７０、標的７２などのオブジェクトの画像データや、背景の画像データ等が記憶されている。
【０１０３】
記憶領域１０２には、第１領域７４を規定するためのデータが記憶される。この第１領域データは第１領域７４の位置、範囲、サイズなどに関するデータを含む。この実施例のように円形の第１領域７４である場合には、たとえばその中心座標データと半径データ（もしくは直径データ）とが記憶される。
【０１０４】
記憶領域１０４には第２領域７６を規定するためのデータが記憶される。この第２領域データは第２領域７６の範囲、サイズなどに関するデータを含む。第２領域７６は、この実施例では、始点の決定後に、当該始点を基準として設けられる円内の範囲である。その円形の第２領域７６の中心座標は、始点の座標で与えられる。第２領域データとしては、円形の第２領域７６のたとえば半径データが予め記憶される。
【０１０５】
記憶領域１０６には、第３領域７８を規定するためのデータが記憶される。この第３領域７８も、第２領域７６と同様に、この実施例では、始点の決定後に、当該始点を基準として設けられる円内の範囲であり、円形の第３領域７８の中心座標は始点の座標で与えられる。第３領域データは、第３領域７８の範囲、サイズなどに関するデータを含み、この第３領域データとしてたとえば半径データが記憶される。
【０１０６】
なお、検出座標が、第１領域７４、第２領域７６または第３領域７８の範囲の内か外かの判定は、これら第１領域データ、第２領域データおよび第３領域データならびに始点座標データ等に基づく判定式に従って行われてよい。あるいは、第１領域７４は、予め配置が決まるので、第１領域７４内の全座標を示す参照用のデータを準備しておいてもよい。
【０１０７】
図１０には、ＲＡＭ４８のメモリマップの一例が示される。なお、この図１０はＲＡＭ４８のメモリマップの一部を示しており、ＲＡＭ４８にはゲームの進行に必要な各種データが記憶される。
【０１０８】
入力座標記憶領域１１０には、入力座標検出プログラムの実行によって現フレームで検出された座標データが記憶される。入力履歴記憶領域１１２には、入力履歴として、現フレームで検出された座標を示す今回座標と前フレームで検出された座標を示す前回座標とが記憶される。タッチパネル２２への入力が行われておらず座標データが検出されてない場合には、座標データの代わりに入力無しを示すデータが記憶される。この入力履歴に基づいて、タッチパネル２２へのタッチが開始されたことを検出できるし、また、タッチパネル２２へのタッチが離されたことを検出できる。
【０１０９】
始点記憶領域１１４には、始点判定プログラムの実行によって、始点決定条件が満足されたと判定されたときに検出された座標データが記憶される。この実施例では、始点は第２領域７６および第３領域７８の中心となる。
【０１１０】
開始フレーム番号記憶領域１１６には、始点判定プログラムの実行によって、移動速度のための時間計測開始時点の条件が満足されたと判定されたときのフレーム番号が記憶される。この記憶領域１１６には、初期値としてたとえば０が記憶され、また、入力キャンセルが検出されたときにも０が記憶される。
【０１１１】
終点記憶領域１１８には、終点判定プログラムの実行によって決定された終点の座標データが記憶される。具体的には、図６に示した条件の場合には、当該条件が満足されたと判定されたときに検出された座標が記憶され、図７に示した条件の場合には、当該条件が満足されたと判定されたときの直前のフレームで検出された座標が記憶される。この実施例では、この終点座標を用いて、ボール７０の移動方向が決定されることとなる。
【０１１２】
終了フレーム番号記憶領域１２０には、終点判定プログラムの実行によって、移動速度のための時間計測終了時点の条件が満足されたと判定されたとき、つまり、終点が決定されたときのフレーム番号が記憶される。
【０１１３】
移動方向記憶領域１２２には、移動方向決定プログラムの実行によって決定された移動方向を示すデータが記憶される。移動速度記憶領域１２４には、移動速度決定プログラムの実行によって決定された移動速度を示すデータが記憶される。
【０１１４】
ボール制御データ記憶領域１２６には、複数のボール７０の制御データが記憶され得る。なお、この実施例では、図３に示したように、１つのボール７０が画面上の所定位置に発生されて、上述のようなユーザのスライド入力に応じて移動される。ボール７０が移動されると、すぐに別のボール７０が同じ所定位置に発生され、画面上に複数のボール７０が同時に表示されることになる。この新たなボール７０も、同様に、ユーザのスライド入力に応じて移動されることになる。したがって、ユーザは、スライド入力を連続的に行うことによって、複数のボール７０を次々に発生させて移動させることができる。また、他の実施例では、画面上の複数の所定位置に複数のボール７０をそれぞれ発生させるようにしてもよい。
【０１１５】
各ボール７０の制御データは、当該ボール７０の表示に使用する画像データの識別番号を指定するための画像指定データ、および当該ボール７０の画面上の表示座標または仮想ゲーム空間中の座標を示す位置データ等を含む。位置データは、初期値としてボール７０の発生する所定位置の座標が記憶される。この実施例では、初期位置は第１領域７４の中心座標である。その後、位置データは、移動制御プログラムの実行によって移動方向および移動速度に基づいて算出される移動後の位置の座標に更新される。ボール７０は、位置データの示す座標に画像指定データの示す画像データに基づいて表示される。
【０１１６】
標的制御データ記憶領域１２８には、複数の標的７２の制御データが記憶され得る。画面上には、図３に示したように、複数の標的７２が所定位置に発生されてよい。各標的７２の制御データは、上述のボール７０と同様に、画像指定データおよび位置データ等を含む。
【０１１７】
入力開始フラグ記憶領域１３０には、ユーザによるボール７０に対する入力が行われているか否かを示すフラグが記憶される。この記憶領域１３０には初期値としてたとえば０が記憶されている。始点判定プログラムの実行によってボール７０に対する入力が開始されたと判定されるとき、この記憶領域１３０にたとえば１が記憶されることによって、入力開始フラグはオンにされる。また、終点判定プログラムの実行によってボール７０に対する入力が終了したと判定されるとき、この記憶領域１３０にたとえば０が記憶されて、入力開始フラグがオフにされる。
【０１１８】
発射フラグ記憶領域１３２は、ボール７０を発射するか否かを示すフラグが記憶される。この記憶領域１３２には初期値としてたとえば０が記憶されている。ボール７０の発射条件が満足されたとき、すなわち、終点判定プログラムの実行によって終点決定条件が満足されたと判定されたときに、この記憶領域１３２にたとえば１が記憶されて、発射フラグがオンにされる。この発射フラグがオンであるときには、当該ボール７０の移動処理が開始されて、発射フラグがオフにされる。
【０１１９】
図１１から図１４にはゲーム装置１０の動作の一例が示される。ゲーム処理を開始すると、ＣＰＵコア４２は、まずステップＳ１で、表示プログラムに従って、ボール７０と標的７２を含むゲーム画面を生成してＬＣＤ１４に表示する。具体的には、ＣＰＵコア４２は、ＧＰＵ５０または５２を用いて、画像データ記憶領域１００の画像データに基づいて、ボール７０および標的７２を含むゲーム画面を表示するためのゲーム画像データをＶＲＡＭ５６または５８の描画バッファに生成し、ＬＣＤコントローラ６０を用いてＬＣＤ１４にそのゲーム画面を表示する。これによって、図３に示したように、ボール７０および標的７２がそれぞれ初期位置に配置されたゲーム画面が、タッチパネル２２の装着されたＬＣＤ１４に表示される。ユーザは、タッチパネル２２上でスティック２４等を使ってボール７０の表示領域およびその周辺領域に対応する場所、つまり、第１領域７４上でスライド入力することによってボール７０を移動させることができる。
【０１２０】
ＣＰＵコア４２は、続くステップＳ３からステップＳ６９（図１４）までの処理を一定時間（たとえば１フレーム）ごとに繰り返し実行する。ＣＰＵコア４２は、フレーム番号をカウントしつつそのフレームの処理を実行する。
【０１２１】
ステップＳ３では、ＣＰＵコア４２は、入力座標検出プログラムに従って、Ｉ／Ｆ回路５４を介してタッチパネル２２からの入力データをＲＡＭ４８に取得する。続いて、ステップＳ５で、ＣＰＵコア４２は、入力があったか否かを入力データに基づいて判断する。
【０１２２】
ステップＳ５で“ＹＥＳ”であれば、ＣＰＵコア４２は、ステップＳ７で、入力データから入力座標を示す座標データを検出して入力座標記憶領域１１０に記憶する。
【０１２３】
続くステップＳ９で、ＣＰＵコア４２は、入力履歴を記憶する。たとえば、ＣＰＵコア４２は、入力履歴記憶領域１１２における今回座標の記憶領域のデータを前回座標の記憶領域に書き込み、今回座標の記憶領域に入力座標記憶領域１１０のデータを書き込む。なお、入力履歴記憶領域１１２には初期設定で初期値として入力無しを示すデータが今回座標および前回座標ともに記憶されている。
【０１２４】
そして、ＣＰＵコア４２は、ステップＳ１１で、入力開始フラグがオフであるか否かを判定する。ここでは、ボール７０に対する入力がまだ開始されていないことを確認している。ステップＳ１１で“ＹＥＳ”であれば、ＣＰＵコア４２は、ステップＳ１３で、始点判定プログラムに従って、入力座標が第１領域７４内の座標であるか否かを、入力座標記憶領域１１０のデータおよび第１領域データ記憶領域１０２のデータ等に基づいて判定する。このようにして、ボール７０に対する入力が開始されていない状態で、スライド入力が第１領域７４内に進入したか否かを判定することができ、また、第１領域７４内でタッチが開始されたか否かを判定することができる。
【０１２５】
ステップＳ１３で“ＹＥＳ”であれば、つまり、ボール７０に対する入力の始点条件が満足されたと判定される場合には、ＣＰＵコア４２は、ステップＳ１５で、現フレームのステップＳ７で検出された入力座標を始点として決定し、当該入力座標データを始点記憶領域１１４に記憶する。第２領域７６および第３領域７８は、この始点を基準として設定される。そして、ステップＳ１７で、ＣＰＵコア４２は、入力開始フラグ記憶領域１３０にたとえば１を書き込んで、入力開始フラグをオンにする。ステップＳ１７を終了すると、処理は図１４のステップＳ５１へ進む。
【０１２６】
なお、ステップＳ１３で“ＮＯ”であれば、つまり、ボール７０に対する入力が開始されていない段階で第１領域７４外がタッチされている場合には、処理はそのまま図１４のステップＳ５１へ進む。
【０１２７】
一方、ステップＳ１１で“ＮＯ”であれば、つまり、ボール７０に対する入力が行われている最中である場合には、ＣＰＵコア４２は、ステップＳ１９で、開始フレーム番号が０であるか否かを判断する。ここでは、始点決定後に時間計測開始時点の条件が満足されていないこと、つまり、始点決定後に連続的に検出される座標が一度も第３領域７８外の座標になっていないことを確認している。
【０１２８】
ステップＳ１９で“ＹＥＳ”であれば、ＣＰＵコア４２は、ステップＳ２１で、始点判定プログラムに従って、入力座標が第３領域７８外の座標であるか否かを、始点記憶領域１１４のデータおよび第３領域データ記憶領域１０６のデータ等に基づいて判定する。
【０１２９】
ステップＳ２１で“ＹＥＳ”であれば、つまり、時間計測開始時点の条件が満足されたと判定される場合には、ＣＰＵコア４２は、ステップＳ２３で、現フレーム番号を開始フレーム番号記憶領域１１６に記憶する。これによって、移動速度のための時間計測が開始されたこととなる。ステップＳ２３を終了すると処理は図１４のステップＳ５１へ進む。
【０１３０】
なお、ステップＳ２１で“ＮＯ”であれば、つまり、始点決定後のスライド入力が第３領域７８外に出ていない場合には、処理はそのまま図１４のステップＳ５１へ進む。
【０１３１】
一方、ステップＳ１９で“ＮＯ”であれば、つまり、始点決定後のスライド入力が第３領域７８外に出て、既に時間計測が開始されている場合には、入力終点の条件を判定すべく、処理は図１２のステップＳ２７へ進む。
【０１３２】
また、ステップＳ５で“ＮＯ”であれば、つまり、タッチパネル２２への入力が行われていない場合には、ＣＰＵコア４２は、ステップＳ２５で、入力履歴を記憶する。つまり、ＣＰＵコア４２は、入力履歴記憶領域１１２の今回座標のための記憶領域に記憶されているデータを、前回座標のための記憶領域に記憶し、入力無しを示すデータを今回座標のための記憶領域に記憶する。ステップＳ２７を終了すると、処理は図１３のステップＳ３７へ進む。
【０１３３】
時間計測が開始されている場合、つまり、ステップＳ１９で“ＮＯ”の場合、ＣＰＵコア４２は、図１２のステップＳ２７で、終点判定プログラムに従って、入力座標が第２領域７６外の座標であるか否かを、始点データおよび第２領域データ記憶領域１０４のデータ等に基づいて判定する。つまり、入力の終点決定条件、時間計測終了時点決定条件、および発射条件の判定が行われる。
【０１３４】
ステップＳ２７で“ＹＥＳ”であれば、つまり、始点決定後のスライド入力が第２領域７６を出た場合には、ＣＰＵコア４２は、ステップＳ２９で、現フレームのステップＳ７で検出された入力座標を終点として決定し、当該入力座標データを終点記憶領域１１８に記憶する。また、ステップＳ３１で、ＣＰＵコア４２は、現フレーム番号を終了フレーム番号記憶領域１２０に記憶する。これによって、移動速度のための時間計測を終了する。
【０１３５】
また、ボール７０に対する入力終点条件が満足されたので、ＣＰＵコア４２は、ステップＳ３３で、入力開始フラグ記憶領域１３０にたとえば０を書き込んで、入力開始フラグをオフにする。また、同時にボール７０の発射条件も満足されたので、ステップＳ３５で、ＣＰＵコア４２は、発射フラグ記憶領域１３２にたとえば１を書き込んで、発射フラグをオンにする。これによって、ボール７０の移動が開始されることとなる。ステップＳ３５を終了すると処理は図１４のステップＳ５１へ進む。
【０１３６】
なお、ステップＳ２７で“ＮＯ”であれば、つまり、始点決定後のスライド入力が第２領域７６外に未だ出ていない場合には、処理はそのまま図１４のステップＳ５１へ進む。
【０１３７】
タッチパネル２２への入力が検出されなかった場合、つまり、ステップＳ５で“ＮＯ”の場合、ＣＰＵコア４２は上述のようにステップＳ２５で入力履歴更新を行って、図１３のステップＳ３７およびＳ３９で、終点判定プログラムに従って終点判定を行う。すなわち、ステップＳ３７で、ＣＰＵコア４２は、入力開始フラグがオンであるか否かを判断し、“ＹＥＳ”であれば、ステップＳ３９で、開始フレーム番号は０であるか否かを判断する。これらのステップでは、ボール７０に対する入力が開始された後に入力オフがあったのか否かを判定し、また、時間計測が開始された後に入力オフがあったのか否かを判定している。
【０１３８】
ステップＳ３９で“ＮＯ”であれば、つまり、始点決定後のスライド入力が一度でも第３領域７８外に出た後に入力オフになった場合には、終点条件が満足されたので、ＣＰＵコア４２は、ステップＳ４１で、タッチオフ直前に検出された座標点を終点として決定し、入力履歴記憶領域１１２の前回座標データを終点記憶領域１１８に記憶する。また、時間計測終了時点の決定条件が満足されたので、ステップＳ４３で、ＣＰＵコア４２は、現フレーム番号を終了フレーム番号記憶領域１２０に記憶する。これによって、移動速度のための時間計測が終了する。さらに、ボール７０に対する入力が終了したので、ステップＳ４５で、ＣＰＵコア４２は、入力開始フラグをオフにする。また、発射条件が満足されたので、ステップＳ４７で、ＣＰＵコア４２は、発射フラグをオンにする。ステップＳ４７を終了すると、処理は図１４のステップＳ５１へ進む。
【０１３９】
一方、ステップＳ３９で“ＹＥＳ”であれば、つまり、始点決定後に連続的に検出された座標が第３領域７８外へ出ることなくタッチオフがあった場合には、このスライド入力のキャンセルであると見なして、ＣＰＵコア４２は、ステップＳ４９で、入力開始フラグをオフにする。ステップＳ４９を終了すると、処理は図１４のステップＳ５１へ進む。
【０１４０】
なお、ステップＳ３７で“ＮＯ”であれば、つまり、ボール７０に対する入力が開始されていない場合には、処理はそのまま図１４のステップＳ５１へ進む。
【０１４１】
図１４のステップＳ５１では、ＣＰＵコア４２は、発射フラグがオンであるか否かを判断する。ステップＳ５１で“ＹＥＳ”であれば、つまり、発射条件が満足された場合には、ＣＰＵコア４２は、ステップＳ５３で、移動方向決定プログラムに従って、ボール７０の中心と終点とに基づいて、ボール７０の移動方向を決定する。ボール７０の中心座標は、ボール制御データ記憶領域１２６の当該ボール７０に対応する位置データとして記憶されており、始点座標は始点記憶領域１１４に記憶されている。たとえば、ＣＰＵコア４２は、図８に示したように、ボール７０の中心と終点とを結ぶ直線と、タッチパネル２２の操作面の所定方向とのなす角度θを算出し、当該角度の示す方向を移動方向として決定する。
【０１４２】
また、ステップＳ５５で、ＣＰＵコア４２は、移動速度プログラムに従って、終了フレーム番号記憶領域１２０の値と開始フレーム番号記憶領域１１６の値との差を算出して、当該差、すなわち、スライド入力が第３領域７８外に初めて出たときから第２領域７６外に出るまでに経過した時間に基づいて、移動速度を決定する。
【０１４３】
そして、ＣＰＵコア４２は、ステップＳ５７で、当該ボール７０のための移動処理の実行を開始する。この移動制御プログラムに従った移動処理の実行によって、当該ボール７０が、決定された方向に決定された速度で移動されることとなる。この移動処理はボール７０ごとに実行されるものであり、その動作の一例は後述する図１５に詳細に示される。なお、ＣＰＵコア４２は、このステップＳ５７で移動処理の実行を開始すると、図１５の移動処理と図１１から図１４の処理とを並列的に実行する。
【０１４４】
続くステップＳ５９からＳ６５では、新たなボール７０のための処理が行われる。すなわち、ＣＰＵコア４２は、ステップＳ５９で、開始フレーム番号記憶領域１１６および終了フレーム番号記憶領域１２０のデータを消去する。さらに、ステップＳ６１で、ＣＰＵコア４２は、発射フラグ記憶領域１２６にたとえば０を記憶して、発射フラグをオフにする。
【０１４５】
続いて、ステップＳ６３で、ＣＰＵコア４２は、新たなボール７０のためのデータをボール制御データ記憶領域１２６に生成する。画像指定データには、新たなボール７０のための所定の画像を示す識別番号が設定され、位置データには、所定位置すなわちこの実施例では第１領域７４の中心座標を示すデータが設定される。
【０１４６】
そして、ステップＳ６５で、ＣＰＵコア４２は、当該新たなボール７０を第１領域７４の中心に表示する。これによって、既存のボール７０が移動した後の所定位置（第１領域７４の中心）に新たなボール７０が発生する画面が表示されることとなる。
【０１４７】
なお、この実施例では、ボール７０の移動が開始されるとすぐにこの新たなボール７０を発生させるようにしているが、他の実施例では、ボール７０の移動開始から一定時間経過後に、新たなボール７０を発生させるようにしてもよい。
【０１４８】
ステップＳ６５を終了したとき、または、ステップＳ５１で“ＮＯ”である場合、つまり、発射条件が満足されていない場合には、ＣＰＵコア４２は、ステップＳ６７で、標的７２を制御する。たとえば、ＣＰＵコア４２は、必要に応じて標的制御データ記憶領域１２８の各標的７２の制御データのうち位置データを更新し、当該更新された位置に当該標的７２を表示する。
【０１４９】
続いて、ステップＳ６９で、ＣＰＵコア４２は、ゲーム終了であるか否かを判定する。ステップＳ６９で“ＮＯ”であれば、ＣＰＵコア４２は図１１のステップＳ３に戻って、次のフレームの処理を実行する。一方、ステップＳ６９で“ＹＥＳ”であれば、つまり、ゲームクリア条件またはゲームオーバ条件が満足されたときには、このゲーム処理を終了する。
【０１５０】
図１５には、図１４のステップＳ５７で開始されるボール７０ごとの移動処理の動作の一例が示される。移動処理を開始すると、ＣＰＵコア４２は、まず、ステップＳ８１で、移動方向、移動速度および現在の位置に基づいて、当該ボール７０の移動先の位置の座標を算出する。そして、ＣＰＵコア４２は、ステップＳ８３で、算出した移動先の位置が標的７２の当たり領域内であるか否かを判定する。標的７２の当たり領域は、たとえば標的７２の表示領域およびその近傍に設定され、たとえば、標的制御データ記憶領域１２８に各標的７２ごとに当たり領域を示すデータが記憶されていてよい。
【０１５１】
ステップＳ８３で“ＮＯ”であれば、ＣＰＵコア４２は、ステップＳ８５で、移動先の位置が表示画面外の座標になったか否かを判定する。ステップＳ８５で“ＮＯ”であれば、つまり、ボール７０が標的７２に当たらずにまだ画面内に存在する場合には、ＣＰＵコア４２は、ステップＳ８７で、当該ボール７０の制御データのうち位置データを、算出した移動先の座標を示すデータに更新し、当該ボール７０を移動先の位置に表示する。これによって、当該ボール７０が決定された移動方向および移動速度で移動する画面が表示されることとなる。ステップＳ８７を終了すると、ＣＰＵコア４２は、ステップＳ８１に戻って、次のフレームの処理を実行する。
【０１５２】
一方、ステップＳ８３で“ＹＥＳ”であれば、つまり、ボール７０が標的７２に衝突した場合には、ＣＰＵコア４２は、ステップＳ８９で、当たった標的７２の制御データを標的制御データ記憶領域１２８から消去するとともに、ＶＲＡＭ５６または５８における当該標的７２の画像データを消去する。これによって、画面上から当該標的７２が消去される。
【０１５３】
ステップＳ８９を終了すると、処理はステップＳ９１へ進む。また、ステップＳ８５で“ＹＥＳ”であれば、つまり、ボール７０が標的７２に当たらずに画面に表示される範囲外に移動した場合には、処理はステップＳ９１に進む。
【０１５４】
ステップＳ９１では、ＣＰＵコア４２は、当該ボール７０の制御データをボール制御データ記憶領域１２６から消去するとともに、ＶＲＡＭ５６または５８における当該ボール７０の画像データを消去する。これによって、画面上から当該ボール７０が消去される。ステップＳ９１を終了すると、ＣＰＵコア４２はこのボール７０のための移動処理を終了する。
【０１５５】
この実施例によれば、ボール７０を含む第１領域７４内の座標の検出によって、当該ボール７０に対する入力の始点を決定し、当該始点を基準として、ボール７０に対するスライド入力の挙動を測定するための第２領域７６および第３領域７８を設けるようにした。そして、始点決定後のスライド入力が第２領域７６外へ出たときの座標を、ボール７０に対する入力の終点として検出し、この入力の終点とボール７０の位置とに基づいて、ボール７０の移動方向を決定するようにした。このように、操作面上に設けた第２領域７６に基づいて入力の終点を決定するようにしたので、ボール７０の移動を制御しようとしている入力として入力を受け付ける範囲を明確にすることができ、つまり、入力の終点が決まる位置を明確にすることができる。このため、移動方向の決定に使用される終点をユーザの意識したとおりに決めることができるので、ユーザは所望の移動方向を入力することが可能になり、したがって、ユーザの意図通りの方向にボール７０を移動させることができる。
【０１５６】
また、始点決定後のスライド入力が第３領域７８外へ初めて出たときを、時間計測開始時点として決定し、その後のスライド入力が第２領域７６外へ出たときを、時間計測終了時点として決定し、これら開始時点から終了時点までの経過時間に基づいて、移動速度を決定するようにした。このように、操作面上に設けた第２領域７６および第３領域７８に基づいて、移動速度のための入力の開始時点と終了時点とを決定するようにしたので、ボール７０の移動を制御する入力として受け付ける範囲を明確にすることができる。たとえば、ユーザは、入力方向を決めるまでは第３領域７８内で入力を迷うことができ、その後どのような速度でどの方向にスティック２４等を移動させるかを決めてからの入力を正確に測定することができる。あるいは、ユーザは第３領域７８内でタッチオフによって入力をキャンセルすることもできる。したがって、ユーザの意識したとおりに移動速度のための時間計測の開始時点と終了時点とを決めることができるので、ユーザの意図通りの速度でボール７０を移動させることが可能になる。
【０１５７】
また、ボール７０に対する入力の始点が決定されてから、当該始点を基準として、第２領域７６および第３領域７８を設けるようにした。つまり、ユーザのボール７０に対する入力の開始位置に対応する場所に、その後のスライド入力を計測するための第２領域７６および第３領域７８を設定することができる。したがって、ユーザの入力の挙動をより正確に把握することができるので、ボール７０の移動制御にユーザの意図をより的確に反映することができる。
【０１５８】
また、ボール７０への入力が開始されていない状態で第１領域７４内の座標が検出されたことに応じて始点を決定し、その後のスライド入力が第２領域７６外に出たことに応じて終点を決定し、ボール７０を移動させるようにした。したがって、ユーザは、入力の有無を切替えたりすることなく、つまり、タッチパネル２２へのタッチを継続したままで、複数のボール７０を次々と移動させることができる。このように、操作性が良いので、複数のボール７０であっても簡単に意図通りの移動を行わせることができる。
【０１５９】
なお、上述の実施例では、ボール７０に対する入力を判定するための第１領域７４は、ボール７０の表示領域およびその近傍の領域を含み、ボール７０よりもやや大きいサイズに形成された。しかし、他の実施例では、第１領域７４はボール７０の表示領域と同一に設定されてもよい。この場合には、ボール７０を移動させるにはまさにボール７０に触れることをユーザに要求することができ、つまり、ユーザにボール７０に対する正確な入力を要求できるので、ユーザの意思がより正確に反映された入力を計測することができる。
【０１６０】
また、上述の各実施例では、移動方向は、ボール７０の位置（中心座標）と入力の終点とに基づいて決定するようにしていた。つまり、スライド入力が第２領域７６外に出たときの座標点に向かってボール７０を移動させるようにしていた。しかし、他の実施例では、移動方向は、入力の始点と終点とに基づいて決定されてもよい。この場合には、スライド入力が移動した方向、すなわち、始点から終点へ向かう方向へ、ボール７０を移動させることができる。なお、この場合において、移動方向を決定するための始点は、第１領域７４内の入力があったときの検出座標ではなく、第１領域７４内の入力があった後のスライド入力が第３領域７８外へ出たときの検出座標、すなわち、時間計測開始時点が決定されたときの検出座標であってもよい。
【０１６１】
また、上述の各実施例では、ユーザのボール７０に対するスライド入力のうち、第２領域７６等の設定や移動方向の算出のために、始点と終点の座標だけを記憶するようにしていた。しかし、他の実施例では、ボール７０に対するスライド入力の軌跡を記憶するようにして、当該軌跡上の座標に基づいて移動方向を決定するようにしてもよい。
【０１６２】
また、上述の各実施例では、入力の始点の決定に応じて、当該始点を基準として第２領域７６および第３領域７８を設定するようにしていた。しかし、他の実施例では、第２領域７６および／または第３領域７８は、第１領域７４と同様に、所定の位置を基準として予め設けられるようにしてもよい。その場合には、第２領域７６および／または第３領域７８の基準座標（円形の場合には中心座標）は、第１領域７４と同様に、ボール７０の位置座標（円形の場合には中心座標）に設定されてよい。
【０１６３】
また、上述の各実施例では、ボール７０に対する入力の判定のための第１領域７４と、時間計測開始時点の判定領域である第３領域７８とを別個に設けるようにしていた。しかし、他の実施例では、第３領域７８は第１領域７４と同一にされてもよい。つまり、第１領域７４が、ボール７０に対する入力の判定領域であるとともに時間計測開始時点の判定領域であってよい。
【０１６４】
たとえば、図１６から図２５を参照して説明される次の実施例では、ボール７０に対する入力を判定するための第１領域７４が、時間計測開始時点を判定するための領域を兼ねるようにされる。また、入力の終点を判定するための第２領域７６が、ボール７０の中心を基準として予め設けられる。また、この実施例では、ボール７０の移動方向を決定するために、スライド入力の軌跡が取得される。
【０１６５】
具体的には、図１６を参照して、第１領域７４および第２領域７６が操作面上に予め設けられている。第２領域７６の中心座標は、第１領域７４の中心座標と同じに設定され、第２領域７６は、第１領域７４を包含するように設けられる。
【０１６６】
この実施例では、後述するように、第１領域７４への入力が開始されてスライド入力が第２領域７６の範囲外に出たときまでに検出された座標に基づいて移動方向が決定される。したがって、第２領域７６は、ユーザのボール７０に対するスライド入力の意図を的確に把握できるように、適切な大きさに設定される。第２領域７６の半径データは、たとえば上述の実施例と同程度の値に設定されてよい。
【０１６７】
図１６に示すように、第１領域７４に対する入力が検出されたとき、当該ボール７０の移動のための入力が開始されたものと見なして、入力軌跡の取得を開始する。つまり、スティック２４等による入力座標が第１領域７４内の座標であることが検出されたとき、当該座標点が始点に決定されて、その後のスライド入力による連続した座標が入力軌跡として記憶される。なお、図１６では、既に行われている連続的な入力が第１領域７４に進入したときに、入力の始点が決定される場合が示されているが、始点の決定条件は、第１領域７４内で入力が開始されたことであってもよい。その後、当該スライド入力が第２領域７６外に出たときに軌跡の取得が終了され、そのときの検出座標が終点とされることとなる。ボール７０の移動方向は、入力軌跡の始点から終点までの複数の座標点のうちの少なくとも２点、たとえば始点と終点に基づいて決定される。
【０１６８】
その後、図１７に示すように、軌跡の始点決定後に連続的に検出される座標が第１領域７４外の座標となったとき、移動速度のための時間計測開始時点が決定される。なお、この実施例では、第１領域７４が、入力を迷うことの可能な遊び領域である。たとえば、第１領域７４を出る前にタッチオフがあったときは、入力のキャンセルと見なされる。
【０１６９】
そして、図１８に示すように、軌跡の始点決定後に連続的に検出される座標が第２領域７６外の座標となったとき、当該座標点が終点に決定されて、入力軌跡の取得が終了される。同時に、移動速度のための時間計測終了時点が決定される。
【０１７０】
また、図示は省略されるが、軌跡の始点決定後のスライド入力が第２領域７６でタッチオフされたとき、つまり、始点決定後の連続的な座標が第２領域７６で途絶えたことが検出されたときにも、移動方向のための入力軌跡の取得が終了される。この場合、入力軌跡の終点はタッチオフ直前に検出された座標点となる。また、移動速度のための時間計測が終了され、たとえばタッチオフが検出されたときのフレーム番号が計測終了時点として記憶される。第１領域７４外で入力を終了することによって終点が決定されるので、素早くボール７０の移動を開始させることができる。
【０１７１】
なお、スライド入力が、第１領域７４を出て第２領域７６外に出る前に、再び第１領域７４内に進入したときには、この実施例では、入力のキャンセルと見なして、そのときの検出座標が始点に決定され、入力軌跡の取得が改めて開始される。
【０１７２】
また、スライド入力が第２領域７６を出たときは、ボール７０の移動開始タイミングでもある。移動方向および移動速度が決定され、当該移動方向および移動速度に従ったボール７０の移動が開始される。図１９に示すように、移動方向は、入力軌跡に基づいて決定される。たとえば、移動方向は、入力軌跡のうちの少なくとも２点の座標に基づいて決定されてよい。具体的には、入力軌跡の始点と終点を結ぶ直線と、操作面の所定方向（たとえば左右方向）とのなす角度θが、移動方向として決定されてよい。あるいは、移動方向は、入力軌跡のうちの終点とその直前の座標点とを結ぶ直線と、所定方向とのなす角度であってもよいし、入力軌跡のうち隣接座標点同士を結んだ各直線と所定の方向とのなす角度の平均値であってもよい。あるいは、スライド入力が第１領域７４外に出たときの検出座標、すなわち、時間計測開始時点が決定されたときの検出座標と終点とに基づいて、移動方向が決定されてもよく、この場合には移動方向と移動速度の決定が、同一の検出時点に基づいて行われる。
【０１７３】
図２０には、ＲＯＭ２８ａのメモリマップの一部が示される。記憶領域１４０には、軌跡取得プログラムが記憶される。このプログラムによって、ユーザによるボール７０に対するスライド入力の軌跡が取得される。具体的には、始点判定プログラムに従って入力の始点の決定条件が満足されたと判定されたときの座標が軌跡の始点として記憶される。さらに、始点に続けて連続的に検出される複数の座標が記憶される。終点判定プログラムに従って入力の終点の決定条件が満たされたと判定されるまで、入力軌跡は取得される。
【０１７４】
また、第２領域７６が予め設けられるので、第２領域データ記憶領域１４０には、さらに第２領域７６の基準点を示すデータが予め記憶される。円形の第２領域７６の場合には、中心座標データが半径データとともに記憶されている。
【０１７５】
また、図２１には、ＲＡＭ４８のメモリマップの一部が示される。入力軌跡記憶領域１４２には、軌跡取得プログラムの実行によって取得されたスライド入力による軌跡を示す複数の座標点の座標データが記憶される。始点判定プログラムの実行によって始点条件が満足されたと判定されたときの入力座標（すなわち始点）から、終点判定プログラムの実行によって終点条件が満足されたと判定されたときの入力座標（すなわち終点）までの複数の座標が記憶される。
【０１７６】
図２２から図２５にはこの実施例におけるゲーム装置１０の動作の一例が示される。ゲーム処理を開始すると、ＣＰＵコア４２は、まずステップＳ１０１で、ボール７０と標的７２を含むゲーム画面を生成してＬＣＤ１４に表示する。上述の実施例と同様に、ＣＰＵコア４２は、続くステップＳ１０３からＳ１８５（図２５）までの処理を、一定時間（たとえば１フレーム）ごとに繰り返し実行する。
【０１７７】
ステップＳ１０３では、ＣＰＵコア４２は、Ｉ／Ｆ回路５４を介してタッチパネル２２からの入力データをＲＡＭ４８に取得する。続いて、ステップＳ１０５で、ＣＰＵコア４２は、入力があったか否かを入力データに基づいて判断する。
【０１７８】
ステップＳ１０５で“ＹＥＳ”であれば、ＣＰＵコア４２は、ステップＳ１０７で、入力データから入力座標を示す座標データを検出して入力座標記憶領域１１０に記憶する。続くステップＳ１０９で、ＣＰＵコア４２は、入力履歴を記憶する。たとえば、ＣＰＵコア４２は、入力履歴記憶領域１１２における今回座標の記憶領域のデータを前回座標の記憶領域に書き込み、今回座標の記憶領域に入力座標記憶領域１１０のデータを書き込む。
【０１７９】
そして、続くステップＳ１１１からＳ１１５で、始点判定プログラムに従って、始点決定条件が満足されたか否かの判定を行う。すなわち、まず、ステップＳ１１１で、ＣＰＵコア４２は、入力座標が第１領域７４内の座標であるか否かを、入力座標記憶領域１１０のデータおよび第１領域データ記憶領域１０２のデータ等に基づいて判定する。ステップＳ１１１で“ＹＥＳ”であれば、ＣＰＵコア４２は、ステップＳ１１３で、入力がオフからオンになったか否かを入力履歴データに基づいて判断する。たとえば、ＣＰＵコア４２は、入力履歴記憶領域１１２のデータを参照して、前回座標に入力無しを示すデータが記憶され、かつ、今回座標に座標データが記憶されているか否かを判断する。ステップＳ１１３で“ＹＥＳ”であれば、つまり、第１領域７４内で入力が開始された場合には、始点決定条件が満足されたので、処理はステップＳ１２１に進む。
【０１８０】
一方、ステップＳ１１３で“ＮＯ”であれば、つまり、連続タッチ中である場合には、ＣＰＵコア４２は、ステップＳ１１５で、前回座標が第１領域７４外の座標であるか否かを、入力履歴記憶領域１１２の前回座標を示すデータおよび第１領域データ等に基づいて判断する。ステップＳ１１５で“ＹＥＳ”であれば、つまり、スライド入力が第１領域７４外から第１領域７４内に進入した場合には、図１６に示した始点決定条件が満足されたので、入力軌跡の取得を開始すべく、ＣＰＵコア４２は、ステップＳ１１７で、入力軌跡記憶領域１４２のデータを消去し、ステップＳ１１９で開始フレーム番号記憶領域１１６のデータを消去して初期値を設定する。ここでは、たとえば、第２領域７６でスライド入力が行われていたが第２領域７６外に出る前にスライド入力が再び第１領域７４に進入した場合に、入力軌跡の取得および時間計測をやり直す必要があるので、各記憶領域をクリアしている。
【０１８１】
続いて、ステップＳ１２１で、ＣＰＵコア４２は、入力座標記憶領域１１０の入力座標を入力軌跡記憶領域１４２に記憶する。これによって、入力軌跡の始点が記憶される。そして、ステップＳ１２３で、ＣＰＵコア４２は、入力開始フラグをオンにする。ステップＳ１２３を終了すると、処理は図２５のステップＳ１６５へ進む。
【０１８２】
一方、ステップＳ１１５で“ＮＯ”であれば、つまり、第１領域７４内で始点決定後の連続的な入力が行われている場合には、ＣＰＵコア４２は、ステップＳ１２５で、入力座標記憶領域１１０の入力座標を入力軌跡記憶領域１４２に追加して、入力軌跡として記憶する。ステップＳ１２５を終了すると処理は図２５のステップＳ１６５へ進む。
【０１８３】
また、ステップＳ１１１で“ＮＯ”であれば、つまり、第１領域７４外がタッチされている場合には、処理は図２３のステップＳ１２９へ進む。
【０１８４】
また、ステップＳ１０５で“ＮＯ”であれば、つまり、タッチパネル２２で入力が行われていない場合には、ＣＰＵコア４２は、ステップＳ１２７で、入力履歴を記憶する。つまり、ＣＰＵコア４２は、入力履歴記憶領域１１２の今回座標の記憶領域に記憶されているデータを前回座標の記憶領域に記憶し、入力無しを示すデータを今回座標の記憶領域に記憶する。ステップＳ１２７を終了すると、処理は図２４のステップＳ１４９へ進む。
【０１８５】
第１領域７４外がタッチされているとき、ＣＰＵコア４２は、次の図２３のステップＳ１２９で、入力座標が第２領域７６内の座標であるか否かを、入力座標データおよび第２領域データ記憶領域１０４のデータ等に基づいて判断する。ステップＳ１２９で“ＹＥＳ”であれば、ＣＰＵコア４２は、ステップＳ１３１で、入力開始フラグはオンであるか否かを判断する。ステップＳ１３１で“ＹＥＳ”であれば、つまり、第２領域７６内で始点決定後の連続的な入力が行われている場合には、ＣＰＵコア４２は、ステップＳ１３３で、入力座標記憶領域１１０のデータを入力軌跡記憶領域１４２に追加する。
【０１８６】
続くステップＳ１３５で、移動速度のための時間計測開始時点の決定条件が満足されたか否かを判定する。すなわち、ステップＳ１３５で、ＣＰＵコア４２は、開始フレーム番号記憶領域１１６に初期値ゼロが記憶されているか否かを判定する。つまり、ここでは、始点決定後のスライド入力が初めて第２領域７６内に進入したか否かを判定している。このステップＳ１３５で“ＹＥＳ”であれば、図１７の開始時点決定条件が満足されたので、ＣＰＵコア４２は、ステップＳ１３７で、現在のフレーム番号を開始フレーム番号記憶領域１１６に記憶する。ステップＳ１３７を終了すると処理は図２５のステップＳ１６５へ進む。
【０１８７】
なお、ステップＳ１３５で“ＮＯ”の場合には、つまり、既に移動速度のための時間計測が開始されている場合には、処理はそのまま図２５のステップＳ１６５へ進む。また、ステップＳ１３１で“ＮＯ”である場合、つまり、始点決定条件が満足されずに単に第２領域７６内がタッチされているに過ぎない場合にも、処理はそのまま図２５のステップＳ１６５へ進む。
【０１８８】
一方、ステップＳ１２９で“ＮＯ”であれば、つまり、第２領域７６外がタッチされている場合には、次のステップＳ１３９で、終点判定プログラムに従って、図１８に示したような終点決定条件が満足されたか否かが判定される。すなわち、ＣＰＵコア４２は、ステップＳ１４１で、入力開始フラグがオンであるか否かを判定する。つまり、始点決定後のスライド入力が初めて第２領域７６外に出たか否かを判定している。
【０１８９】
ステップＳ１３９で“ＹＥＳ”であれば、つまり、終点条件が満足されたと判定されたときには、ＣＰＵコア４２は、ステップＳ１４１で、入力座標記憶領域１１０の入力座標を入力軌跡記憶領域１４２に追加する。この追加された座標が入力軌跡の終点となる。
【０１９０】
また、ＣＰＵコア４２は、ステップＳ１４３で、現在のフレーム番号を終了フレーム番号記憶領域１１８に記憶する。さらに、ステップＳ１４５で、ＣＰＵコア４２は、入力開始フラグをオフにする。これによって、入力軌跡の取得を終了する。さらに、ステップＳ１４７で、ＣＰＵコア４２は、ボール７０の発射条件が満足されたので、発射フラグをオンにする。ステップＳ１４７を終了すると、処理は図２５のステップＳ１６５へ進む。
【０１９１】
なお、ステップＳ１３９で“ＮＯ”であれば、つまり、第２領域７６外がボール７０に対する入力に関係なくタッチされている場合には、処理はそのまま図２５のステップＳ１６５へ進む。
【０１９２】
また、図２２のステップＳ１０５で“ＮＯ”であり、つまり、入力が行われていない場合には、ステップＳ１２７で入力履歴を更新した後、ＣＰＵコア４２は、図２４のステップＳ１４９およびＳ１５１で、タッチオフに基づく終点判定を行う。すなわち、ＣＰＵコア４２は、ステップＳ１４９で、入力がオンからオフになったか否かを、入力履歴記憶領域１１２のデータに基づいて判断する。ステップＳ１４９で“ＹＥＳ”であれば、つまり、タッチパネル２２からスティック２４等がちょうど離れたときには、ＣＰＵコア４２は、ステップＳ１５１で、開始フレーム番号記憶領域１１６がゼロであるか否かを判定する。ここでは、スライド入力が第１領域７４外に出ているか否かを判定している。
【０１９３】
ステップＳ１５１で“ＮＯ”であれば、つまり、始点決定後のスライド入力が第１領域７４外に出ている場合において入力がオフされたときには、ＣＰＵコア４２は、終点条件が満足されたので、ステップＳ１５３で、現在のフレーム番号を終了フレーム番号記憶領域１１８に記憶する。また、ステップＳ１５５で、ＣＰＵコア４２は、入力開始フラグをオンにする。なお、入力軌跡の終点は既に前回のフレームのステップＳ１３３（図２３）の処理で記憶領域１４２に記憶されている。さらに、ステップＳ１５７で、ＣＰＵコア４２は、発射フラグをオンにする。ステップＳ１５７を終了すると、処理は図２５のステップＳ１６５に進む。
【０１９４】
一方、ステップＳ１５１で“ＹＥＳ”であれば、ＣＰＵコア４２は、ステップＳ１５９で、前回座標が第１領域７４内の座標であったか否かを、入力履歴データに基づいて判断する。ここでは、スライド入力が第１領域７４内で終了されたのか否かを判定している。ステップＳ１５９で“ＹＥＳ”であれば、スライド入力のキャンセルであると見なして、ＣＰＵコア４２は、ステップＳ１６１で、入力開始フラグをオフする。また、ステップＳ１６３でＣＰＵコア４２は入力軌跡記憶領域１４２のデータを消去する。ステップＳ１６３を終了すると、処理は図２５のステップＳ１６５へ進む。
【０１９５】
なお、ステップＳ１５９で“ＮＯ”の場合、つまり、ボール７０に対する入力が開始されていない段階でタッチパネル２２からスティック２４等が離された場合には、処理はそのまま図２５のステップＳ１６５へ進む。また、ステップＳ１４９で“ＮＯ”の場合、つまり、入力無し状態が継続中の場合にも、処理はそのまま図２５のステップＳ１６５へ進む。
【０１９６】
図２５のステップＳ１６５では、ＣＰＵコア４２は、発射フラグがオンであるか否かを判断する。ステップＳ１６５で“ＹＥＳ”であれば、ＣＰＵコア４２は、ステップＳ１６７で、入力軌跡記憶領域１４２のデータに基づいて、ボール７０の移動方向を決定する。たとえば、ＣＰＵコア４２は、図１９に示したように、入力軌跡のうち始点と終点とを結ぶ直線と、タッチパネル２２の操作面の所定方向とのなす角度θを算出し、当該角度の示す方向を移動方向として決定する。
【０１９７】
また、ステップＳ１６９で、ＣＰＵコア４２は、終了フレーム番号と開始フレーム番号との差を算出して、当該差に基づいて移動速度を決定する。
【０１９８】
そして、ＣＰＵコア４２は、ステップＳ１７１で、当該ボール７０のための移動処理の実行を開始し、これによって、当該ボール７０が、決定された方向に決定された速度で移動される。この移動処理の動作は上述した図１５と同様である。
【０１９９】
続くステップＳ１７３からＳ１８１では、別のボール７０のための処理が行われる。すなわち、ＣＰＵコア４２は、ステップＳ１７３で、入力軌跡記憶領域１４２のデータを消去する。また、ステップＳ１７５で、ＣＰＵコア４２は開始フレーム番号記憶領域１１６および終了フレーム番号記憶領域１２０のデータを消去する。さらに、ステップＳ１７７で、ＣＰＵコア４２は発射フラグをオフにする。
【０２００】
続いて、ステップＳ１７９で、ＣＰＵコア４２は、新たなボール７０のためのデータをボール制御データ記憶領域１２０に生成する。そして、ステップＳ１８１で、ＣＰＵコア４２は、当該新たなボール７０を第１領域７４の中心に表示する。これによって、既存のボール７０が移動した後の所定位置に新たなボール７０が発生する画面が表示されることとなる。
【０２０１】
ステップＳ１８１を終了したとき、または、ステップＳ１６５で“ＮＯ”である場合には、ＣＰＵコア４２は、ステップＳ１８３で、標的７２を制御し、たとえば、必要に応じて各標的７２の制御データのうち位置データを更新し、当該更新された位置に当該標的７２を表示する。
【０２０２】
続いて、ステップＳ１８５で、ＣＰＵコア４２は、ゲーム終了であるか否かを判定し、“ＮＯ”であれば、ＣＰＵコア４２は図２２のステップＳ１０３に戻って、次のフレームの処理を実行する。一方、ステップＳ１８５で“ＹＥＳ”であれば、このゲーム処理を終了する。
【０２０３】
この実施例によれば、ボール７０の表示される第１領域７４内の座標が検出されたときに、入力軌跡の取得を開始し、その後の連続した座標が第２領域７６外へ出たときに、入力軌跡の取得を終了するようにした。そして、第１領域７４内の座標が検出されてから第２領域７６外の座標が検出されるまでに取得した複数の座標点のうち少なくとも２点に基づいて、ボール７０の移動方向を決定し、当該決定した方向にボール７０を移動させるようにした。また、始点決定後のスライド入力が第１領域７４外へ出たときを、時間計測開始時点として決定し、その後のスライド入力が第２領域７６外へ出たときを、時間計測終了時点として決定し、これら開始時点から終了時点までの経過時間に基づいて、移動速度を決定するようにした。このように、操作面上に設けた第１領域７４および第２領域７６に基づいて、入力の始点および終点を決定するようにしたので、上述の実施例と同様に、ボール７０の移動制御のための入力領域の範囲を明確にすることができる。したがって、移動方向の決定に使用される入力軌跡の始点および終点、ならびに移動速度の決定に使用される時間の計測開始時点および終了時点を、ユーザの意識した通りに決定することができるので、ユーザは、所望の移動方向および移動速度を入力することができ、その意図通りにボール７０を移動させることができる。
【０２０４】
また、第１領域７４および第２領域７６に対するスライド入力の進入および進出に応じてボール７０の移動が制御され、既存のボール７０が移動されると新しいボール７０が発生されるようにしたので、上述の実施例と同様に、ユーザは、入力の有無を切り替えたりすることなく、複数のボール７０を次々と移動させることができる。
【０２０５】
また、移動方向を入力軌跡に基づいて決定するようにしたので、たとえば第２領域７６の大きさを適宜調節することによって、ユーザに対して様々な方向入力を行わせることが可能になる。たとえば、第２領域７６を大きく形成した場合には、連続的な入力が第１領域７４に入って第２領域７６外に出るまでの間に、複雑な軌跡を入力することが可能になる。あるいは、入力の途中で入力軌跡の方向を微調整することも可能になる。このように、より複雑な移動方向を入力することが可能になり、たとえば、より複雑にボール７０を移動させるように制御することもできる。一方、第１領域７４および第２領域７６を小さくした場合には、少数の座標の入力によって移動方向が決定されるので、複数のボール７０を次々に移動させるのに便利である。
【０２０６】
なお、上述の各実施例では、第２領域７６は、第１領域７４の全周を包囲するようにして設けられていた。これによって、ボール７０の移動方向を３６０度全方向に決定可能にしていた。しかし、第２領域７６は入力の終点を決定するために設けられ、この終点を用いて移動方向が決定されるので、第２領域７６は、ボール７０または第１領域７４と目的地（標的７２）との間に第２領域７６の縁が存在するようにして設けられればよい。つまり、第２領域７６の第１領域７４に対する設置方法は適宜変更され得る。たとえば図２６（Ａ）に示すように、第２領域７６は、第１領域７４の全周を包囲しなくてもよい。この図２６（Ａ）の第２領域７６は、第１領域７４の上側１８０度方向のみを覆うようにして設けられる。たとえばボール７０の中心と終点とに基づいて移動方向を決定する場合には、ボール７０の上側１８０度が移動方向になり得るので、標的７２の配置がボール７０の上側に限られるような場面に適用できる。また、上述の各実施例では、第２領域７６は、第１領域７４を包含するようにして設けられていたが、たとえば図２６（Ｂ）に示すように、第２領域７６は、第１領域７４を包含しなくてもよい。この図２６（Ｂ）の第２領域７６は、左右方向に長く延びた矩形状を有しており、第１領域７４と離れた位置に設けられる。たとえば入力の始点と終点とに基づいて移動方向を決定する場合には、第１領域７４内の各座標点と第２領域７６の周縁上の各座標点とを結ぶ全ての直線の方向が移動方向になり得る。第２領域７６は、第１領域７４内の所定位置（たとえば中心座標）を基準として、標的７２の存在する方向へ移動可能な移動方向が決定され得るような所定位置に配置される。この第２領域７６は第１領域７４と離れているので、入力の終点を決定する場合には、スライド入力が第２領域７６内に入ってから第２領域７６外へ出たことが条件とされる。
【０２０７】
また、上述の各実施例では、ステップＳ１（図１１）またはステップＳ１０１（図２２）で最初からボール７０を表示するようにしていた。しかしながら、ボール７０の表示タイミングは適宜変更され得る。他の実施例では、たとえば、タッチパネル２２への入力が開始されたときに、所定位置または入力位置等にボール７０を表示するようにしてもよい。あるいは、移動方向が決定されたときに、所定位置、入力開始位置または現入力位置等にボール７０を表示するとともに決定された方向へ移動させるようにしてもよい。
【０２０８】
また、上述の各実施例では、ＬＣＤ１４の画面上に設けられたタッチパネル２２で座標を入力するようにしていた。しかし、他の実施例では、マウスのような他のポインティングデバイスが適用されてもよい。この場合には、ゲーム画面にマウスポインタを表示することによって入力位置を明示する。また、マウスのボタンが押されているときを入力有り状態とみなし、かつ、マウスのボタンが放されているときを入力無し状態とみなすことによって、ポインティングデバイスでの入力の有無を判別することができる。
【図面の簡単な説明】
【０２０９】
【図１】この発明の一実施例のゲーム装置の一例を示す外観図である。
【図２】図１実施例の電気的な構成を示すブロック図である。
【図３】ＬＣＤ１４に表示されるゲーム画面の一例を示す図解図である。
【図４】ボールに対する入力の始点の判定と第２領域および第３領域の設定とを説明するための図解図である。
【図５】移動速度を決定するための時間計測開始時点の判定を説明するための図解図である。
【図６】ボールに対する入力の終点の判定を説明するための図解図である。
【図７】終点の判定の他の例を説明するための図解図である。
【図８】移動方向の決定方法を説明するための図解図である。
【図９】メモリカードのＲＯＭのメモリマップの一例を示す図解図である。
【図１０】ＲＡＭのメモリマップの一例を示す図解図である。
【図１１】図１実施例のゲーム装置の動作の一例の一部を示すフロー図である。
【図１２】図１１の続きの一部を示すフロー図である。
【図１３】図１１の続きの他の一部を示すフロー図である。
【図１４】図１１、図１２および図１３の続きを示すフロー図である。
【図１５】図１４でその実行が開始されるボールごとの移動処理の動作の一例を示すフロー図である。
【図１６】他の実施例における入力の始点の判定と第２領域とを説明するための図解図である。
【図１７】他の実施例における時間計測開始時点の判定を説明するための図解図である。
【図１８】他の実施例における終点の判定を説明するための図解図である。
【図１９】他の実施例における入力軌跡に基づく移動方向の決定方法の一例を説明するための図解図である。
【図２０】他の実施例におけるＲＯＭのメモリマップの一部を示す図解図である。
【図２１】他の実施例におけるＲＡＭのメモリマップの一部を示す図解図である。
【図２２】他の実施例におけるゲーム装置の動作の一例の一部を示すフロー図である。
【図２３】図２２の続きの一部を示すフロー図である。
【図２４】図２２の続きの他の一部を示すフロー図である。
【図２５】図２２、図２３および図２４の続きを示すフロー図である。
【図２６】第１領域に対する第２領域の配置の変形例を示す図解図である。
【符号の説明】
【０２１０】
１０  …ゲーム装置
１２，１４…ＬＣＤ
２２  …タッチパネル
２８  …メモリカード
２８ａ  …ＲＯＭ
４２  …ＣＰＵコア
４８  …ＲＡＭ
５０，５２  …ＧＰＵ
５４  …Ｉ／Ｆ回路
６０  …ＬＣＤコントローラ
７０  …ボール
７４  …第１領域
７６  …第２領域
７８  …第３領域
【図１】
0004819467.tif 000002
【図２】
0004819467.tif 000003
【図３】
0004819467.tif 000004
【図４】
0004819467.tif 000005
【図５】
0004819467.tif 000006
【図６】
0004819467.tif 000007
【図７】
0004819467.tif 000008
【図８】
0004819467.tif 000009
【図９】
0004819467.tif 000010
【図１０】
0004819467.tif 000011
【図１１】
0004819467.tif 000012
【図１２】
0004819467.tif 000013
【図１３】
0004819467.tif 000014
【図１４】
0004819467.tif 000015
【図１５】
0004819467.tif 000016
【図１６】
0004819467.tif 000017
【図１７】
0004819467.tif 000018
【図１８】
0004819467.tif 000019
【図１９】
0004819467.tif 000020
【図２０】
0004819467.tif 000021
【図２１】
0004819467.tif 000022
【図２２】
0004819467.tif 000023
【図２３】
0004819467.tif 000024
【図２４】
0004819467.tif 000025
【図２５】
0004819467.tif 000026
【図２６】
0004819467.tif 000027