(57)【要約】【課題】３次元空間におけるポインティング表示の違和感を軽減する。【解決手段】情報処理装置１００は、オブジェクト２１０が配置された３次元空間２００を表示画面１３０に表示させる表示制御部１２６と、３次元空間２００におけるポインティング操作を取得する取得部１２２と、ポインティング操作に基づいて、３次元空間２００にポインティング位置２５０を設定する位置設定部１２４とを備え、表示制御部１２６は、ポインティング位置２５０とオブジェクト２１０との、表示画面１３０の奥行き方向の差を補正して、ポインティング位置２５０を３次元空間２００に表示させる。【選択図】図８
2012058896.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクトが配置された３次元空間を表示画面に表示させる表示制御部と、
前記３次元空間におけるポインティング操作を取得する取得部と、
前記ポインティング操作に基づいて、前記３次元空間にポインティング位置を設定する位置設定部と、
を備え、
前記表示制御部は、前記ポインティング位置と前記オブジェクトとの、前記表示画面の奥行き方向の差を補正して、前記ポインティング位置を前記３次元空間に表示させる情報処理装置。
【請求項２】
前記位置設定部は、前記ポインティング操作に基づいて、前記３次元空間に仮のポインティング位置を設定し、前記仮のポインティング位置と、前記３次元空間に設定された基準点とを通る基準線上に前記ポインティング位置を設定する、請求項１に記載の情報処理装置。
【請求項３】
前記表示制御部は、前記基準線上に、前記ポインティング位置を通るポインティング線を表示させる、請求項２に記載の情報処理装置。
【請求項４】
前記表示制御部は、前記ポインティング線を、前記基準点から前記ポインティング位置までの線分として表示する、請求項３に記載の情報処理装置。
【請求項５】
前記表示制御部は、前記ポインティング位置にカーソルオブジェクトを表示させる、請求項２に記載の情報処理装置。
【請求項６】
前記位置設定部は、前記オブジェクトと前記基準線との交点に前記ポインティング位置を設定する、請求項２に記載の情報処理装置。
【請求項７】
前記位置設定部は、前記基準線との間に交点を有する複数の前記オブジェクトから１つの前記オブジェクトを選択し、該選択された前記オブジェクトと前記基準線との交点に前記ポインティング位置を設定する、請求項６に記載の情報処理装置。
【請求項８】
前記取得部は、前記オブジェクトの選択切り替え操作を取得し、
前記位置設定部は、前記選択切り替え操作に基づいて、選択する前記オブジェクトを切り替える、請求項７に記載の情報処理装置。
【請求項９】
前記位置設定部は、前記オブジェクトと前記基準線との交点が存在しない場合、前記基準線の近傍に存在する１または複数の前記オブジェクトの位置に基づいて、前記ポインティング位置を設定する、請求項２に記載の情報処理装置。
【請求項１０】
前記取得部は、前記基準点の移動操作を取得し、
前記位置設定部は、前記移動操作に基づいて、前記基準点を移動させる、請求項２に記載の情報処理装置。
【請求項１１】
前記表示制御部は、前記ポインティング位置に、輪郭をぼかして前記奥行き方向の差を視覚的に補正するカーソルオブジェクトを表示させる、請求項１に記載の情報処理装置。
【請求項１２】
前記表示制御部は、前記３次元空間を立体画像として前記表示画面に表示させる、請求項１に記載の情報処理装置。
【請求項１３】
オブジェクトが配置された３次元空間を表示画面に表示させる処理と、
前記３次元空間におけるポインティング操作を取得する処理と、
前記ポインティング操作に基づいて、前記３次元空間にポインティング位置を設定する処理と、
をコンピュータに実行させ、
前記ポインティング位置を設定する処理では、前記ポインティング位置と前記オブジェクトとの、前記表示画面の奥行き方向の差を補正して、前記ポインティング位置を前記３次元空間に表示させるプログラム。
【請求項１４】
オブジェクトが配置された３次元空間を表示画面に表示させるステップと、
前記３次元空間におけるポインティング操作を取得するステップと、
前記ポインティング操作に基づいて、前記３次元空間にポインティング位置を設定するステップと、
を含み、
前記ポインティング位置を設定するステップでは、前記ポインティング位置と前記オブジェクトとの、前記表示画面の奥行き方向の差を補正して、前記ポインティング位置を前記３次元空間に表示させる情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、プログラムおよび情報処理方法に関する。
【背景技術】
【０００２】
近年、表示画面を通してユーザに提供されるＧＵＩ（Graphical  User  Interface）が、仮想的な３次元空間として表示されることが一般的になっている。３次元空間に配置されるオブジェクトは、例えば２次元座標に奥行き方向を加えた３次元座標によってその位置が定義される。このような３次元空間のＧＵＩにおいて用いられる技術として、例えば特許文献１には、タッチパネルと感圧素子を用いて、オブジェクトを選択するためのカーソルオブジェクトの位置を３次元座標で指定する技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−７０９２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、カーソルオブジェクトの位置を指定するポインティングデバイスは、２次元座標を指定するものが依然として大多数である。従って、３次元空間のＧＵＩに対しても、２次元座標を指定するポインティングデバイスが用いられる場合が少なくない。この場合、カーソルオブジェクトは、例えば奥行き方向の座標が固定されて表示されるため、３次元空間に配置されたオブジェクトとの間で表示に違和感が生じるという問題があった。
【０００５】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、３次元空間におけるポインティング表示の違和感を軽減することが可能な、新規かつ改良された情報処理装置、プログラムおよび情報処理方法を提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある観点によれば、オブジェクトが配置された３次元空間を表示画面に表示させる表示制御部と、上記３次元空間におけるポインティング操作を取得する取得部と、上記ポインティング操作に基づいて、上記３次元空間にポインティング位置を設定する位置設定部とを備え、上記表示制御部は、上記ポインティング位置と上記オブジェクトとの、上記表示画面の奥行き方向の差を補正して、上記ポインティング位置を上記３次元空間に表示させる情報処理装置が提供される。
【０００７】
上記位置設定部は、上記ポインティング操作に基づいて、上記３次元空間に仮のポインティング位置を設定し、上記仮のポインティング位置と、上記３次元空間に設定された基準点とを通る基準線上に上記ポインティング位置を設定してもよい。
【０００８】
上記表示制御部は、上記基準線上に、上記ポインティング位置を通るポインティング線を表示させてもよい。
【０００９】
上記表示制御部は、上記ポインティング線を、上記基準点から上記ポインティング位置までの線分として表示してもよい。
【００１０】
上記表示制御部は、上記ポインティング位置にカーソルオブジェクトを表示させてもよい。
【００１１】
上記位置設定部は、上記オブジェクトと上記基準線との交点に上記ポインティング位置を設定してもよい。
【００１２】
上記位置設定部は、上記基準線との間に交点を有する複数の上記オブジェクトから１つの上記オブジェクトを選択し、該選択された上記オブジェクトと上記基準線との交点に上記ポインティング位置を設定してもよい。
【００１３】
上記取得部は、上記オブジェクトの選択切り替え操作を取得し、上記位置設定部は、上記選択切り替え操作に基づいて、選択する上記オブジェクトを切り替えてもよい。
【００１４】
上記位置設定部は、上記オブジェクトと上記基準線との交点が存在しない場合、上記基準線の近傍に存在する１または複数の上記オブジェクトの位置に基づいて、上記ポインティング位置を設定してもよい。
【００１５】
上記取得部は、上記基準点の移動操作を取得し、上記位置設定部は、上記移動操作に基づいて、上記基準点を移動させてもよい。
【００１６】
上記表示制御部は、上記ポインティング位置に、輪郭をぼかして上記奥行き方向の差を視覚的に補正するカーソルオブジェクトを表示させてもよい。
【００１７】
上記表示制御部は、上記３次元空間を立体画像として上記表示画面に表示させてもよい。
【００１８】
また、上記課題を解決するために、本発明の別の観点によれば、オブジェクトが配置された３次元空間を表示画面に表示させる処理と、上記３次元空間におけるポインティング操作を取得する処理と、上記ポインティング操作に基づいて、上記３次元空間にポインティング位置を設定する処理とをコンピュータに実行させ、上記ポインティング位置を設定する処理では、上記ポインティング位置と上記オブジェクトとの、上記表示画面の奥行き方向の差を補正して、上記ポインティング位置を上記３次元空間に表示させるプログラムが提供される。
【００１９】
また、上記課題を解決するために、本発明のさらに別の観点によれば、オブジェクトが配置された３次元空間を表示画面に表示させるステップと、上記３次元空間におけるポインティング操作を取得するステップと、上記ポインティング操作に基づいて、上記３次元空間にポインティング位置を設定するステップとを含み、上記ポインティング位置を設定するステップでは、上記ポインティング位置と上記オブジェクトとの、上記表示画面の奥行き方向の差を補正して、上記ポインティング位置を上記３次元空間に表示させる情報処理方法が提供される。
【発明の効果】
【００２０】
以上説明したように本発明によれば、３次元空間におけるポインティング表示の違和感を軽減することができる。
【図面の簡単な説明】
【００２１】
【図１】立体画像表示についての説明図である。
【図２】立体画像表示についての説明図である。
【図３】立体画像表示についての説明図である。
【図４】立体画像表示についての説明図である。
【図５】３次元空間におけるポインティング位置の表示についての説明図である。
【図６】本発明の第１の実施形態に係る情報処理装置の機能構成を示すブロック図である。
【図７】同実施形態におけるポインティング位置の設定についての説明図である。
【図８】同実施形態におけるポインティング位置の表示例を示す図である。
【図９】本発明の第２の実施形態におけるポインティング位置の表示例を示す図である。
【図１０】同実施形態におけるポインティング位置の奥行き表示についての説明図である。
【図１１】本発明の第３の実施形態におけるポインティング位置の設定についての説明図である。
【図１２】同実施形態におけるポインティング位置の奥行き表示についての説明図である。
【図１３】本発明の第４の実施形態におけるポインティング位置の設定についての説明図である。
【図１４】同実施形態におけるポインティング位置の設定についての説明図である。
【図１５】同実施形態における基準点の移動操作例を示す図である。
【図１６】本発明の第５の実施形態におけるポインティング位置の設定についての説明図である。
【図１７】本発明の第６の実施形態におけるポインティング位置の表示例を示す図である。
【発明を実施するための形態】
【００２２】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００２３】
なお、説明は以下の順序で行うものとする。
１．３次元空間のＧＵＩについて
２．第１の実施形態
３．第２の実施形態
４．第３の実施形態
５．第４の実施形態
６．第５の実施形態
７．第６の実施形態
８．まとめ
【００２４】
＜１．３次元空間のＧＵＩについて＞
まず、以下で説明される本発明の各実施形態において表示される、３次元空間のＧＵＩについて説明する。３次元空間のＧＵＩは、表示画面に仮想的な３次元空間を表示し、この３次元空間に、例えば音楽や映像などのコンテンツ、または操作ボタンなどの操作子などを表すオブジェクトを配置したものである。ユーザは、例えばポインティングデバイスを用いたポインティング操作によって、表示されているこれらのオブジェクトの中から所望のオブジェクトを選択する。この場合、ユーザは、ポインティング操作によって、３次元空間におけるポインティング位置を移動させ、ポインティング位置が所望のオブジェクトに重畳した状態で選択の操作をすることによって、オブジェクトを選択する。
【００２５】
ここで、ポインティング位置とは、３次元空間において、ポインティング操作によってポインティングされている位置である。３次元空間において、ポインティング位置は、ポインティング操作をするユーザがその位置を識別できるように表示される。この表示には、例えば矢印型などのカーソルオブジェクトが用いられてもよい。
【００２６】
このような３次元空間のＧＵＩは、表示画面に平面画像として表示されてもよいし、また立体画像として表示されてもよい。以下、３次元空間のＧＵＩの表示に用いられうる立体画像の表示方法について、図１〜図４を参照して説明する。
【００２７】
図１には、実空間に存在する物体２０を、観察者が左眼および右眼で見て立体的に把握する仕組みが示されている。図示されている例において、物体２０は、輻輳角θをもって視認される。ここで、輻輳角θは、左眼および右眼のそれぞれによる視線の交差角である。この輻輳角θによって、左眼および右眼で観察される物体２０の画像には、画像２０Ｌと画像２０Ｒのように差異が生じる。観察者は、この差異を利用して、物体２０を立体的に把握している。
【００２８】
図２には、画像として提示されるオブジェクト２１に設定される視差が示されている。図示されている例において、オブジェクト２１を観察者に立体的に把握させるために、観察者の左眼と右眼にそれぞれ提示されるオブジェクト２１Ｌとオブジェクト２１Ｒとの間には、視差ｄが設定される。
【００２９】
図３には、オブジェクト２１を、観察者が左眼および右眼で見て立体的に把握する仕組みが示されている。図示されている例において、オブジェクト２１Ｌが観察者の左眼に、オブジェクト２１Ｒが観察者の右眼にそれぞれ提示されることによって、オブジェクト２１に対する観察者の左眼および右眼のそれぞれによる視線の間に輻輳角θが生じ、観察者は、オブジェクト２１が手前に飛び出しているかのように錯覚する。
【００３０】
図４には、オブジェクト２１Ｌとオブジェクト２１Ｒとの間に設定される視差ｄと、観察者が認識するオブジェクト２１の位置との関係が示されている。図示されている例において、視差ｄ１が設定されている場合、観察者はオブジェクト２１を輻輳角θ１で視認する。一方、視差ｄ１よりも小さい視差ｄ２が設定されている場合、観察者はオブジェクト２１を輻輳角θ１よりも小さい輻輳角θ２で視認する。輻輳角θが小さいほどオブジェクト２１は奥にあるように錯覚される。そのため、オブジェクト２１は、視差ｄ２の場合において、視差ｄ１の場合よりも奥にあるように錯覚される。
【００３１】
以上説明したように、立体画像は、観察者の左眼および右眼にそれぞれ提示されるオブジェクトの画像に視差を与えることによって表示され、観察者が認識するオブジェクトの奥行き方向の位置は、オブジェクトの画像に設定される視差に影響を受ける。
【００３２】
続いて、３次元空間のＧＵＩにおいて、カーソルオブジェクトとオブジェクトとの間に奥行き方向の差がある場合について説明する。上述のように、カーソルオブジェクトは、３次元空間のＧＵＩにおいてオブジェクトの選択に用いられることがある。この場合、カーソルオブジェクトは、３次元空間において、ユーザのポインティングデバイスを用いた操作によって移動され、ユーザの所望のオブジェクトに重畳される。しかし、例えばポインティングデバイスが２次元座標を指定するものであるためカーソルオブジェクトの奥行き方向の座標が固定されている場合、または、ポインティングデバイスによって指定された奥行き方向の座標がオブジェクトの奥行き方向の座標と合っていない場合などに、カーソルオブジェクトとオブジェクトとの間には奥行き方向の差が生じうる。以下、このような場合について、図５を参照して説明する。
【００３３】
図５には、３次元空間に表示されたオブジェクト２１ａ，２１ｂ、およびカーソルオブジェクト２７が図示されている。なお、この３次元空間では、表示画面の左右方向にｘ軸、上下方向にｙ軸、奥行き方向にｚ軸がそれぞれ設定されている。平面Ｚ０および平面Ｚ１は、ｚ軸に垂直な面である。ここで、平面Ｚ０および平面Ｚ１のそれぞれに含まれる点は、互いに同じｚ座標である。また、平面Ｚ０に含まれる点と平面Ｚ１に含まれる点との間では、ｚ軸方向の座標が異なる。図示されている例において、オブジェクト２１ａは平面Ｚ１上にあり、オブジェクト２１ｂは平面Ｚ０上にある。
【００３４】
カーソルオブジェクト２７は、３次元空間におけるポインティング位置を表す。図示されている例において、ポインティング位置は、ｘ座標およびｙ座標の２次元座標を指定するポインティングデバイスによって操作されるため、ポインティング位置のｚ座標は、平面Ｚ０のｚ座標に固定されている。従って、カーソルオブジェクト２７は、平面Ｚ０上を、ポインティング操作に従ってｘ軸方向またはｙ軸方向に移動する。ユーザは、カーソルオブジェクト２７とオブジェクト２１とが、ｘ座標およびｙ座標について重複した状態で選択の操作をすることによって、オブジェクト２１を選択する。図示されている状態は、カーソルオブジェクト２７とオブジェクト２１ａとが、ｘ座標およびｙ座標について重複した状態、すなわち、カーソルオブジェクト２７によってオブジェクト２１ａを選択可能な状態である。
【００３５】
しかし、平面Ｚ０上にあるカーソルオブジェクト２７は、平面Ｚ１上にあるオブジェクト２１ａとはｚ座標が異なるため、オブジェクト２１ａにカーソルオブジェクト２７を重畳させて表示させると、図示されているように、カーソルオブジェクト２７はオブジェクト２１ａの表面から奥にめり込んだように表示されてしまう。ユーザは、カーソルオブジェクト２７とオブジェクト２１ａとを重畳させるポインティング操作をしているため、このようなカーソルオブジェクト２７およびオブジェクト２１ａの表示から違和感を与える可能性が高い。
【００３６】
特に、上記のような状態で３次元空間が立体画像として表示される場合、カーソルオブジェクト２７に設定される視差が、平面Ｚ０のｚ座標に対応した視差であり、オブジェクト２１ａに設定される視差が、平面Ｚ１のｚ座標に対応した視差であるため、重畳しているはずの２つのオブジェクトに対して矛盾する視差が設定されることになり、ユーザに強い違和感を与える可能性が高い。
【００３７】
本発明の各実施形態は、以上で説明したようにユーザに違和感を与える可能性が高い、ポインティング位置の表示とオブジェクトの表示との間のｚ軸方向の差を補正する構成を含むものである。
【００３８】
＜２．第１の実施形態＞
続いて、本発明の第１の実施形態について説明する。本実施形態では、ＧＵＩの３次元空間２００において、ユーザのポインティング操作に基づいて設定された仮のポインティング位置２２０と、基準点２３０とを通る基準線２４０上にポインティング位置２５０が設定され、ポインティング位置を通るポインティング線２６０が表示される。以下の説明では、図６を参照して、本実施形態に係る情報処理装置１００の機能構成について説明し、図７および図８を参照して、本実施形態におけるポインティング位置２５０の設定および表示について説明する。
【００３９】
図６は、本発明の第１の実施形態に係る情報処理装置１００の機能構成を示すブロック図である。図６を参照すると、情報処理装置１００は、操作部１１０、ＣＰＵ（Central  Processing  Unit）１２０、表示画面１３０および記憶部１４０を含む。ＣＰＵ１２０は、取得部１２２、位置設定部１２４、および表示制御部１２６の機能を含む。
【００４０】
なお、本実施形態において情報処理装置１００に含まれる要素のうち、操作部１１０、表示画面１３０および記憶部１４０は、情報処理装置１００とは独立して設けられてもよい。例えば、操作部１１０は、ＵＳＢ（Universal  Serial  Bus）などによって情報処理装置１００に接続される別の操作機器であってもよい。また、例えば、表示画面１３０は、ＨＤＭＩ（High-Definition  Multimedia  Interface）、またはＤＶＩ（Digital  Visual  Interface）などによって情報処理装置１００に接続される表示装置によって提供されてもよい。また、例えば、記憶部１４０は、情報処理装置１００にＬＡＮ（Local  Area  Network）、またはインターネットなどのネットワークによって接続されたネットワーク上の記憶装置であってもよい。
【００４１】
操作部１１０は、３次元空間２００におけるポインティング操作を信号に変換し、取得部１２２に送信する。本実施形態において、操作部１１０は、例えばマウス、タッチパッド、またはタッチパネルなど、２次元座標を指定するポインティングデバイスである。しかし、操作部１１０は、例えば、３次元マウス、または赤外線を利用したリモートコントローラユニットなど、３次元座標を指定するポインティングデバイスであってもよい。ここで、３次元空間２００は、表示画面１３０に表示される、例えば音楽や映像などのコンテンツ、または操作ボタンなどの操作子などを表すオブジェクト２１０が配置された３次元空間である。操作部１１０は、例えばオブジェクト２１０の中から所望のオブジェクトを選択するためのユーザのポインティング操作を信号に変換し、取得部１２２に送信する。
【００４２】
ＣＰＵ１２０は、情報処理装置１００の動作制御のための演算処理装置である。ＣＰＵ１２０は、例えば記憶部１４０に格納されたプログラムに従って動作することによって、情報処理装置１００の動作制御のために必要な各種の演算処理を実行する。ＣＰＵ１２０による演算処理には、例えば記憶部１４０に含まれるＤＲＡＭ（Dynamic  Random  Access  Memory）が用いられてもよい。なお、ＣＰＵ１２０を動作させるためのプログラムは、例えばディスク状記憶媒体、またはメモリカードなどのリムーバブル記憶媒体に格納されて情報処理装置１００に提供されるものであってもよく、また、例えばＬＡＮ、またはインターネットなどのネットワークを介して情報処理装置１００にダウンロードされるものであってもよい。ＣＰＵ１２０は、取得部１２２、位置設定部１２４、および表示制御部１２６の各機能を実現する。
【００４３】
取得部１２２は、操作部１１０から信号を受信し、３次元空間２００におけるポインティング操作を取得する。本実施形態において、操作部１１０は２次元座標を指定するポインティングデバイスであるため、取得部１２２によって取得されるポインティング操作は、例えばｘ座標およびｙ座標などの２次元座標を指定する操作である。しかし、操作部１１０が３次元座標を指定するポインティングデバイスである場合、取得部１２２によって取得される操作は、例えばｘ座標、ｙ座標およびｚ座標などの３次元座標を指定する操作でありうる。
【００４４】
位置設定部１２４は、取得部１２２によって取得されたポインティング操作に基づいて、３次元空間２００にポインティング位置２５０を設定し、ポインティング位置２５０の位置情報を表示制御部１２６に提供する。本実施形態において、まず、位置設定部１２４は、取得されたポインティング操作に基づいて、３次元空間２００に仮のポインティング位置２２０を設定する。次に、位置設定部１２４は、仮のポインティング位置２２０と、３次元空間に設定された基準点２３０とを通る基準線上に、ポインティング位置２５０を設定する。なお、位置設定部１２４によるポインティング位置２５０の設定については後述する。
【００４５】
表示制御部１２６は、表示画面１３０に画像信号を送信し、オブジェクト２１０が配置された３次元空間２００を表示させる。表示制御部１２６は、位置設定部１２４から提供されたポインティング位置２５０の位置情報に基づいて、３次元空間２００にポインティング位置を表示させる。このとき、ポインティング位置２５０は、表示画面１３０の奥行き方向について、オブジェクト２１０との差が補正されて表示される。なお、表示制御部１２６によるポインティング位置２５０の表示については後述する。
【００４６】
表示画面１３０は、表示制御部１２６から画像信号を受信し、オブジェクト２１０が配置された３次元空間２００を表示する。表示画面１３０は、例えばＬＣＤ（Liquid  Crystal  Display）、ＰＤＰ（Plasma  Display  Panel）、または有機ＥＬ（Electro-Luminescence）パネルなどでありうる。表示画面１３０に表示される３次元空間２００では、表示画面１３０に対する左右方向、上下方向、および奥行き方向として、ｘ軸方向、ｙ軸方向、およびｚ軸方向が定義される。なお、３次元空間２００の表示については後述する。
【００４７】
記憶部１４０には、情報処理装置１００の処理に関するデータが格納される。記憶部１４０は、例えば、フラッシュＲＯＭ（Read  Only  Memory）、もしくはＤＲＡＭなどの半導体メモリ、ＢＤ（Blu-ray  Disc）、ＤＶＤ（Digital  Versatile  Disc）、もしくはＣＤ（Compact  Disc）などの光ディスク、またはハードディスクなどでありうる。記憶部１４０は、情報処理装置１００に内蔵される記憶装置であってもよく、情報処理装置１００に着脱可能なメモリカードなどのリムーバブルメディアであってもよい。また、記憶部１４０は、複数の種類の記憶装置またはリムーバブルメディアを含んでもよい。記憶部１４０には、例えばＧＵＩの３次元空間の表示に用いられる画像データが格納されるほか、ＣＰＵ１２０を動作させるためのプログラムなどが格納されうる。
【００４８】
図７は、本発明の第１の実施形態におけるポインティング位置２５０の設定についての説明図である。図７を参照すると、３次元空間２００には、オブジェクト２１０ａ，２１０ｂが表示されている。ポインティング位置２５０は、仮のポインティング位置２２０と、基準点２３０とを通る基準線２４０上に設定される。図示されている例では、ポインティング位置２５０が、オブジェクト２１０ａと基準線２４０との表面に設定されている。
【００４９】
３次元空間２００は、表示画面１３０にＧＵＩとして表示される３次元空間である。３次元空間２００では、図示されているようにｘ軸方向、ｙ軸方向、およびｚ軸方向が定義されている。このうち、ｘ軸方向は表示画面１３０の左右方向であり、ｙ軸方向は表示画面１３０の上下方向であり、ｚ軸方向は表示画面１３０の奥行き方向である。ここでは、ｚ軸方向の座標が等しい領域を示す面として、平面Ｚ０と平面Ｚ１とが図示されている。平面Ｚ０と平面Ｚ１との間では、ｚ軸方向の座標が異なる。
【００５０】
オブジェクト２１０は、３次元空間２００に配置され、例えばＧＵＩにおいて音楽や映像などのコンテンツ、または操作ボタンなどの操作子などを表すオブジェクトである。複数のオブジェクト２１０は、ｘ軸方向、ｙ軸方向、およびｚ軸方向について、互いに異なる位置に配置されうる。図示されている例において、オブジェクト２１０ａは平面Ｚ１上にあり、オブジェクト２１０ｂは平面Ｚ０上にある。上述の通り平面Ｚ０と平面Ｚ１とは、互いにｚ軸方向の座標が異なるため、オブジェクト２１０ａのｚ座標とオブジェクト２１０ｂのｚ座標とは異なる。
【００５１】
仮のポインティング位置２２０は、取得部１２２によって取得されるポインティング操作に基づいて設定される。本実施形態において、取得部１２２によって取得されるポインティング操作は、２次元座標を指定する操作である。そのため、仮のポインティング位置２２０のｚ座標は、平面Ｚ０のｚ座標に固定されている。なお、ここでは、ポインティング操作によって指定される２次元座標を、ｘ座標およびｙ座標とする。位置設定部１２４は、平面Ｚ０上の、ポインティング操作によって指定されたｘ座標およびｙ座標を有する点に、仮のポインティング位置２２０を設定する。
【００５２】
基準点２３０は、ポインティング位置２５０を設定するための基準として、３次元空間２００に設定される点である。基準点２３０は、例えば、３次元空間２００において、ユーザが自らの手元の位置として認識する位置、つまり、３次元空間２００においてユーザの視点が設定される位置からｙ軸の負の向きに移動した位置に設定されうる。本実施形態において、基準点２３０は、位置設定部１２４によって予め設定された点である。なお、基準点２３０は、必ずしも表示画面１３０に表示される範囲になくてもよく、表示画面１３０に表示される範囲の外に設定されてもよい。
【００５３】
基準線２４０は、仮のポインティング位置２２０と、基準点２３０とを通る線である。本実施形態において、基準線２４０は、直線として設定される。位置設定部１２４は、基準線２４０上にポインティング位置２５０を設定する。本実施形態において、位置設定部１２４は、オブジェクト２１０と基準線２４０との交点に、ポインティング位置２５０を設定する。例えば、位置設定部１２４は、基準線２４０の方向ベクトル、およびオブジェクト２１０ａの各頂点の座標から、Tomas  Mollerの交差判定アルゴリズムによって、オブジェクト２１０が存在する平面Ｚと基準線２４０との交点を算出し、この交点が、オブジェクト２１０のｘ座標およびｙ座標の範囲内にある場合、この交点をポインティング位置２５０に設定する。
【００５４】
ここで、例えばオブジェクト２１０が移動した場合、位置設定部１２４は、移動後のオブジェクト２１０の位置に基づいて、ポインティング位置２５０を再設定してもよい。この場合、オブジェクト２１０の移動に伴って、ポインティング位置２５０が動的に変化する。
【００５５】
図示されている例では、オブジェクト２１０ａが存在する平面Ｚ１と基準線２４０との交点が、オブジェクト２１０ａのｘ座標およびｙ座標の範囲内にある。そのため、ポインティング位置２５０は、平面Ｚ１と基準線２４０との交点、すなわち、オブジェクト２１０ａと基準線２４０との交点に設定される。一方、本実施形態において、オブジェクト２１０と基準線２４０との交点が存在しない場合、位置設定部１２４は、仮のポインティング位置２２０をそのままポインティング位置２５０に設定する。
【００５６】
なお、上記の位置設定部１２４の処理において用いられたTomas  Mollerの交差判定アルゴリズムについては、例えば「Tomas  Moller、“Practical  Analysis  of  Optimized  Ray-Triangle  Intersection”、[online]、［平成２２年８月３１日検索］、インターネット＜ＵＲＬ：http://www.cs.lth.se/home/Tomas_Akenine_Moller/raytri/＞」等に記載されている。
【００５７】
図８は、本発明の第１の実施形態におけるポインティング位置２５０の表示例を示す図である。図８を参照すると、３次元空間２００において、ポインティング位置２５０を通るポインティング線２６０が表示される。
【００５８】
ポインティング線２６０は、ポインティング位置２５０を通る線である。図示されている例において、ポインティング線２６０は、表示制御部１２６によって、基準点２３０からポインティング位置２５０までの線分として表示される。この場合、ユーザは、ポインティング線２６０として表示される線分の端点として、ポインティング位置２５０を認識することが可能である。なお、ポインティング線２６０は、必ずしもすべての部分が表示画面１３０に表示されていなくてもよい。例えば、基準点２３０が表示画面１３０に表示される範囲の外に設定されている場合、ポインティング線２６０も、その一部が表示画面１３０に表示される範囲の外にあり、表示画面１３０の端で切れて表示されてもよい。
【００５９】
ここで、３次元空間２００が、表示画面１３０に立体画像として表示される場合、オブジェクト２１０とともに、ポインティング線２６０にも視差が設定される。ポインティング線２６０に設定される視差の値は、例えば、基準点２３０のｚ座標に対応する視差の値から、ポインティング位置２５０のｚ座標に対応する視差へと線形に変化する値でありうる。図示されている例において、ポインティング位置２５０は、平面Ｚ１上にあるオブジェクト２１０ａと基準線２４０との交点に設定されている。ポインティング位置２５０と、ポインティングの対象になるオブジェクト２１０ａとは、いずれも平面Ｚ１上にあるため、ポインティング位置２５０においてポインティング線２６０に設定される視差と、オブジェクト２１０ａに設定される視差とは、いずれも平面Ｚ１のｚ座標に対応する視差になる。従って、オブジェクト２１０ａとポインティング線２６０との視差は矛盾せず、ユーザに与える違和感が低減される。
【００６０】
一方、オブジェクト２１０と基準線２４０との交点が存在せず、ポインティング位置２５０が仮のポインティング位置２２０にそのまま設定された場合、ポインティング線２６０は、上記の場合と同様に、基準点２３０からポインティング位置２５０までの線分として表示されてもよい。また、この場合、ポインティング線２６０は、基準点２３０から、仮のポインティング位置２２０の位置に設定されたポインティング位置２５０を通って無限遠まで伸びる半直線として表示されてもよい。
【００６１】
＜３．第２の実施形態＞
続いて、本発明の第２の実施形態について説明する。本実施形態では、ポインティング位置２５０に、カーソルオブジェクト２７０が表示される。以下の説明では、図９および図１０を参照して、本実施形態におけるポインティング位置２５０の表示について説明する。なお、本実施形態は、第１の実施形態と比べて、ポインティング線２６０に代えて、またはこれとともにカーソルオブジェクト２７０が表示される点において相違するが、その他の機能構成は第１の実施形態と略同一であるため、詳細説明を省略する。
【００６２】
図９は、本発明の第２の実施形態におけるポインティング位置２５０の表示例を示す図である。図９を参照すると、３次元空間２００において、ポインティング位置２５０にカーソルオブジェクト２７０が表示される。
【００６３】
カーソルオブジェクト２７０は、表示制御部１２６によって、例えば図示されているような矢印型のオブジェクトとして表示される。なお、カーソルオブジェクト２７０は、必ずしも矢印型でなくてもよく、円形、三角形、多角形など、様々な形状を有するオブジェクトであってもよい。また、カーソルオブジェクト２７０の形状は、必ずしも図示されているように平面的な形状でなくてもよく、立体的な形状であってもよい。カーソルオブジェクト２７０の表示によって、ユーザは、カーソルオブジェクト２７０が表示されている位置として、ポインティング位置２５０を認識することが可能である。なお、ポインティング位置２５０を示すために、カーソルオブジェクト２７０に加えて、第１の実施形態において説明されたポインティング線２６０が表示されてもよい。
【００６４】
図１０は、本発明の第２の実施形態におけるポインティング位置２５０の奥行き表示についての説明図である。図１０を参照すると、カーソルオブジェクト２７０は、ｘ軸方向の位置がオブジェクト２１０と重複している場合、ｚ軸方向についてオブジェクト２１０と同じ位置に表示される。なお、図では簡単のためにｘ軸方向とｚ軸方向が示されているが、ｙ軸方向が含まれる場合も同様である。
【００６５】
上述したようにポインティング位置２５０が設定され、ポインティング位置２５０にカーソルオブジェクト２７０が表示されることによって、カーソルオブジェクト２７０は、ｚ軸方向、すなわち表示画面１３０の奥行き方向について、オブジェクト２１０に対応した位置に表示される。従って、オブジェクト２１０とカーソルオブジェクト２７０とが重畳して表示されている場合には、カーソルオブジェクト２７０はオブジェクト２１０の表面に位置しているように表示される。そのため、３次元空間２００が、表示画面１３０に立体画像として表示される場合に、カーソルオブジェクト２７０に設定される視差は、オブジェクト２１０に設定される視差と同様の視差になる。従って、立体画像においてオブジェクト２１０とカーソルオブジェクト２７０との視差は矛盾せず、ユーザに与える違和感が低減される。
【００６６】
一方、オブジェクト２１０と基準線２４０との交点が存在せず、ポインティング位置２５０が仮のポインティング位置２２０にそのまま設定された場合、カーソルオブジェクト２７０は、仮のポインティング位置２２０が設定される平面Ｚ０上に表示される。なお、このような表示において、平面Ｚ０とオブジェクト２１０とのｚ座標の差によっては、カーソルオブジェクト２７０のｚ座標、すなわち奥行きが急に変化し、ユーザに違和感を与える可能性もある。その場合、後述する第３の実施形態を用いることが有用である。
【００６７】
＜４．第３の実施形態＞
続いて、本発明の第３の実施形態について説明する。本実施形態では、オブジェクト２１０と基準線２４０との交点が存在しない場合、基準線２４０の近傍に存在する１または複数のオブジェクト２１０の位置に基づいてポインティング位置２５０が設定される。以下の説明では、図１１および図１２を参照して、本実施形態におけるポインティング位置２５０の表示について説明する。なお、本実施形態は、第２の実施形態と比べて、オブジェクト２１０と基準線２４０との交点が存在しない場合のポインティング位置２５０の設定において相違するが、その他の機能構成は第２の実施形態と略同一であるため、詳細説明を省略する。
【００６８】
図１１は、本発明の第３の実施形態におけるポインティング位置２５０の設定についての説明図である。図１１を参照すると、オブジェクト２１０と基準線２４０との交点が存在しない場合、ポインティング位置２５０は、基準線２４０の近傍に存在するオブジェクト２１０ａおよびオブジェクト２１０ｂの位置に基づいて設定される。
【００６９】
図示されている例において、仮のポインティング位置２２０と基準点２３０とを通る直線として設定された基準線２４０は、３次元空間２００に表示されるオブジェクト２１０ａおよびオブジェクト２１０ｂのいずれとも交点を有さない。そこで、位置設定部１２４は、基準線２４０の近傍に存在する２１０ａおよびオブジェクト２１０ｂの位置に基づいて、ポインティング位置２５０を設定する。具体的には、位置設定部１２４は、オブジェクト２１０ａがある平面Ｚ１と、オブジェクト２１０ｂがある平面Ｚ０との中間にあたる基準線２４０上の位置に、ポインティング位置２５０を設定する。表示制御部１２６は、こうして設定されたポインティング位置２５０に、カーソルオブジェクト２７０を表示する。
【００７０】
このようにポインティング位置２５０が設定され、ポインティング位置２５０にカーソルオブジェクト２７０が表示されることによって、図示されている状態から、ポインティング位置２５０がいずれかのオブジェクト２１０に重複する状態に遷移した場合に、カーソルオブジェクト２７０の表示の変化に対するユーザの違和感が軽減される。例えば、図示されている状態から、ユーザのポインティング操作によって仮のポインティング位置２２０が移動し、基準線２４０がオブジェクト２１０ａと交点を有する状態になった場合、ポインティング位置２５０は、基準線２４０とオブジェクト２１０ａとの交点に設定される。この場合、ポインティング位置２５０に表示されるカーソルオブジェクト２７０が、平面Ｚ０上から平面Ｚ１上に移動するのに比べて、本実施形態のように、平面Ｚ０と平面Ｚ１との中間から平面Ｚ１上に移動する方が、カーソルオブジェクト２７０のｚ座標、すなわち奥行きの変化は緩やかであり、表示に対するユーザの違和感が軽減される。
【００７１】
図１２は、本発明の第３の実施形態におけるポインティング位置の奥行き表示についての説明図である。図１２を参照すると、カーソルオブジェクト２７０のｚ座標は、互いにｚ座標が異なるオブジェクト２１０ａとオブジェクト２１０ｂとの間で連続的に変化する。なお、図では簡単のためにｘ軸方向とｚ軸方向が示されているが、ｙ軸方向が含まれる場合も同様である。
【００７２】
図示されている例において、ポインティング位置２５０は、ｘ座標が負の方向に変化するのに伴って、オブジェクト２１０ａからオブジェクト２１０ｂへと移動する。オブジェクト２１０ａの位置とオブジェクト２１０ｂの位置とは、ｘ軸方向について連続していない。そのため、位置設定部１２４は、このオブジェクト２１０ａとオブジェクト２１０ｂとの間の部分において、オブジェクト２１０ａおよびオブジェクト２１０ｂのそれぞれのｚ座標に基づいて、ｚ座標が連続的に変化するようにポインティング位置２５０を設定する。その結果、ポインティング位置２５０に表示されるカーソルオブジェクト２７０のｚ座標は、オブジェクト２１０ａとオブジェクト２１０ｂとの間で連続的に変化する。このようにカーソルオブジェクト２７０が表示されることによって、オブジェクト２１０ａとオブジェクト２１０ｂとの間隙で、カーソルオブジェクト２７０が平面Ｚ０まで移動し、奥行きが急激に変化して表示されるというようなことがなくなり、表示に対するユーザの違和感が低減される。
【００７３】
このような表示を実現するために、位置設定部１２４は、例えば、ポインティング位置２５０の移動先を予測してもよい。この場合、位置設定部１２４は、移動前のポインティング位置２５０が重複しているオブジェクト２１０ａのｚ座標と、移動後にポインティング位置２５０が重複していると予測されるオブジェクト２１０ｂのｚ座標との間で連続的に変化するように、オブジェクト２１０ａとオブジェクト２１０ｂとの間の間隙を移動しているときのポインティング位置２５０のｚ座標を設定する。
【００７４】
また、位置設定部１２４は、３次元空間２００におけるオブジェクト２１０の配置に応じて予め用意された奥行きマップに基づいて、オブジェクト２１０の間隙を移動しているときのポインティング位置２５０のｚ座標を設定してもよい。奥行きマップは、例えば、３次元空間２００のｘ座標およびｙ座標に対して、ｚ座標を対応付けたマップである。奥行きマップは、各オブジェクト２１０の間隙において、それぞれのオブジェクト２１０のｚ座標の間を連続的につなぐ曲面として定義されてもよい。
【００７５】
なお、図では、ポインティング位置２５０のｚ座標の連続的な変化として、正弦曲線に近い軌跡が示されているが、ポインティング位置２５０のｚ座標の変化の仕方はこれには限られない。例えば、ポインティング位置２５０のｚ座標は、線形に変化してもよく、また、ベジエ曲線など任意の曲線状に変化してもよい。また、本実施形態では、第２の実施形態を元に、ポインティング位置２５０にカーソルオブジェクト２７０が表示される場合について説明したが、第１の実施形態と同様に、ポインティング位置２５０を通るポインティング線２６０が表示されてもよい。
【００７６】
＜５．第４の実施形態＞
続いて、本発明の第４の実施形態について説明する。本実施形態において、情報処理装置１００の取得部１２２は、基準点２３０の移動操作を取得し、位置設定部１２４は、移動操作に基づいて基準点２３０を移動させる。以下の説明では、図１３および図１４を参照して、本実施形態におけるポインティング位置２５０の設定について説明し、図１５を参照して、本実施形態における基準点２３０の移動操作について説明する。なお、本実施形態は、第１〜第３の実施形態と比べて、基準点２３０が移動される点において相違するが、その他の機能構成は第１〜第３の実施形態と略同一であるため、詳細説明を省略する。
【００７７】
図１３は、本発明の第４の実施形態におけるポインティング位置２５０の設定についての説明図である。図１３には、オブジェクト２１０ａ〜２１０ｄの表示を、表示画面１３０の正面方向から見た状態が示されている。オブジェクト２１０ａ〜２１０ｄは、互いに重畳して表示されており、オブジェクト２１０ｄは、オブジェクト２１０ｃの背面側に配置されている。例えば、このように複数のオブジェクト２１０が表示されている場合において、本実施形態の構成は有用である。
【００７８】
図１４は、本発明の第４の実施形態におけるポインティング位置２５０の設定についての説明図である。図１４を参照すると、オブジェクト２１０ｃは平面Ｚ０上に配置され、オブジェクト２１０ａ，２１０ｂは平面Ｚ０よりも手前の平面Ｚ１上に配置されている。さらに、オブジェクト２１０ｄは、平面Ｚ０よりも奥の平面Ｚ２上に配置されている。図では、移動前後の基準点２３０として、基準点２３０ａおよび基準点２３０ｂが図示されている。
【００７９】
移動前の状態では、基準点２３０ａが設定され、基準点２３０ａと仮のポインティング位置２２０ａとを通る直線として基準線２４０ａが設定されている。図示されている例において、ポインティング位置２５０ａは、基準線２４０ａと、オブジェクト２１０ｃとの交点である。なお、オブジェクト２１０ｃは平面Ｚ０上にあるため、ポインティング位置２５０は、仮のポインティング位置２２０と同じ位置にある。
【００８０】
この状態で、情報処理装置１００の取得部１２２は、ポインティング操作を取得し、位置設定部１２４は、取得されたポインティング操作に従って、平面Ｚ０上に仮のポインティング位置２２０ａを設定する。このように、仮のポインティング位置２２０ａが移動し、それに従って仮のポインティング位置２２０ａを通る基準線２４０ａが移動することによって、ユーザはポインティング位置２５０を所望のオブジェクト２１０まで移動させる。しかし、基準点２３０ａは、オブジェクト２１０ａ〜２１０ｄに対してｚ軸の負方向、つまり表示画面の正面側に設定されている。そのため、オブジェクト２１０ｃの背面側に配置されたオブジェクト２１０ｄをポインティングするために、仮のポインティング位置２２０ａを平面Ｚ０上で移動させても、基準線２４０ａは、オブジェクト２１０ｄよりも正面側にあるオブジェクト２１０ｃと交わってしまい、オブジェクト２１０ｃと基準線２４０ａとの交点にポインティング位置２５０が設定されてしまう。
【００８１】
一方、変化後の状態では、基準点２３０ｂが設定され、基準点２３０ｂと仮のポインティング位置２２０ｂとを通る直線として基準線２４０ｂが設定されている。図示されている例において、ポインティング位置２５０ｂは、基準線２４０ｂと、オブジェクト２１０ｄとの交点である。
【００８２】
移動後の基準点２３０ｂは、例えば、移動前の基準点２３０ａを、ｘ軸およびｙ軸の負方向に移動させた点でありうる。このように基準点２３０ｂを移動させ、さらに仮のポインティング位置２２０を平面Ｚ０上で移動させることによって、オブジェクト２１０ｃと交点を有さずにオブジェクト２１０ｄと交点を有する基準線２４０ｂが設定される。このように、基準点２３０を移動させることによって、他のオブジェクト２１０の背面に位置するなどして、単一の基準点ではポインティングすることが難しいオブジェクト２１０を容易にポインティングすることが可能である。
【００８３】
このように基準点２３０を移動させるために、情報処理装置１００の取得部１２２が操作部１１０を介して取得する移動操作は、操作部１１０の種類によって様々な操作でありうる。例えば、操作部１１０がジャイロセンサまたは加速度センサのようなセンサが用いられるポインティングデバイスを含む場合、ポインティングデバイスの移動が基準点２３０の移動操作であってもよい。この場合、基準点２３０が、３次元空間２００における仮想的なユーザの手元の位置として設定されていれば、ユーザは、基準点２３０を、ポインティングデバイスを持つ手元を移動させるような感覚で移動させることが可能である。図において基準点２３０に示されているポインティングデバイスと手は、上記のようにして基準点２３０の移動操作をする場合のユーザの感覚の一例を示すものである。一方、操作部１１０にキーボードが含まれる場合には、基準点２３０の移動操作のために任意のキーが割り当てられてもよい。さらに、操作部１１０がマウスを含む場合の基準点２３０の移動操作について、以下で図１５を参照して説明する。
【００８４】
図１５は、本発明の第４の実施形態における基準点２３０の移動操作例を示す図である。図１５では、情報処理装置１００の操作部１１０がマウスを含む場合の基準点２３０の移動操作の例が示されている。図示されている例において、仮のポインティング位置２２０を移動させる場合、ユーザは、（ａ）として示されているように、マウスのボタンを押さずにマウスを動かす。一方、基準点２３０を移動させる場合、ユーザは、（ｂ）として示されているように、マウスのボタンを押しながらマウスを動かす。
【００８５】
＜６．第５の実施形態＞
続いて、本発明の第５の実施形態について説明する。本実施形態では、情報処理装置１００の取得部１２２がオブジェクト２１０の選択切り替え操作を取得し、位置設定部１２４が、選択切り替え操作に基づいて、ポインティング位置２５０の設定を切り替える。以下の説明では、図１６を参照して、本実施形態におけるポインティング位置２５０の設定について説明する。なお、本実施形態は、第１〜第４の実施形態と比べて、ポインティング位置２５０が切り替えられる点において相違するが、その他の機能構成は第１〜第４の実施形態と略同一であるため、詳細説明を省略する。
【００８６】
図１６は、本発明の第５の実施形態におけるポインティング位置２５０の設定についての説明図である。図１６を参照すると、基準線２４０は、オブジェクト２１０ａ、オブジェクト２１０ｃ、およびオブジェクト２１０ｄとの間に交点を有し、ポインティング位置２５０は、これらのオブジェクトから選択された１つのオブジェクトと基準線２４０との交点に設定される。なお、図では、簡単のために仮のポインティング位置２２０は示されていないが、基準線２４０は、他の実施形態と同様に、基準点２３０と仮のポインティング位置２２０とを通る直線として設定される。
【００８７】
オブジェクト２１０ａ〜２１０ｄは、第４の実施形態において図１３を参照して説明されたオブジェクト２１０ａ〜２１０ｄと同様に配置された複数のオブジェクトである。基準点２３０を通る基準線２４０は、これらのオブジェクトのうち、オブジェクト２１０ａ、オブジェクト２１０ｃ、およびオブジェクト２１０ｄとの間に交点を有する。情報処理装置１００の位置設定部１２４は、このオブジェクト２１０ａ、オブジェクト２１０ｃ、およびオブジェクト２１０ｄから１つのオブジェクトを選択し、選択されたオブジェクトと基準線２４０との交点にポインティング位置２５０を設定する。
【００８８】
図示されている例において、（ａ）では、オブジェクト２１０ａが選択され、オブジェクト２１０ａと基準線２４０との交点にポインティング位置２５０ａが設定されている。一方、（ｂ）では、オブジェクト２１０ｃが選択され、オブジェクト２１０ｃと基準線２４０との交点にポインティング位置２５０ｃが設定されている。また、（ｃ）では、オブジェクト２１０ｄが選択され、オブジェクト２１０ｄと基準線２４０との交点にポインティング位置２５０ｄが設定されている。ここで、表示画面１３０の正面から見てより奥のオブジェクト２１０が選択されている場合、手前にあるオブジェクト２１０は透過して表示されてもよい。図示されている例では、（ｂ）でオブジェクト２１０ａが、（ｃ）でオブジェクト２１０ａおよびオブジェクト２１０ｃが、それぞれ透過して表示されている。
【００８９】
また、本実施形態において、情報処理装置１００の取得部１２２は、オブジェクト２１０の選択切り替え操作を取得し、位置設定部１２４は、選択切り替え操作に基づいて、選択するオブジェクト２１０を切り替える。取得部１２２が、操作部１１０を介して取得する選択切り替え操作は、操作部１１０の種類によって様々な操作でありうる。例えば、操作部１１０がキーボードを含む場合には、ポインティング位置２５０が設定されるオブジェクト２１０をより奥のオブジェクト２１０に変更するためのキーと、より手前のオブジェクト２１０に変更するためのキーとが割り当てられてもよい。一方、操作部１１０にホイール付きマウスが含まれる場合には、マウスのホイールを回す方向によって、ポインティング位置２５０が設定されるオブジェクト２１０をより奥のオブジェクト２１０に変更する操作と、より手前のオブジェクト２１０に変更するための操作とが取得されてもよい。また、操作部１１０にジャイロセンサまたは加速度センサなどのセンサを用いたポインティングデバイスが含まれる場合には、ポインティングデバイスを傾ける方向によって、ポインティング位置２５０が設定されるオブジェクト２１０をより奥のオブジェクト２１０に変更する操作と、より手前のオブジェクト２１０に変更するための操作とが取得されてもよい。上記のような操作によって、ユーザは、図１６において示された（ａ）、（ｂ）、および（ｃ）の選択状態を、相互に遷移させる。
【００９０】
＜７．第６の実施形態＞
続いて、本発明の第６の実施形態について説明する。本実施形態では、輪郭をぼかしたカーソルオブジェクト３７０が表示される。以下の説明では、図１７を参照して、本実施形態におけるポインティング位置の表示について説明する。なお、本実施形態は、第１の実施形態と比べて、仮のポインティング位置２２０、基準点２３０、および基準線２４０が設定されず、ポインティング操作に基づいてそのままポインティング位置が設定される点において相違するが、その他の機能構成は第１の実施形態と略同一であるため、詳細説明を省略する。
【００９１】
図１７は、本発明の第６の実施形態におけるポインティング位置の表示例を示す図である。図１７を参照すると、３次元空間２００には、平面Ｚ１上にオブジェクト２１０ａが、平面Ｚ０上にオブジェクト２１０ｂが、それぞれ配置されている。また、３次元空間２００において、ポインティング位置は平面Ｚ０上に設定され、カーソルオブジェクト３７０が表示される。
【００９２】
図示されている例において、カーソルオブジェクト３７０とオブジェクト２１０ａとは、ｘ座標およびｙ座標について重複した状態、すなわち、カーソルオブジェクト３７０によってオブジェクト２１０ａを選択可能な状態である。しかし、平面Ｚ０上にあるカーソルオブジェクト３７０は、平面Ｚ１上にあるオブジェクト２１０ａとはｚ座標が異なるため、オブジェクト２１０ａにカーソルオブジェクト３７０を重畳させて表示させると、カーソルオブジェクト３７０は、オブジェクト２１０ａの表面から奥にめり込んだように表示されてしまう。
【００９３】
しかし、本実施形態において表示されるカーソルオブジェクト３７０は、輪郭をぼかしたカーソルオブジェクトである。カーソルオブジェクト３７０とオブジェクト２１０ａとの境界は、ユーザにはっきりとは認識されない。従って、カーソルオブジェクト３７０がオブジェクト２１０ａの表面から奥にめり込んだように表示されていても、ユーザは、カーソルオブジェクト３７０とオブジェクト２１０ａとの奥行き方向の差をあまり感じない。３次元空間２００が表示画面１３０に立体画像として表示される場合も、カーソルオブジェクト３７０の輪郭がぼかされているために、ユーザは、カーソルオブジェクト３７０に設定された視差とオブジェクト２１０ａに設定された視差とが矛盾していることをあまり感じない。つまり、本実施形態においては、カーソルオブジェクト３７０とオブジェクト２１０ａとの奥行き方向の差が、ユーザの視覚を利用して視覚的に補正される。
【００９４】
＜８．まとめ＞
以上で説明された本発明の実施形態において、情報処理装置１００は、オブジェクト２１０が配置された３次元空間２００を表示画面１３０に表示させる表示制御部１２６と、３次元空間２００におけるポインティング操作を取得する取得部１２２と、ポインティング操作に基づいて、３次元空間２００にポインティング位置２５０を設定する位置設定部１２４とを備え、表示制御部１２６は、ポインティング位置２５０とオブジェクト２１０との、表示画面１３０の奥行き方向の差を補正して、ポインティング位置２５０を３次元空間２００に表示させる。このような構成によって、３次元空間のＧＵＩにおいて、オブジェクトの表示とポインティング表示との間に奥行き方向の差がユーザに与える違和感を軽減した表示をすることができる。
【００９５】
位置設定部１２４は、ポインティング操作に基づいて、３次元空間２００に仮のポインティング位置２２０を設定し、仮のポインティング位置２２０と、３次元空間２００に設定された基準点２３０とを通る基準線２４０上にポインティング位置２５０を設定してもよい。このような構成によって、例えばポインティング操作が２次元座標を指定するものであるような場合でも、ポインティング位置の奥行き方向の位置を変化させることができ、オブジェクトとポインティング位置との奥行きの差によってユーザが感じる違和感を低減することができる。
【００９６】
表示制御部１２６は、基準線２４０上に、ポインティング位置２５０を通るポインティング線２６０を表示させてもよい。このような構成によって、３次元空間において、ポインティング位置を含む基準線の一部または全部が表示され、ユーザは、ポインティング位置の奥行き方向の位置を容易に把握することができる。
【００９７】
表示制御部１２６は、ポインティング線２６０を、基準点２３０からポインティング位置２５０までの線分として表示してもよい。このような構成によって、ユーザは、ポインティング位置を線分の端点として容易に認識することができる。
【００９８】
表示制御部１２６は、ポインティング位置２５０にカーソルオブジェクト２７０を表示させてもよい。このような構成によって、ユーザは、ポインティング位置をカーソルオブジェクトの表示位置として容易に認識することができる。
【００９９】
位置設定部１２４は、オブジェクト２１０と基準線２４０との交点にポインティング位置２５０を設定してもよい。このような構成によって、ポインティング位置と、ポインティングされているオブジェクトとの奥行き方向の位置が整合し、オブジェクトとポインティング位置との奥行きが略同一になるため、３次元空間のＧＵＩの表示においてユーザが感じる違和感を大きく低減することができる。
【０１００】
位置設定部１２４は、基準線２４０との間に交点を有する複数のオブジェクト２１０から１つのオブジェクト２１０を選択し、該選択されたオブジェクト２１０と基準線２４０との交点にポインティング位置２５０を設定してもよい。このような構成によって、基準線上に複数のオブジェクトが存在するような場合であっても、適切なオブジェクトを選択してポインティングすることができる。
【０１０１】
取得部１２２は、オブジェクト２１０の選択切り替え操作を取得し、位置設定部１２４は、選択切り替え操作に基づいて、選択するオブジェクト２１０を切り替えてもよい。このような構成によって、複数のオブジェクトからポインティングするオブジェクトを選択する場合に、ユーザが所望するオブジェクトを選択することができる。
【０１０２】
位置設定部１２４は、オブジェクト２１０と基準線２４０との交点が存在しない場合、基準線２４０の近傍に存在する１または複数のオブジェクト２１０の位置に基づいて、ポインティング位置２５０を設定してもよい。このような構成によって、基準線がオブジェクトと交点を有する場合とそうでない場合とで、ポインティング位置の奥行き方向の位置が大きく変化することを防ぐことができ、３次元空間のＧＵＩの表示においてユーザが感じる違和感を低減することができる。
【０１０３】
取得部１２２は、基準点２３０の移動操作を取得し、位置設定部１２４は、移動操作に基づいて、基準点２３０を移動させてもよい。このような構成によって、基準点が固定されている場合にはポインティングすることが難しい位置にあるオブジェクトについても、基準点を適切な位置に移動させて容易にポインティングすることができる。
【０１０４】
表示制御部１２６は、ポインティング位置２５０に、輪郭をぼかして奥行き方向の差を視覚的に補正するカーソルオブジェクト３７０を表示させてもよい。このような構成によって、ポインティングされるオブジェクトと、カーソルオブジェクトとの境界がはっきり認識されなくなり、オブジェクトとカーソルオブジェクトとの奥行き方向の差による違和感を低減することができる。
【０１０５】
表示制御部１２６は、３次元空間２００を立体画像として表示画面１３０に表示させてもよい。３次元空間のＧＵＩが立体画像として表示される場合には、オブジェクトとポインティング位置との奥行き方向の差がユーザに与える違和感が特に大きいため、本発明の実施形態の構成によって、ユーザに与える違和感を特に大きく低減することができる。
【０１０６】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【０１０７】
例えば、上記実施形態では、取得部、位置設定部、および表示制御部の機能がＣＰＵによって提供されるものとしたが、本発明はかかる例に限定されない。例えば、ＣＰＵに代えて、またはＣＰＵと共にＤＳＰ（Digital  Signal  Processor）が用いられてもよい。また、例えば、表示制御部の機能が、ＣＰＵとは別のＧＰＵ（Graphics  Processing  Unit）によって提供されてもよい。
【０１０８】
また、上記実施形態では、取得部が２次元座標を指定するポインティング操作を取得するものとしたが、本発明はかかる例に限定されない。例えば、取得部は３次元座標を指定するポインティング操作を取得してもよい。３次元座標によって３次元空間内の任意の位置を指定するポインティング操作が可能な場合であっても、特に奥行き方向について、正確な位置へのポインティング操作をすることは容易ではない場合が多い。そのため、取得部が３次元座標を指定するポインティング操作を取得する場合であっても、ポインティング位置とオブジェクトとの奥行き方向の差が生じることはありうる。従って、そのような場合においても上記実施形態の構成は有用である。
【符号の説明】
【０１０９】
１００    情報処理装置
１２２    取得部
１２４    位置設定部
１２６    表示制御部
２００    ３次元空間
２１０    オブジェクト
２２０    仮のポインティング位置
２３０    基準点
２４０    基準線
２５０    ポインティング位置
２６０    ポインティング線
２７０，３７０    カーソルオブジェクト
【図１】
2012058896.tif 000003
【図２】
2012058896.tif 000004
【図３】
2012058896.tif 000005
【図４】
2012058896.tif 000006
【図５】
2012058896.tif 000007
【図６】
2012058896.tif 000008
【図７】
2012058896.tif 000009
【図８】
2012058896.tif 000010
【図９】
2012058896.tif 000011
【図１０】
2012058896.tif 000012
【図１１】
2012058896.tif 000013
【図１２】
2012058896.tif 000014
【図１３】
2012058896.tif 000015
【図１４】
2012058896.tif 000016
【図１５】
2012058896.tif 000017
【図１６】
2012058896.tif 000018
【図１７】
2012058896.tif 000019