(57)【特許請求の範囲】
【請求項１】
複数のアイコンを含むメニュー画面を生成しユーザからの選択操作を受け付ける情報処理装置であって、
仮想空間に複数のアイコンを配置するアイコン配置部と、
ユーザの頭部の姿勢情報を取得し、それに基づき前記仮想空間に対する視野面を決定する視野制御部と、
前記視野面に対する仮想空間の投影画像を描画したうえ、ユーザの視点を表すカーソルを重畳表示したメニュー画面を生成し表示装置に出力する画像生成部と、
前記メニュー画面に描画されるアイコンの像と前記カーソルの位置関係に基づき、操作内容を特定する操作判定部と、
を備え、
前記アイコン配置部は、仮想空間において、ユーザの頭部を中心とする球形の背景オブジェクト内に、ユーザからの方位および距離が互いに異なるように複数のアイコンを配置し、前記カーソルが前記複数のアイコンの１つに重なったとき、当該アイコンを、仮想空間においてユーザの視線の軸上に、ユーザに近づいていくように動かしたうえで所定の距離で停止させ、前記カーソルが別のアイコンに重なったとき、当該アイコンの位置を元に戻すことを特徴とする情報処理装置。
【請求項２】
前記画像生成部は、前記所定の距離で停止させたアイコンの下方に、当該アイコンが表象するコンテンツに対する操作を受け付けるための操作ボタンを追加で表示することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記アイコン配置部は、ユーザからの距離が遠いアイコンほど、当該アイコンのオブジェクトモデルのサイズを小さく設定し、ユーザに近づいていくように動かす際、徐々に拡大していくことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記画像生成部は、前記カーソルが前記複数のアイコンの１つに重なったとき、当該アイコンに対応する画像を前記背景オブジェクトの内部にテクスチャマッピングするとともに、当該背景オブジェクトをユーザの頭部を中心に所定速度で回転させることを特徴とする請求項１から３のいずれかに記載の情報処理装置。
【請求項５】
前記アイコン配置部は、各アイコンが表象する対象が属するカテゴリごとに、前記仮想空間において間隔が近接するアイコン群を形成するように、前記複数のアイコンを配置することを特徴とする請求項１から４のいずれかに記載の情報処理装置。
【請求項６】
前記アイコン配置部は、表示すべきアイコンの増減に応じて前記複数のアイコンの配置を更新することを特徴とする請求項１から５のいずれかに記載の情報処理装置。
【請求項７】
前記アイコン配置部は、階層構造を有する情報のうち上層の情報を表すアイコンに前記カーソルが重なったとき、それに属する下層の情報を表すアイコンを新たに配置することを特徴とする請求項１から６のいずれかに記載の情報処理装置。
【請求項８】
前記アイコン配置部は、仮想空間においてユーザの頭部に対する天頂および天底を含む所定範囲を、アイコン配置禁止領域とすることを特徴とする請求項１から７のいずれかに記載の情報処理装置。
【請求項９】
複数のアイコンを含むメニュー画面を生成しユーザからの選択操作を受け付ける、情報処理装置による操作受付方法であって、
仮想空間に複数のアイコンを配置するステップと、
ユーザの頭部の姿勢情報を取得し、それに基づき前記仮想空間に対する視野面を決定するステップと、
前記視野面に対する仮想空間の投影画像を描画したうえ、ユーザの視点を表すカーソルを重畳表示したメニュー画面を生成し表示装置に出力するステップと、
前記メニュー画面に描画されるアイコンの像と前記カーソルの位置関係に基づき、操作内容を特定するステップと、
を含み、
前記アイコンを配置するステップは、仮想空間において、ユーザの頭部を中心とする球形の背景オブジェクト内に、ユーザからの方位および距離が互いに異なるように複数のアイコンを配置し、前記カーソルが前記複数のアイコンの１つに重なったとき、当該アイコンを、仮想空間においてユーザの視線の軸上に、ユーザに近づいていくように動かしたうえで所定の距離で停止させ、前記カーソルが別のアイコンに重なったとき、移動させていたアイコンの位置を元に戻すことを特徴とする操作受付方法。
【請求項１０】
複数のアイコンを含むメニュー画面を生成しユーザからの選択操作を受け付けるコンピュータに、
仮想空間に複数のアイコンを配置する機能と、
ユーザの頭部の姿勢情報を取得し、それに基づき前記仮想空間に対する視野面を決定する機能と、
前記視野面に対する仮想空間の投影画像を描画したうえ、ユーザの視点を表すカーソルを重畳表示したメニュー画面を生成し表示装置に出力する機能と、
前記メニュー画面に描画されるアイコンの像と前記カーソルの位置関係に基づき、操作内容を特定する機能と、を実現させ、
前記アイコンを配置する機能は、仮想空間において、ユーザの頭部を中心とする球形の背景オブジェクト内に、ユーザからの方位および距離が互いに異なるように複数のアイコンを配置し、前記カーソルが前記複数のアイコンの１つに重なったとき、当該アイコンを、仮想空間においてユーザの視線の軸上に、ユーザに近づいていくように動かしたうえで所定の距離で停止させ、前記カーソルが別のアイコンに重なったとき、当該アイコンの位置を元に戻すことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ユーザとのインタラクションにより情報処理を実施する情報処理装置およびそれが実施する操作受付方法に関する。
【背景技術】
【０００２】
ユーザの体やマーカーをカメラで撮影し、その像の領域を別の画像で置換してディスプレイに表示するゲームが知られている。撮影画像のみならず、各種センサをユーザに装着させたり把持させたりしてその計測値を解析し、ゲームなどの情報処理に反映させる技術は、小型のゲーム機からレジャー施設まで、その規模によらず幅広い分野で利用されている。
【０００３】
その一例として、ヘッドマウントディスプレイにパノラマ映像を表示し、ヘッドマウントディスプレイを装着したユーザが頭部を回転させると視線方向に応じたパノラマ画像が表示されるようにしたシステムが開発されている。ヘッドマウントディスプレイを利用することで、映像への没入感を高めたり、ゲームなどのアプリケーションの操作性を向上させたりすることもできる。また、ヘッドマウントディスプレイを装着したユーザが物理的に移動することで映像として表示された空間内を仮想的に歩き回ることのできるウォークスルーシステムも開発されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ユーザがヘッドマウントディスプレイなどのウェアラブルディスプレイを装着した状態では特に、コントローラやキーボードなどの入力デバイスを用いてシステムに対し操作入力を行うことは難しい。また表示装置の種類によらず、動画やゲームなどの電子コンテンツ表示時に、パノラマ画像や立体視により仮想空間への没入感を与えるような高度な画像表現を実現しても、当該電子コンテンツを選択するメニュー画面や設定画面で上記のような入力デバイスを必要としたり簡素な画面構成としたりすれば、ユーザの興味がそがれてしまう。したがってそのような操作受付画面の表示においても、仮想空間が表現する世界観を維持しつつ、操作性も損なわない技術が求められている。
【０００５】
本発明はこうした課題に鑑みてなされたものであり、その目的は、操作受付画面の表示において、仮想空間が表現する世界観と操作性とを両立できる技術を提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある態様は情報処理装置に関する。この情報処理装置は、複数のアイコンを含むメニュー画面を生成しユーザからの選択操作を受け付ける情報処理装置であって、仮想空間に複数のアイコンを配置するアイコン配置部と、ユーザの頭部の姿勢情報を取得し、それに基づき仮想空間に対する視野面を決定する視野制御部と、視野面に対する仮想空間の投影画像を描画したうえ、ユーザの視点を表すカーソルを重畳表示したメニュー画面を生成し表示装置に出力する画像生成部と、メニュー画面に描画されるアイコンの像とカーソルの位置関係に基づき、操作内容を特定する操作判定部と、を備え、アイコン配置部は、仮想空間において、ユーザの頭部を中心とする球形の背景オブジェクト内に、ユーザからの方位および距離が互いに異なるように複数のアイコンを配置することを特徴とする。
【０００７】
本発明の別の態様は、操作受付方法に関する。この操作受付方法は、複数のアイコンを含むメニュー画面を生成しユーザからの選択操作を受け付ける、情報処理装置による操作受付方法であって、仮想空間に複数のアイコンを配置するステップと、ユーザの頭部の姿勢情報を取得し、それに基づき仮想空間に対する視野面を決定するステップと、視野面に対する仮想空間の投影画像を描画したうえ、ユーザの視点を表すカーソルを重畳表示したメニュー画面を生成し表示装置に出力するステップと、メニュー画面に描画されるアイコンの像とカーソルの位置関係に基づき、操作内容を特定するステップとを含み、アイコンを配置するステップは、仮想空間において、ユーザの頭部を中心とする球形の背景オブジェクト内に、ユーザからの方位および距離が互いに異なるように複数のアイコンを配置することを特徴とする。
【０００８】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【０００９】
本発明によれば、仮想空間が表現する世界観と操作性とを両立した操作受付画面を提供できる。
【図面の簡単な説明】
【００１０】
【図１】本実施の形態のヘッドマウントディスプレイの外観図である。
【図２】本実施の形態のヘッドマウントディスプレイの機能構成図である。
【図３】本実施の形態の情報処理システムの構成図である。
【図４】本実施の形態の情報処理装置の内部回路構成を示す図である。
【図５】本実施の形態における情報処理装置の機能ブロックを示す図である。
【図６】本実施の形態で表示されるメニュー画面を例示する図である。
【図７】本実施の形態においてメニュー画像を生成する際に構築される仮想空間の例を模式的に示す図である。
【図８】本実施の形態における、視線の動きに応じたメニュー画面の変遷を例示する図である。
【図９】本実施の形態において選択状態となったアイコンに与える変化を説明するための図である。
【図１０】本実施の形態において情報処理装置がメニュー画面を生成し選択操作を受け付ける処理手順を示すフローチャートである。
【発明を実施するための形態】
【００１１】
本実施の形態では、メニュー画面など選択操作を受け付ける画面を、ユーザの視線の動きに応じて視野を変化させつつ表示する。その限りにおいて、画像を表示させる装置の種類は特に限定されず、ウェアラブルディスプレイ、平板型のディスプレイ、プロジェクタなどのいずれでもよいが、ここではウェアラブルディスプレイのうちヘッドマウントディスプレイを例に説明する。
【００１２】
ウェアラブルディスプレイの場合、ユーザの視線は内蔵するモーションセンサによりおよそ推定できる。その他の表示装置の場合、ユーザがモーションセンサを頭部に装着したり、注視点検出装置を用いて赤外線の反射を検出したりすることで視線を検出できる。あるいはユーザの頭部にマーカーを装着させ、その姿を撮影した画像を解析することにより視線を推定してもよいし、それらの技術のいずれかを組み合わせてもよい。
【００１３】
図１は、ヘッドマウントディスプレイ１００の外観図である。ヘッドマウントディスプレイ１００は、本体部１１０、前頭部接触部１２０、および側頭部接触部１３０を含む。ヘッドマウントディスプレイ１００は、ユーザの頭部に装着してディスプレイに表示される静止画や動画などを鑑賞し、ヘッドホンから出力される音声や音楽などを聴くための表示装置である。ヘッドマウントディスプレイ１００に内蔵または外付けされたモーションセンサにより、ヘッドマウントディスプレイ１００を装着したユーザの頭部の回転角や傾きといった姿勢情報を計測することができる。
【００１４】
ヘッドマウントディスプレイ１００は、「ウェアラブルディスプレイ装置」の一例である。ウェアラブルディスプレイ装置には、狭義のヘッドマウントディスプレイ１００に限らず、めがね、めがね型ディスプレイ、めがね型カメラ、ヘッドホン、ヘッドセット（マイクつきヘッドホン）、イヤホン、イヤリング、耳かけカメラ、帽子、カメラつき帽子、ヘアバンドなど任意の装着可能なディスプレイ装置が含まれる。
【００１５】
図２は、ヘッドマウントディスプレイ１００の機能構成図である。制御部１０は、画像信号、センサ信号などの信号や、命令やデータを処理して出力するメインプロセッサである。入力インタフェース２０は、ユーザからの操作信号や設定信号を受け付け、制御部１０に供給する。出力インタフェース３０は、制御部１０から画像信号を受け取り、ディスプレイに表示させる。バックライト３２は、液晶ディスプレイにバックライトを供給する。
【００１６】
通信制御部４０は、ネットワークアダプタ４２またはアンテナ４４を介して、有線または無線通信により、制御部１０から入力されるデータを外部に送信する。通信制御部４０は、また、ネットワークアダプタ４２またはアンテナ４４を介して、有線または無線通信により、外部からデータを受信し、制御部１０に出力する。記憶部５０は、制御部１０が処理するデータやパラメータ、操作信号などを一時的に記憶する。
【００１７】
モーションセンサ６４は、ヘッドマウントディスプレイ１００の本体部１１０の回転角や傾きなどの姿勢情報を検出する。モーションセンサ６４は、ジャイロセンサ、加速度センサ、角加速度センサなどを適宜組み合わせて実現される。外部入出力端子インタフェース７０は、ＵＳＢ（Universal Serial Bus）コントローラなどの周辺機器を接続するためのインタフェースである。外部メモリ７２は、フラッシュメモリなどの外部メモリである。
【００１８】
時計部８０は、制御部１０からの設定信号によって時間情報を設定し、時間データを制御部１０に供給する。制御部１０は、画像やテキストデータを出力インタフェース３０に供給してディスプレイに表示させたり、通信制御部４０に供給して外部に送信させたりすることができる。
【００１９】
図３は、本実施の形態に係る情報処理システムの構成図である。ヘッドマウントディスプレイ１００は、無線通信またはＵＳＢなどの周辺機器を接続するインタフェース３００で情報処理装置２００に接続される。情報処理装置２００は、さらにネットワークを介してサーバに接続されてもよい。その場合、サーバは、複数のユーザがネットワークを介して参加できるゲームなどのオンラインアプリケーションを情報処理装置２００に提供してもよい。ヘッドマウントディスプレイ１００は、情報処理装置２００の代わりに、コンピュータや携帯端末に接続されてもよい。
【００２０】
ヘッドマウントディスプレイ１００に表示される画像は、あらかじめ撮影された３６０度のパノラマ静止画またはパノラマ動画の他、ゲーム空間のような人工的なパノラマ画像であってもよい。また、ネットワーク経由で配信される遠隔地のライブ映像であってもよい。ただし本実施の形態をパノラマ画像に限定する主旨ではなく、表示装置の種類によって、パノラマ画像とするか否かを適宜決定してよい。
【００２１】
図４は情報処理装置２００の内部回路構成を示している。情報処理装置２００は、ＣＰＵ（Central Processing Unit）２２２、ＧＰＵ（Graphics Processing Unit)２２４、メインメモリ２２６を含む。これらの各部は、バス２３０を介して相互に接続されている。バス２３０にはさらに入出力インタフェース２２８が接続されている。
【００２２】
入出力インタフェース２２８には、ＵＳＢやＩＥＥＥ１３９４などの周辺機器インタフェースや、有線又は無線ＬＡＮのネットワークインタフェースからなる通信部２３２、ハードディスクドライブや不揮発性メモリなどの記憶部２３４、ヘッドマウントディスプレイ１００などの表示装置へデータを出力する出力部２３６、ヘッドマウントディスプレイ１００からデータを入力する入力部２３８、磁気ディスク、光ディスクまたは半導体メモリなどのリムーバブル記録媒体を駆動する記録媒体駆動部２４０が接続される。
【００２３】
ＣＰＵ２２２は、記憶部２３４に記憶されているオペレーティングシステムを実行することにより情報処理装置２００の全体を制御する。ＣＰＵ２２２はまた、リムーバブル記録媒体から読み出されてメインメモリ２２６にロードされた、あるいは通信部２３２を介してダウンロードされた各種プログラムを実行する。ＧＰＵ２２４は、ジオメトリエンジンの機能とレンダリングプロセッサの機能とを有し、ＣＰＵ２２２からの描画命令に従って描画処理を行い、表示画像を図示しないフレームバッファに格納する。そしてフレームバッファに格納された表示画像をビデオ信号に変換して出力部２３６に出力する。メインメモリ２２６はＲＡＭ（Random Access Memory）により構成され、処理に必要なプログラムやデータを記憶する。
【００２４】
図５は、本実施の形態における情報処理装置２００の機能ブロックを示している。本実施の形態における情報処理装置２００は、上述のとおり視線の動きにより視野が変化するとともに、当該視線によって複数の選択肢から１つを選択する入力を受け付けるための画面（以後、「メニュー画面」と呼ぶ）を生成する。そして当該画面に対する選択入力を受け付け、それに対応する処理を実行する。選択に応じてなされる処理は特に限定されないが、ここでは一例として、ゲームや動画などの電子コンテンツの処理を想定する。そして各電子コンテンツを表象するアイコンをメニュー画面に表す。
【００２５】
なお図５で示した情報処理装置２００の機能のうち少なくとも一部を、ヘッドマウントディスプレイ１００の制御部１０に実装してもよい。あるいは、情報処理装置２００の少なくとも一部の機能を、ネットワークを介して情報処理装置２００に接続されたサーバに実装してもよい。またメニュー画面を生成し選択入力を受け付ける機能をメニュー画面制御装置として、電子コンテンツを処理する装置と別に設けてもよい。
【００２６】
同図は情報処理装置２００が有する機能のうち、主にメニュー画面の制御に係る機能に着目したブロック図を描いている。これらの機能ブロックは、ハードウェア的には、図４に示したＣＰＵ、ＧＰＵ、各種メモリなどの構成で実現でき、ソフトウェア的には、記録媒体などからメモリにロードした、データ入力機能、データ保持機能、画像処理機能、通信機能などの諸機能を発揮するプログラムで実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【００２７】
情報処理装置２００は、ヘッドマウントディスプレイ１００の位置や姿勢を取得する位置・姿勢取得部７１２、ユーザの視線に基づき表示画像の視野を制御する視野制御部７１４、表示対象のアイコンに係る情報を記憶するアイコン情報記憶部７２０、仮想空間におけるアイコンの配置を決定するアイコン配置部７２２、視線の変化により操作がなされたことを判定する操作判定部７１８、選択された電子コンテンツを処理するコンテンツ処理部７２８、表示画像のデータを生成する画像生成部７１６、選択対象のコンテンツに係る情報を記憶するコンテンツ情報記憶部７２４、および、生成されたデータを出力する出力部７２６を備える。
【００２８】
位置・姿勢取得部７１２は、ヘッドマウントディスプレイ１００のモーションセンサ６４の検出値に基づいて、ヘッドマウントディスプレイ１００を装着したユーザの頭部の位置や姿勢を所定のレートで取得する。位置・姿勢取得部７１２はさらに、情報処理装置２００に接続した図示しない撮像装置による撮影画像に基づき、頭部の位置や姿勢を取得したり、その結果をモーションセンサによる情報と統合したりしてもよい。
【００２９】
視野制御部７１４は、位置・姿勢取得部７１２により取得された頭部の位置や姿勢に基づいて、描画対象の３次元空間に対する視野面（スクリーン）を設定する。本実施の形態のメニュー画面では、表示対象の複数のアイコンを、仮想空間の中空に浮かんでいるように表現する。したがって視野制御部７１４は、当該アイコンを配置するための仮想的な３次元空間の情報を保持している。
【００３０】
当該仮想空間には、空中に浮かぶアイコンとユーザの頭部を包含するような大きさの全天球状の背景オブジェクトを、一般的なコンピュータグラフィクスと同様のグローバル座標系に定義する。これにより空間に奥行き感が生じ、アイコンが空中に浮いている状態をより印象づけられる。そして視野制御部７１４は、当該グローバル座標系に対するスクリーン座標を、ヘッドマウントディスプレイ１００の姿勢に基づいて所定のレートで設定する。
【００３１】
ヘッドマウントディスプレイ１００の姿勢、すなわちユーザ頭部のオイラー角によってユーザの顔面の向く方向が判明する。視野制御部７１４は少なくとも、当該顔面の向く方向に対応させてスクリーン座標を設定することにより、ユーザが向く方向に応じた視野で仮想空間がスクリーン平面に描画されるようにする。この場合、ユーザの顔面の法線ベクトルをおよそ視線の方向と推定していることになる。
【００３２】
なお赤外線の反射などにより注視点を検出する装置を用いればさらに詳細な視線情報を得ることができる。以後の説明では、導出手法によらず推定あるいは検出された、ユーザが見ている方向を総じて「視線」の方向と称する。視野制御部７１４は、ユーザ頭部の姿勢の変化が所定の値を超えるまでは検出された角度の変化を無視するようにして、意図せず画像がぶれるのを防いでもよい。また表示画像のズーム操作を受け付けるような場合は、ズーム倍率に基づいて頭部の角度検出の感度を調整してもよい。
【００３３】
アイコン配置部７２２は、各電子コンテンツを表象するアイコンの配置を決定する。上述のとおりアイコンは仮想空間に浮いているように表す。より具体的には仮想空間において、ユーザの周囲に、ユーザからの距離および方位を分散させて配置する。これにより、顔が向いた方向（視線の先）にあるアイコンを選択できるようにする。アイコンは各電子コンテンツのサムネイル画像を表す円板などのオブジェクトとする。
【００３４】
アイコン情報記憶部７２０には、アイコンの形状や、アイコンを表示すべき電子コンテンツに係る情報が格納されている。アイコン配置部７２２は、アイコン情報記憶部７２０に格納された情報に基づき、表示すべきアイコンの数、アイコンが属するカテゴリ、優先度などの情報を特定し、それに応じて配置を最適化する。例えばアイコンの増減に応じて全体的な分散のバランスを調整する。また同じカテゴリに属するアイコン群を近接させる。さらに、優先度の高いアイコンほどユーザからの距離を近くする。これらのことにより、多くのアイコンであっても適切な間隔を保ちつつ効率的な選択ができるようにする。
【００３５】
さらに、そのようなアイコンを見ているユーザの視線の動きに応じて、アイコンをユーザ側に移動させたり元に戻したりする。具体的には、ユーザが視線を合わせたアイコンを仮想空間においてユーザの近傍に移動させることにより見かけ上のサイズを大きくし、当該アイコンが選択状態となったことを表す。そして別のアイコンに視線が移ったら、元のアイコンの選択状態を解除して位置を元に戻す。アイコン配置部７２２は、コンテンツの識別情報と、当該コンテンツを表すアイコンの配置情報を対応づけて、画像生成部７１６に供給する。
【００３６】
操作判定部７１８は、ユーザの視線の動きにより、メニュー画面の視野変化以外の何らかの操作がなされたか否かを判定する。ここで判定される操作とは、アイコンの選択、選択されたアイコンに対応する電子コンテンツの再生、処理開始、ダウンロード、情報表示、対応するウェブサイトへの表示の移行、ヘルプ情報の表示などである。例えば上述のとおり、あるアイコンに視線が到達したとき、当該アイコンが選択されたと判定する。
【００３７】
これに応じて、対応するコンテンツへの具体的な操作内容を選択するための操作ボタンを追加で表示させ、それに視線が移されたら当該操作がなされたと判定する。操作判定部７１８は、そのような処理を実施するための判定基準とそれに応じてなすべき処理に係る設定情報を保持している。操作がなされたと判定され、それがアイコンの選択である場合は、操作判定部７１８はその旨をアイコン配置部７２２に通知することによりアイコンをユーザの近傍に移動させる。これに伴い操作ボタン等、追加のオブジェクトを表示させる場合は、操作判定部７１８はその旨の要求を画像生成部７１６に通知する。
【００３８】
メニュー画面用の仮想空間内で処理が完結するその他の場合、例えば選択状態のコンテンツに係る概説を表示する操作がなされた場合や、メニュー画面に対するヘルプ情報を表示する操作がなされた場合なども、操作判定部７１８はその旨の処理要求を画像生成部７１６に通知する。電子コンテンツの再生・処理開始や、ウェブサイトへの表示の移行など、メニュー画面用の仮想空間から表示を切り替える操作がなされた場合、操作判定部７１８はその旨の要求をコンテンツ処理部７２８に通知する。
【００３９】
画像生成部７１６は、アイコン配置部７２２が配置を決定した複数のアイコンを含む仮想空間を、視野制御部７１４が決定したスクリーンに投影することにより、メニュー画面として表示させる画像を所定のレートで描画する。画像生成部７１６はさらに、選択状態にある、すなわち視線が向いているアイコンのサムネイル画像が背景全体に表されるように、背景として配置されている全天球状のオブジェクトのテクスチャ画像を切り替える。さらにこの背景オブジェクトを、ユーザを中心に所定の微小速度で回転させることにより、奥行き方向の距離感をより与えられるように演出する。
【００４０】
画像生成部７１６は、ヘッドマウントディスプレイ１００において立体視できるようにメニュー画面の画像を生成してもよい。すなわちヘッドマウントディスプレイ１００の画面を左右に分割してなる領域にそれぞれ表示するための、左眼用、右眼用の視差画像を生成してもよい。画像生成部７１６はさらに、操作判定部７１８からの要求に応じて画像に変化を与える。例えば上述のとおり、選択状態のアイコンの近傍に、具体的な操作を受け付けるための操作ボタンを表示する。
【００４１】
あるいはコンテンツを概説する文字情報やメニュー画面に対するヘルプ情報などを表示する。各コンテンツについての文字情報や、アイコンや背景の描画に用いるサムネイル画像などのデータは、コンテンツの識別情報に対応づけてコンテンツ情報記憶部７２４に格納しておく。あるいはネットワークを介して接続されたサーバから直接取得してもよい。コンテンツ情報記憶部７２４には、全天球の背景オブジェクトにテクスチャマッピングするため、各電子コンテンツに対応して作成された、あるいはメニュー画面用に作成された、パノラマ画像のデータも格納しておく。
【００４２】
パノラマ画像は、定点を中心とする周囲の空間の画像の一例であり、全天球のパノラマ画像の場合、周囲の空間（パノラマ空間）は球で表される。なお背景の画像は、事前に作成された動画または静止画コンテンツであってもよく、レンダリングされたコンピュータグラフィックスであってもよい。
【００４３】
コンテンツ処理部７２８は、操作判定部７１８からの要求に応じて、選択されたアイコンに対応する電子コンテンツを処理する。すなわち動画や静止画を再生したり、ゲームを開始させたりする。そのためのデータやプログラムは、コンテンツの識別情報に対応づけてコンテンツ情報記憶部７２４に格納しておく。画像生成部７１６は、コンテンツ処理部７２８からの要求に従い、動画像やゲーム画面などコンテンツ表示のための画像も生成する。コンテンツの具体的な処理については一般的な技術を適用できるため、ここでは説明を省略する。
【００４４】
出力部７２６は、画像生成部７１６が生成した画像のデータを、ヘッドマウントディスプレイ１００に所定のレートで送出する。出力部７２６はさらに、メニュー画面用の音楽や各種コンテンツに含まれる音声などの音響データも出力してよい。
【００４５】
図６は、ヘッドマウントディスプレイ１００に表示されるメニュー画面を例示している。メニュー画面５００は、ユーザの周囲に構築された仮想空間のうち、ユーザの視線に対応する視野内にある物を表現している。したがって、アイコン配置部７２２が配置した複数のアイコンのうち、当該視野内にある一部のアイコン５０２ａ〜５０２ｇが表示されている。各アイコン５０２ａ〜５０２ｇの上方には、アイコンが表すコンテンツのタイトル等を文字情報として表示する。ユーザは首を縦横斜めと自由に振ったり後ろを振り返ったりすることにより、視線、ひいては視野を移動させ、そのほかのアイコンも閲覧することができる。
【００４６】
アイコン５０２ａ〜５０２ｇの背後には、背景を表すオブジェクトも描画される。上述のように全天空を表す背景オブジェクトとしたり、当該オブジェクトを、ユーザを中心に微小速度で回転させたりすることにより、それに貼り付けられたテクスチャ画像が奥行き感を伴い表現される。これによりアイコン５０２ａ〜５０２ｇが、背景オブジェクトで包含された空間の様々な場所に浮いているように演出できる。図示する例では、アイコン５０２ａ〜５０２ｇは、各電子コンテンツのサムネイル画像をテクスチャマッピングした円板状のオブジェクトである。ただしアイコンの形状をこれに限定する主旨ではない。
【００４７】
メニュー画面５００にはさらに、画像平面とユーザの視線が交差する点、すなわちメニュー画面におけるユーザの視点を表すカーソル５０４を表示する。上述のようにメニュー画面５００の視野は、視線の動きに応じて変化する。結果として視点を表すカーソル５０４は、視線の動きによらず、メニュー画面５００の略中央に据え置かれることになる。すなわちユーザの視線の方向が変化すると視野も同様に変化するため、画面上ではカーソル５０４は定位置にあり、相対的にアイコン配列および背景オブジェクトを含む仮想世界が逆方向に変位することになる。
【００４８】
カーソル５０４は、情報処理装置２００が視点と認識している位置をユーザ自身に知らしめ、ユーザがそれを手がかりに首の振り幅を直感的に調整することにより、所望のアイコンや操作ボタンを正確に操作できるようにするものである。その限りにおいては、カーソル５０４は厳密にユーザの視点と一致していなくてもよい。また視線の動きの速さなどによって、画面の中心から外れることがあってもよい。なおメニュー画面５００にはさらに、図示しないその他のオブジェクトを表示させてもよい。例えばヘルプ情報を表示させるための操作ボタンを仮想空間における下方に配置し、視線を下に向けることにより画面内に入るようにしてその操作を受け付けるようにしてもよい。
【００４９】
図７は、メニュー画像を生成する際に構築される仮想空間の例を模式的に示している。上述のとおり仮想空間には、ユーザ５１６の頭部を略中心とする、所定半径Ｚｂの球形の背景オブジェクト５１０を設定する。そして当該背景オブジェクト５１０に包含される同心球であり、サイズが互いに異なる第１レイヤ５１２ａ、第２レイヤ５１２ｂ、第３レイヤ５１２ｃ、第４レイヤ５１２ｄを設定する。つまり第１レイヤ５１２ａ、第２レイヤ５１２ｂ、第３レイヤ５１２ｃ、第４レイヤ５１２ｄの半径Ｚ１、Ｚ２、Ｚ３、Ｚ４を、Ｚ１＜Ｚ２＜Ｚ３＜Ｚ４＜Ｚｂとなるように設定する。
【００５０】
なおレイヤは位置を規定するための情報であり実体として表示されるものではない。このように設定した各レイヤ面に、アイコン（例えばアイコン５１４ａ、５１４ｂ、５１４ｃ）を分散させて配置する。そしてユーザの顔面の向く方向（顔面の法線ベクトル５１７）を視線として特定し、それを中心とする垂直面にスクリーン５１８を設定して仮想空間のオブジェクトを投影する。これにより、図６で示したようなメニュー画面５００が描画される。
【００５１】
アイコンは基本的に、ユーザ５１６を囲む空間全体に不規則に分散させて配置する。ここで「不規則」とはアイコンが直線上や平面上に並んでいるなど、アイコンの位置座標が何らかの関数によって表されることがなく、例えば乱数によって決定されるような状態を指す。ユーザから見て異なる方位および距離の様々な位置に星のようにアイコンが浮かんでいるように表現することで、メニュー画面であっても高いデザイン性や娯楽性を与えることができる。ただし天頂および天底を含む所定範囲をアイコンの配置禁止領域とすることにより、無理なく顔を向けられる方向に限定してアイコンを配置することが望ましい。一般的に下方より頭上の方が顔を向けにくいことを考慮すると、配置禁止領域とする範囲を規定する天頂角θｕ、天底角θｂを、θｕ＞θｂとすることが望ましい。
【００５２】
また、ユーザから離れたレイヤほど、そこに配置するアイコンのサイズを小さくしてもよい。このようにすることで、背景オブジェクトの内側、という限定のもとで実際にレイヤに与えた半径よりさらに奥にアイコンがあるように見え、空間の広がりを演出できる。また、選択状態になったアイコンをユーザの近傍に移動させる際、よりダイナミックな動きを表現できる。なお図７の例では４つのレイヤを示しているが、レイヤの数をこれに限定する主旨ではない。
【００５３】
背景としてパノラマ画像がテクスチャマッピングされた背景オブジェクト５１０は、矢印Ａのように、ユーザの頭部を通る縦方向の軸を中心に所定速度で回転させる。図示する例は時計回りの回転であるが、逆方向でもよい。これにより、図６で示したようなメニュー画面５００では、背景が右または左に移動していくことになる。回転の速度は好適には、背景を注視していなければ気づかれない程度の微小な値とする。アイコンを見ていても気づく程度の速さで背景が動いていると、ユーザは自分自身が動いているような感覚になり場合によっては酔いなどの体調不良を生じさせる。意識下レベルで関知する程度の速度で画像を動かすことにより、そのような不具合なく、背景がより奥にあるような視覚効果をもたらすことができる。
【００５４】
図８は、視線の動きに応じたメニュー画面の変遷を例示している。まず上段の（ａ）の画面では、これまで述べたようにして表示される複数のアイコン５２０と、ユーザの視点を表すカーソル５２２が表示されている。図７を参照して説明したように、アイコン５２０は仮想空間において、ユーザを中心とする同心球の複数のレイヤ上に分散して配置され、結果として見かけ上の大きさや向きが様々となる。同図では、メニュー画面のうちアイコンのみを示しているが、図６に示すように各アイコンの上方にはタイトルなどの文字列も、ユーザからの距離や角度に応じた大きさや形状で示される。
【００５５】
（ａ）の状態では、カーソル５２２がアイコン５２０と重なっていない。ここでユーザが、例えば首を微少量、右方に振る、すなわち右方に視線を移動させると、それに応じて画面の視野が右方に移動する。結果として中段の（ｂ）に示すように、画面内でのカーソル５２２の位置は変化しないが、アイコン全体が相対的に左方へ移動する。当然、視線の移動方向は限定されず、いずれにしろ視線の移動に応じて逆方向にアイコン全体が移動する。このような動きにより、あるアイコン５２４にカーソル５２２が重なったら、当該アイコン５２４を仮想空間でユーザ側へ移動させることにより選択状態であることを表す。
【００５６】
すなわち図示するように、選択状態のアイコン５２４がユーザの眼前に移動することにより、見かけ上のサイズが大きくなる。なお（ａ）から（ｂ）への遷移途上には当然、アイコンが近づいてくる様子が動画表示される。アイコン５２４がどの位置にあったとしても、また距離に応じてアイコンのサイズを小さくしていても、選択状態となったらユーザから同じ距離かつ同じサイズで表示する。これにより、様々な位置にあるアイコンが、視線を合わせることによりユーザに引き寄せられ、同じ位置で止まるような状態を表現できる。
【００５７】
アイコンが選択状態となったら、当該アイコン５２４の下方に操作ボタンを追加で表示する。操作ボタンはアイコンが表すコンテンツの種類によって様々でよいが、同図では動画コンテンツを想定し、情報表示ボタン５２６ａ、再生開始ボタン５２６ｂ、対応ウェブサイト表示ボタン５２６ｃ（以後、「操作ボタン５２６」と総称する場合がある）の３つを表示している。この状態で下段（ｃ）の右側に示すように、ユーザがうなずくようにして視線を下方に動かすと、それに応じて画面の視野が下方に移動する。
【００５８】
結果として（ｃ）の画面のように、画面内でのカーソル５２２の位置は変化しないが、アイコン全体が相対的に上方へ移動する。これによりカーソル５２２が操作ボタン５２６のいずれかと重なったら、当該操作ボタンに対応する操作を受け付ける。図示する例では再生開始ボタン５２６ｂと重なっているため、選択状態のアイコン５２４が表す動画コンテンツの再生開始操作を受け付け、再生処理を開始する。この場合、表示中のメニュー画面から動画へ表示が切り替わるため、その制御はコンテンツ処理部７２８が行う。
【００５９】
なおカーソル５２２が情報表示ボタン５２６ａと重なった場合は、メニュー画面と同じ仮想空間内で動画を概説する文字情報へ表示を切り替える。カーソル５２２が対応ウェブサイト表示ボタン５２６ｃと重なった場合は、当該ウェブサイトを提供するサーバへ接続することによりウェブサイトの表示へ切り替える。操作ボタンとしてはこのほか、選択状態のアイコンが表す電子コンテンツをダウンロードするボタンなどを表示させてもよい。
【００６０】
図示するように操作ボタン５２６を選択状態のアイコン５２４の下方近傍に出現させることにより、より少ない労力で、かつアイコン選択との連続性を保ちながら各種操作が可能になる。結果として操作ボタン５２６が、選択状態にない他のアイコンと重なる可能性が生じるが、操作ボタンを表示している期間は他のアイコンの選択を無効とすることにより、操作ボタンに対する操作を優先させる。
【００６１】
操作ボタンに対する操作を有効とし、それに対応する処理を開始するために、何らかの条件を設定してもよい。例えばカーソル５２２が操作ボタンに重なってから所定時間が経過したことを条件に、操作を有効と判定してもよい。この場合、カーソル５２２が操作ボタンに重なった時点で、操作が有効とされるまでの残り時間を表すインジケータを別途、表示してもよい。このようにすることで、首の微妙な動きで偶然、操作ボタンにカーソルがかかってしまい、意図しない処理が頻繁に開始されてしまうといった不具合を解消できる。また意図してカーソル５２２を操作ボタンに移動させたとしても、処理が開始されるまでにキャンセルの余地を与えることができる。
【００６２】
図９は、選択状態となったアイコンに与える変化を説明するための図である。図７で説明したように、ユーザ５１６の視線に応じてスクリーン５１８が設定される。当該スクリーンの中心には、図８で示したようにユーザの視点を表すカーソル５２２が表示される。一方、ユーザ５１６の周囲には同心球の第１レイヤ５１２ａ、第２レイヤ５１２ｂ、第３レイヤ５１２ｃが設定されるが、同図ではその一部のみを示している。
【００６３】
それらのレイヤ上に配置されたアイコンのうち、第３レイヤ５１２ｃ上に配置されたアイコン５２４ａに視線が到達し、カーソル５２２と重なったら、矢印Ｂで示すように当該アイコン５２４ａをユーザ側に直線的に移動させる。そしてスクリーン５１８から所定距離ΔＺの位置で停止させる（アイコン５２４ｂ）。上述のように初期の配置において奥に位置するレイヤほどアイコンのサイズを小さくし奥行き感を演出している場合は、ユーザからの距離の短縮とともに徐々に拡大していくことにより、元々他と同じサイズであったアイコンがより遠くから移動してきたように見せることができる。
【００６４】
カーソル５２２と重なったアイコンは仮想空間において、視線の方向であるＺ軸上を移動する。そのため好適には当該軸上に他のアイコンが存在しないように初期の配置を決定する。すなわち仮想空間において、ユーザ５１６の頭部からの方位を規定する複数の放射線において、１つの線上には２つ以上のアイコンが配置されないように、レイヤを１つ選んで配置する。当該放射線同士のなす角度は、アイコンがΔＺの位置に移動するまでに隣の放射線上のアイコンと接しない範囲で、アイコンの数に応じて設定する。
【００６５】
このように配置することで、選択状態となったアイコンが他のアイコンを透過して移動するなどの不自然さをなくすことができる。このような拘束条件のもと、各放射線上のどのレイヤにアイコンを配置させるか、すなわち複数のアイコンをどのように分散させて配置するか、については様々なアプローチが考えられる。例えば、表示すべきアイコンの数に増減があったら、アイコン配置部７２２はその都度、不自然な偏りがないように配置を更新する。アイコンが増減するケースとしては、ユーザが新たな電子コンテンツをダウンロードしたり、元からあった電子コンテンツを削除したりした場合が考えられる。
【００６６】
またアイコンに与えられた優先度に基づきユーザからの距離を決定してもよい。例えば過去に選択された頻度をアイコンごとに記録していき、頻度が高いアイコンほどユーザに近いレイヤに配置する。選択履歴に応じてサーバなどからお勧めの電子コンテンツのアイコンを取得し、それをユーザから近いレイヤに配置してもよい。この場合、アイコン情報記憶部７２０には選択履歴を格納しておき、アイコン配置部７２２がそれを参照することにより配置するレイヤを決定したり、サーバにお勧めを問い合わせてデータを取得したりする。
【００６７】
さらに、アイコンが表す電子コンテンツの種類に応じて、アイコン同士の距離を調整してもよい。例えば同じカテゴリに属するコンテンツのアイコンを仮想空間において近接させまとめて配置することにより、ユーザから見てクラスタが形成されるようにする。このようにアイコンが表象するコンテンツがカテゴリに分類されている場合など、情報が階層構造を有する場合は、上層の情報を表すアイコンにカーソルが重なったときに、その位置の近傍に、それに属する下層の情報を表すアイコンが生まれるようにしてもよい。
【００６８】
次に、以上の構成により実現できる、メニュー画像生成装置の動作について説明する。図１０は、情報処理装置２００がメニュー画面を生成し選択操作を受け付ける処理手順を示すフローチャートである。このフローチャートは、例えばユーザがヘッドマウントディスプレイ１００を装着し、情報処理装置２００の電源を投入したときなどに開始される。まず情報処理装置２００のアイコン配置部７２２は、アイコン情報記憶部７２０に格納されるアイコン情報に基づき、アイコンを表示すべきコンテンツの個数、優先度、カテゴリなどを特定し、それに応じて仮想空間におけるアイコンの配置を決定する（Ｓ１０）。
【００６９】
一方、視野制御部７１４は、背景オブジェクトなどを含む仮想空間を定義したうえ、ユーザの頭部の位置や姿勢に基づき仮想空間に対する視野面（スクリーン）を決定する。画像生成部７１６は、当該スクリーンに、アイコン配列を含む仮想空間を投影することにより、メニュー画面を描画する（Ｓ１２）。描画処理自体には、一般的なコンピュータグラフィックス技術を適用できる。画像生成部７１６はさらに、ユーザの視点を表すカーソルをメニュー画面上に重畳表示する。
【００７０】
以後、視野制御部７１４が頭部の姿勢の変化に応じてスクリーンを変化させ、画像生成部７１６が当該スクリーンに対し画像を描画する処理を所定のレートで繰り返すことを基本とする。このとき同時に、背景画像がマッピングされた背景オブジェクトを、ユーザを中心として水平方向に所定の微小速度で回転させ続ける。出力部７２６が、生成された画像のデータをヘッドマウントディスプレイ１００に順次出力することにより、メニュー画面が視線の動きに応じて動的に表現される。
【００７１】
このような状態において、カーソルがアイコンに重なったことを操作判定部７１８が判定したら（Ｓ１４のＹ）、アイコン情報記憶部７２０は、当該アイコンを仮想空間でユーザの方向に移動させることにより選択状態とする（Ｓ１６）。このとき画像生成部７１６は、背景オブジェクトの画像を、選択状態にあるアイコンに対応するものに更新する。この背景画像は、次に別のアイコンが選択状態となるまで表示させる。また選択状態となったアイコンの下方に所定の操作ボタンを表示する（Ｓ１８）。
【００７２】
その状態でユーザがうなずくことによりカーソルが操作ボタンに移動し（Ｓ２０のＹ）、そのまま所定時間が経過するなど当該操作を有効と判定したら（Ｓ２２のＹ）、操作判定部７１８は、操作対象のボタンの種類に応じて画像生成部７１６あるいはコンテンツ処理部７２８に処理を要求する。これにより対応する処理が実施される（Ｓ２４）。
【００７３】
操作ボタンが表示されてもカーソルがそこに移動しなかった場合や（Ｓ１８、Ｓ２０のＮ）、カーソルが操作ボタン上に移動したものの有効とされずに外れた場合は（Ｓ２０のＹ、Ｓ２２のＮ）、Ｓ１２の描画処理のみを継続する。この際、カーソルが操作ボタンやＳ１４で重なっていたアイコンから外れても、別のアイコンにカーソルが重なるまでは、Ｓ１６でユーザ近傍に移動させたアイコンはその位置に据え置き、操作ボタンも表示させたままとする。結果として当該アイコンは、選択状態のまま視野から外れていく場合もある。
【００７４】
カーソルがアイコンに重なる都度、当該アイコンに対しＳ１６、Ｓ１８の処理がセットでなされる。結果として、視線を自由に動かしていくと、その先にあるアイコンが手前に移動しては元に戻る、あるいはそのまま視野外に出るような変化が表される。カーソルがアイコンに重なっていない期間、画像生成部７１６は仮想空間を視野変化のみに応じて描画する（Ｓ１４のＮ、Ｓ１２）。
【００７５】
一方、Ｓ２４で操作ボタンに対応する処理を実施したあと、メニュー画面へ戻る操作がなされた場合は、画像生成部７１６はメニュー画面の描画処理を再開する（Ｓ２６のＹ、Ｓ１２）。メニュー画面へ戻る操作がなされなければ、画像生成部７１６あるいはコンテンツ処理部７２８がそれまでの処理を継続する（Ｓ２６のＮ、Ｓ２８のＮ、Ｓ２４）。ただしその過程で、ユーザ操作などにより処理を終了させる必要が生じた場合は、情報処理装置２００は全体の処理を終了する（Ｓ２８のＹ）。
【００７６】
以上述べた本実施の形態によれば、複数のアイコンからの選択入力を受け付けるメニュー画面を、ユーザの顔の向きや視線の変化に応じて視野が変化する仮想空間として表現する。このとき仮想空間に全天球状の背景オブジェクトを配置し、その内部にアイコンを分散させて配置する。そして首振りなどにより視線が到達したアイコンを、ユーザの眼前に引き寄せるように移動させ、当該アイコンに対する詳細な操作を受け付けるための操作ボタンを、当該アイコンの下方に表示する。
【００７７】
遠くに配置されたアイコンであっても眼前に移動させることにより、その上方に表示させたタイトルやアイコン自体の画像を十分、視認できるようになる。その結果、仮想空間で様々な距離にアイコンを配置することができ、一度に多くのアイコンを表示できるとともに、仮想空間の世界観を楽しみながらコンテンツを選択できる。また、天頂や天底を含む所定範囲を配置禁止領域とすることで、無理のない動きで選択操作が可能となる。さらに、背景オブジェクトをユーザが気づかない程度の速度で回転させたり、遠くのアイコンほどオブジェクトのサイズを小さくしたりすることにより、奥行き感をより演出することができ、独特の世界観を表現できる。
【００７８】
背景の画像を選択状態のアイコンに対応するものにしたり、アイコンが表象するコンテンツの属性などに応じて配置を調整したりすることで、アイコン選択の効率性と娯楽性を両立できる。以上のように、仮想空間に対する視線の動きで高度な選択操作が可能となるため、ヘッドマウンドディスプレイのように入力装置の操作がしづらい場合は特に有効である。また、そのようにして選択したコンテンツが没入感を伴うものである場合は、当該コンテンツの世界観に適合した表現で選択操作が可能となる。
【００７９】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【００８０】
１０  制御部、  ２０  入力インタフェース、  ３０  出力インタフェース、  ３２  バックライト、  ４０  通信制御部、  ４２  ネットワークアダプタ、  ４４  アンテナ、  ５０  記憶部、  ６４  モーションセンサ、  ７０  外部入出力端子インタフェース、  ７２  外部メモリ、  ８０  時計部、  １００  ヘッドマウントディスプレイ、  ２００  情報処理装置、  ２２２  ＣＰＵ、  ２２４  ＧＰＵ、  ２２６  メインメモリ、  ７１２  位置・姿勢取得部、  ７１４  視野制御部、  ７１６  画像生成部、  ７１８  操作判定部、  ７２０  アイコン情報記憶部、  ７２２  アイコン配置部、  ７２４  コンテンツ情報記憶部、  ７２６  出力部、  ７２８  コンテンツ処理部。
【図１】
0006518582.tif 000002
【図２】
0006518582.tif 000003
【図３】
0006518582.tif 000004
【図４】
0006518582.tif 000005
【図５】
0006518582.tif 000006
【図６】
0006518582.tif 000007
【図７】
0006518582.tif 000008
【図８】
0006518582.tif 000009
【図９】
0006518582.tif 000010
【図１０】
0006518582.tif 000011