(57)【要約】【課題】曲面スクリーンに画像を投影する装置でありながら、立体視装置として機能する装置を実現すること。【解決手段】プロジェクタ１００６によってスクリーン１００４に投影される画像は、次のように生成される。すなわち、三次元仮想空間において、観察者の両眼に相当する２つの仮想視点を設定するともに、スクリーン（投影面）１００４に外接するように２枚の仮想平面を設定する。次いで、この仮想視点それぞれに基づき、ゲーム空間を仮想平面に透視投影変換した平面画像を生成する。そして、想定観察位置からスクリーンを見た場合に平面画像が歪み無く見えるように定められる仮想平面上の画素位置と投影画像上の画素位置との対応関係に従って、平面画像それぞれから投影画像を生成し、右目用投影画像及び左目用投影画像とする。【選択図】図１
2013211672.tif 000002
【特許請求の範囲】
【請求項１】
投影装置が広角レンズを介して所与の投影画像を曲面スクリーンに投影することで映し出す立体視映像を、ユーザが想定観察位置から観察することで立体視として視認可能な曲面投影立体視装置であって、
仮想三次元空間を設定する仮想空間設定手段と、
前記ユーザの左右の目に代わる左右の仮想カメラを前記仮想三次元空間に設定する仮想カメラ設定手段と、
前記左右の仮想カメラの視線方向前方に当該仮想カメラの視界をカバーするための複数の仮想平面を設定する仮想平面設定手段と、
前記左右の仮想カメラそれぞれに基づいて、前記仮想三次元空間を前記仮想平面に透視投影変換処理して左右の仮想カメラそれぞれ用の仮想平面画像を生成する仮想平面画像生成手段と、
前記想定観察位置から前記曲面スクリーンを見た場合に前記仮想平面画像が歪み無く見えるように前記仮想平面上の画素位置と前記投影画像上の画素位置との対応関係が定められた画素位置対応関係と、前記仮想平面画像とを用いて前記投影画像を生成する投影画像生成手段と、
を備えた曲面投影立体視装置。
【請求項２】
前記仮想平面画像生成手段は、前記左右の仮想カメラ共に、前記仮想平面を前記透視投影変換処理用の共通のスクリーンとみなして前記透視投影変換処理を行って前記仮想平面画像を生成する、
請求項１に記載の曲面投影立体視装置。
【請求項３】
座席部を更に備え、
前記曲面スクリーンは、前記座席部に着座したユーザの想定正視方向に凸状の形状を有し、
前記投影装置は、投影中心方向を、前記想定正視方向と前記曲面スクリーンとの交点位置に向けて設置されてなる、
請求項１又は２に記載の曲面投影立体視装置。
【請求項４】
前記仮想平面設定手段は、２枚又は３枚の前記仮想平面を左右方向に連接させ、且つ、各仮想平面を前記仮想カメラに向けて設定する、
請求項１〜３の何れか一項に記載の曲面投影立体視装置。
【請求項５】
前記仮想平面設定手段は、前記仮想平面間の連接角度を変更する連接角度変更手段を有する、
請求項４に記載の曲面投影立体視装置。
【請求項６】
前記仮想平面設定手段は、前記仮想カメラに対する相対角度が徐々に変化するように前記仮想平面の設定位置を徐々に変化させる位置変更手段を有する、
請求項４又は５に記載の曲面投影立体視装置。
【請求項７】
前記仮想三次元空間中を移動する着目点を設定する着目点設定手段を更に備え、
前記位置変更手段は、前記着目点の変位に応じて前記仮想平面の設定位置を変化させる、
請求項６に記載の曲面投影立体視装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、投影装置が広角レンズを介して所与の投影画像を曲面スクリーンに投影することで立体視映像を映し出す曲面投影立体視装置に関する。
【背景技術】
【０００２】
曲面スクリーンに歪みの少ない画像を投影する技術として、特許文献１の技術が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−８５５８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、上述の特許文献１の技術は、立体視でない、ドーム形状の壁面に画像を投影するための技術であった。本発明は、曲面スクリーンに画像を投影する装置でありながら、立体視装置として機能する装置を実現することを目的とする。
【課題を解決するための手段】
【０００５】
上述した課題を解決するための第１の形態は、
投影装置（例えば、図１のプロジェクタ１００６）が広角レンズ（例えば、図１２のｆθレンズ）を介して所与の投影画像を曲面スクリーン（例えば、図１のスクリーン１００４）に投影することで映し出す立体視映像を、ユーザが想定観察位置から観察することで立体視として視認可能な曲面投影立体視装置（例えば、図１のゲームシステム１）であって、
仮想三次元空間を設定する仮想空間設定手段（例えば、図１９のゲーム演算部２１０）と、
前記ユーザの左右の目に代わる左右の仮想カメラ（例えば、図３の右目用仮想視点１０ａ及び左目用仮想視点１０ｂ）を前記仮想三次元空間に設定する仮想カメラ設定手段（例えば、図１９の仮想視点設定部２２１）と、
前記左右の仮想カメラの視線方向前方に当該仮想カメラの視界をカバーするための複数の仮想平面（例えば、図４の仮想平面２０ａ，２０ｂ）を設定する仮想平面設定手段（例えば、図１９の仮想平面設定部２２２）と、
前記左右の仮想カメラそれぞれに基づいて、前記仮想三次元空間を前記仮想平面に透視投影変換処理して左右の仮想カメラそれぞれ用の仮想平面画像を生成する仮想平面画像生成手段（例えば、図１９の透視投影変換部２２３）と、
前記想定観察位置から前記曲面スクリーンを見た場合に前記仮想平面画像が歪み無く見えるように前記仮想平面上の画素位置と前記投影画像上の画素位置との対応関係が定められた画素位置対応関係（例えば、図１９の画素位置対応マップ５０）と、前記仮想平面画像とを用いて前記投影画像を生成する投影画像生成手段（例えば、図１９の投影画像生成部２２４）と、
を備えた曲面投影立体視装置である。
【０００６】
この第１の形態によれば、仮想三次元空間に左右の仮想カメラが設定され、この左右の仮想カメラの視線方向に視界をカバーするための複数の仮想平面が設定される。なお、仮想平面によってカバーされる範囲は視界の範囲全ての意味ではなく、最終的に曲面スクリーンに投影される範囲が含まれれば良い。次いで、この仮想カメラに基づき仮想三次元空間が仮想平面に透視投影変換処理されることで、仮想平面画像が生成される。そして、想定観察位置から曲面スクリーンを見た場合に仮想平面画像が歪み無く見えるように仮想平面上の画素位置と投影画像上の画素位置との対応関係が定められた画素位置対応関係と、生成された仮想平面画像とを用いて、投影画像が生成される。このようにして生成された投影画像が広角レンズを介して曲面スクリーンに投影されることで、想定観察位置から曲面スクリーンを見ると、立体視画像として観察することが可能となる。
【０００７】
また、副次的な効果として、曲面スクリーンで平面視映像を観察する場合、曲面スクリーンが壁として認識されてしまう場合があったが、本形態の技術を適用した立体視映像によれば、曲面スクリーンの壁が取り払われたかのような開放感を味わうことが可能となった。
【０００８】
また、第２の形態として、第１の形態の曲面投影立体視装置であって、
前記仮想平面画像生成手段は、前記左右の仮想カメラ共に、前記仮想平面を前記透視投影変換処理用の共通のスクリーンとみなして前記透視投影変換処理を行って前記仮想平面画像を生成する、
曲面投影立体視装を構成しても良い。
【０００９】
この第２の形態によれば、左右の仮想カメラそれぞれに基づく透視投影変換処理は、仮想平面を透視投影変換処理用の共通のスクリーンとみなして行われる。従って、透視投影変換処理用のスクリーンを、左右の仮想カメラそれぞれ別個に設定する必要は無い。
【００１０】
また、第３の形態として、第１又は第２の形態の曲面投影立体視装置であって、
座席部（例えば、図１のプレーヤシート１００２）を更に備え、
前記曲面スクリーンは、前記座席部に着座したユーザの想定正視方向に凸状の形状を有し、
前記投影装置は、投影中心方向を、前記想定正視方向と前記曲面スクリーンとの交点位置に向けて設置されてなる、
曲面投影立体視装置を構成しても良い。
【００１１】
この第３の形態によれば、曲面スクリーンは、座席部に着席したユーザの想定正視方向に凸状の形状を有しており、投影装置は、投影中心方向が、想定正視方向と曲面スクリーンとの交点位置に向けて設置される。これにより、観察される立体視映像は、曲面スクリーンの端部に比べて想定正視方向付近の方が歪みが抑えられ、座席部に着席して立体視映像を観察する際の立体視の視認性を向上させることができた。
【００１２】
また、第４の形態として、第１〜第３の何れかの形態の曲面投影立体視装置であって、
前記仮想平面設定手段は、２枚又は３枚の前記仮想平面を左右方向に連接させ、且つ、各仮想平面を前記仮想カメラに向けて設定する、
曲面投影立体視装置を構成しても良い。
【００１３】
この第４の形態によれば、２枚又は３枚の仮想平面が左右方向に連接され、且つ、各仮想平面が前記仮想カメラに向けて設定される。これにより、仮想平面の数が２枚又は３枚で済み、立体視画像の描画演算における大きな問題の１つである描画負荷を大きく低減することが可能となった。
【００１４】
また、第５の形態として、第４の形態の曲面投影立体視装置であって、
前記仮想平面設定手段は、前記仮想平面間の連接角度を変更する連接角度変更手段を有する、
曲面投影立体視装置を構成しても良い。
【００１５】
この第５の形態によれば、仮想平面間の連接角度が変更される。
【００１６】
また、第６の形態として、第４又は第５の形態の曲面投影立体視装置であって、
前記仮想平面設定手段は、前記仮想カメラに対する相対角度が徐々に変化するように前記仮想平面の設定位置を徐々に変化させる位置変更手段を有する、
曲面投影立体視装置を構成しても良い。
【００１７】
この第６の形態によれば、仮想カメラに対する相対角度が徐々に変化するように、仮想平面の設定位置が徐々に変化される。
【００１８】
ところで、本形態の曲面投影立体視装置では、描画負荷削減のため、曲面スクリーンの曲面を２枚又は３枚の仮想平面で代用（近似）した。このため、地球儀を円筒に投影したメルカトル図法のように、曲面スクリーンの曲面と仮想平面とを部分的に拡大や縮小（拡縮）をして対応を取っている。仮に、仮想平面の連接角度が固定であり、仮想平面の仮想カメラに対する相対角度が固定であるならば、その拡縮度合いは部分的に違えども変化することはない。他方、立体視として視認させるためには、精密に計算された左右の視差画像が要求される。従って、拡縮度合いによっては、曲面スクリーン上に、立体視として比較的に視認し易い場所や視認し難い場所が存在し得る。
【００１９】
そこで、第５の形態のように仮想平面の連接角度を変更可能としたり、第６の実施形態のように仮想平面の仮想カメラに対する相対角度を変化させることで、曲面スクリーンの曲面と仮想平面との対応関係を変更して、部分部分の拡縮度合を調整する。これにより、例えば、立体視として視認して欲しい曲面スクリーンの場所が、立体視として視認し易くなるように、適切な投影画像を生成することが可能となる。
【００２０】
また、第７の形態として、第６の形態の曲面投影立体視装置であって、
前記仮想三次元空間中を移動する着目点を設定する着目点設定手段を更に備え、
前記位置変更手段は、前記着目点の変位に応じて前記仮想平面の設定位置を変化させる、
曲面投影立体視装置を構成しても良い。
【００２１】
この第７の形態によれば、仮想三次元空間中の着目点の変位に応じて、仮想平面の設定位置が変化される。
これにより、着目点の映像部分を、立体視として比較的視認し易くすることが可能となる。
【図面の簡単な説明】
【００２２】
【図１】ゲームシステムの構成例。
【図２】ゲームシステムの構成例。
【図３】仮想視点の設定の説明図。
【図４】仮想平面の設定の説明図。
【図５】透視投影変換の説明図。
【図６】透視投影変換の説明図。
【図７】２つの仮想視点による従来の問題点の説明図。
【図８】２つの仮想視点に共通のスクリーンの適用の説明図。
【図９】２つの仮想視点の共通スクリーンの座標設定の説明図。
【図１０】共通スクリーンに垂直となる２つの仮想視点の設定の説明図。
【図１１】投影画像の対象画素の説明図。
【図１２】ｆθレンズの特性の説明図。
【図１３】投影画像の対象画素からの射出光線の説明図。
【図１４】対象画素の射出光線と投影面との交点の算出の説明図。
【図１５】交点を通る仮想視点の視線と仮想平面との交点の算出の説明図。
【図１６】画素位置対応マップに基づく投影画像の生成の説明図。
【図１７】ポリゴンの頂点座標を利用した画素位置の対応関係の説明図。
【図１８】ポリゴンの頂点座標を利用した画素位置の対応関係の説明図。
【図１９】ゲームシステムの機能構成図。
【図２０】ゲーム処理のフローチャート。
【図２１】仮想平面の設定の他の例。
【図２２】仮想平面の設定の他の例。
【発明を実施するための形態】
【００２３】
以下、図面を参照して本発明の実施形態を説明する。但し、本発明の適用可能な実施形態がこれに限定されるものではない。
【００２４】
［ゲーム装置の構成］
図１は、本実施形態における曲面投影立体視装置を適用したゲームシステム１の構成例である。また、図２は、このゲームシステム１の鉛直断面図である。本実施形態のゲームシステム１は、店舗等に設置されてカーレースゲームを実行する業務用のゲームシステムであり、レーシングカーの運転席を模擬したプレーヤシート１００２と、ゲーム画面を表示する曲面形状のスクリーン１００４と、スクリーン１００４に画像（映像）を投影するプロジェクタ１００６と、ゲーム音を出力するスピーカ（不図示）と、プレーヤがゲーム操作を入力するためのハンドル１００８やシフトレバー、アクセルペダル１０１０、ブレーキペダル１００９と、制御基板１０２０とを備えている。
【００２５】
プレーヤシート１００２は、着座したプレーヤの想定正視方向がスクリーン１００４の中央付近を向くように、その向きや高さが調整されて設けられている。本実施形態では、着座したプレーヤの正面方向を想定正視方向としている。曲面スクリーン１００４は、プレーヤシート１００２に着座したプレーヤの正面方向（想定正視方向）に対して凸形状に形成されている。
【００２６】
プロジェクタ１００６は、投影装置の一種であり、プレーヤシート１００２の後方に設置された支柱１０１２や筐体フレーム１０１４に支持されて、プレーヤシート１００２の上方であってプレーヤシート１００２に着座したプレーヤに干渉しない位置に、その投影中心方向がスクリーン１００４の中心付近を向くように設置されている。すなわち、投影中心方向がプレーヤの想定正視方向と曲面スクリーンとの交点位置に向くように設置される。また、プロジェクタ１００６には、投影レンズとして広角レンズが取り付けられており、この広角レンズを通して、投影画像がスクリーン１００４の投影面全体に投影される。
【００２７】
制御基板１０２０には、ＣＰＵやＧＰＵ、ＤＳＰ等の各種マイクロプロセッサ、ＡＳＩＣ、ＶＲＡＭやＲＡＭ、ＲＯＭ等の各種ＩＣメモリが実装されている。そして、制御基板１０２０は、ＩＣメモリに記憶されたプログラムやデータ、ハンドル１００８やアクセルペダル１０１０、ブレーキペダル１００９等からの操作信号等に基づいて、カーレースゲームを実現するための各種処理を行う。
【００２８】
プレーヤは、プレーヤシート１００２に着座して、スクリーン１００４に表示されるゲーム画面を見、スピーカからのゲーム音声を聞きつつ、ハンドル１００６やアクセルペダル１０１０、ブレーキペダル１００９を操作してカーレースゲームを楽しむ。
【００２９】
本実施形態のカーレースゲームでは、仮想三次元空間に、レースコース等の背景オブジェクトが配置されてゲーム空間が構成される。このゲーム空間内には、プレーヤカーや他プレーヤカー等の各種オブジェクトが配置されるとともに、プレーヤカーのドライバーの位置に仮想視点（仮想カメラ）が配置される。そして、この仮想視点に基づくゲーム空間の画像（立体視画像）が、ゲーム画像として、プロジェクタ１００６によってスクリーン１００４に投影（表示）される。
【００３０】
［立体視画像の生成原理］
本実施形態では、右目用立体視画像と左目用立体視画像とを交互に時分割で表示させることで、立体視として視認可能とする。プレーヤは、偏光メガネ方式又は時分割方式（例えば、液晶シャッター方式）又は波長分光方式に分類される立体視メガネ（不図示）を装着することで、スクリーン１００４に表示（投影）される画像を、立体視として観察することができる。
【００３１】
また、本実施形態において仮想三次元空間（ゲーム空間）と現実空間との対応関係（縮尺）は１：１とするが、これはゲームによって任意に設定可能である。例えば、プレーヤキャラクタを昆虫のように小さなキャラクタとして、ゲーム世界を旅するゲームであるならば、仮想三次元空間（ゲーム空間）と現実空間との対応関係（縮尺）は１：２５等と設定される。
【００３２】
それでは、本実施形態における立体視画像の生成原理を説明する。先ず、図３に示すように、プレーヤがプレーヤシート１００２に着座した状態の観察者（プレーヤ）の右目及び左目それぞれの想定位置を想定観察位置とする。そして、想定観察位置に相当する仮想三次元空間（ゲーム空間）中の位置に仮想視点１０（右目用仮想視点１０ａ及び左目用仮想視点１０ｂ）を配置する。仮想三次元空間と現実空間との対応関係（縮尺）が１：１であるため、図３では、仮想三次元空間と現実空間とを合わせて図示している。説明の簡明化のため、以下も同様に、仮想三次元空間と現実空間とを同座標とみなして同義的に図示・説明する。
【００３３】
また、図４に示すように、仮想三次元空間に２枚の仮想平面２０ａ，２０ｂを設定する。この仮想平面２０ａ，２０ｂは、スクリーン１００４の投影面を模擬した平面であり、仮想視点１０の視界をカバーする（視界の範囲を含む・覆う）サイズ及び位置に設定される。具体的には、２枚の仮想平面２０ａ，２０ｂを、鉛直、且つ、投影面１００４に外接するように位置決めする。また、２枚の仮想平面２０ａ，２０ｂは、各面が仮想視点１０に向くよう左右に並べて連接角度を９０度として連接し、仮想視点１０から見たときに、その連接部分が想定正視方向に位置するように設定される。
なお、仮想平面２０ａ，２０ｂがカバーする範囲は、必ずしも仮想視点１０の視界全てを含む必要はなく、最終的にスクリーン１００４に表示（投影）される範囲に相当する範囲をカバーできていればよい。
【００３４】
仮想平面２０ａ，２０ｂを設定したならば、この仮想平面２０ａ，２０ｂを透視投影変換用のスクリーンとして利用して、平面画像３２を生成する。具体的には、図５、図６に示すように、仮想視点１０をもとに、三次元仮想空間を仮想平面２０に透視投影変換した平面画像３２を生成する。立体視であるため、勿論、右目用仮想視点１０ａに基づく右目用平面画像３２ａと、左目用仮想視点１０ｂに基づく左目用平面画像３２ｂとを生成する。
【００３５】
先ず、右目用仮想視点１０ａについて説明すると、図５に示すように、右目用仮想視点１０ａをもとに、三次元仮想空間を仮想平面２０ａに透視投影変換した平面画像３０ａと、仮想平面２０ｂに透視投影変換した平面画像３０ｂとを生成する。そして、この２枚の平面画像３０ａ，３０ｂを結合して、２枚の仮想平面２０ａ，２０ｂを一つの平面とみなした右目用平面画像３２ａを生成する。
【００３６】
また、左目用仮想視点１０ｂについても同様に、図６に示すように、三次元仮想空間を仮想平面２０ａ，２０ｂに透視投影変換した左目用平面画像３２ｂを生成する。
【００３７】
ここで、左右の仮想視点１０ａ，１０ｂでありながら、同じ仮想平面２０ａ，２０ｂを透視投影変換用の仮想スクリーンとする。最終的には、一旦仮想平面に描画したものをスクリーン１００４に合わせるための補正を行うので、仮想スクリーンは必ずしも左右で共通である必要はない。しかし、左右で共通の仮想スクリーンを用いることで、描画プログラムをシンプルにでき、描画される様子も直感的に理解し易くなり、調整やデバッグがし易くなるというメリットがある。
【００３８】
平面視の画像を生成するための一般的な透視投影変換処理は、視線方向と上下画角、左右画角を設定することで、仮想スクリーンが視線方向と直交し、この交点が仮想スクリーンの長方形の中心となるように設定される。しかし、左右の仮想視点１０ａ，１０ｂにこの従来方法を適用すると、図７に示すように、仮想スクリーンが左右で一致しないことによるキーストーン（台形）歪みによる垂直視差が発生する。
【００３９】
これを避けるためには、図８に示すように、左右の仮想視点１０ａ，１０ｂに共通の仮想スクリーンが設定されなければならない。このための透視投影変換処理としては、例えば、視錐台の作成に当たり、次式（１）のような射影行列を用いれば良い。３行１列成分と、３行２列成分がゼロ（０）でないことによって、視点から仮想スクリーンに下ろした垂線の足が仮想スクリーンの中心からずれた、いわゆる「スキュー」された変換行列を設定することができる。なお、式（１）における「α」及び「β」は、前方クリップ面と後方クリップ面の変換前と変換後のＺ位置によって決定される。
【数１】
2013211672.tif 000003
【００４０】
図９に示すように、ｗは共通スクリーンの横幅、ｈは共通スクリーンの縦幅、（ｘ，ｙ，ｚ）及び（ｘｃ，ｙｃ，ｚｃ）はそれぞれ共通スクリーンの中心を原点としたスクリーン座標及び仮想視点の位置座標である。共通スクリーンに対する左右方向をｘ座標方向、縦方向をｙ座標方向、奥行方向をｚ座標方向とする。従って、ｚｃは、共通スクリーンと仮想視点間の距離を示している。
【００４１】
ＯｐｅｎＧＬ（登録商標）やＤｉｒｅｃｔＸ（登録商標）等の汎用的なＣＧ描画システムでは、仮想視点（仮想カメラ）の方向は、仮想スクリーンの向き（法線）を決定するのに用いられる。左右の仮想視点１０ａ，１０ｂに対する仮想平面２０ａは、左右の仮想カメラ１０ａ，１０ｂそれぞれ別個に、図１０（ａ）に示すように、その方向が仮想平面２０ａに垂直になるようにした上で、上記のスキュー成分を設定する必要がある。左右の仮想視点１０ａ，１０ｂに対する仮想平面２０ｂについても同様に、図１０（ｂ）に示すように、左右の仮想視点１０ａ，１０ｂそれぞれの方向を、仮想平面２０ｂに垂直に向けた上で、上記のスキュー成分を設定する。
【００４２】
この設定を一旦行って仮想スクリーンを決定してしまえば、以後は、左右の仮想視点１０ａ，１０ｂはその位置だけが重要であり、方向はどちらを向いていても同じと解釈できる。そのため、以後の説明では、直感的な分かりやすさを優先して、左右の仮想視点１０ａ，１０ｂは正面方向を向いているものとして記載している。
【００４３】
平面画像３２（３２ａ，３２ｂ）は、仮想平面２０に透視投影変換して生成した画像である。つまり、この平面画像３２を、そのまま、曲面であるスクリーン（投影面）１００４に投影すると、観察される画像は歪んで見える。詳細には、仮想平面２０と投影面１００４との接触位置近傍については歪みが比較的小さいが、この接触位置から離れるにつれて、観察される画像の歪みが大きくなる。
【００４４】
そこで、この歪みを補正するために、平面画像３２に対する座標変換処理を行って、投影用の画像（投影画像）４０を生成する。具体的には、投影画像４０の位置と仮想平面２０上の投影位置（すなわち、平面画像３２の位置）と対応関係を求め、この対応関係と、平面画像３２とから投影画像４０を生成する。この対応関係は、右目用仮想視点１０ａに基づく右目用平面画像３２ａ、及び、左目用仮想視点１０ｂに基づく左目用平面画像３２ｂのそれぞれについて求めるが、どちらも同じ方法によって求めることができる。
【００４５】
図１１は、投影画像４０の一例である。先ず、図１１に示すように、投影画像４０を構成する各画素のうち、一つの画素を「対象画素ＰＥ」とする。次いで、対象画素ＰＥが、プロジェクタ１００６から広角レンズを介して射出される光線を算出する。本実施形態では、広角レンズとして「ｆθレンズ」を用いることとする。図１２は、ｆθレンズの特性を説明する図である。同図に示すように、ｆθレンズには、位置Ｆからレンズの中心Ｏを通る光線の射出角度θは、ｆθレンズの中心Ｏから距離Ｌに比例する特徴がある。
【００４６】
図１３は、対象画素からの射出光線の算出を説明する図である。プロジェクタ１００６の投影中心方向を投影レンズ（ｆθレンズ）の中心Ｏを通る方向とし、この方向に投影画像４０の中心Ｏ’が位置するとすると、対象画素ＰＥからの射出光線Ｖ１は、投影画像４０に対する鉛直方向（すなわち、プロジェクタ１００６の投影中心方向）に対して、投影画像４０の中心Ｏ’から対象画素ＰＥまでの距離Ｌに比例した射出角度θの方向となる。
【００４７】
次いで、図１４に示すように、対象画素ＰＥの射出光線Ｖ１と投影面１００４との交点Ｐを算出する。続いて、図１５に示すように、仮想視点１０からこの交点Ｐを見た視線Ｖ２を求める。仮想視点１０の位置は想定観察位置に対応するため、図１５のように示される。そして、この視線Ｖ２と仮想平面２０との交点Ｑを算出する。この交点Ｑが、投影画像４０の対象画素ＰＥに対応する仮想平面２０上の位置（すなわち、平面画像３２の位置）となる。
【００４８】
投影画像４０の全ての画素について、同様に、対応する仮想平面２０上の位置を求める。そして、投影画像４０の各画素の色を、対応する平面画像３２の画素位置の色とすることで、歪みの無い立体視を実現できる。
【００４９】
このようにして求めた投影画像４０上の画素位置と平面画像３２上の画素位置との対応関係を、「画素位置対応マップ５０」と呼ぶ。この画素位置対応マップ５０は、右目用仮想視点１０ａについての「右目用画素位置対応マップ５０ａ」と、左目用仮想視点１０ｂについての「左目用画素位置対応マップ５０ｂ」とが生成される。
【００５０】
なお、右目と左目の位置、仮想平面、スクリーン形状を含む描画環境が左右対称である場合、右目用画素位置対応マップ５０ａを左右反転したものが、左目用画素位置対応マップ５０ｂとなる。これを利用すると、画素位置対応マップ５０を１枚で済ませることができるので、画素位置対応マップ５０の計算時間、及び、それを保持しておくメモリ容量を節約することができる。
【００５１】
画素位置対応マップ５０は、仮想平面２０のサイズ及び配置位置が変化せず、且つ、観察者の左右両眼の位置が大きく変化しない前提においては固定であるため、画像生成の前に予め生成しておいてもよいし、画像生成の際に生成することとしてもよい。
【００５２】
画像生成の際に生成することとする場合、その処理が十分高速に行うことができ、且つ、観察者の左右両眼の位置をヘッドトラッキングやアイトラッキングによって精確且つ高速に検出することができれば、これを反映した左右の仮想視点１０ａ，１０ｂの位置による画素位置対応マップ５０をリアルタイムに作成することで、観察者が頭を動かした場合にも対応でき、より自然な立体視の表示が可能となる。
【００５３】
また、この処理をリアルタイムに行うことができなくても、最初の設定時に観察者の左右両眼の位置を１回だけ取得することができれば、それに合わせた画素位置対応マップ５０を作成することで、その観察者に合わせたより適切な立体視映像を生成することができる。
【００５４】
また、左右の仮想視点１０ａ，１０ｂの位置を最初は両眼の中心の位置に設定し、そこから徐々に左目及び右目の位置まで広がってゆくように設定した上で、それに対応した画素位置対応マップ５０（予め全ての仮想視点１０ａ，１０ｂの位置に対応させて作成しておいても良いし、その場で高速に作成しても良い）を適用することで、従来のドームスクリーンによる「ドームの壁に張り付いた状態」の映像から、徐々に空間が広がっているかのように見える効果的な演出を行うことができる。
【００５５】
平面画像３２（３２ａ，３２ｂ）と、画素位置対応マップ５０（５０ａ，５０ｂ）とを用いて投影画像４０（左右視点それぞれ用の投影画像）が生成できれば、あとは投影画像４０をプロジェクタ１００６から投影すればよい。
【００５６】
以上原理を説明したが、最終的に生成する画像は投影画像４０である。そのため、先に平面画像３２を生成せずに、次のようにして投影画像４０を生成すると合理的である。すなわち、図１６に示すように、投影画像４０の各画素に対応する平面画像３２上の画素を画素位置対応マップ５０から求める。そして、求めた平面画像３２上の画素についてのみ色情報を描画演算し、この色情報を、もとの投影画像４０の画素の色情報とする。これを、投影画像４０の各画素について行うことで、投影画像４０の色情報を決定する。平面画像３２が投影画像４０よりも大きな画像であれば、この描画処理方法は描画負荷を低減させることにつながるため、有効である。
【００５７】
以上に示した描画処理では、画素位置対応マップ５０は、投影画像４０の画素１つ１つに対応させて作成されるため、投影画像４０の画素数に対応したサイズのマップが必要になる。そのため、ハードウェアの条件によっては、この巨大なマップをメモリ上に保持しておくことが困難な場合がある。また、マップの計算にも時間がかかる。
【００５８】
これを解決するために、ポリゴンの頂点座標を利用する方法がある。具体的に説明する。図１７（ｂ），図１８（ｂ）に示すように、平面画像３２をメッシュ状に分割する。但し、このメッシュのパターンは一例であって、勿論、これ以外でも良い。そして、各メッシュのポリゴン（図１７，図１８では三角形）の頂点座標（Ｕ，Ｖ）に相当する投影画像４０上の位置（Ｘ，Ｙ）を求め、これらの各ポリゴンの各頂点について、投影画像４０上の座標（Ｘ，Ｙ）と平面画像３２上の座標（Ｕ，Ｖ）との組を「座標対応関係データ」として保持しておく。そして、この座標対応関係データにて定められる、投影画像４０上の各メッシュを構成するポリゴンの頂点座標（Ｘ，Ｙ）に対応する平面画像３２上の位置（Ｕ，Ｖ）を参照して、投影画像４０を生成する。
【００５９】
図１７は、右目用仮想視点２０ａについて示しており、図１８は、左目用仮想視点２０ｂについて示している。また、図１７（ａ），図１８（ａ）は、投影画像４０上のメッシュを示し、図１７（ｂ），１８（ｂ）は、平面画像３２上のメッシュを示している。
【００６０】
このとき、一般的なＧＰＵにおけるテクスチャ付きポリゴン描画の仕組みを利用できる。すなわち、各ポリゴンの頂点のテクスチャ座標（Ｕ，Ｖ）が参照され、ポリゴンの内部については各頂点から得られる座標値を補間した座標（Ｕ，Ｖ）をもとに、平面画像３２上のピクセル値が取得されるように描画が行われるようにする。このようにすることで、投影画像４０の画素数に対応したマップよりも遙かに少ないメモリ量で、画素位置の対応関係を保持しておくことができる。また、計算量も少なくなるため、より高速な座標位置対応データの作成が可能となる。
【００６１】
勿論、この方法は補間を用いているため、投影画像４０の画素数のマップ（画素位置対応マップ５０）を用意するよりは不正確なものとなる。しかし、メッシュの分割数は自由に増減できるため、画像の正確さとメモリ量及び計算時間のどれを優先するかを考慮した座標対応関係データを適切に作成することができる。
【００６２】
［機能構成］
図１９は、本実施形態のゲームシステム１の機能構成を示すブロック図である。図１９によれば、ゲームシステム１は、機能的には、操作入力部１１０と、画像表示部１２０と、音声出力部１３０と、通信部１４０と、処理部２００と、記憶部３００とを備えて構成される。
【００６３】
操作入力部１１０は、プレーヤによる操作指示を受け付け、操作指示に応じた操作信号を処理部２００に出力する。この機能は、例えばボタンスイッチやレバー、マウス、キーボード、各種センサ等によって実現される。図１では、ハンドル１００８やアクセルペダル１０１０、ブレーキペダル１００９がこれに該当する。
【００６４】
処理部２００は、記憶部３００から読み出したプログラムやデータ、操作入力部１１０からの操作信号等に基づいて、ゲームシステム１の全体制御やゲーム進行、画像生成等の各種演算処理を行う。また、処理部２００は、主にゲームの実行に係る演算処理を行うゲーム演算部２１０と、立体視画像生成部２２０と、音声生成部２３０と、通信制御部２４０とを有する。
【００６５】
ゲーム演算部２１０は、操作入力部１１０から入力されるプレーヤのゲーム操作等をもとに、ゲーム制御プログラム３１２に従った処理を行うことで、カーレースゲームの進行制御を行う。
【００６６】
立体視画像生成部２２０は、仮想視点設定部２２１と、仮想平面設定部２２２と、透視投影変換部２２３と、投影画像生成部２２４とを有し、ゲーム演算部２１０による演算結果に基づき、画像表示部１２０に表示させる立体視画像（映像）を生成する。詳細には、所定の画像生成タイミング（例えば、１／１２０秒間隔）で、右目用仮想視点１０ａに基づく右目用立体視画像と、左目用仮想視点１０ｂに基づく左目用立体視画像とを生成し、生成した画像の画像信号を画像表示部１２０に出力する。この機能は、デジタルシグナルプロセッサ（ＤＳＰ）等のプロセッサ、その制御プログラム、フレームバッファ等の描画フレーム用ＩＣメモリ等で実現される。
【００６７】
仮想視点設定部２２１は、ゲーム空間に、プレーヤ（観察者）の両目に相当する仮想視点１０（右目用仮想視点１０ａ及び左目用仮想視点１０ｂ）を設定する。
【００６８】
仮想平面設定部２２２は、上述した原理に従って、ゲーム空間に、仮想平面２０ａ，２０ｂを設定する。
【００６９】
透視投影変換部２２３は、仮想視点１０をもとに、ゲーム空間を仮想平面２０に透視投影変換した平面画像３２を生成する。詳細には、右目用仮想視点１０ａをもとに、ゲーム空間を仮想平面２０ａ，２０ｂそれぞれに透視投影変換した平面画像３０ａ，３０ｂを生成する。そして、この２枚の平面画像３０ａ，３０ｂを結合して、１枚の右目用平面画像３２ａを生成する（図５参照）。また、左目用仮想視点１０ｂについても同様に、左目用仮想視点１０ｂをもとに、ゲーム空間を仮想平面２０ａ，２０ｂそれぞれに透視投影変換した平面画像３０ｃ，３０ｄを生成し、生成した２枚の平面画像３０ｃ，３０ｄを結合して、１枚の左目用平面画像３２ｂを生成する。
【００７０】
生成された平面画像３２は、平面画像バッファ３３０に格納される。平面画像バッファ３３０は、右目用平面画像３２ａ、及び、左目用平面画像３２ｂの２枚の画像の格納領域を有している。
【００７１】
投影画像生成部２２４は、透視投影変換部２２３によって生成された平面画像３２と、画素位置対応マップ５０とを用いて左右視点それぞれ用の投影画像を生成する。生成した投影画像は、立体視画像として画像表示部１２０に表示される。詳細には、右目用投影画像の各画素について、右目用画素位置対応マップ３２１を参照して、当該画素に対応する右目用平面画像３２ａの画素の色情報を設定することで、右目用投影画像を生成する。また、左目用平面画像３２ｂについても同様に、各画素について、左目用画素位置対応マップ３２２を参照して、当該画素に対応する左目用平面画像３２ｂの画素の色情報を設定することで、左目用投影画像を生成する。
【００７２】
生成された投影画像は、投影画像バッファ３４０に格納される。投影画像バッファ３４０は、右目用投影画像、及び、左目用投影画像の２枚の画像の格納領域を有している。
【００７３】
画像表示部１２０は、立体視画像生成部２２０からの画像信号に基づき、右目用立体視画像と左目用立体視画像とを交互に時分割で表示する曲面ディスプレイである。この機能は、例えば、図１に示した曲面状のスクリーン１００４及びプロジェクタ１００６の組合せ等によって実現される。
【００７４】
音声生成部２３０は、ゲーム中に使用される効果音やＢＧＭ等のゲーム音を生成し、生成したゲーム音の音信号を音声出力部１３０に出力する。音声出力部１３０は、音声生成部２３０から入力される音信号に基づいて、効果音やＢＧＭ等のゲーム音を放音出力する。この機能は、例えばスピーカ等によって実現される。
【００７５】
記憶部３００は、処理部２００にゲームシステム１を統合的に制御させるための諸機能を実現するシステムプログラムや、ゲームを実行させるために必要なプログラムやデータ等を記憶するとともに、処理部２００の作業領域として用いられ、処理部２００が各種プログラムに従って実行した演算結果や、操作入力部１１０からの入力データ等を一時的に記憶する。この機能は、例えばＩＣメモリやハードディスク、ＣＤ−ＲＯＭ、ＤＶＤ、ＭＯ、ＲＡＭ、ＶＲＡＭ等の記憶装置によって実現される。図１では、制御基板１０２０に実装されているＩＣメモリ等がこれに該当する。本実施形態では、記憶部３００には、システムプログラム３１０と、ゲーム制御プログラム３１２と、立体視画像生成プログラム３１４と、画素位置対応マップ５０とが記憶されるとともに、平面画像バッファ３３０と、投影画像バッファ３４０とが構成されている。
【００７６】
［処理の流れ］
図２０は、ゲーム処理の流れを説明するフローチャートである。ゲーム処理では、先ず、ゲーム演算部２１０が、ゲーム空間の初期設定を行う（ステップＡ１）。その後、所定のフレーム時間間隔で、ループＡの処理を繰り返し実行する。
【００７７】
ループＡでは、ゲーム演算部２１０が、操作入力部１１０から入力されるプレーヤの操作指示に従ったゲームの進行制御を行う（ステップＡ３）。次いで、立体視画像生成部２２０が、立体視画像の生成を行う。
【００７８】
すなわち、仮想視点設定部２２１が、ゲーム空間に仮想視点１０（右目用仮想視点１０ａ及び左目用仮想視点１０ｂ）を設定する（ステップＡ５）。次いで、仮想平面設定部２２２が、ゲーム空間に仮想平面２０ａ，２０ｂを設定する（ステップＡ７）。
【００７９】
続いて、透視投影変換部２２３が、右目用仮想視点１０ａをもとに、ゲーム空間を仮想平面２０ａ，２０ｂに透視投影変換した右目用平面画像３２ａを生成する（ステップＡ９）。そして、投影画像生成部２２４が、この右目用平面画像３２ａをもとに、右目用画素位置対応マップ５０ａを参照して、右目用投影画像４０ａを生成する（ステップＡ１１）。また、透視投影変換部２２３が、左目用仮想視点１０ｂをもとに、ゲーム空間を仮想平面２０ａ，２０ｂに透視投影変換した左目用平面画像３２ｂを生成する（ステップＡ１３）。次いで、投影画像生成部２２４が、この左目用平面画像３２ｂをもとに、左目用画素位置対応マップ５０ｂを参照して、左目用投影画像４０ｂを生成する（ステップＡ１５）。
【００８０】
そして、これらの右目用投影画像４０ａ及び左目用投影画像４０ｂを画像表示部１２０に表示させる（ステップＡ１７）。その後、ゲーム演算部２１０は、ゲームを終了するか否かを判断し、終了するならば（ステップＡ１９：ＹＥＳ）、ループＡの処理を終了し、本ゲーム処理を終了する。
【００８１】
［作用効果］
本実施形態によれば、仮想三次元空間（ゲーム空間）に左右の仮想視点１０（１０ａ，１０ｂ）が設定され、この左右の仮想視点１０の視線方向に当該仮想視点１０の視界の範囲を少なくともカバーするための複数の仮想平面２０ａ，２０ｂが設定される。次いで、この仮想視点１０に基づき仮想三次元空間が仮想平面２０ａ，２０ｂに透視投影変換処理されることで、平面画像３２ａ，３２ｂが生成される。そして、想定観察位置からスクリーン１００４を見た場合に平面画像３２ａ，３２ｂが歪み無く見えるように仮想平面２０ａ，２０ｂ上の画素位置と投影画像４０上の画素位置との対応関係が定められた画素位置対応マップ５０と、生成された平面画像３２ａ，３２ｂとを用いて、投影画像４０が生成される。このようにして生成された投影画像４０が広角レンズを介して曲面状のスクリーン１００４に投影されることで、想定観察位置からスクリーン１００４を見ると、立体視画像として観察することが可能となる。
【００８２】
また、副次的な効果として次の効果が得られた。すなわち、曲面スクリーンで立体視でない２Ｄ映像を観察する場合、曲面スクリーンが壁として認識されてしまう場合があったが、本実施形態の技術を適用した立体視映像によれば、曲面スクリーンの壁が取り払われたかのような開放感を味わうことが可能となった
【００８３】
また、本実施形態によれば、スクリーン１００４は、プレーヤシート１００２に着席したプレーヤの想定正視方向に凸状の形状を有しており、プロジェクタ１００６は、投影中心方向が、想定正視方向とスクリーン１００４との交点位置に向けて設置されてなる。これにより、観察される立体視映像は、スクリーン１００４の端部に比べて想定正視方向付近の方が歪みが抑えられ、プレーヤシート１００２に着席して立体視映像を観察する際の立体視の視認性を向上させることができた。
【００８４】
また、仮想平面２０は、２枚の仮想平面２０ａ，２０ｂが左右方向に連接され、且つ、仮想視点１０に向けて設定される。これにより、ドームスクリーンに表示させる立体視画像の描画演算における問題の１つである描画負荷を最小限に抑えることが可能となった。
【００８５】
［変形例］
なお、本発明の適用可能な実施形態は、上述の実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で適宜変更可能なのは勿論である。
【００８６】
（Ａ）仮想平面２０ａ，２０ｂの設定
上述の実施形態では、仮想平面２０ａ，２０ｂは、スクリーン１００４との相対位置関係が固定的に設定されるが、この相対位置関係を可変に設定することにしても良い。
【００８７】
仮想平面２０ａ，２０ｂは、曲面であるスクリーン１００４の投影面を近似するための面として設定される。このため、地球儀を円筒に投影したメルカトル図法のように、スクリーン１００４の曲面と仮想平面２０ａ，２０ｂとは、部分的に拡大や縮小（拡縮）をして対応が取られている。他方、立体視として視認させるためには、精密に計算された左右の視差画像が要求される。従って、拡縮度合いによって、スクリーン（投影面）１００４上には、立体視として視認し易い場所とし難い場所とが存在し得る。具体的には、図４の例であれば、スクリーン１００４と仮想平面２０ａ，２０ｂとの接触位置近傍が拡縮による歪みが比較的少ないために最も視認し易く、この接触位置から離れるほど、視認し難くなる傾向がある。
【００８８】
さて、ゲームの進行状況によって、プレーヤに着目して欲しい位置や、プレーヤが着目する傾向にある位置は異なる。例えば、レースゲームであれば、平坦な直進コースを走行している場合には、プレーヤの正面方向が着目点となるであろうし、上り坂の直進コースであれば、正面方向やや上に着目点が位置するであろう。また、右カーブであれば、カーブの先に目線を向けるため、正面方向よりも右側に着目点が位置するであろう。このことから、ゲーム状況によって変化し得る着目点が仮想平面２０ａ，２０ｂとスクリーン（投影面）１００４との接触位置となるように、仮想平面２０ａ，２０ｂの設定（仮想平面２０ａ，２０ｂとスクリーン（投影面）１００４との相対位置関係）を変更することとしてもよい。
【００８９】
例えば、２枚の仮想平面２０ａ，２０ｂの連接角度を可変としてもよい。着目点がスクリーン１００４の左右いずれかの端部方向に移動する場合には、連接角度を徐々に小さくする。こうすることで、スクリーン１００４の左右端部方向に接触位置がずれる。一方、着目点がスクリーン１００４の左右中心に移動する場合には、連接角度を徐々に大きくする。こうすることで、スクリーン１００４の中央方向に接触位置がずれる。なお、連接角度の変化に伴って、仮想平面２０ａ，２０ｂの大きさを変更する必要が生じ得る。仮想平面２０ａ，２０ｂは、仮想視点１０の視界の多くを覆う必要があるためである。
【００９０】
また、図２１に一例を示すように、連接角度はそのままに、仮想視点１０に対する仮想平面２０ａ，２０ｂの相対角度を変化させることにしても良い。すなわち、仮想視点１０に対する仮想平面２０ａ，２０ｂの相対角度を変化させる。仮想視点１０から見て着目点が上方向に移動する場合には、図２１のように、仮想視点１０に対して上方向に仮想平面２０ａ，２０ｂの相対角度を変化させる。こうすることで、スクリーン１００４の上方向に接触位置がずれる。着目点が下方向に移動する場合はこの逆となる。
【００９１】
また、連接角度の変更、及び、仮想視点１０に対する相対角度の変更の双方を行うこととしても良いことは勿論である。
【００９２】
（Ｂ）仮想平面の設定数
上述した実施形態では、仮想平面２０を仮想平面２０ａ，２０ｂの２枚として説明したが、この数は任意である。例えば、図４（ｂ）に示すように２枚の仮想平面２０を上面視“く”の字状に連接配置することとしたが、図２２（ａ）に示すように、３枚の仮想平面２０を上面視“コ”の字状に連接配置することとしてもよいし、図２２（ｂ）に示すように、上面視が台形形状となるように連接配置することとしても良い。
【符号の説明】
【００９３】
１  ゲームシステム
１１０  操作入力部、１２０  画像表示部、１３０  音声出力部、１４０  通信部
２００  処理部
２１０  ゲーム演算部
２２０  立体視画像生成部
２２１  仮想視点設定部、  ２２２  仮想平面設定部
２２３  透視投影変換部、２２４  投影画像生成部
３００  記憶部
３１０  システムプログラム
３１２  ゲーム制御プログラム、３１３  立体視画像生成プログラム
５０  画素位置対応マップ
３３０  平面画像バッファ、３４０  投影画像バッファ
【図１】
2013211672.tif 000004
【図２】
2013211672.tif 000005
【図３】
2013211672.tif 000006
【図４】
2013211672.tif 000007
【図５】
2013211672.tif 000008
【図６】
2013211672.tif 000009
【図７】
2013211672.tif 000010
【図８】
2013211672.tif 000011
【図９】
2013211672.tif 000012
【図１０】
2013211672.tif 000013
【図１１】
2013211672.tif 000014
【図１２】
2013211672.tif 000015
【図１３】
2013211672.tif 000016
【図１４】
2013211672.tif 000017
【図１５】
2013211672.tif 000018
【図１６】
2013211672.tif 000019
【図１９】
2013211672.tif 000020
【図２０】
2013211672.tif 000021
【図２１】
2013211672.tif 000022
【図２２】
2013211672.tif 000023
【図１７】
2013211672.tif 000024
【図１８】
2013211672.tif 000025