(57)【特許請求の範囲】
【請求項１】
表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
３次元の仮想空間を仮想カメラで撮像することによって奥行き方向の位置を示す深度値が画素毎または所定領域毎に設定された画像を生成する画像生成手段と、
位置指示手段を用いてユーザによって指示された前記画像上の指示位置における前記画像の深度値を取得する取得手段と、
前記取得手段によって取得された前記画像の深度値に基づいて、前記仮想カメラから前記仮想空間を見た場合の前記仮想空間における奥行き方向の位置を算出する算出手段と、
前記算出手段によって算出された奥行き方向の位置にユーザによって指示された位置を示す指示オブジェクトを配置するオブジェクト配置手段と、
前記オブジェクト配置手段によって配置された指示オブジェクトを含む仮想空間を撮像した画像を表示領域に表示させる表示制御手段として、前記コンピュータを機能させ、
前記オブジェクト配置手段によって前記指示オブジェクトが配置される前は当該指示オブジェクトは前記算出手段によって算出された位置に存在せず、前記オブジェクト配置手段によって前記指示オブジェクトが配置されると、前記算出手段によって算出された位置に前記指示オブジェクトが現れ、
前記算出手段は、前記画像上の指示位置と、当該指示位置における前記画像の深度値とに基づいて、前記仮想空間における３次元指示位置を算出し、
前記仮想空間には表示対象となる第２オブジェクトが配置され、
前記画像生成手段は、前記第２オブジェクトを含む仮想空間を仮想カメラで撮像することによって画像を生成し、
前記オブジェクト配置手段は、前記第２オブジェクトが表示された領域内に前記指示位置が存在する場合、前記３次元指示位置に基づいて前記指示オブジェクトの姿勢を決定し、当該決定した姿勢で前記仮想空間に前記指示オブジェクトを配置する、表示制御プログラム。
【請求項２】
前記算出手段は、前記画像上の指示位置に基づいて前記仮想カメラから前記仮想空間を見た場合の上下左右方向の前記仮想空間における位置を算出し、前記画像の深度値に基づいて前記仮想カメラから前記仮想空間を見た場合の奥行き方向の前記仮想空間における位置を算出することにより、前記仮想空間における３次元指示位置を算出する、請求項１に記載の表示制御プログラム。
【請求項３】
前記第２オブジェクトは複数の部位によって構成され、
前記指示位置に基づいて、前記第２オブジェクトの複数の部位のうちの指示された部位を決定する部位決定手段として、前記コンピュータを更に機能させ、
前記オブジェクト配置手段は、前記指示された部位に応じて前記指示オブジェクトの姿勢を決定し、当該決定した姿勢で前記仮想空間に前記指示オブジェクトを配置する、請求項１又は２に記載の表示制御プログラム。
【請求項４】
前記オブジェクト配置手段は、前記３次元指示位置における前記指示された部位の法線に応じて、前記指示オブジェクトの姿勢を決定する、請求項３に記載の表示制御プログラム。
【請求項５】
前記指示された部位を基準とした前記３次元指示位置の相対的な位置に応じて、前記指示オブジェクトの回転角を設定する角度設定手段として、前記コンピュータを更に機能させ、
前記オブジェクト配置手段は、前記指示オブジェクトを前記法線周りに前記回転角で回転させて、前記仮想空間に前記指示オブジェクトを配置する、請求項４に記載の表示制御プログラム。
【請求項６】
前記表示制御手段は、前記第２オブジェクトが表示された領域内に前記指示位置が存在するか否かに応じて、前記指示オブジェクトを異なる表示態様で表示させる、請求項１から５の何れかに記載の表示制御プログラム。
【請求項７】
前記算出手段は、
前記第２オブジェクトが表示された領域内に前記指示位置が存在する場合、前記指示位置と当該指示位置における前記画像の深度値とに基づいて、前記仮想空間における３次元指示位置を算出し、
前記第２オブジェクトが表示された領域外に前記指示位置が存在する場合、前記指示位置と一定の深度値とに基づいて、前記仮想空間における３次元指示位置を算出する、請求項１から６の何れかに記載の表示制御プログラム。
【請求項８】
表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
３次元の仮想空間を仮想カメラで撮像することによって奥行き方向の位置を示す深度値が画素毎または所定領域毎に設定された画像を生成する画像生成手段と、
位置指示手段を用いてユーザによって指示された前記画像上の指示位置における前記画像の深度値を取得する取得手段と、
前記取得手段によって取得された前記画像の深度値に基づいて、前記仮想カメラから前記仮想空間を見た場合の前記仮想空間における奥行き方向の位置を算出する算出手段と、
前記算出手段によって算出された奥行き方向の位置にオブジェクトを配置するオブジェクト配置手段と、
前記オブジェクト配置手段によって配置されたオブジェクトを含む仮想空間を撮像した画像を表示領域に表示させる表示制御手段として、前記コンピュータを機能させ、
前記オブジェクト配置手段によって前記オブジェクトが配置される前は当該オブジェクトは前記算出手段によって算出された位置に存在せず、前記オブジェクト配置手段によって前記オブジェクトが配置されると、前記算出手段によって算出された位置に前記オブジェクトが現れ、
前記算出手段は、前記画像上の指示位置と、当該指示位置における前記画像の深度値とに基づいて、前記仮想空間における３次元指示位置を算出し、
前記オブジェクト配置手段は、前記算出手段によって算出された３次元指示位置に前記オブジェクトを配置し、
前記表示領域は、立体視表示可能な表示領域であり、
前記画像生成手段は、前記仮想空間を仮想ステレオカメラで撮像することによって左目用画像と右目用画像とを生成し、
前記取得手段は、
前記左目用もしくは右目用画像上の前記指示位置における深度値、又は、
前記仮想ステレオカメラと同じ撮像方向の第３の仮想カメラで前記仮想空間を撮像することによって取得される第３画像上の前記指示位置における深度値を取得し、
前記表示制御手段は、前記オブジェクト配置手段によって配置されたオブジェクトを含む仮想空間を撮像した画像を前記表示領域に立体表示させる、表示制御プログラム。
【請求項９】
前記第３の仮想カメラは、前記仮想ステレオカメラの左右の仮想カメラの間に設定され、
前記取得手段は、前記第３画像上の指示位置における前記第３画像の深度値を取得し、
前記算出手段は、前記第３画像上の指示位置と前記第３画像の深度値とに基づいて、前記３次元指示位置を算出する、請求項８に記載の表示制御プログラム。
【請求項１０】
前記第３の仮想カメラは、前記仮想ステレオカメラの左右の仮想カメラの中間に設定される、請求項９に記載の表示制御プログラム。
【請求項１１】
３次元の仮想空間を仮想カメラで撮像することによって奥行き方向の位置を示す深度値が画素毎または所定領域毎に設定された画像を生成する画像生成手段と、
位置指示手段を用いてユーザによって指示された前記画像上の指示位置における前記画像の深度値を取得する取得手段と、
前記取得手段によって取得された前記画像の深度値に基づいて、前記仮想カメラから前記仮想空間を見た場合の前記仮想空間における奥行き方向の位置を算出する算出手段と、
前記算出手段によって算出された奥行き方向の位置にユーザによって指示された位置を示す指示オブジェクトを配置するオブジェクト配置手段と、
前記オブジェクト配置手段によって配置された指示オブジェクトを含む仮想空間を撮像した画像を表示領域に表示させる表示制御手段とを備え、
前記オブジェクト配置手段によって前記指示オブジェクトが配置される前は当該指示オブジェクトは前記算出手段によって算出された位置に存在せず、前記オブジェクト配置手段によって前記指示オブジェクトが配置されると、前記算出手段によって算出された位置に前記指示オブジェクトが現れ、
前記算出手段は、前記画像上の指示位置と、当該指示位置における前記画像の深度値とに基づいて、前記仮想空間における３次元指示位置を算出し、
前記仮想空間には表示対象となる第２オブジェクトが配置され、
前記画像生成手段は、前記第２オブジェクトを含む仮想空間を仮想カメラで撮像することによって画像を生成し、
前記オブジェクト配置手段は、前記第２オブジェクトが表示された領域内に前記指示位置が存在する場合、前記３次元指示位置に基づいて前記指示オブジェクトの姿勢を決定し、当該決定した姿勢で前記仮想空間に前記指示オブジェクトを配置する、表示制御装置。
【請求項１２】
３次元の仮想空間を仮想カメラで撮像することによって奥行き方向の位置を示す深度値が画素毎または所定領域毎に設定された画像を生成する画像生成手段と、
位置指示手段を用いてユーザによって指示された前記画像上の指示位置における前記画像の深度値を取得する取得手段と、
前記取得手段によって取得された前記画像の深度値に基づいて、前記仮想カメラから前記仮想空間を見た場合の前記仮想空間における奥行き方向の位置を算出する算出手段と、
前記算出手段によって算出された奥行き方向の位置にユーザによって指示された位置を示す指示オブジェクトを配置するオブジェクト配置手段と、
前記オブジェクト配置手段によって配置された指示オブジェクトを含む仮想空間を撮像した画像を表示領域に表示させる表示制御手段とを備え、
前記オブジェクト配置手段によって前記指示オブジェクトが配置される前は当該指示オブジェクトは前記算出手段によって算出された位置に存在せず、前記オブジェクト配置手段によって前記指示オブジェクトが配置されると、前記算出手段によって算出された位置に前記指示オブジェクトが現れ、
前記算出手段は、前記画像上の指示位置と、当該指示位置における前記画像の深度値とに基づいて、前記仮想空間における３次元指示位置を算出し、
前記仮想空間には表示対象となる第２オブジェクトが配置され、
前記画像生成手段は、前記第２オブジェクトを含む仮想空間を仮想カメラで撮像することによって画像を生成し、
前記オブジェクト配置手段は、前記第２オブジェクトが表示された領域内に前記指示位置が存在する場合、前記３次元指示位置に基づいて前記指示オブジェクトの姿勢を決定し、当該決定した姿勢で前記仮想空間に前記指示オブジェクトを配置する、表示制御システム。
【請求項１３】
３次元の仮想空間を仮想カメラで撮像することによって奥行き方向の位置を示す深度値が画素毎または所定領域毎に設定された画像を生成する画像生成ステップと、
位置指示手段を用いてユーザによって指示された前記画像上の指示位置における前記画像の深度値を取得する取得ステップと、
前記取得ステップで取得された前記画像の深度値に基づいて、前記仮想カメラから前記仮想空間を見た場合の前記仮想空間における奥行き方向の位置を算出する算出ステップと、
前記算出ステップで算出された奥行き方向の位置にユーザによって指示された位置を示す指示オブジェクトを配置するオブジェクト配置ステップと、
前記オブジェクト配置ステップで配置された指示オブジェクトを含む仮想空間を撮像した画像を表示領域に表示させる表示制御ステップとを含み、
前記オブジェクト配置ステップにおいて前記指示オブジェクトが配置される前は当該指示オブジェクトは前記算出ステップで算出された位置に存在せず、前記オブジェクト配置ステップにおいて前記指示オブジェクトが配置されると、前記算出ステップで算出された位置に前記指示オブジェクトが現れ、
前記算出ステップでは、前記画像上の指示位置と、当該指示位置における前記画像の深度値とに基づいて、前記仮想空間における３次元指示位置を算出し、
前記仮想空間には表示対象となる第２オブジェクトが配置され、
前記画像生成ステップでは、前記第２オブジェクトを含む仮想空間を仮想カメラで撮像することによって画像を生成し、
前記オブジェクト配置ステップは、前記第２オブジェクトが表示された領域内に前記指示位置が存在する場合、前記３次元指示位置に基づいて前記指示オブジェクトの姿勢を決定し、当該決定した姿勢で前記仮想空間に前記指示オブジェクトを配置する、表示制御方法。
【請求項１４】
表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
３次元の仮想空間を仮想カメラで撮像することによって深度値が設定された画像を生成する画像生成手段と、
位置指示手段を用いてユーザによって指示された前記画像上の指示位置における前記画像の深度値を取得する取得手段と、
前記画像上の指示位置と、当該指示位置における前記画像の深度値とに基づいて、前記仮想空間における３次元指示位置を算出する算出手段と、
前記算出手段によって算出された３次元指示位置にユーザによって指示された位置を示す指示オブジェクトを設定するオブジェクト設定手段と、
前記オブジェクト設定手段によって設定されたオブジェクトを含む仮想空間を撮像した画像を表示領域に表示させる表示制御手段として、前記コンピュータを機能させ、
前記仮想空間には複数の部位によって構成された第２オブジェクトが配置され、当該第２オブジェクトの各部位は、点又は線分によって構成されるボーンによって構成され、
前記画像生成手段は、前記第２オブジェクトを含む仮想空間を仮想カメラで撮像することによって画像を生成し、
前記オブジェクト設定手段は、前記３次元指示位置と前記ボーンとの距離が最短となる前記ボーン上の点から、前記３次元指示位置に向かう法線ベクトルを算出し、当該法線ベクトルに応じて前記指示オブジェクトの姿勢を決定し、当該決定した姿勢で前記仮想空間に前記指示オブジェクトを設定する、表示制御プログラム。
【請求項１５】
表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
３次元の仮想空間を仮想カメラで撮像することによって深度値が設定された画像を生成する画像生成手段と、
位置指示手段を用いてユーザによって指示された前記画像上の指示位置における前記画像の深度値を取得する取得手段と、
前記画像上の指示位置と、当該指示位置における前記画像の深度値とに基づいて、前記仮想空間における３次元指示位置を算出する算出手段と、
前記算出手段によって算出された３次元指示位置にオブジェクトを設定するオブジェクト設定手段と、
前記オブジェクト設定手段によって設定されたオブジェクトを含む仮想空間を撮像した画像を表示領域に表示させる表示制御手段として、前記コンピュータを機能させ、
前記位置指示手段は、前記表示領域とは異なる第２の表示領域上に設けられ、当該第２の表示領域上への接触位置を検出し、
前記取得手段は、前記位置指示手段が検出した接触位置に対応する前記第２の表示領域に表示された画像上の指示位置における深度値を取得し、
前記表示制御手段は、前記オブジェクト設定手段によって設定されたオブジェクトを含む仮想空間を撮像した画像を前記表示領域に表示させるとともに、前記仮想空間を撮像した画像を前記第２の表示領域に表示させる、表示制御プログラム。
【請求項１６】
表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
３次元の仮想空間を仮想カメラで撮像することによって深度値が設定された画像を生成する画像生成手段と、
位置指示手段を用いてユーザによって指示された前記画像上の指示位置における前記画像の深度値を取得する取得手段と、
前記画像上の指示位置と、当該指示位置における前記画像の深度値とに基づいて、前記仮想空間における３次元指示位置を算出する算出手段と、
前記算出手段によって算出された３次元指示位置にオブジェクトを設定するオブジェクト設定手段と、
前記オブジェクト設定手段によって設定されたオブジェクトを含む仮想空間を撮像した画像を表示領域に表示させる表示制御手段として、前記コンピュータを機能させ、
前記表示領域は、立体視表示可能な表示領域であり、
前記画像生成手段は、前記仮想空間を仮想ステレオカメラで撮像することによって左目用画像と右目用画像とを生成し、
前記取得手段は、
前記左目用もしくは右目用画像上の前記指示位置における深度値、又は、
前記仮想ステレオカメラと同じ撮像方向の第３の仮想カメラで前記仮想空間を撮像することによって取得される第３画像上の前記指示位置における深度値を取得し、
前記表示制御手段は、前記オブジェクト設定手段によって設定されたオブジェクトを含む仮想空間を撮像した画像を前記表示領域に立体表示させ、
前記位置指示手段は、前記表示領域とは異なる第２の表示領域上に設けられ、当該第２の表示領域上への接触位置を検出し、
前記仮想ステレオカメラと同じ撮像方向の第３の仮想カメラで前記仮想空間を撮像することによって取得される第３画像を生成する第３画像生成手段として、前記コンピュータを更に機能させ、
前記取得手段は、前記位置指示手段が検出した接触位置に対応する前記第３画像上の指示位置における深度値を取得し、
前記表示制御手段は、前記画像生成手段が生成した左目用画像と右目用画像とを前記表示領域に表示させるとともに、前記第３画像生成手段が生成した前記第３画像を前記第２の表示領域に表示させる、表示制御プログラム。
【請求項１７】
３次元の仮想空間を仮想カメラで撮像することによって奥行き方向の位置を示す深度値が画素毎または所定領域毎に設定された画像を生成する画像生成手段と、
位置指示手段を用いてユーザによって指示された前記画像上の指示位置における前記画像の深度値を取得する取得手段と、
前記取得手段によって取得された前記画像の深度値に基づいて、前記仮想カメラから前記仮想空間を見た場合の前記仮想空間における奥行き方向の位置を算出する算出手段と、
前記算出手段によって算出された奥行き方向の位置にオブジェクトを配置するオブジェクト配置手段と、
前記オブジェクト配置手段によって配置されたオブジェクトを含む仮想空間を撮像した画像を表示領域に表示させる表示制御手段とを備え、
前記オブジェクト配置手段によって前記オブジェクトが配置される前は当該オブジェクトは前記算出手段によって算出された位置に存在せず、前記オブジェクト配置手段によって前記オブジェクトが配置されると、前記算出手段によって算出された位置に前記オブジェクトが現れ、
前記算出手段は、前記画像上の指示位置と、当該指示位置における前記画像の深度値とに基づいて、前記仮想空間における３次元指示位置を算出し、
前記オブジェクト配置手段は、前記算出手段によって算出された３次元指示位置に前記オブジェクトを配置し、
前記表示領域は、立体視表示可能な表示領域であり、
前記画像生成手段は、前記仮想空間を仮想ステレオカメラで撮像することによって左目用画像と右目用画像とを生成し、
前記取得手段は、
前記左目用もしくは右目用画像上の前記指示位置における深度値、又は、
前記仮想ステレオカメラと同じ撮像方向の第３の仮想カメラで前記仮想空間を撮像することによって取得される第３画像上の前記指示位置における深度値を取得し、
前記表示制御手段は、前記オブジェクト配置手段によって配置されたオブジェクトを含む仮想空間を撮像した画像を前記表示領域に立体表示させる、表示制御装置。
【請求項１８】
３次元の仮想空間を仮想カメラで撮像することによって奥行き方向の位置を示す深度値が画素毎または所定領域毎に設定された画像を生成する画像生成手段と、
位置指示手段を用いてユーザによって指示された前記画像上の指示位置における前記画像の深度値を取得する取得手段と、
前記取得手段によって取得された前記画像の深度値に基づいて、前記仮想カメラから前記仮想空間を見た場合の前記仮想空間における奥行き方向の位置を算出する算出手段と、
前記算出手段によって算出された奥行き方向の位置にオブジェクトを配置するオブジェクト配置手段と、
前記オブジェクト配置手段によって配置されたオブジェクトを含む仮想空間を撮像した画像を表示領域に表示させる表示制御手段とを備え、
前記オブジェクト配置手段によって前記オブジェクトが配置される前は当該オブジェクトは前記算出手段によって算出された位置に存在せず、前記オブジェクト配置手段によって前記オブジェクトが配置されると、前記算出手段によって算出された位置に前記オブジェクトが現れ、
前記算出手段は、前記画像上の指示位置と、当該指示位置における前記画像の深度値とに基づいて、前記仮想空間における３次元指示位置を算出し、
前記オブジェクト配置手段は、前記算出手段によって算出された３次元指示位置に前記オブジェクトを配置し、
前記表示領域は、立体視表示可能な表示領域であり、
前記画像生成手段は、前記仮想空間を仮想ステレオカメラで撮像することによって左目用画像と右目用画像とを生成し、
前記取得手段は、
前記左目用もしくは右目用画像上の前記指示位置における深度値、又は、
前記仮想ステレオカメラと同じ撮像方向の第３の仮想カメラで前記仮想空間を撮像することによって取得される第３画像上の前記指示位置における深度値を取得し、
前記表示制御手段は、前記オブジェクト配置手段によって配置されたオブジェクトを含む仮想空間を撮像した画像を前記表示領域に立体表示させる、表示制御システム。
【請求項１９】
３次元の仮想空間を仮想カメラで撮像することによって奥行き方向の位置を示す深度値が画素毎または所定領域毎に設定された画像を生成する画像生成ステップと、
位置指示手段を用いてユーザによって指示された前記画像上の指示位置における前記画像の深度値を取得する取得ステップと、
前記取得ステップで取得された前記画像の深度値に基づいて、前記仮想カメラから前記仮想空間を見た場合の前記仮想空間における奥行き方向の位置を算出する算出ステップと、
前記算出ステップで算出された奥行き方向の位置にオブジェクトを配置するオブジェクト配置ステップと、
前記オブジェクト配置ステップで配置されたオブジェクトを含む仮想空間を撮像した画像を表示領域に表示させる表示制御ステップとを含み、
前記オブジェクト配置ステップにおいて前記オブジェクトが配置される前は当該オブジェクトは前記算出ステップで算出された位置に存在せず、前記オブジェクト配置ステップにおいて前記オブジェクトが配置されると、前記算出ステップで算出された位置に前記オブジェクトが現れ、
前記算出ステップでは、前記画像上の指示位置と、当該指示位置における前記画像の深度値とに基づいて、前記仮想空間における３次元指示位置を算出し、
前記オブジェクト配置ステップでは、前記算出ステップで算出された３次元指示位置に前記オブジェクトを配置し、
前記表示領域は、立体視表示可能な表示領域であり、
前記画像生成ステップでは、前記仮想空間を仮想ステレオカメラで撮像することによって左目用画像と右目用画像とを生成し、
前記取得ステップでは、
前記左目用もしくは右目用画像上の前記指示位置における深度値、又は、
前記仮想ステレオカメラと同じ撮像方向の第３の仮想カメラで前記仮想空間を撮像することによって取得される第３画像上の前記指示位置における深度値を取得し、
前記表示制御ステップでは、前記オブジェクト配置ステップで配置されたオブジェクトを含む仮想空間を撮像した画像を前記表示領域に立体表示させる、表示制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザによって指示された位置にオブジェクトを表示する表示制御プログラム、表示制御装置、表示制御システム、および、表示制御方法に関する。
【背景技術】
【０００２】
従来、画面上に配設されたタッチパネルがタッチ位置を検出し、当該タッチ位置に基づいて、指示された仮想空間の位置を検出するゲーム装置が存在する。例えば、特許文献１に記載の装置では、画面上のタッチパネルが検出したタッチ位置に対応する仮想空間の平面上の位置から仮想カメラの視線方向に延伸する直線を求める。そして、算出した直線と交差または接触する仮想空間内のキャラクタがタッチされたキャラクタとして決定され、当該直線との交点がユーザによって指示された仮想空間における位置として決定される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４３５８１８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載のような方法でユーザによって指示された位置に対応する仮想空間の位置を算出し、当該仮想空間の位置にオブジェクトを表示するためには、複雑な計算をする必要がある。すなわち、上述のような幾何学的な方法では、ユーザによって指示された位置に対応する仮想空間の位置を算出するためには、仮想空間における直線を算出して当該直線と仮想空間のモデルとの交点を算出する必要がある。このため、計算が複雑になり、装置の処理負荷が増大することがある。
【０００５】
それ故、本発明の目的は、複雑な計算をする必要がなく容易にユーザによって指示された位置に対応した仮想空間の位置にオブジェクトを表示することが可能な表示制御技術を提供することである。
【課題を解決するための手段】
【０００６】
本発明は、上記の課題を解決するために、以下の構成を採用した。
【０００７】
本発明は、表示制御装置のコンピュータにおいて実行される表示制御プログラムである。表示制御プログラムは、画像生成手段と、取得手段と、算出手段と、オブジェクト設定手段と、表示制御手段として、上記コンピュータを機能させる。画像生成手段は、３次元の仮想空間を仮想カメラで撮像することによって深度値が設定された画像を生成する。取得手段は、位置指示手段を用いてユーザによって指示された上記画像上の指示位置における上記画像の深度値を取得する。算出手段は、上記取得手段によって取得された上記画像の深度値に基づいて、上記仮想カメラから仮想空間を見た場合の上記仮想空間における奥行き方向の位置を算出する。オブジェクト設定手段は、上記算出手段によって算出された奥行き方向の位置にオブジェクトを設定する。表示制御手段は、上記オブジェクト設定手段によって設定されたオブジェクトを含む仮想空間を撮像した画像を表示領域に表示させる。
【０００８】
上記によれば、画像生成手段は、仮想空間を仮想カメラで撮像することによって得られる画像を生成する。生成された画像には深度値が設定されている。取得手段は、ユーザが
位置指示手段を用いて指示した画像上の指示位置における深度値を取得する。取得した画像上の深度値に基づいて、仮想空間における奥行き方向の位置が算出される。そして、算出された奥行き方向の位置にオブジェクトを設定し、表示領域に当該オブジェクトを表示することができる。例えば、ユーザは、タッチパネルやタッチパッド等の位置指示手段を用いて位置を指示する。そして、画像の深度値を用いて仮想空間における奥行き方向の位置を算出し、当該奥行き方向の位置に上記オブジェクトを設定することができる。これにより、位置指示手段を用いて指示した２次元平面上の位置に対応した３次元仮想空間の奥行き方向の位置を、複雑な計算を要することなく算出することができ、当該３次元仮想空間の位置にオブジェクトを設定することができる。
【０００９】
また、本発明の他の構成では、上記算出手段は、上記画像上の指示位置と、当該指示位置における上記画像の深度値とに基づいて、上記仮想空間における３次元指示位置を算出してもよい。上記オブジェクト設定手段は、上記算出手段によって算出された３次元指示位置に上記オブジェクトを設定する。
【００１０】
上記によれば、画像上の指示位置と深度値とに基づいて、仮想空間における３次元指示位置を算出することができ、ユーザが位置指示手段を用いて指示した位置に対応した仮想空間における３次元位置を容易に算出することができる。
【００１１】
また、本発明の他の構成では、上記算出手段は、上記画像上の指示位置に基づいて上記仮想カメラから上記仮想空間を見た場合の上下左右方向の上記仮想空間における位置を算出し、上記画像の深度値に基づいて上記仮想カメラから上記仮想空間を見た場合の奥行き方向の上記仮想空間における位置を算出してもよい。これにより、上記算出手段は、上記仮想空間における３次元指示位置を算出する。
【００１２】
上記によれば、例えば、仮想カメラの撮像方向にＺ軸、撮像方向に対して右方向にＸ軸、撮像方向に対して上方向にＹ軸として、仮想カメラの座標系を設定した場合に、ＸＹＺ座標値を算出することができる。具体的には、指示位置に基づいて、カメラ座標系におけるＸＹ座標値を算出することができ、深度値に基づいてカメラ座標系におけるＺ座標値を算出することができる。
【００１３】
また、本発明の他の構成では、上記オブジェクトは、ユーザによって指示された位置を示す指示オブジェクトであってもよい。
【００１４】
上記によれば、ユーザは、自身が指示した位置に対応する仮想空間の位置を容易に認識することができる。
【００１５】
また、本発明の他の構成では、上記仮想空間には表示対象となる第２オブジェクトが配置されてもよい。この場合において、上記画像生成手段は、上記第２オブジェクトを含む仮想空間を仮想カメラで撮像することによって画像を生成する。上記オブジェクト設定手段は、上記第２オブジェクトが表示された領域内に上記指示位置が存在する場合、上記３次元指示位置に基づいて上記指示オブジェクトの姿勢を決定し、当該決定した姿勢で上記仮想空間に上記指示オブジェクトを設定する。
【００１６】
上記によれば、仮想空間には第２オブジェクトが配置される。当該第２オブジェクトの表示領域内に指示位置が存在する場合において、上記３次元指示位置に基づいて指示オブジェクトの姿勢を決定することができる。例えば、上記３次元指示位置が第２オブジェクトの表示領域のうちのどの位置に存在するかに応じて、上記指示オブジェクトの仮想空間における姿勢を決定することができる。これにより、例えば、第２オブジェクトの形状と指示位置とに応じて指示オブジェクトの姿勢を変化させることができる。
【００１７】
また、本発明の他の構成では、上記第２オブジェクトは複数の部位によって構成されてもよい。この場合において、上記表示制御プログラムは、上記指示位置に基づいて、上記第２オブジェクトの複数の部位のうちの指示された部位を決定する部位決定手段として、上記コンピュータを更に機能させる。上記オブジェクト設定手段は、上記指示された部位に応じて上記指示オブジェクトの姿勢を決定し、当該決定した姿勢で上記仮想空間に上記指示オブジェクトを設定する。
【００１８】
上記によれば、第２オブジェクトの複数の部位のうち、指示された部位に基づいて指示オブジェクトの姿勢を変化させることができる。
【００１９】
また、本発明の他の構成では、上記オブジェクト設定手段は、上記３次元指示位置における上記指示された部位の法線に応じて、上記指示オブジェクトの姿勢を決定してもよい。
【００２０】
上記によれば、指示された部位の上記３次元指示位置における法線に応じて、指示オブジェクトの姿勢を決定することができる。例えば、法線に対して垂直になるように指示オブジェクトを設定した場合、第２オブジェクトの部位の表面に沿うようにして指示オブジェクトを表示させることができる。これにより、ユーザは、例えば第２オブジェクトを撫でるような視覚的感覚を得ることができる。
【００２１】
また、本発明の他の構成では、上記第２オブジェクトの各部位は、点又は線分によって構成されるボーンによって構成されてもよい。この場合において、上記オブジェクト設定手段は、上記３次元指示位置と上記ボーンとの距離が最短となる上記ボーン上の点から、上記３次元指示位置に向かう法線ベクトルを算出し、当該法線ベクトルに応じて上記指示オブジェクトの姿勢を決定する。
【００２２】
上記によれば、簡単な計算で指示された部位の法線を算出することができ、当該法線に応じて指示オブジェクトの姿勢を決定することができる。
【００２３】
また、本発明の他の構成では、上記表示制御プログラムは、上記指示された部位を基準とした上記３次元指示位置の相対的な位置に応じて、上記指示オブジェクトの回転角を設定する角度設定手段として、上記コンピュータを更に機能させてもよい。上記オブジェクト設定手段は、上記指示オブジェクトを上記法線周りに上記回転角で回転させて、上記仮想空間に上記指示オブジェクトを設定する。
【００２４】
上記によれば、指示オブジェクトを法線周りに回転させることができる。例えば、指示された部位の領域のうち、上側の領域が指示されている場合と下側の領域が指示されている場合とで指示オブジェクトを反転させることができる。これにより、ユーザに対して第２オブジェクトを撫でるような感覚を与えることができる。
【００２５】
また、本発明の他の構成では、上記表示制御手段は、上記第２オブジェクトが表示された領域内に上記指示位置が存在するか否かに応じて、上記指示オブジェクトを異なる表示態様で表示させてもよい。
【００２６】
上記によれば、第２オブジェクトが表示された領域に指示位置が存在するか否かに応じて指示オブジェクトの表示態様を異なるようにすることができる。例えば、第２オブジェクトが表示された領域に指示位置が存在しない場合、指示オブジェクトの形状を矢印形状に変化させ、第２オブジェクトが表示された領域に指示位置が存在する場合、指示オブジェクトの形状を手の形状に変化させることができる。これにより、ユーザは第２オブジェ
クトを指示しているか否かを容易に判別することができる。
【００２７】
また、本発明の他の構成では、上記算出手段は、上記第２オブジェクトが表示された領域内に上記指示位置が存在する場合、上記指示位置と当該指示位置における上記画像の深度値とに基づいて、上記仮想空間における３次元指示位置を算出してもよい。また、上記算出手段は、上記第２オブジェクトが表示された領域外に上記指示位置が存在する場合、上記指示位置と一定の深度値とに基づいて、上記仮想空間における３次元指示位置を算出する。
【００２８】
上記によれば、上記指示位置が第２オブジェクトの表示領域に存在する場合には、指示位置における上記画像の深度値を用いて３次元指示位置を算出し、上記指示位置が第２オブジェクトの表示領域に存在しない場合には、一定の深度値を用いて３次元指示位置を算出する。これにより、上記指示位置が第２オブジェクトの表示領域に存在する場合には、当該第２オブジェクトの位置（深度方向の位置）に応じて、指示オブジェクトを配置することができる。また、上記指示位置が第２オブジェクトの表示領域に存在しない場合には、画面から一定距離離れた位置に指示オブジェクトを配置することができる。
【００２９】
また、本発明の他の構成では、上記表示領域は、立体視表示可能な表示領域であってもよい。この場合において、上記画像生成手段は、上記仮想空間を仮想ステレオカメラで撮像することによって左目用画像と右目用画像とを生成する。上記取得手段は、上記左目用もしくは右目用画像上の上記指示位置における深度値、又は、上記仮想ステレオカメラと同じ撮像方向の第３の仮想カメラで上記仮想空間を撮像することによって取得される第３画像上の上記指示位置における深度値を取得する。上記表示制御手段は、上記オブジェクト設定手段によって設定されたオブジェクトを含む仮想空間を撮像した画像を上記表示領域に立体表示させる。
【００３０】
上記によれば、仮想空間および上記オブジェクトを立体視表示することができる。上記オブジェクトを立体視表示する場合、仮想空間における上記オブジェクトの位置を正確に求め、当該オブジェクトを仮想空間に配置する必要がある。上記のように深度値を用いた方法では、ユーザによって指示された位置に対応する仮想空間の位置を正確かつ容易に求めることができる。
【００３１】
また、本発明の他の構成では、上記第３の仮想カメラは、上記仮想ステレオカメラの左右の仮想カメラの間に設定されてもよい。上記取得手段は、上記第３画像上の指示位置における上記第３画像の深度値を取得する。上記算出手段は、上記第３画像上の指示位置と上記第３画像の深度値とに基づいて、上記３次元指示位置を算出する。
【００３２】
上記によれば、第３の仮想カメラは、仮想ステレオカメラの左右の仮想カメラの間の位置に設定される。そして、第３の仮想カメラで撮像された画像上の指示位置と当該指示位置における深度値とに基づいて、３次元指示位置が算出され、当該３次元指示位置に上記オブジェクトが配置される。仮想ステレオカメラによって撮像された左右の画像の何れかを用いて３次元指示位置が算出されると、２つの画像には視差があるため、ユーザによって指示された位置に対応する３次元指示位置を正確に求めることができない。しかしながら、仮想ステレオカメラの間に設定された第３の仮想カメラによって撮像された画像を用いて、３次元指示位置を算出することにより、視差による影響を受けずに３次元指示位置を正確に算出することができる。
【００３３】
また、本発明の他の構成では、上記第３の仮想カメラは、上記仮想ステレオカメラの左右の仮想カメラの中間に設定されてもよい。
【００３４】
上記によれば、ユーザによって指示された位置に対応する３次元指示位置を正確に算出することができる。
【００３５】
また、本発明の他の構成では、上記位置指示手段は、上記表示領域とは異なる第２の表示領域上に設けられ、当該第２の表示領域上への接触位置を検出してもよい。上記取得手段は、上記位置指示手段が検出した接触位置に対応する上記第２の表示領域に表示された画像上の指示位置における深度値を取得する。上記表示制御手段は、上記オブジェクト設定手段によって設定されたオブジェクトを含む仮想空間を撮像した画像を上記表示領域に表示させるとともに、上記仮想空間を撮像した画像を上記第２の表示領域に表示させる。
【００３６】
上記によれば、ユーザは第２の表示領域に表示された画像に対して接触することで、当該接触位置に対応する３次元仮想空間の位置にオブジェクトを配置し、当該オブジェクトを上記表示領域に表示させることができる。例えば、上記表示領域が上側に、第２の表示領域が下側に配置されている場合、下側の表示領域に対するタッチ操作を行うことができる。そして、下側の表示領域のタッチ位置に対応した仮想空間の位置にオブジェクトを配置し、上側の表示領域に当該オブジェクトを表示させることができる。
【００３７】
また、本発明の他の構成では、上記位置指示手段は、上記表示領域とは異なる第２の表示領域上に設けられ、当該第２の表示領域上への接触位置を検出してもよい。表示制御プログラムは、上記仮想ステレオカメラと同じ撮像方向の第３の仮想カメラで上記仮想空間を撮像することによって取得される第３画像を生成する第３画像生成手段として、上記コンピュータを更に機能させる。上記取得手段は、上記位置指示手段が検出した接触位置に対応する上記第３画像上の指示位置における深度値を取得する。上記表示制御手段は、上記画像生成手段が生成した左目用画像と右目用画像とを上記表示領域に表示させるとともに、上記第３画像生成手段が生成した上記第３画像を上記第２の表示領域に表示させる。
【００３８】
上記によれば、例えば、上側に上記表示領域を配置し（上側画面）、下側に上記第２の表示領域を配置することにより、第２の表示領域（下側画面）に対するタッチ操作を行うことができる。そして、下側画面に対するタッチ操作を行うことで、当該タッチ位置に対応する３次元仮想空間の位置にオブジェクトを配置して、上側画面に当該オブジェクトを表示させることができる。
【００３９】
また、本発明では、上記各手段を実現した表示制御装置であってもよい。また、本発明では、上記各手段を実現する複数の要素が相互に動作することによって、１つの表示制御システムとして構成されてもよい。当該表示制御システムは、１つの装置によって構成されてもよいし、複数の装置によって構成されてもよい。
【発明の効果】
【００４０】
本発明によれば、複雑な計算をする必要がなく、ユーザによって指示された位置に対応した仮想空間の位置にオブジェクトを表示することができる。
【図面の簡単な説明】
【００４１】
【図１】開状態におけるゲーム装置１０の外観を示す正面図
【図２】閉状態におけるゲーム装置１０の左側面図、正面図、右側面図、および、背面図
【図３】ゲーム装置１０の内部構成を示すブロック図
【図４】本実施形態に係るゲームの実行中において、上側ＬＣＤ２２および下側ＬＣＤ１２の画面に表示されるゲーム画像の一例を示す図
【図５】ユーザが犬オブジェクト５０の背中部分をタッチした様子を示す図
【図６】ゲーム装置１０のＲＡＭ（メインメモリ３２等）のメモリマップを示す図
【図７】本実施形態に係るゲーム処理の詳細を示すメインフローチャート
【図８】カーソル設定処理（ステップＳ１０１）の詳細を示すフローチャート
【図９】犬オブジェクト５０が複数の部位によって構成される様子を示す図
【図１０】後ろ半身の部位１５５の詳細を示す図
【図１１Ａ】タッチされた部位１５５を正面から見た図であり、部位１５５の３次元指示位置Ｐにおける法線ベクトルを示す図
【図１１Ｂ】部位１５５を図１１Ａの矢印方向から見た図であり、部位１５５の３次元指示位置Ｐにおける法線ベクトルを示す図
【図１２】部位１５５がタッチされた場合において、３次元指示位置Ｐが部位１５５の中のどの領域に存在するかによって回転角が定められることを示す図
【図１３】タッチパネル１３がタッチを検出した場合において、犬オブジェクト５０がタッチされなかったときの画面の一例を示す図
【発明を実施するための形態】
【００４２】
（ゲーム装置の構成）
以下、本発明の一実施形態に係るゲーム装置について説明する。図１は、開状態におけるゲーム装置１０の外観を示す正面図である。図２（ａ）は閉状態におけるゲーム装置１０の左側面図であり、図２（ｂ）は閉状態におけるゲーム装置１０の正面図であり、図２（ｃ）は閉状態におけるゲーム装置１０の右側面図であり、図２（ｄ）は閉状態におけるゲーム装置１０の背面図である。ゲーム装置１０は携帯型のゲーム装置であり、図１および図２に示すように折り畳み可能に構成されている。図１は、開いた状態（開状態）におけるゲーム装置１０を示し、図２は、閉じた状態（閉状態）におけるゲーム装置１０を示している。ゲーム装置１０は、撮像部によって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存したりすることが可能である。また、ゲーム装置１０は、交換可能なメモリカード内に記憶され、または、サーバや他のゲーム装置から受信したゲームプログラムを実行可能であり、仮想空間に設定された仮想カメラで撮像した画像などのコンピュータグラフィックス処理により生成された画像を画面に表示したりすることができる。
【００４３】
まず、図１および図２を参照して、ゲーム装置１０の外観構成について説明する。図１および図２に示されるように、ゲーム装置１０は、下側ハウジング１１および上側ハウジング２１を有する。下側ハウジング１１と上側ハウジング２１とは、開閉可能（折り畳み可能）に接続されている。
【００４４】
（下側ハウジングの説明）
まず、下側ハウジング１１の構成について説明する。図１および図２に示すように、下側ハウジング１１には、下側ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）１２、タッチパネル１３、各操作ボタン１４Ａ〜１４Ｌ、アナログスティック１５、ＬＥＤ１６Ａ〜１６Ｂ、挿入口１７、および、マイクロフォン用孔１８が設けられる。以下、これらの詳細について説明する。
【００４５】
図１に示すように、下側ＬＣＤ１２は下側ハウジング１１に収納される。下側ＬＣＤ１２の画素数は、例えば、３２０ｄｏｔ×２４０ｄｏｔ（横×縦）であってもよい。下側ＬＣＤ１２は、後述する上側ＬＣＤ２２とは異なり、画像を（立体視可能ではなく）平面的に表示する表示装置である。なお、本実施形態では表示装置としてＬＣＤを用いているが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置など、他の任意の表示装置を利用してもよい。また、下側ＬＣＤ１２として、任意の解像度の表示装置を利用することができる。
【００４６】
図１に示されるように、ゲーム装置１０は、入力装置として、タッチパネル１３を備え
ている。タッチパネル１３は、下側ＬＣＤ１２の画面上に装着されている。なお、本実施形態では、タッチパネル１３は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、例えば静電容量方式等、任意の方式のタッチパネルを用いることができる。本実施形態では、タッチパネル１３として、下側ＬＣＤ１２の解像度と同解像度（検出精度）のものを利用する。ただし、必ずしもタッチパネル１３の解像度と下側ＬＣＤ１２の解像度が一致している必要はない。また、下側ハウジング１１の上側面には挿入口１７（図１および図２（ｄ）に示す点線）が設けられている。挿入口１７は、タッチパネル１３に対する操作を行うために用いられるタッチペン２８を収納することができる。なお、タッチパネル１３に対する入力は通常タッチペン２８を用いて行われるが、タッチペン２８に限らずユーザの指でタッチパネル１３に対する入力をすることも可能である。
【００４７】
各操作ボタン１４Ａ〜１４Ｌは、所定の入力を行うための入力装置である。図１に示されるように、下側ハウジング１１の内側面（主面）には、各操作ボタン１４Ａ〜１４Ｌのうち、十字ボタン１４Ａ（方向入力ボタン１４Ａ）、ボタン１４Ｂ、ボタン１４Ｃ、ボタン１４Ｄ、ボタン１４Ｅ、電源ボタン１４Ｆ、セレクトボタン１４Ｊ、ＨＯＭＥボタン１４Ｋ、およびスタートボタン１４Ｌが、設けられる。十字ボタン１４Ａは、十字の形状を有しており、上下左右の方向を指示するボタンを有している。ボタン１４Ａ〜１４Ｅ、セレクトボタン１４Ｊ、ＨＯＭＥボタン１４Ｋ、およびスタートボタン１４Ｌには、ゲーム装置１０が実行するプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン１４Ａは選択操作等に用いられ、各操作ボタン１４Ｂ〜１４Ｅは例えば決定操作やキャンセル操作等に用いられる。また、電源ボタン１４Ｆは、ゲーム装置１０の電源をオン／オフするために用いられる。
【００４８】
アナログスティック１５は、方向を指示するデバイスである。アナログスティック１５は、そのキートップが、下側ハウジング１１の内側面に平行にスライドするように構成されている。アナログスティック１５は、ゲーム装置１０が実行するプログラムに応じて機能する。例えば、３次元仮想空間に所定のオブジェクトが登場するゲームがゲーム装置１０によって実行される場合、アナログスティック１５は、当該所定のオブジェクトを３次元仮想空間内で移動させるための入力装置として機能する。この場合において、所定のオブジェクトはアナログスティック１５のキートップがスライドした方向に移動される。なお、アナログスティック１５として、上下左右および斜め方向の任意の方向に所定量だけ傾倒することでアナログ入力を可能としたものを用いても良い。
【００４９】
また、下側ハウジング１１の内側面には、マイクロフォン用孔１８が設けられる。マイクロフォン用孔１８の下部には後述する音声入力装置としてのマイク４２（図３参照）が設けられ、当該マイク４２がゲーム装置１０の外部の音を検出する。
【００５０】
図２（ｂ）および（ｄ）に示されるように、下側ハウジング１１の上側面には、Ｌボタン１４ＧおよびＲボタン１４Ｈが設けられている。Ｌボタン１４ＧおよびＲボタン１４Ｈは、例えば、撮像部のシャッターボタン（撮影指示ボタン）として機能することができる。また、図２（ａ）に示されるように、下側ハウジング１１の左側面には、音量ボタン１４Ｉが設けられる。音量ボタン１４Ｉは、ゲーム装置１０が備えるスピーカの音量を調整するために用いられる。
【００５１】
図２（ａ）に示されるように、下側ハウジング１１の左側面には開閉可能なカバー部１１Ｃが設けられる。このカバー部１１Ｃの内側には、ゲーム装置１０とデータ保存用外部メモリ４５とを電気的に接続するためのコネクタ（図示せず）が設けられる。データ保存用外部メモリ４５は、コネクタに着脱自在に装着される。データ保存用外部メモリ４５は、例えば、ゲーム装置１０によって撮像された画像のデータを記憶（保存）するために用
いられる。
【００５２】
また、図２（ｄ）に示されるように、下側ハウジング１１の上側面には、ゲーム装置１０とゲームプログラムを記録した外部メモリ４４を挿入するための挿入口１１Ｄが設けられ、その挿入口１１Ｄの内部には、外部メモリ４４と電気的に着脱自在に接続するためのコネクタ（図示せず）が設けられる。当該外部メモリ４４がゲーム装置１０に接続されることにより、所定のゲームプログラムが実行される。
【００５３】
また、図１および図２（ｃ）に示されるように、下側ハウジング１１の下側面にはゲーム装置１０の電源のＯＮ／ＯＦＦ状況をユーザに通知する第１ＬＥＤ１６Ａ、下側ハウジング１１の右側面にはゲーム装置１０の無線通信の確立状況をユーザに通知する第２ＬＥＤ１６Ｂが設けられる。ゲーム装置１０は他の機器との間で無線通信を行うことが可能であり、第２ＬＥＤ１６Ｂは、無線通信が確立している場合に点灯する。ゲーム装置１０は、例えば、ＩＥＥＥ８０２．１１ｂ／ｇの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。下側ハウジング１１の右側面には、この無線通信の機能を有効／無効にする無線スイッチ１９が設けられる（図２（ｃ）参照）。
【００５４】
なお、図示は省略するが、下側ハウジング１１には、ゲーム装置１０の電源となる充電式電池が収納され、下側ハウジング１１の側面（例えば、上側面）に設けられた端子を介して当該電池を充電することができる。
【００５５】
（上側ハウジングの説明）
次に、上側ハウジング２１の構成について説明する。図１および図２に示すように、上側ハウジング２１には、上側ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）２２、外側撮像部２３（外側撮像部（左）２３ａおよび外側撮像部（右）２３ｂ）、内側撮像部２４、３Ｄ調整スイッチ２５、および、３Ｄインジケータ２６が設けられる。以下、これらの詳細について説明する。
【００５６】
図１に示すように、上側ＬＣＤ２２は上側ハウジング２１に収納される。上側ＬＣＤ２２の画素数は、例えば、８００ｄｏｔ×２４０ｄｏｔ（横×縦）であってもよい。なお、本実施形態では上側ＬＣＤ２２は液晶表示装置であるとしたが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置などが利用されてもよい。また、上側ＬＣＤ２２として、任意の解像度の表示装置を利用することができる。
【００５７】
上側ＬＣＤ２２は、立体視可能な画像を表示することが可能な表示装置である。また、本実施例では、実質的に同一の表示領域を用いて左目用画像と右目用画像が表示される。具体的には、左目用画像と右目用画像が所定単位で（例えば、１列ずつ）横方向に交互に表示される方式の表示装置である。または、左目用画像と右目用画像とが時間的に交互に表示され、メガネを用いてユーザの左目に左目用画像が右目に右目用画像が視認される方式の表示装置であってもよい。本実施例では、裸眼立体視可能な表示装置である。そして、横方向に交互に表示される左目用画像と右目用画像とを左目および右目のそれぞれに分解して見えるようにレンチキュラー方式やパララックスバリア方式（視差バリア方式）のものが用いられる。本実施形態では、上側ＬＣＤ２２はパララックスバリア方式のものとする。上側ＬＣＤ２２は、右目用画像と左目用画像とを用いて、裸眼で立体視可能な画像（立体画像）を表示する。すなわち、上側ＬＣＤ２２は、視差バリアを用いてユーザの左目に左目用画像をユーザの右目に右目用画像を視認させることにより、ユーザにとって立体感のある立体画像（立体視可能な画像）を表示することができる。また、上側ＬＣＤ２２は、上記視差バリアを無効にすることが可能であり、視差バリアを無効にした場合は、画像を平面的に表示することができる（上述した立体視とは反対の意味で平面視の画像を表示することができる。すなわち、表示された同一の画像が右目にも左目にも見えるよう
な表示モードである）。このように、上側ＬＣＤ２２は、立体視可能な画像を表示する立体表示モードと、画像を平面的に表示する（平面視画像を表示する）平面表示モードとを切り替えることが可能な表示装置である。この表示モードの切り替えは、後述する３Ｄ調整スイッチ２５によって行われる。
【００５８】
外側撮像部２３は、上側ハウジング２１の外側面（上側ＬＣＤ２２が設けられた主面と反対側の背面）２１Ｄに設けられた２つの撮像部（２３ａおよび２３ｂ）の総称である。外側撮像部（左）２３ａと外側撮像部（右）２３ｂの撮像方向は、いずれも当該外側面２１Ｄの外向きの法線方向である。外側撮像部（左）２３ａと外側撮像部（右）２３ｂとは、ゲーム装置１０が実行するプログラムによって、ステレオカメラとして使用することが可能である。外側撮像部（左）２３ａおよび外側撮像部（右）２３ｂは、それぞれ所定の共通の解像度を有する撮像素子（例えば、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等）と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。
【００５９】
内側撮像部２４は、上側ハウジング２１の内側面（主面）２１Ｂに設けられ、当該内側面の内向きの法線方向を撮像方向とする撮像部である。内側撮像部２４は、所定の解像度を有する撮像素子（例えば、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等）と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。
【００６０】
３Ｄ調整スイッチ２５は、スライドスイッチであり、上述のように上側ＬＣＤ２２の表示モードを切り替えるために用いられるスイッチである。また、３Ｄ調整スイッチ２５は、上側ＬＣＤ２２に表示された立体視可能な画像（立体画像）の立体感を調整するために用いられる。３Ｄ調整スイッチ２５のスライダ２５ａは、所定方向（上下方向）の任意の位置にスライド可能であり、当該スライダ２５ａの位置に応じて上側ＬＣＤ２２の表示モードが設定される。また、スライダ２５ａの位置に応じて、立体画像の見え方が調整される。具体的には、スライダ２５ａの位置に応じて、右目用画像および左目用画像の横方向の位置のずれ量が調整される。
【００６１】
３Ｄインジケータ２６は、上側ＬＣＤ２２が立体表示モードか否かを示す。３Ｄインジケータ２６は、ＬＥＤであり、上側ＬＣＤ２２の立体表示モードが有効の場合に点灯する。なお、３Ｄインジケータ２６は、上側ＬＣＤ２２が立体表示モードになっており、かつ、立体視画像を表示するプログラム処理が実行されているときに限り、点灯するようにしてもよい。
【００６２】
また、上側ハウジング２１の内側面には、スピーカ孔２１Ｅが設けられる。後述するスピーカ４３からの音声がこのスピーカ孔２１Ｅから出力される。
【００６３】
（ゲーム装置１０の内部構成）
次に、図３を参照して、ゲーム装置１０の内部の電気的構成について説明する。図３は、ゲーム装置１０の内部構成を示すブロック図である。図３に示すように、ゲーム装置１０は、上述した各部に加えて、情報処理部３１、メインメモリ３２、外部メモリインターフェイス（外部メモリＩ／Ｆ）３３、データ保存用外部メモリＩ／Ｆ３４、データ保存用内部メモリ３５、無線通信モジュール３６、ローカル通信モジュール３７、リアルタイムクロック（ＲＴＣ）３８、加速度センサ３９、電源回路４０、およびインターフェイス回路（Ｉ／Ｆ回路）４１等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング１１（または上側ハウジング２１でもよい）内に収納される。
【００６４】
情報処理部３１は、所定のプログラムを実行するためのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１１、画像処理を行うＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒ
ｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１２等を含む情報処理手段である。情報処理部３１のＣＰＵ３１１は、ゲーム装置１０内のメモリ（例えば外部メモリＩ／Ｆ３３に接続された外部メモリ４４やデータ保存用内部メモリ３５）に記憶されているプログラムを実行することによって、当該プログラムに応じた処理を実行する。なお、情報処理部３１のＣＰＵ３１１によって実行されるプログラムは、他の機器との通信によって他の機器から取得されてもよい。また、情報処理部３１は、ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）３１３を含む。情報処理部３１のＧＰＵ３１２は、情報処理部３１のＣＰＵ３１１からの命令に応じて画像を生成し、ＶＲＡＭ３１３に描画する。そして、情報処理部３１のＧＰＵ３１２は、ＶＲＡＭ３１３に描画された画像を上側ＬＣＤ２２及び／又は下側ＬＣＤ１２に出力し、上側ＬＣＤ２２及び／又は下側ＬＣＤ１２に当該画像が表示される。
【００６５】
情報処理部３１には、メインメモリ３２、外部メモリＩ／Ｆ３３、データ保存用外部メモリＩ／Ｆ３４、および、データ保存用内部メモリ３５が接続される。外部メモリＩ／Ｆ３３は、外部メモリ４４を着脱自在に接続するためのインターフェイスである。また、データ保存用外部メモリＩ／Ｆ３４は、データ保存用外部メモリ４５を着脱自在に接続するためのインターフェイスである。
【００６６】
メインメモリ３２は、情報処理部３１（のＣＰＵ３１１）のワーク領域やバッファ領域として用いられる揮発性の記憶手段である。すなわち、メインメモリ３２は、上記プログラムに基づく処理に用いられる各種データを一時的に記憶したり、外部（外部メモリ４４や他の機器等）から取得されるプログラムを一時的に記憶したりする。本実施形態では、メインメモリ３２として例えばＰＳＲＡＭ（Ｐｓｅｕｄｏ−ＳＲＡＭ）を用いる。
【００６７】
外部メモリ４４は、情報処理部３１によって実行されるプログラムを記憶するための不揮発性の記憶手段である。外部メモリ４４は、例えば読み取り専用の半導体メモリで構成される。外部メモリ４４が外部メモリＩ／Ｆ３３に接続されると、情報処理部３１は外部メモリ４４に記憶されたプログラムを読み込むことができる。情報処理部３１が読み込んだプログラムを実行することにより、所定の処理が行われる。データ保存用外部メモリ４５は、不揮発性の読み書き可能なメモリ（例えばＮＡＮＤ型フラッシュメモリ）で構成され、所定のデータを格納するために用いられる。例えば、データ保存用外部メモリ４５には、外側撮像部２３で撮像された画像や他の機器で撮像された画像が記憶される。データ保存用外部メモリ４５がデータ保存用外部メモリＩ／Ｆ３４に接続されると、情報処理部３１はデータ保存用外部メモリ４５に記憶された画像を読み込み、上側ＬＣＤ２２及び／又は下側ＬＣＤ１２に当該画像を表示することができる。
【００６８】
データ保存用内部メモリ３５は、読み書き可能な不揮発性メモリ（例えばＮＡＮＤ型フラッシュメモリ）で構成され、所定のデータを格納するために用いられる。例えば、データ保存用内部メモリ３５には、無線通信モジュール３６を介した無線通信によってダウンロードされたデータやプログラムが格納される。
【００６９】
無線通信モジュール３６は、例えばＩＥＥＥ８０２．１１ｂ／ｇの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。また、ローカル通信モジュール３７は、所定の通信方式（例えば独自プロトコルによる通信や、赤外線通信）により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール３６およびローカル通信モジュール３７は情報処理部３１に接続される。情報処理部３１は、無線通信モジュール３６を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール３７を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【００７０】
また、情報処理部３１には、加速度センサ３９が接続される。加速度センサ３９は、３
軸（ｘｙｚ軸）方向に沿った直線方向の加速度（直線加速度）の大きさを検出する。加速度センサ３９は、下側ハウジング１１の内部に設けられる。加速度センサ３９は、図１に示すように、下側ハウジング１１の長辺方向をｘ軸、下側ハウジング１１の短辺方向をｙ軸、下側ハウジング１１の内側面（主面）に対して垂直な方向をｚ軸として、各軸の直線加速度の大きさを検出する。なお、加速度センサ３９は、例えば静電容量式の加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ３９は１軸又は２軸方向を検出する加速度センサであってもよい。情報処理部３１は、加速度センサ３９が検出した加速度を示すデータ（加速度データ）を受信して、ゲーム装置１０の姿勢や動きを検出することができる。
【００７１】
また、情報処理部３１には、ＲＴＣ３８および電源回路４０が接続される。ＲＴＣ３８は、時間をカウントして情報処理部３１に出力する。情報処理部３１は、ＲＴＣ３８によって計時された時間に基づき現在時刻（日付）を計算する。電源回路４０は、ゲーム装置１０が有する電源（下側ハウジング１１に収納される上記充電式電池）からの電力を制御し、ゲーム装置１０の各部品に電力を供給する。
【００７２】
また、情報処理部３１には、Ｉ／Ｆ回路４１が接続される。Ｉ／Ｆ回路４１には、マイク４２およびスピーカ４３が接続される。具体的には、Ｉ／Ｆ回路４１には、図示しないアンプを介してスピーカ４３が接続される。マイク４２は、ユーザの音声を検知して音声信号をＩ／Ｆ回路４１に出力する。アンプは、Ｉ／Ｆ回路４１からの音声信号を増幅し、音声をスピーカ４３から出力させる。また、タッチパネル１３はＩ／Ｆ回路４１に接続される。Ｉ／Ｆ回路４１は、マイク４２およびスピーカ４３（アンプ）の制御を行う音声制御回路と、タッチパネルの制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するＡ／Ｄ変換およびＤ／Ａ変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル１３からの信号に基づいて所定の形式のタッチ位置データを生成して情報処理部３１に出力する。タッチ位置データは、タッチパネル１３の入力面において入力が行われた位置の座標を示す。なお、タッチパネル制御回路は、タッチパネル１３からの信号の読み込み、および、タッチ位置データの生成を所定時間に１回の割合で行う。情報処理部３１は、タッチ位置データを取得することにより、タッチパネル１３に対して入力が行われた位置を知ることができる。
【００７３】
操作ボタン１４は、上記各操作ボタン１４Ａ〜１４Ｌからなり、情報処理部３１に接続される。操作ボタン１４から情報処理部３１へは、各操作ボタン１４Ａ〜１４Ｉに対する入力状況（押下されたか否か）を示す操作データが出力される。情報処理部３１は、操作ボタン１４から操作データを取得することによって、操作ボタン１４に対する入力に従った処理を実行する。
【００７４】
下側ＬＣＤ１２および上側ＬＣＤ２２は情報処理部３１に接続される。下側ＬＣＤ１２および上側ＬＣＤ２２は、情報処理部３１（のＧＰＵ３１２）の指示に従って画像を表示する。本実施形態では、情報処理部３１は、上側ＬＣＤ２２に立体画像（立体視可能な画像）を表示させる。
【００７５】
具体的には、情報処理部３１は、上側ＬＣＤ２２のＬＣＤコントローラ（図示せず）と接続され、当該ＬＣＤコントローラに対して視差バリアのＯＮ／ＯＦＦを制御する。上側ＬＣＤ２２の視差バリアがＯＮになっている場合、情報処理部３１のＶＲＡＭ３１３に格納された右目用画像と左目用画像とが、上側ＬＣＤ２２に出力される。より具体的には、ＬＣＤコントローラは、右目用画像について縦方向に１ライン分の画素データを読み出す処理と、左目用画像について縦方向に１ライン分の画素データを読み出す処理とを交互に繰り返すことによって、ＶＲＡＭ３１３から右目用画像と左目用画像とを読み出す。これにより、右目用画像および左目用画像が、画素を縦に１ライン毎に並んだ短冊状画像に分
割され、分割された右目用画像の短冊状画像と左目用画像の短冊状画像とが交互に配置された画像が、上側ＬＣＤ２２の画面に表示される。そして、上側ＬＣＤ２２の視差バリアを介して当該画像がユーザに視認されることによって、ユーザの右目に右目用画像が、ユーザの左目に左目用画像が視認される。以上により、上側ＬＣＤ２２の画面には立体視可能な画像が表示される。
【００７６】
外側撮像部２３および内側撮像部２４は、情報処理部３１に接続される。外側撮像部２３および内側撮像部２４は、情報処理部３１の指示に従って画像を撮像し、撮像した画像データを情報処理部３１に出力する。
【００７７】
３Ｄ調整スイッチ２５は、情報処理部３１に接続される。３Ｄ調整スイッチ２５は、スライダ２５ａの位置に応じた電気信号を情報処理部３１に送信する。
【００７８】
また、３Ｄインジケータ２６は、情報処理部３１に接続される。情報処理部３１は、３Ｄインジケータ２６の点灯を制御する。例えば、情報処理部３１は、上側ＬＣＤ２２が立体表示モードである場合、３Ｄインジケータ２６を点灯させる。
【００７９】
また、情報処理部３１には、角速度センサ４６が接続される。角速度センサ４６は、各軸（ｘ軸、ｙ軸、ｚ軸）周りの角速度を検出する。ゲーム装置１０は、角速度センサ４６が逐次検出する角速度に基づいて、実空間におけるゲーム装置１０の姿勢を算出することができる。具体的には、ゲーム装置１０は、角速度センサ４６によって検出された各軸周りの角速度を時間で積分することによって、各軸周りのゲーム装置１０の回転角を算出することができる。以上がゲーム装置１０の内部構成の説明である。
【００８０】
（ゲームの概要）
次に、図４および図５を参照して、本実施形態に係るゲームの概要について説明する。図４は、本実施形態に係るゲームの実行中において、上側ＬＣＤ２２および下側ＬＣＤ１２の画面に表示されるゲーム画像の一例を示す図である。本実施形態に係るゲームでは、タッチパネル１３（下側ＬＣＤ１２）に対するタッチ操作によって、犬オブジェクト５０を動作させることにより、犬に触れたり犬と遊んだりする感覚をユーザに与える。
【００８１】
図４に示すように、上側ＬＣＤ２２には、犬を模した犬オブジェクト５０が立体表示（立体視可能に表示）された立体画像５０Ａが表示される。犬オブジェクト５０は、３次元の仮想空間（ＸＹＺ座標系（ワールド座標系）で表される空間）に設定された仮想オブジェクトである。立体画像５０Ａは、仮想空間に存在する犬オブジェクト５０を当該仮想空間に設定された仮想ステレオカメラ（左右の仮想カメラ；第１および第２の仮想カメラ）で撮像した画像である。仮想ステレオカメラによって左目用画像および右目用画像が撮像されて上側ＬＣＤ２２に表示されることによって、犬オブジェクト５０が立体表示される。また、上側ＬＣＤ２２には、仮想空間に存在するボールオブジェクト５１が立体表示された立体画像５１Ａが表示される。立体画像５０Ａおよび立体画像５１Ａは、例えば、３２ｂｉｔカラーで表示される。
【００８２】
また、下側ＬＣＤ１２には、犬オブジェクト５０をシルエット表示したシルエット画像５０Ｂが表示される。上記仮想ステレオカメラの中間に設定された仮想カメラ（第３の仮想カメラ）で犬オブジェクト５０を撮像した画像であり、犬オブジェクト５０をシルエット表示（単色で表示）した画像である。なお、ボールオブジェクト５１は下側ＬＣＤ１２には表示されない。すなわち、下側ＬＣＤ１２には、操作対象である犬オブジェクト５０のみが表示され、その他のオブジェクトは表示されない。
【００８３】
下側ＬＣＤ１２に表示されたシルエット画像５０Ｂをユーザがタッチペン２８を用いて
タッチすると、上側ＬＣＤ２２にはタッチされた位置を示すカーソル６０が表示される。すなわち、下側ＬＣＤ１２においてタッチされた位置に対応する上側ＬＣＤ２２上の位置にカーソル６０が表示される。カーソル６０は、人の手を模したオブジェクトである。ユーザが下側ＬＣＤ１２をタッチしたままタッチペン２８を画面上でスライドさせると、当該タッチペン２８の動きに応じてカーソル６０も動作する。そして、タッチペン２８の動作（カーソル６０の動作）に応じて、犬オブジェクト５０が動作する。例えば、図４に示すように、犬オブジェクト５０の頭部がタッチされている場合においてタッチペン２８を上下方向に往復移動させると、カーソル６０も上側ＬＣＤ２２の上下方向に往復動作する。このカーソル６０の動作は、ユーザが犬オブジェクト５０の頭を撫でる動作に対応する。当該動作に応じて、例えば、犬オブジェクト５０は頭を撫でられて喜ぶような動作をする。
【００８４】
図５は、ユーザが犬オブジェクト５０の背中部分をタッチした様子を示す図である。図５に示すように、ユーザが犬オブジェクト５０の背中部分をタッチすると、図４のように頭部をタッチした場合と比較して、カーソル６０の姿勢が変化する。具体的には、カーソル６０は、タッチした部位の表面に沿うようにして表示される。
【００８５】
以上のように、ユーザが下側ＬＣＤ１２に表示されたシルエット画像５０Ｂをタッチペン２８（又は指）でタッチすることによって、上側ＬＣＤ２２に表示されたカーソル６０を操作する。そして、ユーザはカーソル６０を用いて犬オブジェクト５０に触れることで、犬オブジェクト５０を操作する。
【００８６】
（ゲーム処理の詳細）
次に、図６から図８を参照してカーソル６０の姿勢の決定の仕方、および、その処理の詳細について説明する。まず、ゲーム処理の際にメインメモリ３２およびＶＲＡＭ３１３（以下、これらを総称してＲＡＭと呼ぶことがある）に記憶される主なデータについて説明する。図６は、ゲーム装置１０のＲＡＭ（メインメモリ３２等）のメモリマップを示す図である。図６に示されるように、ＲＡＭには、ゲームプログラム７０、タッチ位置データ７１、描画画像データ７２、深度値データ７３、犬オブジェクト情報データ７４、カーソルデータ７５等が記憶される。これらの他、ＲＡＭには犬オブジェクト５０の画像データやユーザによって行われたボタン操作に関するデータ等が記憶される。
【００８７】
ゲームプログラム７０は、後述するフローチャートに示されるゲーム処理を情報処理部３１（ＣＰＵ３１１）に実行させるためのプログラムである。
【００８８】
タッチ位置データ７１には、タッチパネル１３が検出したタッチ位置Ｔが格納される。具体的には、タッチ位置データ７１は所定の長さの配列であり、当該配列の各要素には、タッチパネル１３上（下側ＬＣＤ１２の画面上）の位置を示す座標値（ＴｘＴｙ座標系）が格納される。ＴｘＴｙ座標系は、例えば、下側ＬＣＤ１２の左下端を原点として、下側ＬＣＤ１２の横方向にＴｘ座標軸が設定され、縦方向にＴｙ座標軸が設定された座標系である。タッチ位置データ７１には、タッチパネル１３が検出したタッチ位置を示す座標値が時系列に格納される。
【００８９】
描画画像データ７２は、上側ＬＣＤ２２および下側ＬＣＤ１２に表示される画像を示すデータである。具体的には、描画画像データ７２は、上側ＬＣＤ２２に表示される左目用画像と右目用画像、および、下側ＬＣＤ１２に表示されるシルエット画像が含まれる。後述する表示処理によって、各画像が生成され、描画画像データ７２としてＲＡＭに記憶される。
【００９０】
深度値データ７３には、下側ＬＣＤ１２に表示された画像の画素毎の深度値（奥行方向
の位置を示す値；デプス値）が格納される。具体的には、深度値データ７３は、下側ＬＣＤ１２に表示された画像の各画素の深度値をマトリクス状に配置した２次元配列である。２次元配列の各要素には、下側ＬＣＤ１２に表示される画像の各画素の深度値が格納される。
【００９１】
犬オブジェクト情報データ７４は、犬オブジェクト５０の仮想空間における位置や形状等を示すデータである。具体的には、犬オブジェクト情報データ７４は、犬オブジェクト５０の仮想空間（ＸＹＺ座標系）における位置、犬オブジェクト５０の各部位（図９参照）に関する情報等を含む。
【００９２】
カーソルデータ７５は、カーソル６０の仮想空間における位置および姿勢を示すデータである。カーソル６０の位置は、ユーザによってタッチされたタッチパネル１３上の位置に応じた３次元仮想空間の位置である。カーソル６０の姿勢は、カーソル６０の仮想空間における姿勢である。
【００９３】
（ゲーム処理）
次に、ゲーム処理の詳細について図７から図１３を参照して説明する。図７は、本実施形態に係るゲーム処理の詳細を示すメインフローチャートである。ゲーム装置１０の電源が投入されると、ゲーム装置１０の情報処理部３１（ＣＰＵ３１１）は、ＲＯＭに記憶されている起動プログラムを実行し、これによってメインメモリ３２等の各ユニットが初期化される。次に、不揮発性メモリ（外部メモリ４４等；コンピュータ読み取り可能な記憶媒体）に記憶されたゲームプログラム７０がＲＡＭ（具体的には、メインメモリ３２）に読み込まれ、情報処理部３１のＣＰＵ３１１によって当該プログラムの実行が開始される。図７のフローチャートに示す処理は、以上の処理が完了した後に情報処理部３１（ＣＰＵ３１１又はＧＰＵ３１２）によって行われる。
【００９４】
なお、図７では、本発明に直接関連しない処理については記載を省略する。また、図７に示すステップＳ１０１〜ステップＳ１０４の処理ループは、１フレーム（例えば１／３０秒又は１／６０秒。フレーム時間という）毎に繰り返し実行される。
【００９５】
まず、ステップＳ１０１において、情報処理部３１は、カーソル設定処理を実行する。ここでは、タッチパネル１３が検出したタッチ位置に基づいて、カーソル６０の仮想空間における位置および姿勢が算出される。ステップＳ１０１におけるカーソル設定処理の詳細を図８を参照して説明する。図８は、カーソル設定処理（ステップＳ１０１）の詳細を示すフローチャートである。
【００９６】
ステップＳ１１１において、情報処理部３１は、タッチパネル１３がタッチ位置Ｔを検出したか否かを判定する。タッチパネル１３がタッチ位置Ｔを検出した場合、情報処理部３１は、タッチ位置Ｔ（Ｔｘ，Ｔｙ）を最新のタッチ位置としてタッチ位置データ７１に格納し、次にステップＳ１１２の処理を実行する。一方、タッチパネル１３がタッチ位置Ｔを検出しなかった場合、情報処理部３１は、図８に示すカーソル設定処理を終了する。
【００９７】
ステップＳ１１２において、情報処理部３１は、ステップＳ１１１で検出したタッチパネル１３上のタッチ位置Ｔに対応する、画像上の指示位置Ｑを取得する。ここで、指示位置Ｑは、タッチ位置Ｔに対応する下側ＬＣＤ１２に表示された画像上の位置を示す。具体的には、情報処理部３１は、ステップＳ１１１においてタッチパネル１３が検出したタッチ位置Ｔを座標変換することによって、画像上の指示位置Ｑ（Ｑｘ，Ｑｙ）を取得する。
【００９８】
なお、下側ＬＣＤ１２の表示画面（およびタッチパネル１３）と、下側ＬＣＤ１２に表示された画像（すなわち、後述するステップＳ１０４で生成された画像）とが同じ大きさ
である場合、タッチ位置Ｔと、指示位置Ｑとは一致する。一方、下側ＬＣＤ１２の表示画面（およびタッチパネル１３）よりも下側ＬＣＤ１２に表示された画像の方が大きい場合、大きさの比率に応じてタッチ位置Ｔが変換されて、指示位置Ｑが求められる。このように、タッチ位置Ｔと指示位置Ｑとは一対一で対応するが、それぞれ２つの異なる座標系で表される位置を示す。
【００９９】
以下では、タッチパネル１３が検出したタッチパネル１３上の座標系で表される位置を「タッチ位置Ｔ」、当該タッチ位置Ｔに対応する下側ＬＣＤ１２に表示された画像上の座標系で表される位置を「指示位置Ｑ」として表す。また、指示位置Ｑに対応する３次元仮想空間の座標系（ＸＹＺ座標系）で表される位置を「３次元指示位置Ｐ」として表す。情報処理部３１は、次にステップＳ１１３の処理を実行する。
【０１００】
ステップＳ１１３において、情報処理部３１は、指示位置Ｑにおける深度値（Ｚ値）を取得する。具体的には、情報処理部３１は、深度値データ７３を参照して、指示位置Ｑ（Ｑｘ，Ｑｙ）の画素の深度値を取得する。後述するステップＳ１０４において、下側ＬＣＤ１２に画像が表示されると、その画像の画素毎の深度値（奥行方向の位置）が深度値データ７３に格納される。ここでは、前回のフレームにおいてステップＳ１０４で更新された深度値データ７３を参照し、当該深度値データ７３に格納された深度値が取得される。次に、ステップＳ１１４が実行される。
【０１０１】
ステップＳ１１４において、情報処理部３１は、指示位置Ｑが犬オブジェクト５０上か否かを判定する。すなわち、情報処理部３１は、ステップＳ１１２で取得した指示位置Ｑが下側ＬＣＤ１２に表示された犬オブジェクト５０のシルエット画像５０Ｂ内か否かを判定する。例えば、情報処理部３１は、深度値データ７３を参照して、指示位置Ｑの画素の深度値が所定の範囲か否かを判定する。上述のように、深度値データ７３は、下側ＬＣＤ１２に表示された画像の画素毎の深度値を示すデータである。下側ＬＣＤ１２に表示された画像には、操作対象である犬オブジェクト５０のみが表示される。このため、犬オブジェクト５０が表示された領域（シルエット画像５０Ｂの表示領域）の各画素には所定範囲の深度値（例えば、０．９〜１．０）が格納され、犬オブジェクト５０が表示されない領域には、所定の値の深度値（例えば、０）が格納される。従って、情報処理部３１は、深度値データ７３を用いることによって犬オブジェクト５０がタッチされたか否かを判定することができる。判定結果が肯定の場合、次にステップＳ１１５の処理が実行される。判定結果が否定の場合、次にステップＳ１２０の処理が実行される。
【０１０２】
ステップＳ１１５において、情報処理部３１は、３次元指示位置Ｐ（Ｘ，Ｙ，Ｚ）を算出する。具体的には、情報処理部３１は、ステップＳ１１２で取得した指示位置Ｑ（Ｑｘ，Ｑｙ）、および、ステップＳ１１３で取得した深度値（Ｚ値）に基づいて、仮想空間における３次元指示位置Ｐを算出する。指示位置Ｑは、下側ＬＣＤ１２に表示された画像上の位置であり、当該指示位置Ｑに基づいて、第３の仮想カメラから仮想空間を見た場合の上下左右方向（カメラ座標系のＸＹ方向）の位置が算出される。また、ステップＳ１１３で取得した深度値は、下側ＬＣＤ１２に表示された画像の上記指示位置Ｑにおける深度値であり、第３の仮想カメラから仮想空間を見た場合の奥行き方向（撮像方向；カメラ座標系のＺ方向）の位置を示す。従って、当該深度値に基づいて、第３の仮想カメラの奥行き方向の位置が算出される。すなわち、仮想空間における３次元位置は、ビュー変換および射影変換により画像上の２次元位置に変換される。このため、画像上の２次元位置（仮想カメラの上下左右方向の位置）とその深度値（仮想カメラの撮像方向の位置）とを用いた逆変換により、仮想空間における３次元位置は求められる。より具体的には、情報処理部３１は、透視投影変換行列の逆行列、および、仮想カメラのビュー行列の逆行列を用いて仮想空間における３次元指示位置Ｐ（Ｘ，Ｙ，Ｚ）を算出する。そして、情報処理部３１は、算出した３次元指示位置Ｐをカーソルデータ７５としてＲＡＭに保存する。次に、情
報処理部３１はステップＳ１１６の処理を実行する。
【０１０３】
ステップＳ１１６において、情報処理部３１は、３次元指示位置Ｐに基づいて、タッチされた部位を決定する。犬オブジェクト５０は、複数の部位によって構成され、ステップＳ１１６においては、タッチした部位が決定される。
【０１０４】
図９は、犬オブジェクト５０が複数の部位によって構成される様子を示す図である。図９に示すように、犬オブジェクト５０は、複数の部位によって構成され、例えば、部位１５１は頭部を形成し、部位１５５は犬の後ろ半身を形成する。犬オブジェクト情報データ７４には、各部位に関する情報が含まれる。各部位の形状は、例えば球や円柱、カプセル状（例えば図９の部位１５５）であったりする。より具体的には、各部位は線分（ボーン）によって表わされ、当該線分からの距離が定められることによって、各部位は定義される。図１０は、後ろ半身の部位１５５の詳細を示す図である。図１０に示すように、部位１５５は、点１５５ｂおよび点１５５ｃを結ぶ線分１５５ａによって表わされる。犬オブジェクト情報データ７４のうちの部位１５５に関する情報には、線分１５５ａの位置と長さ（点１５５ｂおよび点１５５ｃの３次元仮想空間における座標値）、および、線分１５５ａからの距離に関する情報が含まれる。
【０１０５】
情報処理部３１は、犬オブジェクト情報データ７４を参照して、３次元指示位置Ｐと最も近い線分（ボーン）を検索することにより、タッチされた部位を決定する。次に、情報処理部３１は、ステップＳ１１７の処理を実行する。
【０１０６】
ステップＳ１１７において、情報処理部３１は、３次元指示位置Ｐにおける法線および回転角を算出する。具体的には、情報処理部３１は、３次元指示位置Ｐを通り、タッチされた部位の表面に垂直な線を算出する。
【０１０７】
図１１Ａは、タッチされた部位１５５を正面から見た図であり、部位１５５の３次元指示位置Ｐにおける法線ベクトルを示す図である。また、図１１Ｂは、部位１５５を図１１Ａの矢印方向から見た図であり、部位１５５の３次元指示位置Ｐにおける法線ベクトルを示す図である。図１１Ａおよび図１１Ｂに示すように、情報処理部３１は、３次元指示位置Ｐから線分１５５ａに下ろした垂線の足を算出し、当該垂線の足から３次元指示位置Ｐに向かうベクトルを法線ベクトルとして算出する。このようにして算出される法線ベクトルは、部位１５５の表面に垂直なベクトルである。なお、タッチされた部位の３次元指示位置Ｐにおける法線を算出する方法は上記に限らずどのような方法でもよい。
【０１０８】
また、ステップＳ１１７において、情報処理部３１は、３次元指示位置Ｐに基づいて、カーソル６０の回転角を算出する。ここで算出されるカーソル６０の回転角は、法線ベクトル周りの回転を示す角度である。カーソル６０の回転角は、タッチされた部位を基準とした３次元指示位置Ｐの相対的な位置によって定められる。図１２は、部位１５５がタッチされた場合において、３次元指示位置Ｐが部位１５５の中のどの領域に存在するかによって回転角が定められることを示す図である。図１２に示すように、例えば、部位１５５の上半分がタッチされた場合、カーソル６０の回転角は０度に設定される。また、部位１５５の下半分がタッチされた場合、カーソル６０の回転角は１８０度に設定される。
【０１０９】
法線および回転角を算出した後、情報処理部３１は次にステップＳ１１８の処理を実行する。
【０１１０】
ステップＳ１１８において、情報処理部３１は、ステップＳ１１７で算出した法線および回転角に基づいて、カーソル６０の仮想空間における姿勢を決定する。具体的には、情報処理部３１は、ステップＳ１１７で算出した法線に対して垂直になるようにカーソル６
０を仮想空間に配置し、ステップＳ１１７で算出した回転角で当該カーソル６０を法線周りに回転させる。そして、情報処理部３１は、決定した姿勢をカーソルデータ７５としてＲＡＭに保存する。このようにしてカーソル６０の姿勢が決定されることによって、カーソル６０が上側ＬＣＤ２２に表示された場合、カーソル６０はユーザがタッチした部位の表面に沿うようにして（掌が部位の表面に接触するようにして）表示される。情報処理部３１は、次にステップＳ１１９の処理を実行する。
【０１１１】
ステップＳ１１９において、情報処理部３１は、カーソル６０を３Ｄ表示に設定する。具体的には、情報処理部３１は、カーソル６０の表示モードを示すデータを３Ｄ表示に設定して、ＲＡＭに記憶する。後述する上側ＬＣＤ２２の表示処理（ステップＳ１０３）が行われることによって、カーソル６０が上側ＬＣＤ２２に立体表示される。この場合において、カーソル６０は、タッチした部位の表面に沿うようにして表示され、例えば、タッチした部位が上側ＬＣＤ２２の画面に対して手前方向に表示される場合は、カーソル６０も画面の手前方向に位置するように表示される。ステップＳ１１９の処理の後、情報処理部３１は、図８に示すフローチャートの処理を終了する。
【０１１２】
一方、ステップＳ１２０において、情報処理部３１は、カーソル６０を２Ｄ表示に設定する。具体的には、情報処理部３１は、カーソル６０の表示モードを示すデータを２Ｄ表示に設定して、ＲＡＭに記憶する。後述する上側ＬＣＤ２２の表示処理（ステップＳ１０３）が行われることによって、カーソル６０が上側ＬＣＤ２２に表示される。
【０１１３】
図１３は、タッチパネル１３がタッチを検出した場合において、犬オブジェクト５０がタッチされなかったときの画面の一例を示す図である。図１３に示すように、犬オブジェクト５０のシルエット画像５０Ｂの表示領域とは異なる領域がタッチされた場合、そのタッチ位置Ｔ（指示位置Ｑ）に対応する上側ＬＣＤ２２上の位置にカーソル６０が表示される。ここで、カーソル６０はビルボード処理が行われて、平面的な矢印形状のカーソルとして表示される。また、カーソル６０は、上側ＬＣＤ２２の画面上に位置するように表示される（すなわち、左目用画像および右目用画像が上側ＬＣＤ２２に表示された場合、左目用画像の中のカーソル６０の表示位置と右目用画像の中のカーソル６０の表示位置とが一致する）。ステップＳ１２０の処理の後、情報処理部３１は、図８に示すフローチャートの処理を終了する。
【０１１４】
図７に戻り、情報処理部３１は、ステップＳ１０１の処理の後、ステップＳ１０２の処理を実行する。
【０１１５】
ステップＳ１０２において、情報処理部３１は、犬オブジェクト５０の動作を決定する。具体的には、情報処理部３１は、ステップＳ１０１で取得されたタッチ位置Ｔ（指示位置Ｑ）に基づいて、犬オブジェクト５０に対して行われた操作を判定し、判定結果に応じて、犬オブジェクト５０の動作を決定する。次に、情報処理部３１は、ステップＳ１０３の処理を実行する。
【０１１６】
ステップＳ１０３において、情報処理部３１は、上側ＬＣＤ２２の表示処理を行う。具体的には、情報処理部３１は、ステップＳ１０２の決定に応じて犬オブジェクト５０を動作させる。さらに、情報処理部３１は、ステップＳ１０１のカーソル設定処理の結果に応じてカーソル６０を仮想空間に配置する。例えば、カーソル設定処理において、カーソルを３Ｄ表示にする設定が行われた場合（すなわち、ステップＳ１１９の処理が行われた場合）、ステップＳ１１５で算出された３次元指示位置Ｐに、ステップＳ１１８において決定された姿勢でカーソルオブジェクト６０を仮想空間に配置する。そして、情報処理部３１は、仮想空間に設定された仮想ステレオカメラ（左右の仮想カメラ；第１および第２のカメラ）で犬オブジェクト５０、ボールオブジェクト５１、および、カーソルオブジェク
ト６０を撮像する。これにより、犬オブジェクト５０、ボールオブジェクト５１、および、カーソルオブジェクト６０を含む仮想空間を撮像した左目用画像と右目用画像とが生成される。そして、情報処理部３１は、生成した左目用画像および右目用画像を上側ＬＣＤ２２に出力する。次に、情報処理部３１は、ステップＳ１０４の処理を実行する。
【０１１７】
ステップＳ１０４において、情報処理部３１は、下側ＬＣＤ１２の表示処理を行う。具体的には、情報処理部３１は、上記仮想ステレオカメラの左右の仮想カメラの中間の位置に設定された仮想カメラ（第３の仮想カメラ）で犬オブジェクト５０を撮像する。ここで、犬オブジェクト５０はシルエット表示に設定され、犬オブジェクト５０以外のボールオブジェクト５１およびカーソルオブジェクト６０は、非表示に設定される。これにより、下側ＬＣＤ１２には、犬オブジェクト５０のシルエット画像５０Ｂのみが表示される。より具体的には、情報処理部３１は、仮想カメラ（第３の仮想カメラ）のビュー行列を用いてＸＹＺ座標系で表された犬オブジェクト５０をビュー座標変換し、さらに射影行列を用いて射影変換する。これにより、犬オブジェクト５０を第３の仮想カメラで撮像した画像（図４および図５に示すシルエット画像５０Ｂ）が生成される。また、情報処理部３１は、当該画像を生成することによって得られる深度値（Ｚ値）を深度値データ７３としてＲＡＭに記憶する。そして、情報処理部３１は、生成した画像を下側ＬＣＤ１２に出力する。なお、第３の仮想カメラは、必ずしも仮想ステレオカメラの左右の仮想カメラの中間に設定される必要はなく、左右の仮想カメラの間の任意の位置に設定されてもよい。以上で、図７に示すフローチャートの説明を終了する。
【０１１８】
なお、処理の順番は図７に示すものに限らず、例えば、上側ＬＣＤおよび下側ＬＣＤの表示処理の後に、カーソル設定処理が行われてもよい。また、上記では、下側ＬＣＤ１２に既に表示された画像の深度値を用いて、カーソル６０が仮想空間に設定されたが、カーソル６０を仮想空間に設定するために、上記第３の仮想カメラを用いて仮想空間を撮像することによって画像および深度値を生成してもよい。すなわち、カーソル設定処理を行う前に第３の仮想カメラで仮想空間を撮像し、当該撮像した画像と深度値とを用いて、カーソル６０を設定してもよい。そして、カーソル６０を仮想空間に設定した後、再び第３の仮想カメラで仮想空間を撮像して、下側ＬＣＤ１２に当該撮像した画像を表示してもよい。
【０１１９】
以上のように、本実施形態では、タッチパネル１３によってタッチ位置Ｔを検出し、タッチ位置Ｔに対応する画像上の指示位置Ｑと、当該指示位置Ｑの深度値とを用いて、仮想空間における３次元指示位置Ｐが求められる。そして、当該３次元指示位置Ｐにカーソル６０が配置される。また、カーソル６０の姿勢は、タッチされた部位の３次元指示位置Ｐにおける法線に基づいて設定される。これにより、指示位置Ｑに対応する仮想空間上の位置にカーソル６０を配置することができる。
【０１２０】
本実施形態においては、下側ＬＣＤ１２の表示処理において算出される深度値を用いて、仮想空間における３次元指示位置Ｐが算出されるため、複雑な計算をすることなく容易にタッチ位置Ｔに対応する３次元仮想空間の位置を求めることができる。例えば、タッチパネル１３が検出したタッチ位置Ｔに対応する３次元仮想空間の位置を求める場合、幾何学的な計算によって当該３次元空間の位置を求めることが考えられる。すなわち、タッチ位置Ｔから仮想カメラの撮像方向に伸びる３次元直線を算出し、当該３次元直線が犬オブジェクト５０の各部位と接触するか否かを判定する。そして、３次元直線が接触する部位が存在する場合、その部位と３次元直線とが交わる点が、タッチ位置Ｔに対応する３次元仮想空間の位置として求められる。しかしながら、このような幾何学的方法では、計算が複雑になり、処理負荷が高くなる。例えば、部位と部位との接続部分がタッチされた場合、３次元指示位置Ｐが正確に求められないと、カーソル６０が画面に表示されたときに部位によって隠れたりすることがある。このため、３次元指示位置Ｐを正確に求める必要が
あるが、幾何学的方法では３次元指示位置Ｐを正確に求めようとすればするほど、仮想モデル（犬オブジェクト）の形状を厳密に定義する必要がある。従って、幾何学的方法では３次元指示位置Ｐを正確に求めようとすればするほど、より複雑な計算を行う必要があり、処理負荷が高くなる。一方、本実施形態による方法では、表示処理において得られる深度値を用いるため、特別な計算を要することなく、タッチパネル１３が検出したタッチ位置Ｔに対応する３次元空間の３次元指示位置Ｐを正確に求めることができる。また、３次元指示位置Ｐは、既に表示された画像における指示位置Ｑと当該画像の指示位置Ｑの深度値とを用いて算出されるため、算出される３次元指示位置Ｐはタッチされた部位のうちの画面に表示された部分になる。このため、本実施形態に係る方法を用いて３次元指示位置Ｐを算出し、３次元指示位置Ｐにカーソル６０を配置して表示すると、当該カーソル６０は部位の表面に表示される。
【０１２１】
また、本実施形態では、カーソル６０は、タッチした部位の表面に沿うようにして表示される。すなわち、本実施形態では、３次元指示位置Ｐにおける犬オブジェクト５０の部位の法線に基づいて、カーソル６０の姿勢が決定される。カーソル６０は、指示された犬オブジェクト５０の部位の表面に沿うようにして３次元の仮想空間に配置され、表示される。このため、犬オブジェクト５０に触れるような感覚をユーザに与えることができる。
【０１２２】
（変形例）
なお、本実施形態では、下側ＬＣＤ１２に犬オブジェクト５０のシルエット画像を表示し、上側ＬＣＤ２２に犬オブジェクト５０の立体視画像を表示した。他の実施形態では、上側ＬＣＤ２２には立体視画像ではなく、平面画像が表示されてもよい。また、下側ＬＣＤ１２には、シルエット画像ではなく上側ＬＣＤ２２と同じ画像が表示されてもよい。
【０１２３】
また、本実施形態では、下側ＬＣＤ１２に表示された画像の深度値を用いて、仮想空間の３次元指示位置Ｐを算出した。他の実施形態では、上側ＬＣＤ２２に表示された左右の画像のうちの何れかの画像の深度値を用いて、３次元指示位置Ｐが算出されてもよい。
【０１２４】
また、本実施形態では、下側ＬＣＤ１２に表示された画像の画素毎の深度値が格納されるとした。他の実施形態では、画素毎に深度値が格納される必要はなく、複数の画素によって構成される部分領域（例えば、４つの画素によって構成される四角形の小領域）毎に深度値が格納されてもよい。
【０１２５】
また、他の実施形態では、２画面の構成ではなく、１画面の構成であってもよい。例えば、表示画面に犬オブジェクト５０の立体視画像（又は平面画像）を表示し、タッチパネル１３とは異なる位置指示手段（例えば、タッチパッドやマウス等）を用いて当該画像（画面）上の位置を指示してもよい。あるいは、１画面の構成において当該画面上にタッチパネル（位置指示手段）が設けられて、当該画面に立体視画像が表示されてもよい。この場合において、位置指示手段によって指示された画像（左右何れかの画像、又は、左右の仮想カメラの間の仮想カメラで撮像した画像）上の指示位置と、当該指示位置の深度値とに基づいて、３次元の仮想空間における３次元指示位置が算出される。そして、算出した３次元指示位置にカーソルオブジェクト６０を配置し、当該カーソルオブジェクト６０を仮想カメラで撮像することによって、上側ＬＣＤ２２にカーソルオブジェクト６０を表示させる。
【０１２６】
また、ゲーム装置１０は１画面で構成され、当該画面が２つの領域に分割されてもよい。例えば、画面の一方の領域に犬オブジェクト５０のカラー画像（立体視画像であってもよいし、立体視画像でなくてもよい）が表示され、画面の他方の領域に犬オブジェクト５０のシルエット画像が表示されてもよい。そして、ユーザは他方の領域に表示されたシルエット画像上を指示してもよい。
【０１２７】
また、本実施形態では、犬オブジェクト５０の複数の部位のうち指示された部位の法線を算出し、当該法線と垂直になるように手の形をしたカーソルオブジェクト６０が配置された。そして、指示された部位における位置（当該部位を基準とした３次元指示位置の相対位置）に応じてカーソルオブジェクト６０が法線周りに回転された。他の実施形態では、カーソルオブジェクト６０の回転角は、例えばカーソル６０の移動方向等を考慮して定められてもよい。例えば、カーソル６０が画面の左右方向に移動している場合、カーソル６０を法線周りに９０度回転させてもよい。
【０１２８】
また、他の実施形態では、犬オブジェクト５０に限らず、（１以上の部分によって構成される）任意のゲームオブジェクトが画面に表示され、当該ゲームオブジェクトをカーソル６０で操作（指示）してもよい。
【０１２９】
また、本実施形態では、ユーザによって指示された位置を示すカーソル６０が表示された。他の実施形態では、カーソル６０に限らず任意のオブジェクトが仮想空間に配置されて表示されてもよい。すなわち、ユーザによって指示された位置と当該指示位置の深度値とに基づいて３次元指示位置が算出され、当該算出された３次元指示位置に任意のオブジェクトが配置されてもよい。
【０１３０】
また、他の実施形態では、上述した表示制御方法は、ゲーム装置に限らず任意の電子機器、例えば、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）や高機能携帯電話、パーソナルコンピュータ等に適用されてもよい。
【０１３１】
また、他の実施形態では、携帯型ゲーム装置に限らず、画面上の位置を指示する入力装置を備える据置型のゲーム装置であってもよい。当該ゲーム装置は、テレビジョン受像器（テレビと称する）等に映像を表示し、当該テレビ画面上の位置を指示するための入力装置を備える。入力装置は、例えばテレビの周辺に設置されたマーカ部が発する赤外光を受光することで、ユーザによって指示されたテレビ画面上の位置を検出する。あるいは、入力装置が赤外光を発し、テレビの周辺に設置された受光部が入力装置からの赤外光を受光することで、ユーザによって指示された位置をゲーム装置が検出してもよい。このように、入力装置を用いてユーザによって指示された画面上の位置と、当該位置の深度値（画面に表示された画像の深度値）とを用いて、仮想空間における３次元位置が算出され、当該３次元位置にオブジェクトが配置されてもよい。
【０１３２】
また、本実施形態では、表示装置として裸眼で立体視画像を表示可能なＬＣＤが用いられた。他の実施形態では、時分割方式や偏向方式、アナグリフ方式（赤青眼鏡方式）などの眼鏡を用いて立体表示を行うような場合でも、本発明は適用可能である。
【０１３３】
また、他の実施形態では、有線や無線等で通信可能に接続された複数の情報処理装置が各処理を分担して処理することにより、上述した表示制御方法を実現する表示制御システムとして構築されてもよい。例えば、ユーザによって用いられる位置の指示する位置指示手段が情報処理装置と分離された構成であって、当該位置指示手段が情報処理装置に無線等で接続されてもよい。また、情報処理装置と表示装置が分離された構成で、互いに接続されてもよい。
【０１３４】
また、上述したゲーム処理はオンラインゲームにおいて適用されてもよい。例えば、表示装置と、当該表示装置の画面上の位置を指示する位置指示手段（タッチパネルやマウス等）とが端末に接続され、当該端末とサーバとがインターネットで接続されて、上述したゲームが行われてもよい。このようなオンラインゲームにおいては、端末とサーバとで処理を分担することによってゲームが進行するが、どのように処理を分担してもよい。例え
ば、サーバはゲーム空間を構築し、当該ゲーム空間における犬オブジェクト５０の位置がサーバ上で管理されてもよい。ユーザは、表示装置に表示された画像を見ながら、位置指示手段を用いて、当該表示装置の画面上の位置を指示する。例えば、端末は、位置指示手段が検出した位置（タッチ位置Ｔ）に基づいて画面に表示された画像上の位置（指示位置Ｑ）と当該位置における深度値とを取得し、画像上の位置と深度値とを含む情報をサーバに送信してもよい。サーバは当該情報に基づいて、仮想空間の３次元位置を算出してカーソルオブジェクト６０を仮想空間に設定してもよい（カーソル６０の位置と姿勢を設定する）。次に、サーバは、犬オブジェクト５０を動作させて、仮想空間における位置及び姿勢を変化させるとともに、当該犬オブジェクトの位置及び姿勢に関する情報と、カーソルオブジェクト６０の位置及び姿勢に関する情報とを端末に送信してもよい。端末は、これらの情報に基づいて、犬オブジェクトとカーソルオブジェクトとを仮想空間に配置して、仮想カメラで仮想空間を撮像し、表示装置に画像を表示させてもよい。
【０１３５】
また、上記実施形態においては、ゲーム装置１０の情報処理部３１が所定のプログラムを実行することによって、上述したフローチャートによる処理が行われた。他の実施形態においては、上記処理の一部又は全部は、ゲーム装置１０が備える専用回路によって行われてもよい。
【０１３６】
また、上記ゲームプログラム（情報処理プログラム）は、上記メモリに限らず、光ディスクや磁気ディスク等、コンピュータ読み取り可能な記憶媒体に記憶されてゲーム装置１０に提供されてもよい。また、例えば、ネットワーク上のサーバのＲＡＭ（記憶媒体）に上記プログラムが記憶され、ゲーム装置１０が当該ネットワークに接続されて、当該プログラムがゲーム装置１０に提供されてもよい。
【符号の説明】
【０１３７】
１０  ゲーム装置
１１  下側ハウジング
１２  下側ＬＣＤ
１３  タッチパネル
１４  操作ボタン
１５  アナログスティック
１６  ＬＥＤ
２１  上側ハウジング
２２  上側ＬＣＤ
２３  外側撮像部
２３ａ  外側撮像部（左）
２３ｂ  外側撮像部（右）
２４  内側撮像部
２５  ３Ｄ調整スイッチ
２６  ３Ｄインジケータ
２８  タッチペン
３１  情報処理部
３１１  ＣＰＵ
３１２  ＧＰＵ
３２  メインメモリ
５０  犬オブジェクト
５１  ボールオブジェクト
６０  カーソル
【図１】
0006021296.tif 000002
【図２】
0006021296.tif 000003
【図３】
0006021296.tif 000004
【図４】
0006021296.tif 000005
【図５】
0006021296.tif 000006
【図６】
0006021296.tif 000007
【図７】
0006021296.tif 000008
【図８】
0006021296.tif 000009
【図９】
0006021296.tif 000010
【図１０】
0006021296.tif 000011
【図１１Ａ】
0006021296.tif 000012
【図１１Ｂ】
0006021296.tif 000013
【図１２】
0006021296.tif 000014
【図１３】
0006021296.tif 000015