説明

プログラム、情報記憶媒体及び電子機器

【課題】表示部上での指示操作によって操作入力を行う電子機器において、実際に指示されている位置のみが入力されたと認識される従来の入力制御とは異なる新たな入力制御を実現すること。
【解決手段】タッチパネルが一体的に形成されているディスプレイ3を例えばスタイラスペン9でタッチすると、タッチしている位置(タッチ位置)Pが入力範囲IAとして設定される(a)。そして、タッチ位置Pをタッチし続けたまま所定時間が経過すると、入力範囲IAがタッチ位置Pを中心とする円形状の“領域”に変化し(b)、更にタッチ位置Pへのタッチを継続すると、入力範囲IAが同心円状に拡大していく(c)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表示部と、該表示部上の指示位置を検出する手段とを有する表示装置を備えた電子機器等に関する。
【背景技術】
【0002】
ディスプレイ(表示部)と、ディスプレイ上のタッチ位置(指示位置)を検出するタッチパネルとを有する表示装置を備えた電子機器が知られている。このような機器では、ディスプレイ上でのタッチ操作(指示操作)によって入力操作を行うことができる。例えば、銀行のATMや駅の券売機では、ディスプレイに表示されるボタンを指でタッチすることでタッチ操作を行い、また、PDAやワードプロセッサ等の電子機器では、付属のスタイラスペンを用いることでタッチ操作を行う。特に、手書き文字を入力できるPDAやワードプロセッサ等の電子機器には、入力文字の線の太さの変化を表現できるもの、具体的には、押圧時間によって表示点範囲を次第に広げることで、例えばゆっくりとした手書き操作では太い線が描画表示され、速い手書き操作では細い線が描画表示されるものが知られている(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平7−114345号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
タッチ操作による入力制御では、ディスプレイ上のタッチされた位置(正確には、タッチパネルによりタッチされたと検出された位置)が入力されたと認識される。このため、ディスプレイが比較的小さいPDA等の携帯型の電子機器では、ディスプレイ上の1点を確実に指示できる専用のスタイラスペンを用いてタッチ操作を行うことが多い。また、携帯型の電子機器では、例えば一方の手で機器を把持し、他方の手でスタイラスペンを持ってタッチ操作を行うことが多いが、この場合、機器が不安定になり易いため、正確なタッチ操作が行えないことがある。
【0005】
このため、例えばディスプレイ上の表示物(ボタン等)をタッチして選択する場合、所望の表示物を正確にタッチする必要があるが、表示物が小さい、或いは、把持されている機器の姿勢が不安定になり易い等の理由から該所望の表示物を正確にタッチできないことがある。更に、指でタッチ操作を行う場合、指とディスプレイとが当接する部分の面積(当接面積)がスタイラスペンと比較して大きいため、所望の表示物の近傍にある他の表示物が誤って選択され、意図しない入力が行われてしまうことがある。
【0006】
また、例えば手書き文字入力等、軌跡入力を行う場合には、タッチ操作の軌跡が入力軌跡として認識されるが、機器或いはタッチ操作を行う手が不安定になり易い等の理由からタッチ操作がぶれ、滑らかな軌跡を入力できないことがある。更に、指でタッチ操作を行う場合、指とディスプレイとの接触面積が大きいため、入力軌跡が太くなってしまうという問題も発生する。
【0007】
上記事情に鑑み、本発明は、表示部上での指示操作によって操作入力を行う電子機器において、実際に指示されている位置のみが入力されたと認識される従来の入力制御とは異なる新たな入力制御を実現することを目的としている。
【課題を解決するための手段】
【0008】
上記課題を解決するための第1の形態は、
表示部(例えば、図1のディスプレイ3)と、該表示部上の指示位置を検出する手段(例えば、図1のタッチパネル4)とを有する表示装置に接続されたコンピュータに、前記表示部への表示制御と、前記検出された指示位置に基づく入力制御とを行わせるためのプログラムであって、
同一の指示位置が継続して検出されている際に、範囲内を指示されたとみなす入力範囲の大きさを変化させるとともに、前記表示部中のその入力範囲部分を識別表示する制御を行う入力範囲可変制御手段(例えば、図11の入力範囲設定部212A及び入力範囲表示制御部214、図17の入力範囲設定部212B及び入力範囲表示制御部214)として前記コンピュータを機能させるためのプログラムである。
【0009】
また、他の形態として、
表示部(例えば、図1のディスプレイ3)と、該表示部上の指示位置を検出する手段(例えば、図1のタッチパネル4)とを有する表示装置を備えた電子機器(例えば、図1の携帯型のゲーム装置1)であって、
同一の指示位置が継続して検出されている際に、範囲内を指示されたとみなす入力範囲の大きさを変化させるとともに、前記表示部中のその入力範囲部分を識別表示する制御を行う入力範囲可変制御手段(例えば、図11の入力範囲設定部212A及び入力範囲表示制御部214、図17の入力範囲設定部212B及び入力範囲表示制御部214)を備えたことを特徴とする電子機器を構成することもできる。
【0010】
この第1の形態等によれば、表示部上の指示位置として同一の指示位置が継続して検出されている際に、範囲内を指示されたとみなす入力範囲の大きさを変化させるとともに、表示部中のその入力範囲部分を識別表示することができる。即ち、表示部中の同一位置を指示し続けるといった操作が行われた際には、入力範囲を変化させるといった新たな入力制御を実現できる。従って、利用者は、同一位置を指示し続けることで入力範囲を変化させることが可能となる。またこのとき、変化する入力範囲が識別表示されるので、現在表示部中のどの部分が入力範囲とされているかを視覚的に認識することが可能となる。
【0011】
第2の形態は、第1の形態のプログラムであって、
前記入力範囲可変制御手段が、前記同一の指示位置を基点として前記入力範囲の大きさを変化させるように前記コンピュータを機能させるためのプログラムである。
【0012】
この第2の形態によれば、第1の形態と同様の効果を奏するとともに、同一の指示位置を基点として入力範囲の大きさを変化させることができる。従って、利用者は、指示し続けた位置を基点として入力範囲を変化させること、即ち入力範囲の変化の基点となる位置を任意に指定することが可能となる。
【0013】
第3の形態は、第1又は2の形態のプログラムであって、
前記入力範囲可変制御手段が、同一の指示位置の検出継続時間が所定の入力範囲変更開始時間を超えた場合に、前記入力範囲の大きさの変更を開始する開始制御手段(例えば、図11の入力範囲設定部212A、図17の入力範囲設定部212B)を有するように前記コンピュータを機能させるためのプログラムである。
【0014】
この第3の形態によれば、第1又は2の形態と同様の効果を奏するとともに、同一の指示位置の検出時間が所定の入力範囲変更開始時間を超えた場合に入力範囲の変更を開始することができる。従って、利用者は、所定時間の間同一位置を指示し続けることで入力範囲の変化を開始させることが可能となる。
【0015】
第4の形態は、第1〜3の何れかの形態のプログラムであって、
前記入力範囲可変制御手段が、前記入力範囲を徐々に大きくする拡大制御手段(例えば、図11の入力範囲設定部212A、図17の入力範囲設定部212B)を有するように前記コンピュータを機能させるためのプログラムである。
【0016】
この第4の形態によれば、第1〜3の形態と同様の効果を奏するとともに、入力範囲を徐々に大きくすることができる。従って、利用者は、どれだけの時間同一位置を指示し続けるかによって入力範囲を所望の大きさに変化させることが可能となる。
【0017】
第5の形態は、第1〜4の何れかの形態のプログラムであって、
前記表示部に所定のゲーム用オブジェクトを表示する制御を行うオブジェクト表示制御手段(例えば、図11、図17のゲーム演算部210)、
前記入力範囲部分と前記ゲーム用オブジェクトとの交差判定を行う交差判定手段(例えば、図11、図17のゲーム演算部210)、
前記交差判定手段による判定結果に基づいてゲームスコアを算出するスコア算出手段(例えば、図11、図17のゲーム演算部210)、
として前記コンピュータを更に機能させるためのプログラムである。
【0018】
この第5の形態によれば、第1〜4の何れかの形態と同様の効果を奏するとともに、表示部に所定のゲーム用オブジェクトを表示し、入力範囲と表示したゲーム用オブジェクトとの交差判定の判定結果に基づいてゲームスコアを算出することができる。従って、利用者は、表示部を指示し続けることにより変化する入力範囲とゲーム用オブジェクトとを、例えば交差させる/交差させないようにするといった操作を入力操作として用いた新たなゲームを楽しむことが可能となる。
【0019】
第6の形態は、第1〜5の何れかの形態のプログラムであって、
前記入力範囲可変制御手段が、同一の指示位置が検出されなくなった場合であっても、所定の余勢時間の間、同一の指示位置が検出されているものとして前記入力範囲の大きさ変化及び前記入力範囲部分の識別表示の制御を続行する余勢変更制御手段(例えば、図11の入力範囲設定部212A及び入力範囲表示制御部214、図17の入力範囲設定部212B及び入力範囲表示制御部214)を有するように前記コンピュータを機能させるためのプログラムである。
【0020】
この第6の形態によれば、第1〜5の何れかの形態と同様の効果を奏するとともに、同一の指示位置が検出されなくなった場合であっても、所定の余勢時間の間、同一の指示位置が検出されているものとして入力範囲の大きさ変化及び入力範囲の識別表示の制御を続行することができる。
【0021】
第7の形態は、第1〜6の何れかの形態のプログラムであって、
前記入力範囲可変制御手段が、同一の指示位置が検出されなくなった場合であっても、所定の残存時間の間、前記入力範囲部分の識別表示の制御を続行する識別表示続行制御手段(例えば、図11の入力範囲設定部212A及び入力範囲表示制御部214、図177の入力範囲設定部212B及び入力範囲表示制御部214)を有するように前記コンピュータを機能させるためのプログラムである。
【0022】
第7の形態によれば、第1〜6の何れかの形態と同様の効果を奏するとともに、同一の指示位置が検出されなくなった場合であっても、所定の残存時間の間、入力範囲の識別表示の制御を実行することができる。
【0023】
第8の形態は、第1〜7の何れかの形態のプログラムであって、
前記入力範囲可変制御手段が、同一の指示位置とみなせる所定範囲内で指示位置が変動して検出されている場合に、同一の指示位置が継続して検出されていると判定する同一位置判定手段(例えば、図11の入力範囲設定部212A、図17の入力範囲設定部212B)を有するように前記コンピュータを機能させるためのプログラムである。
【0024】
この第8の形態によれば、第1〜7の何れかの形態と同様の効果を奏するとともに、同一の指示位置とみなせる所定範囲内で指示位置が変動して検出されている場合に、同一の指示位置が継続して検出されていると判定することができる。即ち、指示位置の変動が所定範囲内であれば同一位置への指示とみなされるので、利用者は、例えば機器が不安定な状態で指示位置がぶれる等、正確な指示操作が行えない場合であっても、指示位置のぶれをさほど気にせずに同一位置への指示を継続することが可能となる。
【0025】
第9の形態は、第8の形態のプログラムであって、
前記同一位置判定手段が、
所定の単位時間毎に、当該単位時間内に検出された複数の指示位置に基づいて、当該単位時間内に検出された指示位置を代表する代表位置を決定する代表位置決定手段(例えば、図11の入力範囲設定部212A、図17の入力範囲設定部212B)と、
前記代表位置決定手段により決定された代表位置が前記所定範囲内で変動しているか否かによって同一の指示位置が継続して検出されているか否かを判定する代表位置基準判定手段(例えば、図11の入力範囲設定部212A、図17の入力範囲設定部212B)と、
を有するように前記コンピュータを機能させるためのプログラムである。
【0026】
この第9の形態によれば、第8の形態と同様の効果を奏するとともに、所定の単位時間毎に、この単位時間内に検出された複数の指示位置に基づいて代表位置を決定し、決定した代表位置が所定範囲内で変動しているか否かによって同一の指示位置が継続して検出されているか否かを判定することができる。即ち、例えば指で同一位置を指示し続けた場合、検出される指示位置は、指と表示部との当接部分内を変動し、これら変動する指示位置に基づく代表位置もまた、該当接部分内をほぼ変動することになる。従って、例えば1点を指示するスタイラスペンで指示(タッチ)した場合であっても、当接部分が“面”となる指で指示(タッチ)した場合であっても、ほぼ確実に同一位置への指示の継続を判断できる。
【0027】
第10の形態は、
表示部(例えば、図1のディスプレイ3)と、該表示部に対する指示位置を検出する手段(例えば、図1のタッチパネル4)とを有する表示装置に接続されたコンピュータに、前記検出された指示位置に基づいて摺動操作による軌跡入力の制御を行わせるためのプログラムであって、
所定の単位時間毎に、当該単位時間内に検出された複数の指示位置に基づいて、当該単位時間内に検出された指示位置を代表する代表位置を決定する代表位置決定手段(例えば、図25の部分軌跡生成部222)、
前記代表位置決定手段により決定された前記単位時間毎の代表位置を基に所定の補間処理を行うことにより摺動操作による入力軌跡を決定する軌跡決定手段(例えば、図25の部分軌跡生成部222)、
として前記コンピュータを機能させるためのプログラムである。
【0028】
また、他の形態として、
表示部(例えば、図1のディスプレイ3)と、該表示部に対する指示位置を検出する手段(例えば、図1のタッチパネル4)とを有する表示装置を備え、前記検出された指示位置に基づいて摺動操作による軌跡入力の制御を行う電子機器(例えば、図1のゲーム装置1)であって、
所定の単位時間毎に、当該単位時間内に検出された複数の指示位置に基づいて、当該単位時間内に検出された指示位置を代表する代表位置を決定する代表位置決定手段(例えば、図25の部分軌跡生成部222)、
前記代表位置決定手段により決定された前記単位時間毎に代表位置を基に所定の補間処理を行うことにより摺動操作による入力軌跡を決定する軌跡決定手段(例えば、図25の部分軌跡生成部222)、
を備えることを特徴とする電子機器を構成することもできる。
【0029】
この第10形態等によれば、検出された表示部上の指示位置に基づいて摺動操作による軌跡入力の制御を行う際、所定の単位時間毎に、この単位時間内に検出された複数の指示位置に基づいて代表位置を決定し、決定した単位時間毎に代表位置を基に所定の補間処理を行うことにより、摺動操作による入力軌跡を決定することができる。即ち、検出された個々の指示位置そのものを入力軌跡として決定するのではなく、これらの指示位置を代表する代表位置を基に所定の補間処理を行うことにより該摺動操作による入力軌跡を決定するといった新たな入力制御を実現できる。従って、検出される表示部上の指示位置の検出精度程に精確な軌跡入力が必要とされていない場合に、検出精度を落とした(低下させた)軌跡入力の制御が可能となる。
【0030】
第11の形態は、第10の形態のプログラムであって、
前記表示部に所定のゲーム用オブジェクトを表示する制御を行うオブジェクト表示制御手段(例えば、図25のゲーム演算部210)、
前記軌跡決定手段の補間処理により決定された入力軌跡に沿って所与のキャラクタを前記表示部に移動表示する制御を行うキャラクタ移動表示制御手段(例えば、図25のキャラクタ移動制御部224)、
前記ゲーム用オブジェクトと前記キャラクタとの交差判定を行う交差判定手段(例えば、図25のゲーム演算部210)、
前記交差判定手段による判定結果に基づいてゲームスコアを算出するスコア算出手段(例えば、図25のゲーム演算部210)、
として前記コンピュータを更に機能させるためのプログラムである。
【0031】
この第11の形態によれば、請求項10の記載の形態と同様の効果を奏するとともに、表示部にゲーム用オブジェクトを表示し、補間処理により決定された入力軌跡に沿って所与のキャラクタを表示部に移動表示し、ゲーム用オブジェクトとキャラクタとの交差判定の判定結果に基づいてゲームスコアを算出することができる。従って、利用者は、例えばゲーム用オブジェクトに交差させる/交差させないよう、摺動操作によってキャラクタを移動させるといったゲームを楽しむことが可能となる。
【0032】
第12の形態は、第9〜11の何れかの形態のプログラムであって、
前記単位時間を変更することにより、代表位置の決定の基準となる指示位置の数を変更する単位時間変更手段(例えば、図11の入力範囲設定部212A、図17の入力範囲設定部212B、図25の部分軌跡生成部222)として前記コンピュータを更に機能させるためのプログラムである。
【0033】
この第12の形態によれば、第9〜11の何れかの形態と同様の効果を奏するとともに、単位時間を変更することにより、代表位置の決定の基準となる指示位置の数を変更することができる。即ち、単位時間が短い程、代表位置の決定の基準となる指示位置の数が少なくなるので、決定される入力軌跡は検出される指示位置の軌跡そのものにより近いものとなり、一方、単位時間が長い程、代表位置の決定の基準となる指示位置の数が多くなるので、決定される入力軌跡はより滑らかな軌跡となる。つまり、単位時間を変更することで、検出される表示部上の指示位置の検出精度からどれだけ落とした(低下させた)精度で入力軌跡を決定するかを調整できる。
【0034】
第13の形態は、第9〜12の何れかの形態のプログラムであって、
前記代表位置決定手段が、当該単位時間内に検出された複数の指示位置の平均位置を代表位置として決定するように前記コンピュータを機能させるためのプログラムである。
【0035】
この第13の形態によれば、第9〜12の何れかの形態と同様の効果を奏するとともに、単位時間内に検出された複数の指示位置の平均位置を代表位置として決定することができる。即ち、摺動操作の際に検出される指示位置の分布範囲のほぼ中央を通る軌跡が入力軌跡として決定することが可能となる。
【0036】
第14の形態は、第1〜13の何れかの形態のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体(例えば、図11、図17、図25の記憶部50)である。
【0037】
ここでいう「情報記憶媒体」とは、記憶されている情報をコンピュータが読み取り可能な、例えばハードディスク、MO、CD−ROM、DVD、メモリカード、ICメモリ等である。従って、この第14の形態によれば、該情報記憶媒体に記憶されている情報をコンピュータに読み取らせて演算処理を実行させることで、第1〜13の何れかの形態と同様の効果を奏することができる。
【図面の簡単な説明】
【0038】
【図1】本発明を適用した携帯型のゲーム装置の外観例。
【図2】ディスプレイが「1点検出型」である場合に検出されるタッチ位置Pの説明図。
【図3】ディスプレイが「複数点検出型」である場合に検出されるタッチ位置Pの説明図。
【図4】第1実施形態の概要図(1)。
【図5】第1実施形態の概要図(2)。
【図6】第1実施形態における入力範囲設定の原理の説明図。
【図7】代表位置Qと基準位置Rとの一致判定の説明図。
【図8】判定基準距離Lbの設定の説明図。
【図9】入力範囲の拡大の説明図。
【図10】適用例1の概要図。
【図11】適用例1における機能構成図。
【図12】入力範囲設定基準データのデータ構成例。
【図13】入力範囲設定データのデータ構成例。
【図14】アイコンデータのデータ構成例。
【図15】適用例1におけるアイコン選択処理の流れ図。
【図16】適用例2の概要図。
【図17】適用例2における機能構成図。
【図18】レベルデータのデータ構成例。
【図19】入力範囲設定基準データのデータ構成例。
【図20】適用例2におけるゲーム処理の流れ図。
【図21】第2実施形態の概要図。
【図22】指で摺動タッチ操作を行った場合に生成される入力軌跡の説明図。
【図23】第2実施形態における入力軌跡設定の原理の説明図。
【図24】スタイラスペンを用いた場合に生成される入力軌跡の説明図。
【図25】第2実施形態における機能構成図。
【図26】部分軌跡生成基準データのデータ構成例。
【図27】部分軌跡生成データのデータ構成例。
【図28】操作キャラクタデータのデータ構成例。
【図29】第2実施形態におけるゲーム処理の流れ図。
【図30】入力範囲の変更及び識別表示を継続した場合の画面例。
【図31】入力範囲を拡大する際の形状をリング形状とした場合の画面例。
【発明を実施するための形態】
【0039】
以下、図面を参照して、本発明を実施するための最良の形態を説明する。尚、以下では、本発明を、電子機器の一種である携帯型のゲーム装置に適用した場合を説明するが、本発明の適用がこれに限定されるものではない。
【0040】
[外観]
図1(a)は、本発明を適用した携帯型のゲーム装置1の一例を示す外観図である。同図によれば、ゲーム装置1は、略直方体形状の筐体の前面に、ディスプレイ3と、十字キー5a及び機能キー5bを含む操作キー5と、スピーカ7と、を具備し、筐体側面には、不図示であるが、ゲーム装置1の電源をON/OFFするための電源スイッチや、スピーカ7の出力音を調整するための音量スイッチ、ゲーム装置1の外部記憶媒体であるメモリカードやICカード等が着脱自在に装着されるカードスロット、他のゲーム装置等の外部機器と通信するための通信ケーブルを接続するケーブルコネクタ等を具備している。
【0041】
ディスプレイ3は、TFT(Thin Film Transistor)等のカラー液晶ディスプレイである。また、ディスプレイ3には、同図(b)に示すように、その上面(或いは下面)にタッチパネル4が一体的に形成されている。タッチパネル4は、感圧式や光学式、静電式、電磁誘導式等の検出方式によってディスプレイ3上のタッチされた位置を、例えばディスプレイ3を構成するドット単位で検出し、検出した位置(以下、「タッチ位置」と称する。)Pの信号(タッチ操作信号)を出力する。タッチ位置Pは、タッチパネル4に設定されているXY座標系で表現される。プレーヤは、付属のスタイラスペン9や指等を用いたディスプレイ3上でのタッチ操作によって各種の操作入力を行うことができる。
【0042】
また、筐体内部には、CPUやICメモリ等を搭載した制御ユニットが内蔵される。CPUは、ICメモリ等から読み出したプログラムやデータ、操作キー5から入力された操作信号、タッチパネル4から入力されたタッチ操作信号等に基づいて種々のゲーム処理を実行し、ゲーム画面の画像信号及びゲーム音の音信号を生成する。そして、生成した画像信号をディスプレイ3に出力してゲーム画面を表示させるとともに、生成した音信号をスピーカ7に出力してゲーム音を出力させる。
【0043】
尚、ゲーム装置1がゲームを実行するために必要な情報(システムプログラムやゲームプログラム、ゲームデータ等)は、筐体内の制御ユニットに搭載されているICメモリや、ゲーム装置1に着脱自在な外部記憶媒体であるメモリカードやICカード等に格納されている。
【0044】
ところで、タッチパネル4には、タッチ位置Pを、(1)同時に1点のみを検出可能な「1点検出型」と、(2)同時に複数点を検出可能な「複数点検出型」と、がある。
【0045】
図2は、ディスプレイ3が「1点検出型」である場合に検出されるタッチ位置Pを説明する図である。この場合、スタイラスペン9を用いてタッチ操作を行うと、同図(a)に示すように、ペン先がディスプレイ3と当接(接触)する位置がタッチ位置Pとして検出される。
【0046】
また、指を用いてタッチ操作を行うと、同図(b)に示すように、指先(詳細には、指の腹)がディスプレイと当接する部分(当接部分)TA内のある1点がタッチ位置Pとして検出される。このとき、当接部分TAはある程度の広さを持つ“面”であるため、検出されるタッチ位置Pは、同図(c)に示すように、時間経過とともに当接部分TA内を変動して1点に定まらない。
【0047】
また、図3は、ディスプレイが「複数点検出型」である場合に検出されるタッチ位置Pを説明する図である。この場合、スタイラスペン9を用いてタッチ操作を行うと、同図(a)に示すように、ペン先がディスプレイ3と当接する位置がタッチ位置Pとして検出される。即ち、検出されるタッチ位置Pは1点のみであり、「1点検出型」の場合と同様である。
【0048】
また、指を用いてタッチ操作を行うと、同図(b)に示すように、指とディスプレイ3との当接部分TAを構成する各点がタッチ位置Pとして検出される。即ち、複数のタッチ位置Pi(i=1、2、・・・)が検出される。検出されるタッチ位置Pの数iは、タッチパネル4の解像度や当接部分TAの大きさ(面積)に応じたものとなり、解像度が高くなる程、或いは、当接部分TAの大きさが大きくなる程、増加する。
【0049】
そして、ゲーム装置1では、タッチパネル4により検出される1又は複数のタッチ位置Pが所定時間毎(例えば、1フレーム毎)に取得され、取得されたタッチ位置Pに基づいてタッチ操作入力制御がなされる。本実施形態では、このタッチ操作入力制御に特徴がある。
【0050】
[第1実施形態]
先ず、第1実施形態を説明する。
第1実施形態は、タッチパネル4により検出されるタッチ位置Pに基づいて入力範囲を設定するとともに、同一のタッチ位置Pの検出が継続された時間(検出継続時間)に応じて入力範囲を変化させるものである。ここで、入力範囲とは、ゲーム装置1において、その範囲内をタッチ操作による入力とみなすディスプレイ3上の範囲(“点(1ドット)”であっても良い。)のことである。
【0051】
<概要>
図4、図5は、第1実施形態の概要を説明する図である。図4(a)に示すように、スタイラスペン9でディスプレイ3をタッチすると(タッチ操作の開始)、タッチした位置、即ちペン先が当接している位置がタッチ位置Pとして検出される。そして、検出されたタッチ位置Pが入力範囲IAとして設定されるとともに、この入力範囲IAが識別表示される。即ち、入力範囲IAはタッチ位置Pそのものであり、“点”である。
【0052】
そして、同一位置をタッチしたまま(スタイラスペン9を静止させたまま)、所定時間が経過すると、同図(b)に示すように、“点”であった入力範囲IAが、タッチ位置Pを中心とする円形状の“領域”に変化する。その後、更に同一位置をタッチし続けると、同図(c)に示すように、入力範囲IAが、時間経過とともにタッチ位置Pを中心として同心円状に徐々に拡大していく。尚、同図では、入力範囲IAの識別表示を斜線で表現しており、以下、後述する各図でも同様である。
【0053】
また、図5(a)に示すように、円形状の“領域”である入力範囲IAが設定されている状態で、スタイラスペン9を当接させたままディスプレイ3上を移動させると(摺動タッチ操作)、同図(b)に示すように、この円形状の入力範囲IAの設定が解除されるとともに、その識別表示が消去される。そして、スタイラスペン9の移動中は、随時検出されるタッチ位置Pが入力範囲IAとして設定されるとともに、設定された入力範囲IAが識別表示される。即ち、入力範囲IAが“領域”から“点”に変化する。
【0054】
そして、スタイラスペン9を静止させた後、静止させたままで再度所定時間が経過すると、入力範囲IAが、その時点でペン先が当接している位置(タッチ位置P´)を中心とする円形状の“領域”に変化し、これが時間経過とともにタッチ位置P´を中心として同心円状に徐々に拡大していく。その後、スタイラスペン9をディスプレイから離すと(タッチ操作の終了)、入力範囲IAの設定が終了され、入力範囲IAの識別表示が消去される。
【0055】
尚、図4、図5では、スタイラスペン9を用いてタッチ操作を行った場合を示したが、指を用いた場合も同様である。即ち、指でディスプレイ3上のある1点をタッチし続けると、所定時間が経過した後、“点”であった入力範囲が、指とディスプレイ3との当接部分内のある1点を中心とする円形状の“領域”に変化し、これが時間経過とともに同心円状に徐々に拡大していく。そして、指を当接させたままタッチパネル4上を移動させると(摺動タッチ操作)、入力範囲が再度“点”に変化し、また、指をタッチパネル4から離すと(タッチ操作の終了)、入力範囲の設定が終了されて入力範囲の識別表示が消去される。
【0056】
このように、第1実施形態では、ディスプレイ3上の同一位置をタッチし続けるといったタッチ操作によって、当初“点”として設定される入力範囲IAが円形状の“領域”に変化するとともに、この入力範囲IAが時間経過に伴って徐々に拡大するように変化する。
【0057】
<原理>
図6は、第1実施形態における入力範囲設定の原理を説明するための図である。同図では、横軸を時間tとして、ディスプレイ3上の同一位置をタッチしつづけるといったタッチ操作を行った場合に取得されるタッチ位置Pと入力範囲IAの設定との関係を示している。
【0058】
同図に示すように、第1実施形態では、タッチ操作が行われている間、所定の検出単位時間Δt毎に、該検出単位時間Δtの間に検出された複数のタッチ位置P1、P2、・・、Pjを代表する代表位置Q(xq,yq)が、次式(1)に従って算出される。
【数1】

即ち、代表位置Qはタッチ位置P1、P2、・・、Pjの平均位置である。
【0059】
ここで、検出単位時間Δtは、後述のように、同一のタッチ位置Pが検出されているか否かを判断する時間間隔に相当し、例えば数〜10フレーム程度の時間として設定される。従って、この検出単位時間Δtの間には、例えば1フレーム毎にタッチ位置Pが取得される場合には、少なくとも検出単位時間Δtに相当するフレーム数Fのタッチ位置Pが取得されることになる。
【0060】
そして、検出単位時間Δt毎に算出されるこれらの平均位置Q1、Q2、・・・に基づいて、同一のタッチ位置Pが継続して検出されているか否かが判断される。具体的には、先ず、タッチ操作が開始された時刻t0から検出単位時間Δtが経過した時刻t1において算出される代表位置Q0が、同一のタッチ位置Pが検出されたか否かの判断基準となる基準位置Rとして設定される。次いで、検出単位時間Δtが経過する毎に算出される代表位置Q1、Q2、・・・のそれぞれが、順に、基準位置Rと一致するか否かが判定されることによって、同一のタッチ位置Pが検出されたか否かが判断される。
【0061】
ここで、代表位置Qと基準位置Rとが一致するか否かは、図7に示すように、代表位置Q(図中のQ1、Q2)と基準位置Rとの間の距離L(図中のL1、L2)に基づいて判定される。即ち、距離Lが所定の判定基準距離Lb以下であれば“一致する”と判定され、そうでなければ“一致しない”と判定される。同図では、代表位置Q1と基準位置Rとの間の距離L1が判定基準距離Lbより小さいため、代表位置Q1と基準位置Rとは“一致する”と判定される。また、代表位置Q2と基準位置Rとの間の距離L2が判定基準距離Lbより大きいため、代表位置Q2と基準位置Rとは“一致しない”と判定される。そして、代表位置Qと基準位置Rとが“一致する”と判定されると、同一のタッチ位置Pが検出されたと判断され、“一致しない”と判定されると、同一のタッチ位置Pが検出されていないと判断される。
【0062】
判定基準距離Lbは次のように定められる。即ち、スタイラスペン9を用いて静止タッチ操作を行った場合には、図2に示したように、検出されるタッチ位置Pはほぼ同一であり、これらのタッチ位置Pから算出される代表位置Qもまたほぼ同一である。
【0063】
一方、指を用いてタッチ操作を行った場合には、図3に示したように、検出されるタッチ位置Pが1点に定まらず、指とディスプレイ3との当接部分TA内を変動する。従って、これら変動するタッチ位置Pから算出される平均位置Qも、図8(a)に示すように、ほぼ当接部分TA内を変動して1点に定まらないことになる。つまり、代表位置Qがこの当接部分TA内を変動しているならば、ほぼ同一位置に対するタッチ操作が行われている、即ち同一のタッチ位置Pが検出されているとみなすことができる。
【0064】
このため、同図(b)に示すように、基準位置Rが当接部分TA内の略中央に位置すると仮定した場合に、当接部分TA内を変動する代表位置Qが基準位置Rと“一致する”と判定されるよう、即ち、基準位置Rを中心とし、Lbを半径とする円の内部に当接部分TAがほぼ収まるよう、一般的な人間の手指の腹面の大きさを基準に判定基準距離Lbが定められる。
【0065】
そして、代表位置Q1、Q2、・・・のそれぞれと基準位置Rとが一致するか否かの判定の結果、“一致する”と判定された回数、即ち同一のタッチ位置Pが検出されたと連続して判断された回数(以下、「連続検出回数」と称する。)nが、所定の変更開始回数N未満である間は、単位検出時間Δt毎に算出される代表位置Qが入力範囲IAとして設定される。即ち、この間の入力範囲IAは“点”である。
【0066】
そして、連続検出回数nが変更開始回数Nに達すると、入力範囲IAの変更が開始される。即ち、検出単位時間Δtと変更開始回数Nとの積に相当する時間(以下、「入力範囲変更開始時間」と称する。)Ts(=Δt×N)の間、同一のタッチ位置Pが継続して検出されると、その後に入力範囲IAの変更が開始される。
【0067】
図9は、入力範囲IAの変更を説明する図である。同図に示すように、先ず、連続検出回数nが変更開始回数Nに達した時点における代表位置Q(図6では、代表位置QN)を中心位置Oとし、所定の半径変更量Δr(但し、Δr>0)を半径rとする円形状の“領域”が入力範囲IAとして設定される。その後、検出単位時間Δtが経過する毎に、この入力範囲IAの半径rが半径変更量Δrづつ増加される。即ち、この間の入力範囲IAは“領域”であり、時間経過とともに中心位置Oを中心として徐々に同心円状に拡大する。
【0068】
その後、時刻tOにおいて代表位置QOと基準位置Rとが“一致しない”と判定される、即ち同一のタッチ位置Pが検出されていないと判断されると、入力範囲IAの変更が終了され、この代表位置QOが入力範囲IAとして設定される。即ち、入力範囲IAが再度“点”に変化する。そして、この代表位置QOが新たな基準位置Rとして再設定され、以降、同様の処理が繰り返される。
【0069】
続いて、上述した原理を用いた具体的な適用例を説明する。
【0070】
<適用例1>
適用例1では、アイコン選択画面に上述した原理を適用する。アイコン選択画面は、プレーヤの選択肢である複数のアイコンボタンを表示した画面であり、例えばチームを組むキャラクタを選択する、キャラクタが装備する武器や防具等を選択する等、ゲームの開始前或いは途中等、必要に応じて表示される。
【0071】
(概要)
図10は、適用例1の概要を示す図であり、ディスプレイ3に表示されるアイコン選択画面の一例を示している。同図によれば、アイコン選択画面には、複数のアイコンボタンIB1,IB2,IB3が表示される。プレーヤは、タッチ操作によって所望のアイコンボタンIBの選択操作を入力する。
【0072】
例えばスタイラスペン9でディスプレイ3上をタッチすると、同図(a)に示すように、ペン先が当接した位置がタッチ位置Pとして検出され、検出されたタッチ位置Pが入力範囲IAとして設定される。そして、入力範囲IAに一部或いは全部が含まれるアイコンボタンIBが「選択状態」となるが、同図(a)では、入力範囲IA(即ち、タッチ位置Pそのもの)にはアイコンボタンIB1,IB2,IB3の何れも含まれていない。従って、何れのアイコンボタンIB1,IB2,IB3も「選択状態」とはならない。
【0073】
次いで、同一位置をタッチしたまま、所定時間(具体的には、入力範囲変更開始時間Ts)が経過すると、入力範囲IAが、タッチ位置Pを中心位置Oとする円形状の“領域”に変化し、その後、時間経過とともに同心円状に徐々に拡大する。そして、同図(b)に示すように、入力範囲IAがアイコンボタンIB1の一部(同図では、右側部分)を含むまで拡大すると、アイコンボタンIB1が「選択状態」となり、「選択状態」であることを示すように強調表示(反転表示)される。
【0074】
また、入力範囲IAが更に拡大し、同図(c)に示すように、入力範囲IAにアイコンボタンIB2の一部(同図では、右側部分)が含まれると、アイコンボタンIB2も「選択状態」となって強調表示(反転表示)される。
【0075】
その後、スタイラスペン9をディスプレイ3上から離すと(タッチ操作の終了)、その時点で選択状態となっているアイコンボタンIBが選択されたとして確定される。例えば、同図(c)に示す状態でタッチ操作を終了すると、アイコンボタンIB1,IB2の選択が確定される。
【0076】
尚、図10では、スタイラスペン9を用いてタッチ操作を行った場合を説明したが、指を用いてタッチ操作を行った場合も同様である。即ち、アイコン選択画面中の同一位置をタッチし続けると、所定時間(具体的には、入力範囲変更開始時間Ts)経過した後、入力範囲IAが、指とディスプレイ3との当接部分内のある1点を中心位置Oとする円形状の“領域”に変化し、時間経過とともに徐々に拡大していく。そして、この入力範囲IAに一部或いは全部が含まれるアイコンボタンIBが「選択状態」となり、指をディスプレイ3から離すと(タッチ操作の終了)、その時点で「選択状態」となっているアイコンボタンIBの選択が確定される。
【0077】
(機能構成)
図11は、適用例1におけるゲーム装置1の機能構成を示すブロック図である。同図に示すように、適用例1において、ゲーム装置1は、機能的には、操作入力部10と、処理部20と、画像表示部30と、音出力部40と、記憶部50と、を備えて構成される。
【0078】
操作入力部10は、プレーヤによる操作指示を受け付け、操作に応じた操作信号を処理部20に出力する。この機能は、例えばボタンスイッチやレバー、ダイヤル、マウス、キーボード、各種センサ等によって実現される。また、操作入力部10はタッチパネル4を含み、タッチパネル4により検出されたタッチ位置Pを処理部20に出力する。
【0079】
処理部20は、ゲーム装置1全体の制御やゲームの進行、画像生成等の各種演算処理を行う。この機能は、例えばCPU(CISC型、RISC型)、ASIC(ゲートアレイ等)等の演算装置やその制御プログラムにより実現される。図1では、ゲーム装置1に内蔵された制御ユニットに搭載されたCPUがこれに該当する。
【0080】
また、処理部20は、主にゲームに係る演算処理を行うゲーム演算部210と、ゲーム演算部210の処理によって求められた各種のデータに基づき、ゲーム画面を表示させるためのゲーム画像及びゲーム画像を表示させるための画像信号を生成する画像生成部230と、効果音やBGM等のゲーム音及びゲーム音を出力させるための音信号を生成する音生成部240と、を含んでいる。
【0081】
ゲーム演算部210は、操作入力部10から入力された操作信号やタッチ操作信号、記憶部50から読み出したゲーム情報(プログラム及びデータ)等に基づいて種々のゲーム処理を実行する。また、適用例1では、ゲーム演算部210は、入力範囲設定部212Aと、入力範囲表示制御部214と、アイコン選択部216と、を含んでいる。
【0082】
入力範囲設定部212Aは、操作入力部10から入力されるタッチ操作信号に基づき、入力範囲設定基準データ522Aに従って入力範囲IAを設定する。
【0083】
入力範囲設定基準データ522Aは、入力範囲設定部212Aによる入力範囲設定の際の基準となる値(入力範囲設定基準値)を設定している。図12に、入力範囲設定基準データ522Aのデータ構成の一例を示す。同図によれば、入力範囲設定基準データ522Aは、検出単位時間(522A−1)と、変更開始回数(522A−2)と、判定基準距離(522A−3)と、半径変更量(522A−4)と、を格納する。尚、この入力範囲設定基準データ522Aは、処理の進行を通じて変更されない固定的なデータであるが、例えばプレーヤによる設定入力に応じて変更することとしても良い。
【0084】
検出単位時間(522A−1)は、検出単位時間Δtの値を設定する。
変更開始回数(522A−2)は、変更開始回数Nの値を設定する。連続検出回数nがこの変更開始回数Nに達すると、入力範囲IAの変更が開始される。即ち、変更開始回数Nと検出単位時間Δtとの積(Δt×N)が、入力範囲IAの変更を開始する入力変更開始時間Tsである。
【0085】
判定基準距離(522A−3)は、判定基準距離Lbの値を設定する。代表位置Qと基準位置Rとの間の距離Lがこの判定基準距離Lb以下であれば、該代表位置Qと基準位置Rとが“一致する”と判定され、そうでなければ“一致しない”と判定される。
【0086】
半径変更量(522A−4)は、半径変更量Δrの値を設定する。入力範囲IAが拡大して変更される際には、変更1回につき、この半径変更量Δrづつ入力範囲IAの半径rが増加される。
【0087】
そして、入力範囲設定部212Aは、検出単位時間Δtが経過する毎に、該検出単位時間Δtの間に取得された複数のタッチ位置Pから代表位置Qを算出し、算出した代表位置Qと基準位置Rとが一致するか否かを判定することで、同一のタッチ位置Pが検出されたか否かを判断する。そして、同一のタッチ位置Pが検出されたと連続して判断した回数(連続検出回数)nが変更開始回数Nに達しない間は、算出した代表位置Qを入力範囲IAとして設定を更新し、連続検出回数nが変更開始回数N以上となると、検出単位時間Δtが経過する毎に、入力範囲IAの半径rを半径変更量Δrづつ増加させて入力範囲IAを変更する。
【0088】
また、入力範囲設定部212Aにより取得・算出された各データは、入力範囲設定データ524に格納される。図13に、入力範囲設定データ524のデータ構成の一例を示す。同図によれば、入力範囲設定データ524は、取得タッチ位置データ524aと、代表位置(524b)と、基準位置(524c)と、連続検出回数(524d)と、入力範囲(524e)と、を格納する。
【0089】
取得タッチ位置データ524aは、検出単位時間Δtの間に取得された複数のタッチ位置Pの座標値を格納する。タッチパネル4により検出されるタッチ位置Pが取得されると、該取得されたタッチ位置Pがこの取得タッチ位置データ524aに蓄積される。また、取得タッチ位置データ524aは、検出単位時間Δtが経過して代表位置Qが算出される毎にクリアされる。
【0090】
代表位置(524b)は、取得タッチ位置データ524aに蓄積された複数のタッチ位置Pから算出された代表位置Qの座標値を格納する。この代表位置(524b)は、検出単位時間Δtが経過して代表位置Qが算出される毎に、該算出された代表位置Qに更新される。
【0091】
基準位置(524c)は、基準位置Rの座標値を格納する。この基準位置(524c)は、代表位置Qと基準位置Rとが“一致しない”と判定された際に、該代表位置Qが新たな基準位置Rに設定されて更新される。
【0092】
連続検出回数(524d)は、連続検出回数nの値を格納する。この連続検出回数(524d)は、代表位置Qと基準位置Rとが“一致する”と判定されると、現在の値に「1」を加算した値に更新され、“一致しない”と判定されると、初期値「0」に更新される。即ち、この連続検出回数nと検出単位時間Δtとの積(n×Δt)が、同一のタッチ位置Pの検出が継続されている時間(検出継続時間)に相当する。
【0093】
入力範囲(524e)は、現時点で設定されている入力範囲IAを示すデータを格納する。具体的には、入力範囲IAが“点”であれば、この“点”の位置の座標値を格納し、円形状の“領域”であれば、該円の中心位置Oの座標値及び半径rの値を格納する。
【0094】
図11において、入力範囲表示制御部214は、入力範囲設定部212Aによって設定された入力範囲IAに相当する画像表示部30中の領域を識別表示する制御を行う。
【0095】
アイコン選択部216は、アイコンデータ526に基づいて、複数のアイコンボタンを表示したアイコン選択画面を、例えば図10に示したように画像表示部30に表示させる。
【0096】
アイコンデータ526は、アイコン選択画面に表示させるアイコンボタンIBに関するデータを格納する。図14に、アイコンデータ526のデータ構成の一例を示す。同図によれば、アイコンデータ526は、各アイコンボタンIBを識別するアイコンID(526a)毎に、アイコンボタンIBを表現する画像データ(526b)と、表示位置(526c)と、選択状態(526d)と、を対応付けて格納している。
【0097】
表示位置(526c)は、アイコン選択画面中の画像データ(526b)の表示位置(詳細には、表示範囲)を指定するデータを格納する。具体的には、例えば画像データのある2点(例えば、左上頂点及び右下頂点)に対応する画像表示部30中の座標値を格納する。
【0098】
選択状態(526d)は、アイコンボタンIBが「選択状態」となっているか否かを示すデータを格納する。具体的には、初期値は「未選択状態」であり、入力範囲設定部212Aによって設定された入力範囲IAにその一部或いは全部が含まれると「選択状態」となる。そして、タッチ操作が終了すると、その時点で「選択状態」となっているアイコンボタンIBが、該タッチ操作によって選択されたものとして確定される。
【0099】
アイコン選択画面を表示させると、アイコン選択部216は、各アイコンボタンIBが、入力範囲設定部212Aによって設定された入力範囲IA内に一部又は全部が含まれるか否かを判定し、含まれると判定したアイコンボタンIBを「選択状態」とする。そして、タッチ操作の終了が検知されると、その時点で「選択状態」となっているアイコンボタンIBの選択を確定する。
【0100】
画像生成部230は、ゲーム演算部210による演算結果に基づき、幾何変換やシェーディング処理等を実行してゲーム画面を表示するためのゲーム画像を生成し、生成した画像の画像信号を画像表示部30に出力する。
【0101】
画像表示部30は、画像生成部230からの画像信号に基づいて、例えば1/60秒毎に1フレームの画像を再描画しながらゲーム画面を表示する。この機能は、例えばCRT、LCD、ELD、PDP、HMD等のハードウェアによって実現される。図1では、ディスプレイ3がこれに該当する。
【0102】
音生成部240は、ゲーム中に使用される効果音やBGM等のゲーム音を生成し、生成したゲーム音の音信号を音出力部40に出力する。
【0103】
音出力部40は、音生成部240からの音信号に基づいて、BGMや効果音等のゲーム音声を出力する。この機能は、例えばスピーカ等によって実現され、図1では、スピーカ7がこれに該当する。
【0104】
記憶部50は、処理部20にゲーム装置1を統合的に制御させるための諸機能を実現するためのシステムプログラムや、ゲームを実行させるために必要なプログラムやデータ等を記憶するとともに、処理部20の作業領域として用いられ、処理部20が各種プログラムに従って実行した演算結果や操作入力部10から入力される入力データ等を一時的に記憶する。この機能は、例えば各種ICメモリやハードディスク、CD−ROM、DVD、MO、RAM、VRAM等によって実現される。図1では、ゲーム装置1に内蔵された制御ユニットに搭載されたICメモリや、メモリカード等の外部情報記憶媒体がこれに該当する。
【0105】
また、記憶部50は、処理部20を適用例1におけるゲーム演算部210として機能させるためのゲームプログラム510A及びゲームデータを記憶する。ゲームプログラム510Aには、入力範囲設定部212Aとして機能させるための入力範囲設定プログラム512Aと、入力範囲表示制御部214として機能させるための入力範囲表示制御プログラム514と、アイコン選択部216として機能させるためのアイコン選択プログラム516と、が含まれる。また、ゲームデータには、入力範囲設定基準データ522Aと、入力範囲設定データ524と、アイコンデータ526と、が含まれる。
【0106】
(処理の流れ)
図15は、適用例1におけるアイコン選択処理の流れを説明するためのフローチャートである。この処理は、ゲーム処理の実行中、ゲーム演算部210がゲームプログラム510Aを実行することで実現される。尚、ゲームの進行に係る処理については従来と同様に実現可能であるので、ここでの説明は省略する。
【0107】
同図によれば、アイコン選択処理では、先ず、アイコン選択部216が、アイコンデータ526に基づき、複数のアイコンボタンIBを表示したアイコン選択画面を画像表示部30に表示させる(ステップA11)。次いで、入力範囲設定部212Aが、初期設定として連続検出回数nを初期値「0」に設定する(ステップA12)。その後、タッチ操作の開始が検知されると、該タッチ操作の終了が検知されるまでの間、検出単位時間Δtが経過する毎にループAの処理が実行される。
【0108】
ループAでは、入力範囲設定部212Aが、取得タッチ位置データ524aに蓄積されているタッチ位置P、即ち検出単位時間Δtの間に取得された複数のタッチ位置Pから代表位置Qを算出する(ステップA13)。次いで、この代表位置Qと基準位置Rとの間の距離Lを算出し、算出した距離Lと判定基準距離Lbとを比較する。
【0109】
比較の結果、算出した距離Lが判定基準距離Lb以下であるならば(ステップA14:YES)、入力範囲設定部212Aは、同一のタッチ位置Pが検出されたと判断して連続検出回数nを「1」加算した値に更新する(ステップA15)。次いで、連続検出回数nと変更開始回数Nとを比較し、連続検出回数nが変更開始回数N以上であるならば(ステップA16:YES)、現在設定されている入力範囲IAの半径rを半径増加量Δrだけ増加させて変更する(ステップA17)。また、連続検出回数nが変更開始回数N以上でないならば(ステップA16:NO)、代表位置Qを入力範囲IAに設定して更新する(ステップA20)。
【0110】
また、算出した距離Lが判定基準距離Lb以下でないならば(ステップA14:NO)、入力範囲設定部212Aは、同一のタッチ位置Pが検出されないと判断して連続検出回数nを「0」に更新する(ステップA18)。そして、代表位置Qを基準位置Rとして設定するとともに(ステップA19)、該代表位置Qを入力範囲IAとして設定を更新する(ステップA20)。尚、基準位置Rが設定されていない場合には、距離Lが算出できないので、距離Lは判定基準距離Lb以下でないと判定する。
【0111】
続いて、入力範囲表示制御部214が、設定された入力範囲IAの表示を識別表示する(ステップA21)。このとき、既に表示されている識別表示、即ち以前に設定された入力範囲IAに相当する領域の識別表示を消去し、今回設定された入力範囲IAに対応する画像表示部30中の領域を識別表示する。
【0112】
また、アイコン選択部216が、設定された入力範囲IAにアイコンボタンIBが含まれるか否かを判定し、含まれると判定したアイコンボタンIBを「選択状態」とするとともに、該アイコンボタンIBを選択状態であることを示すように強調表示する(ステップA22)。
ループAの処理はこのように実行される。
【0113】
そして、タッチ操作の終了が検知されると、ループAの処理が終了し、その後、アイコン選択部216が、選択状態となっているアイコンボタンIBの選択を確定する(ステップA23)。
以上の処理を行うと、適用例1におけるアイコン選択処理は終了となる。
【0114】
<適用例2>
次に、適用例2を説明する。尚、適用例2において、上述した適用例1と同一要素については同符合を付し、詳細な説明を省略する。
【0115】
(概要)
図16は、適用例2の概要を示す図であり、ディスプレイ3に表示されるゲーム画面(二次元空間のゲーム空間を俯瞰した画面)の一例を示している。同図によれば、ゲーム画面には、ゲーム用オブジェクトの一種である壁W(図中の網掛け部分)と、スタート地点を示すスタートマークSTと、ゴール地点を示すゴールマークGLと、プレーヤの操作対象キャラクタである球体BLとが表示されている。球体BLは、同図(a)に示すように、最小半径r0を有している。プレーヤは、球体BLを、壁Wに接触しないようにスタート地点からゴール地点まで移動させる。球体BLを移動させる操作は、スタイラスペン9や指等でなぞるようにタッチ操作(摺動タッチ操作)することで行う。尚、移動が静止したと判定されると、半径rが増加して球体BLが拡大する。
【0116】
即ち、同図(a)に示すように、例えば指でスタート地点をタッチすると、指とディスプレイ3との当接部分TA内のある1点を中心位置Oとし、初期半径r0を半径rとする範囲が入力範囲IAとして設定され、この設定された入力範囲IAをその大きさとする球体BLが表示される。プレーヤは、表示される球体BLが壁Wと接触(交差)しないよう、指を当接させたままディスプレイ3上を移動させる(摺動タッチ操作)。
【0117】
また、指を当接させたままディスプレイ3上で静止させると、同図(b)に示すように、静止させている位置、即ち指先とディスプレイ3との当接部分内のある1点を中心として、球体BL(即ち入力範囲IA)が時間経過とともに徐々に同心球状に拡大する。そして、球体BLが壁Wに接触(交差)すると、その時点で「ゲーム失敗」と判定されてゲームが終了する。勿論、移動途中に球体BLが壁Wと接触した場合であっても、その時点で「ゲーム失敗」と判定される。また、移動途中に指をディスプレイ3から離した場合も(タッチ操作の終了)、その時点で「ゲーム失敗」と判定されてゲームが終了する。
【0118】
そして、同図(c)に示すように球体BLが壁Wに接触することなくゴールGLに到達すると、「ゲーム成功」と判定されてゲームが終了する。
【0119】
尚、同図では、指を用いてタッチ操作を行った場合を示したが、スタイラスペン9を用いた場合も同様である。即ち、スタート位置STをタッチすると、スタイラスペン9が当接している位置、即ち検出されるタッチ位置Pを中心位置Oとし、初期半径r0を半径rとする範囲が入力範囲IAとして設定され、この入力範囲IAをその大きさとする球体BLが表示される。そして、スタイラスペン9をディスプレイ3上で当接させたまま静止させると、静止させている位置(即ち、タッチ位置P)を中心位置Oとして、球体BL(即ち、入力範囲IA)が時間経過とともに徐々に拡大していく。
【0120】
また、適用例2では、ゲーム開始前にレベル(ゲームの難易度)が設定され、このレベルに応じて、入力範囲IA(即ち、球体BL)を設定する際の基準となる値(入力範囲設定基準値)が設定される。具体的には、レベルが高くなる程、例えば変更開始回数Nが少なくなる、半径変更量Δrが大きくなる、或いは、初期半径r0が長くなるように設定され、ゲームの難易度が上昇する(難しくなる)。
【0121】
(機能構成)
図17は、適用例2におけるゲーム装置1の機能構成を示すブロック図である。同図によれば、適用例2では、ゲーム演算部210は、入力範囲設定部212Bと、球体制御部218と、を含んでいる。
【0122】
入力範囲設定部212Bは、先ず、例えばプレーヤによって選択・設定されたレベルに基づき、レベルデータ528に従って入力範囲設定基準値を設定する。
【0123】
レベルデータ528は、レベル毎の入力範囲設定基準値を設定している。図18に、レベルデータ528のデータ構成の一例を示す。同図によれば、レベルデータ528は、レベル(528a)毎に、検出単位時間(528b)と、変更開始回数(528c)と、判定基準距離(528d)と、半径変更量(528e)と、初期半径(528f)と、を対応付けて格納している。
【0124】
検出単位時間(528b)は、検出単位時間Δtの値を設定する。この検出単位時間(528b)は、レベル(528a)が高くなる程、その値が小さくなるように設定されている。検出単位時間Δrが小さく(短く)なる程、同一のタッチ位置Pが検出されたか否かの判定の時間間隔が短くなるので、レベルが高くなる程、ゲームの難易度が上昇する。
【0125】
変更開始回数(528c)は、変更開始回数Nの値を設定する。この変更開始回数(528c)は、レベルが高くなる程、その値が小さくなるように設定される。変更開始回数Nが小さくなる程、スタイラスペン9や指等を静止させた際に入力範囲IA(即ち、球体BL)の変更が開始されるまでの時間(入力範囲変更開始時間Ts)が短くなるため、レベルが高くなる程、ゲームの難易度が上昇する。
【0126】
判定基準距離(528d)は、判定基準距離Lbの値を設定する。この判定基準距離(528d)は、レベルが高くなる程、その値が大きくなるように設定されている。判定基準距離Lbが大きく(長く)なる程、同一のタッチ位置Pが検出されていると判定される移動の許容範囲が大きくなるので、レベルが高くなる程、ゲームの難易度が上昇する。
【0127】
半径変更量(528e)は、半径変更量Δrの値を設定する。この半径変更量(528e)は、レベルが高くなる程、その値が大きくなるように設定されている。半径変更量Δrが大きく(長く)なる程、入力範囲IA(即ち、球体BL)が拡大する速さが速くなるため、レベルが高くなる程、ゲームの難易度が上昇する。
【0128】
初期半径(528f)は、初期半径r0の値を設定する。この初期半径(528f)は、レベルが高くなる程、その値が大きくなるように設定されている。初期半径r0が大きい(長い)程、スタイラスペン9や指等でタッチした際に設定される球体BL(即ち、入力範囲IA)の初期サイズ(最小範囲)が大きくなるため、レベルが高くなる程、ゲームの難易度が上昇する。
【0129】
そして、このレベルデータ528に従って設定された入力範囲設定基準値は、入力範囲設定基準データ522Bに格納される。図19に、入力範囲設定基準データ522Bのデータ構成の一例を示す。同図によれば、入力範囲設定基準データ522Bは、レベル(522B−1)と、検出単位時間(522B−2)と、変更開始回数(522B−3)と、判定基準距離(522B−4)と、半径変更量(522B−5)と、初期半径(522B−6)と、を格納する。この入力範囲設定基準データ522Bは、基本的にはゲーム開始前に設定され、ゲーム進行中には変更されない。
【0130】
レベル(522B−1)は、例えばプレーヤによって選択・設定されたゲームのレベル(難易度)の値を格納する。そして、検出単位時間(522B−2)、変更開始回数(522B−3)、判定基準距離(522B−4)、半径変更量(522B−5)及び初期半径(522B−6)のそれぞれには、レベル(522B−1)に対応付けてレベルデータ528に設定されている値が格納される。
【0131】
そして、入力範囲設定部212Bは、操作入力部10から入力されるタッチ操作信号に基づき、入力範囲設定基準データ522Bに従って入力範囲IAを設定する。具体的には、タッチ操作の開始が検知されると、タッチ操作の終了が検知される間での間、所定の検出単位時間Δtが経過する毎に、該検出単位時間Δtの間に取得された複数のタッチ位置Pから代表位置Qを算出し、算出した代表位置Qと基準位置Rとが一致するか否かを判定することで、同一のタッチ位置Pが検出されたか否かを判断する。次いで、連続検出回数nが変更開始回数Nに達しない間は、算出した代表位置Qを中心位置Oとし、初期半径r0を半径rとする範囲を入力範囲IAとして設定する。そして、連続検出回数nが変更開始回数N以上となると、検出単位時間Δtが経過する毎に、入力範囲IAの半径rを半径変更量Δrづつ増加させて変更する。また、入力範囲設定部212Bにより取得・算出された各データは、入力範囲設定データ524に格納される。
【0132】
球体制御部218は、入力範囲設定部212Aにより設定された入力範囲IAに基づいて球体BLを制御する。具体的には、入力範囲設定部212Aにより入力範囲IAが設定される毎に、該設定された入力範囲IAに一致する大きさとなるように球体BLの大きさを変更するとともに、球体BLを、その中心が設定された入力範囲IAの中心位置Oと一致する位置まで移動させる。また、ゲームスタート時(スタート位置のタッチ直後)には、半径rを初期半径r0とする球体BLを設定し、設定した球体BLをタッチ位置P(即ち、スタート位置)に配置する。
【0133】
また、記憶部50は、処理部20を適用例2におけるゲーム演算部210として機能させるためのゲームプログラム510B及びゲームデータを記憶する。ゲームプログラム510Bには、入力範囲設定部212Bとして機能させるための入力範囲設定プログラム512Bと、球体制御部218として機能させるための球体制御プログラム517と、が含まれる。また、ゲームデータには、入力範囲設定基準データ522Bと、入力範囲設定データ524と、レベルデータ528と、ステージデータ532Bとが含まれる。
【0134】
ステージデータ532Bは、ゲームステージを構成するため壁W等のゲーム用オブジェクトのデータである。このステージデータ532Bには、ゲーム用オブジェクトである壁Wやスタート位置を示すスタートマークST、ゴール位置を示すゴールマークGL等のゲーム用オブジェクトを表現する画像データやその大きさ、配置位置等が含まれる。
【0135】
(処理の流れ)
図20は、適用例2におけるゲーム処理の流れを説明するためのフローチャートである。この処理は、ゲーム演算部210がゲームプログラム510Bを実行することで実現される。
【0136】
同図によれば、ゲーム処理において、ゲーム演算部210は、先ず、ステージデータ532Bに基づき、壁WやスタートST、ゴールGL等を配置した二次元のゲームステージを構築し、構築したゲームステージを俯瞰したゲーム画面を画像表示部30に表示させる(ステップB11)。次いで、入力範囲設定部212Bが、初期設定として連続検出回数nを初期値「0」に設定する(ステップb12)。また、ゲーム演算部210がプレーヤの操作入力に従ってレベルを設定すると(ステップB13)、入力範囲設定部212Bが、設定されたレベルに基づき、レベルデータ528に従って入力範囲設定基準値を設定する(ステップB14)。
【0137】
そして、ゲーム画面中のスタート位置STがタッチされてタッチ操作の開始が検知されると(ステップB15:YES)、球体制御部218が、半径rを初期半径r0とする球体BLを設定し、設定した球体BLをタッチ位置Pに配置する(ステップB16)。その後、該タッチ操作の終了が検知されるまでの間、検出単位時間Δtが経過する毎にループBの処理が実行される。
【0138】
ループBでは、入力範囲設定部212Bが、取得タッチ位置データ524aに格納されているタッチ位置P、即ち検出単位時間Δtの間に取得された複数のタッチ位置Pから代表位置Qを算出する(ステップB17)。すると、ゲーム演算部210は、算出された代表位置Qがゴール位置に一致するか否かを判定し、一致するならば(ステップB18:YES)、ゲームは成功であると判定してループAを終了する。そして、所定のゲーム成功演出処理を実行する(ステップB19)。
【0139】
一方、代表位置QがゴールGLに一致しないならば(ステップB18:NO)、続いて、入力範囲設定部212Bが、代表位置Qと基準位置Rとの間の距離Lを算出し、算出した距離Lと判定基準距離Lbとを比較する。
【0140】
比較の結果、距離Lが判定基準距離Lb以下であるならば(ステップB20:YES)、入力範囲設定部212Bは、同一のタッチ位置Pが検出されたと判断して連続検出回数nを「1」加算した値に更新する(ステップB21)。次いで、連続検出回数nと変更開始回数Nとを比較し、連続検出回数nが変更開始回数N以上であるならば(ステップB22:YES)、現在設定されている入力範囲IAの半径rを半径増加量Δrだけ増加させて変更する(ステップB23)。また、連続検出回数nが変更開始回数N以上でないならば(ステップB22:NO)、代表位置Qを中心位置Oとし、初期半径r0を半径rとする範囲を入力範囲IAに設定して更新する(ステップB26)。
【0141】
また、算出した距離Lが判定基準距離Lb以下でないならば(ステップB20:NO)、入力範囲設定部212Bは、同一のタッチ位置Pが検出されないと判断して連続検出回数nを「0」に更新する(ステップB24)。そして、代表位置Qを基準位置Rとして設定するとともに(ステップB25)、該代表位置Qを中心位置Oとし、初期半径r0を半径rとする範囲を入力範囲IAに設定して更新する(ステップB26)。
【0142】
続いて、球体制御部218が、球体BLの大きさを設定された入力範囲IAに変更するとともに、その中心が入力範囲IAの中心位置Pに一致する位置まで移動させる(ステップB27)。そして、ゲーム演算部210は、球体BLとゲーム画面中の壁Wとが交差するか否かを判定し(交差判定)、交差するならば(ステップB28:YES)、ゲームは失敗であると判定してループBを終了する。そして、所定のゲーム失敗演出処理を行う(ステップB29)。
【0143】
ループBはこのように実行される。
そして、タッチ操作の終了が検知されると、ループBの処理が終了し、ループBが終了すると、ゲーム演算部210は、ゲームは失敗であると判定して所定のゲーム失敗演出処理を行う(ステップB29)。そして、適用例2におけるゲーム処理は終了となる。
【0144】
<作用・効果>
以上のように、第1実施形態によれば、ディスプレイ3上の同一位置をタッチし続けると、当初“点”であった入力範囲IAが、タッチしている位置を略中心とする円形状の“領域”に変化するとともに、時間経過とともに徐々に同心円状に拡大していく。即ち、同一位置をタッチし続けると入力範囲IAが変化するといった新たな入力制御が実現される。
【0145】
そこで、この入力制御を、適用例1のようにアイコン選択画面に適用した場合、実際に選択したいアイコンボタンIBそのものをタッチしなくとも、例えばその近傍をタッチし続けることで、時間経過とともに入力範囲IAが拡大し、拡大した入力範囲IAに含まれた時点で該選択したいアイコンボタンIBを選択・入力することが可能となる。
【0146】
また、適用例2のように、この入力制御を適用することで、ディスプレイ3上をタッチすると設定される球体BLが壁Wと接触しないよう、スター位置からゴール位置までなぞるように摺動タッチ操作を行うことでゲーム操作を入力するゲームを実現することができる。この場合、同一位置をタッチし続けると球体BLが徐々に拡大していくので、途中で停止させることなく移動させなくてはならないといったスピード感のあるゲームを楽しむことができる。更に、球体BL(入力範囲IA)の設定基準となる入力範囲設定基準値(検出単位時間Δtや変更開始回数N、判定基準距離Lb、半径変更量Δr、初期半径r0)をゲームのレベル(難易度)に応じて適当に設定することで、初期状態での球体BL(入力範囲IA)の大きさが異なったり、球体BL(入力範囲IA)が拡大する速さが異なったりする等、より面白味のあるゲームとなる。
【0147】
[第2実施形態]
次に、第2実施形態を説明する。尚、第2実施形態において、上述した第1実施形態と同一要素については同符合を付し、詳細な説明を省略する。
第2実施形態は、スタイラスペン9や指等でディスプレイ3をタッチし、タッチしたままディスプレイ3上を移動させる操作(摺動タッチ操作)によって軌跡入力を行うものである。ところで、近年では、タッチパネルの検出精度の向上により、より木目細かな(精確な)軌跡入力が可能であるが、場合によっては、それ程高度な検出精度を必要としないことがある。第2実施形態では、軌跡入力において、タッチパネル3の検出精度程の精確さが必要とされていない場合を対象としている。
【0148】
<概要>
図21は、第2実施形態の概要を説明する図であり、ディスプレイ3に表示されるゲーム画面(二次元空間のゲーム画面を俯瞰した画面)の一例を示している。同図によれば、第2実施形態において、ゲーム画面には、プレーヤの操作入力に従って移動制御される操作キャラクタCAと、操作キャラクタCAの移動を遮るゲーム用オブジェクトである壁Wと、が表示される。プレーヤは、スタイラスペン9や指等で操作キャラクタCAをタッチし、スタイラスペン9や指等を当接させたままディスプレイ3上を移動させることで(摺動タッチ操作)、操作キャラクタCAに対するゲーム操作を入力する。
【0149】
同図(a)に示すように、例えば指で操作キャラクタCAをタッチし、指を当接させたままディスプレイ3上を移動させると(摺動タッチ操作)、この移動の軌跡にほぼ沿うように操作キャラクタCAが移動する。
【0150】
詳細には、図22に示すように、指で摺動タッチ操作を行った場合、該摺動タッチ操作による指とディスプレイ3との当接部分の軌跡(タッチ軌跡)DR1は、この当接部分が“面”であるためにある程度の幅(太さ)を持つ軌跡となる。そして、このタッチ軌跡DR1のほぼ中心を通る線状の軌跡が入力軌跡IRとして生成される。その後、生成された入力軌跡IRに沿って操作キャラクタCAが移動制御される。
【0151】
また、図21(b)に示すように、壁Wを通過するように指を移動させると(摺動タッチ操作)、操作キャラクタCAは、生成される入力軌跡IRに沿って移動するが、壁Wの部分を移動することができないため、壁Wの直前、即ち入力軌跡IRと壁Wとが最初に交差する位置の直前で停止する。
【0152】
この場合には、同図(c)に示すように、指をタッチパネル4から離した後(タッチ操作の終了)、再度、操作キャラクタCAをタッチし、指を当接させたままディスプレイ3上を移動させることで、再度、操作キャラクタCAを移動させることができる。
【0153】
<原理>
図23は、第2実施形態における入力軌跡生成の原理を説明するための図である。同図では、横軸を時間tとして、摺動タッチ操作を行った場合に取得されるタッチ位置Pと入力軌跡IRの生成との関係を示している。
【0154】
同図によれば、第2実施形態では、タッチ操作が行われている間、所定の検出単位時間Δt毎に、該検出単位時間Δtの間に取得された複数のタッチ位置Pから、式(1)に従って代表位置Qが算出される。そして、算出されたこれらの代表位置Qを基に所定の補間処理を行うことで入力軌跡IRが生成される。尚、補間処理は、直線補間やスプライン補間等、公知の補間処理によって実現される。
【0155】
詳細には、タッチ操作が行われている間、所定時間が経過する毎に入力軌跡が部分的に生成される(部分軌跡の生成)。即ち、同図に示すように、タッチ操作の開始が検知された時刻t0を起点として、代表位置Qが算出された回数(以下、「代表位置算出回数」と称する。)mが所定の部分軌跡生成条件回数Mに達する毎に、該算出されたM個の代表位置Qを基に補間処理が行われることで部分軌跡が生成される。ここで、部分軌跡生成条件回数Mは、部分軌跡を生成する基となる代表位置Qの数に相当し、例えば数十程度の値に設定される。従って、部分軌跡は、検出単位時間Δtと部分軌跡生成条件回数Mとの積に相当する時間(以下、「部分軌跡生成開始時間」と称する。)Tr(=Δt×M)毎に生成されることになる。そして、部分軌跡が生成されると、該生成された部分軌跡に沿って操作キャラクタCAが移動制御される。
【0156】
従って、生成される入力軌跡IRは、指で摺動タッチ操作を行った場合には、図22に示したように、指とディスプレイ3との当接部分の軌跡である、ある程度の幅を持つ(太い)タッチ軌跡DR1のほぼ中心を通る軌跡となる。
【0157】
また、スタイラスペン9で摺動タッチ操作を行った場合には、図24に示すように、スタイラスペン9とディスプレイ3との当接部分の軌跡(タッチ軌跡)DR2は、1本の線状の軌跡となる。そして、このタッチ軌跡DR2を構成する複数のタッチ位置Pから算出される代表位置Qもまた、このタッチ軌跡DR2にほぼ沿ったものとなる。従って、生成される入力軌跡IRは、タッチ軌跡DR2にほぼ沿ったものとなる。詳細には、タッチ軌跡DR2がほぼ直線である部分では、代表位置Qはタッチ軌跡DR2とほぼ一致するので、生成される入力軌跡IRはタッチ軌跡DR2とほぼ一致する。また、タッチ軌跡DR2がカーブ(或いは角)を描く部分では、代表位置Qはタッチ軌跡DR2から外れる位置となるので、生成される入力軌跡IRは、このカーブをより緩やかにしたものとなる。即ち、生成される入力軌跡IRは、タッチ軌跡DR1の部分の傾斜を緩やかに補正したものとなる。
【0158】
<機能構成>
図25は、第2実施形態におけるゲーム装置1の機能構成を示すブロック図である。同図によれば、第2実施形態では、ゲーム演算部210には、部分軌跡生成部222と、キャラクタ移動制御部224と、が含まれる。
【0159】
部分軌跡生成部222は、操作入力部10から入力されるタッチ操作信号に基づき、部分軌跡生成基準データ534に従って部分軌跡を生成する。
【0160】
部分軌跡生成基準データ534とは、部分軌跡の基準となる値(部分軌跡生成基準値)を設定する。図26に、部分軌跡生成基準データ534のデータ構成の一例を示す。同図によれば、部分軌跡生成基準データ534は、検出単位時間(534a)と、部分軌跡生成条件回数(534b)と、を設定する。尚、この部分軌跡生成基準データ534は、処理の進行を通じて変更されない固定的なデータとするが、例えばプレーヤの設定入力に応じて変更することとしても良い。
【0161】
検出単位時間(534a)は、検出単位時間Δtの値を格納する。
部分軌跡生成開始条件回数(534b)は、部分軌跡生成条件回数Mの値を設定する。代表位置Qが算出された回数(代表位置算出回数)mがこの部分軌跡生成条件回数Mに達する毎に、該算出されたM個の代表位置Qに基づいて部分軌跡が生成される。
【0162】
そして、部分軌跡生成部222は、所定の検出単位時間Δtが経過する毎に、該検出単位時間Δtの間に取得された複数のタッチ位置Pから代表位置Qを算出する。そして、代表位置Qを算出した回数(代表位置算出回数)mが部分軌跡生成条件回数Mに達する毎に、該算出したM個の代表位置Qを基に所定の補間処理を行うことで部分軌跡を生成する。
【0163】
また、部分軌跡生成部222により取得・算出された各データは、部分軌跡生成データ536に格納される。図27に、部分軌跡生成データ536のデータ構成の一例を示す。同図によれば、部分軌跡生成データ536は、取得タッチ位置データ536aと、算出代表位置データ536bと、代表位置算出回数(536c)と、移動可能フラグ(536d)と、を格納する。
【0164】
取得タッチ位置データ536aは、検出単位時間Δtの間に取得された複数のタッチ位置Pの座標値を格納する。タッチパネル4により検出された1又は複数のタッチ位置Pが取得される毎に、該取得されたタッチ位置Pがこの取得タッチ位置データ536aに蓄積される。また、取得タッチ位置データ536aは、タッチ位置Qが算出される毎、即ち検出単位時間Δt毎にクリアされる。
【0165】
算出代表位置データ536bは、現時点までに算出された代表位置Qの内、最新のM個の代表位置Q1、Q2、・・・、QMの座標値を格納する。即ち、算出代表位置データ536bは、代表位置Qが算出される毎に、該算出された代表位置Qが最新の代表位置QMとして格納されるとともに、代表位置Q1が削除されて更新される。
【0166】
代表位置算出回数(536c)は、代表位置算出回数mの値を格納する。この代表位置算出回数(536c)は、代表位置Qが算出される毎に現在の値に「1」を加算した値に更新される。そして、この値が部分軌跡生成回数Mに一致すると、部分軌跡が生成されるとともに、「0」に更新される。即ち、代表位置算出回数(536c)には、最新の部分軌跡が生成された後、代表位置Qが算出された回数が格納される。
【0167】
移動可能フラグ(536d)は、操作キャラクタCAを移動させることが可能か否かを示す移動可能フラグの値を格納する、移動可能フラグ(536d)は、タッチ操作の開始時点には移動可能であることを示す「1」に設定され、部分軌跡に沿って移動中、壁W等のゲーム用オブジェクトに遮られてそれ以上移動できなくなると、移動不可能であることを示す「0」に更新される。
【0168】
キャラクタ移動制御部224は、部分軌跡生成部222によって生成された入力軌跡IRに沿って操作キャラクタCAを移動させる制御を行う。具体的には、部分軌跡生成部222により部分軌跡が生成される毎に、該生成された部分軌跡に沿って操作キャラクタCAを移動させる。このとき、キャラクタ移動制御部224は、移動可能フラグが移動可能を示す「1」に設定されているならば、生成された部分軌跡と壁Wとが交差するか否かを判定する(交差判定)。判定の結果、交差しないならば該生成された部分軌跡に沿って操作キャラクタCAを移動させ、交差するならば、その部分軌跡と壁Wとが最初に交差する位置の直前までキャラクタを移動させるとともに、移動可能フラグを移動不可能を示す「0」に更新する。
【0169】
また、記憶部50は、処理部20を第2実施形態におけるゲーム演算部210として機能させるためのゲームプログラム510C及びゲームデータを記憶する。ゲームプログラム510Cには、部分軌跡生成部222として機能させるための部分軌跡生成プログラム518と、キャラクタ移動制御部224として機能させるためのキャラクタ移動制御プログラム519と、が含まれる。また、ゲームデータには、ステージデータ532Cと、操作キャラクタデータ538と、部分軌跡生成基準データ534と、部分軌跡生成データ536と、が含まれる。
【0170】
ステージデータ532Cは、壁W等のゲーム用オブジェクトを配置してゲームステージを構築するためのデータであり、壁Wを表現する画像データや大きさ、その配置位置等のデータが含まれる。
【0171】
操作キャラクタデータ538は、操作キャラクタCAに関するデータを格納する。図28に、操作キャラクタデータ538のデータ構成の一例を示す。同図によれば、操作キャラクタデータ538は、操作キャラクタCAを識別するキャラクタID(538a)と、モデルデータ(538b)と、現在の位置(538c)と、を対応付けて格納する。
【0172】
<処理の流れ>
図29は、第2実施形態におけるゲーム処理の流れを説明するためのフローチャートである。この処理は、ゲーム演算部210がゲームプログラム510Cを実行することで実現される。
【0173】
同図によれば、ゲーム処理では、ゲーム演算部210は、先ず、ステージデータ532Cに基づき、壁W等のゲーム用オブジェクトを配置したゲームステージを構築するとともに、構築したゲームステージ中に操作キャラクタデータ538に基づいて操作キャラクタCAを配置し、このゲームステージを俯瞰したゲーム画面を画像表示部30に表示させる(ステップC11)。次いで、初期設定として、連続算出回数mを初期値「0」に設定するとともに、移動可能フラグを「1」に設定する(ステップC12)。
【0174】
そして、操作キャラクタCAがタッチされてタッチ操作の開始が検知されると(ステップC13:YES)、該タッチ操作の終了が検知されるまでの間、即ち摺動タッチ操作が行割れている間、検出単位時間Δtが経過する毎にループCの処理が実行される。
【0175】
ループCでは、キャラクタ移動制御部224が移動可能フラグを判定し、移動可能フラグが「1」に設定されているならば(ステップC14:YES)、部分軌跡生成部222が、取得タッチ位置データ536aに蓄積されている複数のタッチ位置P、即ち検出単位時間Δtの間に取得された複数のタッチ位置Pから代表位置Qを算出し(ステップC15)、代表位置算出回数mを「1」加算した値に更新する(ステップC16)。
【0176】
次いで、部分軌跡生成部222は、代表位置算出回数mと部分軌跡生成条件回数Mとを比較し、代表位置算出回数mが部分軌跡生成条件回数Mと一致するならば(ステップC17:YES)、取得タッチ位置データ536aに格納されているM個の代表位置Q1、Q2、・・・、QMを基に所定の補間処理を行って部分軌跡を生成する(ステップC18)。そして、代表位置算出回数mを「0」に更新する(ステップC19)。
【0177】
すると、キャラクタ移動制御部224が、生成された部分軌跡とゲーム画面中の壁Wとが交差するか否かを判定し(交差判定)、交差するならば(ステップC20:YES)、この部分軌跡と壁Wとが交差する位置の直前まで操作キャラクタCAを移動させ(ステップC21)、移動可能フラグを「0」に設定する(ステップC22)。一方、生成された部分軌跡と壁Wが交差しないならば(ステップC20:NO)、この部分軌跡に沿って操作キャラクタCAを移動させる(ステップC23)。
【0178】
ループCの処理は以上のように実行される。
そして、タッチ操作の終了が検知された、即ち摺動タッチ操作が終了すると、ループCが終了し、ループCが終了すると、ゲーム演算部210は、ゲームを終了するか否かを判定し、終了しないならならば(ステップC24:NO)、ステップC13に移行して同様の処理を実行する。一方、ゲームを終了するならば(ステップC24:YES)、第2実施形態におけるゲーム処理は終了となる。
【0179】
<作用・効果>
以上のように、第2実施形態によれば、摺動タッチ操作が行われた場合に、所定の検出単位時間Δt毎に該検出単位時間Δtの間に取得された複数のタッチ位置Pを平均して代表位置Qを算出し、算出したこれらの代表位置Qを基に所定の補間処理を行うことで、該摺動タッチ操作による入力軌跡IRを生成することができる。即ち、検出されたタッチ位置Pそのものではなく、これらタッチ位置Pを平均化した代表位置Qに基づいて入力軌跡IRを生成するため、ある意味、ディスプレイ3の検出精度よりも低い精度での軌跡入力の制御が可能となるといえる。
【0180】
特に、携帯型のゲーム装置1では、ディスプレイ3の大きさが例えば手の平程度と小さいため、必然的にディスプレイ3に表示される表示物も小さくなる、即ち壁Wの間に形成される“通路”の幅も狭くなる。このため、例えば指で摺動タッチ操作を行う場合、指が壁Wに接触しないように移動させる(摺動タッチ操作)ことはスタイラスペン9を用いる場合と比較して難しいが、第2実施形態では、図22に示したように、タッチ軌跡DR1の中央付近を通過する軌跡が入力軌跡IRとして生成される。従って、指が壁Wと接触した場合であっても“接触していない”とみなされるので、プレーヤにとって有利な軌跡入力を行うことが可能となる。
【0181】
[変形例]
尚、本発明の適用は、上述した実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。
【0182】
(A)入力範囲IAの変更及び識別表示を一定時間の間継続する
上述した第1実施形態では、入力範囲IAの変更を、同一位置に対するタッチ操作が継続されている間のみ行うこととしたが、同一位置へのタッチ操作が終了した後も一定時間の間変更を継続することとしても良い。
【0183】
即ち、例えば図30(a)に示すように、円形状の“領域”である入力範囲IAが設定されている状態でスタイラスペン9を移動させると、同図(b)に示すように、この円形状の入力範囲IAが拡大し続けるともに、スタイラスペン9の移動中に設定された各入力範囲IA、即ち移動の軌跡に沿った各“点”のそれぞれが継続して識別表される。そして、これらの入力範囲IAは、一定時間が経過した後、古いもの(即ち、タッチ位置Pを中心とする入力範囲IA)から順に消去されていく。このように、同一位置へのタッチ操作が終了した後も、一定時間の間、入力範囲IAが拡大していくことで、入力の余勢といったものを表現できる。また、一旦設定された入力範囲IAは、同一位置へのタッチ操作が終了した後も、一定時間の間、表示されるため、入力の残存状態(残留状態)を表現できる。
【0184】
(B)入力範囲IAの形状
また、上述した第1実施形態では、入力範囲IAを拡大する際の形状を円形状としたが、他の形状としても良い。具体的には、例えば図31に示すようにリング形状とし、このリングの幅wを一定に保ったまま、その内半径ra(或いは、外半径rb)を所定の半径変更量Δrづつ増加させるように変更する。
【符号の説明】
【0185】
1 ゲーム装置
10 操作入力部
20 処理部
210 ゲーム演算部
212A、212B 入力範囲設定部
214 入力範囲表示制御部
216 アイコン選択部
218 球体制御部
222 部分軌跡生成部
224 キャラクタ移動制御部
230 画像生成部
240 音生成部
30 画像表示部
40 音出力部
50 記憶部
510A、510B、510C ゲームプログラム
512A、512B 入力範囲設定プログラム
514 入力範囲表示制御プログラム
516 アイコン選択プログラム
517 球体制御プログラム
518 部分軌跡生成プログラム
519 キャラクタ移動制御プログラム
522A、522B 入力範囲設定基準データ
524 入力範囲設定データ
526 アイコンデータ
528 レベルデータ
532B、532C ステージデータ
534 部分軌跡生成基準データ
536 部分軌跡生成データ
538 操作キャラクタデータ
3 ディスプレイ
4 タッチパネル
9 スタイラスペン
P タッチ位置
Q 代表位置
R 基準位置

【特許請求の範囲】
【請求項1】
表示部と、該表示部上の指示位置を所定の検出時間間隔で検出する1点検出型の手段とを有する表示装置を備えたコンピュータに、前記表示部への表示制御と、前記検出された指示位置に基づく入力制御とを行わせるためのプログラムであって、
前記検出時間間隔より長い所定の単位時間毎に、当該単位時間内に検出された複数の指示位置を代表する代表位置を決定する代表位置決定手段、
前記決定された代表位置の変動が同一の指示位置とみなせる所定範囲内か否かによって、同一の指示位置が継続して検出されているか否かを判定する同一位置判定手段、
前記同一位置判定手段により同一の指示位置が継続して検出されていると判定された際に、範囲内を指示されたとみなす入力範囲の大きさを変化させるとともに、前記表示部中のその入力範囲部分を識別表示する制御を行う入力範囲可変制御手段、
として前記コンピュータを機能させるためのプログラム。
【請求項2】
表示部と、該表示部上の同時に指示された複数の指示位置を検出可能な複数点検出型の手段とを有する表示装置を備えたコンピュータに、前記表示部への表示制御と、前記検出された指示位置に基づく入力制御とを行わせるためのプログラムであって、
所定の単位時間毎に、当該単位時間内に検出された複数の指示位置を代表する代表位置を決定する代表位置決定手段、
前記決定された代表位置の変動が同一の指示位置とみなせる所定範囲内か否かによって、同一の指示位置が継続して検出されているか否かを判定する同一位置判定手段、
前記同一位置判定手段により同一の指示位置が継続して検出されていると判定された際に、範囲内を指示されたとみなす入力範囲の大きさを変化させるとともに、前記表示部中のその入力範囲部分を識別表示する制御を行う入力範囲可変制御手段、
として前記コンピュータを機能させるためのプログラム。
【請求項3】
前記単位時間を変更する単位時間変更手段として前記コンピュータを更に機能させるための請求項1又は2に記載のプログラム。
【請求項4】
前記代表位置決定手段が、当該単位時間内に検出された複数の指示位置の平均位置を代表位置として決定するように前記コンピュータを機能させるための請求項1〜3の何れか一項に記載のプログラム。
【請求項5】
前記入力範囲可変制御手段が、前記同一の指示位置を基点として前記入力範囲の大きさを変化させるように前記コンピュータを機能させるための請求項1〜4の何れか一項に記載のプログラム。
【請求項6】
前記入力範囲可変制御手段が、前記同一位置判定手段により判定された同一の指示位置の継続検出の継続時間が所定の入力範囲変更開始時間を超えた場合に、前記入力範囲の大きさの変更を開始する開始制御手段を有するように前記コンピュータを機能させるための請求項1〜5の何れか一項に記載のプログラム。
【請求項7】
前記入力範囲可変制御手段が、前記入力範囲を徐々に大きくする拡大制御手段を有するように前記コンピュータを機能させるための請求項1〜6の何れか一項に記載のプログラム。
【請求項8】
前記入力範囲可変制御手段が、同一の指示位置が検出されなくなった場合であっても、所定の余勢時間の間、同一の指示位置が検出されているものとして前記入力範囲の大きさ変化及び前記入力範囲部分の識別表示の制御を続行する余勢変更制御手段を有するように前記コンピュータを機能させるための請求項1〜7の何れか一項に記載のプログラム。
【請求項9】
前記入力範囲可変制御手段が、同一の指示位置が検出されなくなった場合であっても、所定の残存時間の間、前記入力範囲部分の識別表示の制御を続行する識別表示続行制御手段を有するように前記コンピュータを機能させるための請求項1〜8の何れか一項に記載のプログラム。
【請求項10】
前記表示部に表示された所定の操作指示体の表示範囲を前記入力範囲として前記代表位置に追従するように当該操作指示体を移動表示する制御を行うオブジェクト移動表示制御手段、
前記表示部に前記操作指示体の移動障壁となる障壁オブジェクトを表示する障壁オブジェクト表示手段、
として前記コンピュータを機能させるとともに、
前記入力範囲可変制御手段が、前記同一位置判定手段により同一の指示位置が継続して検出されている判定された際に、前記操作指示体の大きさを変化させるように前記コンピュータを機能させ、
さらに、
前記操作指示体と前記障壁オブジェクトとの交差判定を行う交差判定手段、
前記交差判定手段による判定結果に基づいてゲームスコアを算出するスコア算出手段、
として前記コンピュータを機能させるための請求項1〜7の何れか一項に記載のプログラム。
【請求項11】
請求項1〜10の何れか一項に記載のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
【請求項12】
表示部と、該表示部上の指示位置を所定の検出時間間隔で検出する1点検出型の手段とを有する表示装置を備えた電子機器であって、
前記検出時間間隔より長い所定の単位時間毎に、当該単位時間内に検出された複数の指示位置を代表する代表位置を決定する代表位置決定手段と、
前記決定された代表位置の変動が同一の指示位置とみなせる所定範囲内か否かによって、同一の指示位置が継続して検出されているか否かを判定する同一位置判定手段と、
前記同一位置判定手段により同一の指示位置が継続して検出されていると判定された際に、範囲内を指示されたとみなす入力範囲の大きさを変化させるとともに、前記表示部中のその入力範囲部分を識別表示する制御を行う入力範囲可変制御手段と、
を備えた電子機器。
【請求項13】
表示部と、該表示部上の同時に指示された複数の指示位置を検出可能な複数点検出型の手段とを有する表示装置を備えた電子機器であって、
所定の単位時間毎に、当該単位時間内に検出された複数の指示位置を代表する代表位置を決定する代表位置決定手段と、
前記決定された代表位置の変動が同一の指示位置とみなせる所定範囲内か否かによって、同一の指示位置が継続して検出されているか否かを判定する同一位置判定手段と、
前記同一位置判定手段により同一の指示位置が継続して検出されていると判定された際に、範囲内を指示されたとみなす入力範囲の大きさを変化させるとともに、前記表示部中のその入力範囲部分を識別表示する制御を行う入力範囲可変制御手段と、
を備えた電子機器。

【図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

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate


【公開番号】特開2009−199621(P2009−199621A)
【公開日】平成21年9月3日(2009.9.3)
【国際特許分類】
【出願番号】特願2009−132105(P2009−132105)
【出願日】平成21年6月1日(2009.6.1)
【分割の表示】特願2004−140481(P2004−140481)の分割
【原出願日】平成16年5月10日(2004.5.10)
【出願人】(000134855)株式会社バンダイナムコゲームス (1,157)
【Fターム(参考)】