以下に本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム専用の情報処理装置に本発明が適用される実施形態を説明するが、各種のコンピュータ、PDA(Personal Data Assistants)、携帯電話などの情報処理装置においても同様に本発明を適用することができる。すなわち、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
(第1の実施形態)
(情報処理装置の説明)
図1は、本発明の第1の実施形態に係る項目提示装置が実現される典型的な情報処理装置100の概要構成を示す模式図である。
情報処理装置100は、CPU(Central Processing Unit)101と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103と、インターフェース104と、マット型コントローラ105と、外部メモリ106と、画像処理部107と、DVD(Digital Versatile Disk)−ROMドライブ108と、NIC(Network Interface Card)109と、音声処理部110と、RTC(Real Time Clock)111と、モニター112と、キーボード113と、を備える。
ゲーム制御用のプログラムおよびデータを記憶したDVD−ROMをDVD−ROMドライブ108に装着して、情報処理装置100の電源を投入することにより、プログラムが実行され、本実施形態の項目提示装置が実現される。なお、本実施形態に係る項目提示装置は、ゲームの開始前やゲームの終了時などに、適宜、ユーザに各種の項目が提示されるダンスゲームを制御するゲーム装置である。つまり、本実施形態係る項目提示装置により実行されるゲーム制御用のプログラムには、項目提示制御のプログラムが含まれている。
CPU 101は、情報処理装置100全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。CPU 101は、各構成要素から各種のデータを取得し、当該各種のデータを種々の演算により加工して、その結果を各構成要素にデータや制御信号として与える。CPU 101内では、各種のデータは、一旦CPU 101が備えるキャッシュに格納され、さらにCPU 101が備えるレジスタに取得されてから各種の演算が施される。
ROM 102には、電源投入直後に実行されるIPL(Initial Program Loader)が記録される。IPLが実行されることにより、DVD−ROMに記録されたプログラムがRAM 103に読み出され、CPU 101による実行が開始される。また、ROM 102には、情報処理装置100全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータが記録される。
RAM 103は、データやプログラムを一時的に記憶するためのもので、DVD−ROMから読み出されたプログラムやデータなどが保持される。このほか、情報処理装置100に接続される各種の機器から伝達される種々の情報や、各種の機器に伝達すべき種々の情報も、RAM 103に一時的に格納される。
インターフェース104を介して接続されたマット型コントローラ105は、ユーザからの各種の操作入力を受け付ける。図2は、マット型コントローラ105の外観を示す説明図である。以下、本図を参照してマット型コントローラ105を説明する。
図2は、床面に設置されたマット型コントローラ105を真上から眺めたときのマット型コントローラ105の概略図である。マット型コントローラ105の所定領域には、「左」を指示する入力をユーザから受け付ける方向ボタン201L、「下」を指示する入力をユーザから受け付ける方向ボタン201D、「上」を指示する入力をユーザから受け付ける方向ボタン201U、「右」を指示する入力をユーザから受け付ける方向ボタン201R、「決定」を指示する入力をユーザから受け付ける決定ボタン202、「取消」を指示する入力をユーザから受け付ける取消ボタン203、がそれぞれ配置されている。ユーザは、方向ボタン201L、201D、201U、201R(以下、必要に応じて方向ボタン201と総称する。)、決定ボタン202、ならびに、取消ボタン203、を任意のタイミングで押圧することができる。CPU 101は、方向ボタン201、決定ボタン202、ならびに、取消ボタン203、のそれぞれについて、ボタンが押圧されている状態であるか否かを判別する。
本実施形態では、マット型コントローラ105は6個のボタンを備えているものとして説明するが、ボタンの数は6個に限定されず、5個以下あるいは7個以上でもよい。また、マット型コントローラ105は、床面に配置する形状に限られず、手に持って操作するいわゆるタッチパッドの形状や、手で把持する形状であってもよい。
インターフェース104を介して着脱自在に接続された外部メモリ106には、ゲームの進行状態を示すデータなどが書き換え可能に記憶される。ユーザは、例えば、マット型コントローラ105を介して指示入力を行うことにより、これらのデータを適宜外部メモリ106に記録することができる。
DVD−ROMドライブ108に装着されるDVD−ROMには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データが記録される。CPU 101の制御によって、DVD−ROMドライブ108は、これに装着されたDVD−ROMに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはRAM 103等に一時的に記憶される。
画像処理部107は、DVD−ROMから読み出されたデータをCPU 101や画像処理部107が備える画像演算プロセッサ(図示せず)によって加工処理した後、これを画像処理部107が備えるフレームメモリ(図示せず)に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され、画像処理部107に接続されたモニター112へ出力される。これにより、各種の画像表示が可能となる。
画像演算プロセッサは、2次元の画像の重ね合わせ演算やαブレンディング等の透過演算、各種の飽和演算を高速に実行できる。また、画像演算プロセッサは、仮想3次元空間に配置され、各種のテクスチャ情報が付加されたポリゴン情報を、Zバッファ法によりレンダリングして、所定の視点位置から仮想3次元空間に配置されたポリゴンを俯瞰したレンダリング画像を得る演算の高速実行も可能である。画像演算プロセッサにおいては、特に、点光源や平行光源、円錐光源などの典型的な(正)光源によってポリゴンが照らされる度合を計算する機能が、ライブラリ化もしくはハードウェア化され、高速に計算できるようになっている。
さらに、CPU 101と画像演算プロセッサとは、協調動作することにより、文字の形状を定義するフォント情報にしたがって、文字列を2次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画したりする。フォント情報は、ROM 102に記録されているが、DVD−ROMに記録された専用のフォント情報を利用することも可能である。
NIC 109は、情報処理装置100をインターネット等のコンピュータ通信網(図示せず)に接続するためのものである。NIC 109は、例えば、LAN(Local Area Network)を構成する際に用いられる10BASE−T/100BASE−T規格に従うインターフェース(図示せず)により構成される。あるいは、NIC 109は、電話回線を用いてインターネットに接続するためのアナログモデム、ISDN(Integraged Services Digital Network)モデム、ADSL(Asymmetric Digital Subscriber Line Modem)モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、CPU 101との仲立ちを行うインターフェース(図示せず)により構成される。
音声処理部110は、DVD−ROMから読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ(図示せず)から出力させる。また、CPU 101の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカから出力させる。音声処理部110からは、たとえば、BGMやカラオケとして再生される楽曲の音や、ユーザのボタン操作に合わせて再生される効果音などを変換する。
RTC 111は、水晶振動子や発振回路などを備える計時用のデバイスである。RTC 111は、内蔵電池から電源を供給され、情報処理装置100の電源がオフのときでも動作し続ける。
モニター112は、画像処理部107から供給されたビデオ信号に従って画像を表示する。モニター112は、例えば、液晶ディスプレイ、プラズマディスプレイ、CRTなどにより構成される。
キーボード113は、ユーザから各種のキー操作を受け付ける。
このほか、情報処理装置100は、ハードディスク等の大容量外部記憶装置を用いて、ROM 102、RAM 103、外部メモリ106、DVD−ROMドライブ108に装着されるDVD−ROM等と同じ機能を果たすように構成してもよい。なお、情報処理装置100は、汎用のパーソナルコンピュータとしても利用することができる。この場合、キーボード113やマウス(図示せず)などが入力装置として利用される。
(項目提示装置の説明)
次に、本実施形態に係る項目提示装置300の機能について、図面を参照して説明する。まず、図3を参照して、本発明の実施形態に係る項目提示装置300の構成を説明する。なお、情報処理装置100のDVD−ROMドライブ108に、項目提示制御のプログラムが含まれたゲーム制御用のプログラムが格納されたDVD−ROMが装着されて、情報処理装置100の電源が投入されると、本実施形態に係る項目提示装置300が構成される。
図3に示すように、項目提示装置300は、提示部301と、受付部302と、切替部303と、決定部304と、を備える。
提示部301は、巡回的な順序が定められた複数の項目のうち現在注目されている注目項目をユーザに提示する。提示部301は、例えば、画像処理部107とモニター112とにより構成される。
受付部302は、ユーザからの切替操作を受け付ける。受付部302は、例えば、マット型コントローラ105により構成される。
切替部303は、切替操作が継続している間、時間の経過に応じて、巡回的な順序に従って、注目項目を切り替える。切替部303は、例えば、CPU 101とRTC 111とにより構成される。
決定部304は、継続した切替操作が終了すると、注目項目を選択結果に決定する。決定部304は、例えば、CPU 101とRTC 111とにより構成される。
ここで、切替部303は、注目項目が所定の回数連続して切り替えられた後は、切替操作が継続していても、注目項目を維持する。
次に、本実施形態に係る項目提示装置300により表示される楽曲選択画面400について、図4Aを参照して説明する。なお、本実施形態においては、項目提示装置300により提示された複数の楽曲の候補から、所望の楽曲がユーザにより選択される。つまり、本実施形態においては、ユーザにより選択される項目は楽曲である。
項目提示装置300は、例えば、ゲーム開始前に、図4Aに示す楽曲選択画面400を表示し、ユーザに所望の楽曲を選択するように促す。そして、楽曲が選択されるとゲームが開始される。
図4Aに示すように、楽曲選択画面400には、候補楽曲画像401(候補楽曲画像401−1、401−2、401−3、401−4、401−N)、注目楽曲画像402、などが表示される。
候補楽曲画像401は、ユーザが選択可能なN(Nは任意の自然数)個の楽曲のうちの1つの楽曲を特定することが可能な画像である。候補楽曲画像401は、例えば、楽曲名を表す文字列を含む画像である。ユーザが選択可能なN個の楽曲には、あらかじめ巡回的な順序が定められている。以下、図5Aを参照して、当該巡回的な順序について説明する。
図5Aに示すように、1つの楽曲には、1つの楽曲番号が対応付けられる。図5Aに示す例では、楽曲1には楽曲番号として1が対応付けられ、楽曲2には楽曲番号として2が対応付けられ、楽曲3には楽曲番号として3が対応付けられ、・・・、楽曲N−1には楽曲番号としてN−1が対応付けられ、楽曲Nには楽曲番号としてNが対応付けられている。ここで、楽曲番号は、巡回的に連続しているものと考える。つまり、Nの次の楽曲番号は、1であるものとする。そして、本実施形態においては、楽曲番号により、楽曲の巡回的な順序が定まるものとする。また、楽曲の内容を表すデータや楽曲番号は、あらかじめ、DVD−ROMドライブ108に装着されるDVD−ROMに記憶されており、適宜、RAM 103に読み出されるものとする。
ところで、ユーザが選択しようとしている楽曲であって、ユーザにより注目されていると考えられる楽曲(以下「注目楽曲」という。)は、ユーザによるマット型コントローラ105の操作により切り替えられる。具体的には、マット型コントローラ105に配置された方向ボタン201Dが押圧されると、基本的には、注目楽曲は、現在の注目楽曲から、楽曲番号が当該現在の注目楽曲よりも1つ大きい楽曲に切り替わる。ただし、現在の注目楽曲の楽曲番号がNである場合(現在の注目楽曲が楽曲Nである場合)に方向ボタン201Dが押圧されると、注目楽曲は、楽曲番号が1である楽曲(楽曲1)に切り替わる。また、マット型コントローラ105に配置された方向ボタン201Uが押圧されると、基本的には、注目楽曲は、現在の注目楽曲から、楽曲番号が当該現在の注目楽曲よりも1つ小さい楽曲に切り替わる。ただし、現在の注目楽曲の楽曲番号が1である場合(現在の注目楽曲が楽曲1である場合)に方向ボタン201Uが押圧されると、注目楽曲は、楽曲番号がNである楽曲(楽曲N)に切り替わる。
このように、楽曲番号を1つ増加させる方向(以下、適宜「正の向き」という。)に切り替える場合にNの次を1とし、楽曲番号を1つ減少させる方向(以下、適宜「負の向き」という。)に切り替える場合に1の次をNとして扱うと、楽曲番号は連続したループを形成する。ここで、楽曲番号は、楽曲に対応付けられるものであるので、楽曲には巡回的な順序が定められていると考えることができる。
図4Aの説明に戻る。候補の楽曲が多い場合、楽曲選択画面400に、全ての候補の楽曲を表す候補楽曲画像401を、同時に表示することは難しい。従って、楽曲選択画面400には、適切な個数の候補楽曲画像401が同時に表示される。楽曲選択画面400に、同時に表示される候補楽曲画像401の個数は任意であるが、図4Aに示す例では、楽曲1を表す候補楽曲画像401−1、楽曲2を表す候補楽曲画像401−2、楽曲3を表す候補楽曲画像401−3、楽曲4を表す候補楽曲画像401−4、および、楽曲Nを表す候補楽曲画像401−N、の5つの候補楽曲画像401が表示されている。つまり、図4Aには、N個の楽曲のうち、5個の楽曲が示されている。なお、本実施形態においては、楽曲1を表す候補楽曲画像401−1、楽曲2を表す候補楽曲画像401−2、楽曲3を表す候補楽曲画像401−3、・・・、楽曲Nを表す候補楽曲画像401−N、を総称して候補楽曲画像401としている。ここで、本実施形態においては、巡回的な順序が連続する5つの楽曲に対応する候補楽曲画像401が、当該巡回的な順序に従って、楽曲選択画面400の上から順に並べて表示される。具体的には、上下に隣接して表示される2つの楽曲が、(a)楽曲番号の差が1である場合、楽曲番号が小さい方の楽曲が上側に表示され、(b)楽曲番号の差が1ではない場合、楽曲番号が大きい方の楽曲が上側に表示される、ように5つの楽曲が楽曲選択画面400に表示される。
ここで、楽曲選択画面400に表示される候補楽曲画像401のうち、注目楽曲を表す候補楽曲画像401は、他の候補楽曲画像401よりも相対的に強調して表示される。図4Aに示す例では、楽曲2が注目楽曲であり、楽曲2を表す候補楽曲画像401−2が、外枠が太く表示されることにより強調されている。強調の手法は任意であるが、例えば、明度・彩度・色相の変更、拡大・縮小、回転、変形、点滅、などがある。あるいは、候補楽曲画像401は、楽曲選択画面400の中央付近に目立つように表示されることにより、強調されてもよい。
注目楽曲画像402は、注目楽曲に関する種々の情報を示す画像である。例えば、注目楽曲画像402は、注目楽曲の、楽曲名、難易度、テンポの速さ、などを文字列や図形などにより示す。ユーザは、注目楽曲画像402を観察することにより、現在の注目楽曲がどの楽曲であるかを速やかに把握することができるとともに、現在の注目楽曲に関する種々の情報を知ることができる。ユーザは、注目楽曲画像402により示された情報を参考にして、当該注目楽曲を選択するか否かを決定することができる。なお、マット型コントローラ105に配置された決定ボタン202が押圧されると、注目楽曲画像402により示された注目楽曲が、ダンスゲームの課題の楽曲に決定される。
ここで、図4A、図4B、図4C、図5B、図6A、図6Bを参照して、項目提示装置300による注目楽曲の切り替え処理について説明する。
項目提示装置300は、方向ボタン201Dもしくは方向ボタン201Uが比較的短い時間(例えば、1sec未満。)押圧される場合、押圧操作の度に、図5Aに示す巡回的な順序に従って、注目楽曲を切り替える。具体的には、例えば、注目楽曲は、方向ボタン201Dが押圧される毎に、・・・→楽曲1→楽曲2→楽曲3→・・・→楽曲N−1→楽曲N→楽曲1→楽曲2→楽曲3→・・・、の順序で1つずつ切り替えられ、方向ボタン201Uが押圧される毎に、・・・→楽曲1→楽曲N→楽曲N−1・・・→楽曲3→楽曲2→楽曲1→楽曲N→楽曲N−1・・・、の順序で1つずつ切り替えられる。
一方、項目提示装置300は、方向ボタン201Dもしくは方向ボタン201Uが比較的長い時間(例えば、1sec以上。)継続して押圧される場合、押圧時間に応じて、図5Aに示す巡回的な順序に従って、注目楽曲を切り替える。
例えば、図4Aに示すように、注目楽曲が楽曲2である状態において方向ボタン201Dの押圧が開始されると、図5Bに示すように、注目楽曲が切り替わる。図5Bに示すように、注目楽曲の楽曲番号は、押圧時間tが所定時間tcを超える毎に、2→3→4→・・・→N−1→N→1→2と切り替わるが、押圧開始時の楽曲番号である2になると、切り替わらなくなる。つまり、継続した切替操作が行われると、注目楽曲は、巡回的な順序に従って一巡するまで切り替わり、その後、切り替わらなくなる。
具体的には、図4Aに示すように、注目楽曲が楽曲2である状態において方向ボタン201Dの押圧が開始された場合、押圧時間tが所定時間tcを超えると、まず、注目楽曲が楽曲2から楽曲3に切り替わる。このとき、図4Bに示すように、楽曲選択画面400には、楽曲1、楽曲2、楽曲3、楽曲4、楽曲5、を表す5つの候補楽曲画像401が表示され、楽曲3を表す候補楽曲画像401−3が強調表示されるとともに、楽曲3に関する情報が表す注目楽曲画像402が表示される。押圧時間tがさらに所定時間tcを超えると、注目楽曲が楽曲3から楽曲4に切り替わる。このとき、図4Cに示すように、楽曲選択画面400には、楽曲2、楽曲3、楽曲4、楽曲5、楽曲6を表す5つの候補楽曲画像401が表示され、楽曲4を表す候補楽曲画像401−4が強調表示されるとともに、楽曲4に関する情報が表す注目楽曲画像402が表示される。以後、押圧時間tが所定時間tcを経過する毎に、注目楽曲が切り替わる。
図6Aに、注目楽曲が楽曲N−1から楽曲Nに切り替わった直後の楽曲選択画面400を示す。このとき、楽曲選択画面400には、楽曲N−2、楽曲N−1、楽曲N、楽曲1、楽曲2、を表す5つの候補楽曲画像401が表示され、楽曲Nを表す候補楽曲画像401−Nが強調表示されるとともに、楽曲Nに関する情報が表す注目楽曲画像402が表示される。そして、押圧時間tがさらに所定時間tcを超えると、注目楽曲が楽曲Nから楽曲1に切り替わる。このとき、楽曲N−2を表す候補楽曲画像401−(N−2)が楽曲選択画面400の上方に消え、楽曲3を表す候補楽曲画像401−3が楽曲選択画面400の下方から出現する。つまり、図6Bに示すように、楽曲選択画面400には、楽曲N−1、楽曲N、楽曲1、楽曲2、楽曲3を表す5つの候補楽曲画像401が表示され、楽曲1を表す候補楽曲画像401−1が強調表示されるとともに、楽曲1に関する情報が表す注目楽曲画像402が表示される。
ここで、押圧時間tがさらに所定時間tcを超えると、注目楽曲が楽曲1から楽曲2に切り替わる。このとき、楽曲N−1を表す候補楽曲画像401−(N−1)が楽曲選択画面400の上方に消え、楽曲4を表す候補楽曲画像401−4が楽曲選択画面400の下方から出現する。つまり、図4Aに示すように、楽曲選択画面400には、楽曲N、楽曲1、楽曲2、楽曲3、楽曲4を表す5つの候補楽曲画像401が表示され、楽曲2を表す候補楽曲画像401−2が強調表示されるとともに、楽曲2に関する情報が表す注目楽曲画像402が表示される。しかしながら、注目楽曲は、巡回的な順序に従って一巡して、押圧開始時の注目楽曲に戻ると、以後、切り替わらなくなる。
次に、本実施形態に係る項目提示装置300の動作について、図7を参照して説明する。図7は、本実施形態に係る項目提示装置300が実行する楽曲選択制御処理を示すフローチャートである。なお、図7に示す楽曲選択制御処理は、例えば、項目提示装置300の電源投入直後に実行される。
まず、CPU 101は、楽曲選択画面400を表示する(ステップS101)。具体的には、CPU 101は、楽曲に関する種々の情報(以下「楽曲総合情報」という。)を、DVD−ROMからRAM 103に読み出し、当該楽曲総合情報に基づいて、図4Aに示すような楽曲選択画面400をモニター112に表示する。ここで、楽曲総合情報には、各楽曲の、楽曲名、楽曲番号、楽曲内容、ならびに、デフォルトの注目楽曲とする楽曲の楽曲番号などを表す情報が含まれる。なお、図4Aには、デフォルトの注目楽曲とする楽曲の楽曲番号が2である例を示している。また、デフォルトの注目楽曲とする楽曲の楽曲番号は、現在の注目楽曲の楽曲番号として、RAM 103に記憶される。
CPU 101は、ステップS101の処理を完了すると、方向ボタン201D、201Uのうち、いずれかの方向ボタン201が押圧状態になったか否かを判別する(ステップS102)。
CPU 101は、いずれの方向ボタン201も押圧状態になっていないと判別した場合(ステップS102:NO)、ステップS102に処理を戻す。
一方、CPU 101は、いずれかの方向ボタン201が押圧状態になったと判別すると(ステップS102:YES)、押圧状態になった方向ボタン201を表す情報(以下「押圧ボタン情報」という。)と押圧開始時の注目楽曲の楽曲番号とを、RAM 103に記憶する(ステップS103)。
CPU 101は、ステップS103の処理を完了すると、カウンタを起動する(ステップS104)。このカウンタが起動されると、カウンタの値は0にリセットされ、その後、時間経過とともにカウンタの値が増加する。本実施形態においては、カウンタの値は、10msec毎に1つ増加するものとする。カウンタの値は、例えば、RAM 103に記憶される。なお、方向ボタン201が継続して押圧されている時間は、このカウンタの値により表わされる。
CPU 101は、ステップS104の処理を完了すると、ステップS102において押圧状態になったと判別された方向ボタン201が非押圧状態になったか否かを判別する(ステップS105)。具体的には、CPU 101は、ステップS103においてRAM 103に記憶された押圧ボタン情報により特定される方向ボタン201が、押圧状態でなくなったか否かを判別する。
CPU 101は、方向ボタン201が非押圧状態になったと判別すると(ステップS105:YES)、現在の注目楽曲を選択結果に決定し、楽曲選択制御処理を終了する。
一方、CPU 101は、方向ボタン201が非押圧状態になっていないと判別すると(ステップS105:NO)、カウンタの値が所定値以上であるか否かを判別する(ステップS107)。本実施形態においては、所定値は100であるものとする。つまり、ステップS107においては、ステップS104の処理によりカウンタが起動されてから、10msec×100=1sec以上経過しているか否かが判別される。
CPU 101は、カウンタの値が所定値以上になってはいないと判別すると(ステップS107:NO)、ステップS105に処理を戻す。一方、CPU 101は、カウンタの値が所定値以上になったと判別すると(ステップS107:YES)、押圧状態になった方向ボタン201の種類に応じて、注目楽曲を切り替える(ステップS108)。
具体的には、以下の(1)〜(4)に示すように、注目楽曲を切り替える。
(1)押圧状態になった方向ボタン401が方向ボタン401Dであり、かつ、現在の注目楽曲の楽曲番号がNでない場合、現在の注目楽曲の楽曲番号に1を加算した楽曲番号の楽曲が新たな注目楽曲となる。
(2)押圧状態になった方向ボタン401が方向ボタン401Dであり、かつ、現在の注目楽曲の楽曲番号がNである場合、楽曲番号が1の楽曲が新たな注目楽曲となる。
(3)押圧状態になった方向ボタン401が方向ボタン401Uであり、かつ、現在の注目楽曲の楽曲番号が1でない場合、現在の注目楽曲の楽曲番号から1を減算した楽曲番号の楽曲が新たな注目楽曲となる。
(4)押圧状態になった方向ボタン401が方向ボタン401Uであり、かつ、現在の注目楽曲の楽曲番号が1である場合、楽曲番号がNの楽曲が新たな注目楽曲となる。
そして、CPU 101は、RAM 103に記憶されている現在の注目楽曲の楽曲番号を更新するとともに、当該現在の注目楽曲を提示する楽曲選択画面400をモニター112に表示する。
CPU 101は、ステップS108の処理を完了すると、押圧開始時の注目楽曲と現在の注目楽曲とが一致するか否かを判別する(ステップS109)。具体的には、CPU 101は、ステップS103においてRAM 103に記憶された押圧開始時の注目楽曲の楽曲番号と、ステップS108においてRAM 103に記憶された現在の注目楽曲の楽曲番号と、が一致するか否かを判別する。
CPU 101は、押圧開始時の注目楽曲と現在の注目楽曲とが一致しないと判別すると(ステップS109:NO)、ステップS104に処理を戻す。一方、CPU 101は、押圧開始時の注目楽曲と現在の注目楽曲とが一致すると判別すると(ステップS109:YES)、方向ボタン401が非押圧状態になるまで待つ(ステップS110)。具体的には、CPU 101は、ステップS103においてRAM 103に記憶された押圧ボタン情報により特定される方向ボタン201が、押圧状態でなくなるまで待つ。CPU 101は、ステップS110の処理を完了すると、ステップS102に処理を戻す。
本実施形態に係る項目提示装置300によれば、項目を切り替えるために押圧されたボタンが継続して押圧されている場合に、項目が一巡するまでは時間経過とともに注目項目が切り替わり、項目が一巡すると注目項目の切り替えが停止される。このため、ユーザは、落ち着いて所望の項目を選択することができる。また、ユーザは、継続した切り替え操作が開始される前にどの項目が注目項目であったかを把握することができる。さらに、本実施形態に係る項目提示装置300によれば、継続した切替操作が終了した時点における注目項目が、ユーザが所望する項目として決定される。このため、ユーザは、選択結果とする項目を決定するための特別な操作入力をしなくて済む。
(第2の実施形態)
第1の実施形態では、ユーザにより選択される項目が楽曲である例を示した。しかし、本発明において、ユーザにより選択される項目は任意である。以下、ユーザにより選択される項目が文字である場合について説明する。
(項目提示装置の説明)
まず、本実施形態に係る項目提示装置310の機能について、図面を参照して説明する。まず、図8を参照して、本発明の実施形態に係る項目提示装置310の構成を説明する。なお、情報処理装置100のDVD−ROMドライブ108に、項目提示制御のプログラムが含まれたゲーム制御用のプログラムが格納されたDVD−ROMが装着されて、情報処理装置100の電源が投入されると、本実施形態に係る項目提示装置310が構成される。
図8に示すように、項目提示装置310は、提示部301と、受付部302と、切替部303と、決定部304と、を備える。
提示部301は、巡回的な順序が定められた複数の項目のうち現在注目されている注目項目をユーザに提示する。提示部301は、例えば、画像処理部107とモニター112とにより構成される。
受付部302は、ユーザからの切替操作を受け付ける。また、受付部302は、ユーザからの決定操作を受け付ける。受付部302は、例えば、マット型コントローラ105により構成される。
切替部303は、切替操作が継続している間、時間の経過に応じて、巡回的な順序に従って、注目項目を切り替える。切替部303は、例えば、CPU 101とRTC 111とにより構成される。
ここで、切替部303は、注目項目が所定の回数連続して切り替えられた後は、切替操作が継続していても、注目項目を維持する。
決定部304は、決定操作が受け付けられると、注目項目を選択結果に決定する。決定部304は、例えば、CPU 101とRTC 111とにより構成される。
次に、本実施形態に係る項目提示装置310により表示されるユーザ名入力画面900について、図9A、図9B、図10A、図10B、を参照して説明する。なお、本実施形態においては、ユーザは、項目提示装置310により提示された複数の文字の候補から所望の文字を選択して、ユーザ名を表す文字列を入力する。つまり、本実施形態においては、ユーザが選択する項目は文字である。
項目提示装置310は、例えば、ゲーム開始前に、図9A、図9B、図10A、図10B、に示すユーザ名入力画面900を表示し、ユーザにユーザ名を入力するように促す。そして、ユーザ名が入力されるとゲームが開始される。
図9A、図9B、図10A、図10B、に示すように、ユーザ名入力画面900は、ユーザ名表示領域901、候補文字表示領域903などを含む。また、ユーザ名入力画面900には、カーソル902、904などが表示される。
ユーザ名表示領域901には、ユーザ名を表す文字列を構成する選択済みの文字から構成される文字列が表示される。なお、選択済みの文字は、候補文字表示領域903に表示されている複数の文字の候補(以下、適宜「候補文字」という。)のうちのいずれかである。
カーソル902は、ユーザ名表示領域901上の、次に候補文字が追加される位置を示す。
候補文字表示領域903には、ユーザ名を表す文字列を構成する文字の候補である候補文字が複数個表示される。本実施形態においては、候補文字は、アルファベットの大文字の‘A’〜‘Z’と、‘SP’(スペース)と、‘・’(コロン)と、‘,’(カンマ)と、‘BS’(バックスペース)と、の30文字である。図示するように、候補文字表示領域903には、30個の候補文字が二次元に表示される。
カーソル904は、候補文字表示領域903に表示されている複数の候補文字のうち、ユーザが注目していると考えられる候補文字(以下「注目文字」という。)を表す。図9A、図9B、図10A、図10B、に示す例では、注目文字は、カーソル904により囲まれている‘U’である。
ここで、決定ボタン202が押圧されると、カーソル904により指定されている注目文字が、選択結果に決定され、ユーザ名表示領域901に表示された文字列の末尾(つまり、カーソル902が示す位置)に追加される。なお、‘BS’が選択結果に決定されると、ユーザ名表示領域901に表示された文字列の末尾の文字が削除される。また、ユーザ名表示領域901に表示された文字列を構成する文字数(‘SP’を含む)が所定個数(例えば、10個)に達すると、ユーザ名の入力が完了する。従って、ユーザは、所望のユーザ名を表す文字列を構成する文字数が所定個数に満たない場合、当該文字列の末尾に‘SP’を追加して、ユーザ名の入力を完了させる。
また、30個の候補文字には、あらかじめ2通りの巡回的な順序が定められている。一方の巡回的な順序(以下「左右方向の巡回的な順序」という。)は、左右方向の方向ボタンである方向ボタン201Lもしくは方向ボタン201Rが押圧されたときに、注目文字が切り替わる順序を定義するものである。そして、他方の巡回的な順序(以下「上下方向の巡回的な順序」という。)は、上下方向の方向ボタンである方向ボタン201Dもしくは方向ボタン201Uが押圧されたときに、注目文字が切り替わる順序を定義するものである。
図9Aと図9Bに、破線の矢印により、左右方向の巡回的な順序を示す。具体的には、方向ボタン201Rが比較的短い時間(例えば、1sec未満。)押圧される毎に、注目文字が、図9Aに示す破線の矢印のうち当該注目文字から伸びる破線の矢印により指定される候補文字に切り替わる。また、方向ボタン201Rが比較的長い時間(例えば、1sec以上。)継続して押圧される場合において、注目文字が一巡するまでは、所定の時間(例えば、1sec。)が経過する毎に、注目文字が、図9Aに示す破線の矢印のうち当該注目文字から伸びる破線の矢印により指定される候補文字に切り替わる。また、方向ボタン201Lが比較的短い時間(例えば、1sec未満。)押圧される毎に、注目文字が、図9Bに示す破線の矢印のうち当該注目文字から伸びる破線の矢印により指定される候補文字に切り替わる。また、方向ボタン201Lが比較的長い時間(例えば、1sec以上。)継続して押圧される場合において、注目文字が一巡するまでは、所定の時間(例えば、1sec。)が経過する毎に、注目文字が、図9Bに示す破線の矢印のうち当該注目文字から伸びる破線の矢印により指定される候補文字に切り替わる。なお、破線の矢印は、左右方向の巡回的な順序を説明するためのものであり、ユーザ名入力画面900に表示されない。
図10Aと図10Bに、破線の矢印により、上下方向の巡回的な順序を示す。具体的には、方向ボタン201Dが比較的短い時間(例えば、1sec未満。)押圧される毎に、注目文字が、図10Aに示す破線の矢印のうち当該注目文字から伸びる破線の矢印により指定される候補文字に切り替わる。また、方向ボタン201Dが比較的長い時間(例えば、1sec以上。)継続して押圧される場合において、注目文字が一巡するまでは、所定の時間(例えば、1sec。)が経過する毎に、注目文字が、図10Aに示す破線の矢印のうち当該注目文字から伸びる破線の矢印により指定される候補文字に切り替わる。また、方向ボタン201Uが比較的短い時間(例えば、1sec未満。)押圧される毎に、注目文字が、図10Bに示す破線の矢印のうち当該注目文字から伸びる破線の矢印により指定される候補文字に切り替わる。また、方向ボタン201Dが比較的長い時間(例えば、1sec以上。)継続して押圧される場合において、注目文字が一巡するまでは、所定の時間(例えば、1sec。)が経過する毎に、注目文字が、図10Bに示す破線の矢印のうち当該注目文字から伸びる破線の矢印により指定される候補文字に切り替わる。なお、破線の矢印は、上下方向の巡回的な順序を説明するためのものであり、ユーザ名入力画面900に表示されない。
次に、本実施形態に係る項目提示装置310の動作について、図11を参照して説明する。図11は、本実施形態に係る項目提示装置310が実行するユーザ名入力制御処理を示すフローチャートである。なお、図11に示すユーザ名入力制御処理は、例えば、項目提示装置310の電源投入後に実行される。
まず、CPU 101は、ユーザ名入力画面900を表示する(ステップS201)。具体的には、CPU 101は、30個の候補文字、デフォルトの注目文字、左右方向の巡回的な順序、ならびに、上下方向の巡回的な順序、などを表す情報(以下「文字総合情報」という。)を、DVD−ROMからRAM 103に読み出し、当該文字総合情報に基づいて、図9A、図9B、図10A、図10Bに示すようなユーザ名入力画面900をモニター112に表示する。なお、デフォルトの注目文字は、現在の注目文字として、RAM 103に記憶される。
CPU 101は、ステップS201の処理を完了すると、決定ボタン202が押圧状態になったか否かを判別する(ステップS202)。
CPU 101は、決定ボタン202が押圧状態になったと判別すると(ステップS202:YES)、現在の注目文字を選択結果に決定する(ステップS203)。具体的には、CPU 101は、RAM 103に記憶されているユーザ名を表す文字列の末尾に、選択結果に決定された文字を追加し、カーソル902の表示位置を1文字分右側にずらす。
CPU 101は、ステップS203の処理を完了すると、選択結果が所定個数に達したか否かを判別する(ステップS204)。具体的には、CPU 101は、RAM 103に記憶されているユーザ名を表す文字列を構成する文字数が、所定個数(例えば、10個)に達したか否かを判別する。
CPU 101は、選択結果が所定個数に達したと判別すると(ステップS204:YES)、ユーザ名入力制御処理を終了する。一方、CPU 101は、選択結果が所定個数に達していないと判別すると(ステップS204:NO)、ステップS202に処理を戻す。
一方、CPU 101は、決定ボタン202が押圧状態になっていないと判別すると(ステップS202:NO)、方向ボタン201L、201R、201D、201Uのうち、いずれかの方向ボタン201が押圧状態になったか否かを判別する(ステップS205)。
CPU 101は、いずれの方向ボタン201も押圧状態になっていないと判別した場合(ステップS205:NO)、ステップS202に処理を戻す。
一方、CPU 101は、いずれかの方向ボタン201が押圧状態になったと判別すると(ステップS205:YES)、押圧状態になった方向ボタン201を表す情報(以下「押圧ボタン情報」という。)と押圧開始時の注目文字とを、RAM 103に記憶する(ステップS206)。
CPU 101は、ステップS206の処理を完了すると、カウンタを起動する(ステップS207)。このカウンタが起動されると、カウンタの値は0にリセットされ、その後、時間経過とともにカウンタの値が増加する。本実施形態においては、カウンタの値は、10msec毎に1増加するものとする。カウンタの値は、例えば、RAM 103に記憶される。なお、方向ボタン201が継続して押圧されている時間は、このカウンタの値により表わされる。
CPU 101は、ステップS207の処理を完了すると、ステップS205において押圧状態になったと判別された方向ボタン201が非押圧状態になったか否かを判別する(ステップS208)。具体的には、CPU 101は、ステップS206においてRAM 103に記憶された押圧ボタン情報により特定される方向ボタン201が、押圧状態でなくなったか否かを判別する。
CPU 101は、方向ボタン201が非押圧状態になったと判別すると(ステップS208:YES)、ステップS202に処理を戻す。
一方、CPU 101は、方向ボタン201が非押圧状態になっていないと判別すると(ステップS208:NO)、カウンタの値が所定値以上であるか否かを判別する(ステップS209)。本実施形態においては、所定値は100であるものとする。つまり、ステップS209においては、ステップS207の処理によりカウンタが起動されてから、10msec×100=1sec以上経過しているか否かが判別される。
CPU 101は、カウンタの値が所定値以上になってはいないと判別すると(ステップS209:NO)、ステップS207に処理を戻す。一方、CPU 101は、カウンタの値が所定値以上になったと判別すると(ステップS209:YES)、押圧状態になった方向ボタン201の種類に応じて、注目文字を切り替える(ステップS210)。
具体的には、以下の(1)〜(4)に示すように、注目文字を切り替える。
(1)押圧状態になった方向ボタン401が方向ボタン401Rである場合、図9Aの破線の矢印に示される巡回的な順序に従って注目文字が切り替えられる。
(2)押圧状態になった方向ボタン401が方向ボタン401Lである場合、図9Bの破線の矢印に示される巡回的な順序に従って注目文字が切り替えられる。
(3)押圧状態になった方向ボタン401が方向ボタン401Dである場合、図10Aの破線の矢印に示される巡回的な順序に従って注目文字が切り替えられる。
(4)押圧状態になった方向ボタン401が方向ボタン401Uである場合、図10Aの破線の矢印に示される巡回的な順序に従って注目文字が切り替えられる。
そして、CPU 101は、RAM 103に記憶されている現在の注目文字を更新するとともに、現在の注目文字をカーソル904により表すユーザ名入力画面900をモニター112に表示する。
CPU 101は、ステップS210の処理を完了すると、押圧開始時の注目文字と現在の注目文字とが一致するか否かを判別する(ステップS211)。具体的には、CPU 101は、ステップS206においてRAM 103に記憶された押圧開始時の注目文字と、ステップS210においてRAM 103に記憶された現在の注目文字と、が一致するか否かを判別する。
CPU 101は、押圧開始時の注目文字と現在の注目文字とが一致しないと判別すると(ステップS211:NO)、ステップS207に処理を戻す。一方、CPU 101は、押圧開始時の注目文字と現在の注目文字とが一致すると判別すると(ステップS211:YES)、方向ボタン401が非押圧状態になるまで待つ(ステップS212)。具体的には、CPU 101は、ステップS206においてRAM 103に記憶された押圧ボタン情報により特定される方向ボタン201が、押圧状態でなくなるまで待つ。CPU 101は、ステップS212の処理を完了すると、ステップS202に処理を戻す。
本実施形態に係る項目提示装置310によれば、項目を切り替えるために押圧されたボタンが継続して押圧されている場合に、項目が一巡するまでは時間経過とともに注目項目が切り替わり、項目が一巡すると注目項目の切り替えが停止される。このため、ユーザは、落ち着いて所望の項目を選択することができる。また、ユーザは、継続した切り替え操作が開始される前にどの項目が注目項目であったかを把握することができる。さらに、本実施形態に係る項目提示装置310によれば、ユーザから決定操作を受け付けた時点における注目項目が、ユーザが所望する項目として決定される。このため、ユーザに確実に所望の項目を選択させることができる。また、本実施形態に係る項目提示装置310においては、押圧された方向キーの種類に対応づけられて、注目項目を切り替える複数の巡回的な順序が用意されている。このため、ユーザは、所望する項目を速やかに注目項目とすることができる。
(第3の実施形態)
上述したように、本発明において、ユーザにより選択される項目は任意である。以下、ユーザにより選択される項目がエディタ画面における横方向の位置(以下、適宜「列」という。)である場合について説明する。
(項目提示装置の説明)
まず、本実施形態に係る項目提示装置320の機能について、図面を参照して説明する。まず、図12を参照して、本実施形態に係る項目提示装置320の構成を説明する。なお、情報処理装置100のDVD−ROMドライブ108に、項目提示制御のプログラムが含まれたゲーム制御用のプログラムが格納されたDVD−ROMが装着されて、電源が投入されると、本実施形態に係る項目提示装置320が構成される。
図12に示すように、項目提示装置320は、提示部301と、受付部302と、切替部303とを備える。
提示部301は、巡回的な順序が定められた複数の項目のうち現在注目されている注目項目をユーザに提示する。提示部301は、例えば、画像処理部107とモニター112とにより構成される。
受付部302は、ユーザからの切替操作を受け付ける。受付部302は、例えば、キーボード113により構成される。
切替部303は、切替操作が継続している間、時間の経過に応じて、巡回的な順序に従って、注目項目を切り替える。切替部303は、例えば、CPU 101とRTC 111とにより構成される。
ここで、切替部303は、注目項目が所定の回数連続して切り替えられた後は、切替操作が継続していても、注目項目を維持する。
次に、本実施形態に係る項目提示装置320により表示される文字列入力画面1300について、図13A、図13B、を参照して説明する。なお、本実施形態においては、キーボード113に配置されている複数の文字キーのいずれかを押圧する操作がユーザにより繰り返され、所望の文字列が入力される。ここで、ユーザにより文字キーが押圧されると、編集対象の列が変更される。本実施形態においては、この列を、ユーザが選択する項目として扱う。
項目提示装置320は、何らかの文字列をユーザに入力させる場合、例えば、図13Aに示す文字列入力画面1300を表示し、ユーザに文字列を入力するように促す。
図13Aに示すように、文字列入力画面1300には、ユーザにより入力された文字列が表示される。なお、文字列入力画面1300は、横方向に最大40文字が表示され、縦方向には無限個数の文字が表示されるものとする。また、文字列入力画面1300には、文字列入力画面1300における編集中の位置を表すカーソル1301などが表示される。なお、編集中の位置は、行と列とにより特定される。
本実施形態においては、文字列入力画面1300における列がユーザにより選択される項目として扱われ、編集中の列、すなわち、カーソル1301が表示されている列が、ユーザにより注目されている項目(以下「注目列」という。)として扱われる。なお、文字列入力画面1300において、注目列は、文字キーが入力される度に、1列ずつ右側(行末側)に移動し、行末(つまり、最後の列)に至ると、行頭(つまり、最初の列)に移動する。つまり、列には、巡回的な順序が定められている。
なお、本実施形態においては、文字キーは、アルファベットの大文字‘A’〜‘Z’、アルファベットの子文字‘a’〜‘z’、‘SP’(スペース)、‘・’(コロン)、‘,’(カンマ)、‘.’(ピリオド)のうちのいずれかを表すキーボード113上のキーとする。
図13Aには、1行目20列目にカーソル1301が表示されている。従って、図13Aに示す例では、注目列は20列目である。
ここで、いずれかの文字キーが比較的短い時間(例えば、1sec未満。)押圧される毎に、注目列が、各列に対応付けられた巡回的な順序に従って切り替わる。具体的には、注目列が行末である場合、注目列は行頭に切り替わり、注目列が行末でない場合、注目列は1つ行末側の列に切り替わる。
また、いずれかの文字キーが比較的長い時間(例えば、1sec以上。)継続して押圧される場合において、注目列が一巡するまでは、所定の時間(例えば、1sec。)が経過する毎に、注目列が、各列に対応付けられた巡回的な順序に従って切り替わり、注目列が一巡した後は、注目列は切り替わらなくなる。図13Bに、‘s’を表す文字キーが継続して押圧された後の文字列入力画面1300を示す。図13Bに示すように、注目列は一巡して停止する。具体的には、注目列が一巡するまでは、押圧された文字キーにより表される‘s’が入力されるとともに注目列が切り替わるが、その後は‘s’が入力されず注目列も切り替わらない。なお、図13Bには、注目列が行末から行頭に切り替わる際に、自動的に改行される例を示しているが、改行されなくてもよい。
次に、本実施形態に係る項目提示装置320の動作について、図14を参照して説明する。図14は、本実施形態に係る項目提示装置320が実行する文字列入力制御処理を示すフローチャートである。なお、図14に示す文字列入力制御処理は、例えば、項目提示装置320に電源が投入され、ユーザから文字列の入力要求を受け付けると実行される。
まず、CPU 101は、文字列入力画面1300を表示する(ステップS301)。具体的には、CPU 101は、列数、デフォルトの注目列、などを表す情報(以下「列総合情報」という。)を、DVD−ROMからRAM 103に読み出し、当該列総合情報に基づいて、図13Aに示すような楽曲選択画面1300をモニター112に表示する。デフォルトの注目列は、現在の注目列として、RAM 103に記憶される。
CPU 101は、ステップS301の処理を完了すると、キーボード113に配置されている複数の文字キーのうち、いずれかの文字キーが押圧状態になったか否かを判別する(ステップS302)。
CPU 101は、いずれの文字キーも押圧状態になっていないと判別した場合(ステップS302:NO)、ステップS302に処理を戻す。
一方、CPU 101は、いずれかの文字キーが押圧状態になったと判別すると(ステップS302:YES)、押圧状態になった文字キーを表す情報(以下「押圧キー情報」という。)と押圧開始時の注目列とを、RAM 103に記憶する(ステップS303)。
CPU 101は、ステップS303の処理を完了すると、カウンタを起動する(ステップS304)。このカウンタが起動されると、カウンタの値は0にリセットされ、その後、時間経過とともにカウンタの値が増加する。本実施形態においては、カウンタの値は、10msec毎に1増加するものとする。カウンタの値は、例えば、RAM 103に記憶される。なお、文字キーが継続して押圧されている時間は、このカウンタの値により表わされる。
CPU 101は、ステップS304の処理を完了すると、ステップS302において押圧状態になったと判別された文字キーが非押圧状態になったか否かを判別する(ステップS305)。具体的には、CPU 101は、ステップS303においてRAM 103に記憶された押圧キー情報により特定される文字キーが、押圧状態でなくなったか否かを判別する。
CPU 101は、文字キーが非押圧状態になったと判別すると(ステップS305:YES)、ステップS302に処理を戻す。
一方、CPU 101は、文字キーが非押圧状態になっていないと判別すると(ステップS305:NO)、カウンタの値が所定値以上であるか否かを判別する(ステップS306)。本実施形態においては、所定値は100であるものとする。つまり、ステップS306においては、ステップS304の処理によりカウンタが起動されてから、10msec×100=1sec以上経過しているか否かが判別される。
CPU 101は、カウンタの値が所定値以上になってはいないと判別すると(ステップS306:NO)、ステップS305に処理を戻す。一方、CPU 101は、カウンタの値が所定値以上になったと判別すると(ステップS306:YES)、注目列に文字を表示して、注目列を切り替える(ステップS307)。具体的には、CPU 101は、RAM 103に記憶されている現在の注目列を、巡回的な順序に従って更新するとともに、当該更新された注目列の該当する行に、押圧状態になった文字キーにより表される文字を表示する。
CPU 101は、ステップS307の処理を完了すると、押圧開始時の注目列と現在の注目列とが一致するか否かを判別する(ステップS308)。具体的には、CPU 101は、ステップS303においてRAM 103に記憶された押圧開始時の注目列と、ステップS307においてRAM 103に記憶された現在の注目列と、が一致するか否かを判別する。
CPU 101は、押圧開始時の注目列と現在の注目列とが一致しないと判別すると(ステップS308:NO)、ステップS304に処理を戻す。一方、CPU 101は、押圧開始時の注目列と現在の注目列とが一致すると判別すると(ステップS308:YES)、文字キーが非押圧状態になるまで待つ(ステップS309)。具体的には、CPU 101は、ステップS303においてRAM 103に記憶された押圧キー情報により特定される文字キーが、押圧状態でなくなるまで待つ。CPU 101は、ステップS309の処理を完了すると、ステップS302に処理を戻す。
本実施形態に係る項目提示装置320によれば、項目を切り替えるために押圧されたキーが継続して押圧されている場合に、項目が一巡するまでは時間経過とともに注目項目が切り替わり、項目が一巡すると注目項目の切り替えが停止される。このため、ユーザは、落ち着いて所望の項目を選択することができる。また、ユーザは、継続した切り替え操作が開始される前にどの項目が注目項目であったかを把握することができる。
(第4の実施形態)
第1〜3の実施形態においては、継続した切り替え操作がなされた場合に、注目項目が巡回的な順序に従って一巡したところで、当該注目項目の切り替えが停止される例を示した。しかし、継続した切り替え操作がなされた場合に、当該注目項目の切り替えが停止される位置はこの例に限られない。
(項目提示装置の説明)
まず、本実施形態に係る項目提示装置320の機能について、図面を参照して説明する。なお、項目提示装置320の構成は、第3の実施形態に係る項目提示装置320の構成と同様である。つまり、本実施形態に係る項目提示装置320は、図12に示すように、提示部301と、受付部302と、切替部303とを備える。
提示部301は、巡回的な順序が定められた複数の項目のうち現在注目されている注目項目をユーザに提示する。提示部301は、例えば、画像処理部107とモニター112とにより構成される。
受付部302は、ユーザからの切替操作を受け付ける。受付部302は、例えば、キーボード113により構成される。
切替部303は、切替操作が継続している間、時間の経過に応じて、巡回的な順序に従って、注目項目を切り替える。切替部303は、例えば、CPU 101とRTC 111とにより構成される。
ここで、切替部303は、注目項目が所定の回数連続して切り替えられた後は、切替操作が継続していても、注目項目を維持する。
そして、提示部301は、複数の項目を、巡回的な順序に従って並べて表示する。
ここで、所定の回数は、注目項目が、当該並べて表示された複数の項目のうちの一端の項目に至った後、他端の項目を経由して、当該一端の項目に至るまでの切り替え回数である。
次に、本実施形態に係る項目提示装置320により表示される文字列入力画面1300について、図13A、図15を参照して説明する。なお、本実施形態においては、キーボード113に配置されている複数の文字キーのいずれかが押圧される操作がユーザにより繰り返されて、所望の文字列が入力される。ここで、ユーザにより文字キーが押圧されると、編集対象の列が変更される。本実施形態においては、この列を、ユーザが選択する項目として扱う。
項目提示装置320は、何らかの文字列をユーザに入力させる場合、例えば、図13Aに示す文字列入力画面1300を表示し、ユーザに文字列を入力するように促す。
図13Aに示すように、文字列入力画面1300には、ユーザにより入力された文字列が表示される。なお、文字列入力画面1300は、横方向に最大40文字が表示され、縦方向には無限数の文字が表示されるものとする。また、文字列入力画面1300には、文字列入力画面1300における編集中の位置を表すカーソル1301などが表示される。なお、編集中の位置は、行と列とにより特定される。
本実施形態においては、文字列入力画面1300における列がユーザにより選択される項目として扱われ、編集中の列、すなわち、カーソル1301が表示されている列が、ユーザにより注目されている項目(以下「注目列」という。)として扱われる。なお、文字列入力画面1300において、注目列は、文字キーが入力される度に、1列ずつ右側(行末側)に移動し、行末(つまり、最後の列)に至ると、行頭(つまり、最初の列)に移動する。つまり、列には、巡回的な順序が定められている。
なお、本実施形態においては、文字キーは、アルファベットの大文字‘A’〜‘Z’、アルファベットの子文字‘a’〜‘z’、‘SP’(スペース)、‘・’(コロン)、‘,’(カンマ)、‘.’(ピリオド)のうちのいずれかを表すキーボード113上のキーとする。
図13Aには、1行目20列目にカーソル1301が表示されている。従って、図13Aに示す例では、注目列は20列目である。
ここで、いずれかの文字キーが比較的短い時間(例えば、1sec未満。)押圧される毎に、注目列が、各列に対応付けられた巡回的な順序に従って切り替わる。具体的には、注目列が行末である場合、注目列は行頭に切り替わり、注目列が行末でない場合、注目列は1つ行末側の列に切り替わる。
また、いずれかの文字キーが比較的長い時間(例えば、1sec以上。)継続して押圧される場合において、注目列が、一巡し、さらに行末(最後の列)に至るまでは、所定の時間(例えば、1sec。)が経過する毎に、注目列は、各列に対応付けられた巡回的な順序に従って切り替わり、その後は、注目列は、切り替わらなくなる。図15に、‘s’を表す文字キーが継続して押圧された後の文字列入力画面1300を示す。図15に示すように、注目列は、一巡し、さらに、行末に至ったところで停止する。具体的には、注目列が、一巡し、さらに、行末に至るまでは、押圧された文字キーにより表される‘s’が入力されるとともに注目列が切り替わり、その後は、‘s’が入力されず、注目列も切り替わらない。なお、図15には、注目列が行末から行頭に切り替わる際に、自動的に改行される例を示しているが、改行されなくてもよい。
次に、本実施形態に係る項目提示装置320の動作について、図16を参照して説明する。図16は、本実施形態に係る項目提示装置320が実行する文字列入力制御処理を示すフローチャートである。なお、図16に示す文字列入力制御処理は、項目提示装置320に電源が投入され、ユーザから文字列の入力要求を受け付けると実行される。
まず、CPU 101は、文字列入力画面1300を表示する(ステップS401)。具体的には、CPU 101は、列数、デフォルトの注目列、などを表す情報(以下「列総合情報」という。)を、DVD−ROMからRAM 103に読み出し、当該列総合情報に基づいて、図13Aに示すような楽曲選択画面1300をモニター112に表示する。デフォルトの注目列は、現在の注目列として、RAM 103に記憶される。
CPU 101は、ステップS401の処理を完了すると、キーボード113に配置されている複数の文字キーのうち、いずれかの文字キーが押圧状態になったか否かを判別する(ステップS402)。
CPU 101は、いずれの文字キーも押圧状態になっていないと判別した場合(ステップS402:NO)、ステップS402に処理を戻す。
一方、CPU 101は、いずれかの文字キーが押圧状態になったと判別すると(ステップS402:YES)、RAM 103に記憶されている一巡フラグの値を0にリセットする(ステップS403)。
CPU 101は、ステップS403の処理を完了すると、押圧状態になった文字キーを表す情報(以下「押圧キー情報」という。)と押圧開始時の注目列とを、RAM 103に記憶する(ステップS404)。
CPU 101は、ステップS404の処理を完了すると、カウンタを起動する(ステップS405)。このカウンタが起動されると、カウンタの値は0にリセットされ、その後、時間経過とともにカウンタの値が増加する。本実施形態においては、カウンタの値は、10msec毎に1増加するものとする。カウンタの値は、例えば、RAM 103に記憶される。なお、文字キーが継続して押圧されている時間は、このカウンタの値により表わされる。
CPU 101は、ステップS405の処理を完了すると、ステップS402において押圧状態になったと判別された文字キーが非押圧状態になったか否かを判別する(ステップS406)。具体的には、CPU 101は、ステップS404においてRAM 103に記憶された押圧キー情報により特定される文字キーが、押圧状態でなくなったか否かを判別する。
CPU 101は、文字キーが非押圧状態になったと判別すると(ステップS406:YES)、ステップS402に処理を戻す。
一方、CPU 101は、文字キーが非押圧状態になっていないと判別すると(ステップS406:NO)、カウンタの値が所定値以上であるか否かを判別する(ステップS407)。本実施形態においては、所定値は100であるものとする。つまり、ステップS407においては、ステップS405の処理によりカウンタが起動されてから、10msec×100=1sec以上経過しているか否かが判別される。
CPU 101は、カウンタの値が所定値以上になってはいないと判別すると(ステップS407:NO)、ステップS406に処理を戻す。一方、CPU 101は、カウンタの値が所定値以上になったと判別すると(ステップS407:YES)、注目列に文字を表示して、注目列を切り替える(ステップS408)。具体的には、CPU 101は、RAM 103に記憶されている現在の注目列を、巡回的な順序に従って更新するとともに、当該更新された注目列の該当する行に、押圧状態になった文字キーにより表される文字を表示する。
CPU 101は、ステップS408の処理を完了すると、押圧開始時の注目列と現在の注目列とが一致するか否かを判別する(ステップS409)。具体的には、ステップS404においてRAM 103に記憶された押圧開始時の注目列と、ステップS408においてRAM 103に記憶された現在の注目列と、が一致するか否かが判別される。
CPU 101は、押圧開始時の注目列と現在の注目列とが一致する判別すると(ステップS409:YES)、RAM 103に記憶されている一巡フラグの値として1をセットする(ステップS410)。
CPU 101は、押圧開始時の注目列と現在の注目列とが一致すると判別した場合(ステップS409:YES)、もしくは、ステップS410の処理を完了した場合、現在の注目列が最終列か否かを判別する(ステップS411)。具体的には、CPU 101は、ステップS408においてRAM 103に記憶された現在の注目列と、RAM 103に記憶されている列数と、が一致するか否かを判別する。
CPU 101は、現在の注目列が最終列ではないと判別すると(ステップS411:NO)、ステップS405に処理を戻す。一方、CPU 101は、現在の注目列が最終列であると判別すると(ステップS411:YES)、RAM 103に記憶されている一巡フラグがセット済みであるか否かを判別する(ステップS412)。
CPU 101は、一巡フラグがセット済みではないと判別すると(ステップS412:NO)、ステップS405に処理を戻す。一方、CPU 101は、一巡フラグがセット済みであると判別すると(ステップS412:YES)、文字キーが非押圧状態になるまで待つ(ステップS413)。具体的には、CPU 101は、ステップS404においてRAM 103に記憶された押圧キー情報により特定される文字キーが、押圧状態でなくなるまで待つ。CPU 101は、ステップS413の処理を完了すると、ステップS402に処理を戻す。
本実施形態に係る項目提示装置320によれば、項目を切り替えるために押圧されたキーが継続して押圧されている場合に、項目が一巡して、さらに、所定の項目に達するまでは、時間経過とともに注目項目が切り替わり、その後、注目項目の切り替えが停止される。このため、ユーザは、落ち着いて所望の項目を選択することができる。
(変形例)
本発明は、上述した第1〜4の実施形態に限られるものではなく、種々の変形が可能である。
第1の実施形態では、選択可能な複数の項目のうち、所定の個数の項目のみが画面に提示される例を示した。しかし、選択可能な複数の項目の全てが画面に提示されてもよい。
第1の実施形態では、複数の項目が、巡回的な順序に従って、縦方向に並んで表示される例を示した。しかし、複数の項目が、巡回的な順序に従って、横方向、斜め方向、或いは、環状に表示されてもよい。
第1〜3の実施形態では、継続した切り替え操作がなされた場合、注目項目が、丁度一巡したところ、つまり、当該切り替え操作が開始されたときに注目項目であった項目に切り替わったところで、切り替え操作が停止される例を示した。しかし、継続した切り替え操作がなされた場合、注目項目が、ほぼ一巡したところ、つまり、当該切り替え操作が開始されたときに注目項目であった項目の前後の項目に切り替わったところで、切り替え操作が停止されてもよい。この場合であっても、ユーザは、切り替え操作の開始時の注目項目を容易に把握できる。
第3、4の実施形態では、項目としての列が、文字キーの押圧操作により切り替えられる例を示した。しかし、項目としての列が、バックスペースキーや、方向キーの操作によって切り替えられる場合にも、本発明を適用することができる。
第1〜4の実施形態では、継続した切り替え操作がなされた場合、一定の時間が経過する毎に、注目項目が切り替えられる例を示した。しかし、注目項目が切り替えられる周期は一定でなくてもよい。例えば、継続した切り替え操作が開始されてから、最初に注目項目が切り替えられるまでの時間よりも、その後、継続して切り替え操作がなされている間に、注目項目が切り替えられる周期を短くすることができる。あるいは、継続して切り替え操作がなされている間に、注目項目が切り替えられる周期が、時間経過と共に短くまたは長くなるようにしてもよい。