(57)【特許請求の範囲】
【請求項１】
仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む円環の位置と、を記憶するキャラクタ記憶部と、
前記記憶されたキャラクタの位置に当該キャラクタを描画し、前記記憶された円環の位置に当該円環を描画した画像を表示する表示部と、
前記表示された画像内をユーザの操作により移動する注目位置を記憶する注目位置記憶部と、
当該ユーザによる決定指示を受け付ける受付部と、
前記記憶された注目位置が、当該円環が描画されている領域内にある場合、当該決定指示が受け付けられると、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力する出力部と、
を備えることを特徴とする指示内容決定装置。
【請求項２】
請求項１に記載の指示内容決定装置であって、
前記キャラクタ記憶部は、当該仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む互いに重複しない複数の円環の位置とを記憶し、
前記表示部は、前記記憶されたキャラクタの位置に当該キャラクタを描画し、前記記憶された複数の円環の位置に当該複数の円環を描画した画像を表示し、
前記出力部は、前記記憶された注目位置が、当該複数の円環のいずれかが描画されている領域内にある場合、当該決定指示が受け付けられると、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力する、
ことを特徴とする指示内容決定装置。
【請求項３】
請求項２に記載の指示内容決定装置であって、
前記表示部は、当該仮想空間に配置された視点から当該キャラクタと当該複数の円環とを見た様子を描画した画像を表示し、
前記表示部は、前記記憶された注目位置が、当該複数の円環のいずれかが描画されている領域内にある場合、当該円環の当該注目位置に重なる場所の当該仮想空間における位置と、当該視点の位置と、の距離に予め大きさが対応付けられるマークを更に描画して表示する、
ことを特徴とする指示内容決定装置。
【請求項４】
請求項３に記載の指示内容決定装置であって、
前記表示部は、前記記憶された注目位置が、当該複数の円環のいずれかが描画されている領域内にある場合、当該領域の色相、彩度、明度のうち少なくとも一つ以上を変化させて表示する、
ことを特徴とする指示内容決定装置。
【請求項５】
請求項１乃至４のいずれか１項に記載の指示内容決定装置であって、
前記記憶された注目位置が、当該キャラクタが描画されている領域内にある場合、当該決定指示が受け付けられると、前記表示部は、
（ａ）当該円環が描画されていれば、当該描画を停止し、
（ｂ）当該円環が描画されていなければ、当該描画を開始する、
ことを特徴とする指示内容決定装置。
【請求項６】
請求項１乃至４のいずれか１項に記載の指示内容決定装置であって、
前記キャラクタ記憶部は、複数のキャラクタのそれぞれについて、当該キャラクタの位置を記憶し、
前記記憶された注目位置が、当該複数のキャラクタのいずれかが描画されている領域内にある場合、当該決定指示が受け付けられると、前記表示部は、前記描画されているキャラクタを囲む円環の描画を開始し、当該キャラクタ以外のキャラクタを囲む円環の描画を停止し、
当該出力される指示内容は、当該円環に囲まれるキャラクタに対するものである、
ことを特徴とする指示内容決定装置。
【請求項７】
請求項２に記載の指示内容決定装置であって、
当該複数の円環は、当該仮想空間の所定の平面内に配置され、共通する中心を有する、
ことを特徴とする指示内容決定装置。
【請求項８】
請求項１乃至６のいずれか１項に記載の指示内容決定装置であって、
前記表示部は、前記記憶されたキャラクタの位置に基づいて、前記記憶された円環の位置を更新し、前記更新した円環の位置に当該円環を表示する、
ことを特徴とする指示内容決定装置。
【請求項９】
請求項１又は２に記載の指示内容決定装置であって、
当該仮想空間は２次元空間であり、
当該円環が描画される位置は、当該仮想空間内における位置である、
ことを特徴とする指示内容決定装置。
【請求項１０】
キャラクタ記憶部、注目位置記憶部、表示部、受付部、出力部を有する指示内容決定装置にて実行される指示内容決定方法であって、
前記キャラクタ記憶部には、仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む円環の位置と、が記憶され、
前記注目位置記憶部には、画像内をユーザの操作により移動する注目位置が記憶され、
前記表示部が、前記記憶されたキャラクタの位置に当該キャラクタを描画し、前記記憶された円環の位置に当該円環を描画した当該画像を表示する表示ステップと、
前記受付部が、当該ユーザによる決定指示を受け付ける受付ステップと、
前記記憶された注目位置が、当該円環が描画されている領域内にある場合、当該決定指示が受け付けられると、前記出力部が、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力する出力ステップと、
を備えることを特徴とする指示内容決定方法。
【請求項１１】
仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む円環の位置と、画像内をユーザの操作により移動する注目位置と、が記憶される記憶部を有するコンピュータに、
表示部が、前記記憶されたキャラクタの位置に当該キャラクタを描画し、前記記憶された円環の位置に当該円環を描画した画像を表示する表示ステップ、
受付部が、当該ユーザによる決定指示を受け付ける受付ステップ、
前記記憶された注目位置が、当該円環が描画されている領域内にある場合、当該決定指示が受け付けられると、出力部が、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力する出力ステップ、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザが選択可能な指示内容と指示対象を分かりやすく提示し、ユーザが指示内容と指示対象を簡単に選択できるようにするために好適な指示内容決定装置、指示内容決定方法、ならびに、プログラムに関する。
【背景技術】
【０００２】
マウスやキーボードを用いたユーザからの指示に応じて画面を切り換えたりスクロールさせたりするユーザインターフェースが知られている。例えば、画面に表示された地図上でマウスをドラッグすると、ドラッグ量に応じたスピードで地図がスクロールして表示されるユーザインターフェースがある。
一方で、仮想空間内におけるゲームにおいて、ユーザ（プレイヤ）から指示内容（いわゆるコマンド）を受け付けるためのユーザインターフェースを分かりやすくする工夫もなされている。例えば特許文献１には、ゲームのストーリ展開に関係するパラメータとして、キャラクタの感情、表情、状態等を表す曖昧な情報を入力できるエンタテインメント装置が開示されている。
【特許文献１】特開２００２−９５８６４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、仮想空間内におけるゲームの内容が多様化したり複雑化したりするにつれて、ユーザが指示すべき指示内容の数や種類も多くなる傾向にあり、ユーザは、指示対象としてユーザが選択できるキャラクタと、ユーザが選択できる指示内容との両方を直観的に把握することが難しかった。
【０００４】
本発明はこのような課題を解決するものであり、ユーザが選択可能な指示内容と指示対象を分かりやすく提示し、ユーザが指示内容と指示対象を簡単に選択できるようにするために好適な指示内容決定装置、指示内容決定方法、ならびに、プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
【０００６】
本発明の第１の観点に係る指示内容決定装置は、キャラクタ記憶部、表示部、注目位置記憶部、受付部、出力部を備える。
キャラクタ記憶部は、仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む円環の位置と、を記憶する。
表示部は、記憶されたキャラクタの位置に当該キャラクタを描画し、記憶された円環の位置に当該円環を描画した画像を表示する。
注目位置記憶部は、表示された画像内をユーザの操作により移動する注目位置を記憶する。
受付部は、当該ユーザによる決定指示を受け付ける。
出力部は、記憶された注目位置が、当該円環が描画されている領域内にある場合、当該決定指示が受け付けられると、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力する。
【０００７】
本発明の指示内容決定装置は、例えば、２次元あるいは３次元の仮想空間におけるゲームを実行するときに、ゲーム内の任意のキャラクタへの指示（コマンド）をユーザから受け付けるためのインターフェースとして用いられる。典型的には、キャラクタとは、ユーザが操作可能なユーザキャラクタである。ただし、コマンドの指示対象は、ゲーム内のキャラクタに限られるわけではない。コマンドの内容は、ゲーム処理自体の進行をポーズしたりセーブしたりするものでもよい。
仮想空間には、コマンドの指示対象となる少なくとも１つ以上のキャラクタが配置される。キャラクタには、所定のコマンドが対応付けられた円又は円環が割り当てられる。円環は、半径の異なる２つの正円又は楕円によって挟まれる領域、つまり“輪”のような形状の領域であり、画面内に例えばキャラクタの周りを囲むように描画される。
画面には、キャラクタの画像と、キャラクタの周りを囲むような円環の画像が含まれる。円環は１つだけでもよいし複数でもよい。複数の円環を配置する場合には、複数の円環を総称して円環群と呼ぶこともある。なお、円環の形状を任意に変更してもよいし、円環の代わりに、例えば１つの正円又は楕円によって囲まれる領域を用いてもよい。
【０００８】
ユーザは、画面内に設定された注目位置を移動できるとともに、決定指示を入力することもできる。決定指示とは、コマンドを決定する旨の指示、あるいは、コマンドの指示対象となるキャラクタ等を決定する旨の指示のことである。ユーザは、例えば、コントローラが有する所定の決定キーの押し操作、キーボードへの所定文字列の入力操作、マウスのクリック操作などによって、指示内容決定装置に決定指示を出すことができる。
指示内容決定装置は、決定指示が出されたときの注目位置に応じて、コマンドを決定する。すなわち、指示内容決定装置は、決定指示が出されたときに、円環が描画されている画像領域内に注目位置がある場合、注目位置がある円環に対応付けられたコマンドを、ユーザによって選択されたコマンドとして決定する。なお、円環が描画されている画像領域内に注目位置がある状態を“アクティブ状態”と呼び、それ以外の状態を“非アクティブ状態”と呼ぶことにする。
例えば、１つのキャラクタに複数の円環を対応付け、それぞれの円環に所定のコマンドを対応付けておく。ユーザは、注目位置を移動することにより、キャラクタの周囲に配置された複数の円環の中からいずれか一つを選択してアクティブ状態に設定できる。そして、ユーザがいずれかの円環をアクティブ状態に設定した上で決定指示を出せば、コマンドが決定される。
【０００９】
本発明によれば、指示内容決定装置は、キャラクタと円環とを関連付けて表示することにより、ユーザが選択可能な指示（コマンド）や指示内容（コマンド内容）を分かりやすく提示することができる。また、ユーザは、どの指示対象にどんな指示を出すことができるのか、一目で把握できるようになる。ユーザは、キャラクタの周囲に描画された円環を選択するという簡単な操作だけでコマンドを選択できるようになる。
【００１０】
キャラクタ記憶部は、当該仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む互いに重複しない複数の円環の位置とを記憶してもよい。
また、表示部は、記憶されたキャラクタの位置に当該キャラクタを描画し、記憶された複数の円環の位置に当該複数の円環を描画した画像を表示してもよい。
そして、出力部は、記憶された注目位置が、当該複数の円環のいずれかが描画されている領域内にある場合、当該決定指示が受け付けられると、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力してもよい。
【００１１】
つまり、指示対象となるキャラクタに対応付けられるコマンドの数や種類は複数であってもよい。一般に、ユーザが選択可能なコマンドの数が多いほど、どのキャラクタにどんなコマンドを出せるのかを把握しづらくなってしまうことが多い。しかし、本発明によれば、指示内容決定装置は、コマンドの数や種類が複数であっても、ユーザが選択可能なコマンドやコマンド内容を分かりやすく提示することができる。また、ユーザは、どの指示対象にどんな指示を出すことができるのか、一目で把握できる。ユーザは、キャラクタの周囲に描画された円環を選択するという簡単な操作だけで、所望のコマンドを選択できる。
なお、一つのキャラクタに対応付けられたコマンドが複数であり、それらのうちユーザが選択できるコマンドが一部のみである場合には、ユーザが選択できないコマンドに対応する円環を表示しないようにすることもできる。
【００１２】
表示部は、当該仮想空間に配置された視点から当該キャラクタと当該複数の円環とを見た様子を描画した画像を表示してもよい。
そして、表示部は、記憶された注目位置が、当該複数の円環のいずれかが描画されている領域内にある場合、当該円環の当該注目位置に重なる場所の当該仮想空間における位置と、当該視点の位置と、の距離に予め大きさが対応付けられるマークを更に描画して表示してもよい。
【００１３】
例えば仮想空間を３次元とすると、画面には、仮想空間に配置される視点の位置から、視線の方向に、所定の投影面へ、仮想空間を投影した画像が描画される。例えば、キャラクタを立体的な形状を有するオブジェクトとする。指示内容決定装置は、オブジェクトを視点の位置から視点の方向に所定の投影面へ投影した画像を生成する。また、指示内容決定装置は、生成した画像に円環の画像を描画する。なお、キャラクタと同様に、円環も立体的な形状を有するオブジェクトとしてもよい。
さらに、画面には、コマンドの指示対象を指すためのマーク（指示マーク）の画像も描画される。ユーザは、コントローラ、キーボード、マウスなどを操作して、指示マークの位置を自由に移動することができる。画面内の指示マークの位置が、上述の注目位置になる。
指示マークの形状は任意であり、画面内の位置を一意に指定できるものであれば良いが、指示マークの大きさは予め決められている。すなわち、画面内における指示マークの位置に対応する、仮想空間における指示マークの位置と、視点の位置と、の距離が長いほど、指示マークは小さく描画され、距離が短いほど、指示マークは大きく描画される。言い換えれば、指示マークが指している仮想空間内の場所の奥行きに応じて、指示マークの大きさが変わる。
指示内容決定装置は、決定指示が出されたときの指示マークの位置に応じて、コマンドを決定する。すなわち、指示内容決定装置は、決定指示が出されたときに、円環が描画されている画像領域内に指示マークがある場合、指示マークがある円環に対応付けられたコマンドを、ユーザによって選択されたコマンドとして決定する。
例えば、１つのキャラクタに複数の円環を対応付け、それぞれの円環に所定のコマンドを対応付けておく。ユーザは、指示マークを移動することにより、キャラクタの周囲に配置された複数の円環の中からいずれか一つを選択してアクティブ状態に設定できる。そして、ユーザが指示マークを用いて円環をアクティブ状態に設定した上で決定指示を出せば、コマンドが決定される。
本発明によれば、指示内容決定装置は、ユーザが選択可能なコマンドを分かりやすく提示することができ、且つ、コマンドが与えられる対象（指示対象）を分かりやすく提示することができる。また、ユーザは、どの指示対象にどんな指示を出すことができるのか、一目で把握できる。ユーザは、キャラクタの周囲に描画された円環を選択するという簡単な操作だけでコマンドを選択できる。更に、指示マークは画面の奥行きに応じて大きさが変わるので、仮想空間内における方向に関係するコマンドの内容を、より分かりやすく提示できるようになる。
【００１４】
表示部は、記憶された注目位置が、当該複数の円環のいずれかが描画されている領域内にある場合、当該領域の色相、彩度、明度のうち少なくとも一つ以上を変化させて表示してもよい。
【００１５】
すなわち、アクティブ状態に設定された円環を強調して描画することにより、指示マークが画面内のどこにあるのか、もし決定指示が出されればどのコマンドを出すことになるのか、といった情報を、ユーザに的確に知らせることができる。従って、ユーザが選択可能な指示内容を分かりやすく提示できるという効果や、ユーザが指示内容を簡単に選択できるようになるという効果が、一層増す。アクティブ状態に設定された円環を強調して描画するためには、例えば、周囲に比べてより明るく表示したり、相対的に目立つ色彩に変えたりすればよい。
【００１６】
記憶された注目位置が、当該キャラクタが描画されている領域内にある場合、当該決定指示が受け付けられると、表示部は、
（ａ）当該円環が描画されていれば、当該描画を停止し、
（ｂ）当該円環が描画されていなければ、当該描画を開始する、
ようにしてもよい。
【００１７】
例えば、決定指示には、指示対象となるキャラクタを決定するキャラクタ決定指示と、決定したキャラクタへのコマンドを決定するコマンド決定指示と、の二種類がある。ユーザは、まずキャラクタ決定指示によりキャラクタを決定し、次にコマンド決定指示によりコマンドを決定する。いずれの決定指示も、所定の決定キーの押し操作、キーボードへの所定文字列の入力操作、マウスのクリック操作などである。ユーザは、特にキャラクタ決定指示用の操作とコマンド決定指示用の操作とを使い分けるわけではなく、同じ操作であっても、キャラクタが選択状態か非選択状態かによって、あるいは、円環がアクティブ状態か非アクティブ状態かによって、指示内容決定装置側で内部的に区別される。
本発明では、キャラクタ決定指示の前後において、あるいは、コマンド決定指示の前後において、円環を描画したり描画しなかったりする。
まず、キャラクタがユーザによって選択されていない場合、円環は表示されない。もし、キャラクタが選択状態に設定されると、選択状態のキャラクタに対応付けられた円環が描画される。また、キャラクタが選択状態から非選択状態に設定されると、描画されていた円環が消える（描画されない）。
また、キャラクタが選択された後、コマンドが決定されていない間、選択状態のキャラクタに対応付けられた円環が描画される。もし、コマンドが選択されると、描画されていた円環が消える（描画されない）。
従って、本発明によれば、キャラクタが選択されているか否か、あるいは、コマンドが決定されたか否か、といった情報を、ユーザに的確に知らせることができる。そして、ユーザが選択可能な指示内容を分かりやすく提示できるという効果や、ユーザが指示内容を簡単に選択できるようになるという効果が、一層増す。
【００１８】
キャラクタ記憶部は、複数のキャラクタのそれぞれについて、当該キャラクタの位置を記憶してもよい。
また、記憶された注目位置が、当該複数のキャラクタのいずれかが描画されている領域内にある場合、当該決定指示が受け付けられると、表示部は、描画されているキャラクタを囲む円環の描画を開始し、当該キャラクタ以外のキャラクタを囲む円環の描画を停止してもよい。
そして、当該出力される指示内容は、当該円環に囲まれるキャラクタに対するものであってもよい。
【００１９】
本発明では、コマンドの指示対象となる複数のキャラクタが仮想空間に配置されていてもよい。そして、キャラクタ決定指示の前後において、あるいは、コマンド決定指示の前後において、円環を描画したり描画しなかったりする。
まず、いずれのキャラクタもユーザによって選択されていない場合、円環は表示されない。もし、いずれかのキャラクタが選択状態に設定されると、選択状態に設定されたキャラクタに対応付けられた円環が描画される。また、キャラクタが選択状態から非選択状態に設定されると、描画されていた円環が消える。
また、いずれかのキャラクタが選択された後、コマンドが決定されていない間、選択状態のキャラクタに対応付けられた円環が描画される。もし、いずれかのコマンドが選択されると、描画されていた円環が消える。
従って、本発明によれば、どのキャラクタが選択されているのか、あるいは、どのコマンドが決定されたのか、といった情報を、ユーザに的確に知らせることができる。そして、ユーザが選択可能な指示内容を分かりやすく提示できるという効果や、ユーザが指示内容を簡単に選択できるようになるという効果が、一層増す。
【００２０】
当該複数の円環は、当該仮想空間の所定の平面内に配置され、共通する中心を有してもよい。
【００２１】
つまり、キャラクタの周囲には、キャラクタに対応付けられた複数の円環が同心円状に描画される。従って、どの円環にどのキャラクタに対するコマンドが対応付けられているのかが容易に掴める。
【００２２】
表示部は、記憶されたキャラクタの位置に基づいて、記憶された円環の位置を更新し、更新した円環の位置に当該円環を表示してもよい。
【００２３】
つまり、円環はキャラクタを囲むように配置されればよく、円環の中心位置を画面の上下左右にずらして描画してもよい。
例えば、ユーザはコントローラ等を操作して仮想空間の所定範囲内でキャラクタの位置を変更でき、コマンド内容が「指示マークがある方向にキャラクタを移動する」などというように仮想空間内における方向が関係しているとする。このとき、画面内の円環の中心位置は、現在キャラクタが仮想空間のどこにあるのかに応じて、上下左右にずれて描画される。例えば、仮想空間内において、画面の左側方向に壁があるためキャラクタがそれ以上進めないのであれば、円環は右寄りにずれて描画される。ユーザは、円環のずれ具合を見れば、移動可能な向きを容易に把握できる。
本発明によれば、指示内容決定装置は、より相応しいと推定されるコマンドをユーザに分かりやすく提示することができる。ユーザは、的確な指示内容を簡単に選択できるようになる。
【００２４】
当該仮想空間は２次元空間であり、
当該円環が描画される位置は、当該仮想空間内における位置であってもよい。
【００２５】
上述のように本発明の指示内容決定装置は、例えば仮想空間におけるゲームを実行するときにコマンドをユーザから受け付けるためのインターフェースとして用いることができる。仮想空間を２次元空間とすると、画面には、仮想空間全体のうち仮想空間内に設定される表示領域の画像が描画される。この画像には、表示領域内の仮想空間の様子と、同じく仮想空間に配置されるキャラクタと指示マークが含まれる。指示内容決定装置が扱う仮想空間は、３次元に限らず２次元でもよい。
【００２６】
本発明のその他の観点に係る指示内容決定方法は、キャラクタ記憶部、注目位置記憶部、表示部、受付部、出力部を有する指示内容決定装置にて実行される指示内容決定方法であって、表示ステップ、受付ステップ、出力ステップを備える。
キャラクタ記憶部には、仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む円環の位置と、が記憶される。
注目位置記憶部には、画像内をユーザの操作により移動する注目位置が記憶される。
表示ステップは、表示部が、記憶されたキャラクタの位置に当該キャラクタを描画し、記憶された円環の位置に当該円環を描画した当該画像を表示する。
受付ステップは、受付部が、当該ユーザによる決定指示を受け付ける。
出力ステップは、記憶された注目位置が、当該円環が描画されている領域内にある場合、当該決定指示が受け付けられると、出力部が、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力する。
【００２７】
本発明によれば、キャラクタと円環とを関連付けて表示することにより、ユーザが選択可能な指示（コマンド）や指示内容（コマンド内容）を分かりやすく提示することができる。また、ユーザは、どの指示対象にどんな指示を出すことができるのか、一目で把握できるようになる。ユーザは、キャラクタの周囲に描画された円環を選択するという簡単な操作だけでコマンドを選択できるようになる。
【００２８】
本発明のその他の観点に係るプログラムは、コンピュータを、キャラクタ記憶部、表示部、注目位置記憶部、受付部、出力部として機能させる。
キャラクタ記憶部は、仮想空間内に配置されるキャラクタの位置と、当該キャラクタを囲む円環の位置と、を記憶する。
表示部は、記憶されたキャラクタの位置に当該キャラクタを描画し、記憶された円環の位置に当該円環を描画した画像を表示する。
注目位置記憶部は、表示された画像内をユーザの操作により移動する注目位置を記憶する。
受付部は、当該ユーザによる決定指示を受け付ける。
出力部は、記憶された注目位置が、当該円環が描画されている領域内にある場合、当該決定指示が受け付けられると、当該円環に予め対応付けられた指示内容を、当該ユーザによる決定結果として出力する。
【００２９】
本発明によれば、コンピュータを上述のように動作する指示内容決定装置として機能させることができる。
また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記憶媒体に記録することができる。
上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記憶媒体は、コンピュータとは独立して配布・販売することができる。
【発明の効果】
【００３０】
本発明によれば、ユーザが選択可能な指示内容と指示対象を分かりやすく提示し、ユーザが指示内容と指示対象を簡単に選択できるようにすることができる。
【発明を実施するための最良の形態】
【００３１】
（実施形態１）
本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム用の情報処理装置を利用して本発明が実現される実施形態を説明するが、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【００３２】
図１は、プログラムを実行することにより、本発明の指示内容決定装置の機能を果たす典型的な情報処理装置１００の概要構成を示す模式図である。以下、本図を参照して説明する。
【００３３】
情報処理装置１００は、ＣＰＵ（Central Processing Unit）１０１と、ＲＯＭ（Read Only Memory）１０２と、ＲＡＭ（Random Access Memory）１０３と、インターフェース１０４と、コントローラ１０５と、外部メモリ１０６と、ＤＶＤ−ＲＯＭ（Digital Versatile Disk - Read Only Memory）ドライブ１０７と、画像処理部１０８と、音声処理部１０９と、ＮＩＣ（Network Interface Card）１１０と、を備える。
【００３４】
ゲーム用のプログラムおよびデータを記憶したＤＶＤ−ＲＯＭをＤＶＤ−ＲＯＭドライブ１０７に装着して、情報処理装置１００の電源を投入することにより、当該プログラムが実行され、本実施例の指示内容決定装置が実現される。
【００３５】
ＣＰＵ  １０１は、情報処理装置１００全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。また、ＣＰＵ  １０１は、レジスタ（図示せず）という高速アクセスが可能な記憶域に対してＡＬＵ（Arithmetic Logic Unit）（図示せず）を用いて加減乗除等の算術演算や、論理和、論理積、論理否定等の論理演算、ビット和、ビット積、ビット反転、ビットシフト、ビット回転等のビット演算などを行うことができる。さらに、マルチメディア処理対応のための加減乗除等の飽和演算や、三角関数等、ベクトル演算などを高速に行えるように、ＣＰＵ  １０１自身が構成されているものや、コプロセッサを備えて実現するものがある。
【００３６】
ＲＯＭ  １０２には、電源投入直後に実行されるＩＰＬ（Initial Program Loader）が記録され、これが実行されることにより、ＤＶＤ−ＲＯＭに記録されたプログラムをＲＡＭ  １０３に読み出してＣＰＵ  １０１による実行が開始される。また、ＲＯＭ  １０２には、情報処理装置１００全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータが記録される。
【００３７】
ＲＡＭ  １０３は、データやプログラムを一時的に記憶するためのもので、ＤＶＤ−ＲＯＭから読み出したプログラムやデータ、その他ゲームの進行やチャット通信に必要なデータが保持される。また、ＣＰＵ  １０１は、ＲＡＭ  １０３に変数領域を設け、当該変数に格納された値に対して直接ＡＬＵを作用させて演算を行う処理や、ＲＡＭ  １０３に格納された値を一旦レジスタに格納してからレジスタに対して演算を行い、演算結果をメモリに書き戻す、などの処理を行う。
【００３８】
インターフェース１０４を介して接続されたコントローラ１０５は、ユーザがサッカーゲームやトランプゲームなどのゲーム実行の際に行う操作入力を受け付ける。
【００３９】
インターフェース１０４を介して着脱自在に接続された外部メモリ１０６には、対戦ゲーム等のプレイ状況（過去の成績等）を示すデータ、ゲームの進行状態を示すデータ、ネットワーク対戦の場合のチャット通信のログ（記録）のデータなどが書き換え可能に記憶される。ユーザは、コントローラ１０５を介して指示入力を行うことにより、これらのデータを適宜外部メモリ１０６に記録することができる。
【００４０】
ＤＶＤ−ＲＯＭドライブ１０７に装着されるＤＶＤ−ＲＯＭには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データが記録される。ＣＰＵ  １０１の制御によって、ＤＶＤ−ＲＯＭドライブ１０７は、これに装着されたＤＶＤ−ＲＯＭに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはＲＡＭ  １０３等に一時的に記憶される。
【００４１】
画像処理部１０８は、ＤＶＤ−ＲＯＭから読み出されたデータをＣＰＵ  １０１や画像処理部１０８が備える画像演算プロセッサ（図示せず）によって加工処理した後、これを画像処理部１０８が備えるフレームメモリ（図示せず）に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され画像処理部１０８に接続されるモニター（図示せず）へ出力される。これにより、各種の画像表示が可能となる。
【００４２】
画像演算プロセッサは、２次元の画像の重ね合わせ演算やアルファブレンディング等の透過演算、各種の飽和演算を高速に実行できる。
【００４３】
また、仮想３次元空間に配置され、各種のテクスチャ情報が付加されたポリゴン情報を、Ｚバッファ法によりレンダリングして、所定の視点位置から仮想３次元空間に配置されたポリゴンを所定の視線の方向へ俯瞰したレンダリング画像を得る演算の高速実行も可能である。
【００４４】
さらに、ＣＰＵ  １０１と画像演算プロセッサが協調動作することにより、文字の形状を定義するフォント情報にしたがって、文字列を２次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画したりすることが可能である。
【００４５】
また、対戦ゲームの画像やトランプゲームのカードの画像などの情報をＤＶＤ−ＲＯＭに用意しておき、これをフレームメモリに展開することによって、対戦の様子や手札などを画面に表示することができるようになる。
【００４６】
音声処理部１０９は、ＤＶＤ−ＲＯＭから読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ（図示せず）から出力させる。また、ＣＰＵ  １０１の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカから出力させる。
【００４７】
音声処理部１０９では、ＤＶＤ−ＲＯＭに記録された音声データがＭＩＤＩデータである場合には、これが有する音源データを参照して、ＭＩＤＩデータをＰＣＭデータに変換する。また、ＡＤＰＣＭ（Adaptive Differential Pulse Code Modulation）形式やOgg Vorbis形式等の圧縮済音声データである場合には、これを展開してＰＣＭデータに変換する。ＰＣＭデータは、そのサンプリング周波数に応じたタイミングでＤ／Ａ（Digital/Analog）変換を行って、スピーカに出力することにより、音声出力が可能となる。
【００４８】
ＮＩＣ  １１０は、情報処理装置１００をインターネット等のコンピュータ通信網（図示せず）に接続するためのものであり、ＬＡＮ（Local Area Network）を構成する際に用いられる１０ＢＡＳＥ−Ｔ／１００ＢＡＳＥ−Ｔ規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ＩＳＤＮ（Integrated Services Digital Network）モデム、ＡＤＳＬ（Asymmetric Digital Subscriber Line）モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、これらとＣＰＵ  １０１との仲立ちを行うインターフェース（図示せず）により構成される。
【００４９】
このほか、情報処理装置１００は、ハードディスク等の大容量外部記憶装置を用いて、ＲＯＭ  １０２、ＲＡＭ  １０３、外部メモリ１０６、ＤＶＤ−ＲＯＭドライブ１０７に装着されるＤＶＤ−ＲＯＭ等と同じ機能を果たすように構成してもよい。
【００５０】
次に、本実施形態の指示内容決定装置２００が行う処理について説明する。本実施形態では、指示内容決定装置２００は、仮想空間におけるゲームを実行しながら、ゲームについてのユーザ（プレイヤ）の指示内容を決定する処理を行う。
【００５１】
図２は、本実施形態の指示内容決定装置２００の機能的な構成を説明するための図である。指示内容決定装置２００は、キャラクタ記憶部２０１、表示部２０２、注目位置記憶部２０３、受付部２０４、出力部２０５を備える。
【００５２】
図３は、指示内容決定装置２００に接続されたモニターに表示される画面３００の構成例である。画面３００には、３次元仮想空間に配置されたキャラクタオブジェクト（以下、単に“キャラクタ”と呼ぶ）３１０の画像と、キャラクタ３１０の位置を中心とし所定平面上に配置される円環群３２０の画像と、ユーザの指示（以下、「コマンド」と呼ぶ）が出される対象を指す指示マーク３３０の画像とが含まれる。
【００５３】
画面３００は、画像処理部１０７とＣＰＵ  １０１が協働して、仮想空間内に配置される視点の位置から、仮想空間内における視線の向きに、仮想空間内に配置される投影面に仮想空間を投影して描画した画像である。ＣＰＵ  １０１は、視点の位置、視線の向き、投影面の位置を、例えばユーザからの指示により、変更することができる。
【００５４】
キャラクタ３１０は、ユーザからのコマンドにより、仮想空間内における位置を変えることができる。つまり、ユーザは、コントローラ１０５を操作してキャラクタ３１０にコマンドを出すことにより、キャラクタ３１０を仮想空間内で移動させることができる。キャラクタ３１０は、典型的には、プレイヤが操作するプレイヤキャラクタである。
【００５５】
コマンドの内容（指示内容）は、キャラクタ３１０の位置を移動するものに限られず、例えば、歩く、走る、振り向く、弾を装填する、銃を構える、銃を撃つ、などといったように、キャラクタ３１０に所定の行動を指示する内容でもよい。また、コマンドの内容は、キャラクタ３１０の所持アイテムや属性情報などを表示させたり、ゲームを中断（ポーズ）・保存（セーブ）させたりするなど、任意の内容にすることができる。なお、コマンドの決定方法については後述する。
【００５６】
円環群３２０は、所定平面上に配置される１つ以上の円又は円環から構成される。円環は、典型的には、半径の異なる２つの正円又は楕円によって挟まれる領域、つまり“輪”のような形状の領域であり、画面内に例えばキャラクタの周りを囲むように描画される。
【００５７】
本実施形態では、円環群３２０は、第１円環３２１、第２円環３２２、第３円環３２３、第４円環３２４の４つから構成される。ただし、円環の数は自由に変更して良い。所定平面は、典型的には、上述の投影面である。円環群３２０は、画面３００内におけるキャラクタ３１０が描画される位置に配置される。例えば、円環群３２０は、キャラクタ３１０の足元付近や胴体付近に配置される。第１円環３２１は正確には“円環”ではなく“円”と表現すべきであるが、本発明では第１円環３２１乃至第４円環３２４をすべて同等に取り扱うため、説明の簡略化のため、これらをすべて“円環”と呼ぶことにする。
【００５８】
それぞれの円環３２１乃至３２４の輪郭の形状は、例えば、画面３００の左右方向に長軸、画面３００の上下方向に短軸を持つ楕円の形状である。
【００５９】
なお、所定平面を、仮想空間内に設定される水平面と平行に、キャラクタ３１０の代表点（例えば足元付近や胴体付近などを示す点）と交わるように配置される任意の平面とする実施形態を採用してもよい。
【００６０】
第１円環３２１は、円環群３２０のうち最も内側にあり、長軸の長さがＲＡ１，短軸の長さがＲＢ１の楕円によって囲まれる領域である。
第２円環３２２は、長軸の長さがＲＡ１，短軸の長さがＲＢ１の楕円と、長軸の長さがＲＡ２（＞ＲＡ１），短軸の長さがＲＢ２（＞ＲＢ１）の楕円と、に挟まれる領域である。
第３円環３２３は、長軸の長さがＲＡ２，短軸の長さがＲＢ２の楕円と、長軸の長さがＲＡ３（＞ＲＡ２），短軸の長さがＲＢ３（＞ＲＢ２）の楕円と、に挟まれる領域である。
第４円環３２４は、長軸の長さがＲＡ３，短軸の長さがＲＢ３の楕円と、長軸の長さがＲＡ４（＞ＲＡ３），短軸の長さがＲＢ４（＞ＲＢ３）の楕円と、に挟まれる領域である。
【００６１】
本実施形態では、それぞれの楕円の中心（長軸と短軸の交点）は同じであり、同心円状に並んでいる。ただし、後述するように、それぞれの楕円の中心の位置を異なるようにしてもよい。
【００６２】
それぞれの円環３２１乃至３２４の輪郭を表す楕円は、互いに重なって描画されることはないものとする。つまり、画面３００内でそれぞれの円環が占める領域には重なる部分がないものとする。
【００６３】
円環３２１乃至３２４には、それぞれ、所定のコマンドが予め対応付けられる。円環とコマンドとの対応付けを示す情報は、外部メモリ１０６等に予め記憶される。あるいは、ＣＰＵ  １０１は、ゲームの進行に応じて、円環とコマンドとの対応付けを更新できるようにしてもよい。
【００６４】
例えばＣＰＵ  １０１は、円環と、円環に対応付けられるコマンドと、の組み合わせ（コマンド体系）を、次のように定義することができる。
【００６５】
第２円環３２２・・・キャラクタ３１０を後ろに振り向かせるコマンド。
第３円環３２３・・・キャラクタ３１０を歩かせるコマンド。
第４円環３２４・・・キャラクタ３１０を走らせるコマンド。
【００６６】
なお、上記コマンド体系は一例であり、円環に対応付けるコマンドを自由に変更しても良いことは言うまでもない。また、上記の第１円環３２１のように、コマンドを割り当てない円環を設けてもよい。
【００６７】
次に、指示内容決定装置２００の各部の構成について説明する。
キャラクタ記憶部２０１は、仮想空間内に配置されるキャラクタ３１０の位置を示すキャラクタ位置情報２５１と、キャラクタ３１０を囲む互いに重複しない円環から構成される円環群３２０の位置を示す円環位置情報２５２と、各円環に対応付けられるコマンドを示すコマンド情報２５３と、を記憶する。ＣＰＵ  １０１とＲＡＭ  １０３が協働してキャラクタ記憶部２０１として機能する。
【００６８】
キャラクタ３１０の位置は、図４（ａ）に示すように、１個の動径と２個の偏角を用いた極座標系を用いて、キャラクタ３１０の代表点の座標値（ｒ，θ，φ）で表される。例えば、キャラクタ３１０の重心点の座標値が、キャラクタ３１０の代表点の位置を示す座標値となる。ただし、座標系はこれに限られるものではなく、例えば互いに直交する３軸による直交座標系を用いてもよい。また、仮想空間の全体を表現するグローバル座標系（ワールド座標系）と、オブジェクトごとのローカル座標系（ボディ座標系）とを別々に設定して座標計算等を行う構成を採用してもよい。
【００６９】
円環群３２０の位置は、図４（ｂ）に示すように、画面３００内に定義される２次元座標系を用いた座標値で表される。例えば、円環群３２０に含まれる円環のいずれかを示す楕円の中心点の座標値が、円環群３２０の位置を示す座標値となる。あるいは、円環群３２０の各円環を示す楕円の中心点の座標値が、各円環の位置を示す座標値となる。
【００７０】
なお、円環群３２０を投影面内ではなく仮想空間内の任意の平面内に配置する実施形態を採用する場合には、円環群３２０の位置を、キャラクタ３１０の位置と同様、仮想空間に定義されるワールド座標系による座標値等を用いて表せばよい。
【００７１】
キャラクタ記憶部２０１は、円環位置情報２５２として、円環群３２０に含まれる円環のそれぞれの位置を別々に記憶してもよい。
【００７２】
コマンド情報２５３は、例えば図４（ｃ）に示すように、それぞれの円環とコマンドとの対応付けを表す情報である。
【００７３】
表示部２０２は、キャラクタ位置情報２５１が示すキャラクタ３１０の位置に、キャラクタ３１０を表す所定の画像データを描画し、円環位置情報２５２が示す円環群３２０の位置に、円環群３２０を表す所定の画像データを描画した画像３００をモニターに表示する。ＣＰＵ  １０１とＲＡＭ  １０３と画像処理部１０８が協働して表示部２０２として機能する。
【００７４】
ＣＰＵ  １０１は、仮想空間内に配置される視点の位置から、仮想空間内における視線の向きに、仮想空間内に配置される投影面に仮想空間を投影した画像３００を、画像処理部１０８にフレームメモリへ描画させ、描画した画像３００をモニターに表示させる。キャラクタ３１０と円環群３２０の画像データは、予め外部メモリ１０６に記憶されており、ＣＰＵ  １０１が随時画像データを読み出して画像処理部１０８に描画させる。
【００７５】
なお、本実施形態では、画像処理部１０８は、描画した画像３００中、キャラクタ３１０の位置が中央付近に配置されるように、画像３００を描画する。ただし、画像処理部１０８は、キャラクタ３１０を画像３００の中央付近に描画しなくてもよい。
【００７６】
注目位置記憶部２０３は、表示された画像３００内をユーザの操作により移動する指示マーク３３０の位置（注目位置）を示す注目位置情報２５５を記憶する。ＣＰＵ  １０１とＲＡＭ  １０３が協働して注目位置記憶部２０３として機能する。
【００７７】
本実施形態では、画像処理部１０８は、注目位置情報２５５が示す位置に指示マーク３３０用の所定の画像データを画像３００に描画する。指示マーク３３０の画像データも予め外部メモリ１０６に記憶されている。
【００７８】
受付部２０４は、ユーザによる決定指示を受け付ける。ＣＰＵ  １０１とコントローラ１０５が協働して受付部２０４として機能する。決定指示には、コマンドを決定する旨の決定指示（コマンド決定指示）と、指示対象となるキャラクタ等を決定する旨の決定指示（キャラクタ決定指示）とがあるが、詳細は後述する。
【００７９】
決定指示とは、例えばコントローラ１０５に備え付けられた所定のキー（十字キー、決定キーなど）のユーザの押し操作による指示入力である。インターフェース１０４にキーボードやマウス等の他の入力装置が接続されている場合、キーボードの所定キーの押し操作、あるいは、マウスのクリック操作などでもよい。
【００８０】
出力部２０５は、受付部２０４が決定指示を受け付けると、決定結果である出力データを出力する。つまり、ＣＰＵ  １０１は、ユーザからの決定指示を受け付けたとき、注目位置情報２５５に記憶された注目位置に円環３２１乃至３２４のいずれかが描画されている場合、その描画されている円環に予め対応付けられた指示内容を、ユーザによる決定結果として出力する。ＣＰＵ  １０１が出力部２０５として機能する。
【００８１】
具体的には、まずＣＰＵ  １０１は、例えば図３に示す画面においてユーザがコントローラ１０５を操作して指示マーク３３０の位置を変更し、図５（ａ）に示すように第２円環３２２の領域内に指示マーク３３０を移動させると、第２円環３２２の領域を明るく強調して表示する。
【００８２】
すなわち、ＣＰＵ  １０１は、画面３００内において、円環３２１乃至３２４が示す領域内のいずれかに指示マーク３３０の位置が配置されている場合、指示マーク３３０の位置が含まれる円環の色相・彩度・明度のうち少なくともいずれか一つ以上を変化させることにより、指示マーク３３０の位置が含まれる円環を強調して表示する。
【００８３】
以下の説明において、ある円環が示す領域内に指示マーク３３０の位置が含まれており、ユーザからのコマンドを受け付けている状態を、その円環が“アクティブ状態”にある、と表現し、それ以外の状態を“非アクティブ状態”と表現する。
【００８４】
ＣＰＵ  １０１は、アクティブ状態にある円環を強調して表示する。よって、ユーザは、それぞれの円環がアクティブ状態にあるか否か、あるいは、指示内容決定装置２００が現在コマンドを受け付けている状態か否かを、簡単に見分けることができる。
【００８５】
更に、円環がアクティブ状態にあるときにユーザから決定指示を受け付けると、ＣＰＵ  １０１は、アクティブ状態にある円環に対応付けられたコマンドを、ユーザによって選択されたコマンドとして決定する。
【００８６】
例えば、各円環とコマンドとの対応付けが図４（ｃ）に示す内容であり、図５（ａ）に示すように第２円環３２２がアクティブ状態であるときに、ユーザから決定指示を受け付けると、ＣＰＵ  １０１は、ユーザによって選択されたコマンドが「キャラクタ３１０を振り向かせるコマンド」であると決定する。
【００８７】
そして、ＣＰＵ  １０１は、決定したコマンドに従って画像処理部１０８に画像３００を描画させる。例えば図５（ａ）に示す画面３００において、円環３２２がアクティブ状態にあるときに決定指示を受け付けると、ＣＰＵ  １０１は、指示マーク３３０がある位置に向かってキャラクタ３１０を振り向かせる画像を画像処理部１０８に描画させる。描画された画像３００はモニターに出力される。
【００８８】
なお、アクティブ状態にある円環に対応付けられたコマンドが、ユーザによって選択されたコマンドであると決定された後、決定したコマンドに従って画面３００を更新中である場合、すなわち、決定したコマンドに従った所定の処理が終了していない場合、ＣＰＵ  １０１は、その円環（又はキャラクタ３１０に対応付けられたすべての円環）を非アクティブ状態に設定し、新たなコマンドを受け付けないようにしてもよい。そして、決定したコマンドに従った所定の処理が終了した後、再び円環をアクティブ状態に設定してもよい。
【００８９】
ある円環Ｘに対応するコマンドの決定指示を受け付けない場合、ＣＰＵ  １０１は、画像処理部１０８に画面３００への円環Ｘの描画を停止させ、画面３００に円環Ｘの画像を表示しないようにしてもよい。つまりこの場合、画面３００には、図６（ａ）に示すように、受け付けないコマンドに対応する円環（この場合第２円環３２２）部分が中抜きになった円環群３２０が描画される。
【００９０】
また、ＣＰＵ  １０１は、キャラクタ３１０へのコマンドを決定してから所定時間が経過するまでの間、そのキャラクタ３１０への次の決定指示を受け付けないようにしてもよい。そして、所定時間が経過した後、そのキャラクタ３１０への次の決定指示を受け付けるようにしてもよい。
【００９１】
キャラクタ３１０への次の決定指示を受け付けない場合、ＣＰＵ  １０１は、画像処理部１０８に画面３００への円環群３２０の描画を停止させ、画面３００に円環群３２０の画像を表示しないようにしてもよい。つまりこの場合、画面３００には、図６（ｂ）に示すように、キャラクタ３１０に対応する円環群３２０が描画されない。
【００９２】
例えば、図５（ａ）に示すように第２円環３２２の領域内に指示マーク３３０が配置されている状態で、キャラクタ３１０に対する決定指示をユーザから受け付けると、ＣＰＵ  １０１は、キャラクタ３１０を所定方向に振り向かせるコマンドを受け付けたと判別する。ＣＰＵ  １０１は、キャラクタ３１０を一瞬で振り向かせるのではなく、徐々に振り向かせる。ＣＰＵ  １０１は、キャラクタ３１０の振り向きモーションの最中には、キャラクタ３１０に対する新たな決定指示を受け付けない。決定指示を受け付けない間、画面３００には図６（ａ）に示すように中抜きになった円環群３２０が表示されるか、あるいは、図６（ｂ）に示すように円環群３２０が表示されない。キャラクタ３１０の振り向きモーションが終わると、ＣＰＵ  １０１は、図５（ｂ）に示すように円環群３２０を表示し、キャラクタ３１０に対する新たな決定指示を受け付け可能にする（アクティブ状態にする）。
【００９３】
次に、指示内容決定装置２００の上記各部が実行する指示内容決定処理について、図７のフローチャートを用いて説明する。
【００９４】
まず、ＣＰＵ  １０１は、円環群３２０に含まれる円環のうち、現在受け付け可能なコマンドに対応する円環を画像処理部１０８に表示させる（ステップＳ７０１）。
【００９５】
例えば、キャラクタ３１０に対して出すことのできるコマンドとして、図４（ｃ）に示す３種類のコマンドがあり、これらすべてのコマンドのうちのどれもが現在キャラクタ３１０に出すことができるコマンドである場合、ＣＰＵ  １０１は、図３に示すように、第１円環３２１，第２円環３２２，第３円環３２３のすべてを画面３００に表示させる。あるいは、上記のすべてのコマンドのうち現在キャラクタ３１０に出すことができないコマンドがある場合、ＣＰＵ  １０１は、図６（ａ）又は図６（ｂ）に示すように、キャラクタ３１０に出すことができないコマンドに対応する円環を除く円環を画面３００に表示させる。
【００９６】
ＣＰＵ  １０１は、画面３００内において、それぞれの円環が示す領域内に指示マーク３３０があるか否かを判別する（ステップＳ７０２）。
【００９７】
それぞれの円環が示す領域内に指示マーク３３０がないと判別した場合（ステップＳ７０２；ＮＯ）、ＣＰＵ  １０１は、それぞれの円環を非アクティブ状態に設定し（ステップＳ７０３）、ステップＳ７０１に戻る。
【００９８】
一方、それぞれの円環のうちのいずれかが示す領域内に指示マーク３３０があると判別した場合（ステップＳ７０２；ＹＥＳ）、ＣＰＵ  １０１は、指示マーク３３０がある円環をアクティブ状態に設定する（ステップＳ７０４）。
【００９９】
次にＣＰＵ  １０１は、アクティブ状態に設定されている円環について、ユーザから決定指示を受け付けたか否かを判別する（ステップＳ７０５）。
【０１００】
例えば、ある円環が占める領域内に指示マーク３３０が配置され、その円環がアクティブ状態に設定されているとき、コントローラ１０５の所定キーの押し動作が検出された場合、ＣＰＵ  １０１は、ユーザから決定指示を受け付けたと判別し、それ以外の場合、決定指示を受け付けていないと判別する。
【０１０１】
決定指示を受け付けていないと判別した場合（ステップＳ７０５；ＮＯ）、ステップＳ７０１に戻り、上記の処理を繰り返す。一方、決定指示を受け付けたと判別した場合（ステップＳ７０５；ＹＥＳ）、ＣＰＵ  １０１は、指示マーク３３０がある円環、言い換えれば、アクティブ状態に設定されている円環に対応付けられたコマンドを、ユーザによるコマンドとして決定する（ステップＳ７０６）。
【０１０２】
そしてＣＰＵ  １０１は、ステップＳ７０６で決定したコマンドを、決定結果として出力する（ステップＳ７０７）。
【０１０３】
例えば、図３において、第２円環３２２がアクティブ状態に設定されているときにユーザから決定指示を受け付けると、ＣＰＵ  １０１は、「キャラクタ３１０を振り向かせる」コマンドを受け付けた旨を、決定結果として出力する。ＣＰＵ  １０１は、この決定結果に従い、キャラクタ３１０を所定方向に振り向かせる画像を画像処理部１０８に描画させ、モニターに出力させる。
また例えば、第３円環３２３がアクティブ状態に設定されているときにユーザから決定指示を受け付けると、ＣＰＵ  １０１は、「キャラクタ３１０を歩かせる」コマンドを受け付けた旨を、決定結果として出力する。ＣＰＵ  １０１は、この決定結果に従い、キャラクタ３１０を所定方向に歩かせる画像を画像処理部１０８に描画させ、モニターに出力させる。
また例えば、第４円環３２４がアクティブ状態に設定されているときにユーザから決定指示を受け付けると、ＣＰＵ  １０１は、「キャラクタ３１０を走らせる」コマンドを受け付けた旨を、決定結果として出力する。ＣＰＵ  １０１は、この決定結果に従い、キャラクタ３１０を所定方向に走らせる画像を画像処理部１０８に描画させ、モニターに出力させる。
また例えば、第１円環３２１，第２円環３２２，第３円環３２３のいずれも非アクティブ状態に設定されているときにユーザから決定指示を受け付けると、ＣＰＵ  １０１は、キャラクタ３１０に対していずれのコマンドも出されていないと判別する。なお、いずれの円環も非アクティブ状態に設定されている場合には、決定指示を受け付けないようにしてもよい。
【０１０４】
本実施形態によれば、ユーザが選択可能な指示内容（コマンド）の選択肢を分かりやすく提示できるインターフェースをユーザに提供することができる。ユーザは、現在選択可能な指示内容がどれであるかを容易に把握でき、所望の指示内容を簡単に選択することができる。
【０１０５】
（実施形態２）
次に、本発明のその他の実施形態について説明する。本実施形態では、画面３００内での位置に応じて指示マーク３３０の大きさを変える点で、上述の実施形態と異なる。以下詳述する。
【０１０６】
図８は、仮想空間に配置されたキャラクタ３１０や円環群３２０などの位置関係を表す図である。
【０１０７】
表示部２０２は、上述のように、仮想空間８００に配置された視点８１０から視線の向き８２０にキャラクタ３１０を見た様子を仮想的な投影面８３０に投影して描画した画像３００を表示する。投影面８３０には、キャラクタ３１０に対応する投影画像８５１、円環群３２０の画像、指示マーク３３０の画像などが描画される。
【０１０８】
また、表示部２０２は、画像３００において、注目位置情報２５５に記憶された指示マーク３３０の位置（注目位置）に、円環群３２０に含まれるいずれかの円環が描画されている場合、その円環のうち注目位置に重なる場所の仮想空間における位置と、視点の位置と、の距離Ｄに予め対応付けられる描画サイズ（大きさ）Ｓで、指示マーク３３０を描画して表示する。
【０１０９】
例えば図８において、指示マーク３３０は、第４円環３２４が占める領域に描画されている。描画された指示マーク３３０の仮想空間８００における位置は、位置８６０である。距離Ｄは、視点８１０の位置と位置８６０との距離である。
【０１１０】
ＣＰＵ  １０１は、例えば図９（ａ）に示すように、指示マーク３３０の描画サイズＳを、距離Ｄに対して単調減少させる。ただし、ＣＰＵ  １０１は、描画サイズＳを、ゼロでない所定の最小値Ｓｍｉｎから所定の最大値Ｓｍａｘまでの範囲内で変化させることとする。
【０１１１】
あるいはＣＰＵ  １０１は、例えば図９（ｂ）に示すように、距離Ｄの値の範囲と描画サイズＳとを対応付けたテーブルを外部メモリ１０６等に予め記憶しておき、ＣＰＵ  １０１は、距離Ｄに対応する描画サイズＳを取得し、取得した描画サイズＳで指示マーク３３０を画像処理部１０８に描画させる。
【０１１２】
図１０（ａ）と（ｂ）は、描画サイズＳを変化させて指示マーク３３０を表示した画像３００の例である。図１０（ａ）では、指示マーク３３０は、画面３００に描画されている第４円環３２４の下方に描画されている。すなわち、画像３００内での指示マーク３３０の位置に対応する、仮想空間８００内での指示マーク３３０の位置は、視点８１０に比較的近い場所である。一方、図１０（ｂ）では、指示マーク３３０は、画面３００に描画されている第４円環３２４の上方に描画されている。すなわち、画像３００内での指示マーク３３０の位置に対応する、仮想空間８００内で指示マーク３３０の位置は、視点８１０に比較的遠い場所である。
【０１１３】
ＣＰＵ  １０１は、指示マーク３３０の仮想空間８００における位置と視点８１０の位置との距離が近いほど、描画サイズＳを大きくして指示マーク３３０を描画させ、指示マーク３３０の仮想空間８００における位置と視点８１０の位置との距離が遠いほど、描画サイズＳを小さくして指示マーク３３０を描画させる。
【０１１４】
なお、指示内容決定処理の流れは上述の実施形態と同様であるため、説明を省略する。
【０１１５】
例えば、それぞれの円環３２１乃至３２４とコマンドとの対応付けが図４（ｃ）に示す内容であり、指示マーク３３０が図１０（ａ）に示すように第４円環３２４が占める領域の下方の位置にあるとする。ユーザから決定指示を受け付けると、ＣＰＵ  １０１は、「キャラクタ３１０を視点８１０のある向きに走らせる」コマンドを受け付けた旨を、決定結果として出力する。ＣＰＵ  １０１は、キャラクタ３１０を視点８１０のある向きに走らせる画像を画像処理部１０８に描画させる。つまり、あたかもユーザに近づいてくるかように走っている画像になる。
【０１１６】
例えば、それぞれの円環３２１乃至３２４とコマンドとの対応付けが図４（ｃ）に示す内容であり、指示マーク３３０が図１０（ｂ）に示すように第４円環３２４が占める領域の上方の位置にあるとする。ユーザから決定指示を受け付けると、ＣＰＵ  １０１は、「キャラクタ３１０を視点８１０のある向きの逆向きに走らせる」コマンドを受け付けた旨を、決定結果として出力する。ＣＰＵ  １０１は、キャラクタ３１０を視点８１０のある向きの逆向きに走らせる画像を画像処理部１０８に描画させる。つまり、あたかもユーザから離れていくように走っている画像になる。
【０１１７】
なお、図１１に示すように、円環群３２０がキャラクタ３１０を囲む様子を立体的に表現するようにしてもよい。つまり、図１２に示すように、キャラクタ３１０と円環群３２０を共に３次元の仮想空間８００内に配置されるオブジェクトとして、円環群３２０をキャラクタ３１０を囲むように仮想空間８００に配置する。画像処理部１０８は、キャラクタ３１０と円環群３２０を投影面８３０に投影した画像８５１，８５２を生成する。図１１，１２の例では、キャラクタ３１０の下半身は円環群３２０の後ろに隠れるが、キャラクタ３１０の上半身は円環群３２０より前に描画される。このようにすれば、指示マーク３３０の大きさを変えて遠近感を出す演出効果を更に高めることができる。
【０１１８】
本実施形態によれば、ユーザが選択可能な指示内容（コマンド）の選択肢を分かりやすく提示でき、且つ、遠近感を分かりやすく表現できるインターフェースをユーザに提供することができる。ユーザは、現在選択可能な指示内容がどれであるかを容易に把握でき、所望の指示内容を簡単に選択することができる。特に、指示内容が仮想空間内における指示方向を含む内容である場合には、ユーザは、指示方向の区別を容易に掴みつつ、指示内容を決定することができる。
【０１１９】
（実施形態３）
次に、本発明のその他の実施形態について説明する。本実施形態では、ユーザによる決定指示の前後で円環群３２０を表示したり表示しなかったり制御する点で、上述の各実施形態と異なる。以下詳述する。
【０１２０】
図１３は、本実施形態の指示内容決定処理を説明するためのフローチャートである。
図１４（ａ）乃至（ｄ）は、モニターに表示される画面３００の構成例である。
【０１２１】
本実施形態では、キャラクタ３１０には選択状態と非選択状態とがある。選択状態はユーザによるコマンドの指示対象として選択されている状態であり、非選択状態はそれ以外の状態（コマンドの指示対象として選択されていない状態）である。例えば、ユーザがコントローラ１０５を操作して指示マーク３３０の位置を移動し、画像３００内のキャラクタ３１０が表示されている領域に指示マーク３３０を表示させた状態で決定指示を入力すると、そのキャラクタ３１０は選択状態に設定される。一旦選択状態に設定された後、キャラクタ３１０が表示されている領域に指示マーク３３０を表示させた状態で再び決定指示を入力すると、選択状態が解除され、非選択状態になる。選択状態か非選択状態かを決定するための決定指示を、キャラクタ決定指示と呼ぶ。
【０１２２】
まず、ＣＰＵ  １０１は、キャラクタ３１０がユーザによって選択されているか否か（選択状態か非選択状態か）を判別する（ステップＳ１３０１）。
【０１２３】
キャラクタ３１０が選択されていない場合（ステップＳ１３０１；ＮＯ）、現在表示中の円環があればその円環を画面３００から消去し（ステップＳ１３０２）、ステップＳ１１０１に戻る。
【０１２４】
例えば図１４（ａ）に示すように、まだユーザからキャラクタ３１０を選択する旨のキャラクタ決定指示を受け付けていないときには、円環群３２０は表示されない。
【０１２５】
キャラクタ３１０が選択されている場合（ステップＳ１３０１；ＹＥＳ）、ＣＰＵ  １０１は、円環群３２０に含まれる円環のうち、現在受け付け可能なコマンドに対応する円環を画像処理部１０８に表示させる（ステップＳ１３０３）。
【０１２６】
ＣＰＵ  １０１は、画面３００内における各円環の位置と指示マーク３３０の位置とを取得し、それぞれの円環について、円環が占める領域内に指示マーク３３０がある場合にはその円環をアクティブ状態に設定し、そうでなければ非アクティブ状態に設定して（ステップＳ１３０４）、画像処理部１０８に画面３００を表示させる。
【０１２７】
例えば図１４（ｂ）に示すように、キャラクタ３１０の描画されている画面領域内に指示マーク３３０があるときに、ユーザからキャラクタ３１０を選択する旨のキャラクタ決定指示を受け付けると、キャラクタ３１０の位置に円環群３２０が表示される。
【０１２８】
そして、図１４（ｃ）に示すように、ある円環（この図では第２円環３２２）が占める画像領域内に指示マーク３３０があると、円環はアクティブ状態に設定され、例えば強調して表示される。
【０１２９】
このとき、現在キャラクタ３１０に出すことができないコマンドがある場合には、ＣＰＵ  １０１は、円環群３２０に含まれる円環のうち、出すことができないコマンドに対応する円環を画像処理部１０８に表示させない。例えば、指示内容決定装置２００にて実行されるゲームにおいて、「銃を発射するコマンド」があり、１回発射すると発射後所定時間以内は再び発射できない場合、ＣＰＵ  １０１は、発射後所定時間以内には「銃を発射するコマンド」に対応する円環を画像処理部１０８に表示させない。所定時間が経過すると、ＣＰＵ  １０１は「銃を発射するコマンド」に対応する円環を画像処理部１０８に表示させる。なお、一度コマンドを出した後、所定時間が経過するまで再びコマンドを出すことができないのであれば、「銃を発射する」以外のコマンドでもよいことは言うまでもない。
【０１３０】
次にＣＰＵ  １０１は、ユーザからコマンドを選択する旨の決定指示（コマンド決定指示）を受け付けたか否かを判別する（ステップＳ１３０５）。
【０１３１】
例えば、ある円環が占める領域内に指示マーク３３０が配置され、その円環がアクティブ状態に設定されているとき、コントローラ１０５の所定キーの押し動作が検出された場合、ＣＰＵ  １０１は、ユーザからコマンド決定指示を受け付けたと判別し、それ以外の場合、コマンド決定指示を受け付けていないと判別する。
【０１３２】
コマンド決定指示を受け付けていないと判別した場合（ステップＳ１３０５；ＮＯ）、ステップＳ１３０１に戻り、上記の処理を繰り返す。一方、コマンド決定指示を受け付けたと判別した場合（ステップＳ１３０５；ＹＥＳ）、ＣＰＵ  １０１は、指示マーク３３０がある円環（アクティブ状態に設定されている円環）に対応付けられたコマンドを、ユーザによるコマンドとして決定する（ステップＳ１３０６）。
【０１３３】
ＣＰＵ  １０１は、ステップＳ１３０６で決定したコマンドを、決定結果として出力する（ステップＳ１３０７）。
【０１３４】
そして、ＣＰＵ  １０１は、図１４（ｄ）に示すように、画面３００から円環群３２０を画像処理部１０８に消去させる（ステップＳ１３０８）。ＣＰＵ  １０１は、決定したコマンドに対応する処理を実行する。
【０１３５】
上記の指示内容決定処理は、キャラクタ３１０に対する１回の指示内容を決定する処理である。指示内容決定装置２００の各部は、上記の指示内容決定処理を繰り返し実行する。
【０１３６】
本実施形態によれば、ユーザが選択可能な指示内容の選択肢を分かりやすく提示できるインターフェースをユーザに提供することができる。ユーザは、現在選択可能な指示内容がどれであるかを容易に把握でき、所望の指示内容を簡単に選択することができる。特に、キャラクタ３１０が非選択状態であるときには円環群３２０が表示されないので、画面３００をシンプルに構成することができる。また、キャラクタ３１０を選択状態にすると、現在キャラクタ３１０に出すことができるコマンドに対応する円環だけが表示されるので、コマンドの選択が容易になり、操作性の良いインターフェースとなる。
【０１３７】
（実施形態４）
次に、本発明のその他の実施形態について説明する。本実施形態では、円環群３２０に含まれるそれぞれの円環の中心位置を変更できる点で、上述の各実施形態と異なる。つまり、円環群３２０に含まれるそれぞれの円環の境界を表す楕円は同心円でなくてもよい。以下詳述する。
【０１３８】
図１５は、本実施形態における画面３００の構成例である。ここでは、理解を容易にするため、画面３００内に、画面右側に向かって正の向きとなるＸ軸と、画面下側に向かって正の向きとなるＹ軸を定義する。
【０１３９】
表示部２０２は、キャラクタ位置情報２５１に記憶されたキャラクタ３１０の位置に基づいて、円環位置情報２５２に記憶された円環群３２０の位置を更新し、更新した円環群３２０の位置に円環群３２０を表示する。あるいは、表示部２０２は、円環群３２０に含まれる円環のそれぞれについて、キャラクタ位置情報２５１に記憶されたキャラクタ３１０の位置に基づいて、円環位置情報２５２に記憶された円環の位置を更新し、更新した円環の位置に円環を表示する。
【０１４０】
具体的には、まずＣＰＵ  １０１は、キャラクタ記憶部２０１からキャラクタ位置情報２５１を読み出してキャラクタ３１０の位置を取得する。
【０１４１】
次にＣＰＵ  １０１は、キャラクタ３１０が、取得したキャラクタ３１０の位置から仮想空間において移動可能な領域を決める。
【０１４２】
例えば図１５では、画面左側の仮想空間内に壁オブジェクト１５０１が、画面上側（つまり奥）の仮想空間内に壁オブジェクト１５０２が、それぞれ配置され、キャラクタ３１０はこれらの壁より先に移動できない。キャラクタ３１０が移動可能な領域は、床オブジェクト１５０３が配置されている領域のうち、境界線１５０４より画面右側、且つ、境界線１５０５より画面下側、ということになる。
【０１４３】
ＣＰＵ  １０１は、画面３００における、キャラクタ３１０が移動可能な領域の分布の偏りを求める。
【０１４４】
例えば図１５では、キャラクタ３１０が移動可能な領域の分布は、画面右下側に偏っている。
【０１４５】
分布の偏りの求め方の一例として、ＣＰＵ  １０１は、画面３００の中心位置１５５０と、キャラクタ３１０が移動可能な領域を表す画像領域の重心位置１５６０と、を結ぶ方向ベクトル１５７０の向きと大きさ（長さ）を計算する。そして、ＣＰＵ  １０１は、計算された向きに、計算された大きさだけ、分布が偏っていると推定する。
【０１４６】
そしてＣＰＵ  １０１は、求めた分布の偏りに応じて円環群３２０の位置を移動し、移動後の位置で円環位置情報２５２を更新する。あるいは、ＣＰＵ  １０１は、求めた分布の偏りに応じてそれぞれの円環の位置を移動し、移動後の位置で円環位置情報２５２を更新する。
【０１４７】
例えば図１５では、ＣＰＵ  １０１は、第１円環３２１をＸ軸方向へＸ１，Ｙ軸方向へＹ１だけ移動し（以下、移動量［Ｘ１，Ｙ１］と表す。）、第２円環３２２を移動量［Ｘ２，Ｙ２］だけ移動し、第３円環３２３を移動量［Ｘ３，Ｙ３］だけ移動し、第４円環３２４を移動量［Ｘ４，Ｙ４］だけ移動する。
【０１４８】
画面３００の中心位置１５５０の座標を（ＸＣ，ＹＣ）とすると、ベクトル（Ｘ１−ＸＣ，Ｙ１−ＹＣ）、ベクトル（Ｘ２−ＸＣ，Ｙ２−ＹＣ）、ベクトル（Ｘ３−ＸＣ，Ｙ３−ＹＣ）、ベクトル（Ｘ４−ＸＣ，Ｙ４−ＹＣ）、いずれも、ベクトル１５７０の向きと等しいか、あるいは、ほぼ等しいことが望ましい。
【０１４９】
また、０≦｜Ｘ１｜≦｜Ｘ２｜≦｜Ｘ３｜≦｜Ｘ４｜、且つ、０≦｜Ｙ１｜≦｜Ｙ２｜≦｜Ｙ３｜≦｜Ｙ４｜、とすることが望ましい。ただし、記号“｜ｘ｜”は、値ｘの絶対値を表す。
【０１５０】
本実施形態によれば、ユーザが選択可能な指示内容（コマンド）の選択肢を分かりやすく提示できるインターフェースをユーザに提供することができる。ユーザは、現在選択可能な指示内容がどれであるかを容易に把握でき、所望の指示内容を簡単に選択することができる。特に、指示内容が仮想空間内における指示方向を含む内容である場合には、ユーザは、指示内容として相応しいと推定される指示方向を容易に掴みつつ、指示内容を決定することができる。
【０１５１】
（実施形態５）
次に、本発明のその他の実施形態について説明する。本実施形態では、ユーザがコマンドを出すことができるキャラクタ３１０が１つだけでなく複数であってもよい。以下詳述する。
【０１５２】
図１６（ａ）乃至（ｄ）は、モニターに表示される画面３００の構成例である。
【０１５３】
図１６（ａ）に示すように、画面３００には複数のキャラクタ３１０（本図ではキャラクタ３１０Ａ，３１０Ｂ，３１０Ｃの３つ）が配置され、ユーザはそれぞれのキャラクタ３１０に対してコマンドを出すことができる。
【０１５４】
キャラクタ３１０には、それぞれ、円環群３２０（本図では円環群３２０Ａ，３２０Ｂ，３２０Ｃ）が対応付けられる。すなわち、ユーザは、各々のキャラクタ３１０に対して、円環に対応付けられた所定のコマンドを出すことができる。
【０１５５】
いずれかのキャラクタ３１０がユーザによって選択されると（選択状態に設定されると）、ＣＰＵ  １０１は、選択状態に設定されたキャラクタ３１０に対応付けられた円環群３２０の画像を画像処理部１０８にフレームメモリへ描画させる一方、その他の非選択状態に設定されているキャラクタ３１０に対応付けられた円環群３２０の画像を描画させない。すなわち、図１６（ｂ）に示すように、選択状態に設定されたキャラクタ３１０Ａに対応付けられた円環群３２０Ａの画像が描画され、その他の円環群３２０Ｂ，３２０Ｃは描画されない。
【０１５６】
選択状態に設定されたキャラクタ３１０に対応付けられた円環群３２０に含まれる円環のいずれかが占める領域内に指示マーク３３０がある場合、ＣＰＵ  １０１は、指示マーク３３０がある円環をアクティブ状態に設定する。すなわち、図１６（ｃ）に示すように、アクティブ状態に設定された円環が他の円環に比べて強調して表示される。
【０１５７】
アクティブ状態に設定されているとき、ユーザによる決定指示を受け付けると、ＣＰＵ  １０１は、アクティブ状態に設定されている円環に対応付けられたコマンドを、ユーザによるコマンドとして決定する。
【０１５８】
そして、ＣＰＵ  １０１は、アクティブ状態から非アクティブ状態に変更し、円環群３２０の画像を消去する。
【０１５９】
その後、新たなコマンドを受け付ける場合には、ＣＰＵ  １０１は、再び円環群３２０Ａ，３２０Ｂ，３２０Ｃを描画させる。以上の処理が繰り返される。
【０１６０】
本実施形態によれば、ユーザが選択可能な指示内容（コマンド）の選択肢、及び、ユーザが選択可能な指示対象（キャラクタ）の選択肢を分かりやすく提示できるインターフェースをユーザに提供することができる。ユーザは、現在選択可能な指示内容がどれであるかを容易に把握でき、所望の指示内容を簡単に選択することができる。また、ユーザは、どの指示対象についてどの指示内容を選択できるのかを簡単に把握することができる。
【０１６１】
（実施形態６）
次に、本発明のその他の実施形態について説明する。本実施形態は、上記実施形態５の変形例である。
【０１６２】
図１７（ａ）乃至（ｄ）は、モニターに表示される画面３００の構成例である。
【０１６３】
図１７（ａ）に示すように、画面３００には複数のキャラクタ３１０（本図ではキャラクタ３１０Ａ，３１０Ｂ，３１０Ｃの３つ）が配置され、ユーザはそれぞれのキャラクタ３１０に対してコマンドを出すことができる。
【０１６４】
本実施形態では、キャラクタ３１０が描画されている領域の近傍に指示マーク３３０が移動すると、ＣＰＵ  １０１は、そのキャラクタ３１０に対応付けられている円環群３２０を表示させる。キャラクタ３１０が描画されている領域の近傍から離れるように指示マーク３３０を移動すると、ＣＰＵ  １０１は、表示されていた円環群３２０を消去する。
【０１６５】
また、円環群３２０を表示させている状態を、キャラクタ３１０の選択状態とする。すなわち、ＣＰＵ  １０１は、キャラクタ３１０が描画されている領域の近傍に指示マーク３３０がある場合、キャラクタ３１０を選択状態に設定し、それ以外の場合、キャラクタ３１０を非選択状態に設定する。本実施形態では、指示対象のキャラクタ３１０を選択する旨のキャラクタ決定指示（例えばユーザによるクリック操作など）が不要であり、指示マーク３３０を移動するだけでキャラクタ３１０の選択状態／非選択状態が決まる。
【０１６６】
例えば図１７（ａ）に示すように、指示マーク３３０の位置がキャラクタ３１０Ｂの近傍にあるとき、ＣＰＵ  １０１は、キャラクタ３１０Ｂに対応付けられた円環群３２０Ｂのみを表示する。
【０１６７】
同様に、図１７（ｂ）に示すように、指示マーク３３０の位置がキャラクタ３１０Ａの近傍にあるとき、ＣＰＵ  １０１は、キャラクタ３１０Ａに対応付けられた円環群３２０Ａのみを表示する。
【０１６８】
同様に、指示マーク３３０の位置がキャラクタ３１０Ｃの近傍にあるとき、ＣＰＵ  １０１は、キャラクタ３１０Ｃに対応付けられた円環群３２０Ｃのみを表示する。指示マーク３３０の位置がキャラクタ３１０Ａ，３１０Ｂ，３１０Ｃのいずれの近傍にもないとき、ＣＰＵ  １０１は、いずれの円環群３２０Ａ，３１０Ｂ，３２０Ｃも表示しない。
【０１６９】
選択状態に設定されたキャラクタ３１０に対応付けられた円環群３２０に含まれる円環のいずれかが占める領域内に指示マーク３３０がある場合、ＣＰＵ  １０１は、図１７（ｃ）に示すように、指示マーク３３０がある円環をアクティブ状態に設定する。
【０１７０】
アクティブ状態に設定されているとき、ユーザによる決定指示を受け付けると、ＣＰＵ  １０１は、アクティブ状態に設定されている円環に対応付けられたコマンドを、ユーザによるコマンドとして決定する。
【０１７１】
そして、ＣＰＵ  １０１は、アクティブ状態から非アクティブ状態に変更し、図１７（ｄ）に示すように、円環群３２０の画像を消去する。
【０１７２】
本実施形態によれば、ユーザは、所望の指示内容を更に簡単に選択することができるようになる。
【０１７３】
（実施形態７）
次に、本発明のその他の実施形態について説明する。本実施形態の指示内容決定装置２００にて実行されるゲームは、２次元（平面）の仮想空間におけるゲームである。
【０１７４】
図１８は、モニターに表示される画面３００の構成例である。画面３００は、画像処理部１０８とＣＰＵ  １０１が協働して、２次元仮想空間の一部である表示領域を描画した画像である。
【０１７５】
本図に示すように、画面３００には複数のキャラクタ３１０（本図ではキャラクタ３１０Ａ，３１０Ｂの２つ）が配置されるが、ユーザは、所定のキャラクタ３１０に対してコマンドを出すことができる。典型的には、キャラクタ３１０Ａがプレイヤキャラクタ、キャラクタ３１０Ｂが敵キャラクタであり、プレイヤはプレイヤキャラクタに対してのみコマンドを出すことができる。すなわち、円環群３２０を対応付けたキャラクタ３１０と、円環群３２０を対応付けないキャラクタ３１０とを混在させてもよい。
【０１７６】
例えばプレイヤキャラクタが画面３００の上端、下端、左端、右端に近づくと、表示領域が移動する。つまり、画面３００がスクロール表示される。
【０１７７】
ＣＰＵ  １０１は、円環群３２０と指示マーク３３０を２次元仮想空間と同じ平面内に配置した画像を、画像処理部１０８に描画させる。
【０１７８】
ＣＰＵ  １０１は、上述の各実施形態と同様、画面３００内において、円環３２１乃至３２４が示す領域内のいずれかに指示マーク３３０が配置されている場合、指示マーク３３０の位置が含まれる円環の色相・彩度・明度のうち少なくともいずれか一つ以上を変化させることにより、指示マーク３３０の位置が含まれる円環を強調して表示する。
【０１７９】
また、いずれかの円環がアクティブ状態にあるときにユーザから決定指示を受け付けると、ＣＰＵ  １０１は、アクティブ状態にある円環に対応付けられたコマンドを、ユーザによって選択されたコマンドとして決定する。コマンドは、アクティブ状態にある円環が対応付けられたキャラクタ３１０に対するコマンドである。
【０１８０】
それぞれの円環３２１乃至３２４は、楕円ではなく正円によって挟まれる（又は囲まれる）領域として定義されてもよい。また、例えば、正円によって囲まれる領域を第１円環３２１とし、第１円環を表す正円とその外側の楕円とに挟まれる領域を第２円環３２２とする、というように、楕円と正円の両方を用いてそれぞれの円環の形状を定義してもよい。
【０１８１】
図１９は、モニターに表示される画面３００の他の構成例である。本図に示すように、円環群３２０は複数ではなく１つの円環３２１のみから構成されてもよい。
【０１８２】
本図では、プレイヤはプレイヤキャラクタに対してのみコマンドを出すことができるが、円環群３２０は各敵キャラクタを囲むように配置される。それぞれの円環３２１（図中では３２１Ｂ１乃至３２１Ｂ４と記載）には、例えば、「プレイヤキャラクタに敵キャラクタへ攻撃させる」というコマンドが対応付けられる。
【０１８３】
それぞれのキャラクタ３１０の円環３２１に対応付けられるコマンドは同じでもよいし異なってもよい。例えば、図１９において、円環群３２０Ｂ１には「キャラクタ３１０Ａにキャラクタ３１０Ｂ１へ攻撃させる」というコマンドを対応付け、円環群３２０Ｂ４には「キャラクタ３１０Ａにキャラクタ３１０Ｂ４へ話しかける」というコマンドを対応付ける、といったように、円環３２１に対応付けるコマンドを変えてもよい。
【０１８４】
本実施形態のように、本発明は、３次元仮想空間だけでなく２次元仮想空間に適用することが可能である。
【０１８５】
なお、上記各実施形態で扱っている３次元仮想空間のうち画面３００に表される画像部分を２次元仮想空間とみなすことで、指示内容決定装置２００が２次元仮想空間におけるゲームを実行するものと考えることもできる。
【０１８６】
本発明は、上述した実施形態に限定されず、種々の変形及び応用が可能である。また、上述した実施形態の各構成要素を自由に組み合わせることも可能である。
【０１８７】
指示内容決定装置２００を装置の全部又は一部として動作させるためのプログラムを、メモリカード、ＣＤ−ＲＯＭ、ＤＶＤ、ＭＯ（Magneto Optical disk）などのコンピュータ読み取り可能な記録媒体に格納して配布し、これを別のコンピュータにインストールし、上述の手段として動作させ、あるいは、上述の工程を実行させてもよい。
【０１８８】
さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するものとしてもよい。
【０１８９】
以上説明したように、本発明によれば、ユーザが選択可能な指示内容と指示対象を分かりやすく提示し、ユーザが指示内容と指示対象を簡単に選択できるようにするために好適な指示内容決定装置、指示内容決定方法、ならびに、プログラムを提供することができる。
【図面の簡単な説明】
【０１９０】
【図１】本発明のゲーム装置が実現される典型的な情報処理装置の概要構成を示す図である。
【図２】指示内容決定装置の機能的な構成を説明するための図である。
【図３】モニターに表示される画面の構成例である。
【図４】（ａ）キャラクタ位置情報に格納される情報の例である。（ｂ）円環位置情報に格納される情報の例である。（ｃ）コマンド情報に格納される情報の例である。
【図５】（ａ）と（ｂ）は、アクティブ状態の円環を含む画面の構成例である。
【図６】（ａ）円環群の一部が非アクティブ状態であるときの画面の構成例である。（ｂ）キャラクタ３１０への決定指示を受け付けないときの画面の構成例である。
【図７】指示内容決定処理を説明するためのフローチャートである。
【図８】実施形態２において、仮想空間におけるキャラクタの位置、視点の位置、視線の向き、投影面の位置、の関係を説明するための図である。
【図９】（ａ）と（ｂ）は、実施形態２において、画像内の指示マークの位置に対応する仮想空間内の位置と、指示マークの描画サイズとの関係を表す図である。
【図１０】（ａ）と（ｂ）は、実施形態２において、指示マークの描画サイズを変化させた画面の構成例である。
【図１１】実施形態２において、モニターに表示される画面の他の構成例である。
【図１２】実施形態２において、仮想空間におけるキャラクタの位置、円環群の位置、視点の位置、視線の向き、投影面の位置、の関係を説明するための図である。
【図１３】実施形態３において、指示内容決定処理を説明するためのフローチャートである。
【図１４】（ａ）〜（ｄ）は、実施形態３において、モニターに表示される画面の構成例である。
【図１５】実施形態４において、モニターに表示される画面の構成例である。
【図１６】（ａ）〜（ｄ）は、実施形態５において、モニターに表示される画面の構成例である。
【図１７】（ａ）〜（ｄ）は、実施形態６において、モニターに表示される画面の構成例である。
【図１８】実施形態７において、モニターに表示される画面の構成例である。
【図１９】実施形態７において、モニターに表示される画面の他の構成例である。
【符号の説明】
【０１９１】
１００  情報処理装置
１０１  ＣＰＵ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  インターフェース
１０５  コントローラ
１０６  外部メモリ
１０７  ＤＶＤ−ＲＯＭドライブ
１０８  画像処理部
１０９  音声処理部
１１０  ＮＩＣ
２００  指示内容決定装置
２０１  キャラクタ記憶部
２０２  表示部
２０３  注目位置記憶部
２０４  受付部
２０５  出力部
２５１  キャラクタ位置情報
２５２  円環位置情報
２５３  コマンド情報
２５５  注目位置情報
３００  画面
３１０  キャラクタ
３２０  円環群
３２１乃至３２４  円環
３３０  指示マーク
８００  仮想空間
８１０  視点
８２０  視線
８３０  投影面
８５１  投影面へのキャラクタの投影画像
８５２  投影面への円環群の投影画像
８６０  指示マークの仮想空間における位置
１５５０  画面の中心位置
１５６０  キャラクタが移動可能な領域の重心位置
１５７０  ベクトル
【図１】
0004376292.tif 000002
【図２】
0004376292.tif 000003
【図３】
0004376292.tif 000004
【図４】
0004376292.tif 000005
【図５】
0004376292.tif 000006
【図６】
0004376292.tif 000007
【図７】
0004376292.tif 000008
【図８】
0004376292.tif 000009
【図９】
0004376292.tif 000010
【図１０】
0004376292.tif 000011
【図１１】
0004376292.tif 000012
【図１２】
0004376292.tif 000013
【図１３】
0004376292.tif 000014
【図１４】
0004376292.tif 000015
【図１５】
0004376292.tif 000016
【図１６】
0004376292.tif 000017
【図１７】
0004376292.tif 000018
【図１８】
0004376292.tif 000019
【図１９】
0004376292.tif 000020