説明

ゲームプログラムおよびゲーム装置

【課題】手元を見なくても多様なタッチ操作を容易に行えるゲーム手段を提供する。
【解決手段】ゲーム装置はタッチパネルを含み、所定のタッチ操作が行われたと判定されるとき所定の処理が実行される。たとえば仮想空間画像の表示されるLCD12に仮想イメージ領域402が設けられる。タッチ操作が検出されるとき、仮想イメージ領域402におけるタッチ位置の対応位置が算出されてカーソル406が表示される。仮想イメージ領域402にはユーザ操作のガイド画像404が表示されてよく、この画像404はタッチパネル下のLCD14に表示されるガイド画像400の縮小画像でもよい。また、ガイド画像400、404は、選択された操作種類に応じた画像であってよく、操作の判定に応じて表示態様が変更されてよいし、判定結果の表示として表示態様が変更されてもよい。さらに、ガイドとなる画像400、404の表示態様の変更に応じた判定が行われてよい。

【発明の詳細な説明】
【技術分野】
【0001】
この発明はゲームプログラムおよびゲーム装置に関し、特にたとえば第1の表示領域に画像を表示しユーザにタッチパネルを用いてゲームを操作させる、ゲームプログラムおよびゲーム装置に関する。
【背景技術】
【0002】
タッチパネルを用いてユーザにゲームを操作させるゲーム装置の一例が特許文献1に開示されている。このゲーム装置では、第1のLCDにゲーム全体の画面が表示され、タッチパネルの設けられた第2のLCDにユーザの操作対象としてのキャラクタが表示される。ユーザがタッチパネル下の第2のLCDに表示されたキャラクタの手をタッチしたまま所定の方向に回転させる操作を行うと、第1のLCDの全体画面では当該キャラクタが所定の方向に移動する。
【特許文献1】特開2006−149927号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
特許文献1の技術では、第1のLCDにゲームの様子を示す主要な画像が表示されるが、ユーザは手元の操作のための画像を見ながらゲーム操作を行わねばならないので、主要な画像を見ることが困難であった。
【0004】
それゆえに、この発明の主たる目的は、新規な、ゲームプログラムおよびゲーム装置を提供することである。
【0005】
この発明の他の目的は、手元を見なくてもタッチパネルを用いてゲームを操作できる、ゲームプログラムおよびゲーム装置を提供することである。
【課題を解決するための手段】
【0006】
本発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施の形態との対応関係を示したものであって、本発明を何ら限定するものではない。
【0007】
第1の発明は、画像データを記憶する記憶手段、所定の画像を表示するための第1の表示領域、およびタッチパネルを有するゲーム装置において実行されるゲームプログラムである。ゲームプログラムは、ゲーム装置の処理手段を、第1の表示領域に所定の画像を表示する第1の表示制御手段、タッチパネルの検出に基づいて座標を検出する座標検出手段、第1の表示領域の一部領域に設けられる仮想イメージ領域における、座標検出手段によって検出された座標の対応位置を算出する対応位置算出手段、仮想イメージ領域内の対応位置に所定画像を表示する対応位置表示手段、座標検出手段によって検出された座標に基づいて、所定のタッチ操作があったか否かを判定するタッチ操作判定手段、および所定のタッチ操作があったと判定されるときに所定の処理を実行するタッチ操作処理手段として機能させる。
【0008】
第1の発明では、ゲームプログラムは、画像データを記憶する記憶手段(28、42、52、54)、所定の画像を表示するための第1の表示領域(12、104)、およびタッチパネル(24、102)を有するゲーム装置(10)において実行される。タッチパネルはタッチパッド、すなわち、その下に表示領域の設けられない単なるタッチパネルであってよいし、別の表示領域上に設けられるタッチスクリーンであってもよい。このゲームプログラムはゲーム装置の処理手段(34、44、46、50、100)を次に示す手段として機能させる。第1の表示制御手段(106、S43、S87、S217)は、第1の表示領域に所定の画像を表示する。この所定画像は任意であるが、たとえば仮想空間画像であってよい。さらに、プレイヤキャラクタの登場するゲームであれば、所定画像はプレイヤキャラクタを含む仮想ゲーム空間のシーンを示すようなゲームのメインとなる画像であってよい。座標検出手段(108、S49)は、タッチパネルの検出に基づいて座標を検出する。また、第1の表示領域の一部領域には仮想イメージ領域(104a、402)が設けられる。仮想イメージ領域は、タッチパネルの検出領域を仮想的にイメージとして表示するための領域である。対応位置算出手段(114、S63)は、座標検出手段によって検出された座標の仮想イメージ領域における対応位置を算出する。対応位置表示手段(116、S43、S65)は、仮想イメージ領域内の対応位置に所定画像(406)を表示する。したがって、第1の表示領域内の仮想イメージ領域には、ユーザのタッチした位置に対応する位置を示す所定画像が表示される。また、タッチ操作判定手段(110、S57)は、座標検出手段によって検出された座標に基づいて、所定のタッチ操作があったか否かを判定する。タッチ操作の種類が選択可能な場合には、選択された操作種類に応じた判定が行われてよい。タッチ操作処理手段(112、S89−S109)は、タッチ操作判定手段によって所定のタッチ操作があったと判定されるときに所定の処理を実行する。
【0009】
第1の発明によれば、第1の表示領域内の仮想イメージ領域においてユーザのタッチ座標に対応する位置に所定画像が表示されるので、ユーザは第1の表示領域を見れば自らのタッチ操作によって指示された位置に対応する位置を把握できる。したがって、ユーザは手元のタッチパネルを見なくてもタッチ操作を行うことができる。
【0010】
第2の発明は、第1の発明に従属するゲームプログラムであり、ゲーム装置は、所定の画像を表示するための第2の表示領域をさらに有し、タッチパネルは第2の表示領域上に設けられるタッチスクリーンであり、ゲームプログラムは、処理手段を、第2の表示領域に所定の画像を表示する第2の表示制御手段としてさらに機能させる。
【0011】
第2の発明では、第2の表示領域(14、118)がさらに設けられる。また、タッチパネルは、第2の表示領域の上に設けられるタッチスクリーンである。そして、第2の表示制御手段(120、S215、S413、S709、S935)は、第2の表示領域に所定の画像(400)を表示する。第2の表示領域に表示される所定画像は、任意であるが、ユーザ操作のインターフェースとなる画像であってよく、たとえばタッチ操作のガイドとなる画像であってよい。また、タッチ操作の種類が選択可能な場合には、選択された操作種類に応じた画像であってよい。さらに、ガイド画像の表示態様が変更可能な場合には、変更された表示態様に応じた画像であってよい。
【0012】
第2の発明によれば、手元のタッチスクリーン上に表示される画像を見なくても、タッチ操作を行うことができる。
【0013】
第3の発明は、第2の発明に従属するゲームプログラムであり、第2の表示制御手段は、第2の表示領域にユーザ操作のインターフェースとなる画像を表示する。
【0014】
第3の発明によれば、手元のタッチスクリーンに表示されるユーザ操作のインターフェースを見なくても、タッチ操作を行うことができる。
【0015】
第4の発明は、第3の発明に従属するゲームプログラムであり、第2の表示制御手段は、タッチ操作のガイドとなる第2ガイド画像を第2の表示領域に表示する。
【0016】
第4の発明によれば、手元のタッチスクリーンに表示されるタッチ操作のガイドとなる第2ガイド画像を見なくても、タッチ操作を行うことができる。
【0017】
第5の発明は、第4の発明に従属するゲームプログラムであり、処理手段を、仮想イメージ領域にタッチ操作のガイドとなる第1ガイド画像を表示するガイド画像表示制御手段としてさらに機能させる。
【0018】
第5の発明では、ガイド画像表示制御手段(122、S223、S415、S711、S937)は、仮想イメージ領域に第1ガイド画像(404)を表示する。仮想イメージ領域に表示される第1ガイド画像は、たとえば固定的な画像であってよい。タッチ操作の種類が選択可能な場合には、選択された操作種類に応じた画像であってよい。また、第1ガイド画像の表示態様が変更可能である場合には、変更された表示態様に応じた画像であってよい。さらに、第2の表示領域に表示されるタッチ操作のガイドとなる第2ガイド画像に対応して記憶される縮小ガイド画像であってよい。
【0019】
第5の発明によれば、タッチスクリーンに第2ガイド画像が表示されるとともに、仮想イメージ領域において、タッチ操作のガイドとなる第1ガイド画像とユーザのタッチした位置に対応する位置に所定の画像とが表示される。したがって、手元のタッチスクリーンに表示される第2ガイド画像を見て操作を行うことができるが、手元のタッチスクリーンの第2ガイド画像を見なくても、タッチ操作をより容易に行うことができる。
【0020】
第6の発明は、第5の発明に従属するゲームプログラムであって、ガイド画像表示制御手段は、第2の表示制御手段によって第2の表示領域に表示されるガイドとなる第2ガイド画像に対応して記憶される縮小ガイド画像を仮想イメージ領域に表示する。
【0021】
第6の発明では、手元のタッチスクリーンに表示される第2ガイド画像を見なくても、仮想イメージ領域で縮小ガイド画像を見ることができる。この縮小ガイド画像とともにタッチ位置の対応位置に所定の画像が表示されるので、タッチ操作をより容易に行うことができる。
【0022】
第7の発明は、第1の発明に従属するゲームプログラムであって、処理手段を、現在操作すべきタッチ操作の種類を選択する操作種類選択手段、および仮想イメージ領域にタッチ操作のガイドとなる第1ガイド画像を表示するガイド画像表示制御手段としてさらに機能させ、ガイド画像表示制御手段は、操作種類選択手段によって選択された操作種類に応じた第1ガイド画像を表示する。
【0023】
第7の発明では、操作種類選択手段(124、S5−S9)は、現在操作すべきタッチ操作の種類を選択する。たとえば、選択可能な複数の操作種類を含むリストが表示され、当該リストから操作種類がユーザのタッチ操作によって選択される。ガイド画像表示制御手段(122、S223、S415、S711、S937)は、選択された操作種類に応じた第1ガイド画像(404)を仮想イメージ領域に表示する。
【0024】
第7の発明によれば、タッチ操作の種類を選択することができるとともに、当該種類に応じた第1ガイド画像を仮想イメージ領域に表示することができるので、手元を見なくても多様なタッチ操作をより容易に行うことができる。
【0025】
第8の発明は、第7の発明に従属するゲームプログラムであって、ゲーム装置は、所定の画像を表示するための第2の表示領域をさらに備え、タッチパネルは第2の表示領域上に設けられるタッチスクリーンであり、処理手段を、操作種類選択手段によって選択された種類に応じたタッチ操作のガイドとなる第2ガイド画像を第2の表示領域に表示する第2の表示制御手段としてさらに機能させる。
【0026】
第8の発明では、第2の表示領域(14、118)がさらに設けられる。また、タッチパネルは、第2の表示領域の上に設けられるタッチスクリーンである。そして、第2の表示制御手段(120、S215、S413、S709、S935)は、第2の表示領域に選択された操作種類に応じた第2ガイド画像(400)を表示する。
【0027】
第8の発明によれば、タッチ操作の種類を選択することができるとともに、当該操作種類に応じたガイド画像をタッチスクリーンと仮想イメージ領域の両方に表示することができる。したがって、手元のタッチスクリーンに表示される第2ガイド画像を見て多様な操作を行うことができるが、手元のタッチスクリーンを見なくても、多様なタッチ操作を容易に行うことができる。
【0028】
第9の発明は、第7の発明または第8の発明に従属するゲームプログラムであって、タッチ操作判定手段は、操作種類選択手段によって選択された種類に応じたタッチ操作の判定を行う。
【0029】
第9の発明では、タッチ操作判定手段が選択された操作種類に応じたタッチ操作の判定を行うので、選択された所定のタッチ操作が行われたか否かに応じて所定の処理を実行することができる。したがって、手元のタッチスクリーンに表示される第2ガイド画像を見て多様な操作を行うことができるが、手元を見なくても、多様なタッチ操作を容易に行うことができる。
【0030】
第10の発明は、第1の発明に従属するゲームプログラムであって、処理手段を、仮想イメージ領域にタッチ操作のガイドとなる第1ガイド画像を表示するガイド画像表示制御手段、および第1ガイド画像の表示態様を変更する表示態様変更手段としてさらに機能させ、ガイド画像表示制御手段は、表示態様変更手段によって変更された表示態様に応じた第1ガイド画像を仮想イメージ領域に表示する。
【0031】
第10の発明では、ガイド画像表示制御手段(122、S223、S415、S711、S937)は、仮想イメージ領域に第1ガイド画像(404)を表示する。表示態様変更手段(126、S69、S411、S705、S707、S913、S933)は、第1ガイド画像の表示態様を変更する。表示態様はタッチ操作の判定に応じて変更されてよい。そして、ガイド画像表示制御手段は、表示態様変更手段によって変更された表示態様に応じた第1ガイド画像を仮想イメージ領域に表示する。
【0032】
第10の発明によれば、仮想イメージ領域に第1ガイド画像を表示することができるとともに、第1ガイド画像の表示態様が変更された場合には、変更された表示態様に応じた第1ガイド画像を表示することができるので、手元を見なくても、多様なタッチ操作をより容易に行うことができる。
【0033】
第11の発明は、第7の発明に従属するゲームプログラムであって、ゲーム装置は、所定の画像を表示する第2の表示領域をさらに有し、タッチパネルは第2の表示領域上に設けられるタッチスクリーンであり、処理手段を、タッチ操作のガイドとなる第2ガイド画像を第2の表示領域に表示する第2の表示制御手段、および第2ガイド画像の表示態様を変更する表示態様変更手段としてさらに機能させ、第2の表示制御手段は、表示態様変更手段によって変更された表示態様に応じた第2ガイド画像を表示する。
【0034】
第11の発明では、第2の表示領域(14、118)がさらに設けられる。また、タッチパネルは、第2の表示領域の上に設けられるタッチスクリーンである。第2の表示制御手段(120、S215、S413、S709、S935)は、第2の表示領域にタッチ操作のガイドとなる第2ガイド画像(400)を表示する。また、表示態様変更手段(126、S69、S409、S411、S705、S707、S913、S921、S933)は、第2ガイド画像の表示態様を変更する。そして、第2の表示制御手段は、変更された表示態様に応じた第2ガイド画像を表示する。
【0035】
第11の発明では、選択された操作種類に応じた第1ガイド画像が仮想イメージ領域に表示される。第2の表示領域に表示された第2ガイド画像の表示態様が変更されると、変更された表示態様に応じた第2ガイド画像が第2の表示領域に表示される。したがって、手元のタッチスクリーンに表示される第2ガイド画像を見て多様な操作を行うことができるが、手元のタッチスクリーンを見なくても、多様なタッチ操作を容易に行うことができる。
【0036】
第12の発明は、第10の発明または第11の発明に従属するゲームプログラムであって、表示態様変更手段は、タッチ操作判定手段によるタッチ操作の判定に応じて表示態様を変更する。
【0037】
第12の発明では、表示態様変更手段は、タッチ操作の判定に応じて表示態様を変更する。たとえば、タッチ操作に成功したと判定される場合にガイド画像の大きさが変更されてよい。このように、仮想イメージ領域に表示された第1ガイド画像および/または第2の表示領域に表示された第2ガイド画像の表示態様を、ユーザ操作に応じて動的に変更することができる。したがって、ユーザは、手元を見なくても、自らの操作に応じて表示態様の変更された第1ガイド画像を仮想イメージ領域で見ることができ、多様な操作を容易に行うことができる。
【0038】
第13の発明は、第10の発明または第11の発明に従属するゲームプログラムであって、タッチ操作判定手段は、表示態様変更手段によって変更された表示態様に応じた所定のタッチ操作があったか否かを判定する。
【0039】
第13の発明では、タッチ操作判定手段は、変更された表示態様に応じた所定のタッチ操作があったか否かを判断する。たとえば、表示態様変更として、ガイド画像の大きさや位置が変更されたり、操作すべき順番が1つ進められたりまたは変更されたりしてよく、そのような場合、変更された第1ガイド画像および/または第2ガイド画像の表示態様に連動したタッチ操作の判定が行われる。このように、仮想イメージ領域および/または第2の表示領域に表示された第1ガイド画像および/または第2ガイド画像の表示態様の変更に応じてタッチ操作を判定することができるので、手元を見なくても、より多様な操作をより容易に行うことができる。
【0040】
第14の発明は、第1の発明に従属するゲームプログラムであって、ゲーム装置は、所定の画像を表示するための第2の表示領域をさらに有し、タッチパネルは、第2の表示領域上に設けられるタッチスクリーンであり、処理手段を、第2の表示領域に所定の画像を表示する第2の表示制御手段、およびタッチ操作判定手段によってタッチ操作が所定条件を満たすと判定されるときに第1の表示領域に判定結果を表示する判定結果表示手段として機能させ、判定結果表示手段は、判定結果を第2の表示領域にも表示する。
【0041】
第14の発明では、第2の表示領域(14、118)がさらに設けられる。また、タッチパネルは、第2の表示領域の上に設けられるタッチスクリーンである。そして、第2の表示制御手段(120、S215、S413、S709、S935)は、第2の表示領域に所定の画像(400)を表示する。判定結果表示手段(128、S73、S79、S97、S405、S715、S903−S907、S911、S913、S927)は、タッチ操作が所定条件を満たすと判定されるときに第1の表示領域に判定結果(408a、408b、420)を表示し、さらに、第2の表示領域にも判定結果(412、414、416、418、422)を表示する。判定結果は、たとえば判定内容そのものを示してもよいし、操作のガイドとなる画像が表示される場合、当該ガイド画像の大きさや色などの表示態様の変化によって表現されてもよいし、あるいは背景画像の色などの表示態様の変化によって表現されてもよい。
【0042】
第14の発明によれば、第1の表示領域の仮想イメージ領域においてユーザのタッチ位置に対応する位置を示す所定画像が表示されるとともに、タッチ操作の判定結果が第1の表示領域および第2の表示領域に表示される。したがって、タッチスクリーンを見ながら操作をすることもできるが、手元のタッチスクリーンを見なくても、第1の表示領域を見ればタッチ操作を行うことができる。
【0043】
第15の発明は、画像データを記憶する記憶領域、所定の画像を表示するための第1の表示領域およびタッチパネルを有するゲーム装置である。ゲーム装置は、第1の表示領域に所定の画像を表示する第1の表示制御手段、タッチパネルの検出に基づいて座標を検出する座標検出手段、第1の表示領域の一部領域に設けられる仮想イメージ領域における、座標検出手段によって検出された座標の対応位置を算出する対応位置算出手段、仮想イメージ領域内の対応位置に所定画像を表示する対応位置表示手段、座標検出手段によって検出された座標に基づいて、所定のタッチ操作があったか否かを判定するタッチ操作判定手段、および所定のタッチ操作があったと判定されるときに所定の処理を実行するタッチ操作処理手段を備える。
【0044】
第15の発明は、第1の発明のゲームプログラムと同様の効果を奏する。
【発明の効果】
【0045】
この発明によれば、所定の画像の表示される第1の表示領域にタッチパネルを用いたユーザのタッチ位置に対応する位置を示す画像を表示するようにしたので、ユーザは手元のタッチパネルを見なくても第1の表示領域の画像を見ながら操作を行うことができる。
【0046】
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【発明を実施するための最良の形態】
【0047】
図1に示す機能ブロック図は、この発明のゲーム装置10の実施形態を機能的に表現する。この図1を参照して、ゲーム装置10は処理手段100、タッチパネル102および第1の表示領域104を含む。処理手段100はゲームプログラムの実行によって第1の表示制御手段106、座標検出手段108、タッチ操作判定手段110、タッチ操作処理手段112、対応位置算出手段114、対応位置表示手段116として機能する。
【0048】
第1の表示制御手段106は第1の表示領域104に所定の画像を表示する。第1の表示領域104に表示される所定の画像は、任意であるが、たとえば仮想空間画像である。なお、ゲーム装置10は、画像データを記憶する記憶領域(図示せず)を備えていて、処理手段100は、当該画像データに基づいて画像を表示する。ユーザもしくはプレイヤはタッチパネル102を用いて当該ゲーム装置10で実行されるゲームの操作を行う。タッチパネル102はユーザによるタッチ操作を検出し、当該タッチ操作の検出に応じた信号またはデータを座標検出手段108に与える。座標検出手段108はタッチパネル102の検出に基づいて座標を検出する。タッチ操作判定手段110は、座標検出手段108によって検出された座標に基づいて、所定のタッチ操作があったか否かを判断する。タッチ操作判定手段110は、所定のタッチ操作として常に一定のタッチ操作の判定を行ってもよい。タッチ操作処理手段112は、タッチ操作判定手段110によって所定の操作があったと判定されるときに所定の処理を実行する。所定の処理は何らかの処理であればよく、たとえば第1表示制御手段による表示内容を変更するものであってよい。このように、このゲーム装置10では、ユーザによる所定のタッチ操作に応じて所定の処理が実行される。
【0049】
また、対応位置算出手段114は、第1の表示領域104の一部領域に設けられる仮想イメージ領域104aにおける、座標検出手段108によって検出された座標の対応位置を算出する。仮想イメージ領域104aは、タッチパネル102の検出領域を仮想的にイメージとして表示するための領域である。検出座標と対応位置とは典型的には1対1の関係を有する。対応位置表示手段116は、対応位置算出手段114によって算出された仮想イメージ領域104a内の対応位置に所定の画像を表示する。典型的には、所定の画像は、タッチパネル102がタッチされているときのみ表示されるが、タッチパネル102がタッチされなくなってからも最後の検出座標に対応する位置に所定の画像の表示を継続してもよい。
【0050】
このようにして、このゲーム装置10では、第1の表示領域104に設けられた仮想イメージ領域内104aにおいてユーザのタッチ操作に対応する位置に所定画像が表示されるので、ユーザは、第1の表示領域104を見れば、自らのタッチ操作の様子も見ることができる。したがって、ユーザは手元のタッチパネル102を見なくても、タッチ操作を行うことができる。
【0051】
また、図1に示す実施形態は、図2に示すような種々の変形が可能である。この図2に示すように、ゲーム装置10は、第2の表示領域118をさらに備えてよく、処理手段100は第2の表示領域118に所定の画像を表示する第2の表示制御手段120としてさらに機能してよい。この場合、第1の表示領域104と第2の表示領域118とは別々のハードウェアとしての表示手段に設けられてもよいし、1つの表示手段に2つの表示領域を設けてもよい。
【0052】
タッチパネル102は、単なるタッチパネルであってもよいが、第2の表示領域118上に設けられたタッチスクリーンであってよい。
【0053】
第2の表示制御手段120が第2の表示領域118に表示する所定の画像は任意であるが、第2の表示制御手段120は、ユーザ操作のインターフェースとなる画像を表示してよい。このユーザインターフェースは、たとえばタッチ操作のガイドとなる第2ガイド画像であってよい。ユーザはタッチパネル102下の第2の表示領域118に表示される所定の画像を見なくても、タッチ操作を行うことができる。
【0054】
また、処理手段100は、仮想イメージ領域104aにタッチ操作のガイドとなる第1ガイド画像を表示するガイド画像表示制御手段122としてさらに機能してよい。この場合、第1の表示領域104の仮想イメージ領域104a内に第1ガイド画像が表示されるので、ユーザは第2の表示領域118を見なくてもタッチ操作を行うことができる。また、第1の表示領域104および第2の表示領域118のどちらのガイド画像を見てもタッチ操作を行うことができる。また、この第1ガイド画像は固定的な画像であってよい。あるいは、このガイド画像表示制御手段122によって表示される第1ガイド画像は、第2の表示制御手段120によって第2の表示領域118に表示される第2ガイド画像に対応して記憶される縮小ガイド画像であってよい。
【0055】
また、処理手段100は、現在操作すべきタッチ操作の種類を選択する操作種類選択手段124としてさらに機能してよい。この場合、ガイド画像表示制御手段122は、操作種類選択手段124によって選択された操作種類に応じた第1ガイド画像を仮想イメージ領域104aに表示する。したがって、ユーザは第1の表示領域104を見ることで多様な操作を行うことができる。
【0056】
さらに、第2の表示制御手段120は、第2ガイド画像として、操作種類選択手段124によって選択された操作種類に応じた画像を第2の表示領域118に表示してよい。この場合、ユーザは、第1の表示領域104を見ることで多様な操作を行うことができる。また、第1の表示領域104および第2の表示領域118のどちらのガイド画像を見ても操作を行うことができる。
【0057】
さらにまた、タッチ操作判定手段110は、操作種類選択手段124によって選択された操作種類に応じた判定を行ってよい。この場合、多様なタッチ操作を判別することができる。
【0058】
また、処理手段100は、第1ガイド画像の表示態様を変更する表示態様変更手段126としてさらに機能してよい。表示態様はたとえば大きさや位置であってよい。また、表示態様は所定の条件に応じて変更されてよい。さらに、表示態様はタッチ操作判定手段110によるタッチ操作の判定に応じて変更されてもよい。表示態様変更手段が設けられる場合、ガイド画像表示制御手段122は、表示態様変更手段126によって変更された表示態様に応じた第1ガイド画像を仮想イメージ領域104aに表示する。ユーザは、変更された表示態様に応じた第1ガイド画像を第1の表示領域104において見ることができるので、多様な操作を行うことができる。
【0059】
さらに、第2の表示制御手段120は、表示態様変更手段126によって変更された表示態様に応じた第2ガイド画像を第2の表示領域118に表示してよい。この場合、ユーザは、変更された表示態様および選択された操作種類に応じた第2ガイド画像を見て多様な操作を行うことができる。また、第1の表示領域104および第2の表示領域118のどちらを見ても操作を行うことができる。
【0060】
さらにまた、表示態様変更手段126は、タッチ操作判定手段110によるタッチ操作の判定に応じて第1ガイド画像および/または第2ガイド画像の表示態様を変更してよい。この場合、ユーザ操作に応じて第1ガイド画像および/または第2ガイド画像を動的に変更することができる。
【0061】
また、タッチ操作判定手段110は、表示態様変更手段126によって変更された表示態様に応じてその判定を行ってよい。この場合、さらに多様なタッチ操作を判別することができる。
【0062】
また、処理手段100は、タッチ操作判定手段110によってタッチ操作が所定条件を満たすと判定されるときに第1の表示領域104に判定結果を表示する判定結果表示手段128としてさらに機能してよい。この場合、判定結果は第1の表示領域104にだけ表示されてもよいが、第2の表示領域118にも表示されてよい。ユーザは、第1の表示領域104および第2の表示領域118のどちらを見ても、タッチ操作の判定結果を確認することができる。
【0063】
図3には、この発明の実施例のゲーム装置10が示される。この図3を参照して、ゲーム装置10は、第1の液晶表示器(LCD)12および第2のLCD14を含む。LCD12およびLCD14は、所定の配置位置となるようにハウジング16に収納される。この実施例では、ハウジング16は、上側ハウジング16aと下側ハウジング16bとによって構成され、LCD12は上側ハウジング16aに収納され、LCD14は下側ハウジング16bに収納される。したがって、LCD12とLCD14とは縦(上下)に並ぶように近接して配置される。
【0064】
なお、この実施例では、表示器としてLCDを用いるようにしてあるが、LCDに代えて、EL(Electronic Luminescence)ディスプレイやプラズマディスプレイを用いるようにしてもよい。
【0065】
図3からも分かるように、上側ハウジング16aは、LCD12の平面形状よりも少し大きな平面形状を有し、一方主面からLCD12の表示面を露出するように開口部が形成される。一方、下側ハウジング16bの平面形状およびサイズも上側ハウジング16aと同等に選ばれ、横方向の中央部にLCD14の表示面を露出するように開口部が形成される。下側ハウジング16bの右側面には電源スイッチ18が設けられる。
【0066】
また、上側ハウジング16aには、LCD12を挟んで左右に、スピーカ36aおよび36b(図4参照)のための音抜き孔20aおよび20bが形成される。
【0067】
上側ハウジング16aと下側ハウジング16bとは、上側ハウジング16aの下辺(下端)と下側ハウジング16bの上辺(上端)の一部とが回動可能に連結されている。したがって、たとえば、ゲームをプレイしない場合には、LCD12の表示面とLCD14の表示面とが対面するように、上側ハウジング16aを回動させて折りたたんでおけば、LCD12の表示面およびLCD14の表示面に傷がつくなどの破損を防止することができる。ただし、上側ハウジング16aと下側ハウジング16bとは、回動可能に連結せずに、それらを一体的(固定的)に設けたハウジング16を形成するようにしてもよい。
【0068】
そして、上側ハウジング16aと下側ハウジング16bとの連結部の中央には、マイク(図示せず)のためのマイク孔20cが形成される。マイクから取り込んだ音、音声または息などによる音声信号に基づいてゲーム処理を行うことが可能である。
【0069】
また、下側ハウジング16bには、操作スイッチ22(22a,22b,22c,22d,22e,22Lおよび22R)が設けられる。
【0070】
操作スイッチ22は、方向指示スイッチ(十字スイッチ)22a,スタートスイッチ22b、セレクトスイッチ22c、動作スイッチ(Aボタン)22d、動作スイッチ(Bボタン)22e、動作スイッチ(Xボタン)22f、動作スイッチ(Yボタン)22g、動作スイッチ(Lボタン)22Lおよび動作スイッチ(Rボタン)22Rを含む。スイッチ22aは、下側ハウジング16bの一方主面であり、LCD14の左側に配置される。その他のスイッチ22b−22gは、下側ハウジング16bの一方主面であり、LCD14の右側に配置される。さらに、動作スイッチ22Lおよび22Rは、それぞれ下側ハウジング16bの上端面の左右角部に配置される。なお、動作スイッチ22Lおよび22Rは下側ハウジング16bの背面に設けられており、図3のような正面視では連結部の背後に隠れているので破線で示されている。
【0071】
方向指示スイッチ22aは、ディジタルジョイスティックとして機能し、4つの押圧部の1つを操作することによって、ユーザないしプレイヤによって操作可能なプレイヤオブジェクト(またはプレイヤキャラクタ)の進行方向(移動方向)を指示したり、カーソルの進行方向を指示したりする等のために用いられる。また、各押圧部には、特定の役割を割り当てることができ、4つの押圧部の1つを操作することによって、割り当てられた役割を指示(指定)することができる。
【0072】
スタートスイッチ22bは、プッシュボタンで構成され、ゲームを開始(再開)したり、一時停止(Pause)したりする等に用いられる。また、セレクトスイッチ22cは、プッシュボタンで構成され、ゲームモードの選択等に用いられる。
【0073】
動作スイッチ22dすなわちAボタンは、プッシュボタンで構成され、方向指示以外の動作、すなわち、プレイヤオブジェクトに打つ(パンチ)、投げる、つかむ(取得)、乗る、ジャンプするなどの任意のアクションをさせることができる。たとえば、アクションゲームにおいては、ジャンプ、パンチ、武器を動かす等を指示することができる。また、ロールプレイングゲーム(RPG)やシミュレーションRPGにおいては、アイテムの取得、武器やコマンドの選択および決定等を指示することができる。動作スイッチ22eすなわちBボタンは、プッシュボタンで構成され、セレクトスイッチ22cで選択したゲームモードの変更やAボタン22dで決定したアクションの取り消し等のために用いられる。
【0074】
動作スイッチ22fすなわちXボタン、および動作スイッチ22gすなわちYボタンは、プッシュボタンで構成され、Aボタン22dとBボタン22eだけでは、ゲーム進行ができないときに、補助的な操作に用いられる。ただし、Xボタン22fおよびYボタン22gは、Aボタン22dおよびBボタン22eと同様の操作に用いることも可能である。もちろん、ゲームプレイにおいてXボタン22fとYボタン22gとを必ずしも使用しなくてよい。
【0075】
動作スイッチ22L(左押しボタン)および動作スイッチ22R(右押しボタン)は、プッシュボタンで構成され、左押しボタン(Lボタン)22Lおよび右押しボタン(Rボタン)22Rは、Aボタン22dおよびBボタン22eと同様の操作に用いることができ、また、Aボタン22dおよびBボタン22eの補助的な操作に用いることができる。さらに、Lボタン22LおよびRボタン22Rは、方向スイッチ22a,Aボタン22d,Bボタン22e,Xボタン22f,Yボタン22gに割り当てられた役割を、他の役割に変更することができる。
【0076】
また、LCD14の上面には、タッチパネル24が装着される。タッチパネル24としては、たとえば、抵抗膜方式、光学式(赤外線方式)および静電容量結合式のいずれかの種類のものを用いることができる。また、タッチパネル24は、その上面をスティック26ないしはペン(スタイラスペン)或いは指(以下、これらを「スティック26等」という場合がある。)で、押圧したり、撫でたり、触れたりすることにより操作(タッチ入力)すると、スティック26等の操作位置の座標を検出して、当該検出座標に対応する座標データを出力する。
【0077】
なお、この実施例では、LCD14(LCD12も同じ、または略同じ。)の表示面の解像度は256dot×192dotである。タッチパネル24の検出精度も表示画面に対応して256dot×192dotとしてあるが、タッチパネル24の検出精度は表示画面の解像度よりも低くてもよく、高くてもよい。
【0078】
LCD12およびLCD14には異なるゲーム画面を表示することができる。たとえば、レースゲームでは一方のLCDに運転席からの視点による画面を表示し、他方のLCDにレース(コース)全体の画面を表示することができる。また、RPGでは、一方のLCDにマップやプレイヤオブジェクト等のキャラクタを表示し、他方のLCDにプレイヤオブジェクトが所有するアイテムを表示することができる。さらに、一方のLCDにプレイヤオブジェクトやノンプレイヤオブジェクトなどを含むゲーム画面を表示し、他方のLCDに当該プレイヤオブジェクトやノンプレイヤオブジェクトに関する情報を含む他のゲーム画面または当該プレイヤオブジェクトを操作するための操作画面を表示することができる。さらには、2つのLCD12およびLCD14を合わせて1つの画面として用いることにより、プレイヤオブジェクトが倒さなければならない巨大な怪物(敵オブジェクト)を表示することもできる。
【0079】
したがって、プレイヤはスティック26等でタッチパネル24を操作することにより、LCD14の画面に表示されるプレイヤオブジェクト、敵オブジェクト、アイテムオブジェクト、操作オブジェクトなどの画像を指示(操作)したり、コマンドを選択(入力)したりすることができる。また、仮想ゲーム空間(3次元ゲーム空間)に設けられる仮想カメラ(視点)の方向(視線の向き)を変化させたり、ゲーム画面(マップ)のスクロール(徐々に移動表示)方向を指示したりすることもできる。
【0080】
なお、ゲームの種類によっては、タッチパネル24を用いることにより、その他の入力指示も可能である。たとえば、LCD14上のタッチパネル24において文字,数字,記号等を手書き入力することができる。
【0081】
このように、ゲーム装置10は、2画面分の表示部となるLCD12およびLCD14を有し、いずれか一方(この実施例では、LCD14)の上面にタッチパネル24が設けられるので、2画面(12,14)と2系統の操作部(22,24)とを有する構成になっている。
【0082】
なお、この実施例では、第1のLCD12と第2のLCD14とを縦方向に並べて配置するようにしているが、2つのLCDの配置は適宜に変更され得る。他の実施例では、第1のLCD12と第2のLCD14とを横方向に並べて配置するようにしてもよい。
【0083】
また、この実施例では、2つのLCDを設けるようにしていたが、表示手段としてのLCDの数は適宜変更され得る。他の実施例では、縦長形状の1つのLCDを設けて、表示領域を上下に分けて、2つのゲーム画面をそれぞれの表示領域に表示するようにしてもよいし、あるいは、横長形状の1つのLCDを設けて、表示領域を左右に分割し、2つゲーム画面をそれぞれの表示領域に表示するようにしてもよい。
【0084】
また、スティック26は、たとえば下側ハウジング16bに設けられる収納部(図示せず)に収納することができ、必要に応じて取り出される。ただし、スティック26を設けない場合には、その収納部も設ける必要はない。
【0085】
さらに、ゲーム装置10はメモリカード(またはカートリッジ)28を含み、このメモリカード28は着脱自在であり、下側ハウジング16bの上端面に設けられる挿入部30(図3では点線で示す)に挿入される。図3では省略するが、挿入部30の奥部には、メモリカード28の挿入方向先端部に設けられるコネクタと接合するためのコネクタ32(図4参照)が設けられており、したがって、メモリカード28が挿入部30に挿入されると、コネクタ同士が接合され、ゲーム装置10のCPUコア34(図4参照)がメモリカード28にアクセス可能となる。
【0086】
なお、図3では省略するが、たとえば、下側ハウジング16bにおいて、その裏面には電池収容ボックスが設けられ、下端面(底面)には、音量スイッチおよびイヤフォンジャックなどが設けられ、上端面(天面)には、外部拡張コネクタなどが設けられる。
【0087】
図4はゲーム装置10の電気的な構成を示すブロック図である。この図4を参照して、ゲーム装置10は電子回路基板38を含み、この電子回路基板38には上述のCPUコア34等の回路コンポーネントが実装される。CPUコア34は、バス40を介して前述のコネクタ32に接続されるととともに、RAM42、第1のグラフィック処理ユニット(GPU)44、第2のGPU46、入出カインターフェース回路(以下、「I/F回路」という。)48、LCDコントローラ50および無線通信部58に接続される。
【0088】
コネクタ32には、上述したように、メモリカード28が着脱自在に接続される。メモリカード28は、ROM28aおよびRAM28bを含み、図示は省略するが、ROM28aおよびRAM28bは、互いにバスで接続され、さらに、コネクタ32と接合されるコネクタ(図示せず)に接続される。したがって、上述したように、CPUコア34は、ROM28aおよびRAM28bにアクセスすることができる。
【0089】
ROM28aは、ゲーム装置10で実行すべきゲームのためのゲームプログラム、画像データ(文字やオブジェクトの画像、背景画像、アイテム画像、アイコン(ボタン)画像、メッセージ画像など)およびゲームに必要な音(音楽)のデータ(音データ)等を予め記憶する。RAM(バックアップRAM)28bは、そのゲームの途中データやゲームの結果データなどを記憶(セーブ)する。セーブ用メモリとしてはフラッシュメモリなどが用いられてよい。
【0090】
RAM42は、バッファメモリないしはワーキングメモリとして使用される。つまり、CPUコア34は、メモリカード28のROM28aに記憶されたゲームプログラム、画像データおよび音データ等をRAM42にロードし、ロードしたゲームプログラムを実行する。また、CPUコア34は、ゲームの進行に応じて一時的に生成するデータ(ゲームデータやフラグデータ)をRAM42に記憶しつつゲーム処理を実行する。
【0091】
なお、ゲームプログラム、画像データおよび音データ等は、ROM28aから一度に全部または部分的にかつ順次的に読み出され、RAM42に記憶される。
【0092】
ただし、ゲーム装置10ではゲーム以外の他のアプリケーションが実行されてよく、この場合、メモリカード28のROM28aには、当該アプリケーションについてのプログラムおよび画像データ等の必要なデータが記憶されてよい。また、必要に応じて、音(音楽)データが記憶されてもよい。
【0093】
GPU44およびGPU46は、それぞれ、描画手段の一部を形成し、たとえばシングルチップASICで構成され、CPUコア34からのグラフィックスコマンド(作画命令)を受け、そのグラフィックスコマンドに従って画像データを生成する。ただし、CPUコア34は、グラフィックスコマンドに加えて、画像データの生成に必要な画像生成プログラム(ゲームプログラムに含まれる。)をGPU44およびGPU46のそれぞれに与える。
【0094】
また、GPU44には、第1のビデオRAM(以下、「VRAM」という。)52が接続され、GPU46には、第2のVRAM54が接続される。GPU44およびGPU46が作画コマンドを実行するにあたって必要なデータ(画像データ:ポリゴンやテクスチャ等のデータ)は、GPU44およびGPU46が、それぞれ、第1のVRAM52および第2のVRAM54にアクセスして取得する。
【0095】
なお、CPUコア34は、描画に必要な画像データをGPU44およびGPU46を介して第1のVRAM52および第2のVRAM54に書き込む。GPU44はVRAM52にアクセスして描画のための画像データを作成し、その画像データをVRAM52の描画バッファに記憶する。GPU46はVRAM54にアクセスして描画のための画像データを作成し、その画像データをVRAM54の描画バッファに記憶する。描画バッファとしてはフレームバッファまたはラインバッファ等が採用されてよい。
【0096】
VRAM52およびVRAM54は、LCDコントローラ50に接続される。LCDコントローラ50はレジスタ56を含み、レジスタ56はたとえば1ビットで構成され、CPUコア34の指示によって「0」または「1」の値(データ値)を記憶する。LCDコントローラ50は、レジスタ56のデータ値が「0」である場合には、GPU44によって作成された画像データをLCD12に出力し、GPU46によって作成された画像データをLCD14に出力する。また、LCDコントローラ50は、レジスタ56のデータ値が「1」である場合には、GPU44によって作成された画像データをLCD14に出力し、GPU46によって作成された画像データをLCD12に出力する。
【0097】
なお、LCDコントローラ50は、VRAM52およびVRAM54から直接画像データを読み出したり、GPU44およびGPU46を介してVRAM52およびVRAM54から画像データを読み出したりする。
【0098】
また、VRAM52およびVRAM54はRAM42に設けられてもよいし、あるいはその描画バッファおよびZバッファがRAM42に設けられてもよい。
【0099】
I/F回路48には、操作スイッチ22,タッチパネル24およびスピーカ36a,36bが接続される。ここで、操作スイッチ22は、上述したスイッチ22a,22b,22c,22d,22e,22g,22Lおよび22Rであり、操作スイッチ22が操作されると、対応する操作信号(操作データ)がI/F回路48を介してCPUコア34に入力される。また、タッチパネル24からの座標データがI/F回路48を介してCPUコア34に入力される。さらに、CPUコア34は、ゲーム音楽(BGM)、効果音またはゲームキャラクタの音声(擬制音)などのゲームに必要な音データをRAM42から読み出し、I/F回路48を介してスピーカ36a,36bから当該音を出力する。
【0100】
無線通信部58は他のゲーム装置10や通信機器との間で無線によってデータを送受信するための通信手段である。なお、この実施例で示すゲーム装置10が送受信する微弱電波は、電波法による規制のかからない強度に設定されている。CPUコア34がゲームデータやコマンドなどのデータを無線通信部58に与えると、無線通信部58は、相手方へのデータを無線信号に変調してアンテナから送信する。また、無線通信部58は、相手方からの無線信号を同じアンテナで受信してデータに復調し、当該データをCPUコア34に与える。この無線通信部58を介して、ゲーム装置10は、他のゲーム装置10との間でデータを通信して通信ゲームを実行することが可能である。また、ゲーム装置10は、無線通信部58を介してネットワークに接続することができ、ネットワーク上のサーバからプログラムやデータをダウンロードしたり、ネットワークを介して他のゲーム装置10と通信したりすることが可能である。
【0101】
この実施例では、RPGにおける魔法攻撃のためのタッチ操作の処理にこの発明が適用された場合を説明する。なお、ゲームの種類は適宜変更可能である。
【0102】
図5から図7にはゲーム装置10のメモリマップの一例が示されている。図5はメモリマップのうちプログラム記憶領域200を示す。なお、図5はプログラム記憶領域200の一部を示しており、この記憶領域200にはゲームの実行に必要な他のプログラム、たとえばBGMや効果音を生成し出力するためのサウンド制御プログラム等も記憶される。
【0103】
記憶領域202には第1の表示領域に所定の画像を表示するための第1表示制御プログラムが記憶される。第1の表示領域はLCD12の表示領域に含まれ、たとえば、LCD12の表示領域全体が第1の表示領域であってよいし、その一部の所定領域が第1の表示領域として使用されてもよい。第1の表示領域に表示される所定の画像は任意であるが、たとえば仮想空間画像のような、タッチ操作をしながらであってもユーザに見て欲しいゲームのメインとなる画像であってよい。この実施例のゲームでは、後述のように、魔法発動前のシーンなどが表示される。
【0104】
記憶領域204には第2の表示領域に所定の画像を表示するための第2表示制御プログラムが記憶される。第2の表示領域はLCD14の表示領域に含まれ、たとえば、LCD14の表示領域全体が第2の表示領域であってよいし、その一部の所定領域が第2の表示領域として使用されてもよい。第2の表示領域に表示される所定の画像も任意であり得る。この実施例では、第2の表示領域には、ユーザ操作のインターフェースとなる画像が表示される。この第2の表示領域のグラフィカルユーザインターフェースは、タッチ操作のガイドとなる画像(第2ガイド画像)であってよい。さらに、このガイド画像は、後述の操作種類選択プログラムによって選択された操作種類に応じた画像であってよい。さらにまた、ガイド画像は、後述の表示態様変更プログラムによって変更された表示態様に応じた画像であってもよい。この実施例のゲームでは、後述のように、魔法を発動させるのに必要な操作を行うための魔法陣画像などが表示される。
【0105】
記憶領域206にはタッチパネル24からの検出データに基づいて座標を検出する座標検出プログラムが記憶される。タッチパネル24の出力データには、タッチの有無を示すデータとタッチ位置のX座標およびY座標を示す座標データとが含まれており、この座標検出プログラムによってタッチの有無とタッチ位置の座標が検出される。
【0106】
記憶領域208には対応位置算出プログラムが記憶される。第1の表示領域の一部領域には、タッチパネル24の検出領域を仮想的にイメージとして表示するための仮想イメージ領域が設けられており、対応位置算出プログラムによって、タッチ位置の仮想イメージ領域における対応位置が所定の演算式に従って算出される。タッチ位置と対応位置とは、典型的には1対1の関係を有する。
【0107】
記憶領域210には対応位置表示プログラムが記憶される。このプログラムによって、仮想イメージ領域内の対応位置に所定の画像が表示される。典型的には、対応位置を示す所定画像は、タッチがあるときのみ表示されるが、タッチが無くなったときにも、最後のタッチ位置の対応位置の表示が継続されてもよい。この実施例のゲームでは、後述のように、対応位置を示すカーソル画像が表示される。
【0108】
記憶領域212にはガイド画像表示制御プログラムが記憶される。このプログラムによって、第1の表示領域に設けられる仮想イメージ領域に、タッチ操作のガイドとなるガイド画像(第1ガイド画像)が表示される。このガイド画像は固定的な画像であってよい。あるいは、ガイド画像は、第2の表示制御プログラムによって第2の表示領域に表示されるガイド画像の縮小ガイド画像であってよい。また、ガイド画像は、後述の操作種類選択プログラムによって選択された操作種類に応じた画像であってよい。さらに、ガイド画像は、後述の表示態様変更手段によって変更された表示態様に応じた画像であってもよい。この実施例のゲームでは、後述のように、魔法を発動させるのに必要なタッチ操作のためのガイド画像の縮小画像が表示される。
【0109】
記憶領域214にはガイド画像の表示態様を変更する表示態様変更プログラムが記憶される。たとえば、大きさや位置が変更される。また、表示態様は所定の条件に応じて変更されてよい。さらに、後述のタッチ操作判定プログラムによるタッチ操作の判定に応じて、表示態様が変更されてもよい。この実施例のゲームでは、後述のように、ガイド画像としての魔法陣画像の大きさがユーザの得点やレベルに応じて変更されたり、魔法陣画像の位置がプログラムによって変更されたりする。
【0110】
記憶領域216にはタッチ操作判定プログラムが記憶される。このプログラムによって、座標検出プログラムによって検出された座標に基づいて、所定のタッチ操作があったか否かが判定される。たとえば、後述の操作種類選択プログラムによって選択された操作種類に応じた判定が行われてよい。また、表示態様変更プログラムによる変更に連動した判定が行われてよい。つまり、変更されたガイド画像の表示態様に応じた所定のタッチ操作が行われたか否かが判定されてよい。この実施例のゲームでは、後述のように、タッチパネル24上でガイド画像としての魔法陣画像を左右にこする操作(こすり操作)、魔法陣画像をつつく操作(つつき操作)、魔法陣画像の重なるタイミングに合わせて押す操作(タイミング押し操作)、魔法陣画像を番号順に押す操作(順番押し操作)などが判定される。
【0111】
記憶領域218にはタッチ操作処理プログラムが記憶される。このプログラムによって、タッチ操作判定プログラムによって所定のタッチ操作があったと判定されるときに、所定の処理が実行される。所定の処理は何らかの処理であればよい。たとえば、第1の表示制御プログラムによる表示内容を変更する処理が実行されてよい。この実施例のゲームでは、後述のように、魔法が発動されて敵にダメージが与えられたり、当該魔法のアニメーションが表示されたりする。
【0112】
記憶領域220には判定結果表示プログラムが記憶される。このプログラムによって、タッチ操作判定プログラムによってタッチ操作が所定の条件を満たしたと判定されるときに、第1の表示領域に判定結果が表示される。判定結果は第2の表示領域にも表示されてよい。この実施例のゲームでは、判定結果として、後述のようにミスやOKなどを示す画像が表示されてよい。あるいは、ガイド画像の表示態様の変化や、背景画像の表示態様の変化等によって判定結果が表されてもよい。
【0113】
記憶領域222には操作種類選択プログラムが記憶される。このプログラムによって、現在操作すべきタッチ操作の種類、つまり、入力が要求されるタッチ操作の種類が選択される。操作種類は、ユーザの入力によって選択されてもよいし、所定の条件、ゲーム状況またはゲームの進行等に応じてプログラムによって選択されてもよい。この実施例のゲームでは、後述のように、魔法ごとにタッチ操作の種類が異なるので、魔法の種類(魔法ID)がユーザのタッチ操作によって選択される。
【0114】
図6はメモリマップのうちデータ記憶領域230の一部を示しており、画像データ記憶領域232を示す。画像データ記憶領域232には、下画面ガイド用画像および上画面ガイド用画像が記憶される。下画面ガイド用画像は、第2の表示領域としてのLCD14に表示されるユーザインターフェースとしてのガイド画像である。上画面ガイド用画像は、第1の表示領域としてのLCD12の一部に表示される、つまり、仮想イメージ領域に表示されるガイド画像である。
【0115】
下画面ガイド画像は、魔法陣画像、背景画像、レベル表示画像および入力状態メッセージ画像を含む。魔法陣画像は、ユーザによって所定のタッチ操作がなされる対象となる画像である。なお、この実施例では、魔法陣画像は、ユーザインターフェースの系統によって分類されていて、つまり、ユーザインターフェースの系統ごとに異なる魔法陣画像が準備され予め記憶されている。系統は、実行すべきタッチ操作の種類、すなわち、魔法の種類(魔法ID)に対応付けられる。したがって、選択された魔法IDによってユーザインターフェースの系統を特定し、当該系統によって魔法陣画像を特定することができる。たとえば、後述のこすり操作、つつき操作およびタイミング操作は第1系統であり、円形の魔法陣画像が使用される。また、順番押し操作は第2系統であり、番号付の魔法陣画像が使用される。
【0116】
背景画像、レベル表示用画像および入力状態メッセージ画像については、この実施例では全系統に共通の画像が使用される。背景画像は第2の表示領域に魔法陣画像等を表示する際の背景となる画像である。レベル表示用画像は、ユーザのレベルに関する画像であり、後述のレベルアップ画像や現レベル値を示すレベル画像などを含む。入力状態メッセージ画像は、ユーザのタッチ操作の状態を示す画像であり、後述のミス画像、ナイス画像、OK画像、グッド画像などを含む。なお、魔法陣画像、背景画像、レベル表示用画像または入力状態メッセージ画像は、魔法IDごとに準備されてもよい。
【0117】
上画面ガイド画像もまた、魔法陣画像、背景画像、レベル表示用画像および入力状態メッセージ画像を含む。上画面ガイド画像は、下画面ガイド画像が表示される場合、当該下画面ガイド画像に対応する画像である。上画面の場合と同様に、魔法陣画像は、ユーザインターフェースの系統に対応付けて記憶され、一方、背景画像、レベル表示用画像および入力状態メッセージ画像は全系統で共用される。このように、上画面用の魔法陣画像は下画面用の魔法陣画像に対応付けて記憶される。この実施例では、第1系統の魔法陣画像は円形であり、第2系統の魔法陣画像は番号である。この上画面用の魔法陣画像は下画面用の魔法陣画像の縮小画像であってよい。背景画像は、仮想イメージ領域に魔法陣画像等を表示する際の背景となる画像である。レベル表示用画像は、ユーザのレベルに関する画像であり、後述のレベル値を示すレベル画像を含む。入力状態メッセージ画像は、ユーザのタッチ操作の状態を示す画像であり、後述のOK画像などを含む。
【0118】
画像データ記憶領域232には、さらにカーソル画像、キャラクタ画像、および魔法アニメーションなどが記憶される。
【0119】
カーソル画像は、ユーザのタッチ位置に対応する位置を示すための画像であり、仮想イメージ領域における対応位置に表示される。キャラクタ画像は、仮想ゲーム空間に登場するプレイヤキャラクタおよび敵キャラクタなどを示す画像である。
【0120】
魔法アニメーションは、選択された魔法を実行する際に表示されるアニメーションデータであり、魔法IDごとに準備され予め記憶される。この魔法アニメーションは、ユーザによってタッチ操作が行われているときに表示される魔法発動前のプレイヤキャラクタを含むシーンを示すアニメーション、およびタッチ操作に成功した後に表示されるプレイヤキャラクタが魔法を実行しているシーンを示すアニメーションを含む。
【0121】
図7はメモリマップのうちデータ記憶領域230の他の一部を示す。タッチ位置記憶領域234は、座標検出プログラムによって検出されたタッチ位置の座標を示す座標データを記憶する。この記憶領域234には、タッチ位置の履歴が記憶されてよい。たとえばタッチパネル24への入力の開始が検出されたフレームから入力の終了が検出されたフレームまでの全座標が記憶されてよい。
【0122】
記憶領域236には選択された魔法の識別情報を示す魔法IDが記憶される。この魔法IDはまた、操作種類選択プログラムによって選択されたタッチ操作の種類を示す。
【0123】
記憶領域238には、画像を表示するために生成されたオブジェクトデータが記憶される。オブジェクトの生成によって、画像を管理するための構造体にパラメータが設定され、プログラム上で画像を管理できる状態にすることができる。オブジェクトデータとして、下画面ガイド用オブジェクト、上画面ガイド用オブジェクト、カーソルオブジェクト、敵キャラクタ、プレイヤキャラクタなどが生成されて記憶される。下画面ガイド用オブジェクトおよび上画面ガイド用オブジェクトはそれぞれ、魔法陣オブジェクト、レベル表示用オブジェクト、入力状態メッセージ用オブジェクト等を含む。オブジェクトのパラメータは、座標、オブジェクトサイズ、拡大率、パレット、画像アドレス、プライオリティ、回転角度等を含む。なお、座標は、表示領域における表示位置を示す座標であるが、仮想3次元空間におけるオブジェクトの位置を示す座標であってもよい。オブジェクトサイズは、オブジェクトの表示範囲の大きさである。拡大率は、オブジェクトの画像データの拡大率である。パレットは、オブジェクトの画像データの色情報のRGB値を指定するデータである。画像アドレスは、オブジェクトの画像データが記憶されている領域のアドレスである。プライオリティは、オブジェクトの画像を表示する際の優先順位である。回転角度は、オブジェクトの画像を表示する際の画像データの回転角度である。
【0124】
記憶領域240には、ユーザのタッチ操作に対して与えられるポイントが記憶される。ポイントはタッチ操作に応じて増加または減少される。また、記憶領域242には、ユーザのタッチ操作のレベルが記憶される。レベルはポイントから算出される。また、記憶領域244には、各種フラグおよびカウンタ等が生成され記憶される。
【0125】
なお、図6および図7は、データ記憶領域230の一部を示しており、データ記憶領域230にはゲームの実行に必要な各種データが記憶される。たとえば、BGMや効果音を生成し出力するためのサウンドデータ、プレイヤキャラクタおよび敵キャラクタのHP(体力値)、MP(魔法力値)、装備、アイテム等のデータなどである。
【0126】
この実施例のゲームでは、魔法コマンドによる攻撃を実行するためにユーザは所定のタッチ操作を行うことが要求される。たとえば仮想ゲーム空間のシーンを示す画像やアニメーションのような主要なゲーム画像は、LCD12に表示されるが、ユーザは、要求されるタッチ操作を行うときには、手元のタッチパネル24を見てしまう傾向がある。タッチパネル24がこの実施例のようなタッチスクリーンでなくても、ユーザは手元を見てしまいがちであるが、この実施例のように、タッチパネル24がタッチスクリーンとして構成されて、当該タッチスクリーンにグラフィカルユーザインターフェースとしてタッチ操作のガイドとなる画像が表示される場合には、その傾向がより強くなり、ユーザは、タッチ操作を行う際には、タッチパネル24とは別の位置にあるLCD12に表示されている主要なゲーム画像を見ることが困難であった。
【0127】
そこで、この実施例は、第1の表示領域としてのLCD12の一部領域に仮想イメージ領域を設けて、当該仮想イメージ領域において、ユーザのタッチ位置に対応する位置を示す画像を表示するように構成される。
【0128】
実施例のゲームについて、画面の図解図を参照しながら説明する。まず、プレイヤキャラクタに対するコマンドの選択が行われる。図8はコマンド選択画面の一例を示す。LCD14には、魔法の実行を指示する魔法ボタン300を含む複数のコマンドボタンが表示される。魔法の他に、攻撃、スキル、道具などのコマンドが選択可能になっている。LCD14の下端には、「コマンドを選んでください」とプレイヤに対する指示が表示されている。魔法ボタン300がタッチ(選択)されると、魔法の種類を選択するために種類選択画面(図9)が表示される。
【0129】
なお、図8のように、複数のプレイヤキャラクタ302a−302cが戦闘に参加する場合には、各プレイヤキャラクタ302a−302cに対するコマンドの選択が順に行われる。図8では真ん中のプレイヤキャラクタ302a(名前がロコス)に対する選択が行われている。LCD14で、3人のプレイヤキャラクタ302a−302cの向かいに並んでいるのは、複数の敵キャラクタ304a−304cである。一方、LCD12には、仮想ゲーム空間における3人のプレイヤキャラクタ302a−302cを示す画像が表示される。プレイヤキャラクタ302aについての選択を行っているので、プレイヤキャラクタ302aがLCD12の画面中央に表示される。なお、プレイヤキャラクタを包括的に参照符号「302」を用いて示し、敵キャラクタを包括的に参照符号「304」を用いて示すこともある。
【0130】
図9は種類選択画面の一例を示す。LCD14には、複数種類の魔法を含むリスト306が表示されており、下端には、「リストから使用する魔法を選んで下さい」とプレイヤに対する指示が表示されている。プレイヤはリスト306からプレイヤキャラクタ302に実行させる魔法の種類を選択することができる。各魔法に割り当てられた枠内領域がタッチされると、当該魔法が仮選択され、種類確認画面(図10)が表示される。
【0131】
なお、図9のリストにおいて、魔法バーンは、後述のこすり操作の魔法であり、魔法ライザー、クエスおよびアイスはそれぞれ、後述のつつき操作、タイミング押し操作および順番押し操作の魔法である。また、LCD14の左下隅には戻りボタン308が表示されている。戻りボタン308は1つ前の画面に戻すためのものである。
【0132】
図10は種類確認画面の一例を示す。LCD14の中央には、選択された魔法の名前および作用の説明が表示されており、プレイヤは前画面で選択した魔法を確認することができる。図10は、魔法バーンが選択された場合を示しており、「炎で焼き尽くす」との説明がある。また、LCD14の下端には、「決定すると次へ進みます」とプレイヤに対する指示が表示されている。説明の下には決定ボタン310が表示される。決定ボタン310がタッチされると、魔法攻撃の対象を選択するための対象選択画面(図11)が表示される。
【0133】
図11は対象選択画面の一例を示す。LCD14の下端には、「パネルから対象を選んでください」とプレイヤに対する指示が表示されている。敵キャラクタ304a−304cは、2×5のパネルのいずれかに配置されるので、プレイヤは、敵キャラクタ304の配置されたパネルをタッチすることによって、当該パネルに対応する敵キャラクタ304を魔法攻撃の対象として選択することができる。図11では、真ん中の敵キャラクタ304aに割り当てられたパネル312の色が変更されており、その選択が表現されている。攻撃対象の選択が終了すると、戦闘の開始を確認するための開始確認画面(図12)が表示される。なお、複数のプレイヤキャラクタ302が存在する場合には、全プレイヤキャラクタ302について、魔法の選択から攻撃対象の選択までの一連の選択処理が完了したときに、開始確認画面に遷移する。
【0134】
図12は開始確認画面の一例を示す。LCD14の下端中央には、「戦闘を始めますか?」との質問が表示され、その右に回答のためのはいボタン314、およびいいえボタン316が表示される。なお、プレイヤキャラクタ302cの選択が最後に行われるので、LCD12では、プレイヤキャラクタ302cが画面中央に表示されている。はいボタン314がタッチされると、選択された魔法の種類に対応する魔法処理が実行され、戦闘が開始される。
【0135】
戦闘場面では、選択された魔法の種類に応じた所定のタッチ操作がプレイヤに要求される。当該魔法に応じた所定のタッチ操作のガイドとなる画像がLCD12の表示領域に設けられた仮想イメージ領域に表示される。
【0136】
図13はこすり操作の魔法の処理において表示される画面の一例を示す。LCD14にはこすり操作のガイドとなる魔法陣400が表示される。この魔法陣400の表示位置は所定の座標(画面中央など)に予め決められている。なお、魔法陣400は背景画像の上に表示されている。LCD14の上端には、「魔法陣の上を左右にこするんだ!」と要求されている操作の内容が表示される。このこすり操作は、タッチパネル24を連続的に触りながら、そのタッチ位置を左右方向に反復移動させる操作である。
【0137】
一方、LCD12には仮想イメージ領域402が設けられる。仮想イメージ領域402の表示位置は所定の座標に予め決められており、この図13では画面右下隅である。仮想イメージ領域402の配置は適宜変更可能であるが、LCD12に表示される主要な画像をよく見ることができるように、配置はたとえば画面の周縁部であることが望ましい。また、仮想イメージ領域402の大きさも所定の大きさに予め決められており、この実施例ではLCD14の表示領域の1/3程度の大きさに設定される。
【0138】
この仮想イメージ領域402は、LCD14のガイド画像に対応するガイド画像を表示するための領域である。仮想イメージ領域402には、背景画像が表示されており、当該背景画像の上に魔法陣404が表示される。仮想イメージ領域402における魔法陣404の表示位置は、下画面における魔法陣400の表示位置に対応する位置に予め決められている。また、この実施例では、仮想イメージ領域402における魔法陣404は、下画面における魔法陣400の縮小画像であり、仮想イメージ領域402における魔法陣404の大きさは、下画面における魔法陣400の大きさに対応するように予め決められている。
【0139】
さらに、この仮想イメージ領域402には、プレイヤによるタッチ位置を示すカーソル406が表示される。つまり、カーソル406は、タッチパネル24で検出された座標の、仮想イメージ領域402における対応位置に表示される。したがって、プレイヤは、仮想イメージ領域402を含むLCD12を見ることによって、タッチパネル24に対するタッチ操作の位置を把握できる。
【0140】
対応位置の算出の概要が図14に示される。LCD12の表示位置のためのXY座標系は、LCD14の表示位置およびタッチパネル24の検出位置のためのXY座標系に対応しており、原点は所定の位置(この実施例では左上隅)に規定され、スケールも同一にされる。また、この実施例では、仮想イメージ領域402の大きさは、上述のように、LCD14およびタッチパネル24の1/3に設定されている。つまり、LCD14およびタッチパネル24の縦の長さがa、横の長さがbとすると、仮想イメージ領域402の縦の長さはa/3、横の長さはb/3である。さらに、仮想イメージ領域402の基準点は、LCD14およびタッチパネル24の原点と対応する位置(領域402の左上隅)に設定される。この場合、仮想イメージ領域402の基準点の座標を(Xv,Yv)、ユーザ操作のタッチ位置の座標を(Xt,Yt)とすると、仮想イメージ領域402におけるタッチ位置の対応位置の座標(Xc,Yc)は次の数1に従って算出される。
[数1]
(Xc,Yc)=(Xv+Xt/3,Yv+Yt/3)
なお、Xt,Ytの係数(1/3)は、仮想イメージ領域402とタッチパネル24の大きさの比に応じて設定される。
【0141】
また、図13に戻って、この実施例では、プレイヤによるタッチ操作のレベルを示す画像が常にLCD12に表示される。このレベル表示用画像は、仮想イメージ領域404より上方の所定位置に表示される。たとえば、ポイントに応じて指針が動くレベルゲージ408aと現レベル値(レベル1)を示すレベル画像408bとが表示される。
【0142】
また、LCD12には、メイン画像として仮想ゲーム空間の様子が示される。この実施例では、魔法発動前のアニメーションが表示され、たとえばプレイヤキャラクタ302が魔法を発動させるための準備をしている様子が表示される。なお、この実施例では、仮想ゲーム空間は3次元であり、図13ではLCD12に仮想3次元画像が示されるが、仮想ゲーム空間は2次元であってもよい。また、図13では、魔法を発動しようとしているプレイヤキャラクタ302の下に、当該プレイヤキャラクタ302のHPおよびMPを示す棒グラフも表示されている。
【0143】
このように、プレイヤに見てもらいたい主要な画像のような所定の画像が表示されるLCD12に、仮想イメージ領域402を設けて、当該仮想イメージ領域402に、タッチ操作のガイド画像(魔法陣404)とともに、タッチ位置の対応位置を示す画像(カーソル406)を表示するようにした。したがって、プレイヤは手元のタッチパネル24およびLCD14のガイド画像を見なくても、LCD12の画像を見ながらタッチ操作を容易に行うことができる。
【0144】
この魔法処理では、プレイヤが魔法陣400の上を左右にこすったか否かが判定される。所定の判定条件が満足されて、魔法陣400が左右にこすられたと判定される場合には、ポイントが加算される。そして、たとえばポイントの閾値判定によってレベルが算出される。レベルが上がったときには、ガイド画像の表示態様が変更される。なお、レベルが上がれば上がるほど、魔法攻撃の威力が増す。
【0145】
図15はレベル1からレベル2に上がったときの画面の一例を示す。レベルが上がると、こすり操作の難易度を上げるために、LCD14に表示される魔法陣400の大きさが縮小されるとともに、仮想イメージ領域402に表示される魔法陣404の大きさも縮小される。魔法陣400の画像および魔法陣404の画像の縮小率すなわち拡大率は、この実施例ではレベルに応じて予め決められている。
【0146】
また、レベルが上がったとき、LCD14では、レベルアップ画像410がさらに表示される。また、このレベルアップ画像410が一定時間表示された後には、図示は省略するが、現レベル値(レベル2)を示す画像が表示される。なお、この実施例では、レベルアップごとに現レベル値を示すレベル画像を一定時間LCD14に表示するようにしているが、他の実施例では、最大レベルになったときや操作ミスと判定されたときなど、魔法発動条件が満足されたときのみ、現レベル値(魔法の実行レベルとなる)を示すレベル画像を一定時間LCD14に表示するようにしてよい。一方、LCD12では、レベルゲージ408aにおいて指針がポイント増加に応じて右に移動するとともに、現レベル値(レベル2)を示すレベル画像408bが表示される。
【0147】
図16はレベル3になった場合の画面の一例を示す。LCD14における魔法陣400の大きさ、および仮想イメージ領域402における魔法陣404の大きさは、レベルに応じてさらに縮小されている。また、LCD14には、現レベル値(レベル3)を示すレベル画像412が表示されている。なお、このレベル画像412は、レベルアップ画像410の表示後に一定時間表示される。さらに、LCD12においても、レベルゲージ408aとともに、現レベル値(レベル3)を示すレベル画像408bの表示も変更される。レベルゲージ408aにおいては、レベルが最大になったとき、最大レベルであることを示すためにレベルゲージ408aの色は白色から虹色等に変更されてよい。
【0148】
このようにして、こすり操作が継続されてレベル値が最大になったときには、こすり操作の魔法が発動されることとなる。
【0149】
また、この実施例では、こすり操作をミスしたと判定されるときにも、こすり操作の魔法が発動される。タッチ位置の変化の挙動からプレイヤが魔法陣400の上を左右にこすっていないと判定される場合には操作ミスと判定される。また、一定時間経過してもポイントが加算されない場合には、所定のこすり操作が行われていないとみなせるので、ポイントを減算する。この減点に応じてレベルが低下した場合にも、操作ミスと判定される。
【0150】
図17は操作ミスと判定されたときの画面の一例を示す。LCD14には、操作ミスを示すミス画像414が一定時間表示される。一方、LCD12では、レベルゲージ408aにおいて指針がポイント減少に応じて左に移動するとともに、低下したレベル値(レベル2)を示すレベル画像408bが表示される。操作ミスの場合、魔法は、低下したレベル値で発動されることとなる。
【0151】
なお、この実施例では、レベルがアップしたときにレベルアップ画像410をLCD14に表示するようにしたが、他の実施例では、LCD14には、レベルがダウンしたときにも、レベルダウンを示す画像を一定時間表示するようにしてよい。そして、レベルダウン画像の表示後、魔法の実行レベルとなる現レベル値を示すレベル画像を一定時間表示するようにしてよい。
【0152】
図18はつつき操作の魔法の処理において表示される画面の一例を示す。つつき操作の魔法でも、こすり操作の場合と同様な表示が行われる。つまり、LCD14の所定位置には、つつき操作のガイドとなる魔法陣400が表示される。一方、LCD12には、仮想イメージ領域402が表示され、仮想イメージ領域402内には魔法陣404が表示され、仮想イメージ領域402の上方にはレベルゲージ408aとレベル画像408bが表示される。さらに、仮想イメージ領域402にはタッチ位置に対応するカーソル406が表示される。また、LCD12にはプレイヤキャラクタ302を含む仮想ゲーム空間画像のような所定の画像が表示される。
【0153】
LCD14の上端には、「魔法陣の内側を連打連打連打!」と要求されている操作の内容が表示される。このつつき操作は、タッチパネル24に触れてから離れることを繰返す操作であり、つまり、タッチパネル24を何度も突くような操作である。
【0154】
魔法処理では、このつつき操作が行われたか否かが判定される。プレイヤによって魔法陣400の内側がつつかれたと判定される場合に、ポイントが加算される。ポイントからレベルが算出され、レベルに応じてガイド画像の表示態様が変更される。図示は省略するが、上述のこすり操作の場合と同様に、魔法陣400および魔法陣404の大きさがレベルに応じて変更される。また、レベルが上がったときには、レベルアップ画像410やレベル画像412が表示される。レベルが最大になれば、魔法が発動される。
【0155】
一方、魔法陣400の外側がタッチされた場合には、操作ミスと判定される。また、一定時間が経過してもポイントが加算されなかった場合にはポイントが減算される。そして、レベルが低下した場合にも、操作ミスと判定される。操作ミスと判定されたときには、上述のこすり操作の場合と同様に、ミス画像414表示されて、その後に魔法が発動される。
【0156】
図19は、タイミング押し操作の魔法の処理において表示される画面の一例を示す。このタイミング押し操作の魔法では、複数(この実施例では2つ)の魔法陣400がLCD14に表示される。複数の魔法陣400のそれぞれは、時間経過によってその表示態様を変更するものであり、それぞれの所定の軌道上を移動し、或る瞬間にすべての魔法陣400が一箇所で重なるように制御される。なお、この実施例では、表示態様として魔法陣400はその位置のみを変更しているが、他の実施例では、上述のこすり操作やつつき操作と同様に、レベルに応じて大きさもさらに変更されてよい。
【0157】
LCD14の上端には、「重なった瞬間に魔法陣をタッチ!」と要求される操作内容が表示される。このタイミング押し操作は、所定のタイミングで、すなわち、全魔法陣400が重なるタイミングで、魔法陣400を触る操作である。
【0158】
一方、LCD12には、上述の各操作の魔法と同様に、仮想イメージ領域402が設けられており、当該仮想イメージ領域402には、LCD14における複数の魔法陣400に対応する位置に、複数の魔法陣404がそれぞれ表示される。つまり、魔法陣404は、LCD14における魔法陣400の移動に合わせて、仮想イメージ領域402内を移動する。
【0159】
なお、図19では表示されていないが、プレイヤによってタッチ操作が行われたときには、仮想イメージ領域402内のタッチ位置に対応する位置にカーソル406が表示されることとなる。また、LCD12には、上述の各操作の魔法と同様に、レベルゲージ408a、およびレベル画像408bが表示される。さらに、LCD12には、プレイヤキャラクタ302を含む仮想ゲーム空間を示す画像がメイン画像として表示される。たとえば、プレイヤキャラクタ302が魔法を発動しようと準備するようなシーンがアニメーションによって表示される。
【0160】
タイミング押し操作の魔法処理では、全魔法陣400が重なっているタイミングで魔法陣400の内側がタッチされたか否かが判定される。全魔法陣400が重なったタイミングにおいてタッチ位置が魔法陣400の内側がであったと判定される場合には、ポイントが加算される。ポイントに基づいてレベルが算出される。なお、レベルが上がった場合には、魔法陣400および魔法陣404がより複雑な軌道上を移動したり移動速度を速めたり重なっている時間を短くしたりするような表示態様変更が行われてもよい。そして、レベルが最大になった場合には魔法が発動される。
【0161】
図20は2つの魔法陣400が重なった状態でタッチされたときの画面の一例を示す。LCD14では、2つの魔法陣400が画面の略中央で重なっている。LCD12では、2つの魔法陣404が仮想イメージ領域402の略中央で重なっている。さらに、仮想イメージ領域402内では、タッチ位置に対応する位置にカーソル406が表示される。また、LCD14には、魔法陣400の重なった状態でのタッチに成功したことを示すナイス画像416がたとえば画面中央に一定時間表示される。
【0162】
一方、全魔法陣400が重なっていない状態でタッチパネル24がタッチされたときには、操作ミスと判定される。また、全魔法陣400が重なったのに魔法陣400がタッチされなかったことが一定回数生じた場合、つまり、操作タイミングを一定回数見逃した場合にも、操作ミスと判定される。操作ミスと判定されたときには、上述の各操作の魔法の場合と同様に、LCD14の所定位置にはミス画像414が表示され、その表示後に、魔法が発動されることとなる。
【0163】
図21は、順番押し操作の魔法の処理において最初に表示される画面の一例を示す。LCD14には、この順番押し操作のガイドとなる複数(この実施例では3つ)の魔法陣400が表示される。複数の魔法陣400のそれぞれには1番からの通し番号が付与されており、魔法陣400内には当該付与された番号が表示される。
【0164】
LCD14の上端には、「番号の順番通りに魔法陣をタッチ!」と要求される操作の内容が表示されている。つまり、この順番押し操作は、表示されている全ての魔法陣400を番号順にタッチする操作である。
【0165】
複数の魔法陣400の配置可能な場所は、それぞれが重ならないように予め決められている。この実施例では、表示される魔法陣400の数が4以下の場合、LCD14の4隅が配置場所として選ばれている。
【0166】
また、レベルが最大になるまで、複数の問題がプレイヤに対して提示される。問題ごとに複数の魔法陣400の配置が異なるように、複数の問題の配置は予め決められていてよいし、あるいはランダムに決められてよい。
【0167】
一方、LCD12には、上述の各操作の魔法の場合と同様に、仮想イメージ領域402が設けられる。この仮想イメージ領域402内には、LCD14における複数の魔法陣400の配置と同じ配置になるように、複数の魔法陣404が表示される。仮想イメージ領域402における各魔法陣404の画像としては、その付与されている番号が表示される。
【0168】
また、図21では表示されていないが、タッチパネル24がタッチされたときには、上述の各操作の魔法の場合と同様に、仮想イメージ領域402内にはタッチ位置に対応するカーソル406が表示される(たとえば図22参照)。さらに、仮想イメージ領域402の上方には、レベルゲージ408aおよびレベル画像408bも、上述の各操作の魔法の場合と同様に表示される。さらにまた、LCD12には、プレイヤキャラクタ302を含む仮想ゲーム空間のシーンを示す画像も、上述の各操作の魔法の場合と同様に表示される。
【0169】
この魔法処理では、正解番号の魔法陣400がタッチされたか否かが判定される。具体的には、タッチ位置が、正解番号の魔法陣400すなわち現在押されるべき番号の魔法陣400内であるか否かが判定される。正解番号の魔法陣400がタッチされたと判定されるときには、図22に示すように、LCD14ではタッチ位置にOK画像418が表示される。なお、正解された魔法陣400内の番号が消去される。また、LCD12の仮想イメージ領域402では、正解された魔法陣404が消去されるとともに、正解を示す矩形画像420が表示される。また、タッチ位置に対応する位置にカーソル406が表示される。
【0170】
最後まで正解番号の魔法陣400がタッチされ続けた場合には、その問題の順番押し操作に成功したと判断され、ポイントが加算されてレベルがアップする。図23に示すように、LCD14では、最後にタッチされた魔法陣400内のタッチ位置にはグッド画像422が表示されるとともに、中央にレベルアップ画像410が表示される。一方、LCD12の仮想イメージ領域402では、操作成功を表すために背景画像の色がたとえば黒から青色に変更されるとともに、最後に正解された魔法陣400に対応する位置に正解を示す矩形画像420、およびタッチ位置に対応する位置にカーソル406が表示される。
【0171】
レベルアップによって、問題が変更されて、番号付き魔法陣400の配置が変更される。配置場所だけでなく魔法陣400の数も変更されてよい。そして、プレイヤには、変更された問題に対しての順番押し操作が要求される。レベルが最大になった場合には、魔法が発動される。
【0172】
一方、正解番号の魔法陣400がタッチされなかったときには、操作ミスと判定される。図24では、正解番号は1であって右上隅の魔法陣400がタッチされなければならないが、番号が2である左上隅の魔法陣400がタッチされている。このように、タッチ位置が現在タッチされるべき魔法陣400外の位置であったときには、LCD14では、タッチ位置にミス画像414が表示される。一方、LCD12の仮想イメージ領域402では、操作ミスと判定されたことを表すために背景画像の色がたとえば黒から赤色に変更される。また、タッチ位置に対応する位置にカーソル406が表示される。
【0173】
また、問題には制限時間が設けられてよく、この場合、順番押し操作が完了せずに制限時間が経過したとき操作ミスと判定される。操作ミスと判定された場合にも、魔法が発動される。
【0174】
このようにして、それぞれの種類のタッチ操作が行われて魔法発動条件が満足されると、図25に示すように、LCD12には選択された魔法が実行されるシーンを示すアニメーションが表示される。図25は一例としてタイミング押し操作の魔法のアニメーションを示す。魔法実行中にはタッチ操作ができないので、LCD12には仮想イメージ領域402は表示されず、LCD14にもガイド画像は表示されない。魔法の実行によって、敵キャラクタ304には、魔法の種類とレベルとに応じたダメージが与えられる。
【0175】
図26にはゲーム装置10の動作の一例が示される。処理が開始されると、ステップS1で、CPUコア34はGPU44および46等を用いて図8に示すようなコマンド選択画面を生成してLCD12および14に表示する。
【0176】
なお、上述のように、描画処理では、CPUコア34からの作画命令を受けたGPU44または46が、画像データ記憶領域232の画像データおよびオブジェクトデータ記憶領域238のオブジェクトデータ等に基づいてVRAM52および54の描画バッファに画面に表示するための画像データを生成する。また、表示更新処理では、CPUコア34の制御下のLCDコントローラ50がVRAM52および54の描画バッファの画像データに基づいてLCD12および14に画像を表示する。
【0177】
次にステップS3で、CPUコア34は魔法のコマンドが選択されたか否かを判断する。なお、具体的には、タッチ位置の座標が魔法ボタン300内の座標であるか否かが判断される。
【0178】
なお、図26では省略されているが、タッチパネル24で検出された座標データは、データ記憶領域230のタッチ位置データ記憶領域234に一定時間(たとえば1フレーム)ごとに取得されている。また、画面におけるボタンやリストなどの選択領域の座標もデータ記憶領域230に記憶されている。したがって、タッチ位置の座標と選択領域の座標とに基づいて、選択の判定を行うことができる。なお、選択が十字スイッチ(十字キー)22aによって移動されるカーソルによって行われる場合には、カーソルの座標に基づいて判定が行われる。
【0179】
ステップS3で“NO”の場合、つまり、魔法以外のコマンドが選択されたときには、当該コマンドに対応付けられた処理が実行される。なお、図26は魔法処理までの流れを簡単に説明するために他のコマンドに関する処理等は省略している。
【0180】
ステップS3で“YES”の場合、ステップS5で、CPUコア34はGPU44および46等を用いて図9に示すような種類選択画面を生成してLCD12および14に表示する。
【0181】
続いて、ステップS7で、CPUコア34はリスト306のいずれかの種類が選択されたか否かを判断する。ステップS7で“NO”の場合、つまり、戻りボタン308が選択された場合には、処理はステップS1からのコマンド選択に戻る。
【0182】
一方、ステップS7で“YES”の場合には、つまり、タッチ位置がリスト306内の座標であった場合には、ステップS9で、CPUコア34は選択された種類を特定して、当該種類を魔法IDとして魔法ID記憶領域236に記憶する。なお、魔法ごとにタッチ操作の種類が異なるので、ここでは、魔法の種類によってタッチ操作の種類が選択されている。
【0183】
続いて、ステップS11で、CPUコア34はGPU44および46等を用いて図10に示すような種類確認画面を生成してLCD12および14に表示する。ステップS13で、CPUコア34は、決定ボタン310が選択されたか否かを判断する。ステップS13で“NO”の場合、つまり、戻りボタン308が選択された場合には、処理はステップS5からの種類選択に戻る。
【0184】
一方、ステップS13で“YES”の場合、ステップS15でCPUコア34はGPU44および46等を用いて図11に示すような対象選択画面を生成してLCD12および14に表示する。ステップS17では、CPUコア34は魔法攻撃の対象が選択されたか否かを判断する。ステップS17で“NO”の場合、つまり、戻りボタン308が選択された場合には、処理はステップS11からの種類確認に戻る。
【0185】
ステップS17で“YES”の場合、つまり、敵キャラクタ304の配置されているパネル312が選択された場合には、CPUコア34はステップS19で攻撃の対象として選択された敵キャラクタ304を特定してデータ記憶領域230に記憶する。
【0186】
なお、図26では省略しているが、複数のプレイヤキャラクタ302が登場する場合、全プレイヤキャラクタ302について、ステップS1からS19までの処理を繰り返して、コマンド、種類および対象等の設定を行う。全プレイヤキャラクタ302について設定を完了すると、CPUコア34はステップS21でGPU44およびGPU46等を用いて図12に示すような開始確認画面を生成してLCD12および14に表示する。
【0187】
ステップS23では、CPUコア34は開始を指示するはいボタン314が選択された否かを判断する。なお、図26は、はいボタン314以外の選択の場合にはステップS1に処理を戻すように簡略化して記載される。実際には、たとえば、いいえボタン316が選択された場合には、ステップS1からのコマンド等の設定をすべてキャンセルして最初からやり直すようにしてよい。あるいは、戻りボタン308が選択された場合には、処理をステップS15に戻して、1つ前の対象選択画面に戻るようにしてもよい。
【0188】
ステップS23で“YES”の場合、つまり、はいボタン314が選択された場合には、CPUコア34は、ステップS25で、魔法IDに対応する魔法処理を実行する。魔法処理では、プレイヤは、選択した魔法の種類に対応するタッチ操作を行い、魔法を発動させる。なお、複数のプレイヤキャラクタ302についてコマンドとして魔法が選択された場合には、複数のプレイヤキャラクタ302のそれぞれの魔法処理が順に実行される。
【0189】
記憶領域236に記憶される魔法IDがこすり操作を示す場合、ステップS25ではこすり操作の魔法処理が実行される。図27から図29に、こすり操作の魔法処理の動作の一例が示される。CPUコア34は、まずステップS41で初期UI描画処理を実行する。この初期UI描画処理によって魔法IDに対応する初期のガイド画像が描画される。初期UI描画処理の動作の一例が図30および図31に示される。
【0190】
図30の最初のステップS201で、CPUコア34は、記憶領域236に記憶された魔法IDからUI(ユーザインターフェース)の系統を決定する。UIの系統はタッチ操作の種類としての魔法IDに予め対応付けられている。この実施例では、こすり操作、つつき操作およびタイミング押し操作は第1系統UIに対応付けられており、順番押し操作は第2系統UIに対応付けられている。
【0191】
次に、ステップS203で、CPUコア34はUIの系統に対応する画像データをROM28aからRAM42に読み込み、画像データ記憶領域232に記憶する。なお、この実施例では、魔法陣画像がUIの系統に対応付けて記憶されており、その他の背景画像、レベル表示用画像、入力状態メッセージ画像は共通である。
【0192】
続いて、CPUコア34は、ステップS205で、上画面ガイド用の画像データを上画面のVRAM52に転送し、下画面ガイド用の画像データを下画面のVRAM54に転送する。なお、上述のように、LCDコントローラ50は、レジスタ56の値に応じてVRAM52およびVRAM54の描画バッファの画像の出力をLCD12およびLCD14の間で切替えることができるが、ここでは、レジスタ56の値が0に設定されている場合を説明する。つまり、VRAM52の描画バッファの画像はLCD12に出力され、VRAM54のそれはLCD14に出力されるので、このステップS205では、上画面ガイド用の画像データはVRAM52に、下画面ガイド用の画像データはVRAM54に転送される。また、タッチ位置の対応位置を示すカーソル画像等も読み出されて上画面のVRAM52に転送されてよい。
【0193】
ステップS207では、CPUコア34は、GPU46を用いて下画面ガイド用の背景画像を下画面のVRAM54の描画バッファに描画する。
【0194】
続いて、ステップS209で、CPUコア34は、下画面ガイド用の魔法陣オブジェクト、レベル表示用オブジェクト、入力状態メッセージ用オブジェクトを生成する。具体的には、データ記憶領域230の記憶領域238に、各オブジェクトについてのオブジェクトデータを生成する。オブジェクトデータのパラメータは、座標、オブジェクトサイズ、拡大率、パレット、画像アドレス、プライオリティ、回転角度等を含んでおり、これらパラメータに初期値等が設定される。なお、初期の下画面では、レベル表示用オブジェクトや入力状態メッセージ用オブジェクトは表示されない。このような画面に表示されないオブジェクトの座標パラメータには、表示しないことを示す値が設定され、GPU44および46はこのオブジェクトデータにより当該オブジェクトの画像を描画せず、または描画バッファから当該画像を消去する。
【0195】
ステップS211では、CPUコア34は、記憶領域に記憶された魔法IDがこすり操作、つつき操作、またはタイミング押し操作を示すか否かを判断する。ステップS211で“YES”の場合、つまり、UIの系統が第1系統である場合には、CPUコア34は、ステップS213で、魔法IDに基づいて、下画面ガイド用の魔法陣オブジェクトの色を変更する。なお、この実施例では、魔法陣画像はUIの系統ごとに準備されるが、同じ第1系統であっても要求されるタッチ操作は異なるので、タッチ操作の違いを魔法陣画像の色で表現するようにしている。たとえば、こすり操作、つつき操作およびタイミング押し操作は、それぞれ赤、緑、黄色に対応付けられており、それぞれの色となるように操作種類に応じて下画面用の魔法陣オブジェクトのパレットのデータが変更される。
【0196】
一方、ステップS211で“NO”の場合、またはステップS213を終了すると、ステップS215で、CPUコア34は、GPU46を用いて下画面ガイド用の魔法陣オブジェクトをオブジェクトデータに基づいて下画面のVRAM54の描画バッファに描画する。
【0197】
続いて、上画面の描画が行われる。具体的には、ステップS217で、CPUコア34は、GPU44を用いて仮想空間画像を生成し、上画面のVRAM52の描画バッファに描画する。たとえば、魔法を発動しようとしているプレイヤキャラクタ302が略中心に位置するような画像が生成されるように、仮想カメラ位置や注視点位置等が制御される。なお、プレイヤキャラクタ302および敵キャラクタ304の仮想空間における座標等のパラメータを含むオブジェクトデータは、戦闘に移行する前に既に生成されているが、プレイヤキャラクタ302および敵キャラクタ304が戦闘場面における所定の位置に配置されるように、この初期UI描画処理においてそれらのオブジェクトデータを記憶領域238に生成するようにしてもよい。なお、アニメーションを表示する場合、当該アニメーションデータに基づいて最初の画面が描画される。
【0198】
ステップS219では、CPUコア34は、GPU44を用いて上画面ガイド用の背景画像を上画面のVRAM54の描画バッファに描画する。この上画面ガイド用の背景画像は、LCD12に設けられる仮想イメージ領域402全体にその背景として表示されるものであり、その表示座標は予め決められて記憶されている。
【0199】
ステップS221では、CPUコア34は、上画面ガイド用のカーソルオブジェクト、魔法陣オブジェクト、レベル表示用オブジェクト、入力状態メッセージ用オブジェクトを生成する。つまり、それぞれのオブジェクトデータを生成してパラメータに初期値を設定する。なお、上画面ガイド用の魔法陣オブジェクトの座標は、下画面ガイド用の魔法陣オブジェクトの座標の、仮想イメージ領域402内における対応する座標であり、図14で説明したように、タッチ位置の対応位置の算出方法と同様にして算出され得る。また、上画面ガイド用の魔法陣オブジェクトの拡大率は、下画面ガイド用の魔法陣オブジェクトの拡大率と同じに設定される。
【0200】
そして、ステップS223で、CPUコア34は、上画面ガイド用の魔法陣オブジェクトおよびレベル表示用オブジェクトを各オブジェクトデータに基づいて上画面のVRAM52の描画バッファに描画する。ここで描画されるレベル表示用オブジェクトは、初期レベルすなわちレベル1を示すレベルゲージ408aおよびレベル画像408bを含む。この初期UI描画処理を終了すると、処理は図27のステップS43に進む。
【0201】
図27のステップS43から図28のステップS87までの処理は一定時間(たとえば1/60秒=1フレーム)ごとに実行される。図27のステップS43では、CPUコア34は、LCDコントローラ50を用いてVRAM52および54の描画データに基づいて上下画面をLCD12および14に表示し、または上下画面を更新する。
【0202】
ステップS45およびS47では、魔法発動条件の判定が行われる。具体的には、ステップS45で、CPUコア34は、記憶領域242に記憶されたレベルが最大値になったか否かが判断される。レベルは、操作の成功に応じて増加されるポイントから算出される。したがって、ここでは、最大レベルになるまでプレイヤが操作に成功し続けたか否かが判定されている。なお、レベルの最大値は予め決められてよいし、あるいは、ゲームの進行やプレイヤキャラクタ302の能力値等に応じて変更されてもよい。ステップS45で“YES”の場合、つまり、操作成功によって魔法が発動される場合には、処理は図29のステップS89へ進む。
【0203】
一方、ステップS45で“NO”の場合には、ステップS47で、CPUコア34は記憶領域244に記憶されたミス判定フラグがオンであるか否かを判定する。ミス判定フラグは、操作ミスと判定された場合にオンにされるものであり、したがって、ここでは、プレイヤが操作に失敗したと判定されたか否かを判定している。ステップS47で“YES”の場合、つまり、操作ミスによって魔法が発動される場合には、処理は図29のステップS93へ進む。
【0204】
一方、ステップS47で“NO”の場合、つまり、魔法発動条件がまだ満足されていない場合には、ステップS49で、CPUコア34はタッチパネル24から取得される検出データから、タッチ位置の座標を検出してタッチ位置記憶領域234に記憶する。この記憶領域234には、タッチ位置の履歴を記録する。たとえば、直近の所定フレーム数分の座標や、連続的なタッチ入力の開始から終了までに検出された座標を蓄積してよい。
【0205】
ステップS51では、CPUコア34は、タッチパネル24がタッチされているか否かをタッチパネル24の検出データに基づいて判断する。タッチパネル24の検出データは、タッチ位置の座標データとともにタッチの有無を示すデータを含んでいる。CPUコア34は、ステップS51で“YES”の場合には、ステップS53で記憶領域244に記憶されたタッチフラグをオンにし、“NO”の場合にはステップS55でタッチフラグをオフにする。このタッチフラグを参照すれば、現フレームでタッチパネル24がタッチされているか否かがわかる。
【0206】
続くステップS57では、CPUコア34は、タッチ操作を判定する処理を実行する。この図27はこすり操作の魔法が選択された場合の魔法処理であるから、こすり操作判定処理によって、所定のこすり操作が行われたか否かが判定される。こすり操作判定処理の動作の一例は図31から図33に示される。
【0207】
図31のステップS301で、CPUコア34は記憶領域244に記憶されたインターバルに1を加算する。インターバルは、こすり操作の速度を算出するための時間を計測するためのカウンタである。後述のように、こすり操作の速度はポイント加算のために算出されるものであり、このこすり操作の速度はタッチ位置が一定距離以上移動したときに算出される。また、ポイントはこすり操作が行われていないときには減点される。そして、インターバルはポイントの加算または減点が行われるときにリセットされるので、このインターバルによって、タッチ位置が一定距離以上移動するのに要した時間を計測することができ、また、こすり操作が行われることなく経過した時間を計測することができる。
【0208】
次にステップS303で、CPUコア34は記憶領域244に記憶されたタッチフラグがオンであるか否かを判定する。ステップS303で“NO”の場合、つまり、タッチパネル24がタッチされていない場合には、この操作判定処理を終了し、処理は図27のステップS59に戻る。
【0209】
一方、ステップS303で“YES”の場合、ステップS305で、CPUコア34は最初のタッチであるか否かを判定する。具体的には、タッチ位置記憶領域234にタッチ位置の座標の履歴が記憶されているので、前フレームで座標が検出されているか否かを判断する。ステップS305で“YES”の場合には、こすり操作かどうかをまだ判断できないので、この操作判定処理を終了し、処理は図27のステップS59に戻る。
【0210】
一方、ステップS305で“NO”の場合、つまり、タッチ位置が連続して検出されている場合には、ステップS307で、CPUコア34は、今回のX座標と前回のX座標との差を、データ記憶領域230に記憶される距離に加算する。なお、差の絶対値を加算するようにする。これによって、この変数「距離」には、インターバルの時間におけるタッチ操作による左右方向(X方向)の移動距離が累積される。
【0211】
続いて、タッチ位置の移動の向きを判定する。具体的には、ステップS309では、CPUコア34は差が正(>0)であるか否かを判断する。CPUコア34は、ステップS309で“YES”の場合、ステップS311で記憶領域244に記憶されたX軸移動向きフラグに右を示す値を設定し、“NO”の場合、ステップS313でX軸移動向きフラグに左を示す値を設定する。X軸移動向きフラグは、タッチパネル24のX軸方向に関するタッチ操作の向きを示す。なお、この実施例では、図14に示すように、タッチパネル24の左上隅に原点が設定され、かつ、右方向がX軸正方向に、下方向がY軸正方向にされるので、タッチ位置が左に移動すれば差は負となり、右だと正となる。
【0212】
続くステップS315で、CPUコア34は、今回のY座標と前回のY座標との差が正(>0)であるか否かを判断する。CPUコア34は、ステップS315で“YES”の場合、ステップS317で記憶領域244に記憶されたY軸移動向きフラグに下を示す値を設定し、“NO”の場合、ステップS319でY軸移動向きフラグに上を示す値を設定する。Y軸移動向きフラグは、タッチパネル24のY軸方向に関するタッチ操作の向きを示す。図14に示すタッチパネル24の座標系から分かるように、タッチ位置が下に移動すれば差は正となり、上だと負となる。
【0213】
続いて、ステップS321で、CPUコア34は、今回のX座標は魔法陣400の中心から左側であるか否かを判断する。なお、魔法陣400の中心のX座標は、そのオブジェクトデータの座標パラメータにより把握される。CPUコア34は、ステップS321で“YES”の場合、ステップS323で記憶領域244に記憶される側フラグに左を示す値を設定し、“NO”の場合、ステップS325で側フラグに右を示す値を設定する。側フラグは魔法陣400の中心から見て左右どちらかを示す。
【0214】
続くステップS327で、CPUコア34は今回の側フラグの値は前回と異なるか否かを判断する。なお、この判定のために記憶領域244の側フラグには前回の値も記憶される。
【0215】
ステップS327で“YES”の場合には、つまり、タッチ位置が魔法陣400のX軸方向の中央線を越えて移動した場合には、CPUコア34はステップS329で記憶領域244に記憶された中央越えフラグをオンにする。中央越えフラグは、こすり操作が魔法陣400の左右方向の中心を越えて行われたか否かを示す。このこすり操作では、魔法400陣の左右方向の中央線を跨いでこすられることを判定条件に含んでいる。ステップS329を終了し、またはステップS327で“NO”の場合、処理は図32のステップS331に進む。
【0216】
図32のステップS331では、今回のX軸移動向きフラグの値は前回と異なるか否かを判断する。なお、この判定のために記憶領域244のX軸移動向きフラグには前回の値も記憶される。ステップS331で“YES”の場合、つまり、タッチ操作のX軸方向に関する向きが左右入れ替わった場合には、CPUコア34は、ステップS333でX軸転向回数をカウントする。具体的には、記憶領域244に記憶されるX軸転向回数カウンタに1を加算する。ステップS333を終了すると、処理はステップS339に進む。
【0217】
一方、ステップS331で“NO”の場合、CPUコア34は、ステップS335で今回のY軸移動向きフラグの値が前回と異なるか否かを判断する。なお、この判定のために記憶領域244のY軸移動向きフラグには前回の値も記憶される。ステップS335で“YES”の場合、つまり、タッチ操作のY軸方向に関する向きが上下入れ替わった場合には、CPUコア34は、ステップS337でY軸転向回数をカウントする。具体的には、記憶領域244に記憶されるY軸転向回数カウンタに1を加算する。ステップS337を終了すると、処理はステップS339に進む。
【0218】
また、ステップS335で“NO”の場合には、つまり、X軸およびY軸の両方向でタッチ操作の向きが変化していない場合には、処理は図33のステップS351に進む。
【0219】
タッチ操作の向きが変わったときには、タッチ操作がミスであるか否かを判定する。具体的には、ステップS339で、CPUコア34は、X軸転向回数が一定値より大きく、かつ、中央越えフラグが0(オフ)であるか否かを判断する。X軸方向に関してタッチ位置の移動の向きが一定回数変化しているのに魔法陣400の左右方向の中央線を越えていない場合、左右にこする操作がされているがタッチ位置が魔法陣400の上を通過していないものとみなして、操作ミスであると判定する。したがって、ステップS339で“YES”の場合には処理はステップS349へ進む。
【0220】
なお、中央越えフラグ、X軸転向回数およびY軸転向回数は、一定時間(インターバルが一定値より小さい間)の状態を示しているので、この一定時間におけるこすり操作について判定を行っている。
【0221】
一方、ステップS339で“NO”の場合、CPUコア34は、ステップS341で、Y軸転向回数が一定値より大きく、かつ、中央越えフラグが0(オフ)であるか否かを判断する。Y軸方向に関してタッチ位置の移動の向きが一定回数変化しているのに魔法陣400の左右方向の中央線を越えていない場合、上下にこする操作がされているがタッチ位置が魔法陣400の上を左右に通過していないものとみなして、操作ミスであると判定する。したがって、ステップS341で“YES”の場合、処理はステップS349に進む。
【0222】
一方、ステップS341で“NO”の場合、CPUコア34は、ステップS343で、X軸転向回数が一定値より大きく、かつ、タッチ位置がすべて魔法陣400外であるか否かを判断する。なお、記憶領域234に記憶されている履歴のうち、直近の一定フレーム数分(インターバルが一定値より小さい期間)のタッチ位置について判断される。X軸方向に関してタッチ位置の移動の向きが一定回数変化しているのにその過程で一度も魔法陣400に触れていない場合、魔法陣400の上をこすっていないものと判断できる。このステップS343で“NO”の場合、魔法陣400の上を左右にこすっていると判断できるので、処理は図33のステップS351に進む。
【0223】
しかしながら、レベルアップによって魔法陣400の大きさが小さくなると、タッチ座標を検出するタイミングのときに魔法陣400の外にタッチ座標があるという状態が起こり得る。このため、魔法陣400の上を通過する軌道でこすっているのにもかかわらず、ステップS343の判断では魔法陣400の上をこすっていないとみなされるおそれがある。これを回避するために、今回のタッチ位置のY座標と前回のタッチ位置のY座標の平均値を求め、当該平均値が魔法陣400の上下方向の幅内に収まっていれば、操作ミスではないと判断する。
【0224】
すなわち、ステップS343で“YES”の場合、CPUコア34は、ステップS345で、今回のY座標と前回のY座標の平均値を算出する。そして、ステップS347で、CPUコア34は、平均値が魔法陣400の上端のY座標より大きく、かつ、平均値が魔法陣400の下端のY座標より小さいか否かを判断する。ステップS347で“YES”の場合には、魔法陣の上をこすっているものとみなして、処理は図33のステップS351へ進む。
【0225】
一方、ステップS347で“NO”の場合には、魔法陣の上をこすっていないとみなして、処理はステップS349へ進む。ステップS349では、CPUコア34は、記憶領域244に記憶されたミス判定フラグをオンにする。このこすり操作の判定処理を終了すると、処理は図27のステップS59へ戻る。ミス判定フラグがオンにされたので、次にステップS47を処理する際には、“YES”と判断され、魔法が発動されることとなる。
【0226】
一方、こすり操作をミスしたと未だ判断されない場合には、図33のステップS351で、CPUコア34は、記憶領域244に記憶されたインターバルが一定値(たとえば3)以上になった否かを判断する。ステップS351で“YES”の場合には、CPUコア34は、ステップS353で、記憶領域244に記憶された中央越えフラグ、X軸転向回数カウンタおよびY軸転向回数カウンタをリセットする。
【0227】
続いて、ステップS355で、CPUコア34は、データ記憶領域230に記憶された距離の値が一定値以上になったか否かを判断する。ステップS355で“YES”の場合、つまり、タッチ位置がX軸方向に一定値以上移動した場合には、CPUコア34は、ステップS357で、距離をインターバルで割ってこすりのスピードを算出する。さらに、ステップS359で、CPUコア34は、こすりのスピードから加算ポイントを決定する。加算ポイントは、たとえば所定の演算式に従って算出されてよいし、あるいは、スピードの範囲と加算ポイントとを予め対応付けたテーブルを参照して決められてもよい。そして、ステップS361で、CPUコア34は、記憶領域240に記憶されたポイントに、加算ポイントを加算する。また、ステップS363では、CPUコア34は記憶領域244に記憶された距離およびインターバルをリセットする。
【0228】
一方、ステップS355で“NO”の場合、つまり、こすり操作が左右に一定距離以上動いていない場合には、CPUコア34は、ステップS365で、ポイント加算なしに一定時間が経過したか否かを判断する。つまり、記憶領域244に記憶されたインターバルが一定値以上になったか否かを判断する。
【0229】
ステップS365で“YES”の場合、つまり、タッチ位置が一定距離以上移動することなく一定時間が経過した場合には、CPUコア34は、ステップS367で記憶領域240に記憶されたポイントから一定値を減点する。そして、ステップS369で、CPUコア34は記憶領域244に記憶されたインターバルをリセットする。
【0230】
一方、ステップS365で“NO”の場合、または、ステップS351で“NO”の場合には、こすり操作判定処理を終了し、処理は図27のステップS59に戻る。
【0231】
図27に戻って、ステップS59では、CPUコア34は記憶領域240に記憶されたポイントからレベルを算出して、当該算出されたレベルを記憶領域242に記憶する。たとえば、ポイントが一定値を超えるごとにレベルがアップされる。レベルアップに必要なポイントは魔法の最高レベルによって異なるものであってよい。最大レベルが3の場合、最大ポイント(たとえば4096)の1/3でレベル2に、最大ポイント到達でレベル3に変わってよい。また、最大レベルが4の場合、最大ポイントの1/3でレベル2に、最大ポイントの2/3でレベル3に、最大ポイント到達でレベル4に変わってよい。さらに、ポイントがレベルに必要な値を下回った場合には、レベルがダウンされる。
【0232】
続いて、ステップS61で、CPUコア34は記憶領域244に記憶されたタッチフラグがオンであるか否かを判断する。ステップS61で“YES”の場合、ステップS63で、CPUコア34は、上画面のガイド画像におけるカーソル位置をタッチ位置から算出する。つまり、仮想イメージ領域402における、タッチ位置に対応する位置の座標を上述の数1に従って算出する。
【0233】
ステップS65では、CPUコア34は、GPU44を用いてカーソル406を上画面のVRAM52の描画バッファに描画する。この描画のために、CPUコア34は、算出されたカーソル位置の座標をオブジェクトデータ記憶領域238のカーソルオブジェクトの座標パラメータとして記憶しておく。次のフレームでステップS43の表示更新処理が実行されると、仮想イメージ領域402において、タッチ位置に対応する位置にカーソル406が表示される(たとえば図13参照)。
【0234】
一方、ステップS61で“NO”の場合、CPUコア34はステップS67でカーソル406を上画面から消去する。具体的には、CPUコア34は、オブジェクトデータ記憶領域238に記憶されたカーソルオブジェクトの座標パラメータに、表示無しを示す値を記憶しておいて、GPU44にカーソルの消去のための作画命令を与える。ステップS65またはS67を終了すると、処理は図28のステップS69へ進む。
【0235】
なお、この実施例では、タッチパネル24がタッチされていると判定されるときに、カーソル406を仮想イメージ領域402に表示するようにしているが、タッチパネル24へのタッチがなくなっても最後に検出されたタッチ位置に対応する位置にカーソル406を継続して一定時間表示するようにしてもよい。
【0236】
図28のステップS69では、CPUコア34は表示態様変更処理を実行する。表示態様変更処理では、ガイド画像の表示態様が変更される。この表示態様変更処理の動作の一例が図34に示される。図34のステップS401で、CPUコア34は、記憶領域242に記憶されたレベルが変わったか否かを判断する。なお、この判定のために、ステップS59(図27)のレベル算出処理では、レベル変更の種類(アップ、ダウン、変わらず)に応じてレベル変更フラグを設定するようにしてよい。
【0237】
ステップS401で“YES”の場合、ステップS403でCPUコア34はレベルアップしたか否かを判断する。ステップS403で“YES”の場合、ステップS405で、CPUコア34は、GPU46を用いてレベルアップ画像410を下画面のVRAM54に描画する。したがって、次のフレームのステップS43の表示更新処理によって、LCD14にはレベルアップ画像410が表示される(図15参照)。なお、レベルアップ画像410を描画する場合、記憶領域238に記憶される下画面ガイド用のレベル表示用オブジェクトのうちのレベルアップ画像410のオブジェクトデータの座標パラメータに所定の座標を設定し、このオブジェクトデータに基づいて、レベルアップ画像410を描画する。
【0238】
ステップS407では、CPUコア34は、記憶領域242に記憶されたレベルから魔法陣の拡大率を決定する。魔法陣の拡大率はレベルごとに予め決められて記憶されている。なお、レベルが最大になった場合、魔法の発動の処理に移行し、操作を受け付けないようにするので、続くステップS409からS415における魔法陣の拡大率変更および描画の処理は行わなくてよい。
【0239】
ステップS409では、CPUコア34は、下画面ガイド用の魔法陣オブジェクトのオブジェクトデータの拡大率パラメータを決定された値に変更する。これによって、下画面に表示される魔法陣400の大きさがレベルに応じた大きさに変更(この実施例では縮小)される。また、ステップS411で、CPUコア34は、上画面ガイド用の魔法陣オブジェクトのオブジェクトデータの拡大率パラメータを決定された値に変更する。これによって、上画面の仮想イメージ領域に表示される魔法陣404の大きさがレベルに応じた大きさに変更される。したがって、下画面の魔法陣400と同じ割合で上画面の魔法陣404の大きさが変更される。
【0240】
そして、ステップS413で、CPUコア34は、GPU46を用いて下画面ガイド用の魔法陣オブジェクトを下画面のVRAM54の描画バッファに描画する。また、ステップS415で、CPUコア34は、GPU44を用いて上画面ガイド用の魔法陣オブジェクトを上画面のVRAM52の描画バッファに描画する。したがって、次のステップS43の表示更新処理によって、大きさの変更された魔法陣400がLCD14に表示されるとともに、同じ割合で大きさの変更された魔法陣404がLCD12の仮想イメージ領域402に表示される(たとえば図15および図16参照)。
【0241】
一方、ステップS403で“NO”の場合、つまり、レベル変更がレベルダウンであった場合には、CPUコア34は、ステップS417で操作ミスと判定して記憶領域244に記憶されたミス判定フラグをオンにする。このように、ポイントが一定以上減少してレベルがダウンした場合にも、操作ミスと判定するので、次にステップS47(図27)が処理されると“YES”と判断され、魔法が発動されることとなる。
【0242】
また、ステップS401で“NO”の場合、つまり、レベルが変わっていない場合には、そのままこの表示態様変更処理を終了し、処理は図28のステップS71に戻る。
【0243】
図28のステップS71では、CPUコア34は、記憶領域244に記憶されたミス判定フラグがオンであるか否かを判断する。ステップS71で“YES”の場合、CPUコア34は、ステップS73でGPU46を用いてミス画像414を下画面のVRAM52の描画バッファに描画する。したがって、次のフレームのステップS43の表示更新処理によって、LCD14にはミス画像414が表示される(図17参照)。なお、ミス画像414を描画する場合、記憶領域238に記憶される下画面ガイド用の入力状態メッセージ用オブジェクトのうちのミス画像414のオブジェクトデータの座標パラメータに所定の座標を設定し、このオブジェクトデータに基づいて、ミス画像414を描画する。
【0244】
ステップS73を終了し、またはステップS71で“NO”の場合には、CPUコア34は、ステップS75でレベルアップ画像410の描画から一定時間が経過したか否かを判断する。なお、この判定のために、ステップS405(図34)の処理から経過した時間を計測するカウンタが記憶領域244に記憶される。ステップS75で“YES”の場合、CPUコア34は、ステップS77でレベルアップ画像を下画面から消去する。なお、オブジェクトデータ記憶領域238に記憶された下画面ガイド用のレベル表示用オブジェクトのうちのレベルアップ画像410の座標パラメータには、表示無しを示す値が記憶される。
【0245】
続いて、CPUコア34は、ステップS79で、GPU46を用いて記憶領域242に記憶された現レベル値を示すレベル画像412を下画面のVRAM54の描画バッファに描画する。なお、レベル画像412を描画する場合、記憶領域238に記憶される下画面ガイド用のレベル表示用オブジェクトのうちのレベル画像412のオブジェクトデータの座標パラメータに、所定の座標を記憶する。
【0246】
また、ステップS81で、CPUコア34は、GPU44を用いて記憶領域242に記憶された現レベル値を示すレベル画像408b、および記憶領域240に記憶された現ポイント値を示すレベルゲージ408aを上画面のVRAM52の描画バッファに描画する。これによって、プレイヤはLCD12を見るだけで、現レベル値を知ることができるとともに、レベルゲージ408aの指針がポイントの増減に応じて左右に振れたりレベルアップ/ダウンに応じて色が変更されたりするので、入力状態やその判定結果、つまり、上手く所定の操作を行うことができているか否かをも知ることができる。
【0247】
ステップS81を終了すると、またはステップS75で“NO”の場合、CPUコア34は、ステップS83で下画面のレベル画像412の描画から一定時間が経過したか否かを判断する。なお、この判定のために、ステップS79のレベル画像の描画処理から経過した時間を計測するカウンタが記憶領域244に記憶される。ステップS83で“YES”の場合には、CPUコア34は、ステップS85でレベル画像412を下画面から消去する。具体的には、オブジェクトデータ記憶領域238に記憶された下画面ガイド用のレベル表示用オブジェクトのうちの現レベルに対応するレベル画像412の座標パラメータに、表示無しを示す値を記憶する。
【0248】
ステップS85を終了し、またはステップS83で“NO”の場合、CPUコア34は、ステップS87で、記憶領域236に記憶された魔法IDに基づいて、GPU44を用いて仮想空間における魔法発動前シーンを上画面のVRAM52の描画バッファに描画する。なお、この描画は魔法IDに対応する魔法発動前のアニメーションデータに基づいて行われてよいし、たとえばプレイヤキャラクタ302が魔法発動の準備をしているような様子が記憶領域238に記憶されるプレイヤキャラクタ302のオブジェクトデータに基づいて描画されてよもよい。ステップS87を終了すると、処理は図27のステップS43に戻る。
【0249】
これによって、プレイヤは、仮想イメージ領域402の魔法陣404やカーソル406、ならびに仮想イメージ領域402の近傍のレベル値および入力状態とともに、メインとなる仮想ゲーム空間の様子を見ることができる。したがって、手元のタッチパネル24を見なくても、LCD12でメインとなる画像を見ながらタッチ操作を行うことができる。
【0250】
このようにして、図27のステップS45で最大レベルになったと判定されるまで、または、ステップS47でミス判定フラグがオンになったと判定されるまで、ステップS43からS87が繰り返し実行される。
【0251】
ステップS45で“YES”の場合、図29のステップS89で、CPUコア34はレベルアップ画像410の画像の描画から一定時間が経過したか否かを判断する。この処理はステップS75(図28)と同様である。ステップS89で“YES”と判断されると、CPUコア34は、ステップS91でレベルアップ画像410を下画面から消去する。この処理はステップS77(図28)と同様である。最大レベルになって魔法が発動される場合、レベルアップ画像410が表示されているので、まずこれを消去する。
【0252】
また、ステップS47で“YES”の場合、図29のステップS93で、CPUコア34は、ミス画像414の描画から一定時間が経過したか否かを判断する。この判定のために、ステップS73(図28)の処理から経過した時間を計測するカウンタが記憶領域244に記憶される。ステップS93で“YES”と判断されると、CPUコア34は、ステップS95でミス画像414を下画面から消去する。なお、オブジェクトデータ記憶領域238に記憶された下画面ガイド用の入力状態メッセージ用オブジェクトのうちのミス画像414の座標パラメータには、表示無しを示す値が記憶される。操作ミスになって魔法が発動される場合、ミス画像414が表示されているので、まずこれを消去する。
【0253】
ステップS91またはステップS95を終了すると、CPUコア34は、ステップS97でGPU46を用いて記憶領域242に記憶された現レベル値を示すレベル画像412を下画面のVRAM54の描画バッファに描画する。この処理はステップS79(図28)と同様である。レベルに応じた魔法が発動されるので、そのレベル値を一定時間表示する。
【0254】
そして、ステップS99で、CPUコア34は下画面のレベル画像412の描画から一定時間が経過したか否かを判断する。この処理はステップS83(図28)と同様である。ステップS99で“YES”と判断されれば、CPUコア34は、ステップS101でレベル画像412を下画面から消去する。この処理はステップS85(図28)と同様である。
【0255】
続いて、ステップS103で、CPUコア34は、記憶領域236に記憶された魔法IDと記憶領域242に記憶されたレベルに基づいて、所定の演算式に従って敵キャラクタ304に与えるダメージを算出する。なお、算出されたダメージの値は、魔法を実行しているアニメーションの中で表示されることとなる。そして、ステップS105で、攻撃対象のHPからダメージを減算し、データ記憶領域230に記憶される当該敵キャラクタ304のHPの値を更新する。HPが0以下になれば、当該敵キャラクタ304は倒されたこととなり、攻撃対象から除外され、画面から消去される。
【0256】
続くステップS107で、CPUコア34は、上下画面からガイド画像を消去する。そして、ステップS109で、CPUコア34は、GPU44を用いて魔法IDに対応する魔法実行アニメーションデータに基づいて画像をVRAM52に描画するとともにLCDコントローラ50を用いて画像をLCD12に表示する。このようにして、プレイヤのタッチ操作に応じた魔法が実行され、その様子がアニメーションとして表示される。なお、複数のプレイヤキャラクタ302が魔法を実行する場合には、魔法処理が残りのプレイヤキャラクタ302のそれぞれについて魔法処理が実行される。
【0257】
上述の図27から図29はこすり操作の魔法処理の動作を示したが、他の操作の魔法処理も、ほとんど同様の動作である。ただし、ステップS57では、それぞれのタッチ操作に関する操作判定処理が実行される。なお、ガイド画像の表示態様が操作種類に応じて異なる場合もあるので、その場合、ステップS69の表示態様変更処理の動作も操作種類に応じて変更される。
【0258】
選択された魔法IDがつつき操作を示す場合、図26のステップS25ではつつき操作の魔法処理が実行される。図35はつつき操作の魔法処理におけるつつき操作判定処理の動作の一例を示す。この操作判定処理を開始すると、ステップS501で、CPUコア34は記憶領域244に記憶されるタッチフラグがオンであるか否かを判断する。
【0259】
ステップS501で“YES”の場合、つまり、タッチパネル24がタッチされている場合には、CPUコア34はステップS503で記憶領域234に記憶された今回のタッチ位置が魔法陣400の内側か否かを判断する。なお、魔法陣400の表示範囲は、オブジェクトデータ記憶領域238に記憶される下画面ガイド用の魔法陣オブジェクトの座標、オブジェクトサイズ、および拡大率に基づいて算出され得る。あるいは、魔法陣400の配置およびレベルごとの大きさが固定される場合には、レベルごとの魔法陣400の表示範囲のデータを予め記憶しておいてもよい。
【0260】
ステップS503で“YES”の場合、つまり、魔法陣400がタッチされている場合には、CPUコア34は、ステップS505で記憶領域244に記憶されるつつきフラグが0(初期値)であるか否かを判断する。つつきフラグは、魔法陣400が突かれたか否かを示す。魔法陣400が1回突かれるごとにポイントを加算するが、魔法陣400がずっとタッチされ続けている場合にはポイントを加算しないようにする必要があるので、このつつきフラグが設けられる。つつきフラグは、タッチパネル24が突かれたときに、すなわち、無入力状態から入力状態になったときにオンにされ、その突きによる接触がなくなったときに、すなわち、入力状態から無入力状態になったときに、オフにされる。
【0261】
ステップS505で“YES”の場合、つまり、タッチパネル24がタッチされていない状態からタッチされた状態に変化したときには、CPUコア34は、ステップS507で記憶領域244に記憶されるつつきフラグに1を記憶し、つまり、つつきフラグをオンにする。そして、ステップS509で、CPUコア34は、記憶領域240に記憶されるポイントに所定値を加算する。ステップS509を終了すると、処理はステップS517へ進む。
【0262】
一方、ステップS505で“NO”の場合、つまり、タッチパネル24がタッチされ続けている場合には、ポイントを加算せず、処理はステップS517に進む。
【0263】
また、ステップS501で“NO”の場合、つまり、タッチパネル24がタッチされていない場合には、CPUコア34は、ステップS511で記憶領域244に記憶されるつつきフラグが1であるか否かを判断する。ステップS511で“YES”の場合、つまり、タッチパネル24がタッチされていた状態からタッチされていない状態に変化したときには、CPUコア34は、ステップS513で記憶領域244に記憶されるつつきフラグに0を記憶し、つまり、つつきフラグをオフにする。そして、ステップS515で、CPUコア34は、記憶領域240に記憶されるポイントに所定値を加算する。このように、この実施例では、タッチパネル24を突く操作とその突きを終わらせる操作の両方のタイミングで点数を与えるようにしているが、他の実施例では、突く操作があったとき、またはその突きを終わらせる操作があったときのどちらか一方のタイミングのみで、点数を与えるようにしてもよい。ステップS515を終了すると、処理はステップS517へ進む。また、ステップS511で“NO”の場合、つまり、無入力状態が続いている場合には、処理はそのままステップS517へ進む。
【0264】
ステップS517では、CPUコア34はポイントの加算なしに一定時間が経過したか否かを判断する。なお、この判定のために、ステップS509またはステップS515でポイントの加算が行われてからの経過時間を計測するカウンタが記憶領域244に設けられる。ステップS517で“YES”の場合、つまり、魔法陣400がタッチされ続けている状態またはタッチパネル24がタッチされていない状態で一定時間が経過した場合には、CPUコア34は、ステップS519で記憶領域240に記憶されるポイントから所定値を減点する。一方、ステップS517で“NO”の場合、そのままこの操作判定処理を終了する。
【0265】
また、ステップS503で“NO”の場合、つまり、魔法陣400外がタッチされたときには、操作ミスであると判定し、CPUコア34はステップS521で記憶領域244に記憶されるミス判定フラグをオンにする。このつつき操作判定処理を終了すると、処理は、図27の魔法処理(この場合、つつき操作の魔法処理)のステップS59に戻る。
【0266】
なお、この実施例では、つつき操作の魔法処理における表示態様変更処理は、こすり操作の場合と同じであるので、説明を省略する。
【0267】
選択された魔法IDがタイミング押し操作を示す場合、図26のステップS25では、タイミング押し操作の魔法処理が実行される。図36は、タイミング押し操作の魔法処理におけるタイミング押し操作判定処理の動作の一例を示す。
【0268】
この操作判定処理を開始すると、CPUコア34は、ステップS601で複数(この実施例では2つ)の魔法陣400が重なっているか否かを判断する。具体的には、オブジェクトデータ記憶領域238に記憶される下画面ガイド用の2つの魔法陣オブジェクトの座標が同じであるか否かを判断する。CPUコア34は、ステップS601で“YES”の場合、ステップS603で記憶領域244に記憶される重なりフラグをオンにし、“NO”の場合、ステップS605で重なりフラグをオフにする。
【0269】
続いて、ステップS607で、CPUコア34は記憶領域244に記憶されるタッチフラグがオンであるか否かを判断する。ステップS607で“YES”の場合、つまり、タッチパネル24がタッチされている場合には、CPUコア34は、ステップS609で記憶領域234に記憶される今回のタッチ位置の座標が魔法陣400の内側にあるか否かを判断する。なお、複数の魔法陣400が重なっている場合それら魔法陣400の座標が同一であるので、いずれか1つの魔法陣400を選択して、当該魔法陣400のオブジェクトデータの座標、サイズおよび拡大率に基づいて、当該魔法陣400の表示範囲を算出する。そして、当該魔法陣400の表示範囲内に今回のタッチ位置が含まれるか否かを判断する。
【0270】
ステップS609で“YES”の場合、つまり、魔法陣400の内側がタッチされている場合には、ステップS611でCPUコア34は記憶領域244に記憶された重なりフラグがオンであるか否かを判断する。ステップS611で“YES”の場合、つまり、重なった状態の魔法陣400の内側がタッチされた場合には、CPUコア34はステップS613で記憶領域244に記憶された成功フラグはオフであるか否かを判断する。成功フラグは、2つの魔法陣400の重なり状態が発生してから終了するまでの間に当該魔法陣400がタッチされたか否かを示す。
【0271】
ステップS613で“YES”の場合、つまり、重なり状態が発生してから初めて魔法陣400がタッチされた場合には、CPUコア34は、ステップS615で記憶領域240に記憶されたポイントに所定値を加算する。そして、ステップS617で、CPUコア34は記憶領域244に記憶される成功フラグをオンにする。
【0272】
一方、ステップS613で“NO”の場合、つまり、重なり状態が発生してから当該魔法陣400を既にタッチ済みである場合には、そのままこの操作判定処理を終了する。
【0273】
また、ステップS611で“NO”の場合、つまり、2つの魔法陣400が重なっていない状態で魔法陣400がタッチされた場合には、操作ミスと判定し、処理はステップS629へ進む。さらに、ステップS609で“NO”の場合、つまり、魔法陣400の表示範囲外がタッチされた場合にも、操作ミスと判定し、処理はステップS629へ進む。
【0274】
また、ステップS607で“NO”の場合、つまり、タッチパネル24がタッチされていない場合には、ステップS619で、CPUコア34は重なり状態が終了したか否かを判断する。具体的には、記憶領域244に記憶される重なりフラグがオンからオフに変化したか否かを判断する。なお、この判定のために、記憶領域244の重なりフラグには、少なくとも今回と前回の重なり状態を記憶する。
【0275】
ステップS619で“YES”の場合には、ステップS621で、CPUコア34は記憶領域244に記憶された成功フラグがオンであるか否かを判定する。ステップS621で“YES”の場合、つまり、重なり状態が発生してから終了するまでの間に少なくとも1回は魔法陣400がタッチされていた場合には、ステップS623で、CPUコア34は記憶領域244に記憶された成功フラグをオフにする。
【0276】
一方、ステップS621で“NO”の場合、つまり、重なり状態が発生してから終了するまでの間に魔法陣400がタッチされなかった場合には、CPUコア34は、ステップS625で記憶領域244に記憶される見逃し回数カウンタに1を加算する。そして、ステップS627で、CPUコア34は見逃し回数が所定値(たとえば2)になったか否かを判断する。ステップS627で“YES”の場合、つまり、魔法陣400をタッチすべきタイミングが所定回数見逃された場合には、操作ミスと判定し、処理はステップS629へ進む。
【0277】
ステップS629では、CPUコア34は、記憶領域244に記憶されたミス判定フラグをオンにする。なお、ステップS627で“NO”の場合、またはステップS619で“NO”の場合には、そのままこの操作判定処理を終了する。このタイミング押し操作判定処理を終了すると、処理は、図27の魔法処理(この場合、タイミング押し操作の魔法処理)のステップS59に戻る。
【0278】
図37はタイミング押し操作の魔法処理における表示態様変更処理の動作の一例を示す。この表示態様変更処理は図28のステップS69で実行される。
【0279】
CPUコア34は、まずステップS701で、ステップS59(図27)で算出されたレベルに基づいて、レベルが上がったか否かを判断する。ステップS701で“YES”の場合、CPUコア34は、ステップS703でGPU46を用いてレベルアップ画像410を下画面のVRAM54の描画バッファに描画する。なお、ステップS701およびS703の処理は、図34のステップS403およびS405の処理と同様である。
【0280】
続いて、ステップS705で、CPUコア34は下画面ガイド用の2つの魔法陣オブジェクトの移動を制御する。たとえば、各魔法陣オブジェクトの移動する軌道、重なり状態の発生および終了のタイミングなどは予め決められており、各魔法陣オブジェクトの座標が所定の演算式に従って算出されたり、または決定されたりする。各魔法陣オブジェクトの座標は、オブジェクトデータ記憶領域238における各オブジェクトの座標パラメータとして記憶される。
【0281】
ステップS707では、CPUコア34は、下画面ガイド用の2つの魔法陣オブジェクトの位置に基づいて、上画面ガイド用の2つの魔法陣オブジェクトの位置を算出する。つまり、下画面における2つの魔法陣400の座標に対応する、仮想イメージ領域402における2つの魔法陣404の座標を算出する。したがって、仮想イメージ領域402では、魔法陣404は、下画面に表示される魔法陣400の移動と同じように移動する。
【0282】
そして、ステップS709で、CPUコア34はGPU46を用いて下画面ガイド用の魔法陣オブジェクトを下画面のVRAM54の描画バッファに描画する。さらに、ステップS711でCPUコア34は、GPU44を用いて上画面ガイド用の魔法陣オブジェクトを上画面のVRAM52の描画バッファに描画する。なお、ステップS709およびS711の処理は、図34のステップS413およびステップS415の処理と同様である。
【0283】
続いて、ステップS713で、CPUコア34は記憶領域244に記憶された成功フラグがオフからオンに変化したか否かを判断する。ステップS713で“YES”の場合、つまり、重なり状態で魔法陣400がタッチされた場合には、CPUコア34は、ステップS715でGPU44を用いてナイス画像416を下画面のVRAM54の描画バッファに描画する。なお、この描画のために、CPUコア34は、オブジェクトデータ記憶領域238における下画面ガイド用の入力状態メッセージ用オブジェクトのうちナイス画像416の座標パラメータに所定座標(たとえば画面中心)を記憶しておく。
【0284】
ステップS715を終了し、またはステップS713で“NO”の場合、CPUコア34は、ステップS717でナイス画像416の描画から一定時間が経過したか否かを判断する。ステップS717で“YES”の場合、つまり、記憶領域244に記憶されたナイス画像416の描画からの経過時間を計測するカウンタが一定値を超えた場合には、CPUコア34は、ステップS719でナイス画像416を下画面から消去する。ステップS719を終了すると、またはステップS717で“NO”の場合、この表示態様変更処理を終了し、処理は図28のステップS71に戻る。
【0285】
選択された魔法IDが順番押し操作を示す場合、図26のステップS25では、順番押し操作の魔法処理が実行される。図38は、順番押し操作の魔法処理における順番押し操作判定処理の動作の一例を示す。
【0286】
この操作判定処理を開始すると、CPUコア34は、ステップS801で記憶領域244に記憶されたタッチフラグがオンであるか否かを判断する。ステップS801で“YES”の場合、つまり、タッチパネルがタッチされている場合には、CPUコア34は、ステップS803で、記憶領域234に記憶された今回のタッチ位置が正解番号の魔法陣400の内側であるか否かを判断する。
【0287】
なお、たとえば初期UI描画処理(S41)で最初の問題を描画する際に、魔法陣400の識別情報、付与された番号および配置場所(座標)の対応を示す問題データがデータ記憶領域230に読み出されまたは生成される。また、現在タッチされるべき番号、すなわち、正解番号を示すデータも、データ記憶領域230に記憶される。この実施例では、魔法陣400には1番からの通し番号が付与されるので、正解番号データの初期値は1である。正解番号の魔法陣400の表示範囲は、当該魔法陣400のオブジェクトデータとして記憶される座標、サイズ、拡大率等に基づいて算出され得る。
【0288】
ステップS803で“YES”の場合、つまり、正解番号の魔法陣400がタッチされた場合には、CPUコア34は、ステップS805で、記憶領域230に記憶される正解番号が最後の番号であるか否かを判断する。ステップS805で“NO”の場合、つまり、タッチすべき魔法陣400がまだ残っている場合には、CPUコア34は、ステップS807で記憶領域244に記憶される正解フラグをオンにする。正解フラグは、最後を除く正解番号の魔法陣がタッチされたことを示す。そして、ステップS809で、データ記憶領域230に記憶される正解番号に1を加算する。これによって、次の番号を付与されている魔法陣400が次にタッチすべき魔法陣400となる。ステップS809を終了すると、処理はステップS813に進む。
【0289】
一方、ステップS805で“YES”の場合、つまり、最後番号まで順番どおりに魔法陣400をタッチすることに成功した場合には、CPUコア34は、ステップS811で記憶領域240に記憶されるポイントに、レベルアップに必要な所定値を加算する。この実施例では、1問正解ごとにレベルが上がるようにしている。最大レベルになった場合には、魔法が発動される。ステップS811を終了すると、処理はステップS813に進む。
【0290】
また、ステップS803で“NO”の場合、つまり、正解番号の魔法陣400以外の領域がタッチされた場合には、操作ミスと判定し、処理はステップS815に進む。
【0291】
また、ステップS801で“NO”の場合、つまり、タッチパネル24がタッチされていない場合には、処理はステップS813に進む。
【0292】
ステップS813では、CPUコア34は、問題の制限時間が経過したか否かを判断する。なお、この判定のために、問題の最初の描画からの経過時間を計測するカウンタが記憶領域244に設けられている。ステップS813で“YES”の場合、つまり、制限時間内に最後の魔法陣400までタッチすることができなかった場合には、操作ミスと判定し、処理はステップS815に進む。
【0293】
ステップS815では、CPUコア34は記憶領域244に記憶されるミス判定フラグをオンにする。この操作ミス判定によって、魔法が発動されることとなる。なお、ステップS813で“NO”の場合には、そのままこの操作判定処理を終了し、処理は図27の魔法処理(この場合、順番押し操作の魔法処理)のステップS59に戻る。
【0294】
図39および図40は、順番押し操作の魔法処理における表示態様変更処理の動作の一例を示す。この表示態様変更処理は図28のステップS69で実行される。
【0295】
CPUコア34は、ステップS901で、記憶領域242に記憶されるレベルが上がったか否かを判断する。このステップS901の処理はステップS403(図34)の処理と同様である。ステップS901で“YES”の場合、CPUコア34は、ステップS903でGPU46を用いてレベルアップ画像410を下画面のVRAM54の描画バッファに描画する。このステップS903の処理はステップS405(図34)の処理と同様である。
【0296】
続いて、ステップS905で、CPUコア34は、GPU46を用いてグッド画像422を下画面のVRAM54の描画バッファに描画する。なお、この描画のためには、CPUコア34は、オブジェクトデータ記憶領域238に記憶される下画面ガイド用の入力状態メッセージ用オブジェクトのうちのグッド画像422の座標パラメータにタッチ位置の座標を記憶する。
【0297】
さらに、ステップS907で、CPUコア34は、GPU44を用いてVRAM52に描画される上画面ガイド用の背景画像の色を青色に変更する。これによって、仮想イメージ領域402の背景の色が黒から青に変更されて、レベルがアップしたことが表現される。
【0298】
ステップS907を終了し、またはステップS901で“NO”の場合、CPUコア34は、ステップS909で記憶領域244に記憶される正解フラグがオンであるか否かを判断する。ステップS909で“YES”の場合、CPUコア34は、ステップS911で、GPU46を用いてOK画像418を下画面のVRAM54の描画バッファに描画する。
【0299】
ステップS913では、CPUコア34は、仮想イメージ領域402において、正解された魔法陣(番号)404を消去して矩形画像420を描画する。なお、この描画のために、CPUコア34は、記憶領域238の上画面ガイド用のオブジェクトデータにおいて、正解された魔法陣400に対応する魔法陣404の座標パラメータに表示無しデータを記憶し、また、矩形画像420の座標パラメータに正解された魔法陣400に対応する位置の座標を記憶する。また、ステップS915で、CPUコア34は記憶領域244に記憶される正解フラグをオフにする。
【0300】
ステップS915を終了すると、またはステップS909で“NO”の場合、CPUコア34は、ステップS917でOK画像418の描画から一定時間が経過したか否かを判断する。なお、この判定のために、OK画像418の描画から経過した時間を計測するカウンタが記憶領域244に記憶される。
【0301】
ステップS917で“YES”の場合、CPUコア34はステップS919でOK画像418を下画面から消去する。なお、この描画処理のために、CPUコア34は、オブジェクトデータ記憶領域238に記憶される下画面用の入力状態メッセージ用オブジェクトのうちのOK画像418の座標パラメータに表示無しデータを記憶する。
【0302】
また、ステップS921で、CPUコア34は正解された魔法陣400の番号を下画面から消去する。なお、この描画処理のために、CPUコア34は、オブジェクトデータ記憶領域238に記憶される下画面用の魔法陣オブジェクトのうち正解された魔法陣400の番号の座標パラメータに表示無しデータを記憶する。
【0303】
さらに、ステップS923でCPUコア34は、矩形画像420を上画面から消去する。この描画処理のために、CPUコア34は、オブジェクトデータ記憶領域238に記憶される上画面用の入力状態メッセージ用オブジェクトのうちの矩形画像420の座標パラメータに表示無しデータを記憶する。
【0304】
ステップS923を終了すると、またはステップS917で“NO”の場合、処理は図40のステップS925へ進む。ステップS925では、CPUコア34は、記憶領域244に記憶されるミス判定フラグがオンであるか否かを判断する。ステップS925で“YES”の場合、CPUコア34は、GPU44を用いてVRAM52に描画される上画面ガイド用の背景画像の色を赤色に変更する。これによって、仮想イメージ領域402の背景の色が黒から赤に変更されて、操作ミスと判定されたことが表現される。
【0305】
ステップS927を終了し、またはステップS925で“NO”の場合には、CPUコア34は、ステップS929で記憶領域242に記憶されるレベルが最大であるか否かを判断する。ステップS929で“NO”の場合、CPUコア34はステップS931で下画面のレベル画像の描画から一定時間が経過したか否かを判断する。下画面のレベル画像はレベルアップしたときに表示される。最大レベルになっていれば魔法が発動されるので、次の問題を出さなくてよいが、最大レベルに到達していなければ、次の問題を出す必要がある。
【0306】
ステップS931で“YES”の場合、つまり、次の問題を表示する必要がある場合には、CPUコア34はステップS933で問題(魔法陣400の配置)を変更する。なお、上述のように、魔法陣400の配置は予め決められたものを読み出してもよいし、あるいはランダムに決められてもよい。
【0307】
続いて、ステップS935で、CPUコア34は、GPU46を用いて下画面ガイド用の背景画像および魔法陣400を下画面のVRAM54の描画バッファに描画する。魔法陣400のオブジェクトデータの座標パラメータは、変更された問題データに基づいて変更される。さらに、ステップS937で、CPUコア34は、GPU44を用いて上画面ガイド用の背景画像および魔法陣404を上画面のVRAM52の描画バファに描画する。このようにして、魔法陣400の配置の変更された次の問題がプレイヤに提示されることとなる。ステップS931で“NO”の場合、またはステップS929で“NO”の場合、この表示態様変更処理を終了し、処理は図28のステップS71へ戻る。
【0308】
この実施例によれば、たとえば仮想空間画像のような所定の画像の表示されるLCD12に、仮想イメージ領域402を設けて、タッチパネル24を用いたユーザの指示位置に対応する位置にカーソル画像406を表示するようにしたので、ユーザは手元のタッチパネル24を見なくてもLCD12の画像を見ながら操作を行うことができる。
【0309】
なお、上述の実施例では、タッチパネル24は、その下に第2の表示領域としてLCD14の設けられたタッチスクリーンであったが、他の実施例では、タッチパネル24は、その下に表示領域の設けられない単なるタッチパネル、すなわちタッチパッドであってもよい。この場合、第2の表示領域が設けられず、ユーザインターフェースが表示されないが、第1の表示領域としてのLCD12に表示される仮想イメージ領域402にガイド画像およびタッチ座標に対応するカーソル406が表示されるので、プレイヤは手元を見なくても操作を行うことができる。
【0310】
また、上述の各実施例では、第1の表示領域および第2の表示領域は、別々のハードウェアとしてのLCD12およびLCD14のそれぞれ設けられた。しかし、他の実施例では、1つの表示装置に第1の表示領域および第2の表示領域を設けるようにしてもよい。
【図面の簡単な説明】
【0311】
【図1】図1はこの発明のゲーム装置の実施形態の機能ブロック図である。
【図2】図2は変形された実施形態の機能ブロック図である。
【図3】図3はこの発明のゲーム装置の一実施例を示す図解図である。
【図4】図4は図3に示すゲーム装置の電気的構成の一例を示すブロック図である。
【図5】図5はゲーム装置のメモリマップのうちプログラム記憶領域を示す図解図である。
【図6】図6はゲーム装置のメモリマップのうちデータ記憶領域の一部を示す図解図である。
【図7】図7はゲーム装置のメモリマップのうちデータ記憶領域の他の一部を示す図解図である。
【図8】図8はコマンド選択画面の一例を示す図解図である。
【図9】図9は種類選択画面の一例を示す図解図である。
【図10】図10は種類確認画面の一例を示す図解図である。
【図11】図11は対象選択画面の一例を示す図解図である。
【図12】図12は開始確認画面の一例を示す図解図である。
【図13】図13はこすり操作の魔法の処理において表示される画面の一例を示す図解図である。
【図14】図14はタッチ位置の仮想イメージ領域における対応位置の算出の概要を示す図解図である。
【図15】図15はこすり操作の魔法の処理においてレベルが上がったときの画面の一例を示す図解図である。
【図16】図16はこすり操作の魔法の処理においてレベル3になったときの画面の一例を示す図解図である。
【図17】図17はこすり操作の魔法の処理において操作ミスと判定されたときの画面の一例を示す図解図である。
【図18】図18はつつき操作の魔法の処理において表示される画面の一例を示す図解図である。
【図19】図19はタイミング押し操作の魔法の処理において表示される画面の一例を示す図解図である。
【図20】図20はタイミング押し操作の魔法の処理において操作に成功したときの画面の一例を示す図解図である。
【図21】図21は順番押し操作の魔法の処理において最初に表示される画面の一例を示す図解図である。
【図22】図22は順番押し操作の魔法の処理において正解のときの画面の一例を示す図解図である。
【図23】図23は順番押し操作の魔法の処理においてレベルが上がったときの画面の一例を示す図解図である。
【図24】図24は順番押し操作の魔法の処理において操作ミスと判定されたときの画面の一例を示す図解図である。
【図25】図25は魔法発動によって表示されるアニメーションの一例を示す図解図である。
【図26】図26はゲーム装置の動作の一例を示すフロー図である。
【図27】図27はこすり操作の魔法処理の動作の一例の一部を示すフロー図である。
【図28】図28は図27の続きの一部を示すフロー図である。
【図29】図29は図27の続きの一部を示すフロー図である。
【図30】図30は図27に示す初期UI描画処理の動作の一例を示すフロー図である。
【図31】図31は図27に示すこすり操作の判定処理の動作の一例の一部を示すフロー図である。
【図32】図32は図31の続きの一部を示すフロー図である。
【図33】図33は図32の続きを示すフロー図である。
【図34】図34は図28に示す表示態様変更処理の動作の一例を示すフロー図である。
【図35】図35はつつき操作の魔法処理における操作判定処理の動作の一例を示すフロー図である。
【図36】図36はタイミング押し操作の魔法処理における操作判定処理の動作の一例を示すフロー図である。
【図37】図37はタイミング押し操作の魔法処理における表示態様変更処理の動作の一例を示すフロー図である。
【図38】図38は順番押し操作の魔法処理における操作判定処理の動作の一例を示すフロー図である。
【図39】図39は順番押し操作の魔法処理における表示態様変更処理の動作の一例の一部を示すフロー図である。
【図40】図40は図39の続きを示すフロー図である。
【符号の説明】
【0312】
10 …ゲーム装置
12,14 …LCD
24 …タッチパネル
28 …メモリカード
28a …ROM
28b …RAM
34 …CPUコア
42 …RAM
44,46 …GPU
50 …LCDコントローラ
52,54 …VRAM
306 …リスト
400、404 …魔法陣
402 …仮想イメージ領域
406 …カーソル
408a …レベルゲージ
408b、412 …レベル画像
410 …レベルアップ画像
414 …ミス画像
416 …ナイス画像
418 …OK画像
420 …矩形画像
422 …グッド画像

