JP4895352B2 - 対象選択プログラム、対象選択装置、対象選択システム、および対象選択方法 - Google Patents

対象選択プログラム、対象選択装置、対象選択システム、および対象選択方法 Download PDF

Info

Publication number
JP4895352B2
JP4895352B2 JP2006029918A JP2006029918A JP4895352B2 JP 4895352 B2 JP4895352 B2 JP 4895352B2 JP 2006029918 A JP2006029918 A JP 2006029918A JP 2006029918 A JP2006029918 A JP 2006029918A JP 4895352 B2 JP4895352 B2 JP 4895352B2
Authority
JP
Japan
Prior art keywords
selection
group
target
displayed
key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2006029918A
Other languages
English (en)
Other versions
JP2007213144A (ja
Inventor
敬三 太田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2006029918A priority Critical patent/JP4895352B2/ja
Priority to EP06019260.6A priority patent/EP1816552B1/en
Priority to US11/521,386 priority patent/US9389751B2/en
Publication of JP2007213144A publication Critical patent/JP2007213144A/ja
Application granted granted Critical
Publication of JP4895352B2 publication Critical patent/JP4895352B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/105Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals using inertial sensors, e.g. accelerometers, gyroscopes

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Position Input By Displaying (AREA)

Description

本発明は、対象選択プログラム対象選択装置、対象選択システム、および対象選択方法に関し、より特定的には、表示装置に表示される複数の選択対象からポインティングデバイスを用いて選択する対象選択装置その装置のコンピュータで実行される対象選択プログラム、対象選択システム、および対象選択方法に関する。
従来、表示装置に表示された選択対象から選択する技術がある(例えば、特許文献1参照)。特許文献1で開示された装置では、複数の情報が所定の規則によりグループ化された複数の各グループから1つのグループを選択した後、当該選択されたグループ内の複数の情報から1つの情報を選択して確定される。このように複数の情報をグループ化することによって二段階の選択操作が可能となり、個々の情報が全て選択可能なものに比べて、カーソル移動等の情報選択に要する時間を短縮することができる。
特開2002−222039号公報
上記特許文献1で開示された装置では、テレビゲーム機のコントローラの方向キー等でカーソルを移動させる際には、個々の情報を全て選択可能なものに比べて上記二段階の選択操作により所望の情報までカーソルを移動させるのに要する操作ステップ数を軽減することができる。しかしながら、ユーザの操作に応じて表示装置の画面座標系に基づいた入力座標を出力するポインティングデバイス(例えば、マウスやタッチパネル等)を用いて情報を選択する際には、ユーザが直接的に所望の情報を選択できる。したがって、ポインティングデバイスを用いる場合、グループに分類された情報を選択する操作性は個々の情報が全て選択可能になっているものと差異はなく、むしろ上記二段階の操作が非効率的になることがある。
それ故に、本発明の目的は、表示画面に表示された複数の選択対象からポインティングデバイスを用いて選択する際、操作効率を向上させ正確な選択を可能とする対象選択プログラムおよび対象選択装置を提供することである。
上記の目的を達成するために、本発明は以下の構成を採用した。なお、括弧内の参照符号、ステップ番号(ステップをSと略称しステップ番号のみを記載する)、図面番号等は、本発明の理解を助けるために後述する最良の形態との対応関係を示したものであって、本発明の範囲を何ら限定するものではない。
第1の発明は、プレイヤの操作に応じて所定の座標系に基づいた座標情報(Da1、Da2)を出力するポインティングデバイス(74)と、プレイヤの操作に応じて複数種類の操作信号のうち所定の操作信号(Da3)を出力する入力デバイス(72)とを用いて、表示画面(2)に表示された複数の選択対象(OBJa〜OBJp、Wa〜Wp)から1つの選択対象を選択させる処理を行う装置のコンピュータ(30)に実行させる対象選択プログラムである。対象選択プログラムは、選択対象表示制御ステップ(S50)、第1操作情報取得ステップ(S51)、グループ選択ステップ(S53)、第2操作情報取得ステップ(S57〜S59)、対象選択ステップ(S61)、および処理ステップを、コンピュータに実行させる。選択対象表示制御ステップは、表示画面に所定の条件でグループ化(図12および図19のG0〜G3、図26のG0〜G7、図27のOBJg0〜OBJg3)された複数の選択対象を表示する。第1操作情報取得ステップは、ポインティングデバイスから出力された座標情報を取得する。グループ選択ステップは、第1操作情報取得ステップで取得した座標情報に基づいて、グループ化された複数の選択対象のグループから1つのグループ(選択グループG)を選択する。第2操作情報取得ステップは、グループ選択ステップでグループを選択したあと、入力デバイスから出力された操作信号を取得する。対象選択ステップは、第2操作情報取得ステップで取得した操作信号に基づいて、グループ選択ステップで選択したグループに属する選択対象から1つの選択対象を選択する。処理ステップは、対象選択ステップで選択された選択対象に応じた処理(knを用いた処理)を行う。
第2の発明は、上記第1の発明において、グループ選択ステップでは、ポインティングデバイスから出力された座標情報が表示画面に設定された画面座標系の座標に変換され、グループ化された複数の選択対象のグループから表示画面上のその座標の位置に表示された1つのグループが選択される。
第3の発明は、上記第1の発明において、対象選択ステップでは、グループ選択ステップで選択したグループに属する選択対象から、第2操作情報取得ステップで取得した操作信号を出力した入力デバイスの入力部の形状、または設置位置を模した位置(十字キー72aの上下左右の形状や左右の設置位置等)に表示された1つの選択対象が選択される。
第4の発明は、上記第3の発明において、、、グループ選択ステップは、選択対象表示位置変更制御ステップ(S55)を含む。選択対象表示位置変更制御ステップは、グループが選択されたとき、その選択されたグループに属する選択対象を、それぞれ入力デバイスの入力部の形状、または設置位置を模した位置に変更して配置して表示画面に表示する(図14、図28)。
第5の発明は、上記第1の発明において、グループ選択ステップは、標識表示追加制御ステップ(S55)を含む。標識表示追加制御ステップは、グループが選択されたとき、入力デバイスの入力部それぞれに割り当てられた機能を示す標識(矢印マークA、ボタンマークB)を、その選択されたグループに属する選択対象にそれぞれ付与して表示する。対象選択ステップでは、グループ選択ステップで選択したグループに属する選択対象から、第2操作情報取得ステップで取得した操作信号を出力した入力デバイスの入力部に割り当てられた機能を示す標識が付与されて表示された1つの選択対象が選択される。
第6の発明は、上記第1の発明において、グループ選択ステップは、選択グループ表示制御ステップ(S55)を含む。選択グループ表示制御ステップは、グループが選択されたとき、その選択されたグループに属する選択対象を他の選択対象と区別して表示画面に表示する(図13〜図17、図20図21、図26、および図28に示す強調表示)。
第7の発明は、上記第1の発明において、対象表示制御ステップは、対象選択ステップは、対象表示制御ステップ(S60)を含む。対象表示制御ステップは、選択対象が選択されたとき、その選択された選択対象を他の選択対象と区別して表示画面に表示する。
第8の発明は、上記第1の発明において、対象選択プログラムは、設定ステップ(Db2の設定)を、さらにコンピュータに実行させる。設定ステップは、複数の選択対象それぞれが属するグループおよび対応付けられる入力デバイスの入力部とを予め設定する(Db2)。
第9の発明は、上記第1の発明において、対象選択プログラムは、設定ステップを、さらにコンピュータに実行させる。設定ステップは、複数の選択対象を所定数毎にグループ化してそれぞれの選択対象が属するグループを設定する。
第10の発明は、上記第1の発明において、対象選択プログラムは、設定ステップを、さらにコンピュータに実行させる。設定ステップは、複数の選択対象に対して互いに隣接して表示画面に表示される選択対象をグループ化してそれぞれの選択対象が属するグループを設定する。
第11の発明は、上記第1の発明において、選択対象は、文字がそれぞれ記述されて表示画面に表示されるオブジェクト(OBJa〜OBJp)である。処理ステップでは、対象選択ステップで選択されたオブジェクトに記述された文字を入力する処理が行われる。
第12の発明は、上記第1の発明において、選択対象は、表示画面に表示される文字(Wa〜Wp)である。処理ステップでは、対象選択ステップで選択された文字を入力する処理が行われる。
第13の発明は、プレイヤの操作に応じて所定の座標系に基づいた座標情報を出力するポインティングデバイスと、プレイヤの操作に応じて複数種類の操作信号のうち所定の操作信号を出力する入力デバイスとを用いて、表示画面に表示された複数の選択対象から1つの選択対象を選択させる対象選択装置である。対象選択装置は、選択対象表示制御手段、第1操作情報取得手段、グループ選択手段、第2操作情報取得手段、対象選択手段、および処理手段を備える。選択対象表示制御手段は、表示画面に所定の条件でグループ化された複数の選択対象を表示する。第1操作情報取得手段は、ポインティングデバイスから出力された座標情報を取得する。グループ選択手段は、第1操作情報取得手段が取得した座標情報に基づいて、グループ化された複数の選択対象のグループから1つのグループを選択する。第2操作情報取得手段は、グループ選択手段がグループを選択したあと、入力デバイスから出力された操作信号を取得する。対象選択手段は、第2操作情報取得手段が取得した操作信号に基づいて、グループ選択手段が選択したグループに属する選択対象から1つの選択対象を選択する。処理手段は、対象選択手段が選択した選択対象に応じた処理を行う。
上記第1の発明によれば、複数の選択対象を所定の条件でグループ化し、グループ化したものをポインティングデバイスで選択する。そして、選択したグループ内の選択対象を入力キーや入力ボタン等の入力デバイスに対応付けて、該当する入力デバイスを操作することにより所望の選択対象を選択することができる。したがって、ポインティングデバイスでは個々の選択対象が選択困難な場面でも、複数の選択対象をグループ化することで比較的大きな選択対象となるため、相対的に大きな選択領域を有する選択対象群の選択が容易となる。さらに、ポインティングデバイスでグループの何れか選択しつつ、入力デバイスを用いて当該グループに含まれる個々の選択対象を選択するため、効率的に所望の選択対象を選択することができる。また、グループ化された複数の選択対象群をポインティングデバイスで選択可能な程度にまで縮小できるため、個々の選択対象単位ではポインティングデバイスでの選択が困難なサイズでも表示が可能となり、選択対象を表示する領域を効率よく利用することができる。
上記第2の発明によれば、グループ化された選択対象群が表示されてポインティングデバイスを用いて直接的に選択できるため、グループを選択する操作が直感的でユーザにとってわかりやすい。
上記第3の発明によれば、1つの選択対象を選択するために操作すべき入力デバイスがその入力部の形状またはその配置位置によってユーザに示されるため、選択対象を選択するための操作を明確に示すことができる。
上記第4の発明によれば、グループとして選択された選択対象が移動することによって、1つの選択対象を選択するために操作すべき入力デバイスがその入力部の形状またはその配置位置によってユーザに示されるため、選択対象を選択するための操作を明確にすると同時に選択されたグループをユーザに知らせることができる。
上記第5の発明によれば、1つの選択対象を選択するために操作すべき入力デバイスがAボタンや×ボタン等の機能を示す標識によってユーザに示されるため、選択対象を選択するための操作を明確に示すことができる。
上記第6の発明によれば、選択されたグループをユーザに知らせることができる。
上記第7の発明によれば、選択された1つの選択対象をユーザに知らせることができる。
上記第8の発明によれば、選択対象を選択するためのグループや操作方法が固定的であるため、ユーザがそれらのグループや操作方法に慣れることによって選択対象を選択する操作を効率よく行うことができる。
上記第9の発明によれば、同じ数の選択対象を1グループとして構成することによって、グループ選択後の操作を共通にすることが可能となり、1つの選択対象を選択する操作を固定することができる。
上記第10の発明によれば、互いに隣接する選択対象をグループ化することによって、グループに属する選択対象がわかりやすくなる。
上記第11の発明によれば、文字が記述されたキー等のオブジェクトを配列することによって、仮想的なキーボードを表現することができ、選択された文字を入力するソフトウエアキーボードを実現することができる。
上記第12の発明によれば、複数の文字を配列することによって、仮想的なキーボードを表現することができ、選択された文字を入力するソフトウエアキーボードを実現することができる。
本発明の対象選択装置によれば、上述した対象選択プログラムと同様の効果を得ることができる。
図1を参照して、本発明の一実施形態に係る対象選択装置について説明する。以下、説明を具体的にするために、当該対象選択装置を用いたゲームシステム1を一例として説明する。なお、図1は、当該ゲームシステム1を説明するための外観図である。以下、本発明の対象選択装置の一例として据置型ゲーム装置を用いて、当該ゲームシステム1について説明する。
図1において、当該ゲームシステム1は、家庭用テレビジョン受像機等のスピーカ2aを備えたディスプレイ(以下、モニタと記載する)2に、接続コードを介して接続される据置型ゲーム装置(以下、単にゲーム装置と記載する)3および当該ゲーム装置3に操作情報を与えるコントローラ7によって構成される。ゲーム装置3は、接続端子を介して受信ユニット6が接続される。受信ユニット6は、コントローラ7から無線送信される送信データを受信し、コントローラ7とゲーム装置3とは無線通信によって接続される。また、ゲーム装置3には、当該ゲーム装置3に対して交換可能に用いられる情報記憶媒体の一例の光ディスク4が脱着される。ゲーム装置3の上部主面には、当該ゲーム装置3の電源ON/OFFスイッチ、ゲーム処理のリセットスイッチ、およびゲーム装置3上部の蓋を開くOPENスイッチが設けられている。ここで、プレイヤがOPENスイッチを押下することによって上記蓋が開き、光ディスク4の脱着が可能となる。
また、ゲーム装置3には、セーブデータ等を固定的に記憶するバックアップメモリ等を搭載する外部メモリカード5が必要に応じて着脱自在に装着される。ゲーム装置3は、光ディスク4に記憶されたゲームプログラムなどを実行することによって、その結果をゲーム画像としてモニタ2に表示する。なお、本発明の対象選択プログラムは、光ディスク4に記憶されたゲームプログラムの一部に含まれているものとする。さらに、ゲーム装置3は、外部メモリカード5に記憶されたセーブデータを用いて、過去に実行されたゲーム状態を再現して、ゲーム画像をモニタ2に表示することもできる。そして、ゲーム装置3のプレイヤは、モニタ2に表示されたゲーム画像を見ながら、コントローラ7を操作することによって、ゲーム進行を楽しむことができる。
コントローラ7は、その内部に備える通信部75(後述)から受信ユニット6が接続されたゲーム装置3へ、例えばBluetooth(ブルートゥース;登録商標)の技術を用いて送信データを無線送信する。コントローラ7は、主にモニタ2に表示される複数のオブジェクト(選択対象)から1つのオブジェクトを選択するための操作するための操作手段である。コントローラ7は、複数の操作ボタン、キー、およびスティック等の操作部が設けられている。また、後述により明らかとなるが、コントローラ7は、当該コントローラ7から見た画像を撮像する撮像情報演算部74を備えている。また、撮像情報演算部74の撮像対象の一例として、モニタ2の表示画面近傍に2つのLEDモジュール(以下、マーカと記載する)8Lおよび8Rが設置される。これらマーカ8Lおよび8Rは、それぞれモニタ2の前方に向かって赤外光を出力する。
次に、図2を参照して、ゲーム装置3の構成について説明する。なお、図2は、ゲーム装置3の機能ブロック図である。
図2において、ゲーム装置3は、各種プログラムを実行する例えばリスク(RISC)CPU(セントラルプロセッシングユニット)30を備える。CPU30は、図示しないブートROMに記憶された起動プログラムを実行し、メインメモリ33等のメモリの初期化等を行った後、光ディスク4に記憶されているゲームプログラムの実行し、そのゲームプログラムに応じたゲーム処理等を行うものである。CPU30には、メモリコントローラ31を介して、GPU(Graphics Processing Unit)32、メインメモリ33、DSP(Digital Signal Processor)34、およびARAM(Audio RAM)35が接続される。また、メモリコントローラ31には、所定のバスを介して、コントローラI/F(インターフェース)36、ビデオI/F37、外部メモリI/F38、オーディオI/F39、およびディスクI/F41が接続され、それぞれ受信ユニット6、モニタ2、外部メモリカード5、スピーカ2a、およびディスクドライブ40が接続されている。
GPU32は、CPU30の命令に基づいて画像処理を行うものあり、例えば、3Dグラフィックスの表示に必要な計算処理を行う半導体チップで構成される。GPU32は、図示しない画像処理専用のメモリやメインメモリ33の一部の記憶領域を用いて画像処理を行う。GPU32は、これらを用いてモニタ2に表示すべきオブジェクト画像データやゲーム画像データやムービ映像を生成し、適宜メモリコントローラ31およびビデオI/F37を介してモニタ2に出力する。
メインメモリ33は、CPU30で使用される記憶領域であって、CPU30の処理に必要なゲームプログラム等を適宜記憶する。例えば、メインメモリ33は、CPU30によって光ディスク4から読み出されたゲームプログラムや各種データ等を記憶する。このメインメモリ33に記憶されたゲームプログラムや各種データ等がCPU30によって実行される。
DSP34は、ゲームプログラム実行時にCPU30において生成されるサウンドデータ等を処理するものであり、そのサウンドデータ等を記憶するためのARAM35が接続される。ARAM35は、DSP34が所定の処理(例えば、先読みしておいたゲームプログラムやサウンドデータの記憶)を行う際に用いられる。DSP34は、ARAM35に記憶されたサウンドデータを読み出し、メモリコントローラ31およびオーディオI/F39を介してモニタ2に備えるスピーカ2aに出力させる。
メモリコントローラ31は、データ転送を統括的に制御するものであり、上述した各種I/Fが接続される。コントローラI/F36は、例えば4つのコントローラI/F36a〜36dで構成され、それらが有するコネクタを介して嵌合可能な外部機器とゲーム装置3とを通信可能に接続する。例えば、受信ユニット6は、上記コネクタと嵌合し、コントローラI/F36を介してゲーム装置3と接続される。上述したように受信ユニット6は、コントローラ7からの送信データを受信し、コントローラI/F36を介して当該送信データをCPU30へ出力する。ビデオI/F37には、モニタ2が接続される。外部メモリI/F38には、外部メモリカード5が接続され、その外部メモリカード5に設けられたバックアップメモリ等とアクセス可能となる。オーディオI/F39にはモニタ2に内蔵されるスピーカ2aが接続され、DSP34がARAM35から読み出したサウンドデータやディスクドライブ40から直接出力されるサウンドデータをスピーカ2aから出力可能に接続される。ディスクI/F41には、ディスクドライブ40が接続される。ディスクドライブ40は、所定の読み出し位置に配置された光ディスク4に記憶されたデータを読み出し、ゲーム装置3のバスやオーディオI/F39に出力する。
図3および図4を参照して、コントローラ7について説明する。なお、図3は、コントローラ7の上面後方から見た斜視図である。図4は、コントローラ7を下面後方から見た斜視図である。
図3および図4において、コントローラ7は、例えばプラスチック成型によって形成されたハウジング71を有しており、当該ハウジング71に複数の操作部72が設けられている。ハウジング71は、その前後方向を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。
ハウジング71上面の中央前面側に、十字キー72aが設けられる。この十字キー72aは、十字型の4方向プッシュスイッチであり、矢印で示す4つの方向(前後左右)に対応する操作部分が十字の突出片にそれぞれ90°間隔で配置される。プレイヤが十字キー72aのいずれかの操作部分を押下することによって前後左右いずれかの方向を選択される。後述により明らかとなるが、例えばプレイヤが十字キー72aを操作することによって、複数のオブジェクトから1つのオブジェクトを選択ことができる。
なお、十字キー72aは、上述したプレイヤの方向入力操作に応じて操作信号を出力する操作部であるが、他の態様の操作部でもかまわない。例えば、リング状に4方向の操作部分を備えたプッシュスイッチとその中央に設けられたセンタスイッチとを複合した複合スイッチを上記十字キー72aの代わりに設けてもかまわない。また、ハウジング71上面から突出した傾倒可能なスティックを倒すことによって、傾倒方向に応じて操作信号を出力する操作部を上記十字キー72aの代わりに設けてもかまわない。さらに、水平移動可能な円盤状部材をスライドさせることによって、当該スライド方向に応じた操作信号を出力する操作部を、上記十字キー72aの代わりに設けてもかまわない。また、タッチパッドを、上記十字キー72aの代わりに設けてもかまわない。また、少なくとも4つの方向(前後左右)をそれぞれ示すスイッチに対して、プレイヤによって押下されたスイッチに応じて操作信号を出力する操作部を上記十字キー72aの代わりに設けてもかまわない。
ハウジング71上面の十字キー72aより後面側に、複数の操作ボタン72b〜72gが設けられる。操作ボタン72b〜72gは、プレイヤがボタン頭部を押下することによって、それぞれの操作ボタン72b〜72gに割り当てられた操作信号を出力する操作部である。例えば、操作ボタン72b〜72dには、Xボタン、Yボタン、およびBボタン等としての機能が割り当てられる。また、操作ボタン72e〜72gには、セレクトスイッチ、メニュースイッチ、およびスタートスイッチ等としての機能が割り当てられる。これら操作ボタン72b〜72gは、ゲーム装置3が実行するゲームプログラムに応じてそれぞれの機能が割り当てられるが、本発明の説明とは直接関連しないため詳細な説明を省略する。なお、図3に示した配置例では、操作ボタン72b〜72dは、ハウジング71上面の中央前後方向に沿って並設されている。また、操作ボタン72e〜72gは、ハウジング71上面の左右方向に沿って操作ボタン72bおよび72dの間に並設されている。そして、操作ボタン72fは、その上面がハウジング71の上面に埋没しており、プレイヤが不意に誤って押下することのないタイプのボタンである。
また、ハウジング71上面の十字キー72aより前面側に、操作ボタン72hが設けられる。操作ボタン72hは、遠隔からゲーム装置3本体の電源をオン/オフする電源スイッチである。この操作ボタン72hも、その上面がハウジング71の上面に埋没しており、プレイヤが不意に誤って押下することのないタイプのボタンである。
また、ハウジング71上面の操作ボタン72cより後面側に、複数のLED702が設けられる。ここで、コントローラ7は、他のコントローラ7と区別するためにコントローラ種別(番号)が設けられている。例えば、LED702は、コントローラ7に現在設定されている上記コントローラ種別をプレイヤに通知するために用いられる。具体的には、コントローラ7から受信ユニット6へ送信データを送信する際、上記コントローラ種別に応じて複数のLED702のうち、種別に対応するLEDが点灯する。
一方、ハウジング71下面には、凹部が形成されている。後述で明らかとなるが、ハウジング71下面の凹部は、プレイヤがコントローラ7を把持したときに当該プレイヤの人差し指や中指が位置するような位置に形成される。そして、上記凹部の後面側傾斜面には、操作ボタン72iが設けられる。操作ボタン72iは、例えばAボタンとして機能する操作部であり、シューティングゲームにおけるトリガスイッチや、プレイヤオブジェクトを所定オブジェクトに対して注目させる操作等に用いられる。
また、ハウジング71前面には、撮像情報演算部74の一部を構成する撮像素子743が設けられる。ここで、撮像情報演算部74は、コントローラ7が撮像した画像データを解析してその中で輝度が高い場所を判別してその場所の重心位置やサイズなどを検出するためのシステムであり、例えば、最大200フレーム/秒程度のサンプリング周期であるため比較的高速なコントローラ7の動きでも追跡して解析することができる。この撮像情報演算部74の詳細な構成については、後述する。また、ハウジング70の後面には、コネクタ73が設けられている。コネクタ73は、例えば32ピンのエッジコネクタであり、例えば接続ケーブルと嵌合して接続するために利用される。
次に、図5を参照して、コントローラ7の内部構造について説明する。なお、図5(a)は、コントローラ7の上筐体(ハウジング71の一部)を外した状態を示す斜視図である。図5(b)は、コントローラ7の下筐体(ハウジング71の一部)を外した状態を示す斜視図である。ここで、図5(b)に示す基板700は、図5(a)に示す基板700の裏面から見た斜視図となっている。
図5(a)において、ハウジング71の内部には基板700が固設されており、当該基板700の上主面上に操作ボタン72a〜72h、加速度センサ701、LED702、水晶振動子703、無線モジュール753、およびアンテナ754等が設けられる。そして、これらは、基板700等に形成された配線(図示せず)によってマイコン751(図6参照)に接続される。また、無線モジュール753およびアンテナ754によって、コントローラ7がワイヤレスコントローラとして機能する。なお、水晶振動子703は、後述するマイコン751の基本クロックを生成する。
一方、図5(b)において、基板700の下主面上の前端縁に撮像情報演算部74が設けられる。撮像情報演算部74は、コントローラ7の前方から順に赤外線フィルタ741、レンズ742、撮像素子743、および画像処理回路744によって構成されており、それぞれ基板700の下主面に取り付けられる。また、基板700の下主面上の後端縁にコネクタ73が取り付けられる。そして、操作ボタン72iが撮像情報演算部74の後方の基板700の下主面上に取り付けられていて、それよりさらに後方に、電池705が収容される。電池705とコネクタ73との間の基板700の下主面上には、バイブレータ704が取り付けられる。このバイブレータ704は、例えば振動モータやソレノイドであってよい。バイブレータ704が作動することによってコントローラ7に振動が発生するので、それを把持しているプレイヤの手にその振動が伝達され、いわゆる振動対応ゲームが実現できる。
次に、図6を参照して、コントローラ7の内部構成について説明する。なお、図6は、コントローラ7の構成を示すブロック図である。
図6において、コントローラ7は、操作部72、撮像情報演算部74、通信部75、および加速度センサ701を備えている。
撮像情報演算部74は、赤外線フィルタ741、レンズ742、撮像素子743、および画像処理回路744を含んでいる。赤外線フィルタ741は、コントローラ7の前方から入射する光から赤外線のみを通過させる。レンズ742は、赤外線フィルタ741を透過した赤外線を集光して撮像素子743へ出射する。撮像素子743は、例えばCMOS(Complementary Metal Oxide Semiconductor;相補型金属酸化膜半導体)センサやあるいはCCD(Charge Coupled Device;電荷結合素子)のような固体撮像素子であり、レンズ742が集光した赤外線を撮像する。したがって、撮像素子743は、赤外線フィルタ741を通過した赤外線だけを撮像して画像データを生成する。撮像素子743で生成された画像データは、画像処理回路744で処理される。具体的には、画像処理回路744は、撮像素子743から得られた画像データを処理して高輝度部分を検知し、それらの位置座標や面積を検出した結果を示す処理結果データを通信部75へ出力する。なお、これらの撮像情報演算部74は、コントローラ7のハウジング71に固設されており、ハウジング71自体の方向を変えることによってその撮像方向を変更することができる。後述により明らかとなるが、この撮像情報演算部74から出力される処理結果データに基づいて、コントローラ7の位置や動きに応じた信号を得ることができ、当該信号に基づいてモニタ2の画面座標系に基づいた入力座標を得ることができる。つまり、コントローラ7は、撮像情報演算部74から出力される処理結果データによってポインティングデバイスとして機能する。
加速度センサ701は、コントローラ7の上下方向、左右方向、および前後方向の3軸でそれぞれ加速度を検知する加速度センサである。なお、加速度センサ701は、必要な操作信号の種類によっては、上下方向および左右方向の2軸でそれぞれ加速度を検出する加速度センサが用いられてもかまわない。加速度センサ701が検知した加速度を示すデータは、通信部75へ出力される。なお、加速度センサ701は、典型的には静電容量式の加速度センサが用いられるが、他の方式の加速度センサやジャイロセンサを用いてもかまわない。この加速度センサ701から出力される加速度データに基づいて、コントローラ7の動きを検出することができる。
通信部75は、マイクロコンピュータ(Micro Computer:マイコン)751、メモリ752、無線モジュール753、およびアンテナ754を含んでいる。マイコン751は、処理の際にメモリ752を記憶領域として用いながら、送信データを無線送信する無線モジュール753を制御する。
コントローラ7に設けられた操作部72からの操作信号(操作部データ)、加速度センサ701からの加速度信号(加速度データ)、および撮像情報演算部74からの処理結果データは、マイコン751に出力される。マイコン751は、入力した各データ(操作部データ、加速度データ、処理結果データ)を受信ユニット6へ送信する送信データとして一時的にメモリ752に格納する。ここで、通信部75から受信ユニット6への無線送信は、所定の周期毎に行われるが、ゲームの処理は1/60を単位として行われることが一般的であるので、それよりも短い周期で送信を行うことが必要となる。具体的には、ゲームの処理単位は16.7ms(1/60秒)であり、ブルートゥース(登録商標)で構成される通信部75の送信間隔は5msである。マイコン751は、受信ユニット6への送信タイミングが到来すると、メモリ752に格納されている送信データを一連の操作情報として出力し、無線モジュール753へ出力する。そして、無線モジュール753は、例えばBluetooth(ブルートゥース;登録商標)の技術を用いて、所定周波数の搬送波を用いて操作情報をその電波信号としてアンテナ754から放射する。つまり、コントローラ7に設けられた操作部72からの操作部データ、加速度センサ701からの加速度データ、および撮像情報演算部74からの処理結果データがコントローラ7から送信される。そして、ゲーム装置3の受信ユニット6でその電波信号を受信し、ゲーム装置3で当該電波信号を復調や復号することによって、一連の操作情報(操作部データ、加速度データ、および処理結果データ)を取得する。そして、ゲーム装置3のCPU30は、取得した操作情報とゲームプログラムとに基づいて、ゲーム処理を行う。なお、Bluetooth(登録商標)の技術を用いて通信部75を構成する場合、通信部75は、他のデバイスから無線送信された送信データを受信する機能も備えることができる。
図7に示すように、ゲームシステム1でコントローラ7を用いてゲームをプレイするためには、プレイヤは、一方の手(例えば右手)でコントローラ7を把持する(図8および図9参照)。そして、プレイヤは、コントローラ7の前面(撮像情報演算部74が撮像する光の入射口側)がモニタ2に向くようにコントローラ7を把持する。一方、モニタ2の表示画面近傍には、2つのマーカ8Lおよび8Rが設置される。これらマーカ8Lおよび8Rは、それぞれモニタ2の前方に向かって赤外光を出力し、撮像情報演算部74の撮像対象となる。
プレイヤがその前面がモニタ2に向くようにコントローラ7を把持することによって、撮像情報演算部74には2つのマーカ8Lおよび8Rが出力した赤外光が入射する。そして、赤外線フィルタ741およびレンズ742を介して、入射した赤外光を撮像素子743が撮像し、当該撮像画像を画像処理回路744が処理する。ここで、撮像情報演算部74では、マーカ8Lおよび8Rから出力される赤外線成分を検出することで、上記撮像画像における当該マーカ8Lおよび8Rの位置(対象画像の位置)や面積情報を取得する。具体的には、画像処理回路744は、撮像素子743が撮像した画像データを解析して、まず面積情報からマーカ8Lおよび8Rからの赤外光ではあり得ない画像を除外し、さらに輝度が高い点をマーカ8Lおよび8Rそれぞれの位置として判別する。そして、撮像情報演算部74は、判別されたそれらの輝点の重心位置等の位置情報を取得し、上記処理結果データとして出力する。ここで、上記処理結果データである位置情報は、撮像画像における所定の基準点(例えば、撮像画像の中央や左上隅)を原点とした座標値として出力するものでもよく、所定のタイミングにおける輝点位置を基準点として、当該基準位置からの現在の輝点位置の差をベクトルとして出力するものでもよい。つまり、上記対象画像の位置情報は、撮像素子743が撮像した撮像画像に対して所定の基準点を設定した場合に、当該基準点に対する差として用いられるパラメータである。このような処理結果データをゲーム装置3へ送信することによって、ゲーム装置3では、基準からの上記位置情報の差に基づいて、マーカ8Lおよび8Rに対する撮像情報演算部74、すなわちコントローラ7の動き、姿勢、位置等に応じた信号の変化量を得ることができる。具体的には、コントローラ7が動かされることによって、通信部75から送信される画像内の高輝度点の位置が変化するため、高輝度点の位置の変化に対応させた方向入力や座標入力を行うことで、3次元空間に対してコントローラ7の移動方向に沿った方向入力や座標入力を行うことができる。なお、後述するゲーム処理動作例では、撮像情報演算部74が撮像画像におけるマーカ8Lおよび8Rの対象画像それぞれの重心位置の座標を取得し、上記処理結果データとして出力する例を用いる。
このように、コントローラ7の撮像情報演算部74によって、固定的に設置されたマーカ(実施例では、2つのマーカ8Lおよび8Rからの赤外光)を撮像することによって、ゲーム装置3における処理において、コントローラ7から出力されるデータを処理してコントローラ7の動き、姿勢、位置等に対応した操作が可能となり、ボタンを押下するような操作ボタンや操作キーとは異なった直感的な操作入力となる。また、上述したように上記マーカは、モニタ2の表示画面近傍に設置されているため、マーカに対する位置をモニタ2の表示画面に対するコントローラ7の動き、姿勢、位置等に換算することも容易に行うことができる。つまり、コントローラ7の動き、姿勢、位置等による処理結果データは、モニタ2の表示画面に直接作用する操作入力として用いることができ、コントローラ7をポインティングデバイスとして機能させることもできる。
図8および図9を参照して、プレイヤがコントローラ7を一方の手で把持した状態について説明する。なお、図8は、プレイヤがコントローラ7を右手で把持した状態をコントローラ7の前面側から見た一例である。図9は、プレイヤがコントローラ7を右手で把持した状態をコントローラ7の左側面側から見た一例である。
図8および図9に示すように、コントローラ7は、全体として大人や子供の片手で把持可能な大きさである。そして、プレイヤの親指をコントローラ7の上面(例えば、十字キー72a付近)に添え、プレイヤの人差し指をコントローラ7下面の凹部(例えば、操作ボタン72i付近)に添えたとき、コントローラ7の前面に設けられている撮像情報演算部74の光入射口がプレイヤの前方方向に露出する。なお、このようなコントローラ7に対する把持状態は、プレイヤの左手であっても同様に行えることは言うまでもない。
このように、コントローラ7は、プレイヤが片手で把持した状態で十字キー72aや操作ボタン72i等の操作部72を容易に操作することができる。さらに、プレイヤがコントローラ7を片手で把持したとき、当該コントローラ7の前面に設けられている撮像情報演算部74の光入射口が露出するため、上述した2つのマーカ8Lおよび8Rからの赤外光を容易に当該光入射口から取り入れることができる。つまり、プレイヤは、コントローラ7が有する撮像情報演算部74の機能を阻害することなくコントローラ7を片手で把持することができる。したがって、プレイヤがコントローラ7を把持した手を表示画面に対して動かすことによって、コントローラ7は、プレイヤの手の運動が表示画面に直接作用する操作入力機能をさらに備えることができる。
ここで、図10に示すように、マーカ8Lおよび8Rは、それぞれ視野角θ1を有している。また、撮像素子743は、視野角θ2を有している。例えば、マーカ8Lおよび8Rの視野角θ1は共に34°(半値角)であり、撮像素子743の視野角θ2は41°である。そして、撮像素子743の視野角θ2の中にマーカ8Lおよび8Rが共に存在し、マーカ8Lの視野角θ1の中でかつマーカ8Rの視野角θ1の中に撮像素子743が存在するとき、ゲーム装置3は、2つのマーカ8Lおよび8Rによる高輝度点に関する位置データを用いて、モニタ2の画面に対してコントローラ7で指し示された位置を検出する。
例えば、モニタ2の上面に2つのマーカ8Lおよび8Rを設置し(図7参照)、上面を上方向に向けたコントローラ7を用いてプレイヤがモニタ2の画面の中央を指し示した場合(撮像情報演算部74の撮像画像の中央に画面中央が撮像されている状態)を考える。このとき、撮像情報演算部74の撮像画像において、撮像対象がそれぞれ撮像された対象画像の中点(マーカ8Lおよび8Rの中点)位置と指し示した位置(画面中央)とが一致しない。具体的には、上記撮像画像における対象画像の位置は、撮像画像の中心から上方の位置となる。このような位置に対象画像が位置する場合に、画面中央が指し示されているという基準位置の設定を行う。また、コントローラ7の移動に対応して、撮像画像中の対象画像の位置も移動する(移動方向は逆方向となる)ので、撮像画像中の対象画像の位置の移動に対応させて画面内が指し示された位置を移動させる処理を行うことによって、コントローラ7で画面を指し示した位置を取得することができる。つまり、撮像情報演算部74の撮像画像に基づいて、コントローラ7で直接的に指し示された画面位置が取得できる。コントローラ7で指し示された位置を算出する処理の本質的な原理は、コントローラ7の移動による対象画像の位置の変化によって、指し示された2次元座標の所定の基準位置からの変位を算出し、入力座標を設定するというものである。したがって、コントローラ7は、モニタ2の画面座標系に基づいた入力座標を出力するポインティングデバイスとして機能する。
ここで、基準位置の設定は、予めプレイヤが画面の所定位置をコントローラ7で指し示し、そのときの対象画像の位置を基準となる当該所定位置と対応させて記憶しておくようにしてもよいし、対象画像と画面との位置関係が固定的であれば、予め設定されていてもよい。コントローラ7で指し示された画面座標系の入力座標は、対象画像の位置座標(後述する第1座標データDa1および第2座標データDa2)からモニタ2の画面上の座標(画面座標データDb1)を算出する関数を用いて算出される。この関数は、ある撮像画像から算出される位置座標の値を、当該撮像画像が撮像される時のコントローラ7によって指し示される画面上の位置を表す座標に変換するものである。この関数によって、撮像対象の座標から画面が指し示された位置を算出することができる。なお、画面座標系の入力座標をゲーム空間内における位置を表す座標に変換する場合には、当該入力座標に対応するゲーム空間内における位置にさらに変換すればよい。
しかしながら、上面が上方向以外(例えば、右方向)に向けられたコントローラ7を用いてプレイヤがモニタ2の画面の中央を指し示した場合、上記撮像画像における対象画像の位置は撮像画像の中心から上方以外(例えば、左方)の方向にずれた位置となる。つまり、コントローラ7の傾きによって、コントローラ7の移動方向と、画面内を指し示した位置の移動方向とが一致しないことになる。そこで、2つの上記対象画像を結ぶ方向に基づいて、2つの対象画像の中点位置を補正する。具体的には、中点位置を、コントローラ7の上面が上方向に向けられた状態であるとした場合における中点位置に補正する。より具体的には、上記基準位置の設定の際には2つの対象画像を結ぶ方向の基準も設定され、中点位置を、2つの対象画像を結ぶ方向と当該基準方向との角度差に応じた量だけ、撮像画像の中心を軸として中点位置が示す座標を回転移動させて補正する。そして、補正された中点位置を用いて上述したように指し示された位置を算出する。
次に、ゲーム装置3が行う具体的な処理を説明する前に、本発明の理解を容易にするために選択対象の選択操作の概要および図11〜図21に示す画面例等を参照して、ゲームプログラムを実行するゲーム装置3によって提供される対象選択処理について説明する。以下、説明を具体的にするために、文字が記述された複数のキーが配列されたキーボードをモニタ2に表示し、当該複数のキーから1つのキーを入力として選択する操作を一例として用いる。この場合、プレイヤの選択対象は、モニタ2に配列表示された複数のキーとなる。なお、図11は、モニタ2に表示された複数のキーオブジェクトOBJa〜OBJpの一例を示す図である。図12は、図11の複数のキーオブジェクトOBJa〜OBJpを4つのグループG0〜G3に分類した状態を説明するための図である。図13〜図17は、コントローラ7で図12のグループG0が指し示されたときにモニタ2に表示される第1〜第5の表示例を示す図である。図18は、モニタ2に表示された複数のキーオブジェクトOBJa〜OBJpの他の例を示す図である。図19は、図18の複数のキーオブジェクトOBJa〜OBJpを4つのグループG0〜G3に分類した状態を説明するための図である。図20および図21は、コントローラ7で図19のグループG0が指し示されたときにモニタ2に表示される第1および第2の表示例を示す図である。
図11において、16個のキーオブジェクトOBJa〜OBJpを4×4に配列することによって、複数のキーが配列された仮想的なキーボード(ソフトウエアキーボード)がモニタ2に表示される。例えば、プレイヤがコントローラ7を用いて何れかのキーオブジェクトOBJa〜OBJpを選択することによって、選択されたキーオブジェクトOBJa〜OBJpに記述された文字(キー文字)を入力することが可能となる。具体的には、キーオブジェクトOBJaにはキー文字「A」が、キーオブジェクトOBJbにはキー文字「B」が、キーオブジェクトOBJcにはキー文字「C」が、キーオブジェクトOBJdにはキー文字「D」が、キーオブジェクトOBJeにはキー文字「E」が、キーオブジェクトOBJfにはキー文字「F」が、キーオブジェクトOBJgにはキー文字「G」が、キーオブジェクトOBJhにはキー文字「H」が、キーオブジェクトOBJiにはキー文字「I」が、キーオブジェクトOBJjにはキー文字「J」が、キーオブジェクトOBJkにはキー文字「K」が、キーオブジェクトOBJlにはキー文字「L」が、キーオブジェクトOBJmにはキー文字「M」が、キーオブジェクトOBJnにはキー文字「N」が、キーオブジェクトOBJoはキー文字「O」が、キーオブジェクトOBJpにはキー文字「P」が、それぞれ記述されている。そして、配列4×4の第1行目にキーオブジェクトOBJa〜OBJdが左から順に配置され、第2行目にキーオブジェクトOBJe〜OBJhが左から順に配置され、第3行目にキーオブジェクトOBJi〜OBJlが左から順に配置され、第4行目にキーオブジェクトOBJm〜OBJpが左から順に配置されている。
図12において、16個のキーオブジェクトOBJa〜OBJpは、2×2の4つのオブジェクトをそれぞれ1グループとする4つのグループG0〜G3(モニタ2には表示されなくてもよいが、図12では破線で示す)に分類されている。具体的には、グループG0は、4つのキーオブジェクトOBJa、OBJb、OBJe、およびOBJfで構成される。グループG1は、4つのキーオブジェクトOBJc、OBJd、OBJg、およびOBJhで構成される。グループG2は、4つのキーオブジェクトOBJi、OBJj、OBJm、およびOBJnで構成される。グループG3は、4つのキーオブジェクトOBJk、OBJl、OBJo、およびOBJpで構成される。
プレイヤがコントローラ7を用いて指し示した画面座標系の入力座標が何れかのグループG0〜G3を示す領域内であるとき、当該指し示された領域を含むグループが他のグループと区別してモニタ2に表現される。例えば、図13に示すように、プレイヤがコントローラ7を用いて指し示した画面座標系の入力座標がグループG0を示す領域内であるとき、グループG0のみ強調表示(図13で示す斜線領域)される。これによって、プレイヤは、自分自身が把持するコントローラ7で指し示しているグループ、すなわちプレイヤが選択しているグループ(以下、選択グループGと記載することがある)を知ることができる。強調表示の例としては、選択グループGが示す領域内の色を変化させる、選択グループGが示す領域枠を表示する、選択グループGに属するキーオブジェクト(図13に示すキーオブジェクトOBJa、OBJb、OBJe、およびOBJf)の配置位置を移動させたり大きさを拡大したり色を変化させたりする、選択グループGに属するキーオブジェクトにマーキングする、選択グループGに属するキーオブジェクトに記述されたキー文字を拡大したり太字にしたり色を変えたりする等の様々な表現方法があるが、本発明で行う強調表示は何れの表現方法でもかまわない。
また、本実施例では、選択グループGに属するキーオブジェクトとコントローラ7に設けられた操作部との関係をプレイヤが認識できるような表示も行われる。ここで述べている操作部とは、プレイヤがそれらの頭部を押下することによってそれぞれに割り当てられた操作信号を出力するコントローラ7のキーやボタンを示している。具体的には、上記操作部は、十字キー72a(方向指示キーの一例)や操作ボタン72b〜72gである(図3、図4参照)。そして、プレイヤがコントローラ7の操作部を操作することによって、その操作に対応する1つのキーオブジェクトが選択され、選択されたキーオブジェクトに記述されたキー文字が入力として決定される。
図14および図15は、選択グループGに属するキーオブジェクトとコントローラ7に設けられた十字キー72aとの関係をプレイヤに認識させる表示例である。図14において、選択グループG0に属するキーオブジェクトOBJa、OBJb、OBJe、およびOBJfを十字キー72aの上下左右方向を模した位置へそれぞれ移動させることによって、各オブジェクトと十字キー72aとの関係を表示している。図13と図14とを比較すれば明らかなように、キーオブジェクトOBJa、OBJb、OBJe、およびOBJfは、それぞれ上下左右方向に移動している。これによって、十字キー72aが有する90°間隔で形成された4つの突出片とキーオブジェクトOBJa、OBJb、OBJe、およびOBJfとの対応関係が認識できる。具体的には、キーオブジェクトOBJaは、グループG0の中で最も上方向に移動するため、上方向を示す十字キー72aの突出片に対応していることがわかる。キーオブジェクトOBJbは、グループG0の中で最も右方向に移動するため、右方向を示す十字キー72aの突出片に対応していることがわかる。キーオブジェクトOBJeは、グループG0の中で最も左方向に移動するため、左方向を示す十字キー72aの突出片に対応していることがわかる。そして、キーオブジェクトOBJfは、グループG0の中で最も下方向に移動するため、下方向を示す十字キー72aの突出片に対応していることがわかる。
図15において、選択グループG0に属するキーオブジェクトOBJa、OBJb、OBJe、およびOBJfに、それぞれ十字キー72aの上下左右方向の何れかが認識可能な矢印マークAu、Ad、Al、およびArを付与することによって、各オブジェクトと十字キー72aとの関係を表示している。これによって、十字キー72aが有する90°間隔で形成された4つの突出片とキーオブジェクトOBJa、OBJb、OBJe、およびOBJfとの対応関係が認識できる。具体的には、キーオブジェクトOBJaには上方向を示す矢印マークAuが付与されて表示されるため、上方向を示す十字キー72aの突出片に対応していることがわかる。キーオブジェクトOBJbには右方向を示す矢印マークArが付与されて表示されるため、右方向を示す十字キー72aの突出片に対応していることがわかる。キーオブジェクトOBJeには左方向を示す矢印マークAlが付与されて表示されるため、左方向を示す十字キー72aの突出片に対応していることがわかる。そして、キーオブジェクトOBJfには下方向を示す矢印マークAdが付与されて表示されるため、下方向を示す十字キー72aの突出片に対応していることがわかる。
図16および図17は、選択グループGに属するキーオブジェクトとコントローラ7に設けられた複数の操作ボタン72b〜72gとの関係をプレイヤに認識させる表示例である。一般的に、ゲームコントローラには、Aボタン、Bボタン、Xボタン、およびYボタン等の機能や、丸印(○)、ばつ印(×)、三角印(△)、および四角印(□)等の記号が割り当てられている。例えば、コントローラ7の操作ボタン72b〜72dにはXボタン、Yボタン、およびBボタンとしての機能が割り当てられ、操作ボタン72iにはAボタンとしての機能が割り当てられている。図16において、選択グループG0に属するキーオブジェクトOBJa、OBJb、OBJe、およびOBJfに、それぞれAボタン、Bボタン、Xボタン、およびYボタンの何れかが認識可能なボタンマークBa、Bb、Bx、およびByを付与することによって、各オブジェクトと操作ボタン72b〜72gとの関係を表示している。これによって、操作ボタン72b〜72gとキーオブジェクトOBJa、OBJb、OBJe、およびOBJfとの対応関係が認識できる。具体的には、キーオブジェクトOBJaにはXボタンを示すボタンマークBxが付与されて表示されるため、Xボタンの機能が割り当てられた操作ボタン72bに対応していることがわかる。キーオブジェクトOBJbにはAボタンを示すボタンマークBaが付与されて表示されるため、Aボタンの機能が割り当てられた操作ボタン72iに対応していることがわかる。キーオブジェクトOBJeにはYボタンを示すボタンマークByが付与されて表示されるため、Yボタンの機能が割り当てられた操作ボタン72cに対応していることがわかる。そして、キーオブジェクトOBJfにはBボタンを示すボタンマークBbが付与されて表示されるため、Bボタンの機能が割り当てられた操作ボタン72dに対応していることがわかる。
図17において、選択グループG0に属するキーオブジェクトOBJa、OBJb、OBJe、およびOBJfに、それぞれ丸印ボタン、ばつ印ボタン、三角印ボタン、および四角印ボタンの何れかが認識可能なボタンマークBr、Bc、Bt、およびBsを付与することによって、各オブジェクトと操作ボタンとの関係を表示している。これによって、操作ボタンとキーオブジェクトOBJa、OBJb、OBJe、およびOBJfとの対応関係が認識できる。具体的には、キーオブジェクトOBJaには三角印ボタンを示すボタンマークBtが付与されて表示されるため、三角印ボタンの機能が割り当てられた操作ボタンに対応していることがわかる。キーオブジェクトOBJbには丸印ボタンを示すボタンマークBrが付与されて表示されるため、丸印ボタンの機能が割り当てられた操作ボタンに対応していることがわかる。キーオブジェクトOBJeには四角印ボタンを示すボタンマークBsが付与されて表示されるため、四角印ボタンの機能が割り当てられた操作ボタンに対応していることがわかる。そして、キーオブジェクトOBJfにはばつ印ボタンを示すボタンマークBcが付与されて表示されるため、ばつ印ボタンの機能が割り当てられた操作ボタンに対応していることがわかる。
図18および図19は、16個のキーオブジェクトOBJa〜OBJpを操作部の形状に依存して表示することによって、キーオブジェクトとコントローラ7に設けられた操作部との関係をプレイヤが認識できるような表示を行う一例である。図18および図19において、16個のキーオブジェクトOBJa〜OBJpにそれぞれ記述されたキー文字、4×4に配列する配列順、および各キーオブジェクトOBJa〜OBJpが分類される4つのグループG0〜G3については、図11および図12と同様であるため、詳細な説明を省略する。図18で示す表示形態で図11と異なるのは、キーオブジェクトOBJa〜OBJpの形状によって、予めキーオブジェクトOBJa〜OBJpと十字キー72aが有する90°間隔で形成された4つの突出片との対応が認識可能であるところにある。
具体的には、キーオブジェクトOBJa、OBJc、OBJi、およびOBJkは、上方向を示す十字キー72aの突出片を模した図形(例えば、上方向が狭くなった多角形等の図形)で記述されたキー文字を囲んで表示する。キーオブジェクトOBJb、OBJd、OBJj、およびOBJlは、右方向を示す十字キー72aの突出片を模した図形(例えば、右方向が狭くなった多角形等の図形)で記述されたキー文字を囲んで表示する。キーオブジェクトOBJe、OBJg、OBJm、およびOBJoは、左方向を示す十字キー72aの突出片を模した図形(例えば、左方向が狭くなった多角形等の図形)で記述されたキー文字を囲んで表示する。そして、キーオブジェクトOBJf、OBJh、OBJn、およびOBJpは、下方向を示す十字キー72aの突出片を模した図形(例えば、下方向が狭くなった多角形等の図形)で記述されたキー文字を囲んで表示する。
そして、プレイヤがコントローラ7を用いて指し示した画面座標系の入力座標が何れかのグループG0〜G3を示す領域内であるとき、図13と同様に当該指し示された領域を含むグループが他のグループと区別してモニタ2に表現される。例えば、図20に示すように、プレイヤがコントローラ7を用いて指し示した画面座標系の入力座標がグループG0を示す領域内であるとき、グループG0のみ強調表示(図20で示す斜線領域)される。これによって、プレイヤは、自分自身が把持するコントローラ7で指し示している選択グループGを知ることができる。なお、強調表示の例については、図13を用いて説明した例と同様であるため、ここでは詳細な説明を省略する。
ここで、図20から明らかなように、グループG0が強調表示されると、4つのキーオブジェクトOBJa、OBJb、OBJe、およびOBJfが他のキーオブジェクトと区別して表示される。そして、キーオブジェクトOBJaが上方向、キーオブジェクトOBJbが右方向、キーオブジェクトOBJeが左方向、キーオブジェクトOBJfが下方向をそれぞれ示す十字キー72aの突出片を模した図形で表示される。これらは、他のグループG1〜G3が選択された場合も同様に、他のキーオブジェクトが区別されて表示される。つまり、何れかのグループG0〜G3を選択した時点で、十字キー72aの操作方向に応じて1つのキー文字を入力できることをプレイヤが認識できる。
このように、キーオブジェクトOBJを操作部の形状を模した図形でそれぞれ表現することによって、何れかのグループG0〜G3が選択された時点で1つのキーオブジェクトOBJと操作部との対応を示すことができるが、選択中のキーオブジェクトOBJを移動させることによって、さらに操作方向がわかりやすいようにプレイヤに示してもかまわない。図21は、図20の表示態様に対して、選択された4つのキーオブジェクトOBJa、OBJb、OBJe、およびOBJfが移動する表示を追加した一例である。図21に示すように、キーオブジェクトOBJaが最も上方向に、キーオブジェクトOBJbが最も右方向に、キーオブジェクトOBJeが最も左方向に、キーオブジェクトOBJfが最も下方向に、それぞれグループG0内で移動している。これによって、上下左右方向を示す十字キー72aの突出片とキーオブジェクトOBJa、OBJb、OBJe、およびOBJfとの対応がさらに明確に表示することができる。
次に、ゲームシステム1において行われるゲーム処理の詳細を説明する。まず、図22〜図24を参照して、ゲーム処理において用いられる主なデータについて説明する。なお、図22は、ゲーム装置3のメインメモリ33に記憶される主なデータを示す図である。図23は、キー文字とキー番号との関係を示した図である。図24は、キーボードテーブルの一例を示す図である。
図22に示すように、メインメモリ33には、操作情報Da、キーボード情報Db、および画像情報Dc等が記憶される。なお、メインメモリ33には、図22に示す情報に含まれるデータの他、処理に必要な様々なデータが記憶されるが、ここでは詳細な説明を省略する。
操作情報Daは、コントローラ7から送信データとして送信されてくる一連の操作情報であり、最新の操作情報に更新される。操作情報Daには、上述の処理結果データに相当する第1座標データDa1および第2座標データDa2が含まれる。第1座標データDa1は、撮像素子743が撮像した撮像画像に対して、2つのマーカ8Lおよび8Rのうちの一方の画像の位置(撮像画像内における位置)を表す座標のデータである。第2座標データDa2は、他方のマーカの画像の位置(撮像画像内における位置)を表す座標のデータである。例えば、マーカの画像の位置は、撮像画像におけるXY座標系によって表される。
また、操作情報Daには、撮像画像から得られる処理結果データの一例の座標データ(第1座標データDa1および第2座標データDa2)の他、操作部72から得られる操作部データDa3等が含まれる。なお、ゲーム装置3に備える受信ユニット6は、コントローラ7から所定間隔例えば5msごとに送信される操作情報Daを受信し、受信ユニット6に備える図示しないバッファに蓄えられる。その後、ゲーム処理間隔である例えば1フレーム毎(1/60秒)に読み出され、その最新の情報がメインメモリ33に記憶される。
キーボード情報Dbは、プレイヤが文字入力等に用いるソフトウエアキーボードを定義する情報や、プレイヤが選択したキー文字を算出するための情報である。キーボード情報Dbは、画面座標データDb1、キーボードテーブルDb2、選択グループ番号データDb3、コントローラ操作番号データDb4、およびキー番号データDb5等を含んでいる。画面座標データDb1は、第1座標データDa1および第2座標データDa2に基づいて得られるモニタ2の画面座標系に基づいた入力座標を示すデータである。キーボードテーブルDb2は、ソフトウエアキーボードに定義される各データを示すデータテーブルである。選択グループ番号データDb3は、コントローラ7を用いて選択された選択グループGを示すデータである。コントローラ操作番号データDb4は、コントローラ7で操作された操作部を示すデータである。キー番号データDb5は、プレイヤによって決定されたキー入力を示すデータである。
画像情報Dcは、キーオブジェクト画像データDc1および操作部画像データDc2等を含み、キーオブジェクトOBJやボタン画像B等を配置してモニタ2に表示するための画像を生成するためのデータである。
図23を参照して、キー文字とキー番号knとの関係について説明する。図23において、キー文字「A」〜「P」には、それぞれキー番号kn=0〜15が順番に割り振られている。つまり、キー番号knが決定されれば、キー文字が一意に1文字決定することができる。
図24を参照して、キーボードテーブルDb2について説明する。図24において、キーボードテーブルDb2は、アドレス番号tb、キー番号kn、キー文字、グループ番号gn、およびコントローラ操作ボタン番号cnが互いに関連付けられて記述されている。キー番号knおよびキー文字は、上述したように割り振られてキーボードテーブルDb2に記述され、キー文字A〜Pの順でアドレス番号0〜15に記述される。グループ番号gnは、各キー文字(キー番号kn)が属するグループGを示すデータである。例えば、上述したように4つのグループG0〜G3に分類される場合、各グループG0〜G3をグループ番号gn=0〜3にそれぞれ対応させてキーボードテーブルDb2に記述する。コントローラ操作番号cnは、キー文字(キー番号kn)にそれぞれ対応する操作部を示すデータである。例えば、十字キー72aが有する90°間隔で形成された4つの突出片の何れかに対応させる場合、上方向をコントローラ操作番号cn=0、右方向をコントローラ操作番号cn=1、左方向をコントローラ操作番号cn=2、下方向をコントローラ操作番号cn=3にそれぞれ対応させてキーボードテーブルDb2に記述する。したがって、キーボードテーブルDb2を参照することによって、各キー文字のキー番号、所属グループ、および対応する操作部が明らかとなる。例えば、アドレス番号tb=0、キー番号kn=0、キー文字「A」、グループ番号gn=0、およびコントローラ操作番号cn=0が対応してキーボードテーブルDb2に記述されているため、アドレス番号0に記述されたキー文字「A」は、キー番号kn=0に割り振られ、グループG0に属し、十字キー72aの上方向の突出片に対応していることがわかる。なお、各グループG0〜G3の表示範囲を示すデータもキーボードテーブルDb2に記述してもよい。
次に、図25を参照して、ゲーム装置3において行われる処理の詳細を説明する。なお、図25は、ゲーム装置3において実行される処理の流れを示すフローチャートである。なお、図25に示すフローチャートにおいては、処理のうち、ゲームプログラムに含まれる対象選択プログラムを実行して行われる1つのキー番号を取得する処理(対象選択処理)について説明し、本願発明と直接関連しない他の処理については詳細な説明を省略する。また、図25では、CPU30が実行する各ステップを「S」と略称する。
ゲーム装置3の電源が投入されると、ゲーム装置3のCPU30は、図示しないブートROMに記憶されている起動プログラムを実行し、これによってメインメモリ33等の各ユニットが初期化される。そして、光ディスク4に記憶されたゲームプログラム(対象選択プログラム)がメインメモリ33に読み込まれ、CPU30によって当該ゲームプログラムの実行が開始される。図25に示すフローチャートは、以上の処理が完了した後に行われる処理を示すフローチャートである。
図25において、CPU30は、モニタ2に上述したようにグループ化された複数の選択対象(例えば、キーオブジェクトOBJa〜OBJp)を表示する処理を行い(ステップ50)、処理を次のステップに進める。選択対象表示処理は、プレイヤに選択を促す選択対象をモニタ2に表示する処理であり、例えば、図11、図12、図18、および図19を用いて説明したような表示がモニタ2に表示される。
次に、CPU30は、コントローラ7から受信した操作情報を取得する(ステップ51)。そして、CPU30は、操作情報を操作情報Daとしてメインメモリ33に記憶して、処理を次のステップに進める。ここで、ステップ51で取得される操作情報には、マーカ8Lおよび8Rの撮像画像内における位置を示す座標データ(第1座標データDa1および第2座標データDa2)の他、コントローラ7の操作部72がどのように操作されたか示すデータ(操作部データDa3)が含まれている。ここでは、通信部75は、所定の時間間隔(例えば5ms間隔)で操作情報をゲーム装置3へ送信する。そして、CPU30は、1フレーム毎に操作情報を利用するものとする。したがって、図25に示すステップ51〜ステップ63の処理ループは、1フレーム毎に繰り返し実行される。
次に、CPU30は、上記ステップ51で取得した操作情報に基づいて、モニタ2の画面座標系に基づいた入力座標を算出する(ステップ52)。そして、CPU30は、算出した入力座標を画面座標データDb1としてメインメモリ33に記憶して、処理を次のステップに進める。具体的には、上記入力座標は、上記ステップ51で取得された第1座標データDa1および第2座標データDa2に基づいて算出される。上記入力座標を算出する処理の原理は、コントローラ7の移動による対象画像の位置の変化によって、指し示された2次元座標の所定の基準位置からの変位を算出して入力座標を設定するというものであって、上述した原理と同様であるため、ここでは詳細な説明を省略する。
次に、CPU30は、上記ステップ52で算出した入力座標から選択グループGを求め、当該選択グループGを示すグループ番号gnを取得する(ステップ53)。そして、CPU30は、取得したグループ番号gnを選択グループ番号データDb3としてメインメモリ33に記憶して、処理を次のステップに進める。例えば、CPU30は、上記入力座標と各グループG0〜G3の表示範囲とを用いて、当該入力座標が含まれる表示範囲を抽出する。そして、CPU30は、抽出された表示範囲を有するグループG0〜G3の何れかを選択グループGとして、選択グループGを示すグループ番号gnを取得する。
次に、CPU30は、上記ステップ53でグループ番号gnを取得できたか否かを判断する(ステップ54)。そして、CPU30は、グループ番号gnを取得できた場合、処理を次のステップ55に進める。一方、CPU30は、コントローラ7が各グループG0〜G3の表示範囲外を指し示しているとき等、グループ番号gnが取得できなかった場合、処理を次のステップ62に進める。
ステップ55において、CPU30は、グループ選択表示処理を行い、処理を次のステップに進める。グループ選択表示処理は、プレイヤがコントローラ7を用いて指し示した領域を含むグループが他のグループと区別してモニタ2に表示する処理である。例えば、グループG0が指し示されて選択された場合、図13〜図17、図20および図21を用いて説明したような表示がモニタ2に表示される。
次に、CPU30は、コントローラ操作番号データDb4に記述されたコントローラ操作番号cnをcn=0に初期化して(ステップ56)、処理を次のステップに進める。
次に、CPU30は、現在コントローラ操作番号データDb4に記述されているコントローラ操作番号cnに該当するコントローラ7の操作部が、押下されたか否かを判断する(ステップ57)。具体的には、CPU30は、操作部データDa3に記述されている操作部72からの操作信号を参照し、コントローラ操作番号cnに該当する操作部72が押下された操作信号を取得しているか否かを判断する。そして、CPU30は、コントローラ操作番号cnに該当する操作部72が押下されている場合、処理を次のステップ60に進める。一方、CPU30は、コントローラ操作番号cnに該当する操作部72が押下されていない場合、処理を次のステップ58に進める。
ステップ58において、CPU30は、全てのコントローラ操作番号cnに対応する操作部72の操作について確認が終わったか否かを判断する。ここで、全てのコントローラ操作番号cnとは、キーボードテーブルDb2に記述された全てのコントローラ操作番号cnを示しており、図24に示した例ではコントローラ操作番号cn=0〜3に相当する。そして、CPU30は、全てのコントローラ操作番号cnについて確認が終わった場合、処理を次のステップ62に進める。一方、CPU30は、全てのコントローラ操作番号cnについて確認が終わっていない場合、コントローラ操作番号データDb4に記述されたコントローラ操作番号cnに1を加算して(ステップ59)、上記ステップ57に戻って処理を繰り返す。
ステップ60において、CPU30は、キー選択表示処理を行い、処理を次のステップに進める。キー選択表示処理は、プレイヤがコントローラ7の操作部72を用いて決定したキー文字が記述されたキーオブジェクトOBJ(以下、選択キーオブジェクトOBJと記載することがある)を他のキーオブジェクトOBJと区別してモニタ2に表示する処理である。例えば、ステップ60では、選択キーオブジェクトOBJのみ強調表示される。これによって、プレイヤは、自分自身が把持するコントローラ7の操作部72を操作することによって決定した入力キーを知ることができる。強調表示の例としては、選択キーオブジェクトOBJの色を変化させる、選択キーオブジェクトOBJの配置位置を移動させたり拡大したりする、選択キーオブジェクトOBJにマーキングする、選択キーオブジェクトOBJに記述されたキー文字を拡大したり太字にしたり色を変えたりする等の様々な表現方法があるが、本発明で行う強調表示は何れの表現方法でもかまわない。
次に、CPU30は、キーボードテーブルDb2を参照して、選択グループ番号データDb3に記述されたグループ番号gnに含まれ、かつ、コントローラ操作番号データDb4に記述されたコントローラ操作番号cnに応じたキー番号knを取得する(ステップ61)。そして、CPU30は、取得したキー番号knをキー番号データDb5としてメインメモリ33に記憶して、処理を次のステップ63に進める。図24で示したキーボードテーブルDb2から明らかなように、グループ番号gnおよびコントローラ操作番号cnが決まれば、それらに対応するアドレス番号tbやキー番号knが一意に決まる。具体的には、
kn=tb[gn×4+cn]
の数式をそれぞれ用いて算出されたアドレス番号tbに記述されたキー番号knを取得することもできる。例えば、グループ番号gn=0およびコントローラ操作番号cn=2に対応して、アドレス番号tb=2が算出されてキー番号kn=4が得られる。
また、図23を用いて説明したキー文字とキー番号knとの関係から明らかなように、キー番号knが決定されればキー文字を一意に1文字決定することができる。したがって、CPU30は、決定されたキー番号knに基づいて、当該キー番号knに応じたキー文字を入力文字として確定することもできる。
一方、上記ステップ53でグループ番号gnが取得できなかったとき(ステップ54でNo)、または全てのコントローラ操作番号cnに対応する操作部72が何れも押下されていないとき(ステップ58でYes)、CPU30は、キー未選択として(ステップ62)、処理を次のステップ63に進める。
ステップ63において、CPU30は、処理を終了するか否かを判断する。そして、CPU30は、処理を継続する場合に上記ステップ51に戻って処理を繰り返し、処理を終了する場合に当該フローチャートによる処理を終了する。
なお、上述した説明では、16個のキーオブジェクトOBJa〜OBJpに対して、4つのキーオブジェクトを1グループとするグループに分類する例を用いたが、他の個数を1グループとして分類してもかまわない。例えば、マウスを用いて操作するとき、マウスは左右ボタンが設けられているので、操作ボタンと対応した分類をするためには2つのキーオブジェクトを1グループとするグループに分類する方がプレイヤにとってわかりやすい。
図26は、16個のキーオブジェクトOBJa〜OBJpを、1×2となる2つのオブジェクトをそれぞれ1グループとする8つのグループG0〜G7に分類した一例である。具体的には、グループG0がキーオブジェクトOBJaおよびOBJb、グループG1がキーオブジェクトOBJcおよびOBJd、グループG2がキーオブジェクトOBJeおよびOBJf、グループG3がキーオブジェクトOBJgおよびOBJh、グループG4がキーオブジェクトOBJiおよびOBJj、グループG5がキーオブジェクトOBJkおよびOBJl、グループG6がキーオブジェクトOBJmおよびOBJn、グループG7がキーオブジェクトOBJoおよびOBJpでそれぞれ構成される。そして、プレイヤがコントローラ7を用いて指し示した画面座標系の入力座標が何れかのグループG0〜G7を示す領域内であるとき、図13と同様に当該指し示された領域を含むグループが他のグループと区別してモニタ2に表現される。例えば、図26に示すように、プレイヤがコントローラ7を用いて指し示した画面座標系の入力座標がグループG0を示す領域内であるとき、グループG0のみ強調表示(図26で示す斜線領域)される。これによって、プレイヤは、自分自身が把持するコントローラ7で指し示している選択グループGを知ることができる。
ここで、図26から明らかなように、グループG0が強調表示されると、2つのキーオブジェクトOBJaおよびOBJbが他のキーオブジェクトと区別して表示される。そして、マウスを用いて操作するとき、2つのキーオブジェクトOBJaおよびOBJbがそれぞれマウスの左右ボタンに対応することは認識しやすい。これらは、他のグループG1〜G7が選択された場合も同様に、他のキーオブジェクトが区別されて表示される。つまり、何れかのグループG0〜G7を選択した時点で、マウスの左右ボタンに応じて1つのキー文字を入力できることをプレイヤが認識できる。
また、上述した説明では、プレイヤがモニタ2に表示される複数のオブジェクト(具体的にはキーオブジェクト)から1つのオブジェクトを選択する、すなわちオブジェクトを選択対象とする例を用いたが、他の表示物を選択対象としてもかまわない。図27は、表示されたキー文字Wを選択対象とする際にモニタ2に表示される表示例を示す図である。図28は、コントローラ7で図27のオブジェクトOBJg0が指し示されたときにモニタ2に表示される表示例を示す図である。
図27において、16個の文字Wa〜Wpを4×4に配列されている。ここで、キー文字Wa〜Wpは、2×2の4つのキー文字Wをそれぞれ1グループとする4つのグループに分類されている。そして、それぞれのグループに属するキー文字Wは、2×2に配列されたグループキーオブジェクトOBJg0〜OBJg3内に記述される。これらのグループキーオブジェクトOBJg0〜OBJg3を配列して、その内部に複数のキー文字Wが配列された仮想的なキーボード(ソフトウエアキーボード)がモニタ2に表示される。例えば、プレイヤがコントローラ7を用いて何れかのグループキーオブジェクトOBJg0〜OBJg3を選択した後、その内部の何れかのキー文字Wを選択することによって、選択されたキー文字Wを入力することが可能となる。
具体的には、キー文字Waにはキー文字「A」が、キー文字Wbにはキー文字「B」が、キー文字Wcにはキー文字「C」が、キー文字Wdにはキー文字「D」が、キー文字Weにはキー文字「E」が、キー文字Wfにはキー文字「F」が、キー文字Wgにはキー文字「G」が、キー文字Whにはキー文字「H」が、キー文字Wiにはキー文字「I」が、キー文字Wjにはキー文字「J」が、キー文字Wkにはキー文字「K」が、キー文字Wlにはキー文字「L」が、キー文字Wmにはキー文字「M」が、キー文字Wnにはキー文字「N」が、キー文字Woはキー文字「O」が、キー文字Wpにはキー文字「P」が、それぞれ記述されている。そして、グループキーオブジェクトOBJg0は、4つのキー文字Wa、Wb、We、およびWfが記述される。グループキーオブジェクトOBJg1は、4つのキー文字Wc、Wd、Wg、およびWhが記述される。グループキーオブジェクトOBJg2は、4つのキー文字Wi、Wj、Wm、およびWnが記述される。グループキーオブジェクトOBJg3は、4つのキー文字Wk、Wl、Wo、およびWpが記述される。つまり、グループキーオブジェクトOBJg0〜OBJg3は、選択対象であるキー文字Wがそれぞれ属しているグループを表示している。
プレイヤがコントローラ7を用いて指し示した画面座標系の入力座標が何れかのグループキーオブジェクトOBJg0〜OBJg3を示す領域内であるとき、当該指し示されたグループキーオブジェクトが他のグループキーオブジェクトと区別してモニタ2に表現される。例えば、図28に示すように、プレイヤがコントローラ7を用いて指し示した画面座標系の入力座標がグループキーオブジェクトOBJg0を示す領域内であるとき、グループキーオブジェクトOBJg0のみ強調表示(図28で示す斜線領域)される。これによって、プレイヤは、自分自身が把持するコントローラ7で指し示しているグループキーオブジェクト、すなわちプレイヤが選択しているグループキーオブジェクト(以下、選択グループキーオブジェクトOBJgと記載することがある)を知ることができる。強調表示の例としては、選択グループキーオブジェクトOBJgの内部や外枠の色を変化させる、選択グループキーオブジェクトOBJgに属するキー文字W(図28に示すキー文字Wa、Wb、We、およびWf)の配置位置を移動させたり大きさを拡大したり太字にしたり色を変化させたりする、選択グループキーオブジェクトOBJgにマーキングする等の様々な表現方法があるが、本発明で行う強調表示は何れの表現方法でもかまわない。
また、選択グループキーオブジェクトOBJGに属するキーオブジェクトとコントローラ7に設けられた操作部との関係をプレイヤが認識できるような表示も行われる。そして、プレイヤがコントローラ7の操作部を操作することによって、その操作に対応する1つのキー文字Wが選択され、選択されたキー文字Wが入力として決定される。
図28において、選択グループキーオブジェクトOBJg0に属するキー文字Wa、Wb、We、およびWfを十字キー72aの上下左右方向を模した位置へそれぞれ移動させることによって、各オブジェクトと十字キー72aとの関係を表示している。図27と図28とを比較すれば明らかなように、キー文字Wa、Wb、We、およびWfは、それぞれ上下左右方向に移動している。これによって、十字キー72aが有する90°間隔で形成された4つの突出片とキー文字Wa、Wb、We、およびWfとの対応関係が認識できる。具体的には、キー文字Waは、グループキーオブジェクトOBJg0の中で最も上方向に移動するため、上方向を示す十字キー72aの突出片に対応していることがわかる。キー文字Wbは、グループキーオブジェクトOBJg0の中で最も右方向に移動するため、右方向を示す十字キー72aの突出片に対応していることがわかる。キー文字Weは、グループキーオブジェクトOBJg0の中で最も左方向に移動するため、左方向を示す十字キー72aの突出片に対応していることがわかる。そして、キー文字Wfは、グループキーオブジェクトOBJg0の中で最も下方向に移動するため、下方向を示す十字キー72aの突出片に対応していることがわかる。
また、上述した説明では、選択対象が属するグループを選択するポインティングデバイスとして、コントローラ7やマウスを一例として用いたが、他のポインティングデバイスを用いてもかまわない。図29を参照して、ポインティングデバイスとしてタッチパネルを用いて本発明を実現する例を説明する。なお、図29は、本発明の対象選択プログラムを含むゲームプログラムを実行する携帯ゲーム装置10の外観図である。
図29において、携帯ゲーム装置10は、第1のLCD(Liquid Crystal Display:液晶表示装置)11および第2のLCD12を含む。ハウジング13は、上側ハウジング13aと下側ハウジング13bとによって構成されており、第1のLCD11は上側ハウジング13aに収納され、第2のLCD12は下側ハウジング13bに収納される。また、携帯ゲーム装置10には、メモリカードが装着される。メモリカードは、ゲームプログラム等を記録した記録媒体であり、下部ハウジング13bに設けられた挿入口(図示せず)に着脱自在に装着される。
下側ハウジング13bには、入力装置として、十字スイッチ、スタートスイッチ、セレクトスイッチ、Aボタン、Bボタン、Xボタン、Yボタン、電源スイッチ、Lボタン、およびRボタン等の入力装置を含む操作部14が設けられている。また、さらなる入力装置として、第2のLCD12の画面上にタッチパネル15が装着されている。
タッチパネル15としては、例えば抵抗膜方式や光学式(赤外線方式)や静電容量結合式等、任意の方式のものを利用することができる。タッチパネル15は、その表面を触れると、その接触位置に対応する座標データを出力する機能を有するポインティングデバイスの一例である。
第2のLCD12には、図11と同様に16個のキーオブジェクトを4×4に配列することによって、複数のキーが配列された仮想的なキーボード(ソフトウエアキーボード)が表示される。そして、16個のキーオブジェクトは、図12と同様に2×2の4つのオブジェクトをそれぞれ1グループとする4つのグループに分類されている。
プレイヤがタッチパネル15をタッチ操作したとき、タッチ操作されたタッチパネル座標系の入力座標が第2のLCD12の画面座標系の入力座標に座標変換される。そして、画面座標系の入力座標が何れかのグループを示す領域内であるとき、当該領域を含むグループが他のグループと区別して第2のLCD12に表現される。図29の例では、文字「A」、「B」、「E」、および「F」が記述されたキーオブジェクトで構成されるグループが強調表示されている。
また、選択されたグループに属するキーオブジェクトと下側ハウジング13bに設けられた操作部14との関係をプレイヤが認識できるような表示は、例えば第1のLCD11に表示される。例えば、第1のLCD11には、対応する操作部14(図29の例では十字キー)を模して拡大した図形が描かれる。そして、選択されたグループに属するキーオブジェクトに記述されたそれぞれの文字を第1のLCD11に表示された図形に付与されて表示することによって、各キーオブジェクトと操作部14との関係を表示している。図29の例では、十字キーと選択された4つのキーオブジェクトとの関係を示している。これによって、十字キーが有する90°間隔で形成された4つの突出片とキーオブジェクトとの対応関係が認識できる。具体的には、キー文字「A」が模した図形に対して上方向を示す突出片上に付与されて表示されるため、キー文字「A」が記述されたキーオブジェクトが上方向を示す十字キーの突出片に対応していることがわかる。また、キー文字「B」が模した図形に対して右方向を示す突出片上に付与されて表示されるため、キー文字「B」が記述されたキーオブジェクトが右方向を示す十字キーの突出片に対応していることがわかる。キー文字「E」が模した図形に対して左方向を示す突出片上に付与されて表示されるため、キー文字「E」が記述されたキーオブジェクトが左方向を示す十字キーの突出片に対応していることがわかる。そして、キー文字「F」が模した図形に対して下方向を示す突出片上に付与されて表示されるため、キー文字「F」が記述されたキーオブジェクトが下方向を示す十字キーの突出片に対応していることがわかる。
このように、本実施形態における対象選択装置によれば、複数の選択対象(キーオブジェクトやキー文字等)を所定の条件でグループ化し、グループ化したものをポインティングデバイスで選択する。そして、選択したグループ内の選択対象を入力キーや入力ボタン等の操作部に対応付けて、該当する操作部を操作することにより所望の選択対象を選択することができる。したがって、ポインティングデバイスでは個々の選択対象が選択困難な場面でも、複数の選択対象をグループ化することで比較的大きな選択対象となるため、相対的に大きな選択領域を有する選択対象群の選択が容易となる。また、グループ化された選択対象群が表示されてポインティングデバイスを用いて直接的に選択できるため、グループを選択する操作が直感的でユーザにとってわかりやすい。さらに、ポインティングデバイスでグループの何れか選択しつつ、当該グループに含まれる個々の選択対象を操作部で選択するため、効率的に所望の選択対象を選択することができる。その際、1つの選択対象を選択するために操作すべき操作部がユーザに示されるため、選択対象を選択するための操作を明確に示すことができる。また、グループ化された複数の選択対象群をポインティングデバイスで選択可能な程度にまで縮小できるため、個々の選択対象単位ではポインティングデバイスでの選択が困難なサイズでも表示が可能となり、選択対象を表示する領域を効率よく利用することができる。
なお、撮像素子743で撮像した画像データを解析してマーカ8Lおよび8Rからの赤外光の位置座標やそれらの重心座標等を取得し、それらを処理結果データとしてコントローラ7内で生成してゲーム装置3へ送信する態様を説明したが、他の処理段階のデータをコントローラ7からゲーム装置3へ送信してもかまわない。例えば、撮像素子743が撮像した画像データをコントローラ7からゲーム装置3へ送信し、CPU30において上記解析処理を行って処理結果データを取得してもかまわない。この場合、コントローラ7に設けられた画像処理回路744が不要となる。また、上記画像データの解析途中のデータをコントローラ7からゲーム装置3へ送信してもかまわない。例えば、画像データから得られる輝度、位置、および面積等を示すデータをコントローラ7からゲーム装置3へ送信し、CPU30において残りの解析処理を行って処理結果データを取得してもかまわない。
また、上述した説明では、コントローラ7とゲーム装置3とが無線通信によって接続された態様を用いたが、コントローラ7とゲーム装置3とがケーブルを介して電気的に接続されてもかまわない。この場合、コントローラ7に接続されたケーブルをゲーム装置3の接続端子に接続する。
また、コントローラ7から無線送信される送信データを受信する受信手段として、ゲーム装置3の接続端子に接続された受信ユニット6を用いて説明したが、ゲーム装置3の本体内部に設けられた受信モジュールによって当該受信手段を構成してもかまわない。この場合、受信モジュールが受信した送信データは、所定のバスを介してCPU30に出力される。
また、上述した説明では、2つのマーカ8Lおよび8Rからの赤外光を、コントローラ7の撮像情報演算部74の撮像対象としたが、他のものを撮像対象にしてもかまわない。例えば、1つまたは3つ以上のマーカをモニタ2の近傍に設置し、それらのマーカからの赤外光を撮像情報演算部74の撮像対象としてもかまわない。例えば、所定の長さを有する1つのマーカをモニタ2の近傍に設置し、当該長さの両端位置を利用すれば本発明を同様に実現することができる。また、モニタ2の表示画面自体や他の発光体(室内灯等)を撮像情報演算部74の撮像対象としてもかまわない。撮像対象とモニタ2の表示画面との配置関係に基づいて、当該表示画面に対するコントローラ7の位置を演算すれば、様々な発光体を撮像情報演算部74の撮像対象として用いることができる。
また、上述したコントローラ7の形状や、それらに設けられている操作部72の形状、数、および設置位置等は、単なる一例に過ぎず他の形状、数、および設置位置であっても、本発明を実現できることは言うまでもない。また、コントローラ7における撮像情報演算部74の位置(撮像情報演算部74の光入射口)は、ハウジング71の前面でなくてもよく、ハウジング71の外部から光を取り入れることができれば他の面に設けられてもかまわない。
また、上記実施例では、ゲーム装置3をコントローラ7で操作したり、携帯ゲーム装置10にタッチパネル15を一体的に設けたりしているが、ポインティングデバイスを入力手段の1つとする一般的なパーソナルコンピュータなどの情報処理装置でもかまわない。この場合、この情報処理装置のコンピュータが実行するプログラムは、典型的にゲームに用いられるゲームプログラムに限らず、上述した方式で選択された選択対象が上記情報処理装置に対する処理に用いられる汎用的なプログラムである。
本発明に係る対象選択プログラムおよび対象選択装置は、表示された複数の選択対象から効率よく1つの選択対象を選択することができ、ポインティングデバイス等を用いて選択する処理を行うプログラムや装置として有用である。
本発明の一実施形態に係るゲームシステム1を説明するための外観図 図1のゲーム装置3の機能ブロック図 図3のコントローラ7の上面後方から見た斜視図 図3のコントローラ7を下面後方から見た斜視図 図3のコントローラ7の上筐体を外した状態を示す斜視図 図3のコントローラ7の構成を示すブロック図 図3のコントローラ7を用いてゲーム操作するときの状態を概説する図解図 プレイヤがコントローラ7を右手で把持した状態をコントローラ7の前面側から見た一例 プレイヤがコントローラ7を右手で把持した状態をコントローラ7の左側面側から見た一例 マーカ8Lおよび8Rと撮像情報演算部74との視野角を説明するための図 モニタ2に表示された複数のキーオブジェクトOBJa〜OBJpの一例を示す図 図11の複数のキーオブジェクトOBJa〜OBJpを4つのグループG0〜G3に分類した状態を説明するための図 コントローラ7で図12のグループG0が指し示されたときにモニタ2に表示される第1の表示例を示す図 コントローラ7で図12のグループG0が指し示されたときにモニタ2に表示される第2の表示例を示す図 コントローラ7で図12のグループG0が指し示されたときにモニタ2に表示される第3の表示例を示す図 コントローラ7で図12のグループG0が指し示されたときにモニタ2に表示される第4の表示例を示す図 コントローラ7で図12のグループG0が指し示されたときにモニタ2に表示される第5の表示例を示す図 モニタ2に表示された複数のキーオブジェクトOBJa〜OBJpの他の例を示す図 図18の複数のキーオブジェクトOBJa〜OBJpを4つのグループG0〜G3に分類した状態を説明するための図 コントローラ7で図19のグループG0が指し示されたときにモニタ2に表示される第1の表示例を示す図 コントローラ7で図19のグループG0が指し示されたときにモニタ2に表示される第2の表示例を示す図 ゲーム装置3のメインメモリ33に記憶される主なデータを示す図 キー文字とキー番号との関係を示した図 キーボードテーブルの一例を示す図 ゲーム装置3において実行される処理の流れを示すフローチャート 16個のキーオブジェクトOBJa〜OBJpを、1×2となる2つのオブジェクトをそれぞれ1グループとする8つのグループG0〜G7に分類した一例 表示されたキー文字Wを選択対象とする際にモニタ2に表示される表示例を示す図 コントローラ7で図27のオブジェクトOBJg0が指し示されたときにモニタ2に表示される表示例を示す図 本発明の対象選択プログラムを含むゲームプログラムを実行する携帯ゲーム装置10の外観図
符号の説明
1…ゲームシステム
2…モニタ
3…ゲーム装置
10…携帯ゲーム装置
11…第1のLCD
12…第2のLCD
13、71…ハウジング
14、72…操作部
15…タッチパネル
30…CPU
31…メモリコントローラ
32…GPU
33…メインメモリ
34…DSP
35…ARAM
36…コントローラI/F
37…ビデオI/F
38…外部メモリI/F
39…オーディオI/F
40…ディスクドライブ
41…ディスクI/F
4…光ディスク
5…外部メモリカード
6…受信ユニット
7…コントローラ
73…コネクタ
74…撮像情報演算部
741…赤外線フィルタ
742…レンズ
743…撮像素子
744…画像処理回路
75…通信部
751…マイコン
752…メモリ
753…無線モジュール
754…アンテナ
700…基板
701…加速度センサ
702…LED
703…水晶振動子
704…バイブレータ
705…電池
8…マーカ

Claims (17)

  1. プレイヤの操作に応じて所定の座標系に基づいた座標情報を出力するポインティングデバイスと、プレイヤの操作に応じて複数種類の操作信号のうち所定の操作信号を出力する入力デバイスとを用いて、表示画面に表示された複数の選択対象から1つの選択対象を選択させる処理を行う装置のコンピュータに実行させる対象選択プログラムであって、
    前記コンピュータに、
    前記表示画面に所定の条件でグループ化された複数の選択対象を表示する選択対象表示制御ステップ、
    前記ポインティングデバイスから出力された座標情報を取得する第1操作情報取得ステップ、
    前記第1操作情報取得ステップで取得した座標情報に基づいて、前記グループ化された複数の選択対象のグループから1つのグループを、当該1つのグループとは異なる他のグループの少なくとも一部が表示された状態で選択するグループ選択ステップ、
    前記入力デバイスから出力された操作信号を取得する第2操作情報取得ステップ、
    前記グループ選択ステップにおいて1つのグループが選択されてから前記他のグループの少なくとも一部が表示されている状態で前記第2操作情報取得ステップにおいて操作信号を取得した場合、当該操作信号に基づいて当該1つのグループに属する選択対象から1つの選択対象を選択する対象選択ステップ、および
    前記対象選択ステップで選択された選択対象に応じた処理を行う処理ステップを実行させ
    前記対象選択ステップでは、前記グループ選択ステップで選択したグループに属する選択対象から、前記第2操作情報取得ステップで取得した操作信号を出力した前記入力デバイスの入力部の形状、または設置位置を模した位置に表示された1つの選択対象が選択され、
    前記グループ選択ステップは、グループが選択されたとき、当該選択されたグループに属する選択対象を、それぞれ前記入力デバイスの入力部の形状、または設置位置を模した位置に変更して配置して前記表示画面に表示する選択対象表示位置変更制御ステップを含む、対象選択プログラム。
  2. プレイヤの操作に応じて所定の座標系に基づいた座標情報を出力するポインティングデバイスと、プレイヤの操作に応じて複数種類の操作信号のうち所定の操作信号を出力する入力デバイスとを用いて、表示画面に表示された複数の選択対象から1つの選択対象を選択させる処理を行う装置のコンピュータに実行させる対象選択プログラムであって、
    前記コンピュータに、
    前記表示画面に所定の条件でグループ化された複数の選択対象を表示する選択対象表示制御ステップ、
    前記ポインティングデバイスから出力された座標情報を取得する第1操作情報取得ステップ、
    前記第1操作情報取得ステップで取得した座標情報に基づいて、前記グループ化された複数の選択対象のグループから1つのグループを、当該1つのグループとは異なる他のグループの少なくとも一部が表示された状態で選択するグループ選択ステップ、
    前記入力デバイスから出力された操作信号を取得する第2操作情報取得ステップ、
    前記グループ選択ステップにおいて1つのグループが選択されてから前記他のグループの少なくとも一部が表示されている状態で前記第2操作情報取得ステップにおいて操作信号を取得した場合、当該操作信号に基づいて当該1つのグループに属する選択対象から1つの選択対象を選択する対象選択ステップ、および
    前記対象選択ステップで選択された選択対象に応じた処理を行う処理ステップを実行させ、
    前記グループ選択ステップは、グループが選択されたとき、前記入力デバイスの入力部それぞれに割り当てられた機能を示す標識を、当該選択されたグループに属する選択対象にそれぞれ付与して表示する標識表示追加制御ステップを含み、
    前記対象選択ステップでは、前記グループ選択ステップで選択したグループに属する選択対象から、前記第2操作情報取得ステップで取得した操作信号を出力した前記入力デバイスの入力部に割り当てられた機能を示す標識が付与されて表示された1つの選択対象が選択される、対象選択プログラム。
  3. 前記グループ選択ステップでは、前記ポインティングデバイスから出力された座標情報が前記表示画面に設定された画面座標系の座標に変換され、前記グループ化された複数の選択対象のグループから前記表示画面上の当該座標の位置に表示された1つのグループが選択される、請求項1または2に記載の対象選択プログラム。
  4. 前記グループ選択ステップは、グループが選択された場合、当該グループが選択された後も、当該選択されたグループとともに、当該選択されたグループとは異なる他のグループの少なくとも一部を前記表示画面に表示する表示制御ステップを含む、請求項1または2に記載の対象選択プログラム。
  5. 前記グループ選択ステップは、グループが選択されたとき、当該選択されたグループに属する選択対象を他の選択対象と区別して前記表示画面に表示する選択グループ表示制御ステップを含む、請求項1乃至4の何れか1つに記載の対象選択プログラム。
  6. 前記対象選択ステップは、選択対象が選択されたとき、当該選択された選択対象を他の選択対象と区別して前記表示画面に表示する対象表示制御ステップを含む、請求項1乃至の何れか1つに記載の対象選択プログラム。
  7. 前記対象選択プログラムは、前記複数の選択対象それぞれが属するグループおよび対応付けられる前記入力デバイスの入力部とを予め設定する設定ステップを、さらに前記コンピュータに実行させる、請求項1乃至の何れか1つに記載の対象選択プログラム。
  8. 前記対象選択プログラムは、前記複数の選択対象を所定数毎にグループ化してそれぞれの選択対象が属するグループを設定する設定ステップを、さらに前記コンピュータに実行させる、請求項1乃至の何れか1つに記載の対象選択プログラム。
  9. 前記対象選択プログラムは、前記複数の選択対象に対して互いに隣接して前記表示画面に表示される選択対象をグループ化してそれぞれの選択対象が属するグループを設定する設定ステップを、さらに前記コンピュータに実行させる、請求項1乃至の何れか1つに記載の対象選択プログラム。
  10. 前記選択対象は、文字がそれぞれ記述されて前記表示画面に表示されるオブジェクトであり、
    前記処理ステップでは、前記対象選択ステップで選択されたオブジェクトに記述された文字を入力する処理が行われる、請求項1乃至の何れか1つに記載の対象選択プログラム。
  11. 前記選択対象は、前記表示画面に表示される文字であり、
    前記処理ステップでは、前記対象選択ステップで選択された文字を入力する処理が行われる、請求項1乃至の何れか1つに記載の対象選択プログラム。
  12. プレイヤの操作に応じて所定の座標系に基づいた座標情報を出力するポインティングデバイスと、プレイヤの操作に応じて複数種類の操作信号のうち所定の操作信号を出力する入力デバイスとを用いて、表示画面に表示された複数の選択対象から1つの選択対象を選択させる対象選択装置であって、
    前記表示画面に所定の条件でグループ化された複数の選択対象を表示する選択対象表示制御手段と、
    前記ポインティングデバイスから出力された座標情報を取得する第1操作情報取得手段と、
    前記第1操作情報取得手段が取得した座標情報に基づいて、前記グループ化された複数の選択対象のグループから1つのグループを、当該1つのグループとは異なる他のグループの少なくとも一部が表示された状態で選択するグループ選択手段と、
    前記入力デバイスから出力された操作信号を取得する第2操作情報取得手段と、
    前記グループ選択手段が1つのグループを選択してから前記他のグループの少なくとも一部が表示されている状態で前記第2操作情報取得手段が操作信号を取得した場合、当該操作信号に基づいて当該1つのグループに属する選択対象から1つの選択対象を選択する対象選択手段と、
    前記対象選択手段が選択した選択対象に応じた処理を行う処理手段とを備え
    前記対象選択手段は、前記グループ選択手段が選択したグループに属する選択対象から、前記第2操作情報取得手段が取得した操作信号を出力した前記入力デバイスの入力部の形状、または設置位置を模した位置に表示された1つの選択対象を選択し、
    前記グループ選択手段は、グループが選択されたとき、当該選択されたグループに属する選択対象を、それぞれ前記入力デバイスの入力部の形状、または設置位置を模した位置に変更して配置して前記表示画面に表示する選択対象表示位置変更制御手段を含む、対象選択装置。
  13. プレイヤの操作に応じて所定の座標系に基づいた座標情報を出力するポインティングデバイスと、プレイヤの操作に応じて複数種類の操作信号のうち所定の操作信号を出力する入力デバイスとを用いて、表示画面に表示された複数の選択対象から1つの選択対象を選択させる対象選択装置であって、
    前記表示画面に所定の条件でグループ化された複数の選択対象を表示する選択対象表示制御手段と、
    前記ポインティングデバイスから出力された座標情報を取得する第1操作情報取得手段と、
    前記第1操作情報取得手段が取得した座標情報に基づいて、前記グループ化された複数の選択対象のグループから1つのグループを、当該1つのグループとは異なる他のグループの少なくとも一部が表示された状態で選択するグループ選択手段と、
    前記入力デバイスから出力された操作信号を取得する第2操作情報取得手段と、
    前記グループ選択手段が1つのグループを選択してから前記他のグループの少なくとも一部が表示されている状態で前記第2操作情報取得手段が操作信号を取得した場合、当該操作信号に基づいて当該1つのグループに属する選択対象から1つの選択対象を選択する対象選択手段と、
    前記対象選択手段が選択した選択対象に応じた処理を行う処理手段とを備え、
    前記グループ選択手段は、グループが選択されたとき、前記入力デバイスの入力部それぞれに割り当てられた機能を示す標識を、当該選択されたグループに属する選択対象にそれぞれ付与して表示する標識表示追加制御手段を含み、
    前記対象選択手段は、前記グループ選択手段が選択したグループに属する選択対象から、前記第2操作情報取得手段が取得した操作信号を出力した前記入力デバイスの入力部に割り当てられた機能を示す標識が付与されて表示された1つの選択対象を選択する、対象選択装置。
  14. プレイヤの操作に応じて所定の座標系に基づいた座標情報を出力するポインティングデバイスと、プレイヤの操作に応じて複数種類の操作信号のうち所定の操作信号を出力する入力デバイスとを用いて、表示画面に表示された複数の選択対象から1つの選択対象を選択させる対象選択システムであって、
    前記表示画面に所定の条件でグループ化された複数の選択対象を表示する選択対象表示制御手段と、
    前記ポインティングデバイスから出力された座標情報を取得する第1操作情報取得手段と、
    前記第1操作情報取得手段が取得した座標情報に基づいて、前記グループ化された複数の選択対象のグループから1つのグループを、当該1つのグループとは異なる他のグループの少なくとも一部が表示された状態で選択するグループ選択手段と、
    前記入力デバイスから出力された操作信号を取得する第2操作情報取得手段と、
    前記グループ選択手段が1つのグループを選択してから前記他のグループの少なくとも一部が表示されている状態で前記第2操作情報取得手段が操作信号を取得した場合、当該操作信号に基づいて当該1つのグループに属する選択対象から1つの選択対象を選択する対象選択手段と、
    前記対象選択手段が選択した選択対象に応じた処理を行う処理手段とを備え
    前記対象選択手段は、前記グループ選択手段が選択したグループに属する選択対象から、前記第2操作情報取得手段が取得した操作信号を出力した前記入力デバイスの入力部の形状、または設置位置を模した位置に表示された1つの選択対象を選択し、
    前記グループ選択手段は、グループが選択されたとき、当該選択されたグループに属する選択対象を、それぞれ前記入力デバイスの入力部の形状、または設置位置を模した位置に変更して配置して前記表示画面に表示する選択対象表示位置変更制御手段を含む、対象選択システム。
  15. プレイヤの操作に応じて所定の座標系に基づいた座標情報を出力するポインティングデバイスと、プレイヤの操作に応じて複数種類の操作信号のうち所定の操作信号を出力する入力デバイスとを用いて、表示画面に表示された複数の選択対象から1つの選択対象を選択させる対象選択システムであって、
    前記表示画面に所定の条件でグループ化された複数の選択対象を表示する選択対象表示制御手段と、
    前記ポインティングデバイスから出力された座標情報を取得する第1操作情報取得手段と、
    前記第1操作情報取得手段が取得した座標情報に基づいて、前記グループ化された複数の選択対象のグループから1つのグループを、当該1つのグループとは異なる他のグループの少なくとも一部が表示された状態で選択するグループ選択手段と、
    前記入力デバイスから出力された操作信号を取得する第2操作情報取得手段と、
    前記グループ選択手段が1つのグループを選択してから前記他のグループの少なくとも一部が表示されている状態で前記第2操作情報取得手段が操作信号を取得した場合、当該操作信号に基づいて当該1つのグループに属する選択対象から1つの選択対象を選択する対象選択手段と、
    前記対象選択手段が選択された選択対象に応じた処理を行う処理手段とを備え、
    前記グループ選択手段は、グループが選択されたとき、前記入力デバイスの入力部それぞれに割り当てられた機能を示す標識を、当該選択されたグループに属する選択対象にそれぞれ付与して表示する標識表示追加制御手段を含み、
    前記対象選択手段は、前記グループ選択手段が選択したグループに属する選択対象から、前記第2操作情報取得手段が取得した操作信号を出力した前記入力デバイスの入力部に割り当てられた機能を示す標識が付与されて表示された1つの選択対象を選択する、対象選択システム。
  16. プレイヤの操作に応じて所定の座標系に基づいた座標情報を出力するポインティングデバイスと、プレイヤの操作に応じて複数種類の操作信号のうち所定の操作信号を出力する入力デバイスとを用いて、表示画面に表示された複数の選択対象から1つの選択対象を選択させる処理を行う対象選択装置に含まれるプロセッサまたは複数のプロセッサ間の協働により当該プロセッサが実行する対象選択方法であって、
    前記プロセッサは、
    前記表示画面に所定の条件でグループ化された複数の選択対象を表示する選択対象表示制御ステップ、
    前記ポインティングデバイスから出力された座標情報を取得する第1操作情報取得ステップ、
    前記第1操作情報取得ステップで取得した座標情報に基づいて、前記グループ化された複数の選択対象のグループから1つのグループを、当該1つのグループとは異なる他のグループの少なくとも一部が表示された状態で選択するグループ選択ステップ、
    前記入力デバイスから出力された操作信号を取得する第2操作情報取得ステップ、
    前記グループ選択ステップにおいて1つのグループが選択されてから前記他のグループの少なくとも一部が表示されている状態で前記第2操作情報取得ステップにおいて操作信号を取得した場合、当該操作信号に基づいて当該1つのグループに属する選択対象から1つの選択対象を選択する対象選択ステップ、および
    前記対象選択ステップで選択された選択対象に応じた処理を行う処理ステップを実行し、
    前記対象選択ステップでは、前記グループ選択ステップで選択したグループに属する選択対象から、前記第2操作情報取得ステップで取得した操作信号を出力した前記入力デバイスの入力部の形状、または設置位置を模した位置に表示された1つの選択対象が選択され、
    前記グループ選択ステップは、グループが選択されたとき、当該選択されたグループに属する選択対象を、それぞれ前記入力デバイスの入力部の形状、または設置位置を模した位置に変更して配置して前記表示画面に表示する選択対象表示位置変更制御ステップを含む、対象選択方法。
  17. プレイヤの操作に応じて所定の座標系に基づいた座標情報を出力するポインティングデバイスと、プレイヤの操作に応じて複数種類の操作信号のうち所定の操作信号を出力する入力デバイスとを用いて、表示画面に表示された複数の選択対象から1つの選択対象を選択させる処理を行う対象選択装置に含まれるプロセッサまたは複数のプロセッサ間の協働により当該プロセッサが実行する対象選択方法であって、
    前記プロセッサは、
    前記表示画面に所定の条件でグループ化された複数の選択対象を表示する選択対象表示制御ステップ、
    前記ポインティングデバイスから出力された座標情報を取得する第1操作情報取得ステップ、
    前記第1操作情報取得ステップで取得した座標情報に基づいて、前記グループ化された複数の選択対象のグループから1つのグループを、当該1つのグループとは異なる他のグループの少なくとも一部が表示された状態で選択するグループ選択ステップ、
    前記入力デバイスから出力された操作信号を取得する第2操作情報取得ステップ、
    前記グループ選択ステップにおいて1つのグループが選択されてから前記他のグループの少なくとも一部が表示されている状態で前記第2操作情報取得ステップにおいて操作信号を取得した場合、当該操作信号に基づいて当該1つのグループに属する選択対象から1つの選択対象を選択する対象選択ステップ、および
    前記対象選択ステップで選択された選択対象に応じた処理を行う処理ステップを実行し、
    前記グループ選択ステップは、グループが選択されたとき、前記入力デバイスの入力部それぞれに割り当てられた機能を示す標識を、当該選択されたグループに属する選択対象にそれぞれ付与して表示する標識表示追加制御ステップを含み、
    前記対象選択ステップでは、前記グループ選択ステップで選択したグループに属する選択対象から、前記第2操作情報取得ステップで取得した操作信号を出力した前記入力デバイスの入力部に割り当てられた機能を示す標識が付与されて表示された1つの選択対象が選択される、対象選択方法。
JP2006029918A 2006-02-07 2006-02-07 対象選択プログラム、対象選択装置、対象選択システム、および対象選択方法 Active JP4895352B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006029918A JP4895352B2 (ja) 2006-02-07 2006-02-07 対象選択プログラム、対象選択装置、対象選択システム、および対象選択方法
EP06019260.6A EP1816552B1 (en) 2006-02-07 2006-09-14 Storage medium storing subject selecting program and subject selecting apparatus
US11/521,386 US9389751B2 (en) 2006-02-07 2006-09-15 Storage medium storing subject selecting program and subject selecting apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006029918A JP4895352B2 (ja) 2006-02-07 2006-02-07 対象選択プログラム、対象選択装置、対象選択システム、および対象選択方法

Publications (2)

Publication Number Publication Date
JP2007213144A JP2007213144A (ja) 2007-08-23
JP4895352B2 true JP4895352B2 (ja) 2012-03-14

Family

ID=37772598

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006029918A Active JP4895352B2 (ja) 2006-02-07 2006-02-07 対象選択プログラム、対象選択装置、対象選択システム、および対象選択方法

Country Status (3)

Country Link
US (1) US9389751B2 (ja)
EP (1) EP1816552B1 (ja)
JP (1) JP4895352B2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5119636B2 (ja) * 2006-09-27 2013-01-16 ソニー株式会社 表示装置、表示方法
JP4689585B2 (ja) * 2006-11-29 2011-05-25 任天堂株式会社 情報処理装置および情報処理プログラム
JP5420824B2 (ja) * 2007-03-30 2014-02-19 任天堂株式会社 ゲーム装置およびゲームプログラム
JP5224832B2 (ja) * 2008-01-21 2013-07-03 任天堂株式会社 情報処理プログラムおよび情報処理装置
JP5430123B2 (ja) 2008-10-30 2014-02-26 任天堂株式会社 ゲーム装置およびゲームプログラム
FR2944900A1 (fr) * 2009-04-22 2010-10-29 Jean Loup Gillot Nouveaux procedes de selection d'objet sur clavier ecran sans dispositif de pointage
JP5417053B2 (ja) * 2009-06-12 2014-02-12 株式会社ソニー・コンピュータエンタテインメント ゲーム制御プログラム、ゲーム装置、及びゲーム制御方法
JP5430246B2 (ja) * 2009-06-23 2014-02-26 任天堂株式会社 ゲーム装置およびゲームプログラム
JP5448073B2 (ja) 2010-01-12 2014-03-19 任天堂株式会社 情報処理装置、情報処理プログラム、情報処理システム、および、選択対象の選択方法
JP2011186535A (ja) * 2010-03-04 2011-09-22 Brother Industries Ltd 入力装置
KR101662500B1 (ko) * 2011-01-05 2016-10-05 레이저 (아시아-퍼시픽) 피티이 엘티디 디스플레이-인에이블드 키보드, 키패드, 및/또는 다른 사용자 입력 장치를 사용하여 시각 인터페이스 콘텐츠를 관리, 선택, 및 갱신하는 시스템 및 방법
JP2015038719A (ja) * 2013-07-16 2015-02-26 東芝テック株式会社 情報処理装置及びプログラム
KR102701209B1 (ko) 2015-10-20 2024-08-29 매직 립, 인코포레이티드 3차원 공간에서 가상 객체들 선택
KR101784257B1 (ko) 2016-03-28 2017-10-11 주식회사 한글과컴퓨터 터치 기반 단말장치의 문서 편집 방법 및 그 장치
JP6691818B2 (ja) * 2016-05-23 2020-05-13 シャープ株式会社 インターフェース、文字入力ガイド方法及びプログラム

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5309137A (en) * 1991-02-26 1994-05-03 Mitsubishi Denki Kabushiki Kaisha Motor car traveling control device
JPH05127809A (ja) * 1991-04-19 1993-05-25 Sharp Corp 三次元空間座標入力装置
JPH07284166A (ja) * 1993-03-12 1995-10-27 Mitsubishi Electric Corp 遠隔操作装置
US5574479A (en) * 1994-01-07 1996-11-12 Selectech, Ltd. Optical system for determining the roll orientation of a remote unit relative to a base unit
US5543818A (en) * 1994-05-13 1996-08-06 Sony Corporation Method and apparatus for entering text using an input device having a small number of keys
GB2289756B (en) * 1994-05-26 1998-11-11 Alps Electric Co Ltd Space coordinates detecting device and input apparatus using same
JPH0981320A (ja) * 1995-09-20 1997-03-28 Matsushita Electric Ind Co Ltd ペン入力式選択入力装置及びその方法
US5786804A (en) * 1995-10-06 1998-07-28 Hewlett-Packard Company Method and system for tracking attitude
US6144378A (en) * 1997-02-11 2000-11-07 Microsoft Corporation Symbol entry system and methods
US5990890A (en) * 1997-08-25 1999-11-23 Liberate Technologies System for data entry and navigation in a user interface
US6084576A (en) * 1997-09-27 2000-07-04 Leu; Neng-Chyang User friendly keyboard
US6707443B2 (en) * 1998-06-23 2004-03-16 Immersion Corporation Haptic trackball device
JP4306127B2 (ja) * 1998-11-30 2009-07-29 ソニー株式会社 情報提供装置及び情報提供方法
US6801659B1 (en) * 1999-01-04 2004-10-05 Zi Technology Corporation Ltd. Text input system for ideographic and nonideographic languages
JP2000305704A (ja) * 1999-04-19 2000-11-02 Alps Electric Co Ltd データ入力装置
US6738041B2 (en) * 1999-10-29 2004-05-18 Intel Corporation Using video information to control cursor position
US6593913B1 (en) * 2000-03-14 2003-07-15 Jellyvision, Inc Method and system for selecting a displayed character using an input device
US20010030667A1 (en) * 2000-04-10 2001-10-18 Kelts Brett R. Interactive display interface for information objects
AU2001294852A1 (en) * 2000-09-28 2002-04-08 Immersion Corporation Directional tactile feedback for haptic feedback interface devices
JP2002222039A (ja) 2001-01-25 2002-08-09 Sony Computer Entertainment Inc 情報入力処理プログラム、情報入力処理プログラムを記録したコンピュータ読み取り可能な記録媒体、情報入力処理プログラムを実行するプログラム実行装置、情報入力装置、及び情報入力方法
JP2003216602A (ja) * 2002-01-21 2003-07-31 Fujitsu Ltd 中国語字形入力プログラム,中国語字形入力装置,及び中国語字形入力方法
US6982697B2 (en) * 2002-02-07 2006-01-03 Microsoft Corporation System and process for selecting objects in a ubiquitous computing environment
JP2003288161A (ja) * 2002-03-28 2003-10-10 Nec Corp 携帯機器
FR2840488B1 (fr) * 2002-05-28 2004-10-22 Jean Loup Gillot Clavier pour telephone mobile
US7171498B2 (en) 2003-01-09 2007-01-30 Sony Computer Entertainment America Inc. Alphanumeric keyboard input system using a game controller
US7233316B2 (en) * 2003-05-01 2007-06-19 Thomson Licensing Multimedia user interface
US8062126B2 (en) * 2004-01-16 2011-11-22 Sony Computer Entertainment Inc. System and method for interfacing with a computer program
US7389171B2 (en) * 2003-12-22 2008-06-17 Ford Global Technologies Llc Single vision sensor object detection system
WO2005108119A2 (en) * 2004-04-30 2005-11-17 Hillcrest Laboratories, Inc. Free space pointing devices with tilt compensation and improved usability
US7561720B2 (en) * 2004-04-30 2009-07-14 Visteon Global Technologies, Inc. Single camera system and method for range and lateral position measurement of a preceding vehicle
FR2871977B1 (fr) * 2004-06-17 2006-12-29 Jean Loup Gillot Interface homme-machine mobile
WO2006014810A2 (en) * 2004-07-29 2006-02-09 Kevin Ferguson A human movement measurement system
US7672543B2 (en) * 2005-08-23 2010-03-02 Ricoh Co., Ltd. Triggering applications based on a captured text in a mixed media environment
US7545956B2 (en) * 2005-08-12 2009-06-09 Visteon Global Technologies, Inc. Single camera system and method for range and lateral position measurement of a preceding vehicle
KR100735554B1 (ko) * 2005-10-10 2007-07-04 삼성전자주식회사 문자 입력 방법 및 이를 위한 장치
JP5424373B2 (ja) * 2006-03-09 2014-02-26 任天堂株式会社 画像処理装置、画像処理プログラム、画像処理システム、および画像処理方法

Also Published As

Publication number Publication date
US20070191112A1 (en) 2007-08-16
EP1816552B1 (en) 2020-02-26
EP1816552A2 (en) 2007-08-08
EP1816552A3 (en) 2012-08-29
US9389751B2 (en) 2016-07-12
JP2007213144A (ja) 2007-08-23

Similar Documents

Publication Publication Date Title
JP4895352B2 (ja) 対象選択プログラム、対象選択装置、対象選択システム、および対象選択方法
JP4907128B2 (ja) ゲームシステムおよびゲームプログラム
JP5424373B2 (ja) 画像処理装置、画像処理プログラム、画像処理システム、および画像処理方法
JP4798705B2 (ja) 位置算出装置、位置算出プログラム、ゲーム装置、およびゲームプログラム
JP5654330B2 (ja) 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
JP4794957B2 (ja) ゲームプログラム、ゲーム装置、ゲームシステム、およびゲーム処理方法
US9149718B2 (en) Storage medium having game program stored thereon and game apparatus
JP4471910B2 (ja) 仮想位置決定プログラム
JP5522902B2 (ja) 情報処理プログラムおよび情報処理装置
JP5004518B2 (ja) ゲーム装置、ゲームプログラム、ゲームシステム、およびゲーム処理方法
JP4964729B2 (ja) 画像処理プログラムおよび画像処理装置
JP5285863B2 (ja) 情報選択装置、情報選択プログラム、ゲーム装置およびゲームプログラム
JP4919887B2 (ja) 画像処理プログラムおよび画像処理装置
JP2007075213A (ja) 情報処理プログラム
JP5379382B2 (ja) 表示制御プログラム、表示制御装置、表示制御システムおよび表示制御方法
JP5013511B2 (ja) ゲームプログラムおよびゲーム装置
JP5144242B2 (ja) 表示制御プログラム、表示制御装置、表示制御システムおよび表示制御方法
JP5735865B2 (ja) ゲームシステムおよびゲームプログラム
JP5352692B2 (ja) 画像処理プログラムおよび画像処理装置
JP5352626B2 (ja) 情報処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090121

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110303

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110602

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110728

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110902

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111216

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111219

R150 Certificate of patent or registration of utility model

Ref document number: 4895352

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150106

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250