(57)【特許請求の範囲】
【請求項１】
三次元空間に配置されたオブジェクトを透視投影によりレンダリングして表示装置に表示する描画部と、
前記表示装置の画面における前記オブジェクトを表示すべき位置に前記オブジェクトが表示されるように、前記三次元空間における前記オブジェクトの配置位置を調整する位置調整部と、
前記画面におけるユーザによる入力を検出する入力装置から前記入力の位置を取得し、前記入力の位置が所定の入力領域内であるか否かを判定する判定部と、
を備え、
前記描画部は、複数のオブジェクトをレンダリングして前記表示装置に表示し、
前記判定部は、前記入力の位置が前記複数のオブジェクトにそれぞれ対応する複数の入力領域のいずれに属するかを判定し、
前記描画部は、前記判定部により判定された入力領域に対応するオブジェクトがより大きく表示されるように、そのオブジェクトを前記三次元空間において視点位置に近くなるように移動させてレンダリングし、
前記位置調整部は、より大きく表示されるオブジェクトの表示領域が、そのオブジェクトに対応する入力領域に合致するように、前記三次元空間における前記オブジェクトの配置位置を、透視投影面に平行な平面内で移動させる
ことを特徴とする表示制御装置。
【請求項２】
描画部が、三次元空間に配置された複数のオブジェクトを透視投影によりレンダリングして表示装置に表示するステップと、
判定部が、前記表示装置の画面におけるユーザによる入力を検出する入力装置から前記入力の位置を取得し、前記入力の位置が前記複数のオブジェクトにそれぞれ対応する複数の入力領域のいずれに属するかを判定するステップと、
前記描画部が、前記判定部により判定された入力領域に対応するオブジェクトがより大きく表示されるように、そのオブジェクトを前記三次元空間において視点位置に近くなるように移動させてレンダリングするステップと、
位置調整部が、より大きく表示されるオブジェクトの表示領域が、そのオブジェクトに対応する入力領域に合致するように、前記三次元空間における前記オブジェクトの配置位置を、透視投影面に平行な平面内で移動させるステップと、
を備えることを特徴とする表示制御方法。
【請求項３】
コンピュータを、
三次元空間に配置されたオブジェクトを透視投影によりレンダリングして表示装置に表示する描画部、
前記表示装置の画面における前記オブジェクトを表示すべき位置に前記オブジェクトが表示されるように、前記三次元空間における前記オブジェクトの配置位置を調整する位置調整部、
前記画面におけるユーザによる入力を検出する入力装置から前記入力の位置を取得し、前記入力の位置が所定の入力領域内であるか否かを判定する判定部と、
として機能させ、
前記描画部は、複数のオブジェクトをレンダリングして前記表示装置に表示し、
前記判定部は、前記入力の位置が前記複数のオブジェクトにそれぞれ対応する複数の入力領域のいずれに属するかを判定し、
前記描画部は、前記判定部により判定された入力領域に対応するオブジェクトがより大きく表示されるように、そのオブジェクトを前記三次元空間において視点位置に近くなるように移動させてレンダリングし、
前記位置調整部は、より大きく表示されるオブジェクトの表示領域が、そのオブジェクトに対応する入力領域に合致するように、前記三次元空間における前記オブジェクトの配置位置を、透視投影面に平行な平面内で移動させる
ことを特徴とする表示制御プログラム。
【請求項４】
請求項３に記載の表示制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示技術に関し、とくに、透視投影により三次元空間を描画する表示制御装置及び表示制御方法に関する。
【背景技術】
【０００２】
パーソナルコンピュータや、スマートフォンなどにおいては、データやアプリケーションなどに対応するアイコンを表示装置の画面に表示し、アイコンをダブルクリックするなどの操作入力を受け付けると、そのアイコンに対応するデータを表示したり、アプリケーションを起動したりするユーザインタフェースが広く採用されている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
近年、携帯型ゲーム機や携帯電話端末などが広く普及しており、日常生活において、このようなユーザインタフェースに触れる機会が飛躍的に増加している。ユーザインタフェースに、操作性の良さが求められるのはもちろんであるが、さらに、視覚的にも楽しく、分かりやすい表示の工夫が強く要求されるようになっている。本発明者は、三次元空間内に配置されたオブジェクトを透視投影によりレンダリングすることにより、遠近感のある三次元的なユーザインタフェースを実現する際に、オブジェクトの表示位置を調整する必要があるとの課題を認識するに至り、オブジェクトの表示位置を適切に調整することが可能な利便性の高い表示制御技術に想到した。
【０００４】
本発明はこうした状況に鑑みてなされたものであり、その目的は、利便性の高い表示制御技術を提供することにある。
【課題を解決するための手段】
【０００５】
本発明のある態様は、表示制御装置に関する。この表示制御装置は、三次元空間に配置されたオブジェクトを透視投影によりレンダリングして表示装置に表示する描画部と、前記表示装置の画面における前記オブジェクトを表示すべき位置に前記オブジェクトが表示されるように、前記三次元空間における前記オブジェクトの配置位置を調整する位置調整部と、を備えることを特徴とする。
【０００６】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【０００７】
本発明によれば、利便性の高い表示制御技術を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】実施の形態に係るゲーム装置の外観を示す図である。
【図２】実施の形態に係るゲーム装置の外観を示す図である。
【図３】実施の形態に係るゲーム装置の構成を示す図である。
【図４】図４（ａ）は、メニュー制御部が表示装置に表示したメニュー画面の例を示す図であり、図４（ｂ）は、図４（ａ）に示したメニュー画面においてプレイヤーから受け付けた入力の位置と、起動される機能との対応を示すマップの例を示す図である。
【図５】図５（ａ）は、メニュー制御部が表示装置に表示したメニュー画面の例を示す図であり、図５（ｂ）は、図５（ａ）に示したメニュー画面においてプレイヤーから受け付けた入力の位置と、起動される機能との対応を示すマップの例を示す図である。
【図６】図６（ａ）は、メニュー制御部が表示装置に表示したメニュー画面の例を示す図であり、図６（ｂ）は、図６（ａ）に示したメニュー画面においてプレイヤーから受け付けた入力の位置と、起動される機能との対応を示すマップの例を示す図である。
【図７】描画部により描画される三次元空間の例を示す図である。
【図８】ある機能が選択候補となったときのメニュー画面を生成する方法を説明するための図である。
【図９】ある機能が選択候補となったときのメニュー画面を生成する方法を説明するための図である。
【図１０】図５（ａ）に示したメニュー画面を生成するために必要なオブジェクトの移動を示す図である。
【図１１】図６（ａ）に示したメニュー画面を生成するために必要なオブジェクトの移動を示す図である。
【図１２】投影面におけるオブジェクトの表示位置から、三次元空間におけるオブジェクトの配置位置を算出する方法を説明するための図である。
【発明を実施するための形態】
【０００９】
実施の形態においては、表示制御装置の一例として、携帯型のゲーム装置について説明する。
【００１０】
図１及び図２は、実施の形態に係るゲーム装置１０の外観を示す。図１及び図２に示すゲーム装置１０は、プレイヤーが把持して使用する携帯型のゲーム装置である。図１に示すように、ゲーム装置１０の表側、すなわち、プレイヤーがゲーム装置１０を把持して操作するときにプレイヤーに面する側には、方向キー２１、ボタン２２、左アナログスティック２３、右アナログスティック２４、左ボタン２５、右ボタン２６などの入力装置２０と、表示装置６８と、前面カメラ７１とが備えられている。表示装置６８には、プレイヤーの指やスタイラスペンなどによる接触を検知するためのタッチパネル６９が併設されている。ボタン２２は、○ボタン３１、△ボタン３２、□ボタン３３、及び×ボタン３４を含む。
【００１１】
図２に示すように、ゲーム装置１０の裏側には、背面タッチパネル７０と背面カメラ７２が備えられている。ゲーム装置１０の裏側にも、表側と同様に表示装置を設けてもよいが、本実施の形態では、ゲーム装置１０の裏側には表示装置を設けずに、背面タッチパネル７０のみを設ける。
【００１２】
プレイヤーは、ゲーム装置１０を両手で把持した状態で、例えば、右手親指でボタン２２を操作し、左手親指で方向キー２１を操作し、右手人差し指又は中指で右ボタン２６を操作し、左手人差し指又は中指で左ボタン２５を操作し、両手の親指でタッチパネル６９を操作し、両手の薬指又は小指で背面タッチパネル７０を操作することができる。スタイラスペンなどを用いる場合は、例えば、ゲーム装置１０を左手で把持した状態で、右手でスタイラスペン又は人差し指によりタッチパネル６９及びボタン２２を操作し、左手親指で方向キー２１を操作し、左手人差し指又は中指で左ボタン２５を操作し、左手薬指又は小指で背面タッチパネル７０を操作することができる。
【００１３】
図３は、実施の形態に係るゲーム装置１０の構成を示す。ゲーム装置１０は、入力装置２０、制御部４０、データ保持部６０、表示装置６８、タッチパネル６９、背面タッチパネル７０、前面カメラ７１、及び背面カメラ７２を備える。これらの構成は、ハードウエアコンポーネントでいえば、任意のコンピュータのＣＰＵ、メモリ、メモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【００１４】
タッチパネル６９は、マトリクス・スイッチ方式、抵抗膜方式、表面弾性波方式、赤外線方式、電磁誘導方式、静電容量方式など、任意の方式のタッチパネルであってもよい。タッチパネル６９は、入力を検知した位置の座標を所定の周期で出力する。背面タッチパネル７０も、任意の方式のタッチパネルであってもよい。背面タッチパネル７０は、入力を検知した位置の座標及び入力の強度（圧力）を所定の周期で出力する。タッチパネル６９及び背面タッチパネル７０が検知したプレイヤーによる入力の位置及び強度は、タッチパネル６９及び背面タッチパネル７０、又は、制御部４０に設けられた、図示しないデバイスドライバなどにより算出されてもよい。
【００１５】
前面カメラ７１は、ゲーム装置１０の表側の画像を撮像する。背面カメラ７２は、ゲーム装置１０の裏側の画像を撮像する。
【００１６】
制御部４０は、メニュー制御部４１及びアプリケーション実行部４８を備える。メニュー制御部４１は、判定部の一例である選択部４２、描画部４３、及び位置調整部４４を備える。
【００１７】
メニュー制御部４１は、ゲーム装置１０が提供する各種機能のメニュー画面を表示装置に表示し、プレイヤーから実行すべき機能の選択を受け付ける。アプリケーション実行部４８は、メニュー制御部４１が受け付けたプレイヤーの指示により選択されたアプリケーションのプログラムをデータ保持部６０から読み出して実行する。
【００１８】
描画部４３は、ゲーム装置１０が提供する各種機能のメニュー画面を生成するために、各種機能に対応するオブジェクトを仮想三次元空間内に配置し、視点位置と透視投影面を設定して、透視投影によりオブジェクトを描画する。選択部４２は、タッチパネル６９に対するプレイヤーによるタッチ入力の位置を取得し、入力位置と起動すべき機能との対応を示すマップを参照して、入力位置に対応する機能を判定し、判定された機能を選択候補とする。選択部４２は、プレイヤーがタッチパネル６９にタッチしたまま指を移動させると、タッチ入力の位置の移動にともなって、現在の入力位置に対応する機能を選択候補に切り替える。選択部４２は、プレイヤーの指がタッチパネル６９から離されて、タッチパネル６９に対するタッチ入力がオフになった旨の情報を取得すると、タッチ入力がオフになったときの入力位置に対応する機能、すなわち、直前に選択候補となっていた機能の選択を確定し、その機能を実行するようアプリケーション実行部４８に通知する。別の例においては、選択部４２は、１回目のタッチ入力の位置に基づいて選択候補となる機能を選択し、選択候補となっている機能に対応する位置に対する再度の入力により、その機能の選択を確定してもよい。位置調整部４４は、後述するように、描画部４３により透視投影により描画されるオブジェクトの配置位置を調整する。
【００１９】
図４（ａ）は、メニュー制御部４１が表示装置６８に表示したメニュー画面の例を示す。メニュー画面９０には、ゲーム装置１０が提供する各種の機能を示すオブジェクト９２ａ〜９２ｇが表示されている。図４（ｂ）は、図４（ａ）に示したメニュー画面においてプレイヤーから受け付けた入力の位置と、起動される機能との対応を示すマップの例を示す。図４（ａ）に示した、選択候補が未選択であるときのメニュー画面９０においては、面積の等しい長方形の入力領域９４ａ〜９４ｇが各機能に割り当てられている。メニュー画面９０におけるオブジェクト９２の幅と、マップ９３における各機能に割り当てられた入力領域９４の幅は等しい。選択部４２は、タッチパネル６９に対するプレイヤーによる入力の位置を取得すると、その入力位置がマップ９３におけるいずれの入力領域に属するかを判定し、判定された入力領域に対応する機能を選択候補とする。なお、入力領域９４の大きさや形状は任意であってもよく、頻繁に用いられる機能に対応する入力領域、例えば、ホーム画面を表示する機能が割り当てられた入力領域９４ａの面積を、他の入力領域よりも広くしてもよい。
【００２０】
図５（ａ）は、メニュー制御部４１が表示装置６８に表示したメニュー画面の例を示す。図５（ａ）は、オブジェクト９２ｅに対応する機能が選択候補となっているときのメニュー画面９０の例を示す。描画部４３は、選択候補となっている機能に対応するオブジェクト９２ｅが手前に飛び出しているように見えるようなメニュー画面９０を表示する。図５（ｂ）は、図５（ａ）に示したメニュー画面におけるマップの例を示す。図５（ａ）に示した、選択候補が選択されているときのメニュー画面９０においては、選択候補となっている機能を起動するための入力をプレイヤーが行いやすいように、選択候補となっている機能に対して広い面積の入力領域９４ｅが割り当てられる。そのため、選択候補となっていない他の機能に対しては、図４（ｂ）の場合よりも狭い面積の入力領域が割り当てられる。これに対応して、メニュー画面９０においても、選択候補となっていない機能に対応するオブジェクトの表示領域は図４（ａ）のメニュー画面よりも狭くなり、選択候補となっている機能に対応するオブジェクトの表示領域は広くなる。描画部４３は、選択候補となっている機能に対応するオブジェクト９２ｅが徐々に手前に引き出されつつ表示領域の面積が広くなるように、かつ、他のオブジェクトは徐々に面積が狭くなって左右に移動するように、それぞれのオブジェクトを表示する。選択部４２は、描画部４３が、オブジェクト９２ｅの表示領域が徐々に広くなるようなアニメーション表示を行うのに合わせて、オブジェクト９２ｅに対応する入力領域９４ｅが徐々に広くなり、かつ、他の入力領域が徐々に狭くなって左右に移動するように、それぞれの入力領域を変更する。すなわち、オブジェクト９２ａ〜９２ｇのそれぞれの表示領域と、それらに対応する入力領域９４ａ〜９４ｇは、アニメーション表示されている間も合致するように制御される。
【００２１】
図６（ａ）は、メニュー制御部４１が表示装置６８に表示したメニュー画面の例を示す。図４（ａ）又は図５（ａ）に示したメニュー画面９０において、オブジェクト９２ｃの表示領域に対するプレイヤーの入力を取得すると、描画部４３は、図６（ａ）に示すように、オブジェクト９２ｃが手前に飛び出しているように見えるようなメニュー画面９０を表示する。図５（ａ）のメニュー画面９０から図６（ａ）のメニュー画面に移行するとき、描画部４３は、いったん、オブジェクト９２ｅが奧に後退するようにして図４（ａ）のメニュー画面９０に戻してから、オブジェクト９２ｃが手前に引き出されるようにして図６（ａ）のメニュー画面９０を表示してもよい。図６（ｂ）は、図６（ａ）に示したメニュー画面におけるマップの例を示す。図５（ｂ）に示したマップ９３と同様に、選択候補となっている機能に対して広い面積の入力領域９４ｃが割り当てられている。
【００２２】
前述したように、本実施の形態では、プレイヤーが指をタッチパネル６９に接触させたまま移動させると、入力位置の変更にともなって、現在の入力位置に対応する機能に選択候補が切り替えられる。例えば、図４（ａ）に示したメニュー画面９０において、プレイヤーが指をタッチパネル６９から離さずに左に移動させると、入力位置がオブジェクト９２ｄの表示領域に達したときに、オブジェクト９２ｄに対応する機能が選択候補となり、オブジェクト９２ｅが小さくなってオブジェクト９２ｄが大きくなるようなアニメーション表示が行われ、さらにプレイヤーが指を左に移動させて、入力位置がオブジェクト９２ｃの表示領域に達すると、オブジェクト９２ｃに対応する機能が選択候補となり、オブジェクト９２ｄが小さくなってオブジェクト９２ｃが大きくなるようなアニメーション表示が行われ、図６（ａ）に示したメニュー画面９０となる。このときに、入力領域９４もオブジェクト９２の表示領域の変更に合わせて変更される。本実施の形態では、図４（ｂ）、図５（ｂ）、図６（ｂ）に示すように、メニュー画面９０の全域がいずれかの入力領域９４に属するように分割されているので、いったんプレイヤーがメニュー画面９０にタッチすると、プレイヤーが指を離したときに、その位置が属する入力領域に割り当てられた機能が必ず起動されることになる。別の例においては、いずれの機能も割り当てられない領域が設けられてもよい。この場合、プレイヤーがタッチパネル６９にタッチした後、いずれかの機能が割り当てられた領域に入力位置を移動させると、その機能が選択候補となり、いずれの機能も割り当てられない領域に入力位置を移動させると、選択候補がキャンセルされ、選択候補がキャンセルされた状態で、いずれの機能も割り当てられない領域において指が離されると、いずれの機能も起動されない。
【００２３】
図７は、描画部により描画される三次元空間の例を示す。仮想三次元空間には、メニュー画面に表示される各機能に対応するオブジェクトとして、板状のオブジェクト９６ａ〜９６ｇが配置される。描画部４３は、視点位置９７と投影面９８を設定して、透視投影によりオブジェクト９６ａ〜９６ｇをレンダリングすることにより、図４（ａ）に示したメニュー画面９０を生成する。投影面９８の位置は任意であってよく、オブジェクト９６の奧に投影面９８が設けられてもよい。オブジェクト９６の大きさや表示画面の大きさなどを考慮して視点位置９７や投影面９８が設定されればよい。
【００２４】
図８及び図９は、ある機能が選択候補となったときのメニュー画面を生成する方法を説明するための図である。オブジェクト９６ｅの表示領域に対応する入力領域に対する入力を受け付け、選択部４２によりオブジェクト９６ｅに対応する機能が選択候補とされたとき、オブジェクト９６ｅをメニュー画面において拡大して表示するためには、図８に示すように、オブジェクト９６ｅを視点位置９７に近づくように手前に移動させればよい。しかし、図９に示すように、透視投影においては、奥行き方向にオブジェクトを移動させると、投影面９８におけるオブジェクトの投影位置がずれる。例えば、投影面９８の左半分に表示されるオブジェクト９６ｂを手前に移動させると、投影面９８においては左方向へ表示位置がずれる。また、投影面９８の右半分に表示されるオブジェクト９６ｆを手前に移動させると、投影面９８においては右方向へ表示位置がずれる。そして、投影面９８におけるオブジェクトの表示位置のずれは、オブジェクトの表示位置が投影面９８の中心からずれるほど大きくなる。したがって、図４〜図６に示したような、入力領域とオブジェクトの表示領域が合致したメニュー画面９０を生成するためには、奥行き方向の移動に伴う表示位置のずれを考慮して、表示位置が入力領域に合致するように、投影面９８に平行な平面内でオブジェクトを移動させる必要がある。なお、図８においては、オブジェクト９６ｅを投影面９８よりも奥の領域で手前に移動させているが、別の例においては、オブジェクト９６ｅを投影面９８よりも手前に移動させてもよい。
【００２５】
本実施の形態においては、選択候補となっていない機能に対応するオブジェクトの表示幅を狭くするので、さらに、選択候補となっていない機能に対応するオブジェクトも、オブジェクト間の距離が狭くなるように投影面９８に平行な平面内で移動させる必要がある。図１０は、図５（ａ）に示したメニュー画面９０を生成するために必要なオブジェクト９６の移動を示す。図１１は、図６（ａ）に示したメニュー画面９０を生成するために必要なオブジェクト９６の移動を示す。位置調整部４４は、投影面９８において、図５（ｂ）又は図６（ｂ）に示したマップ９３のそれぞれの入力領域９４に対応する位置にオブジェクト９２が表示されるように、三次元空間におけるオブジェクト９６の位置を算出し、算出された位置にオブジェクト９６を移動させる。
【００２６】
図１２は、投影面９８におけるオブジェクトの表示位置から、三次元空間におけるオブジェクトの配置位置を算出する方法を説明するための図である。視点位置９７から投影面９８までの距離をａ、投影面９８からオブジェクトの配置位置までの奥行き方向の距離をｂ、投影面９８においてオブジェクトを表示すべき位置の座標をｘ、三次元空間におけるオブジェクトの配置位置の座標をｙとすると、
ａ：（ａ＋ｂ）＝ｘ：ｙ
であるから、ｙは、
ｙ＝ｘ（ａ＋ｂ）／ａ＝ｘ（１＋ｂ／ａ）
により算出される。位置調整部４４は、この式を用いて、マップ９３のそれぞれの入力領域９４の位置に合わせて、オブジェクト９６の配置位置を算出することができる。
【００２７】
このように、本実施の形態によれば、画面においてオブジェクトを表示すべき位置に合わせて、三次元空間におけるオブジェクトの配置位置を調整することにより、透視投影によりオブジェクトを描画する場合であっても、表示すべき位置にオブジェクトを表示させることができる。また、透視投影により描画された遠近感のある三次元ユーザインタフェースにおいて、オブジェクトの表示位置と入力位置との対応を正しく調整し、オブジェクトに対する入力を適切に受け付けることができる。本実施の形態では、投影面に対して斜めに重なるように配置された複数の板状のオブジェクトを表示しているが、オブジェクトの左側の表示位置が入力領域の左側に合致するようにオブジェクトの配置位置を移動しても、オブジェクトの右側は他のオブジェクトに重なって見えないので、配置位置の移動による違和感を軽減することができる。
【００２８】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００２９】
実施の形態では、描画部４３がオブジェクトを描画する際に、位置調整部４４がオブジェクトの配置位置を調整する例について説明したが、別の例においては、オブジェクトの配置位置は予め上記の数式を用いて調整され、データ保持部６０などに格納されていてもよい。更に別の例においては、配置位置が調整されたオブジェクトの移動経過をアニメーションデータや動画データなどとしてデータ保持部６０に格納しておき、描画部４３は、プレイヤーの入力により選択候補が選択されたときに、アニメーションデータ又は動画データをデータ保持部６０から読み出して再生してもよい。
【符号の説明】
【００３０】
１０  ゲーム装置、２０  入力装置、４０  制御部、４１  メニュー制御部、４２  選択部、４３  描画部、４４  位置調整部、６０  データ保持部、６８  表示装置、６９  タッチパネル、７０  背面タッチパネル。
【図１】
0005773818.tif 000002
【図２】
0005773818.tif 000003
【図３】
0005773818.tif 000004
【図４】
0005773818.tif 000005
【図５】
0005773818.tif 000006
【図６】
0005773818.tif 000007
【図７】
0005773818.tif 000008
【図８】
0005773818.tif 000009
【図９】
0005773818.tif 000010
【図１０】
0005773818.tif 000011
【図１１】
0005773818.tif 000012
【図１２】
0005773818.tif 000013