【特許請求の範囲】
【請求項1】
画像データを記憶する記憶手段、所定の画像を表示するための第1の表示領域、およびタッチパネルを有するゲーム装置において実行されるゲームプログラムであって、
前記ゲーム装置の処理手段を、
前記第1の表示領域に所定の画像を表示する第1の表示制御手段、
前記タッチパネルの検出に基づいて座標を検出する座標検出手段、
前記第1の表示領域の一部領域に設けられる仮想イメージ領域における、前記座標検出手段によって検出された座標の対応位置を算出する対応位置算出手段、
前記仮想イメージ領域内の対応位置に所定画像を表示する対応位置表示手段、
前記座標検出手段によって検出された座標に基づいて、所定のタッチ操作があったか否かを判定するタッチ操作判定手段、および
前記所定のタッチ操作があったと判定されるときに所定の処理を実行するタッチ操作処理手段として機能させる、ゲームプログラム。
【請求項2】
前記ゲーム装置は、所定の画像を表示するための第2の表示領域をさらに有し、
前記タッチパネルは前記第2の表示領域上に設けられるタッチスクリーンであり、
前記処理手段を、前記第2の表示領域に所定の画像を表示する第2の表示制御手段としてさらに機能させる、請求項1記載のゲームプログラム。
【請求項3】
前記第2の表示制御手段は、前記第2の表示領域にユーザ操作のインターフェースとなる画像を表示する、請求項2記載のゲームプログラム。
【請求項4】
前記第2の表示制御手段は、タッチ操作のガイドとなる第2ガイド画像を前記第2の表示領域に表示する、請求項3記載のゲームプログラム。
【請求項5】
前記処理手段を、前記仮想イメージ領域にタッチ操作のガイドとなる第1ガイド画像を表示するガイド画像表示制御手段としてさらに機能させる、請求項4記載のゲームプログラム。
【請求項6】
前記ガイド画像表示制御手段は、前記第2の表示制御手段によって前記第2の表示領域に表示される前記第2ガイド画像に対応して記憶される縮小ガイド画像を前記仮想イメージ領域に表示する、請求項5記載のゲームプログラム。
【請求項7】
前記処理手段を、
現在操作すべきタッチ操作の種類を選択する操作種類選択手段、および
前記仮想イメージ領域にタッチ操作のガイドとなる第1ガイド画像を表示するガイド画像表示制御手段としてさらに機能させ、
前記ガイド画像表示制御手段は、前記操作種類選択手段によって選択された操作種類に応じた第1ガイド画像を表示する、請求項1記載のゲームプログラム。
【請求項8】
前記ゲーム装置は、所定の画像を表示するための第2の表示領域をさらに備え、
前記タッチパネルは前記第2の表示領域上に設けられるタッチスクリーンであり、
前記処理手段を、前記操作種類選択手段によって選択された種類に応じたタッチ操作のガイドとなる第2ガイド画像を前記第2の表示領域に表示する第2の表示制御手段としてさらに機能させる、請求項7記載のゲームプログラム。
【請求項9】
前記タッチ操作判定手段は、前記操作種類選択手段によって選択された種類に応じたタッチ操作の判定を行う、請求項7または8記載のゲームプログラム。
【請求項10】
前記処理手段を、
前記仮想イメージ領域にタッチ操作のガイドとなる第1ガイド画像を表示するガイド画像表示制御手段、および
前記第1ガイド画像の表示態様を変更する表示態様変更手段としてさらに機能させ、
前記ガイド画像表示制御手段は、前記表示態様変更手段によって変更された表示態様に応じた第1ガイド画像を前記仮想イメージ領域に表示する、請求項1記載のゲームプログラム。
【請求項11】
前記ゲーム装置は、所定の画像を表示する第2の表示領域をさらに有し、
前記タッチパネルは前記第2の表示領域上に設けられるタッチスクリーンであり、
前記処理手段を、タッチ操作のガイドとなる第2ガイド画像を前記第2の表示領域に表示する第2の表示制御手段、および
前記第2ガイド画像の表示態様を変更する表示態様変更手段としてさらに機能させ、
前記第2の表示制御手段は、前記表示態様変更手段によって変更された表示態様に応じた第2ガイド画像を表示する、請求項7記載のゲームプログラム。
【請求項12】
前記表示態様変更手段は、前記タッチ操作判定手段によるタッチ操作の判定に応じて前記表示態様を変更する、請求項10または11記載のゲームプログラム。
【請求項13】
前記タッチ操作判定手段は、前記表示態様変更手段によって変更された表示態様に応じた所定のタッチ操作があったか否かを判定する、請求項10または11記載のゲームプログラム。
【請求項14】
前記ゲーム装置は、所定の画像を表示するための第2の表示領域をさらに有し、
前記タッチパネルは、前記第2の表示領域上に設けられるタッチスクリーンであり、
前記処理手段を、
前記第2の表示領域に所定の画像を表示する第2の表示制御手段、および
前記タッチ操作判定手段によってタッチ操作が所定条件を満たすと判定されるときに前記第1の表示領域に判定結果を表示する判定結果表示手段として機能させ、
前記判定結果表示手段は、前記判定結果を前記第2の表示領域にも表示する、請求項1記載のゲームプログラム。
【請求項15】
画像データを記憶する記憶手段、所定の画像を表示するための第1の表示領域、およびタッチパネルを有するゲーム装置であって、
前記第1の表示領域に所定の画像を表示する第1の表示制御手段、
前記タッチパネルの検出に基づいて座標を検出する座標検出手段、
前記第1の表示領域の一部領域に設けられる仮想イメージ領域における、前記座標検出手段によって検出された座標の対応位置を算出する対応位置算出手段、
前記仮想イメージ領域内の対応位置に所定画像を表示する対応位置表示手段、
前記座標検出手段によって検出された座標に基づいて、所定のタッチ操作があったか否かを判定するタッチ操作判定手段、および
前記所定のタッチ操作があったと判定されるときに所定の処理を実行するタッチ操作処理手段を備える、ゲーム装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図14】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図40】
image rotate

【図13】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図24】
image rotate