(57)【要約】【課題】  ポインティングデバイスを用いてタッチパネルを操作する方法やプレイヤの習熟度や年齢等に応じて、適切な操作感覚を実現するゲームプログラムおよびゲーム装置を提供する。【解決手段】  ゲーム装置１は、第１モードｍｏｄｅ１および第２モードｍｏｄｅ２モードに応じて最大入力レベル（Ｉ＝１００％）となる入力距離Ｄをそれぞれ設定している。そして、ゲーム装置１は、上記最大入力レベルになるまでの区間については、モードに応じてそれぞれ異なった傾きを示す係数を入力距離Ｄに乗算して入力レベルＩに換算する。したがって、タッチパネル操作方法に応じた複数モードを設定することによって、当該タッチパネル操作方法の相違に対応してそれぞれ適切なゲームパラメータを得ることができる。【選択図】  図４
2006141723.tif 000002
【特許請求の範囲】
【請求項１】
プレイヤの操作に応じて所定の座標系に基づいた座標情報を出力するポインティングデバイスによって操作されるゲーム装置のコンピュータに実行されるゲームプログラムであって、
前記コンピュータに、
前記座標系の基準座標を設定する基準座標設定ステップ、
前記基準座標を記憶する基準座標記憶ステップ、
前記ポインティングデバイスから出力される座標情報に基づいて、前記座標系における指示座標を設定する指示座標設定ステップ、
前記基準座標から前記指示座標までの距離を算出する算出ステップ、
プレイヤの選択に応じて第１モードおよび第２モードの一方を選択する選択ステップ、
前記選択ステップによって前記第１モードが選択されたときに、前記算出ステップによって算出される距離を第１の換算関数を用いて換算して、所定のパラメータを決定する第１パラメータ決定ステップ、
前記選択ステップによって前記第２モードが選択されたときに、前記算出ステップによって算出される距離を第２の換算関数を用いて換算して、前記パラメータを決定する第２パラメータ決定ステップ、および
前記パラメータを用いてゲーム処理を行うものであり、前記選択ステップにより前記第１モードが選択されたかまたは前記第２モードが選択されたかに応じて、前記第１パラメータ決定ステップによって決定されたパラメータまたは前記第２パラメータ設定ステップによって決定されたパラメータのいずれかを用いてゲーム処理を行うゲーム処理ステップ、を実行させるゲームプログラム。
【請求項２】
前記第２の換算関数は、前記算出ステップによって算出される距離を前記第１の換算関数を用いて換算した値より小さな値に換算する関数であることを特徴とする、請求項１に記載のゲームプログラム。
【請求項３】
前記ゲームプログラムは、前記選択ステップによって前記第１モードが選択されたときに前記算出ステップによって算出される距離に対する基準となる第１基準距離を設定し、前記第２モードが選択されたときに前記算出ステップによって算出される距離に対する基準となる第２基準距離を設定する基準距離設定ステップを、前記コンピュータにさらに実行させ、
前記第１パラメータ決定ステップが用いる前記第１の換算関数は、前記算出ステップによって算出される距離を前記基準距離設定ステップによって設定された前記第１基準距離に対する比率を前記パラメータして算出する関数であり、
前記第２パラメータ決定ステップが用いる前記第２の換算関数は、前記算出ステップによって算出される距離の前記基準距離設定ステップによって設定された前記第２基準距離に対する比率を前記パラメータとして算出する関数であることを特徴とする、請求項１に記載のゲームプログラム。
【請求項４】
前記第１パラメータ決定ステップは、前記選択ステップが前記第１モードを選択し前記算出ステップによって算出される距離が前記第１基準距離より大きいとき、前記第１の換算関数を用いて前記パラメータを比率１００％で算出し、
前記第２パラメータ決定ステップは、前記選択ステップが前記第２モードを選択し前記算出ステップによって算出される距離が前記第２基準距離より大きいとき、前記第２の換算関数を用いて前記パラメータを比率１００％で算出することを特徴とする、請求項３に記載のゲームプログラム。
【請求項５】
前記ポインティングデバイスは、タッチパネルであり、
前記第１モードは、プレイヤが自身の指で前記タッチパネルを直接タッチして操作することを想定しており、
前記第２モードは、プレイヤが棒状部材を用いてその先端で前記タッチパネルをタッチして操作することを想定しており、
前記基準距離設定ステップは、前記第２基準距離を前記第１基準距離より長く設定することを特徴とする、請求項３に記載のゲームプログラム。
【請求項６】
前記ゲーム処理ステップは、前記パラメータに応じて仮想ゲーム空間に登場するゲームオブジェクトの移動速度を決定してゲーム処理を行うことを特徴とする、請求項１に記載のゲームプログラム。
【請求項７】
前記算出ステップは、前記基準座標から前記指示座標までの方向をさらに算出し、
前記ゲーム処理ステップは、前記パラメータおよび前記方向に応じてゲーム処理を行うことを特徴とする、請求項１に記載のゲームプログラム。
【請求項８】
前記ゲーム処理ステップは、前記方向に応じて仮想ゲーム空間に登場するゲームオブジェクトの向きを決定してゲーム処理を行うことを特徴とする、請求項７に記載のゲームプログラム。
【請求項９】
前記基準座標設定ステップは、前記指示座標設定ステップで最初に設定した指示座標を前記基準座標に設定することを特徴とする、請求項１に記載のゲームプログラム。
【請求項１０】
前記ゲームプログラムは、
前記第１パラメータ決定ステップによって決定されたパラメータが第１の閾値未満のとき、第３の換算関数を用いて当該パラメータを換算したゲームパラメータを決定する第１ゲームパラメータ決定ステップ、
前記第１パラメータ決定ステップによって算出されたパラメータが前記第１の閾値以上のとき、前記第３の換算関数によって当該パラメータを換算した値より大きな値に換算する第４の換算関数を用いて当該パラメータを換算した前記ゲームパラメータを決定する第２ゲームパラメータ決定ステップ、
前記第２パラメータ決定ステップによって決定されたパラメータが第２の閾値未満のとき、第５の換算関数を用いて当該パラメータを換算した前記ゲームパラメータを決定する第３ゲームパラメータ決定ステップ、および
前記第２パラメータ決定ステップによって算出されたパラメータが前記第２の閾値以上のとき、前記第５の換算関数によって当該パラメータを換算した値より大きな値に換算する第６の換算関数を用いて当該パラメータを換算した前記ゲームパラメータを決定する第４ゲームパラメータ決定ステップ、をさらに前記コンピュータに実行させ、
前記ゲーム処理ステップは、前記選択ステップにより前記第１モードが選択されたときに、前記第１ゲームパラメータ決定ステップまたは前記第２ゲームパラメータ設定ステップによって決定されたゲームパラメータを用いてゲーム処理を行い、前記選択ステップにより前記第２モードが選択されたときに、前記第３ゲームパラメータ決定ステップまたは前記第４ゲームパラメータ設定ステップによって決定されたゲームパラメータを用いてゲーム処理を行うことを特徴とする、請求項１に記載のゲームプログラム。
【請求項１１】
前記算出ステップは、前記基準座標から前記指示座標までの方向をさらに算出し、
前記ゲーム処理ステップは、前記選択ステップにより前記第１モードが選択され、かつ前記第１パラメータ決定ステップによって算出されたパラメータが第１の閾値未満のとき、および前記選択ステップにより前記第２モードが選択され、かつ、前記第２パラメータ決定ステップによって算出されたパラメータが第２の閾値未満のとき、前記算出ステップが算出した方向のみに応じてゲーム処理を行い、
前記ゲーム処理ステップは、前記選択ステップにより前記第１モードが選択され、かつ、前記第１パラメータ決定ステップによって算出されたパラメータが前記第１の閾値以上のとき、および前記選択ステップにより前記第２モードが選択され、かつ、前記第２パラメータ決定ステップによって算出されたパラメータが前記第２の閾値以上のとき、前記パラメータおよび前記方向に応じてゲーム処理を行うことを特徴とする、請求項１に記載のゲームプログラム。
【請求項１２】
前記第２の閾値は、前記第１の閾値よりも大きいことを特徴とする、請求項１０または１１に記載のゲームプログラム。
【請求項１３】
プレイヤの操作に応じて所定の座標系に基づいた座標情報を出力するポインティングデバイスによって操作されるゲーム装置であって、
前記座標系の基準座標を設定する基準座標設定手段、
前記基準座標を記憶する基準座標記憶手段、
前記ポインティングデバイスから出力される座標情報に基づいて、前記座標系における指示座標を設定する指示座標設定手段、
前記基準座標から前記指示座標までの距離を算出する算出手段、
プレイヤの選択に応じて第１モードおよび第２モードの一方を選択する選択手段、
前記選択手段によって前記第１モードが選択されたときに、前記算出手段によって算出される距離を第１の換算関数を用いて換算して、所定のパラメータを決定する第１パラメータ決定手段、
前記選択手段によって前記第２モードが選択されたときに、前記算出手段によって算出される距離を第２の換算関数を用いて換算して、前記パラメータを決定する第２パラメータ決定手段、および
前記パラメータを用いてゲーム処理を行うものであり、前記選択手段により前記第１モードが選択されたかまたは前記第２モードが選択されたかに応じて、前記第１パラメータ決定手段によって決定されたパラメータまたは前記第２パラメータ設定手段によって決定されたパラメータのいずれかを用いてゲーム処理を行うゲーム処理手段を備える、ゲーム装置。
【請求項１４】
ユーザの操作に応じて所定の座標系に基づいた座標情報を出力するポインティングデバイスによって操作される情報処理装置のコンピュータに実行されるプログラムであって、
前記コンピュータに、
前記座標系の基準座標を設定する基準座標設定ステップ、
前記基準座標を記憶する基準座標記憶ステップ、
前記ポインティングデバイスから出力される座標情報に基づいて、前記座標系における指示座標を設定する指示座標設定ステップ、
前記基準座標から前記指示座標までの距離を算出する算出ステップ、
ユーザの選択に応じて第１モードおよび第２モードの一方を選択する選択ステップ、
前記選択ステップによって前記第１モードが選択されたときに、前記算出ステップによって算出される距離を第１の換算関数を用いて換算して、所定のパラメータを決定する第１パラメータ決定ステップ、
前記選択ステップによって前記第２モードが選択されたときに、前記算出ステップによって算出される距離を第２の換算関数を用いて換算して、前記パラメータを決定する第２パラメータ決定ステップ、および
前記パラメータを用いて操作処理を行うものであり、前記選択ステップにより前記第１モードが選択されたかまたは前記第２モードが選択されたかに応じて、前記第１パラメータ決定ステップによって決定されたパラメータまたは前記第２パラメータ設定ステップによって決定されたパラメータのいずれかを用いて操作処理を行う操作処理ステップ、を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲームプログラムおよびゲーム装置に関し、より特定的には、タッチパネル等のポインティングデバイスを用いたコンピュータゲームで用いられるゲームプログラムおよびゲーム装置に関する。
【背景技術】
【０００２】
従来、ポインティングデバイスによって指定された座標に基づいて、入力の大きさおよび入力方向を決定する入力方式がある。例えば、プレイヤがタッチパネルを用いて操作する入力装置が開発されている（例えば、特許文献１参照）。特許文献１で開示された入力装置では、当該特許文献１の図３に示されているように、プレイヤがタッチパネルをタッチしたタッチ座標とタッチパネルの中心との間の方向と距離により、カーソルの移動方向と移動量を決定している。
【特許文献１】特開平１１−５３１１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ここで、プレイヤは、スタイラス等の器具を用いてタッチパネルをタッチ操作したり、自身の指で直接タッチパネルをタッチ操作したりすることが考えられる。一般的に、プレイヤがタッチパネルに対して同じ距離だけ撫でる操作をしようとしても、スタイラス等の棒状の器具を用いてタッチパネルを操作すると、指で直接操作するよりその距離が長くなる傾向にある。これは、指で直接操作する方法に比べて、棒状の器具をプレイヤが掴む位置からタッチパネルと接触する位置（つまり、器具の先端部）までの距離が長いため、タッチパネル操作における支点距離が長くなるためである。したがって、タッチパネルを操作する方法に応じて、プレイヤが適切と感じる操作感覚が異なってくる。また、プレイヤのタッチパネルに対する操作の習熟度や年齢等によっても、プレイヤに対する適切な操作感覚が異なってくる。
【０００４】
しかしながら、上記特許文献１で開示された入力装置では、プレイヤのタッチ操作に応じて、そのタッチ座標とタッチパネルの中心との間の方向および距離を求め、２つのパラメータ（方向および移動量）を決定しているが、その決定方法が固定されている。したがって、上記入力装置では固定された操作感覚を有するタッチパネルを提供するのみであり、上述したタッチパネルを操作する方法やプレイヤの習熟度等に応じたゲーム処理を行うことができなかった。
【０００５】
それ故に、本発明の目的は、ポインティングデバイスを用いてタッチパネルを操作する方法やプレイヤの習熟度や年齢等に応じて、適切な操作感覚を実現するゲームプログラムおよびゲーム装置を提供することである。
【課題を解決するための手段】
【０００６】
上記の目的を達成するために、本発明は以下の構成を採用した。なお、括弧内の参照符号やステップ番号（ステップをＳと略称しステップ番号のみを記載する）等は、本発明の理解を助けるために後述する実施形態との対応関係を示したものであって、本発明の範囲を何ら限定するものではない。
【０００７】
第１の発明は、ポインティングデバイス（１３）によって操作されるゲーム装置（１）のコンピュータ（２１）に実行されるゲームプログラムである。ポインティングデバイスは、プレイヤの操作に応じて所定の座標系に基づいた座標情報を出力する。ゲームプログラムは、基準座標設定ステップ（Ｓ５３）、基準座標記憶ステップ（Ｓ５３）、指示座標設定ステップ（Ｓ５４）、算出ステップ（Ｓ５５）、選択ステップ（Ｓ５１）、第１パラメータ決定ステップ（Ｓ５７）、第２パラメータ決定ステップ（Ｓ５７）、およびゲーム処理ステップ（Ｓ５９、Ｓ６０、Ｓ６２、Ｓ６３）をコンピュータに実行させる。基準座標設定ステップは、座標系の基準座標（基準位置）を設定する。基準座標記憶ステップは、基準座標を記憶する。指示座標設定ステップは、ポインティングデバイスから出力される座標情報に基づいて、座標系における指示座標（タッチ位置）を設定する。算出ステップは、基準座標から指示座標までの距離（入力距離Ｄ）を算出する。選択ステップは、プレイヤの選択に応じて第１モード（ｍｏｄｅ１）および第２モード（ｍｏｄｅ２）の一方を選択する。第１パラメータ決定ステップは、選択ステップによって第１モードが選択されたときに、算出ステップによって算出される距離を第１の換算関数（図４に示すｍｏｄｅ１の関数）を用いて換算して、所定のパラメータ（Ｉ）を決定する。第２パラメータ決定ステップは、選択ステップによって第２モードが選択されたときに、算出ステップによって算出される距離を第２の換算関数（図４に示すｍｏｄｅ２の関数）を用いて換算して、パラメータを決定する。ゲーム処理ステップは、パラメータを用いてゲーム処理を行うものであり、選択ステップにより第１モードが選択されたかまたは第２モードが選択されたかに応じて、第１パラメータ決定ステップによって決定されたパラメータまたは第２パラメータ設定ステップによって決定されたパラメータのいずれかを用いてゲーム処理を行う。なお、ポインティングデバイスは、画面上での入力位置や座標を指定する入力装置であり、例えば、タッチパネル、マウス、トラックパッド、トラックボールなどで実現される。そして、それぞれの入力装置で用いられる座標系は、タッチパネル座標系や画面座標系である。
【０００８】
第２の発明は、上記第１の発明において、第２の換算関数は、算出ステップによって算出される距離を第１の換算関数を用いて換算した値より小さな値に換算する関数である。
【０００９】
第３の発明は、上記第１の発明において、ゲームプログラムは、基準距離設定ステップ（Ｓ５２）を、コンピュータにさらに実行させる。基準距離設定ステップは、選択ステップによって第１モードが選択されたときに算出ステップによって算出される距離に対する基準となる第１基準距離（図４の３６ｄｏｔ）を設定し、第２モードが選択されたときに算出ステップによって算出される距離に対する基準となる第２基準距離（図４の４８ｄｏｔ）を設定する。第１パラメータ決定ステップが用いる第１の換算関数は、算出ステップによって算出される距離を基準距離設定ステップによって設定された第１基準距離に対する比率をパラメータして算出する関数である。第２パラメータ決定ステップが用いる第２の換算関数は、算出ステップによって算出される距離の基準距離設定ステップによって設定された第２基準距離に対する比率をパラメータとして算出する関数である。
【００１０】
第４の発明は、上記第３の発明において、第１パラメータ決定ステップは、選択ステップが第１モードを選択し算出ステップによって算出される距離が第１基準距離より大きいとき（図４の３６ｄｏｔ〜）、第１の換算関数を用いてパラメータを比率１００％で算出する。第２パラメータ決定ステップは、選択ステップが第２モードを選択し算出ステップによって算出される距離が第２基準距離より大きいとき（図４の４８ｄｏｔ〜）、第２の換算関数を用いてパラメータを比率１００％で算出する。
【００１１】
第５の発明は、上記第３の発明において、ポインティングデバイスは、タッチパネルである。第１モードは、プレイヤが自身の指でタッチパネルを直接タッチして操作することを想定している。第２モードは、プレイヤが棒状部材（１６）を用いてその先端でタッチパネルをタッチして操作することを想定している。基準距離設定ステップは、第２基準距離を第１基準距離より長く設定する。
【００１２】
第６の発明は、上記第１の発明において、ゲーム処理ステップは、パラメータに応じて仮想ゲーム空間に登場するゲームオブジェクトの移動速度（移動量Ｍ）を決定してゲーム処理を行う。
【００１３】
第７の発明は、上記第１の発明において、算出ステップは、基準座標から指示座標までの方向（Ｓ８１）をさらに算出する。ゲーム処理ステップは、入力レベルおよび方向に応じてゲーム処理を行う。
【００１４】
第８の発明は、上記第７の発明において、ゲーム処理ステップは、方向に応じて仮想ゲーム空間に登場するゲームオブジェクトの向きを決定して（Ｓ８２）ゲーム処理を行う。
【００１５】
第９の発明は、上記第１の発明において、基準座標設定ステップは、指示座標設定ステップで最初に設定した指示座標を基準座標に設定する。
【００１６】
第１０の発明は、上記第１の発明において、ゲームプログラムは、第１ゲームパラメータ決定ステップ、第２ゲームパラメータ決定ステップ、第３ゲームパラメータ決定ステップ、および第４ゲームパラメータ決定ステップをさらにコンピュータに実行させる。第１ゲームパラメータ決定ステップは、第１パラメータ決定ステップによって決定されたパラメータが第１の閾値未満のとき、第３の換算関数を用いてそのパラメータを換算したゲームパラメータを決定する。第２ゲームパラメータ決定ステップは、第１パラメータ決定ステップによって算出されたパラメータが第１の閾値以上のとき、第３の換算関数によってそのパラメータを換算した値より大きな値に換算する第４の換算関数を用いてそのパラメータを換算したゲームパラメータを決定する。第３ゲームパラメータ決定ステップは、第２パラメータ決定ステップによって決定されたパラメータが第２の閾値未満のとき、第５の換算関数を用いてそのパラメータを換算したゲームパラメータを決定する。第４ゲームパラメータ決定ステップは、第２パラメータ決定ステップによって算出されたパラメータが第２の閾値以上のとき、第５の換算関数によってそのパラメータを換算した値より大きな値に換算する第６の換算関数を用いてそのパラメータを換算したゲームパラメータを決定する。ゲーム処理ステップは、選択ステップにより第１モードが選択されたときに、第１ゲームパラメータ決定ステップまたは第２ゲームパラメータ設定ステップによって決定されたゲームパラメータを用いてゲーム処理を行い、選択ステップにより第２モードが選択されたときに、第３ゲームパラメータ決定ステップまたは第４ゲームパラメータ設定ステップによって決定されたゲームパラメータを用いてゲーム処理を行う。
【００１７】
第１１の発明は、上記第１の発明において、算出ステップは、基準座標から指示座標までの方向をさらに算出する。ゲーム処理ステップは、選択ステップにより第１モードが選択され、かつ第１パラメータ決定ステップによって算出されたパラメータが第１の閾値未満のとき、および選択ステップにより第２モードが選択され、かつ、第２パラメータ決定ステップによって算出されたパラメータが第２の閾値未満のとき、算出ステップが算出した方向のみに応じてゲーム処理を行う。ゲーム処理ステップは、選択ステップにより第１モードが選択され、かつ、第１パラメータ決定ステップによって算出されたパラメータが第１の閾値以上のとき、および選択ステップにより第２モードが選択され、かつ、第２パラメータ決定ステップによって算出されたパラメータが第２の閾値以上のとき、パラメータおよび方向に応じてゲーム処理を行う。
【００１８】
第１２の発明は、上記第１０または第１１の発明において、第２の閾値は、第１の閾値よりも大きい。
【００１９】
第１３の発明は、ポインティングデバイスによって操作されるゲーム装置である。ポインティングデバイスは、プレイヤの操作に応じて所定の座標系に基づいた座標情報を出力する。ゲーム装置は、基準座標設定手段、基準座標記憶手段、指示座標設定手段、算出手段、選択手段、第１パラメータ決定手段、第２パラメータ決定手段、およびゲーム処理手段を備える。基準座標設定手段は、座標系の基準座標を設定する。基準座標記憶手段は、基準座標を記憶する。指示座標設定手段は、ポインティングデバイスから出力される座標情報に基づいて、座標系における指示座標を設定する。算出手段は、基準座標から指示座標までの距離を算出する。選択手段は、プレイヤの選択に応じて第１モードおよび第２モードの一方を選択する。第１パラメータ決定手段は、選択手段によって第１モードが選択されたときに、算出手段によって算出される距離を第１の換算関数を用いて換算して、所定のパラメータを決定する。第２パラメータ決定手段は、選択手段によって第２モードが選択されたときに、算出手段によって算出される距離を第２の換算関数を用いて換算して、パラメータを決定する。ゲーム処理手段は、パラメータを用いてゲーム処理を行うものであり、選択手段により第１モードが選択されたかまたは第２モードが選択されたかに応じて、第１パラメータ決定手段によって決定されたパラメータまたは第２パラメータ設定手段によって決定されたパラメータのいずれかを用いてゲーム処理を行う。
【００２０】
第１４の発明は、ポインティングデバイスによって操作される情報処理装置のコンピュータに実行されるプログラムである。ポインティングデバイスは、ユーザの操作に応じて所定の座標系に基づいた座標情報を出力する。プログラムは、基準座標設定ステップ、基準座標記憶ステップ、指示座標設定ステップ、算出ステップ、選択ステップ、第１パラメータ決定ステップ、第２パラメータ決定ステップ、および操作処理ステップをコンピュータに実行させる。基準座標設定ステップは、座標系の基準座標を設定する。基準座標記憶ステップは、基準座標を記憶する。指示座標設定ステップは、ポインティングデバイスから出力される座標情報に基づいて、座標系における指示座標を設定する。算出ステップは、基準座標から指示座標までの距離を算出する。選択ステップは、ユーザの選択に応じて第１モードおよび第２モードの一方を選択する。第１パラメータ決定ステップは、選択ステップによって第１モードが選択されたときに、算出ステップによって算出される距離を第１の換算関数を用いて換算して、所定のパラメータを決定する。第２パラメータ決定ステップは、選択ステップによって第２モードが選択されたときに、算出ステップによって算出される距離を第２の換算関数を用いて換算して、パラメータを決定する。操作処理ステップは、パラメータを用いて操作処理を行うものであり、選択ステップにより第１モードが選択されたかまたは第２モードが選択されたかに応じて、第１パラメータ決定ステップによって決定されたパラメータまたは第２パラメータ設定ステップによって決定されたパラメータのいずれかを用いて操作処理を行う。
【発明の効果】
【００２１】
上記第１の発明によれば、ポインティングデバイス操作方法等に応じて複数モード（第１モードおよび第２モード）を設定することによって、当該操作方法の相違に対応してそれぞれ適切なゲームパラメータを得ることができる。また、上記モードに応じた処理においては、当該モードに応じてそれぞれ入力距離を異なる換算関数を用いて変換し、そのパラメータを用いてゲーム処理することができる。つまり、モードが異なってもパラメータ算出以降のゲーム処理を共通にすることが可能であり、操作感覚が異なる複数のモードを共通のゲーム処理で実現することができる。
【００２２】
上記第２の発明によれば、第１モードに対して第２モードでは同じ入力距離に対して大きなパラメータに換算することができる。
【００２３】
上記第３の発明によれば、モードに応じた処理においては、当該モードに応じてそれぞれ入力距離を異なる基準距離に対する比率に変換し、その比率を用いてゲーム処理することができる。つまり、モードが異なっても比率算出以降のゲーム処理を共通にすることが可能であり、操作感覚が異なる複数のモードを共通のゲーム処理で実現することができる。
【００２４】
上記第４の発明によれば、プレイヤからの入力が第１基準距離および第２基準距離より大きい距離であるときに全て最大比率（１００％）となるため、当該最大比率を最大のパラメータに設定することによって、その後のゲーム処理が容易になる。
【００２５】
上記第５の発明によれば、一般的に、プレイヤがスタイラス等の棒状部材を用いてタッチパネルを操作する場合、指で直接操作するより入力距離が長くなる傾向にある。これは、指で直接操作する方法に比べて、棒状部材をプレイヤが掴む位置からタッチパネルと接触する位置（つまり、棒状部材の先端部）までの距離が長いため、タッチパネル操作における支点距離が長くなるためである。したがって、プレイヤは棒状部材を用いてタッチパネルをタッチ操作すると、入力距離が短い入力が難しくなる。第５の発明によれば、このようなタッチパネル操作方法の相違に対応してそれぞれ第１モードおよび第２モードが設定されており、第２モードに対して基準距離が長く設定されているため、タッチパネル操作方法の相違に対応して適切なゲームパラメータを得ることができる。
【００２６】
上記第６の発明によれば、プレイヤがポインティングデバイスを用いた入力距離に応じて設定されるパラメータを、ゲームオブジェクトの移動速度に反映させることができる。
【００２７】
上記第７の発明によれば、さらに基準座標から指示座標までの方向で示されるパラメータを用いてゲーム処理を行うことができる。
【００２８】
上記第８の発明によれば、プレイヤがポインティングデバイスを用いて操作する方向を、ゲームオブジェクトの向きに反映させることができる。
【００２９】
上記第９の発明によれば、プレイヤが操作感覚で基準座標を認識することができるため、基準座標の位置を目で確認する必要がない。また、ポインティングデバイスに対して常に固定された基準座標が設けられていないため、ポインティングデバイスの座標系における任意の位置から操作を始めることができる。
【００３０】
上記第１０の発明によれば、基準座標から指示座標までの距離において、モード毎に、当該距離に対してゲームパラメータが相対的に小さく決定される区間と、当該距離に対してゲームパラメータが相対的に大きく換算される区間とが設定されるため、プレイヤがポインティングデバイスを用いた操作に対する操作感覚を変化させることができる。
【００３１】
上記第１１の発明によれば、プレイヤは、基準座標から指示座標までの距離が所定の閾値以上となるようにポインティングデバイスを用いることによって、当該距離および方向に応じたゲーム処理を行わせることができ、上記距離が所定の閾値未満となるようにポインティングデバイスを用いることによって、方向のみに応じたゲーム処理を行わせることができる。
【００３２】
また、本発明のゲーム装置およびプログラムによれば、上述したゲームプログラムと同様の効果を得ることができる。
【発明を実施するための最良の形態】
【００３３】
図面を参照して、本発明の一実施形態に係るゲームプログラムを実行するゲーム装置について説明する。なお、図１は、本発明のゲームプログラムを実行するゲーム装置１の外観図である。ここでは、ゲーム装置１の一例として、携帯ゲーム装置を示す。
【００３４】
図１において、本実施形態のゲーム装置１は、２つの液晶表示器（ＬＣＤ）１１および１２を所定の配置位置となるように、ハウジング１８に収納して構成される。具体的には、第１液晶表示器（以下、「ＬＣＤ」という）１１および第２ＬＣＤ１２を互いに上下に配置して収納する場合は、ハウジング１８が下部ハウジング１８ａおよび上部ハウジング１８ｂから構成され、上部ハウジング１８ｂが下部ハウジング１８ａの上辺の一部で回動自在に支持される。上部ハウジング１８ｂは、第１ＬＣＤ１１の平面形状よりも少し大きな平面形状を有し、一方主面から第１ＬＣＤ１１の表示画面を露出するように開口部が形成される。下部ハウジング１８ａは、その平面形状が上部ハウジング１８ｂよりも横長に選ばれ、横方向の略中央部に第２ＬＣＤ１２の表示画面を露出する開口部が形成され、第２ＬＣＤ１２を挟む何れか一方にスピーカ１５の音抜き孔が形成されるとともに、第２ＬＣＤ１２を挟む左右に操作スイッチ部１４が装着される。
【００３５】
操作スイッチ部１４は、第２ＬＣＤ１２の右横における下部ハウジング１８ａの一方主面に装着される動作スイッチ（Ａボタン）１４ａおよび動作スイッチ（Ｂボタン）１４ｂと、第２ＬＣＤ１２の左横における下部ハウジング１８ａの一方主面に装着される方向指示スイッチ（十字キー）１４ｃと、スタートスイッチ１４ｄと、セレクトスイッチ１４ｅと、側面スイッチ１４ｆおよび１４ｇとを含む。動作スイッチ１４ａおよび１４ｂは、例えばサッカーゲーム等のスポーツゲームにおいてはパスやシュートを行う等の指示、アクションゲームにおいてはジャンプ、パンチ、武器を動かす等の指示、ロールプレイングゲーム（ＲＰＧ）やシミュレーションＲＰＧにおいてはアイテムの取得、武器またはコマンドの選択決定等の指示入力に使用される。方向指示スイッチ１４ｃは、プレイヤによって操作スイッチ部１４を用いて操作可能なプレイヤオブジェクト（またはプレイヤキャラクタ）の移動方向を指示したり、カーソルの移動方向を指示したりする等のゲーム画面における方向指示に用いられる。側面スイッチ（Ｌボタン）１４ｆおよび側面スイッチ（Ｒボタン）１４ｇは、下部ハウジング１８ａにおける上部面（上部側面）の左右に設けられる。また、必要に応じて、動作スイッチをさらに追加してもかまわない。
【００３６】
また、第２ＬＣＤ１２の上面には、本発明の入力装置の一例としてタッチパネル１３（図１における破線領域）が装着される。タッチパネル１３は、例えば、抵抗膜方式、光学式（赤外線方式）、静電容量結合式の何れの種類でもよく、その上面をスタイラス１６（または指でも可）で押圧操作、移動操作、または撫でる操作をしたとき、スタイラス１６の座標位置を検出して座標データを出力するポインティングデバイスの一例である。
【００３７】
上部ハウジング１８ｂの側面近傍には、必要に応じてタッチパネル１３を操作するスタイラス１６を収納するための収納孔（図１における二点破線領域）が形成される。この収納孔には、スタイラス１６が収納される。下部ハウジング１８ａの側面の一部には、ゲームプログラムを記憶したメモリ（例えば、ＲＯＭ）を内蔵したゲームカートリッジ１７（以下、単にカートリッジ１７と記載する）を着脱自在に装着するためのカートリッジ挿入部（図１における一点破線領域）が形成される。カートリッジ１７は、ゲームプログラムを記憶する情報記憶媒体であり、例えば、ＲＯＭまたはフラッシュメモリのような不揮発性半導体メモリが用いられる。カートリッジ挿入部の内部には、カートリッジ１７と電気的に接続するためのコネクタ（図２参照）が内蔵される。さらに、下部ハウジング１８ａ（または上部ハウジング１８ｂでも可）には、ＣＰＵ等の各種電子部品を実装した電子回路基板が収納される。なお、ゲームプログラムを記憶する情報記憶媒体としては、上記不揮発性半導体メモリに限らず、ＣＤ−ＲＯＭ、ＤＶＤ、あるいはそれらに類する光学式ディスク状記憶媒体でもよい。
【００３８】
次に、図２を参照して、ゲーム装置１の内部構成について説明する。なお、図２は、ゲーム装置１の内部構成を示すブロック図である。
【００３９】
図２において、ハウジング１８に収納される電子回路基板には、ＣＰＵコア２１が実装される。ＣＰＵコア２１には、所定のバスを介して、カートリッジ１７と接続するためのコネクタ２８が接続されるとともに、入出力インターフェース（Ｉ／Ｆ）回路２７、第１のグラフィック処理ユニット（第１ＧＰＵ）２４、第２のグラフィック処理ユニット（第２ＧＰＵ）２６、およびワーキングＲＡＭ（ＷＲＡＭ）２２が接続される。
【００４０】
コネクタ２８には、カートリッジ１７が着脱自在に接続される。カートリッジ１７は、上述したようにゲームプログラムを格納するための記憶媒体であり、具体的には、ゲームプログラムを記憶するＲＯＭ１７１とバックアップデータを書き換え可能に記憶するＲＡＭ１７２とを搭載する。カートリッジ１７のＲＯＭ１７１に記憶されたゲームプログラムは、ＷＲＡＭ２２にロードされ、当該ＷＲＡＭ２２にロードされたゲームプログラムがＣＰＵコア２１によって実行される。ＣＰＵコア２１がゲームプログラムを実行して得られる一時的なデータや画像を生成するためのデータがＷＲＡＭ２２に記憶される。
【００４１】
このように、ＲＯＭ１７１には、ゲーム装置１のコンピュータ、特にＣＰＵコア２１によって実行可能な形式の命令群及びデータ群であるゲームプログラムが記録される。そして、このゲームプログラムは、ＷＲＡＭ２２に適宜読み込まれ実行される。なお、本実施例では、ゲームプログラムなどをカートリッジ１７に記録させたが、これらゲームプログラムを他の媒体や通信回線を通じて供給することもできる。
【００４２】
Ｉ／Ｆ回路２７には、タッチパネル１３、操作スイッチ部１４、およびスピーカ１５が接続される。スピーカ１５は、上述した音抜き孔の内側位置に配置される。
【００４３】
第１ＧＰＵ２４には、第１ビデオＲＡＭ（以下「ＶＲＡＭ」）２３が接続され、第２ＧＰＵ２６には、第２のビデオＲＡＭ（以下「ＶＲＡＭ」）２５が接続される。第１ＧＰＵ２４は、ＣＰＵコア２１からの指示に応じて、ＷＲＡＭ２２に記憶される画像を生成するためのデータに基づいて第１ゲーム画像を生成し、第１ＶＲＡＭ２３に描画する。第２ＧＰＵ２６は、ＣＰＵコア２１からの指示に応じて、ＷＲＡＭ２２に記憶される画像を生成するためのデータに基づいて第２ゲーム画像を生成し、第２ＶＲＡＭ２５に描画する。
【００４４】
第１ＧＰＵ２４が第１ＬＣＤ１１に接続され、第２ＧＰＵ２６が第２ＬＣＤ１２に接続される。第１ＧＰＵ２４は、ＣＰＵコア２１からの指示に応じて第１ＶＲＡＭ２３に描画された第１ゲーム画像を第１ＬＣＤ１１に出力する。そして、第１ＬＣＤ１１は、第１ＧＰＵ２４から出力された第１ゲーム画像を表示する。第２ＧＰＵ２６は、ＣＰＵコア２１からの指示に応じて第２ＶＲＡＭ２５に描画された第２ゲーム画像を第２ＬＣＤ１２に出力する。そして、第２ＬＣＤ１２は、第２ＧＰＵ２６から出力された第２ゲーム画像を表示する。
【００４５】
Ｉ／Ｆ回路２７は、タッチパネル１３、操作スイッチ部１４、およびスピーカ１５等の外部入出力装置とＣＰＵコア２１との間のデータの受け渡しを行う回路である。タッチパネル１３（タッチパネル用のデバイスドライバを含む）は、第２ＶＲＡＭ２５の座標系に対応するタッチパネル座標系を有し、スタイラス１６等によって入力（指示）された位置に対応する位置座標のデータを出力するものである。例えば、第２ＬＣＤ１２の表示画面の解像度は２５６ｄｏｔ×１９２ｄｏｔであり、タッチパネル１３の検出精度も表示画面に対応した２５６ｄｏｔ×１９２ｄｏｔである。なお、タッチパネル１３の検出精度は、第２ＬＣＤ１２の表示画面の解像度よりも低いものであってもよいし、高いものであってもよい。
【００４６】
以下、図３〜図９を参照して、上記ゲーム装置１で実行されるゲームプログラムによる具体的な処理例を説明する。なお、図３は、タッチパネル１３に対するタッチ操作の際に設定される入力ベクトルを説明するための図である。図４は、入力距離Ｄに対応して算出される入力レベルＩを説明するためのグラフである。図５は、通常時おいて入力レベルＩに対応して算出される移動量Ｍを説明するためのグラフである。図６は、図４および図５の関係に基づいて、入力距離Ｄに対応して算出される移動量Ｍを説明するためのグラフである。図７は、第１モードｍｏｄｅ１時にタッチパネル１３に設定される各操作指示領域Ｚ１〜Ｚ５を説明するための図である。図８は、第２モードｍｏｄｅ２時にタッチパネル１３に設定される各操作指示領域Ｚ１〜Ｚ５を説明するための図である。図９は、特殊な状況時おいて入力レベルＩに対応して算出される移動量Ｍを説明するためのグラフである。
【００４７】
図３において、まずタッチパネル１３にタッチ操作の基準となる基準位置が設定される。例えば、基準位置は、タッチパネル１３の所定位置（例えば、タッチパネル１３の中央）に固定的に設定してもよいが、プレイヤが指定した位置に設定してもよい。後者の場合、例えば、プレイヤがタッチパネル１３にタッチオン（最初にタッチパネル１３をタッチする操作）した位置に設定されたりする。なお、基準位置は、その後のタッチ操作によって移動させてもかまわない。例えば、基準位置と後述するタッチ位置との間の距離が所定距離以上離れたときに、当該距離が所定距離になるように基準位置を随時変更してもかまわない。
【００４８】
上記基準位置からプレイヤがタッチパネル１３をタッチ操作している位置（タッチ位置）を結ぶベクトルが入力ベクトルとして設定される。つまり、プレイヤがタッチ位置を変えることによって入力ベクトルの方向（入力方向）および入力ベクトルの長さ（入力距離）が変わる。後述するゲーム装置１の処理動作においては、上記入力方向が基準方向（例えば、タッチパネル１３に沿った上方向）に対する角度で示され、上記入力距離がタッチパネル１３のドット（ｄｏｔ）数で示される。
【００４９】
図４に示すように、ゲーム装置１は、タッチパネル１３を用いて入力された入力距離Ｄ（ｄｏｔ）に応じて入力レベルＩ（％）を算出する。ここで、ゲーム装置１は、ゲーム開始時に選択されるモードに応じて、入力距離Ｄを入力レベルＩに換算するための換算式を変更する。例えば、モードは、タッチパネル１３をタッチ操作する方法に応じて設定されている。具体的には、プレイヤが自身の指や指に所定のポインティング部材を装着してタッチパネル１３をタッチ操作するモードとして、第１モードｍｏｄｅ１が設定されている。また、プレイヤがスタイラス１６を用いてタッチパネル１３をタッチ操作するモードとして、第２モードｍｏｄｅ２が設定されている。以下の説明においては、上述した目的で２つのモード（第１モードｍｏｄｅ１および第２モードｍｏｄｅ２）を設定した一例を用いて説明するが、他の条件でモードを設定してもかまわない。例えば、ゲームの難易度に応じて２つ以上のモードを設定してもかまわない。また、操作するプレイヤの年齢に応じて複数のモードを設定してもかまわない。
【００５０】
ゲーム装置１は、第１モードｍｏｄｅ１に設定されている場合、
Ｉ＝０                    （Ｄ≦４ｄｏｔ）
Ｉ＝（１００／３６）＊Ｄ  （４ｄｏｔ＜Ｄ≦３６ｄｏｔ）
Ｉ＝１００                （３６ｄｏｔ＜Ｄ）
で示される換算式を用いて、入力距離Ｄ（ｄｏｔ）を入力レベルＩ（％）に換算する。また、ゲーム装置１は、第２モードｍｏｄｅ２に設定されている場合、
Ｉ＝０                    （Ｄ≦４ｄｏｔ）
Ｉ＝（１００／４８）＊Ｄ  （４ｄｏｔ＜Ｄ≦４８ｄｏｔ）
Ｉ＝１００                （４８ｄｏｔ＜Ｄ）
で示される換算式を用いて、入力距離Ｄ（ｄｏｔ）を入力レベルＩ（％）に換算する。
【００５１】
このように、ゲーム装置１は、いずれのモードにおいても入力距離Ｄ≦４ｄｏｔでは入力レベルＩ＝０に換算しており、タッチ操作における遊び領域（操作入力としてゲーム処理を行わない領域）を設定している。また、ゲーム装置１は、モードに応じて最大入力レベル（Ｉ＝１００％）となる入力距離Ｄをそれぞれ設定し、その入力距離Ｄ以上の場合は最大入力レベルになるようにしている。つまり、ゲーム装置１は、第１モードｍｏｄｅ１では入力距離Ｄが３６ｄｏｔ以上で最大入力レベルとなり、第２モードｍｏｄｅ２では入力距離Ｄが４８ｄｏｔ以上で最大入力レベルとなるように換算する。そして、ゲーム装置１は、上記最大入力レベルになるまでの区間については、モードに応じてそれぞれ異なった傾きを示す係数を入力距離Ｄに乗算して入力レベルＩに換算する。
【００５２】
図５に示すように、ゲーム装置１は、得られた入力レベルＩ（％）に応じて移動量Ｍを算出する。例えば、図５で示す移動量Ｍは、ゲーム空間に登場するプレイヤキャラクタが当該ゲーム空間に設定されたフィールド上を移動する（通常動作）際の単位時間当たりの移動量を示すゲームパラメータの１つである。ここで、ゲーム装置１は、上述したモードに応じて、入力レベルＩを移動量Ｍに換算するための換算式を変更する。
【００５３】
ゲーム装置１は、第１モードｍｏｄｅ１に設定されている場合、
Ｍ＝０                                              （Ｉ≦２８％）
Ｍ＝（ＣＰ／３０）＊Ｉ−（１４／１５）＊ＣＰ        （２８％＜Ｉ≦５８％）
Ｍ＝｛（ＭＡＸ−ＣＰ）／４２｝＊Ｉ＋（５０＊ＣＰ−２９＊ＭＡＸ）／２１
（５８％＜Ｉ≦１００％）
で示される換算式を用いて、入力レベルＩ（％）を移動量Ｍに換算する。ここで、ＭＡＸは、上記プレイヤキャラクタがフィールド上で移動できる単位時間当たりの最大移動量（最高移動量ＭＡＸ）を示している。また、ＣＰは、上記プレイヤキャラクタがフィールド上における移動形態が低速移動から高速移動に切り替わる移動量（切替移動量ＣＰ）を示している。また、ゲーム装置１は、第２モードｍｏｄｅ２に設定されている場合、
Ｍ＝０                                              （Ｉ≦３３％）
Ｍ＝（ＣＰ／３３）＊Ｉ−ＣＰ                        （３３％＜Ｉ≦６６％）
Ｍ＝｛（ＭＡＸ−ＣＰ）／３４｝＊Ｉ＋（５０＊ＣＰ−３３＊ＭＡＸ）／１７
（６６％＜Ｉ≦１００％）
で示される換算式を用いて、入力レベルＩ（％）を移動量Ｍに換算する。
【００５４】
このように、ゲーム装置１は、第１モードｍｏｄｅ１における入力レベルＩ≦２８％および第２モードｍｏｄｅ２における入力レベルＩ≦３３％では移動量Ｍ＝０に換算しており、タッチ操作に応じてプレイヤキャラクタが移動しない区間を設定している。なお、後述によって明らかとなるが、移動量Ｍ＝０であっても入力距離Ｄ＞４ｄｏｔであれば入力方向が設定され、プレイヤはタッチパネル１３を用いて方向のみの入力が可能となる。これによって、例えば、入力距離に基づいて３次元仮想空間中のプレイヤオブジェクトの移動量を決定し、入力方向に基づいて当該プレイヤオブジェクトの向きを変化させる場合、入力レベルＩ≦２８％（第１モード）、入力レベルＩ≦３３％（第２モード）では、プレイヤオブジェクトをその場で回転させ、また、入力レベルＩ＞２８％（第１モード）、入力レベルＩ＞３３％（第２モード）では、プレイヤオブジェクトを回転させつつ移動させることができ、この２つの動作を共通の入力制御により使い分けることができる。また、ゲーム装置１は、いずれのモードにおいても最大入力レベル（Ｉ＝１００％）に対して移動量Ｍが最高移動量ＭＡＸになるように換算するが、最高移動量ＭＡＸになるまでの区間中に切替移動量ＣＰを設定し、モードに応じてそれぞれ異なった傾きを示す係数を入力レベルＩに乗算して移動量Ｍに換算する。そして、移動量Ｍ＝０〜切替移動量ＣＰ間（低速移動区間）の傾きは、切替移動量ＣＰ〜最高移動量ＭＡＸ間（高速移動区間）の傾きより小さく設定される。つまり、低速移動区間は、高速移動区間と比べて入力レベルＩの変化に対する移動量Ｍの変化量が小さくなり、プレイヤはタッチパネル１３を用いて移動量Ｍを微妙に変化させることができる。これによって、例えば、最大入力レベル（Ｉ＝１００％）となる入力距離Ｄを比較的短くした場合であっても、プレイヤオブジェクトを微妙に移動させたい場合と、一気に移動させたい場合を効果的に使い分けることができる。
【００５５】
なお、上述した説明では、ゲーム装置１が入力レベルＩを移動量Ｍに換算するための換算式を１次関数で説明したが、２次以上の関数等の曲線で変化する換算式に用いてもかまわない。低速移動区間で用いられる換算式によって入力レベルＩを換算した移動量Ｍより大きな値に換算する換算式を高速移動区間に用いれば、同様の効果を得ることができる。例えば、低速移動区間および高速移動区間で用いられる換算式を同次数の式とし、高速移動区間の換算式の最高次数の係数を低速移動区間の換算式の最高次数の係数よりも大きくしてもよい。また、高速移動区間の換算式の次数を低速移動区間の換算式の次数よりも大きくしてもよい。さらには、低速移動区間および高速移動区間のそれぞれの区間内で連続した換算式でなくてもよく、各区間内で不連続な換算関数としてもよい。また、上述した説明では、低速移動区間から高速移動区間に切り替わる際（つまり、切替移動量ＣＰ）、移動量Ｍが急激に変化しないように換算式を設定したが、低速移動区間から高速移動区間へ切り替わった際に移動量Ｍが急激に加速されるように換算式を設定してもかまわない。
【００５６】
上述した入力距離Ｄに応じて入力レベルＩを算出し、当該入力レベルＩを用いて移動量Ｍを算出すると、各モードに応じて各操作指示領域Ｚ１〜Ｚ５が基準位置を中心として当該中心から外周側に向かって同心円状の領域で設定される。図６および図７に示すように、第１モードｍｏｄｅ１では基準位置から順に、遊び領域（操作指示領域Ｚ１：０≦Ｄ≦４ｄｏｔ）、方向のみ指示する領域（操作指示領域Ｚ２：４ｄｏｔ＜Ｄ≦１０ｄｏｔ）、低速移動領域（操作指示領域Ｚ３：１０ｄｏｔ＜Ｄ≦２１ｄｏｔ）、高速移動領域（操作指示領域Ｚ４：２１ｄｏｔ＜Ｄ≦３６ｄｏｔ）、および最高速移動領域（操作指示領域Ｚ５：３６ｄｏｔ＜Ｄ）が設定される。なお、第１モードｍｏｄｅ１で設定される各領域を対応する入力レベルＩで示すと、操作指示領域Ｚ１がＩ＝０％、操作指示領域Ｚ２が０％＜Ｉ≦２８％、操作指示領域Ｚ３が２８％＜Ｉ≦５８％、操作指示領域Ｚ４が５８％＜Ｉ≦１００％、および操作指示領域Ｚ５がＩ＝１００％となる。
【００５７】
一方、図６および図８に示すように、第２モードｍｏｄｅ２では基準位置から順に、遊び領域（操作指示領域Ｚ１：０≦Ｄ≦４ｄｏｔ）、方向のみ指示する領域（操作指示領域Ｚ２：４ｄｏｔ＜Ｄ≦１６ｄｏｔ）、低速移動領域（操作指示領域Ｚ３：１６ｄｏｔ＜Ｄ≦３２ｄｏｔ）、高速移動領域（操作指示領域Ｚ４：３２ｄｏｔ＜Ｄ≦４８ｄｏｔ）、および最高速移動領域（操作指示領域Ｚ５：４８ｄｏｔ＜Ｄ）が設定される。なお、第２モードｍｏｄｅ２で設定される各領域を対応する入力レベルＩで示すと、操作指示領域Ｚ１がＩ＝０％、操作指示領域Ｚ２が０％＜Ｉ≦３３％、操作指示領域Ｚ３が３３％＜Ｉ≦６６％、操作指示領域Ｚ４が６６％＜Ｉ≦１００％、および操作指示領域Ｚ５がＩ＝１００％となる。
【００５８】
図４〜図８を参照すれば明らかなように、第１モードｍｏｄｅ１と比較して第２モードｍｏｄｅ２では、最大入力レベル（Ｉ＝１００％）となる入力距離Ｄが長くなるように設定される。また、基準位置から方向のみ指示する領域（操作指示領域Ｚ２）の外縁までの距離が長くなるように設定される。また、基準位置から換算式が変更される領域の境界（操作指示領域Ｚ３とＺ４の境界）までの距離が長くなるように設定される。言い換えれば、操作指示領域Ｚ２〜Ｚ４が広く形成されており、操作指示領域Ｚ３およびＺ４におけるタッチパネル１３に対する入力距離Ｄ（ｄｏｔ）の変化量に対する移動量Ｍの変化量が小さく（つまり、傾きが小さい）設定されている。そして、上述したように第１モードｍｏｄｅ１は、プレイヤが自身の指や指に上記ポインティング部材を装着してタッチパネル１３をタッチ操作するモードとして設定され、第２モードｍｏｄｅ２は、プレイヤがスタイラス１６を用いてタッチパネル１３をタッチ操作するモードとして設定されている。一般的に、プレイヤがスタイラス１６等の棒状の器具を用いてタッチパネル１３を操作する場合、指で直接操作するより入力距離が長くなる傾向にある。これは、指で直接操作する方法に比べて、スタイラス１６をプレイヤが掴む位置からタッチパネル１３と接触する位置（つまり、スタイラス１６の先端部）までの距離が長いため、タッチパネル操作における支点距離が長くなるためである。したがって、プレイヤはスタイラス１６を用いてタッチパネル１３をタッチ操作すると、入力距離が短い入力が難しくなるため、スタイラス１６を用いるモードでは各領域を広く設定したのである。つまり、上述した第１モードｍｏｄｅ１および第２モードｍｏｄｅ２は、このようなタッチパネル操作方法の相違に対応してそれぞれ適切なゲームパラメータを得ることができる。なお、本実施例では、２つのモードを、指を用いるモードとスタイラスを用いるモードと説明したが、大人と子供では指の大きさが異なり、また、人種等によっても異なるため、それらに応じたモードという位置づけであってもよい。また、指の大きさが同じであっても指の器用さには違いがあり、つまるところ、プレイヤの好みに応じて２つのモードが選択されればよい。なお、第１モードｍｏｄｅ１と比較して第２モードｍｏｄｅ２では、方向のみ指示する領域（Ｚ２）の外縁に対応する入力レベルが大きくなるように設定される。また、換算式が変更される領域の境界（操作指示領域Ｚ３とＺ４の境界）に対応する入力レベルが大きくなるように設定される。
【００５９】
他の例として、ゲーム装置１は、図９のように得られた入力レベルＩ（％）に応じて移動量Ｍｔを算出する。例えば、図９で示す移動量Ｍｔは、ゲーム空間に登場するプレイヤキャラクタが当該ゲーム空間に設定されたフィールド上を移動する通常動作以外の特殊な状況（特殊状況）における単位時間当たりの移動量を示すゲームパラメータの１つである。例えば、プレイヤキャラクタがゲーム空間に設定された木に登って移動するような状況が、上述した特殊状況に相当する。この場合、ゲーム装置１は、入力レベルＩを移動量Ｍｔに換算するための換算式を、上述したモードそれぞれに対して共通にする。
【００６０】
ゲーム装置１は、上記特殊状況の場合、第１モードｍｏｄｅ１および第２モードｍｏｄｅ２に対して、共に
Ｍ＝０                          （Ｉ≦１２．５％）
Ｍ＝（ＭＡＸｔ／１００）＊Ｉ    （１２．５％＜Ｉ≦１００％）
で示される換算式を用いて、入力レベルＩ（％）を移動量Ｍｔに換算する。ここで、ＭＡＸｔは、上記プレイヤキャラクタが上記特殊状況下で移動できる単位時間当たりの最大移動量（最高移動量ＭＡＸｔ）を示している。
【００６１】
なお、上述した説明では、ゲーム装置１が特殊状況において入力レベルＩを移動量Ｍｔに換算する例を説明したが、入力レベルＩを用いて他のゲームパラメータを取得してもかまわない。例えば、上記特殊状況としてプレイヤキャラクタがゲーム空間に設定された水中を潜水して移動することを仮定した場合、入力レベルＩに応じてプレイヤキャラクタの潜水角度が変化するようにゲームパラメータを設定してもかまわない。
【００６２】
次に、図１０〜図１４を参照して、本発明のゲームプログラムによってゲーム装置１で実行されるタッチパネル１３から入力される情報に基づいたゲーム処理について説明する。なお、図１０は、当該ゲームプログラムを実行することによってゲーム装置１がゲーム処理する動作を示すフローチャートである。図１１は、図１０におけるステップ５９の移動処理について詳細な動作を示すサブルーチンである。図１２は、図１０におけるステップ６０および６３の向き変更処理について詳細な動作を示すサブルーチンである。図１３は、図１０におけるステップ６２の木登り処理について詳細な動作を示すサブルーチンである。図１４は、図１０におけるステップ６５のメニュー処理について詳細な動作を示すサブルーチンである。なお、これらの処理を実行するためのプログラムは、ＲＯＭ１７１に格納されたゲームプログラムに含まれており、ゲーム装置１の電源がオンになったときに、ＲＯＭ１７１からＷＲＡＭ２２に読み出されて、ＣＰＵコア２１によって実行される。
【００６３】
まず、ゲーム装置１の電源（図示せず）がＯＮされると、ＣＰＵコア２１によってブートプログラム（図示せず）が実行され、これによりカートリッジ１７に格納されているゲームプログラムがＷＲＡＭ２２にロードされる。当該ロードされたゲームプログラムがＣＰＵコア２１に実行されることによって、図１０に示すステップ（図１０〜図１４では「Ｓ」と略称する）が実行される。なお、上記ゲームプログラムを実行することによって、当該ゲームプログラムに応じたゲーム画像などが第１ＬＣＤ１１および第２ＬＣＤ１２に描画されるが、ゲーム内容についての詳細な説明を省略し、ここでは主にタッチパネル１３から入力される情報に基づいたゲーム処理について詳述する。
【００６４】
図１０において、ＣＰＵコア２１は、モードを設定し（ステップ５１）、処理を次のステップに進める。このモードは、上述したように例えば、モードは、タッチパネル１３をタッチ操作する方法に応じて設定されている。具体的には、プレイヤがゲーム装置１の操作スイッチ部１４を操作することによって、希望するモード（つまり、第１モードｍｏｄｅ１または第２モードｍｏｄｅ２）を選択することによって、ＣＰＵコア２１がモードを設定する。
【００６５】
次に、ＣＰＵコア２１は、上記ステップ５１で設定されたモードに応じて最大入力レベルとなる入力距離を設定し（ステップ５２）、処理を次のステップに進める。例えば、図４で示した一例では、ＣＰＵコア２１は、第１モードｍｏｄｅ１に設定されている場合、最大入力レベルＩ＝１００％となる入力距離Ｄ＝３６ｄｏｔを設定する。また、ＣＰＵコア２１は、第２モードｍｏｄｅ２に設定されている場合、最大入力レベルＩ＝１００％となる入力距離Ｄ＝４８ｄｏｔを設定する。
【００６６】
次に、ＣＰＵコア２１は、タッチパネル１３における基準位置（図３参照）を設定してＷＲＡＭ２２の記憶領域に記憶し（ステップ５３）、プレイヤがタッチパネル１３をタッチ操作したタッチ位置を検出し（ステップ５４）、処理を次のステップに進める。例えば、ＣＰＵコア２１は、基準位置をタッチパネル１３の中央に固定的に設定したり、プレイヤがタッチパネル１３にタッチオンした位置に設定したりする。なお、説明を簡単にするために基準位置をタッチパネル１３の中央に固定的に設定する例を用いて、以下の説明を行う。
【００６７】
次に、ＣＰＵコア２１は、ステップ５３で設定した基準位置からステップ５４で検出したタッチ位置を結ぶベクトルが入力ベクトル（図３参照）を算出し（ステップ５５）、当該入力ベクトルが示す入力距離が４ｄｏｔより大きいか否かを判断する（ステップ５６）。そして、ＣＰＵコア２１は、入力距離が４ｄｏｔ以下の場合、上記ステップ５３に戻って処理を繰り返す。一方、ＣＰＵコア２１は、入力距離が４ｄｏｔより大きい場合、処理を次のステップ５７に進める。
【００６８】
ステップ５７において、ＣＰＵコア２１は、入力距離を設定されているモードに応じて入力レベルに変換し、処理を次のステップに進める。例えば、ＣＰＵコア２１は、図４を用いて説明したモード毎の換算式を用いて、入力距離Ｄから入力レベルＩを算出する。
【００６９】
次に、ＣＰＵコア２１は、プレイヤキャラクタがゲーム空間に設定されたフィールド上に配置（通常動作）されているか否か（ステップ５８）、プレイヤキャラクタがゲーム空間に設定された木に登っている（特殊状況）か否か（ステップ６１）、およびメニュー状態か否か（ステップ６４）を判断する。そして、プレイヤキャラクタがフィールド上に配置されている場合（ステップ５８でＹｅｓ）、処理を次のステップ５９に進める。また、ＣＰＵコア２１は、プレイヤキャラクタが木に登っている場合（ステップ６１でＹｅｓ）、処理を次のステップ６２に進める。さらに、ＣＰＵコア２１は、メニュー状態である場合（ステップ６４でＹｅｓ）、処理を次のステップ６５に進める。一方、ＣＰＵコア２１は、プレイヤキャラクタがフィールド上に配置されておらず、木に登っておらず、メニュー状態でもない場合（ステップ５８、６１、および６４がいずれもＮｏ）、そのまま処理を次のステップ６６に進める。
【００７０】
ステップ５９において、ＣＰＵコア２１は、上記フィールド上におけるプレイヤキャラクタの移動処理を行う。そして、ＣＰＵコア２１は、上記プレイヤキャラクタに対する向き変更処理を行い（ステップ６０）、次のステップ６６に処理を進める。以下、図１１および図１２を参照して、ステップ５９の移動処理およびステップ６０の向き変更処理の詳細な動作についてそれぞれ説明する。
【００７１】
図１１において、ＣＰＵコア２１は、上記ステップ５１で設定されたモードが第１モードｍｏｄｅ１か否かを判断する（ステップ７１）。そして、ＣＰＵコア２１は、第１モードｍｏｄｅ１に設定されている場合、処理を次のステップ７２に進める。一方、ＣＰＵコア２１は、第２モードｍｏｄｅ２に設定されている場合、処理を次のステップ７３に進める。
【００７２】
ステップ７２において、ＣＰＵコア２１は、第１モードｍｏｄｅ１に対応して入力レベルから移動量を演算する換算式を用いて、上記ステップ５７で得られた入力レベルから移動量を算出し、次のステップ７４に処理を進める。例えば、ＣＰＵコア２１は、図５を用いて説明したような第１モードｍｏｄｅ１に対応する換算式を用いて、入力レベルＩ（％）を移動量Ｍに換算する。
【００７３】
一方、ステップ７３において、ＣＰＵコア２１は、第２モードｍｏｄｅ２に対応して入力レベルから移動量を演算する換算式を用いて、上記ステップ５７で得られた入力レベルから移動量を算出し、次のステップ７４に処理を進める。例えば、ＣＰＵコア２１は、図５を用いて説明したような第２モードｍｏｄｅ２に対応する換算式を用いて、入力レベルＩ（％）を移動量Ｍに換算する。
【００７４】
ステップ７４において、ＣＰＵコア２１は、設定されている入力ベクトルの方向（入力方向；図３参照）に算出された移動量だけプレイヤキャラクタをゲーム空間内で移動させ、当該サブルーチンによる処理を終了する。
【００７５】
図１２において、ＣＰＵコア２１は、タッチパネル１３の基準方向（図３参照）に対する入力ベクトルの方向の角度を算出する（ステップ８１）。そして、ＣＰＵコア２１は、ゲーム空間におけるプレイヤキャラクタの向きを上記ステップ８１で算出された角度に応じて回転させ（ステップ８２）、当該サブルーチンによる処理を終了する。
【００７６】
ここで、上記ステップ７２または７３において入力レベルを移動量０に換算する換算式を用いる場合（例えば、図５における第１モードｍｏｄｅ１のＩ≦２８％や、第２モードｍｏｄｅ２のＩ≦３３％の区間）、ＣＰＵコア２１は、移動量０を取得する。一方、移動量０を取得しても上記ステップ８１および８２において入力方向に応じたゲーム処理が行われるため、ＣＰＵコア２１は、結果的にタッチ操作が示す入力方向のみに応じてゲーム処理を行うことになる。つまり、プレイヤは、タッチパネル１３に形成される操作指示領域Ｚ２（図７および図８参照）を用いて、一方のゲームパラメータ（方向）のみをタッチ操作で指示することができる。また、上記ステップ７２または７３において傾きが小さい換算式を用いる場合（例えば、図５における第１モードｍｏｄｅ１の２８％＜Ｉ≦５８％や、第２モードｍｏｄｅ２の３３＜Ｉ≦６６％の区間）、ＣＰＵコア２１は、入力レベルの変化量に対して相対的に小さな変化量で移動量を算出する。したがって、プレイヤは、タッチパネル１３に形成される操作指示領域Ｚ３（図７および図８参照）を用いて、微妙な移動量を調整することができる。
【００７７】
図１０に戻り、プレイヤキャラクタが木に登っている場合（ステップ６１でＹｅｓ）、ＣＰＵコア２１は、プレイヤキャラクタの木登り処理を行う（ステップ６２）。そして、ＣＰＵコア２１は、上記プレイヤキャラクタに対する向き変更処理を行い（ステップ６３）、次のステップ６６に処理を進める。なお、上記ステップ６３における向き変更処理は、図１２を用いて説明したステップ６０と同様であるため、詳細な説明を省略する。以下、図１３を参照して、ステップ６２の木登り処理の詳細な動作について説明する。
【００７８】
図１３において、ＣＰＵコア２１は、木登り処理に対応して入力レベルから移動量を演算する換算式を用いて、上記ステップ５７で得られた入力レベルから移動量を算出する（ステップ９１）。例えば、ＣＰＵコア２１は、図９を用いて説明したような特殊状況に対応する換算式を用いて、入力レベルＩ（％）を移動量Ｍｔに換算する。そして、ＣＰＵコア２１は、上記ステップ９１で算出された移動量だけプレイヤキャラクタをゲーム空間内で上下移動させ、当該サブルーチンによる処理を終了する。
【００７９】
図１０に戻り、メニュー状態である場合（ステップ６４でＹｅｓ）、ＣＰＵコア２１は、メニュー処理を行い（ステップ６５）、次のステップ６６に処理を進める。以下、図１４を参照して、ステップ６５のメニュー処理の詳細な動作について説明する。ここで、メニュー処理は、プレイヤキャラクタをゲーム空間内で移動させる処理とは異なり、プレイヤがゲーム画面で表示された選択肢（メニュー）を選択することによって、当該選択に応じてゲーム処理が進行する。
【００８０】
図１４において、ＣＰＵコア２１は、上記ステップ５７で得られた入力レベルが３％以上か否かを判断する（ステップ９１）。これは、メニューの選択として有効なタッチ操作がなされたか否かを判断するステップであり、微小入力に対しては無効とする。このような判断目的を満たすのであれば、判断のための閾値が３％でなくてもかまわない。そして、ＣＰＵコア２１は、入力レベルが３％以上の場合、次のステップ９２に処理を進める。一方、ＣＰＵコア２１は、入力レベルが３％未満の場合、そのまま当該サブルーチンによる処理を終了する。
【００８１】
ステップ９２において、ＣＰＵコア２１は、タッチパネル１３の基準方向（図３参照）に対する入力ベクトルの方向の角度を算出する。そして、ＣＰＵコア２１は、算出した角度が示す方向に別の選択肢があるか否かを判断する（ステップ９３）。別の選択肢がある場合、ＣＰＵコア２１は、上記方向にある別の選択肢をプレイヤの選択対象に変更して（ステップ９４）、当該サブルーチンによる処理を終了する。一方、別の選択肢がない場合、ＣＰＵコア２１は、そのまま当該サブルーチンによる処理を終了する。
【００８２】
図１０に戻り、ステップ６６において、ＣＰＵコア２１は、ゲーム空間に配置される仮想カメラの制御やプレイヤキャラクタに対する敵キャラクタの制御等のその他の処理を行う。なお、ステップ６６の処理については、本発明と直接関連しないため、これ以上の説明を省略する。そして、ＣＰＵコア２１は、ゲームを終了するか否かを判断する（ステップ６７）。ＣＰＵコア２１は、ゲームを継続する場合に上記ステップ５３に戻って処理を繰り返し、ゲームを終了する場合に当該フローチャートによる処理を終了する。
【００８３】
このように、本実施例のゲームプログラムを実行するゲーム装置によれば、入力レベルの変化に対して移動量の変化量が相対的に小さい区間（操作指示領域Ｚ３）を設定することによって、プレイヤがタッチパネル１３を用いて移動量を微妙に変化させることができる。また、プレイヤは、タッチパネル１３に形成される操作指示領域Ｚ２を用いて、一方のゲームパラメータ（方向）のみをタッチ操作で指示することができる。さらに、タッチパネル操作方法に応じた複数モード（第１モードｍｏｄｅ１および第２モードｍｏｄｅ２）を設定することによって、当該タッチパネル操作方法の相違に対応してそれぞれ適切なゲームパラメータを得ることができる。なお、上記モードに応じた処理においては、当該モードそれぞれに応じて異なった換算式を用いて入力距離を入力レベルに変換し、その入力レベルを用いてゲーム処理することができる。つまり、モードが異なっても入力レベル算出以降のゲーム処理を共通にすれば（例えば、図９に示す移動量Ｍｔの算出）、操作感覚が異なる複数のモードを共通のゲーム処理で実現することができる。
【００８４】
なお、上述では、説明を具体的にするために、具体的な数値を用いて各換算式や閾値を説明したが、これらは一実施例であり、本発明がこれらの数値に限定されることはないことは言うまでもない。例えば、入力レベルを移動量に換算する技術においては、ある区間で用いられる換算式によって入力レベルを換算した移動量より大きな値に換算する換算式を他の区間に用いれば、同様の効果を得ることができる。
【００８５】
また、上記実施例では、ゲーム装置１の入力手段としてタッチパネルを用いたが、他のポインティングデバイスを用いてもかまわない。ここで、ポインティングデバイスは、画面上での入力位置や座標を指定する入力装置であり、例えば、マウス、トラックパッド、トラックボールなどを入力手段として使用し、入力手段から出力される出力値から計算された画面座標系の情報を用いれば、本発明を同様に実現することができる。
【００８６】
また、上記実施例では、ゲーム装置１にタッチパネル１３が一体的に設けられているが、ゲーム装置とタッチパネルとを別体にして構成しても、本発明を実現できることは言うまでもない。さらに、上記実施例では表示器を２つ設けたが、表示器は１つであってもかまわない。すなわち、上記実施例において、第２ＬＣＤ１２設けず単にタッチパネル１３のみを設けるようにしてもよい。また、上記実施例において、第２ＬＣＤ１２を設けず第１ＬＣＤ１１の上面にタッチパネル１３を設けても良い。
【００８７】
また、上記実施例では、ゲーム装置１にタッチパネル１３が一体的に設けられているが、タッチパネルを入力手段の１つとする一般的なパーソナルコンピュータなどの情報処理装置でもかまわない。この場合、この情報処理装置のコンピュータが実行するプログラムは、典型的にゲームに用いられるゲームプログラムに限らず、上述した方式で得られた移動量等が上記情報処理装置に対する操作処理（例えば、カーソルの移動処理等）に用いられる汎用的なプログラムである。
【産業上の利用可能性】
【００８８】
本発明のゲームプログラムおよびゲーム装置は、ポインティングデバイスを用いてプレイヤが望む１つのパラメータのみに対する操作や微妙な操作を実現することができ、ポインティングデバイスを用いて操作するゲーム等に適用できる。
【図面の簡単な説明】
【００８９】
【図１】本発明の一実施形態に係るゲームプログラムを実行するゲーム装置１の外観図
【図２】図１のゲーム装置１の内部構成を示すブロック図
【図３】図１のタッチパネル１３に対するタッチ操作の際に設定される入力ベクトルを説明するための図
【図４】入力距離Ｄに対応して算出される入力レベルＩを説明するためのグラフ
【図５】通常時おいて入力レベルＩに対応して算出される移動量Ｍを説明するためのグラフ
【図６】図４および図５の関係に基づいて、入力距離Ｄに対応して算出される移動量Ｍを説明するためのグラフ
【図７】第１モードｍｏｄｅ１時にタッチパネル１３に設定される各操作指示領域Ｚ１〜Ｚ５を説明するための図
【図８】第２モードｍｏｄｅ２時にタッチパネル１３に設定される各操作指示領域Ｚ１〜Ｚ５を説明するための図
【図９】特殊な状況時おいて入力レベルＩに対応して算出される移動量Ｍを説明するためのグラフ
【図１０】本発明の一実施形態に係るゲームプログラムを実行することによってゲーム装置１がゲーム処理する動作を示すフローチャート
【図１１】図１０におけるステップ５９の移動処理について詳細な動作を示すサブルーチン
【図１２】図１０におけるステップ６０および６３の向き変更処理について詳細な動作を示すサブルーチン
【図１３】図１０におけるステップ６２の木登り処理について詳細な動作を示すサブルーチン
【図１４】図１０におけるステップ６５のメニュー処理について詳細な動作を示すサブルーチン
【符号の説明】
【００９０】
１…ゲーム装置
１１…第１ＬＣＤ
１２…第２ＬＣＤ
１３…タッチパネル
１４…操作スイッチ部
１５…スピーカ
１６…スタイラス
１７…カートリッジ
１７１…ＲＯＭ
１７２…ＲＡＭ
１８…ハウジング
２１…ＣＰＵコア
２２…ＷＲＡＭ
２３…第１ＶＲＡＭ
２４…第１ＧＰＵ
２５…第２ＶＲＡＭ
２６…第２ＧＰＵ
２７…Ｉ／Ｆ回路
２８…コネクタ
【図１】
2006141723.tif 000003
【図２】
2006141723.tif 000004
【図３】
2006141723.tif 000005
【図４】
2006141723.tif 000006
【図５】
2006141723.tif 000007
【図６】
2006141723.tif 000008
【図７】
2006141723.tif 000009
【図８】
2006141723.tif 000010
【図９】
2006141723.tif 000011
【図１０】
2006141723.tif 000012
【図１１】
2006141723.tif 000013
【図１２】
2006141723.tif 000014
【図１３】
2006141723.tif 000015
【図１４】
2006141723.tif 000016