(58)【調査した分野】(Int.Cl.,DB名)
仮想3D空間に関する仮想3D空間データに基づいて前記仮想3D空間における所定の基準位置からの所定範囲の仮想3D空間データから生成する画像を表示部に表示させる表示制御部と、
前記表示部に表示された前記画像に対する操作を検出する操作検出部と、
前記仮想3D空間内の前記所定範囲に存在する少なくとも一つのオブジェクトの少なくとも一つの面であって、且つ前記表示部に表示された前記画像には含まれない前記少なくとも一つの面が少なくとも含まれる複数の面のそれぞれを、選択候補として判定するための判定領域を設定する判定領域設定部と、
前記操作検出部が検出する操作により確定する前記画像上の操作位置と前記所定の基準位置と前記判定領域との相対的な位置関係に基づいて、前記選択候補となる面を判定する選択候補判定部と、
前記選択候補判定部により判定された前記選択候補となる面内の特定位置と前記操作位置との相対的な位置関係に基づいて、前記選択候補となる面の中から前記操作により選択された面を判定する選択判定部と、
を備える表示システム。
【発明を実施するための形態】
【0011】
以下、本発明の一実施形態について、図面を参照して説明する。
[第1の実施形態]
本実施形態では、3次元の仮想空間(以下、「仮想3D空間」ともいう。D:Dimensional)に配置されるオブジェクトが表示された表示画面に対する操作により、該オブジェクトに他のオブジェクトを設置可能なユーザインターフェースに関して説明する。設置とは、あるオブジェクトの面と他のオブジェクトの面との面同士が接着されてつながった状態になることをいう。例えば、仮想3D空間においてオブジェクト(例えば、ブロック)をつなげていくゲームのアプリケーションのユーザインターフェースとして用いることができる。なお、このユーザインターフェースは、ゲームに限らず、任意のアプリケーションに適用することができる。
【0012】
〔操作仕様の概要〕
まず、仮想3D空間において、複数の面を有するオブジェクトのいずれかの面に、他のオブジェクトを設置する操作の操作仕様の概要について説明する。
図1及び
図2は、本実施形態に係る操作仕様を説明する図である。
図1に示す表示画面G10は、仮想3D空間に配置された立方体形状の立方体オブジェクトROが含まれる画像が表示されている表示例を示している。この表示画面G10に表示される画像は、仮想3D空間データに基づく仮想3D空間内における所定の基準位置からの所定範囲の仮想3D空間データから生成される画像である。所定の基準位置とは、例えば、仮想3D空間内に配置された仮想カメラの位置であり、仮想3D空間内におけるユーザの仮想視点の位置に相当する。所定範囲とは、仮想カメラ(仮想視点)から見える視界(視野)に相当し、予め設定されている。なお、この所定範囲は、任意に変更可能であってもよい。以下では、仮想3D空間内の仮想カメラ(仮想視点)から見える視界に相当する画像のことを、「視界画像」ともいう。例えば、視界画像は、仮想3D空間の空間座標系(3次元座標系)で示される各オブジェクトを構成する点の座標を、仮想カメラの位置を基準として透視投影変換を行うことによりスクリーン座標系(2次元の座標系)に変換して生成することができる。つまり、視界画像は、仮想3D空間における仮想カメラから見える視界の空間データをスクリーン座標系(2次元の座標系)に変換した結果に基づく画像(すなわち、2次元で確定される2D画像)である。
【0013】
また、仮想カメラが配置されている位置は、例えば、仮想3D空間の空間座標系において、予め設定された座標位置である。なお、この仮想カメラの位置は、固定されていてもよいし、条件に応じて移動してもよい。また、仮想カメラの位置を条件に応じて移動するのに代えて、仮想3D空間におけるオブジェクトの位置を条件に応じて移動してもよい。
【0014】
図1において、立方体オブジェクトROの各面には、他のオブジェクトを設置可能な面として指定できることを示す指定オブジェクトSOが設けられている。例えば、指定オブジェクトSOは、面の中央の位置(または、略中央の位置)に設けられている。なお、指定オブジェクトSOは、すべての面(ここでは、6面)に設けられていてもよいし、一部の面に設けられていてもよい。
【0015】
ユーザは、表示画面G10に指でタッチ操作を行うことにより、立方体オブジェクトROが有する面のうちの設置可能な面の中からいずれかの面を設置させたい面として選択することができる。例えば、タッチ操作としては、例えば、ユーザが表示画面にタッチ操作を開始すると、該タッチ操作の操作位置に基づいて選択される面(以下、選択面ともいう)を判定する判定処理が開始される。表示画面に対するタッチ操作が継続している間は選択面が確定しておらず、操作位置を移動させると、移動後の操作位置に基づいて随時選択面が判定される。表示画面から指を離したときに最後にタッチしていた操作位置が最終的な操作位置として確定し、この確定した操作位置に基づいて選択面が確定する。選択面が確定すると、確定した面に他の立方体オブジェクトRO′が設置される。
【0016】
なお、ユーザが表示画面にタッチ操作を開始すると、立方体オブジェクトROに設置させようとしている他の立方体オブジェクトRO′が、操作位置に応じて表示されてもよい。このとき、他の立方体オブジェクトRO′の表示は、透過表示、コントラストを低下させた表示(例えば、非アクティブ表示)等としてもよく、設置後の表示態様(非透過表示、コントラストを上げた表示等)と異ならせてもよい。
【0017】
図1に示す例では、立方体オブジェクトROの見えている2つの面のうち、左側の面の近くにユーザのタッチ操作の操作位置が確定したことにより左側の面が設置面として選択されている。その結果、
図2に示す表示画面G11の例のように、立方体オブジェクトROの左側の面に他の立方体オブジェクトRO′が設置される。
【0018】
〔選択面の判定方法〕
次に、タッチ操作による選択面の判定方法について説明する。本実施形態では、立方体オブジェクトROが表示された表示画面へのタッチ操作により、まず、仮想3D空間(空間座標系)における位置関係に基づいて選択候補となる面を判定し、次に選択候補となる面の中からスクリーン座標系における位置関係に基づいて選択面を判定することにより、操作性を向上させるものである。以下、具体例を説明する。
【0019】
(選択面の判定例1)
図3は、本実施形態に係る仮想3D空間の視界画像の第1の表示例を示す図である。図示する表示画面G20には、仮想3D空間の視界画像が表示されており、一つの立方体オブジェクトROが表示されている。なお、この視界画像の表示例は一例であって、表示されるオブジェクトの形状や数等は任意に定めることができる。視界画像は、図示するX軸とY軸で示されるスクリーン座標系(2次元の座標系)で定義される画像である。立方体オブジェクトROが有する面のうち面M1に対応する位置(例えば、面M1の中央)には指定オブジェクトSO1が配置されている。また、面M2に対応する位置(例えば、面M2の中央)には指定オブジェクトSO2が配置されている。つまり、面M1及び面M2は、選択可能な面である。
【0020】
視界画像において、面M1は、立方体オブジェクトROの手前側の面である。そのため、面M1及び指定オブジェクトSO1は、視認可能に表示されている。一方、面M2は、立方体オブジェクトROの裏側の面である。そのため、面M2及び指定オブジェクトSO2は、実施には表示されない。なお、この図では、面M2及び指定オブジェクトSO2の位置がわかるように、便宜的に破線で示している(他の裏側に位置する面も同様)。また、符号TPが示すマークは、タッチ操作による操作位置(以下、操作位置TPともいう)のスクリーン座標系における座標を示している。この操作位置TPも実際には表示されるものではない。図示する例では、操作位置TPは、立方体オブジェクトROに向かって左端の外側近傍の位置であって、面M1と面M2とが隣接する角の近傍の位置である。
【0021】
図4は、
図3に示す視界画像に対応する仮想3D空間を上から見た図を示している。図示する仮想3D空間は、X軸とY軸とZ軸で示される空間座標系(3次元座標系)で定義される空間である。立方体オブジェクトROの手前側の面M1は、仮想3D空間内の所定の基準位置に配置された仮想カメラCAから見える面である。一方、立方体オブジェクトROの裏側の面M2は、仮想カメラCAから見えない面である。選択可能な面M1及び面M2には、選択候補となり得るか否かを判定するための判定領域が設定される。判定領域H1は、面M1が選択候補となり得るか否かを判定するための判定領域である。判定領域H2は、面M2が選択候補となり得るか否かを判定するための判定領域である。
【0022】
例えば、判定領域は、面の領域に重なるような配置、且つ、その面よりも大きい面積の領域として設定される。なお、面と判定領域とは密着していてもよいし、面と判定領域との間に所定の隙間が設けられていてもよい。図示する例では、判定領域H1の幅W2(1辺の長さ)は、面M1の幅W1(1辺の長さ)よりも長く設定される。より具体的には、幅W2は幅W1よりも両端とも飛び出すように長く設定される。また、図示する例では水平方向(XY平面に沿った方向)のみを示しているが、垂直方向(Y軸方向)も同様である。つまり、判定領域H1は、面M1の面積より左右上下の4方向に飛び出すように大きい面積の領域である。さらに、判定領域は、面に対して法線方向へ厚みのある領域として設定されてもよい。図示する例では、判定領域H1は、面M1に対して法線方向へ厚みW3を有する。また、判定領域H2も判定領域H1と同様に、面M2の面積より左右上下の4方向に飛び出すように大きい面積の領域であり、且つ面M2に対して法線方向へ厚みのある領域として設定される。
【0023】
この場合、判定領域H1と判定領域H2とは、面M1と面M2とが隣接する角付近で重なる領域HWが生じる。例えば、
図4に示すように判定領域H1の一部と判定領域H2の一部とが領域HWで重なるが、この領域HWにおいて判定領域H1の一端と判定領域H2の一端とが丁度重なり合うように設定されている。丁度重なり合うとは、領域HWの部分において、判定領域H1の少なくとも一端の辺と判定領域H2の少なくとも一端の辺とのそれぞれが領域HW2のうちの2辺を構成することである。なお、領域HWにおいて判定領域H1の一端と判定領域H2の一端とが丁度重なり合う例を説明したが、これに限られるものではない。例えば、判定領域H1と判定領域H2とは交差(クロス)するように重なってもよいし、T字になるように重なってもよい。また、判定領域H1と判定領域H2とは直角になるように重なってもよいし、斜めに重なってもよい。なお、複数の判定領域それぞれの大きさや位置関係によっては、他の判定領域と重ならない判定領域が存在してもよい。
【0024】
また、
図3に示す表示画面G20(視界画像)における操作位置TPを空間座標系で表すと、
図4に示すように、仮想カメラCAから操作位置TPの座標に相当する座標の方向へ延びる符号TLが示す直線(以下、「操作線TL」ともいう)で表すことができる。操作線TLの矢印の方向は、仮想カメラCAの位置を仮想視点の位置としたときに、仮想視点から操作位置TPを見る視線の視線方向に相当する。
【0025】
この操作線TLが通過する判定領域が設定されている面は、ユーザが選択しようとしている面の候補となる(すなわち、選択候補の面となる)。一方、操作線TLが通過しない面は、ユーザが選択しようとしている面とはならない(すなわち、選択候補の面とはならない)。ここでは、判定領域H1と判定領域H2とが重なる領域HWを操作線TLが通過している。すなわち、判定領域H1と判定領域H2との両方を操作線TLが通過している。これにより、操作位置TPの近傍にある面M1と面M2とが選択候補となる。
【0026】
次に、選択候補の面の中から、操作位置TPと選択候補の面に配置されている指定オブジェクトSOとのスクリーン座標系における位置関係に基づいてユーザによって選択された選択面が最終的に判定される。具体的には、視界画像(スクリーン座標系)において、選択候補の面に配置されている指定オブジェクトSOと操作位置TPとの距離が最も近い面が、ユーザによって選択された選択面として判定される。ここでは、
図3を参照するとわかるように、指定オブジェクトSO1よりも指定オブジェクトSO2の方が操作位置TPとの距離が近いため、指定オブジェクトSO2が配置されている面M2が、選択面として最終的に決定される。
【0027】
このように選択面を判定することで、ユーザが選択したい面が裏側にあって見えない場合であっても、わざわざ仮想カメラの位置や角度を変更して当該面が見えるようにすることなく、ユーザが当該面を選択可能なようにすることができる。よって、仮想3D空間内の所定の領域(例えば、面)を選択する際の操作性を向上させることができる。
【0028】
例えば、
図1及び
図2を参照して説明したようなオブジェクト(例えば、ブロック)をつなげていくゲームにおいて、上記操作性の向上に伴い、制限時間内でつなげられるオブジェクトの数が増えたり、複数のオブジェクトを順に連続してつなげるときの時間間隔が短くなったりするため、より白熱したゲーム展開を期待できる。また、設置面を選択する際に仮想カメラの位置や角度を変更して面が見えるようにする必要がないため、複数のタッチ操作を同時に検出可能な操作仕様の場合には、表面と裏面の両方を同時に設置面として選択することも可能となり、新たなゲーム性を提供できる。
【0029】
〔表示システムの構成〕
次に、本実施形態に係る表示システム1の構成について説明する。表示システム1は、例えば、仮想3D空間の視界画像の表示を制御する表示制御装置10であり、スマートフォンやフィーチャーフォン等の携帯電話機、家庭用ゲーム機、パーソナルコンピュータ、ゲームセンター等に設置されているアーケードゲーム機、携帯情報端末(PDA:Personal Digital Assistant)、タブレットPC、等が適用できる。本実施形態では、表示制御装置10はスマートフォンであるとして説明する。
【0030】
図5は、本実施形態に係る表示制御装置10のハードウェア構成の一例を示す図である。表示制御装置10は、例えば、CPU(Central Processing Unit)11と、通信部12と、入力部13と、表示部14と、記憶部15とを備え、ネットワークNWを介して接続される不図示のサーバ装置や他の装置等と通信部12を介して通信を行う。これらの構成要素は、バス(Bus)を介して相互に通信可能に接続されている。CPU11は、記憶部15に記憶された各種プログラムを実行し、表示制御装置10の各部を制御する。
【0031】
通信部12は、例えば、複数のイーサネット(登録商標)ポートや複数のUSB等のデジタル入出力ポート、WiFi(登録商標)等の無線通信等を含んで構成される。
入力部13は、例えば、表示部14の表示画面に対する操作を検出するタッチパネルとして表示部14と一体に構成されており、ユーザの操作が入力される。入力部13は、入力された操作を示す操作情報をCPU11へ出力する。なお、入力部13は、キーボードやマウス、タッチパッド、ジョイスティックや、音声により各種の指示が入力されるマイクロホンなど、その他の入力装置であってもよい。
表示部14は、画像やテキスト等の情報を表示するディスプレイであり、例えば、液晶ディスプレイパネル、有機EL(ElectroLuminescence)ディスプレイパネルなどを含んで構成される。
【0032】
記憶部15は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)、EEPROM(Electrically Erasable Programmable Read-Only Memory)、ROM(Read-Only Memory)、RAM(Random Access Memory)などを含み、表示制御装置10が処理する各種情報や画像、プログラム(ゲーム制御プログラムを含む)等を記憶する。なお、記憶部15は、表示制御装置10に内蔵されるものに限らず、USB等のデジタル入出力ポート等によって接続された外付け型の記憶装置でもよい。また、表示制御装置10は、不図示のスピーカ、音声出力端子、カメラ、ジャイロセンサ、GPS(Global Positioning System)受信モジュールなどのハードウェア構成を含んで構成されてもよい。
【0033】
〔表示制御装置の構成〕
次に、
図6を参照して表示制御装置10の機能構成について説明する。
図6は、本実施形態に係る表示制御装置10の構成の一例を示すブロック図である。本図において、
図5の各部に対応する構成には同じ符号を付している。記憶部15には、表示制御装置10が表示を制御する仮想3D空間に関する3D空間データ151やオブジェクトデータ152等といったVRコンテンツのデータが記憶されている。例えば、オブジェクトデータ152には、オブジェクトの形状や大きさ、オブジェクトの面に関連付けられる指定オブジェクトの位置、オブジェクト毎の判定領域の大きさや厚み等に関するデータが含まれている。また、表示制御装置10は、記憶部15に記憶されている表示制御プログラムをCPU11が実行することにより実現される機能構成として、制御部110を備えている。例えば、制御部110は、操作検出部111と、判定領域設定部112と、選択候補判定部113と、選択判定部114と、オブジェクト制御部115と、表示制御部116とを備えている。
【0034】
操作検出部111は、表示部14に表示された視界画像に対する操作を検出する。例えば、操作検出部111は、入力部13から取得する操作情報に基づいて表示部14の表示画面に対するタッチ操作を、視界画像に対する操作として検出する。一例として、操作検出部111は、仮想3D空間に配置された立方体オブジェクトROが表示されている表示画面に対して行われる、立方体オブジェクトROの面を選択するためのタッチ操作を検出する。なお、視界画像に対する操作(例えば、面を選択するための操作)は、表示画面に対するタッチ操作に限られるものではなく、キーボード、マウス、タッチパッド、ジョイスティック等を用いた操作であってもよい。
【0035】
判定領域設定部112は、仮想3D空間内の複数の領域に、選択候補となるか否かを判定するための判定領域を設定する。例えば、判定領域設定部112は、記憶部15に記憶されているオブジェクトデータ152に予め設定されている判定領域に関するデータに基づいて、仮想3D空間内に配置されたオブジェクトの複数の面のうちの一部または全部に上記判定領域を設定する。一例として、判定領域設定部112は、仮想3D空間内の少なくとも二つの面のそれぞれに関連付けて、少なくとも一つの判定領域を設定する。また、判定領域設定部112は、一つの面に対して複数の判定領域を関連付けてもよい。なお、判定領域設定部112は、オブジェクト毎に予め設定されている判定領域に関するデータに基づいて立方体オブジェクトROの面の判定領域を設定するのに変えて、予め設定されている設定ルール(判定領域の面積や厚み、位置等のルール)に従って、立方体オブジェクトROの面の判定領域を生成してもよい。
【0036】
一例として、
図4に示すように、判定領域設定部112は、立方体オブジェクトROの面M1に判定領域H1を設定し、面M2に判定領域H2を設定する。具体的には、判定領域設定部112は、例えば、複数の面のそれぞれの判定領域とそれぞれの面とを関連付けて設定する。つまり、判定領域設定部112は、面M1と判定領域H1とを関連付けて設定し、面M2と判定領域H2とを関連付けて設定する。また、判定領域設定部112は、オブジェクトが有する面の判定領域を、該オブジェクトの外側に設定する。つまり、判定領域設定部112は、面M1の外側に判定領域H1を設定し、面M2の外側に判定領域H2を設定する。このとき、面と判定領域とは密着していてもよいし、面と判定領域との間に所定の隙間が設けられていてもよい。
【0037】
なお、判定領域設定部112は、仮想3D空間内の視界(すなわち、表示部14に表示される視界画像の範囲)に存在する一または複数のオブジェクトの面であって、且つ表示部14に表示された視界画像には含まれない面(すなわち、仮想カメラCAからは見えない面)が少なくとも含まれる複数の面のそれぞれを、選択候補として判定可能なように判定領域を設定してもよい。例えば、判定領域設定部112は、複数の面の少なくとも一部の判定領域と他の判定領域との少なくとも一部が重なり合うように設定することにより、複数の面のそれぞれを選択候補として判定可能なようにしてもよい。
【0038】
具体的には、判定領域設定部112は、複数の面のそれぞれの判定領域を、それぞれの領域より大きい面積の領域として設定する。また、判定領域設定部112は、複数の面のそれぞれの判定領域を、それぞれの面に対して法線方向へ厚みのある領域として設定してもよい。これにより、判定領域設定部112は、同一のオブジェクトが有する複数の面のうち隣り合う面のそれぞれ判定領域(例えば、隣り合う面M1と面M2のそれぞれの判定領域H1と判定領域H2)を、少なくとも一部が重なり合うように設定することも可能となる(
図4参照)。
【0039】
選択候補判定部113は、操作検出部111が検出するタッチ操作により確定する視界画像上の操作位置TPと仮想カメラCAの位置(所定の基準位置)と、選択候補の面を判定する判定領域とに基づく仮想3D空間(空間座標系)における位置関係(相対的な位置関係)に基づいて、選択候補となる面を判定する。例えば、
図4を参照して説明したように、選択候補判定部113は、仮想カメラCAから操作位置TPの座標に相当する座標の方向へ延びる操作線TLが判定領域を通過するか否かによって、選択候補となる面を判定する。
【0040】
具体的には、選択候補判定部113は、表示部14に表示された視界画像に対するタッチ操作の操作位置TPに基づいて、仮想3D空間において仮想カメラCAから操作位置TPの方向へ延びる直線である操作線TLを生成する。そして、選択候補判定部113は、複数の面のそれぞれの判定領域のうち、操作線TLが通過する判定領域に関連付けられている面を、選択候補となる面として判定する。例えば、選択候補判定部113は、複数の判定領域が重なり合った領域を操作線TLが通過する場合、該重なり合った判定領域のそれぞれに関連付けられている面を、選択候補となる面として判定する。
図4に示すように、判定領域H1と判定領域H2とが重なる領域HWを操作線TLが通過する場合、選択候補判定部113は、面M1と面M2との両方を選択候補となる面として判定する。このように、複数の面の少なくとも一部の判定領域と他の判定領域との少なくとも一部が重なり合うように設定することにより、複数の面のそれぞれを選択候補として判定可能となる。また、これにより、オブジェクトの表側の見える面だけでなく、裏側の見えない面も選択候補として判定可能となる。
【0041】
選択判定部114は、選択候補判定部113により判定された選択候補となる面内の指定オブジェクトSOの位置と操作位置TPとのスクリーン座標系における位置関係(相対的な位置関係)に基づいて、選択候補となる面の中からタッチ操作により選択された面を判定する。つまり、選択候補判定部113と選択判定部114とは、異なる座標系を用いて、それぞれの判定を行う。
【0042】
例えば、選択判定部114は、スクリーン座標系において、選択候補と判定された面(面M1及び面M2)に配置されている指定オブジェクトSO(SO1、SO2)と操作位置TPとの距離に基づいて、該距離が近い方の面をユーザによって選択された選択面として判定する。
図3に示す例では、指定オブジェクトSO1より指定オブジェクトSO2の方が操作位置TPに近いため、指定オブジェクトSO2が配置されている面M2を、ユーザによって選択された選択面に決定する。これにより、オブジェクトの表側の見える面だけでなく、裏側の見えない面もユーザが選択可能となる。
【0043】
オブジェクト制御部115は、仮想3D空間内に各種のオブジェクトを配置する制御を行う。例えば、オブジェクト制御部115は、立方体オブジェクトROを配置する制御、及び、立方体オブジェクトROの複数の面のうちユーザの操作により選択された面へ他の立方体オブジェクトRO′を設置させる制御を行う。
【0044】
表示制御部116は、仮想3D空間に関する3D空間データ151に基づいて仮想3D空間における仮想カメラCAから見える視界の視界画像を生成して、表示部14に表示させる。例えば、表示制御部116は、3D空間データ151に基づいて、仮想3D空間内の仮想カメラCAから見える視界の空間データ(空間座標系(3次元座標系)のデータ)をスクリーン座標系(2次元の座標系)に変換した結果に基づく視界画像を生成する。また、表示制御部116は、ユーザが面を選択するタッチ操作中に、設置させようとしている他の立方体オブジェクトRO′を設置後の表示態様と異なる表示態様(透過表示、コントラストを低下させた表示(例えば、非アクティブ表示)等)で表示させてもよい。また、表示制御部116は、各種のアイコンや操作ボタン、操作に必要な各種情報等を表示部14に表示させてもよい。
【0045】
なお、本実施形態では、仮想カメラCAの位置や角度を変更しなくとも、立方体オブジェクトROの裏側にある見えない面の選択が可能であるため、仮想カメラCAの位置や角度を変更できない仕様としてもよいが、変更できる仕様としてもよい。例えば、ユーザの操作に基づいて仮想カメラCAの位置や角度を変更できる仕様の場合、表示制御部116は、仮想カメラCAの位置や角度の変更に応じて、変更された視界の視界画像を生成して、表示部14に表示させる。
【0046】
(選択面の判定例2)
ここで、本実施形態に係る選択面の判定例の他の具体例について説明する。
図3及び
図4を参照して説明した判定例1では、立方体オブジェクトROの裏側の面M2が選択面として判定されたが、常に裏側の面が選択されるわけではなく、仮想カメラCAに対する立方体オブジェクトROの位置及び角度によって、表側の面が選択される場合もある。この判定例2では、立方体オブジェクトROの表側の面が選択面として判定される場合の一例を説明する。
【0047】
図7は、本実施形態に係る仮想3D空間の視界画像の第2の表示例を示す図である。また、
図8は、
図7に示す視界画像に対応する仮想3D空間を上から見た図を示している。
図7及び
図8に示す例では、
図3及び
図4に示す例に比べて、仮想カメラCAに対する立方体オブジェクトROの角度(空間座標系においてY軸を中心とした回転方向への回転角度)が異なっている。具体的には、空間座標系において、仮想カメラCAの位置に対して、面M2がさらに裏側に回り込むように、立方体オブジェクトROが回転している。
図7煮示す視界画像の表示例では、上記回転により面M1は表側の面ではあるが
図3に示す例よりも側面側の方向に回転した配置となっている。
【0048】
図8に示す例でも、
図4に示す例と同様に、仮想カメラCAから操作位置TPの座標に相当する座標の方向へ延びる操作線TLは、判定領域H1と判定領域H2との両方を通過している。よって、選択候補判定部113は、操作位置TPの近傍にある面M1と面M2との両方を選択候補となる面として判定する。また、
図7に示すように、視界画像(スクリーン座標系)において、指定オブジェクトSO2よりも指定オブジェクトSO1の方が操作位置TPとの距離が近いため、選択判定部114は、指定オブジェクトSO1が配置されている表側の面M1を、選択面として最終的に決定する。
【0049】
このように、立方体オブジェクトROの角度によって、操作位置TPが裏側の面により近ければ裏側の面が選択面と判定され、操作位置TPが表側の面により近ければ表側の面が選択面と判定されるため、視界画像で見える表面も見えない裏面も違和感なく選択することが可能である。
【0050】
(選択面の判定例3)
次に、本実施形態に係る選択面の判定例のさらに他の具体例について説明する。
図9は、本実施形態に係る仮想3D空間の視界画像の第3の表示例を示す図である。また、
図10は、
図9に示す視界画像に対応する仮想3D空間を上から見た図を示している。
図9及び
図10に示す例は、
図3及び
図4に示す例(判定例1)と仮想カメラCAに対する立方体オブジェクトROの位置及び角度の関係は同様であるが、操作位置TPが異なる。
図9に示す例では、操作位置TPは、立方体オブジェクトROに向かって該オブジェクトの左端に重なる位置となっている。この場合、表側の面M1上の位置にタッチ操作がされていることになるため、
図3及び
図4に示す例(判定例1)のように裏側の面M2が選択されるのではなく、表側の面M1が選択された方が違和感が少ない。
【0051】
そこで、
図10に示すように、仮想3D空間において仮想カメラCAから操作位置TPの方向へ延びる操作線TLが何らかの障害物(ここでは、立方体オブジェクトROの面)に到達した場合には、仮想カメラCAから到達するまでの線分を操作線TLとする。これにより、操作線TLは、判定領域H1のみを通過し、判定領域H2を通過しない。そのため、表側の面M1のみが選択候補となり、面M1が選択面と判定されるようになる。
【0052】
例えば、選択候補判定部113は、操作位置TPと仮想カメラCAの位置と立方体オブジェクトROの複数の面(面M1、面M2を含む複数の面)と該面の判定領域(判定領域H1、H2)とに基づく仮想3D空間(空間座標系)における位置関係に基づいて、複数の面のうち選択候補となる面を判定する。選択候補判定部113は、仮想3D空間において仮想カメラCAから操作位置TPへの方向に相当する操作線TLが立方体オブジェクトROの面に到達する場合、仮想カメラCAの位置から到達地点までの操作線TLの線分が通過する判定領域H1に関連付けられている面M1を、選択候補となる面として判定する。
【0053】
〔判定処理の動作〕
次に、
図11〜13を参照して、表示制御装置30の制御部110が選択面を判定する判定処理の動作を説明する。
図11は、本実施形態に係る判定処理の一例を示すフローチャートである。
【0054】
ゲームを開始する操作入力を検出すると、制御部110は、仮想3D空間内の予め設定された位置(例えば、仮想カメラCAの位置からの視界の中央の位置)に立方体オブジェクトROを配置する。また、制御部110は、仮想カメラCAの位置からの視界画像を生成して、表示部14に表示させる(ステップS100)。
【0055】
次に、制御部110は、立方体オブジェクトROの選択可能な面のそれぞれに対して選択候補となるか否かを判定するための判定領域を設定する(ステップS102)。
【0056】
そして、制御部110は、面を選択するためのタッチ操作を検出すると(ステップS104)、該操作に基づいて選択候補となる面を判定する選択候補判定処理に進む(ステップS106)。
【0057】
図12は、本実施形態に係る選択候補判定処理の一例を示すフローチャートである。この図を参照して、ステップS106の選択候補判定処理の詳細を説明する。
まず、制御部110は、表示部14に表示された視界画像に対するタッチ操作の操作位置TPに基づいて、仮想3D空間において仮想カメラCAから操作位置TPの方向へ延びる操作線TLを生成する(ステップS1060)。
【0058】
次に、制御部110は、操作線TLが立方体オブジェクトROに到達するか否かを判定する(ステップS1062)。到達すると判定された場合(YES)、制御部110は、立方体オブジェクトROに到達するまでの線分を操作線TLとする(ステップS1064)。そして、制御部110は、立方体オブジェクトROに到達するまでの操作線TLと判定領域との仮想3D空間(空間座標系)における位置関係に基づいて、選択候補となる面を判定する(ステップS1066)。例えば、制御部110は、
図4及び
図8に示すように操作線TLが通過する判定領域H1及び判定領域H2のそれぞれが設定されている面M1及び面M2を選択候補として、選択候補判定処理を終了する。
【0059】
一方、ステップS1062において、到達しないと判定された場合(NO)、制御部110は、ステップS1060で生成した操作線TL(ステップS1066)と判定領域との仮想3D空間(空間座標系)における位置関係に基づいて、選択候補となる面を判定する(ステップS1066)。例えば、制御部110は、
図10に示すように操作線TLが通過する判定領域H1が設定されている面M1のみを選択候補として、選択候補判定処理を終了する。
【0060】
図11に戻り、選択候補判定処理(ステップS106)が終了すると、選択候補と判定された面があるか否かを判定する(ステップS108)。選択候補と判定された面が無いと判定された場合(NO)、制御部110は、ステップS104の処理に戻し、面を選択するためのタッチ操作を検出する。一方、選択候補と判定された面があると判定された場合(YES)、制御部110は、選択候補となる面の中からユーザに選択された選択面を判定する選択判定処理に進む(ステップS110)。
【0061】
図13は、本実施形態に係る選択判定処理の一例を示すフローチャートである。この図を参照して、ステップS110の選択判定処理の詳細を説明する。
制御部110は、選択候補となる面内の指定オブジェクトSOの位置を取得する(ステップS1100)。
【0062】
次に、制御部110は、指定オブジェクトSOの位置と操作位置TPとのスクリーン座標系における位置関係に基づいて、選択候補となる面の中からユーザに選択された選択面を判定する。例えば、制御部110は、スクリーン座標系において、選択候補と判定された面に配置されている指定オブジェクトSOと操作位置TPとの距離に基づいて、該距離が近い方の面をユーザによって選択された選択面として判定する。(ステップS1102)。
【0063】
〔第1の実施形態のまとめ〕
以上説明してきたように、本実施形態に係る表示システム1の表示制御装置10は、表示制御部116と、操作検出部111と、判定領域設定部112と、選択候補判定部113と、選択判定部114と、を備えている。表示制御部116は、仮想3D空間に関する3D空間データ151に基づいて仮想3D空間における仮想カメラCAの位置(所定の基準位置の一例)からの視界(所定範囲の一例)の仮想3D空間データから生成する視界画像(画像の一例)を表示部14に表示させる。操作検出部111は、表示部14に表示された視界画像に対するタッチ操作(操作の一例)を検出する。判定領域設定部112は、仮想3D空間内の少なくとも二つの面(領域の一例)のそれぞれに関連付けて、選択候補となるか否かを判定するための少なくとも一つの判定領域を設定する。選択候補判定部113は、操作検出部111が検出するタッチ操作により確定する視界画像上の操作位置TPと仮想カメラCAの位置と上記判定領域とに基づく仮想3D空間における位置関係に基づいて、選択候補となる面を判定する。選択判定部114は、選択候補判定部113により判定された選択候補となる面内の指定オブジェクトの位置(特定位置の一例)とタッチ操作の操作位置TPとの表示部14に表示された視界画像における位置関係に基づいて、選択候補となる面の中からタッチ操作により選択された面を判定する。
【0064】
これにより、表示システム1(表示制御装置10)は、操作位置TPと仮想カメラCAの位置と複数の面の判定領域との仮想3D空間における位置関係に基づいて選択候補となる面を判定してから、選択候補となる面と操作位置TPとの視界画像における位置関係に基づいて選択面を判定するため、単に視界画像における位置関係のみに基づいて選択面を判定する場合よりも、ユーザの操作に応じてユーザの意図した面を選択することができる。よって、仮想3D空間内の面を選択する際の操作性を向上させることができる。
【0065】
例えば、選択候補判定部113と選択判定部114とは、異なる座標系を用いて、それぞれの判定を行う。具体的には、選択候補判定部113は、仮想3D空間における空間座標系(3次元座標系)を用いて選択候補となる面を判定する。一方、選択判定部114は、視界画像におけるスクリーン座標系(2次元座標系)を用いて選択候補となる面の中から選択面を判定する。
【0066】
これにより、表示システム1(表示制御装置10)は、3次元座標系と2次元座標系との両方を用いることにより、ユーザの操作に応じて選択された選択面を適切に判定することができる。
【0067】
少なくとも二つの面(領域の一例)のそれぞれは、複数の面を有する立方体オブジェクトRO(一のオブジェクトの一例)におけるいずれかの面に対応する領域である。
【0068】
これにより、表示システム1(表示制御装置10)は、立方体オブジェクトROの複数の面の中からユーザの操作に応じて選択された選択面を適切に判定することができる。
【0069】
例えば、判定領域設定部112は、仮想3D空間内の仮想カメラCAの位置(所定の基準位置の一例)からの視界(所定範囲の一例)に存在する少なくとも一つの立方体オブジェクトRO(一または複数のオブジェクトの一例)の少なくとも一つの面であって、且つ表示部14に表示された視界画像には含まれない上記少なくとも一つの面が少なくとも含まれる複数の面のそれぞれを、選択候補として判定するための判定領域を設定する。そして、選択候補判定部113は、操作検出部111が検出するタッチ操作(操作の一例)により確定する視界画像上の操作位置TPと仮想カメラCAの位置と上記判定領域との相対的な位置関係に基づいて、選択候補となる面を判定する。また、選択判定部114は、選択候補判定部113により判定された選択候補となる面内の指定オブジェクトの位置(特定位置の一例)とタッチ操作の操作位置TPとの相対的な位置関係に基づいて、選択候補となる面の中からタッチ操作により選択された面を判定する。
【0070】
これにより、表示システム1(表示制御装置10)は、視界画像に表示されない面(すなわち、ユーザから見えない面)についても判定領域を設定し、該判定領域に基づいて選択候補となる面を判定してから、選択候補となる面と操作位置TPとの位置関係に基づいて選択面を判定するため、見えている面も見えない面もともに判定することができる。よって、ユーザが選択したい面が裏側にあって見えない場合であっても、わざわざ仮想カメラの位置や角度を変更して当該面が見えるようにすることなく、ユーザが当該面を選択可能なようにすることができる。よって、仮想3D空間内の所定の領域(例えば、面)を選択する際の操作性を向上させることができる。
【0071】
例えば、判定領域設定部112は、複数の面のそれぞれの判定領域とそれぞれの面とを関連付けて設定する。
【0072】
これにより、表示システム1(表示制御装置10)は、ユーザの操作に応じて、複数の面について選択候補となるか否かを判定することができる。
【0073】
また、判定領域設定部112は、複数の面の少なくとも一部の判定領域と他の判定領域との少なくとも一部が重なり合うように設定する。
【0074】
これにより、表示システム1(表示制御装置10)は、操作位置TPによっては、互いに近傍にある複数の面を選択候補としてから、複数の選択候補の中から、操作により選択され面を適切に判定することが可能である。
【0075】
また、選択候補判定部113は、表示部14に表示された視界画像に対するタッチ操作(操作の一例)の操作位置TPに基づいて、仮想3D空間において仮想カメラCAの位置(所定の基準位置の一例)から操作位置TPの方向へ延びる直線である操作線TLを生成し、複数の面のそれぞれの判定領域のうち、操作線TLが通過する判定領域に関連付けられている面を、選択候補となる面として判定する。
【0076】
これにより、表示システム1(表示制御装置10)は、操作線TLが通過する判定領域が設定された面を選択候補として判定するため、操作位置TPに応じて適切に選択候補となる面を判定することができる。
【0077】
例えば、選択候補判定部113は、複数の判定領域が重なり合った領域を操作線TLが通過する場合、該重なり合った判定領域のそれぞれに関連付けられている面を、選択候補となる面として判定する。
【0078】
これにより、表示システム1(表示制御装置10)は、仮想3D空間において複数の判定領域が重なる領域を操作線TLが通過する場合、該複数の判定領域のそれぞれが設定されている面のすべてを選択候補とするため、操作位置TPによっては近傍にある複数の面を選択候補としてから、複数の選択候補の中から、操作により選択され面を適切に判定することが可能である。
【0079】
例えば、判定領域設定部112は、同一のオブジェクト(例えば、立方体オブジェクトRO)が有する複数の面のうち隣り合う面のそれぞれ判定領域を、少なくとも一部が重なり合うように設定する。
【0080】
これにより、表示システム1(表示制御装置10)は、操作位置TPに応じて、隣り合う面の両方を選択候補として判定することも可能である。また、表示システム1(表示制御装置10)は、隣り合う面の両方を選択候補として判定することも可能であるため、表側の面のみならず裏側の見えない面についても選択候補として判定することができる。
【0081】
判定領域設定部112は、立方体オブジェクトROが有する面の判定領域を、立方体オブジェクトROの外側に設定する。例えば、判定領域設定部112は、立方体オブジェクトROが有する面の判定領域を、立方体オブジェクトROの外側の所定の範囲(近傍)に設定する。
【0082】
これにより、表示システム1(表示制御装置10)は、各面の判定領域を適した位置に配置することにより、ユーザの操作に応じて、各面が選択候補となるか否かを適切に判定できる。
【0083】
判定領域設定部112は、複数(少なくとも二つ)の面(領域の一例)のそれぞれの判定領域を、それぞれの面より大きい面積の領域として設定する。
【0084】
これにより、表示システム1(表示制御装置10)は、視界画像に表示されない面(すなわち、ユーザから見えない面)についても判定領域に操作線TLが通過可能となるため(すなわち、選択候補の判定対象とすることができるため)、わざわざ仮想カメラの位置や角度を変更して当該面が見えるようにしなくても、ユーザが当該面を選択可能なようにすることができる。
【0085】
判定領域設定部112は、複数(少なくとも二つ)の面(領域の一例)のそれぞれの判定領域を、それぞれの面に対して法線方向へ厚みのある領域として設定する。例えば、判定領域の厚みの幅は、その判定領域が設定されているオブジェクトの大きさや配置状況、面の面積等に基づいて任意に設定することができる。例えば、判定領域の厚みの幅は、面に対する法線方向のオブジェクト(例えば、立方体オブジェクトRO)の厚みの4分の1の厚みを最大として任意に設定してもよい。また、判定領域の厚みの幅は、面に対する法線方向のオブジェクト(例えば、立方体オブジェクトRO)の厚みの2分の1最大として、或いはオブジェクトの厚みを最大として任意に設定してもよい。
【0086】
また、判定領域の厚みの幅は、指の大きさ(サイズ)に基づいて設定されてもよい。例えば、視界画像が表示された表示画面に指でタッチ操作を行う場合には、タッチ操作をした場所に表示されている画像が指で隠れて見えなくなる。設置面を選択する際に、選択したい面が指で隠れてしまい見えなくなると操作がしにくい。そのため、判定領域の厚みの幅を指の大きさに基づいて設定することで、設置面を選択する際に選択したい面から少し離れた位置(選択したい面が指で見えなくならない位置)へのタッチ操作でも選択候補の判定が行われるようにすることができる。例えば、判定領域の厚みの幅は、タッチ操作する指の幅に基づいて、設定されてもよい。なお、指の大きさは、ユーザによって違いが少ないが、視界画像が表示される画面の大きさは、装置によって様々である。そこで、視界画像が表示される画面の大きさ(解像度ではなく物理的な大きさ)も考慮して判定領域の厚みの幅が設定されてもよい。例えば、判定領域設定部112は、視界画像を表示させる装置(例えば、表示制御装置10)の識別情報(例えば、機種ID)などに基づいて画面の大きさの情報を取得し、取得した画面の大きさに対する指の大きさの比率を求め、この比率に基づいて判定領域の厚みの幅を設定してもよい。例えば、画面が小さいほど判定領域の厚みが増し、画面が大きいほど判定領域の厚みが減るように設定される。
【0087】
これにより、表示システム1(表示制御装置10)は、複数の面のそれぞれの判定領域どうしが重なり合う領域を広くすることができるため、該重なり合う領域を操作線TLが通過しやすくなり、複数の面(例えば、視界画像に表示されない面(すなわち、ユーザから見えない面))を選択候補にしやすくすることができる。
【0088】
また、選択候補判定部113は、タッチ操作の操作位置TPと仮想カメラCAの位置(所定の基準位置の一例)と上記判定領域と複数(少なくとも二つ)の面(領域の一例)とに基づく仮想3D空間における位置関係に基づいて、複数(少なくとも二つ)の面のうち選択候補となる面を判定する。
【0089】
これにより、表示システム1(表示制御装置10)は、さらに操作位置TPに対する複数の面の位置や角度も考慮して選択候補となる面を適切に判定することができる。例えば、複数の面のうちの一の面より他の面が手前にあり、手前にある面の領域内に操作位置TPがある場合、該一の面より手前にある面を優先して選択候補と判定することができる。
【0090】
例えば、選択候補判定部113は、操作線TLが立方体オブジェクトROに到達する場合、仮想カメラCAの位置(所定の基準位置の一例)から到達地点までの操作線TLの線分が通過する判定領域に関連付けられている面を、選択候補となる面として判定する。
【0091】
これにより、表示システム1(表示制御装置10)は、見えている面(表側の面)と操作位置TPとの位置関係によっては、見えていない面(裏側の面)を選択候補から除外して、見えている面(表側の面)を優先して選択面と判定することができる。
【0092】
なお、選択候補判定部113は、仮想3D空間における位置関係に基づいて選択候補となり得る面(領域の一例)のうちから、選択候補となる面と判定する面を所定の条件に基づいて限定してもよい。
【0093】
これにより、表示システム1(表示制御装置10)は、条件によっては選択候補となり得る面であっても選択候補から除外することができるため、条件によって柔軟に制御することができる。
【0094】
例えば、選択候補判定部113は、少なくとも二つの面(領域の一例)と仮想カメラCAの位置(所定の基準位置の一例)との距離に基づく条件を上記所定の条件としてもよい。
【0095】
これにより、表示システム1(表示制御装置10)は、例えば一定距離以上遠くにある面を選択候補から除外することができるため、ユーザが意図していない遠くのオブジェクトの面を選択候補としてしまわないようにすることができる。なお、表示システム1(表示制御装置10)は、一定距離よりも近くにある面を選択候補から除外してもよい。この場合、表示システム1(表示制御装置10)は、ユーザが意図していない近すぎるオブジェクトの面を選択候補としてしまわないようにすることができる。
【0096】
なお、選択候補判定部113は、仮想3D空間における仮想カメラCAの位置(所定の基準位置の一例)から見える視界(所定範囲の一例)に存在する面(領域の一例)であって、且つ表示部14に表示された視界画像には含まれない面であることを上記所定の条件として、選択候補となる面と判定する面を限定してもよい。すなわち、選択候補判定部113は、視界画像に存在しながらも見えない面(例えば、立方体オブジェクトROの裏側の面)のみを、選択候補を判定する対象として限定してもよい。この場合、判定領域設定部112は、仮想3D空間における仮想カメラCAの位置(所定の基準位置の一例)から見える視界(所定範囲の一例)に存在する面(領域の一例)であって、且つ表示部14に表示された視界画像には含まれない面のみに、選択候補となるか否かを判定する判定領域を設定してもよい。すなわち、判定領域設定部112は、視界画像に存在しながらも見えない面(例えば、立方体オブジェクトROの裏側の面)のみに、選択候補となるか否かを判定する判定領域を設定してもよい。
【0097】
これにより、表示システム1(表示制御装置10)は、視界画像に表示されない面(すなわち、ユーザから見えない面)についてのみを対象として選択されたか否かを判定することができる。よって、表示システム1(表示制御装置10)は、ユーザが選択したい面が裏側にあって見えない場合であっても、わざわざ仮想カメラの位置や角度を変更して当該面が見えるようすることなく、ユーザが当該面を選択可能なようにすることができる。よって、表示システム1(表示制御装置10)は、仮想3D空間内の視界画像に表示されない面(すなわち、ユーザから見えない面)を選択する際の操作性を向上させることができる。
【0098】
[第2の実施形態]
第1の実施形態では、表示制御装置10が選択面を判定する判定処理を行う構成を備えていたが、この判定処理を行う構成の一部または全部がサーバ装置に備えられていてもよい。すなわち、
図6に示す操作検出部111と、判定領域設定部112と、選択候補判定部113と、選択判定部114と、オブジェクト制御部115と、表示制御部116のそれぞれに相当する構成は、表示制御装置(端末)とサーバ装置(サーバ)に分散されて備えられてもよいし、サーバ装置(サーバ)にすべて備えられてもよい。ここでは、
図14を参照して、選択面を判定する判定処理を行う構成をサーバ装置が備えている例について説明する。
【0099】
図14は、本実施形態に係る表示システム1Aの構成の一例を示すブロック図である。表示システム1Aは、表示制御装置10Aと、サーバ装置30Aとを備えている。サーバ装置30Aは、
図3に示すハードウェア構成と同様の構成を有するコンピュータ装置である。サーバ装置30Aは、通信部32と、記憶部35と、記憶部35に記憶されている制御プログラムをCPUが実行することにより実現される機能構成としてサーバ制御部310とを備えている。通信部32は、例えば、複数のイーサネット(登録商標)ポートや複数のUSB等のデジタル入出力ポート、WiFi(登録商標)等の無線通信等を含んで構成され、表示制御装置10A等と通信を行う。記憶部35は、例えば、HDDやSSD、EEPROM、ROM、RAMなどを含み、サーバ装置30Aが処理する各種情報や画像、プログラム(ゲーム制御プログラムを含む)等を記憶する。例えば、記憶部35には、表示制御装置10Aに表示させる仮想3D空間の3D空間データ351やオブジェクトデータ352等といったVRコンテンツのデータが記憶されている。なお、3D空間データ351及びオブジェクトデータ352は、
図6に示す3D空間データ151及びオブジェクトデータ152に対応する。
【0100】
サーバ制御部310は、操作検出部311と、判定領域設定部312と、選択候補判定部313と、選択判定部314と、オブジェクト制御部315と、表示制御部316とを備えている。これらの各部は、
図6に示す操作検出部111と、判定領域設定部112と、選択候補判定部113と、選択判定部114と、オブジェクト制御部115と、表示制御部116のそれぞれに対応する。なお、操作検出部311は、表示制御装置10Aにおける操作情報を通信部32を介して取得する。また、表示制御部316は、仮想3D空間における仮想カメラCA(所定の基準位置)から見える視界の視界画像を生成して、生成した視界画像を通信部32を介して表示制御装置10Aに送信することにより、表示制御装置10Aの表示部14に表示させる。
【0101】
表示制御装置10Aのハードウェア構成は、
図5に示す構成と同様である、表示制御装置10Aは、制御部110Aを備えている。表示制御装置10Aは、記憶部15に記憶されている制御プログラムをCPU11が実行することにより実現される機能構成として、制御部110Aを備えている。制御部110Aは、入力部13に入力された操作を示す操作情報を通信部12を介してサーバ装置30A送信する。また、制御部110Aは、通信部12を介してサーバ装置30Aから取得する視界画像を表示部14に表示させる。
【0102】
このように、選択面を判定する判定処理を行う構成をサーバ装置30Aが備える構成としても、第1の実施形態で説明した判定処理を実現することができる。なお、サーバ装置30Aは、一つのサーバ装置で構成されてもよいし、複数のサーバ装置が連携することによって構成されてもよい。つまり、表示システム1Aが備える各構成は、任意のコンピュータ装置に分散または集約して配置することができる。例えば、サーバ装置30Aは、クラウド環境やネットワーク環境、ユーザ数の規模、表示システム1を構成するために用意されたハードウェアの数やスペック等に応じて、任意のコンピュータ装置に分散または集約して配置することができる。
【0103】
[変形例]
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成は上述の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【0104】
例えば上記実施形態では、指定オブジェクトSOが配置されている例を説明したが、指定オブジェクトSOは配置されていなくてもよい。例えば、設置可能な面と設置不可能な面とは、面の色、絵柄。表記内容等の表示態様の違いによって区別されてもよい。また、選択判定部114が判定する際には、指定オブジェクトSOに代えて、面内の所定の位置(例えば、中央の位置(中点))と操作位置TPとの距離を比較してもよい。
【0105】
また、表示制御部118は、視界画像を表示させる際に、立方体オブジェクトROに加えて、立方体オブジェクトROの面(設置可能な面)に対応して設定される判定領域を表示させてもよい。例えば、表示制御部118は、判定領域を立方体オブジェクトROの表示よりも透過度を上げて表示させてもよいし、一定時間間隔で間欠的に表示させてもよい。また、表示制御部118は、所定の操作をしたときのみ判定領域を表示させてもよい。
【0106】
また、最初に視界画像に表示されるオブジェクト(例えば、立方体オブジェクトRO)の数は、複数であってもよい。また、その場合、複数のオブジェクトは、いずれの面にも他のオブジェクト(例えば、他の立方体オブジェクトRO′)が設置されていない状態であってもよいし、少なくとも一部の面に他のオブジェクトが設置されている状態であってもよい。
【0107】
また、視界画像に表示されるオブジェクト(設置させるオブジェクトも含む)は、立方体オブジェクトROに限られるものではなく、任意の数の面を有する多面体のオブジェクトであってもよい。つまり、オブジェクトの形状は、6面体の立方体に限られるものではなく、直方体であってもよいし、6面体以外の多面体であってもよい。また、面は、平面に限られるものではなく、球面であってもよいし、平面と球面の両方を含む面であってもよいし、凹凸のある面であってもよい。
【0108】
また、上記実施形態では、選択候補となる面の数が最大で2つの場合について説明したが、選択候補となる面の数は3以上であってもよい。一例として、
図15及び
図16を参照して、複数のオブジェクト(例えば、立方体オブジェクトRO)が配置されている場合に3つの面が選択候補として判定される例を説明する。
図15は、3つの面が選択候補として判定される場合の視界画像の表示例を示す図である。また、
図16は、
図15に示す視界画像に対応する仮想3D空間を上から見た図を示している。
【0109】
図示する例では、仮想3D空間内には、2つの立方体オブジェクトRO1、RO2が配置されている。
図16に示すように、立方体オブジェクトRO1の面M1には判定領域H1が設定されており、面M2には判定領域H2が設定されている。また、立方体オブジェクトRO2の面M3には判定領域H3が設定されている。また、面M1の中央には指定オブジェクトSO1、面M2の中央には指定オブジェクトSO2、面M3の中央には指定オブジェクトSO3が、それぞれ配置されている。操作線TLが、判定領域H1、判定領域H2、及び判定領域H3を通過しているため、この場合、選択候補判定部113は、面M1、面M2、及び面M3の3つの面を選択候補となる面として判定する。また、選択判定部114は、面M1、面M2、及び面M3の3つの選択候補の中から、視界画像G21において操作位置TPと最も距離が近い指定オブジェクトである指定オブジェクトSO2が配置されている面2を選択面として判定する(
図15参照)。なお、
図15において、操作位置TPがもう少し左の位置となって、指定オブジェクトSO1及び指定オブジェクトSO2より指定オブジェクトSO3に近くなった場合には、選択判定部114は、面M1、面M2、及び面M3の3つの選択候補の中から面3を選択面として判定することになる。
【0110】
なお、
図15及び
図16を参照して、複数のオブジェクト(例えば、立方体オブジェクトRO)が配置されている場合に3つの面が選択候補として判定される例を説明したが、一つのオブジェクトであっても3つの面が選択候補として判定される場合もある。例えば、多面体のオブジェクトの面の数が多くなれば3つ以上の判定領域が重なる領域が生じることがある。この場合、3つ以上の判定領域が重なる領域を操作線TLが通過した場合には、選択候補判定部113は、3つ以上の面を選択候補となる面として判定する。
【0111】
なお、複数の判定領域が重なる領域を操作線TLが通過する場合だけではなく、判定領域が重ならない領域であっても、複数の判定領域を操作線TLが通過すれば、選択候補判定部113は、複数の面を選択候補となる面として判定する。
【0112】
また、視界画像に表示されるオブジェクト(設置させるオブジェクトも含む)は、立体(3次元形状)に限らず、2次元形状のオブジェクトであってもよい。例えば、2次元形状のオブジェクトとは、表面と裏面の二つの面を有するオブジェクトである。なお、視界画像に表示されるオブジェクト(設置させるオブジェクトも含む)は、立体(3次元形状)のオブジェクトと2次元形状のオブジェクトとが混在してもよい。
【0113】
また、上記実施形態では、他のオブジェクトを設置するための面を選択する例を説明したが、選択対象は、面に限られるものではなく、所定の領域であってもよい。領域の形状は、任意の形状であってもよい。
【0114】
例えば、選択対象となる少なくとも二つの領域のそれぞれは、一のオブジェクトにおける領域であってもよい。これにより、表示システム1(1A)は、一のオブジェクトに設けられた複数の領域の中からユーザの操作に応じて選択された領域を適切に判定することができる。
【0115】
また、複数のオブジェクトのそれぞれに、それぞれ一つの領域が設定されていてもよい。この場合、表示システム1(1A)は、複数のオブジェクトが接近して配置している場合であっても、複数のオブジェクトのそれぞれ領域の中からユーザの操作に応じて選択された選択面を適切に判定することができる。また、表示システム1(1A)は、複数のオブジェクトのうちオブジェクト同士が前後に重なって後ろ側になることにより見えないオブジェクトも、ユーザが選択可能なようにすることができる。よって、仮想3D空間内の所定の領域(例えば、面)を選択する際の操作性を向上させることができる。
【0116】
また、表示部14は、表示制御装置10に備えられていなくてもよく、外部の表示装置が備える表示部を用いてもよい。例えば、表示制御装置10は、外部の表示装置と接続することにより、外部の表示装置が備える表示部に視界画像を表示させてもよい。外部の表示装置とは、テレビやパーソナルコンピュータ用のモニタであってもよいし、HMD(ヘッドマウントディスプレイ)等であってもよい。
【0117】
なお、前述したように、領域(例えば、面)を選択するための操作は、表示画面に対するタッチ操作に限られるものではなく、キーボード、マウス、タッチパッド、ジョイスティック等を用いた操作であってもよい。
【0118】
また、上記実施形態では、仮想3D空間を利用したゲームのアプリケーションのユーザインターフェースを例に説明したが、ゲームに限らず、任意のアプリケーションのユーザインターフェースに適用することができる。
【0119】
また、上述の制御部110またはサーバ制御部310の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより制御部110またはサーバ制御部310としての処理を行ってもよい。ここで、「記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する」とは、コンピュータシステムにプログラムをインストールすることを含む。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。このように、プログラムを記憶した記録媒体は、CD−ROM等の非一過性の記録媒体であってもよい。また、記録媒体には、当該プログラムを配信するために配信サーバからアクセス可能な内部または外部に設けられた記録媒体も含まれる。配信サーバの記録媒体に記憶されるプログラムのコードは、端末装置で実行可能な形式のプログラムのコードと異なるものでもよい。すなわち、配信サーバからダウンロードされて端末装置で実行可能な形でインストールができるものであれば、配信サーバで記憶される形式は問わない。なお、プログラムを複数に分割し、それぞれ異なるタイミングでダウンロードした後に端末装置で合体される構成や、分割されたプログラムのそれぞれを配信する配信サーバが異なっていてもよい。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、機能ごとに独立したものであってもよく、各プログラムにより実現される機能同士が例えば通信することにより恊働するようなものであってもよい。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【0120】
また、上述した制御部110またはサーバ制御部310の機能の一部または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。上述した各機能は個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
【0121】
[付記A]
以上の記載から本発明は例えば以下のように把握される。なお、本発明の理解を容易にするために添付図面の参照符号を便宜的に括弧書きにて付記するが、それにより本発明が図示の態様に限定されるものではない。
【0122】
(付記1A)本発明の一態様に係る表示システム(1、1A)は、仮想3D空間に関する仮想3D空間データに基づいて前記仮想3D空間における所定の基準位置からの所定範囲の仮想3D空間データから生成する画像(例えば、視界画像)を表示部(14)に表示させる表示制御部(116、316、S100)と、前記表示部に表示された前記画像に対する操作を検出する操作検出部(111、311、S104)と、前記仮想3D空間内の少なくとも二つの領域(例えば、面)のそれぞれに関連付けて、選択候補となるか否かを判定するための少なくとも一つの判定領域を設定する判定領域設定部(112、312、S102)と、前記操作検出部が検出する操作により確定する前記画像上の操作位置(TP)と前記所定の基準位置(CA)と前記判定領域(H1、H2等)とに基づく前記仮想3D空間における位置関係に基づいて、前記選択候補となる領域を判定する選択候補判定部(113、313、S106、S1060〜S1066)と、前記選択候補判定部により判定された前記選択候補となる領域内の特定位置(例えば、指定オブジェクトの位置)と前記操作位置との前記表示部に表示された前記画像における位置関係に基づいて、前記選択候補となる領域の中から前記操作により選択された領域を判定する選択判定部(114、314、S110、S1100〜S1102)と、を備える。
【0123】
付記1Aの構成によれば、表示システムは、仮想3D空間データから生成した画像上の操作位置と仮想3D空間における所定の基準位置と選択候補となるか否かを判定するための判定領域との仮想3D空間における位置関係に基づいて選択候補となる領域を判定してから、選択候補となる領域と操作位置との上記画像における位置関係に基づいて、操作により選択された領域を判定するため、単に上記画像における位置関係のみに基づいて、選択された領域を判定する場合よりも、ユーザの操作に応じてユーザの意図した面を選択することができる。よって、仮想3D空間内の面を選択する際の操作性を向上させることができる。
【0124】
(付記2A)また、本発明の一態様は、付記1Aに記載の表示システムであって、前記選択候補判定部と前記選択判定部とは、異なる座標系を用いて、それぞれの判定を行う。
【0125】
付記2Aの構成によれば、表示システムは、3次元座標系と2次元座標系との両方を用いることにより、ユーザの操作に応じて選択された面を適切に判定することができる。
【0126】
(付記3A)また、本発明の一態様は、付記1Aまたは付記2Aに記載の表示システムであって、前記判定領域設定部は、前記少なくとも二つの領域のそれぞれの判定領域を、それぞれの領域より大きい面積の領域として設定する。
【0127】
付記3Aの構成によれば、表示システムは、画像に表示されない領域(すなわち、ユーザから見えない領域)についても選択候補の判定対象とすることができるため、当該領域が見えるように基準位置を変更しなくても、当該領域を選択可能なようにすることができる。
【0128】
(付記4A)また、本発明の一態様は、付記1Aから付記3Aのいずれか一に記載の表示システムであって、前記判定領域設定部は、前記少なくとも二つの領域のそれぞれの判定領域を、それぞれの領域に対して法線方向へ厚みのある領域として設定する。
【0129】
付記4Aの構成によれば、表示システムは、複数の領域のそれぞれの判定領域どうしが重なり合う領域を広くすることができるため、複数の面(例えば、視界画像に表示されない面(すなわち、ユーザから見えない面))を選択候補にしやすくすることができる。
【0130】
(付記5A)また、本発明の一態様は、付記1Aから付記4Aのいずれか一に記載の表示システムであって、前記選択候補判定部は、前記操作位置と前記所定の基準位置と前記判定領域と前記少なくとも二つの領域とに基づく前記仮想3D空間における位置関係に基づいて、前記少なくとも二つの領域のうち選択候補となる領域を判定する。
【0131】
付記5Aの構成によれば、表示システムは、さらに操作位置に対する複数の領域の位置や角度も考慮して選択候補となる領域を適切に判定することができる。例えば、複数の領域のうちの一の領域より他の領域が手前にあり、手前にある領域の領域内に操作位置がある場合、該一の領域より手前にある領域を優先して選択候補と判定することができる。
【0132】
(付記6A)また、本発明の一態様は、付記1Aから付記5Aのいずれか一に記載の表示システムであって、選択候補判定部は、前記仮想3D空間における位置関係に基づいて選択候補となり得る領域のうちから、前記選択候補となる領域と判定する領域を所定の条件に基づいて限定する。
【0133】
付記6Aの構成によれば、表示システムは、条件によっては選択候補となり得る領域であっても選択候補から除外することができるため、条件によって柔軟に制御することができる。
【0134】
(付記7A)また、本発明の一態様は、付記6Aに記載の表示システムであって、選択候補判定部は、前記少なくとも二つの領域と前記所定の基準位置との距離に基づく条件を前記所定の条件とする。
【0135】
付記7Aの構成によれば、表示システムは、例えば一定距離以上遠くにある領域を選択候補から除外することができるため、ユーザが意図していない遠くの領域を選択候補としてしまわないようにすることができる。なお、表示システムは、一定距離よりも近くにある領域を選択候補から除外してもよい。この場合、表示システムは、ユーザが意図していない近すぎる領域を選択候補としてしまわないようにすることができる。
【0136】
(付記8A)また、本発明の一態様は、付記6Aまたは付記7Aに記載の表示システムであって、選択候補判定部は、前記所定範囲に存在する領域であって、且つ前記表示部に表示された前記画像には含まれない領域であることを前記所定の条件とする。
【0137】
付記8Aの構成によれば、表示システムは、画像に表示されない領域(すなわち、ユーザから見えない領域)についてのみを対象として選択されたか否かを判定することができる。よって、表示システムは、ユーザが選択したい領域が裏側にあって見えない場合であっても、当該領域が見えるよう所定の基準位置を変更することなく、当該領域を選択可能なようにすることができる。よって、表示システムは、仮想3D空間内の画像に表示されない領域(すなわち、ユーザから見えない領域)を選択する際の操作性を向上させることができる。
【0138】
(付記9A)また、本発明の一態様は、付記1Aから付記8Aのいずれか一に記載の表示システムであって、前記少なくとも二つの領域のそれぞれは、一のオブジェクトにおける領域である。
【0139】
付記9Aの構成によれば、表示システムは、一のオブジェクトに設けられた複数の領域の中からユーザの操作に応じて選択された領域を適切に判定することができる。
【0140】
(付記10A)また、本発明の一態様は、付記1Aから付記9Aのいずれか一に記載の表示システムであって、前記少なくとも二つの領域のそれぞれは、複数の面を有する一のオブジェクトにおけるいずれかの面に対応する領域である。
【0141】
付記10Aの構成によれば、表示システムは、一のオブジェクトの複数の面の中からユーザの操作に応じて選択された領域を適切に判定することができる。
【0142】
(付記11A)また、本発明の一態様に係る表示制御装置(10)は、付記1Aから付記10Aのいずれか一に記載の各部を備える。
【0143】
付記11Aの構成によれば、表示制御装置は、仮想3D空間データから生成した画像上の操作位置と仮想3D空間における所定の基準位置と選択候補となるか否かを判定するための判定領域との仮想3D空間における位置関係に基づいて選択候補となる領域を判定してから、選択候補となる領域と操作位置との上記画像における位置関係に基づいて、操作により選択された領域を判定するため、単に上記画像における位置関係のみに基づいて、選択された領域を判定する場合よりも、ユーザの操作に応じてユーザの意図した面を選択することができる。よって、仮想3D空間内の面を選択する際の操作性を向上させることができる。
【0144】
(付記12A)また、本発明の一態様は、コンピュータを、付記1Aから付記10Aのいずれか一に記載の表示システムまたは付記11Aに記載の表示制御装置として機能させるためのプログラムである。
【0145】
付記12Aの構成によれば、プログラムは、仮想3D空間データから生成した画像上の操作位置と仮想3D空間における所定の基準位置と選択候補となるか否かを判定するための判定領域との仮想3D空間における位置関係に基づいて選択候補となる領域を判定してから、選択候補となる領域と操作位置との上記画像における位置関係に基づいて、操作により選択された領域を判定するため、単に上記画像における位置関係のみに基づいて、選択された領域を判定する場合よりも、ユーザの操作に応じてユーザの意図した面を選択することができる。よって、仮想3D空間内の面を選択する際の操作性を向上させることができる。
【0146】
[付記B]
また、以上の記載から本発明は例えば以下のようにも把握される。なお、本発明の理解を容易にするために添付図面の参照符号を便宜的に括弧書きにて付記するが、それにより本発明が図示の態様に限定されるものではない。
【0147】
(付記1B)本発明の一態様に係る表示システム(1、1A)は、仮想3D空間に関する仮想3D空間データに基づいて前記仮想3D空間における所定の基準位置からの所定範囲の仮想3D空間データから生成する画像を表示部(12)に表示させる表示制御部(116、316、S100)と、前記表示部に表示された前記画像に対する操作を検出する操作検出部(111、311、S104)と、前記仮想3D空間内の前記所定範囲に存在する少なくとも一つのオブジェクトの少なくとも一つの面であって、且つ前記表示部に表示された前記画像には含まれない前記少なくとも一つの面が少なくとも含まれる複数の面のそれぞれを、選択候補として判定するための判定領域を設定する判定領域設定部(112、312、S102)と、前記操作検出部が検出する操作により確定する前記画像上の操作位置と前記所定の基準位置と前記判定領域との相対的な位置関係に基づいて、前記選択候補となる面を判定する選択候補判定部(113、313、S106、S1060〜S1066)と、前記選択候補判定部により判定された前記選択候補となる面内の特定位置と前記操作位置との相対的な位置関係に基づいて、前記選択候補となる面の中から前記操作により選択された面を判定する選択判定部(114、314、S110、S1100〜S1102)と、を備える。
【0148】
付記1Bの構成によれば、表示システムは、画像に表示されない面(すなわち、ユーザから見えない面)についても判定領域を設定し、該判定領域に基づいて選択候補となる面を判定してから、選択候補となる面と操作位置TPとの位置関係に基づいて選択面を判定するため、見えている面も見えない面もともに判定することができる。よって、ユーザが選択したい面が裏側にあって見えない場合であっても、わざわざ所定の基準位置を変更して当該面が見えるようにすることなく、ユーザが当該面を選択可能なようにすることができる。よって、仮想3D空間内の所定の面を選択する際の操作性を向上させることができる。
【0149】
(付記2B)また、本発明の一態様は、付記1Bに記載の表示システムであって、前記判定領域設定部は、前記複数の面のそれぞれの前記判定領域とそれぞれの面とを関連付けて設定する。
【0150】
付記2Bの構成によれば、表示システムは、ユーザの操作に応じて、複数の面について選択候補となるか否かを判定することができる。
【0151】
(付記3B)また、本発明の一態様は、付記2Bに記載の表示システムであって、前記判定領域設定部は、前記複数の面の少なくとも一部の判定領域と他の判定領域との少なくとも一部が重なり合うように設定する。
【0152】
付記3Bの構成によれば、表示システムは、画像上の操作位置によっては、互いに近傍にある複数の面を選択候補としてから、複数の選択候補の中から、操作により選択され面を適切に判定することが可能である。
【0153】
(付記4B)また、本発明の一態様は、付記2Bまたは付記3Bに記載の表示システムであって、前記選択候補判定部は、前記表示部に表示された前記画像上の前記操作位置に基づいて、前記仮想3D空間において前記所定の基準位置から該操作位置の方向へ延びる直線である操作線を生成し(S1060)、前記複数の面のそれぞれの前記判定領域のうち、前記操作線が通過する判定領域に関連付けられている面を、前記選択候補となる面として判定する(S1066)。
【0154】
付記4Bの構成によれば、表示システムは、画像上の操作位置に基づく仮想3D空間における操作線が通過する判定領域が設定された面を選択候補として判定するため、操作位置に応じて適切に選択候補となる面を判定することができる。
【0155】
(付記5B)また、本発明の一態様は、付記4Bに記載の表示システムであって、前記選択候補判定部は、複数の判定領域が重なり合った領域を前記操作線が通過する場合、該重なり合った判定領域のそれぞれに関連付けられている面を、前記選択候補となる面として判定する。
【0156】
付記5Bの構成によれば、表示システムは、仮想3D空間において複数の判定領域が重なる領域を操作線が通過する場合、該複数の判定領域のそれぞれが設定されている面のすべてを選択候補とするため、操作位置によっては近傍にある複数の面を選択候補としてから、複数の選択候補の中から、操作により選択され面を適切に判定することが可能である。
【0157】
(付記6B)また、本発明の一態様は、付記4Bまたは付記5Bに記載の表示システムであって、前記選択候補判定部は、前記操作線が前記オブジェクトに到達する場合、前記所定の基準位置から到達地点までの前記操作線の線分が通過する判定領域に関連付けられている面を、前記選択候補となる面として判定する(S1062〜S1066)。
【0158】
付記6Bの構成によれば、表示システムは、見えている面(表側の面)と操作位置との位置関係によっては、見えていない面(裏側の面)を選択候補から除外して、見えている面(表側の面)を優先して選択面と判定することができる。
【0159】
(付記7B)また、本発明の一態様は、付記2Bから付記6Bのいずれか一に記載の表示システムであって、前記判定領域設定部は、同一のオブジェクトが有する複数の面のうち隣り合う面のそれぞれ判定領域を、少なくとも一部が重なり合うように設定する。
【0160】
付記7Bの構成によれば、表示システムは、操作位置に応じて、隣り合う面の両方を選択候補として判定することも可能である。また、表示システムは、隣り合う面の両方を選択候補として判定することも可能であるため、表側の面のみならず裏側の見えない面についても選択候補として判定することができる。
【0161】
(付記8B)また、本発明の一態様は、付記2Bから付記7Bのいずれか一に記載の表示システムであって、前記判定領域設定部は、前記オブジェクトが有する面の判定領域を、前記オブジェクトの外側に設定する。
【0162】
付記8Bの構成によれば、表示システムは、各面の判定領域を適した位置に配置することにより、ユーザの操作に応じて、各面が選択候補となるか否かを適切に判定できる。
【0163】
(付記9B)また、本発明の一態様は、付記2Bから付記8Bのいずれか一に記載の表示システムであって、前記判定領域設定部は、前記複数の面のそれぞれの判定領域を、それぞれの面の領域より大きい面積の領域として設定する。
【0164】
付記9Bの構成によれば、表示システムは、画像に表示されない面(すなわち、ユーザから見えない面)についても判定領域に操作線が通過可能となるため(すなわち、選択候補の判定対象とすることができるため)、わざわざ所定の基準位置を変更して当該面が見えるようにしなくても、当該面を選択可能なようにすることができる。
【0165】
(付記10B)また、本発明の一態様は、付記2Bから付記9Bのいずれか一に記載の表示システムであって、前記判定領域設定部は、前記複数の面のそれぞれの判定領域を、それぞれの面に対して法線方向へ厚みのある領域として設定する。
【0166】
付記10Bの構成によれば、表示システムは、複数の面のそれぞれの判定領域どうしが重なり合う領域を広くすることができるため、該重なり合う領域を操作線が通過しやすくなり、複数の面(例えば、視界画像に表示されない面(すなわち、ユーザから見えない面))を選択候補にしやすくすることができる。
【0167】
(付記11B)また、本発明の一態様に係る表示制御装置(10)は、 付記1Bから付記10Bのいずれか一に記載の各部を備える。
【0168】
付記11Bの構成によれば、表示制御装置は、画像に表示されない面(すなわち、ユーザから見えない面)についても判定領域を設定し、該判定領域に基づいて選択候補となる面を判定してから、選択候補となる面と操作位置TPとの位置関係に基づいて選択面を判定するため、見えている面も見えない面もともに判定することができる。よって、ユーザが選択したい面が裏側にあって見えない場合であっても、わざわざ所定の基準位置を変更して当該面が見えるようにすることなく、ユーザが当該面を選択可能なようにすることができる。よって、仮想3D空間内の所定の面を選択する際の操作性を向上させることができる。
【0169】
(付記12B)また、本発明の一態様は、コンピュータを、付記1Aから付記10Aのいずれか一に記載の表示システムまたは付記11Bに記載の表示制御装置として機能させるためのプログラムである。
【0170】
付記12Bの構成によれば、プログラムは、画像に表示されない面(すなわち、ユーザから見えない面)についても判定領域を設定し、該判定領域に基づいて選択候補となる面を判定してから、選択候補となる面と操作位置TPとの位置関係に基づいて選択面を判定するため、見えている面も見えない面もともに判定することができる。よって、ユーザが選択したい面が裏側にあって見えない場合であっても、わざわざ所定の基準位置を変更して当該面が見えるようにすることなく、ユーザが当該面を選択可能なようにすることができる。よって、仮想3D空間内の所定の面を選択する際の操作性を向上させることができる。
【解決手段】表示システムは、仮想3D空間における所定の基準位置からの所定範囲の画像を表示部に表示させる表示制御部と、表示部に表示された画像に対する操作を検出する操作検出部と、仮想3D空間内の所定範囲に存在する少なくとも一つのオブジェクトの少なくとも一つの面であって、且つ表示部に表示された画像には含まれない少なくとも一つの面が少なくとも含まれる複数の面のそれぞれを選択候補として判定するための判定領域を設定する判定領域設定部と、画像上の操作位置と所定の基準位置と判定領域との相対的な位置関係に基づいて選択候補となる面を判定する選択候補判定部と、選択候補判定部により判定された選択候補となる面内の特定位置と操作位置との相対的な位置関係に基づいて選択候補となる面の中から操作により選択された面を判定する選択判定部とを備える。