(57)【特許請求の範囲】
【請求項１】
ＵＶＷ三次元直交座標系内において、ＵＶ平面を水平面とし、Ｗ軸を鉛直軸として定義された三次元仮想空間を構成する個々の要素についての三次元画像データを記憶する三次元画像データ記憶手段と、
前記ＵＶＷ座標系内におけるＵＶ平面上の位置Ｐを示す座標値（ｕ，ｖ）と、前記位置Ｐもしくはその鉛直上方位置Ｐ′を始点として定義された視線ベクトルＥのＵＶ平面に対する角度θおよびＵＷ平面に対する角度φと、前記視線ベクトルＥが示す方向にある三次元仮想空間構成要素の投影倍率を示す倍率値Ｍと、からなる姿勢状態データを記憶する姿勢状態データ記憶手段と、
前記三次元画像データと前記姿勢状態データとに基づいて、位置Ｐもしくはその鉛直上方位置Ｐ′から視線ベクトルＥの方向を眺めたときの状態を倍率値Ｍに基づいて投影した二次元視界画像を示す視界画像データを生成する視界画像データ生成手段と、
前記視界画像データに基づいて二次元視界画像を表示する表示手段と、
ＸＹＺ三次元直交座標系におけるＸ軸方向の操作量と、Ｙ軸方向の操作量と、Ｚ軸方向の操作量と、を検出し、検出した各操作量を出力する三次元操作量センサと、
第１の状態および第２の状態のいずれか一方を選択的に設定できる設定スイッチと、
前記三次元操作量センサの出力および前記設定スイッチの設定に基づいて、前記姿勢状態データ記憶手段内の姿勢状態データを更新する姿勢状態データ更新手段と、
を備え、前記姿勢状態データ更新手段は、
前記設定スイッチが第１の状態にあるときには、視線ベクトルＥをＵＶ平面上に投影することにより得られる投影ベクトルＦを考慮して、Ｘ軸方向の操作量に基づいてＵＶ平面上の位置Ｐを前記投影ベクトルＦに直交する方向に移動するように座標値（ｕ，ｖ）を更新し、Ｙ軸方向の操作量に基づいてＵＶ平面上の位置Ｐを前記投影ベクトルＦの示す方向あるいはその逆方向に移動するように座標値（ｕ，ｖ）を更新し、
前記設定スイッチが第２の状態にあるときには、Ｘ軸方向の操作量に基づいて角度φを増減し、Ｙ軸方向の操作量に基づいて角度θを増減し、
前記設定スイッチの設定にかかわらず、もしくは、前記設定スイッチがいずれか一方の状態にあるときに、Ｚ軸方向の操作量に基づいて倍率値Ｍを増減する機能を有することを特徴とする三次元仮想空間の体験装置。
【請求項２】
請求項１に記載の体験装置において、
２つの状態のいずれか一方を選択的に設定できる補助設定スイッチを更に設け、
三次元操作量センサとして、Ｚ軸方向の操作量に関しては、正の操作量＋Ｚおよび負の操作量−Ｚのうちの少なくとも一方の操作量を検出できるセンサを用い、
姿勢状態データ更新手段が、前記補助設定スイッチの状態に基づいて、前記Ｚ軸方向の操作量の符号を反転した取り扱いを行うように構成したことを特徴とする三次元仮想空間の体験装置。
【請求項３】
請求項１または２に記載の体験装置において、
三次元操作量センサをキーボード上に設け、キーの間隙に立設した操作棹を操作することによって操作量の入力が可能になるような構成とし、キーボード主面にほぼ沿った横方向をＸ軸、縦方向をＹ軸、キーボード主面にほぼ垂直な方向をＺ軸と定義し、前記操作棹を各座標軸方向に操作することにより各操作量の入力を行えるようにしたことを特徴とする三次元仮想空間の体験装置。
【請求項４】
請求項３に記載の体験装置において、
キーボード上の特定のキーを、設定スイッチもしくは補助設定スイッチとして用いるようにしたことを特徴とする三次元仮想空間の体験装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は三次元仮想空間の体験装置に関し、特に、三次元仮想空間内を移動しながら種々の対象物を自由自在に観察することが可能な三次元仮想空間の体験装置に関する。
【０００２】
【従来の技術】
近年、パーソナルコンピュータの普及により、ディスプレイ画面上に三次元仮想空間を投影し、この仮想空間内を自由に移動する体験を提供することができるようになってきた。たとえば、ゲームソフトウエアの分野では、コンピュータによって構築された三次元仮想空間内をプレーヤが探検してゆくようなジャンルのものが広く普及している。また、パソコン通信の普及により、いわゆるオンラインショッピングという販売方法が一般に定着しつつあり、特に、インターネットにより商品情報を提供する場合には、三次元仮想空間を体験させながら商品を紹介する方法が注目されている。たとえば、インターネットを利用して、顧客に対して、三次元仮想空間内に構築された疑似デパート内を歩きまわる体験を提供することにより、種々の商品を紹介するような提案もなされている。顧客は自宅に居ながらにして、あたかもデパート内を歩きまわるようにして種々の商品を見てまわることができ、しかも、興味のある商品については、これを所望の角度から十分に観察することも可能になる。
【０００３】
仮想空間内を自由に移動するためには、自分が望む移動方向をコンピュータに対して指示する必要がある。パーソナルコンピュータに対する入力デバイスとしては、キーボード、マウス、トラックボール、トラックパッド、ジョイスティック、グラフィックタブレットなどが一般に利用されているが、三次元仮想空間内における移動方向を指示するための入力デバイスとしては、通常、直観的に方向を指示する入力を行うことが便利なマウスやジョイスティックなどが利用されている。たとえば、ジョイスティックを用いれば、ステックを前方へ傾斜させることにより前進を指示し、後方へ傾斜させることにより後退を指示し、右方へ傾斜させることにより右転を指示し、左方へ傾斜させることにより左転を指示するといった入力形態を採ることができる。ユーザはこれらの指示を組み合わせることにより、三次元空間内を自由に移動することが可能になる。
【０００４】
【発明が解決しようとする課題】
コンピュータに搭載されるＣＰＵの性能やメモリの容量は年々著しく向上してきており、今後は、より現実に近い繊細な画像を非常にスムーズな動きをもってディスプレイ画面上に提示することが可能になるものと思われる。しかしながら、コンピュータ内部の画像データ処理機能が格段に向上したとしても、ユーザの意思をコンピュータへ伝達するインターフェイスが不十分であると、三次元仮想空間の体験装置全体の機能向上は望めない。すなわち、より現実に近い体験を提供するためには、ユーザがその意思どおりに自由自在に三次元空間内を移動することができ、見たい物を見たい態様で観察することができるような環境を整える必要がある。ところが、上述したように、パーソナルコンピュータにおける一般的な入力デバイスとしてのマウスやジョイスティックを用いたこれまでの指示入力の方法では、前後左右への移動を指示する程度の環境しか与えることができず、きわめて自由度が制限されていた。もちろん、キーボードを利用してコマンドの形式で指示入力を与えるようにすれば、原理的には無限種類の指示入力が可能であるが、直感的な操作にはならないため、人間にとって自然な指示入力にはならないという弊害が生じることになる。
【０００５】
そこで本発明は、直感的な自然な操作によって、できるだけ現実に近い自由度をもった体験を提示することができる三次元仮想空間の体験装置を提供することを目的とする。
【０００６】
【課題を解決するための手段】
(1)   本発明の第１の態様は、ＵＶＷ三次元直交座標系内において、ＵＶ平面を水平面とし、Ｗ軸を鉛直軸として定義された三次元仮想空間を構成する個々の要素についての三次元画像データを記憶する三次元画像データ記憶手段と、
ＵＶＷ座標系内におけるＵＶ平面上の位置Ｐを示す座標値（ｕ，ｖ）と、この位置Ｐもしくはその鉛直上方位置Ｐ′を始点として定義された視線ベクトルＥのＵＶ平面に対する角度θおよびＵＷ平面に対する角度φと、視線ベクトルＥが示す方向にある三次元仮想空間構成要素の投影倍率を示す倍率値Ｍと、からなる姿勢状態データを記憶する姿勢状態データ記憶手段と、
上述した三次元画像データと姿勢状態データとに基づいて、位置Ｐもしくはその鉛直上方位置Ｐ′から視線ベクトルＥの方向を眺めたときの状態を倍率値Ｍに基づいて投影した二次元視界画像を示す視界画像データを生成する視界画像データ生成手段と、
この視界画像データに基づいて二次元視界画像を表示する表示手段と、
ＸＹＺ三次元直交座標系におけるＸ軸方向の操作量と、Ｙ軸方向の操作量と、Ｚ軸方向の操作量と、を検出し、検出した各操作量を出力する三次元操作量センサと、
第１の状態および第２の状態のいずれか一方を選択的に設定できる設定スイッチと、
三次元操作量センサの出力および設定スイッチの設定に基づいて、姿勢状態データ記憶手段内の姿勢状態データを更新する姿勢状態データ更新手段と、
により三次元仮想空間の体験装置を構成し、姿勢状態データ更新手段が、
設定スイッチが第１の状態にあるときには、視線ベクトルＥをＵＶ平面上に投影することにより得られる投影ベクトルＦを考慮して、Ｘ軸方向の操作量に基づいてＵＶ平面上の位置Ｐを投影ベクトルＦに直交する方向に移動するように座標値（ｕ，ｖ）を更新し、Ｙ軸方向の操作量に基づいてＵＶ平面上の位置Ｐを投影ベクトルＦの示す方向あるいはその逆方向に移動するように座標値（ｕ，ｖ）を更新し、
設定スイッチが第２の状態にあるときには、Ｘ軸方向の操作量に基づいて角度φを増減し、Ｙ軸方向の操作量に基づいて角度θを増減し、
設定スイッチの設定にかかわらず、もしくは、設定スイッチがいずれか一方の状態にあるときに、Ｚ軸方向の操作量に基づいて倍率値Ｍを増減する機能を有するようにしたものである。
【０００７】
(2)   本発明の第２の態様は、上述の第１の態様に係る体験装置において、
２つの状態のいずれか一方を選択的に設定できる補助設定スイッチを更に設け、
三次元操作量センサとして、Ｚ軸方向の操作量に関しては、正の操作量＋Ｚおよび負の操作量−Ｚのうちの少なくとも一方の操作量を検出できるセンサを用い、
姿勢状態データ更新手段が、補助設定スイッチの状態に基づいて、Ｚ軸方向の操作量の符号を反転した取り扱いを行うように構成したものである。
【０００８】
(3)   本発明の第３の態様は、上述の第１または第２の態様に係る体験装置において、
三次元操作量センサをキーボード上に設け、キーの間隙に立設した操作棹を操作することによって操作量の入力が可能になるような構成とし、キーボード主面にほぼ沿った横方向をＸ軸、縦方向をＹ軸、キーボード主面にほぼ垂直な方向をＺ軸と定義し、操作棹を各座標軸方向に操作することにより各操作量の入力を行えるようにしたものである。
【０００９】
(4)   本発明の第４の態様は、上述の第３の態様に係る体験装置において、
キーボード上の特定のキーを、設定スイッチもしくは補助設定スイッチとして用いるようにしたものである。
【００１０】
【発明の実施の形態】
以下、本発明を図示する実施形態に基づいて説明する。図１は本発明に係る三次元仮想空間の体験装置の基本構成を示すブロック図である。ここで、三次元画像データ記憶手段１０は、ＵＶＷ三次元直交座標系内において、ＵＶ平面を水平面とし、Ｗ軸を鉛直軸として定義された三次元仮想空間を構成する個々の要素についての三次元画像データａを記憶する機能を有する。すなわち、図２に示すようなＵＶＷ三次元直交座標系を定義し、ＵＶ平面を床面とした仮想空間が形成される。たとえば、仮想デパートの空間を構成するのであれば、この三次元座標空間内に配置された陳列棚やショーウインドウなどの要素や、その中に置かれた種々の商品についての三次元画像データが用意されることになる。
【００１１】
姿勢状態データ記憶手段２０は、上述の三次元仮想空間内を移動するユーザの位置および姿勢を示す姿勢状態データｂを記憶する機能を有する。この姿勢状態データｂは、ＵＶＷ座標空間内でのユーザの現在地を示す座標値（ｕ，ｖ）と、このユーザの視線方向を示す視線ベクトルＥの向きを定義する角度（θ，φ）と、ユーザの注視対象物の表示倍率を示す倍率値Ｍと、から構成されている。座標値（ｕ，ｖ）は、図２に示すように、ＵＶＷ座標系内におけるＵＶ平面上の位置Ｐを示すパラメータであり、ユーザが仮想空間内の位置Ｐに立っているとの仮定の下で、以下の処理は行われる。
【００１２】
視線ベクトルＥは、この位置Ｐにいるユーザがどこを見ているかを示すパラメータである。ユーザの身長を無視すれば（すなわち、ユーザ自身を１点Ｐで表せば）、この視線ベクトルＥは位置Ｐを始点とするベクトルになる。ただ、この実施形態では図２に示すように、ユーザの身長（厳密には眼球までの高さ）をｈとして位置Ｐ（ｕ，ｖ）の鉛直上方に位置Ｐ′（ｕ，ｖ，ｈ）を定義し、この位置Ｐ′を始点とした視線ベクトルＥを定義している。また、後述する処理を行う上で、この視線ベクトルＥをＵＶ平面（床面）に投影することにより投影ベクトルＦを定義している。
【００１３】
本発明では、視線ベクトルＥは視線の方向を示すパラメータとして用いられているので、その方向成分は重要であるが、ベクトルの大きさ（長さ）に関する情報は必要としない。そこで、視線ベクトルＥを一対の角度（θ，φ）によって、その方向のみを定義している。すなわち、視線ベクトルＥのＵＶ平面に対する角度を角度θと定義し（この実施形態では、ＵＶ平面より上方を正、下方を負にとって、−９０°≦θ≦＋９０°なる範囲で角度θを定義）、視線ベクトルＥのＵＷ平面に対する角度を角度φと定義（この実施形態では、Ｕの値が正であるＵＷ平面を基準として、上方から見たときに反時計まわりの方向に角度が増加するようにφを定義しており、０°≦φ＜３６０°なる範囲をとる）している。図３は、図２に示す視線ベクトルＥの始点をＵＶＷ座標系の原点Ｏにまで平行移動した状態を示す図であり、角度θおよびφの定義方法が視覚的に示されている。結局、角度θは、視線ベクトルＥ（ベクトルＯＱ）と、これをＵＶ平面上に投影して得られる投影ベクトルＦ（ベクトルＯＱ′）とのなす角として定義され、角度φはＵ軸と投影ベクトルＦとのなす角として定義される。
【００１４】
一方、倍率値Ｍは、視線ベクトルＥが示す方向にある三次元仮想空間構成要素の投影倍率を示すものであり、いわば視線ベクトルＥの方向にある対象物についてのズーム倍率を示すパラメータである。位置Ｐが全く同じであっても、この倍率値Ｍが大きくなれば対象物により接近したような画像表示がなされ、この倍率値Ｍが小さくなれば対象物から遠ざかったような画像表示がなされることになる。
【００１５】
視界画像データ生成手段３０は、三次元画像データａと姿勢状態データｂとに基づいて、位置Ｐ′（ユーザの身長を無視する取り扱いを行う場合には位置Ｐ）から視線ベクトルＥの方向を眺めたときの状態を倍率値Ｍに基づいて投影した二次元視界画像を示す視界画像データｃを生成する機能を有する。別言すれば、視線ベクトルＥに対する直交面に所定の大きさをもった投影領域を定義し、三次元画像データａによって定義された三次元画像をこの投影領域上に二次元投影する処理が行われることになる。投影領域上に得られた二次元画像が視界画像に相当し、この視界画像を示す視界画像データｃが生成される。表示手段４０は、いわゆるディスプレイ装置であり、この視界画像データｃに基づいて二次元視界画像を表示する機能を有する。倍率値Ｍは、投影領域のサイズを決定するパラメータとなり、倍率値Ｍが大きいほど、小さな投影領域が定義され、投影領域内に投影された二次元の視界画像が表示手段の画面に大きく拡大されて表示されることになる。
【００１６】
以上のように、三次元画像データ記憶手段１０内に予め用意された三次元画像データａは同じであっても、姿勢状態データ記憶手段２０内の姿勢状態データｂによって表示手段４０の画面上に表示される内容は異なることになる。このように、同一の三次元空間内を観察していても、観察位置や視線方向によって異なった視界画像を体験することができる。
【００１７】
本発明に係る装置には、更に、三次元操作量センサ５０、設定スイッチ６０、姿勢状態データ更新手段７０が設けられている。ユーザは、三次元操作量センサ５０および設定スイッチ６０を用いて、姿勢状態データｂの内容を更新するための指示入力を与えることができる。姿勢状態データ更新手段７０は、この指示入力に基づいて、姿勢状態データｂの内容を更新する処理を実行する。こうして、姿勢状態データ記憶手段２０内の姿勢状態データｂが更新されると、その都度、視界画像データ生成手段３０によって新しい視界画像データｃが生成され、表示装置４０上に表示される視界画像はリアルタイムで更新されてゆく。
【００１８】
本発明の特徴は、ユーザによる直感的な自然な操作によって、比較的高い自由度をもった指示入力を実現できる点にあり、本発明に係る装置を用いれば、現実に近い自由度をもった体験を提示することができるようになる。このような指示入力は、三次元操作量センサ５０および設定スイッチ６０によって行われる。三次元操作量センサ５０は、ＸＹＺ三次元直交座標系（ここでは、説明の便宜上、三次元画像データａが定義されている三次元空間とは区別するために、ＵＶＷ三次元直交座標系とは別な座標系を用いることにする）におけるＸ軸方向の正および負の操作量＋Ｘ，−Ｘと、Ｙ軸方向の正および負の操作量＋Ｙ，−Ｙと、Ｚ軸方向の正および負の操作量＋Ｚ，−Ｚと、を検出し、検出した各操作量を出力する機能を有する。一方、設定スイッチ６０は、▲１▼移動モードか、▲２▼回転モードか、のいずれのモードにあるかを設定する機能を有する。
【００１９】
三次元操作量センサ５０としては、三次元座標系のいずれの座標軸について、いずれの方向（正方向か負方向か）に向かっての操作が行われたか、という情報を入力することができれば、どのようなセンサを用いてもかまわないが、ここで述べる実施形態では、静電容量式の三次元力センサを三次元操作量センサ５０として用いている。図４に、この静電容量式三次元力センサ５０の側断面図を示す。このような静電容量式センサについての詳細は、たとえば、特開平８−６７１１号公報などに開示されているので、ここでは簡単な構造説明および動作説明だけを行う。
【００２０】
この図４に示すセンサは、基板５１と蓋部材５２と操作棹５３とによって構成されており、基板５１の上面には５枚の電極Ｅ１〜Ｅ５が形成されている。図５は、このセンサから蓋部材５２および操作棹５３を除去した状態を示す上面図であり、基板５１上に形成された５枚の電極Ｅ１〜Ｅ５の形状および配置が明瞭に示されている（破線は、蓋部材５２の取り付け位置を示す）。
【００２１】
いま、この基板５１の上面がＸＹ平面に含まれるように、ＸＹＺ三次元直交座標系を定義する。操作棹５３は、Ｚ軸方向に伸びた円柱状の部材であり、蓋部材５２の上面中央部に固着されている。蓋部材５２は、基板５１上に形成された５枚の電極Ｅ１〜Ｅ５全体を覆うカバーとして機能するとともに、全体として１つの共通電極として機能する。すなわち、このセンサにおいて、基板５１および操作棹５３は絶縁材料によって構成されているが、５枚の電極Ｅ１〜Ｅ５および蓋部材５２は導電材料から構成されており、蓋部材５２の上面を構成する部分は、５枚の電極Ｅ１〜Ｅ５のすべてに対向する共通の電極としての役割を果たす。したがって、５枚の電極Ｅ１〜Ｅ５とこれに対向した共通電極とにより、５組の容量素子Ｃ１〜Ｃ５が形成されることになる。
【００２２】
また、蓋部材５２は、可撓性をもった導電材料（この例では、金属）から構成されており、操作棹５３に力が加えられると、その力に基づいて撓みを生じる性質を有する。たとえば、操作棹５３の上部に図のＸ軸正方向に向かう力が加えられると、電極Ｅ１に対向する蓋部材５２の一部は下がり、電極Ｅ３に対向する蓋部材５２の一部は上がるように、蓋部材５２全体に撓みが生じることになる。その結果、容量素子Ｃ１の電極間隔は短くなり静電容量値が増加し、容量素子Ｃ３の電極間隔は長くなり静電容量値が減少する。Ｘ軸負方向に向かう力が加わった場合には、これと逆の現象が起こる。したがって、Ｘ軸上に配置された容量素子Ｃ１，Ｃ３の静電容量値を電気的に測定すれば、操作棹５３の上部に対してＸ軸方向に加えられた力の向き（Ｘ軸正方向か負方向か）と、その大きさとを検出することが可能になる。同様に、Ｙ軸上に配置された容量素子Ｃ２，Ｃ４の静電容量値を測定すれば、操作棹５３の上部に対してＹ軸方向に加えられた力の向き（Ｙ軸正方向か負方向か）と、その大きさとを検出することが可能になる。
【００２３】
一方、操作棹５３に対して、図４の上方へと引っ張りあげる力（Ｚ軸正方向の力）が加えられた場合、電極Ｅ５に対向する中央部分が上がるように蓋部材５２全体に撓みが生じ、容量素子Ｃ５の電極間隔が長くなり静電容量値は減少する。逆に、操作棹５３に対して、図４の下方へと押し込む力（Ｚ軸負方向の力）が加えられた場合、電極Ｅ５に対向する中央部分が下がるように蓋部材５２全体に撓みが生じ、容量素子Ｃ５の電極間隔が短くなり静電容量値は増加する。したがって、容量素子Ｃ５の静電容量値を電気的に測定すれば、操作棹５３の上部に対してＺ軸方向に加えられた力の向き（Ｚ軸正方向か負方向か）と、その大きさとを検出することが可能になる。
【００２４】
こうして、図４および図５に示す静電容量式力センサは、本発明における三次元操作量センサ５０として機能し、ＸＹＺ各座標軸に沿った操作量±Ｘ，±Ｙ，±Ｚを検出し、検出した操作量を姿勢状態データ更新手段７０に与える機能を果たすことができる。なお、この図４および図５に示すセンサによれば、三次元座標系のいずれの座標軸について、いずれの方向（正方向か負方向か）に向かって、どの程度の量の操作が行われたか（すなわち、操作棹５３の上部にどの程度の力が加えられたか）という情報を入力することができるが、本発明に適用する上では、操作棹５３に加えられた力の量までを検出する機能はなくてもかまわない。たとえば、Ｘ軸に沿った操作量±Ｘに関しては、上述のセンサを用いれば、容量素子の静電容量値の測定値に基づき、＋３．２とか、−８．４といった具体的なスカラー値までを特定することが可能であるが、本発明では、必ずしもこのようなスカラー値まで特定する機能は必要なく、たとえば、Ｘ軸に沿った操作量に関しては、＋Ｘ方向の力が検出された（たとえば操作量＋１）、−Ｘ方向の力が検出された（たとえば操作量−１）、Ｘ軸方向には有意なレベルでの力検出はない（たとえば操作量０）、という３つの状態だけを認識する機能が備わっていれば十分である。
【００２５】
一方、設定スイッチ６０は、第１の状態（▲１▼移動モード）および第２の状態（▲２▼回転モード）のいずれか一方を選択的に設定できるスイッチであれば、どのようなスイッチを用いてもかまわない。２つの状態設定を切り替えることができるいわゆる「切り替えスイッチ」を用いてもよいし、通常は第１の状態を維持しつつ、指で押し続けている間だけは第２の状態になるようないわゆる「押しボタン式スイッチ」を用いてもよい。あるいは、１回押すごとに、２つの状態が交互に入れ替わるようないわゆる「トグルスイッチ」を用いてもよい。
【００２６】
本発明の特徴は、三次元操作量センサ５０と設定スイッチ６０との組み合わせによって、姿勢状態データ更新手段７０に対する指示入力を行うようにした点にある。設定スイッチ６０により「▲１▼移動モード」の設定がなされていた場合には、三次元操作量センサ５０により移動に関する指示を入力することができ、設定スイッチ６０により「▲２▼回転モード」の設定がなされていた場合には、三次元操作量センサ５０により回転（視線変更）に関する指示を入力することができる。これらの指示入力は、三次元操作量センサ５０における操作量±Ｘ，±Ｙとして与えられることになるが、その他に本発明では、三次元操作量センサ５０における操作量±Ｚを利用して、表示対象物に関する倍率値Ｍを更新する指示入力を行うようにしている。いずれの指示入力も、三次元操作量センサ５０を用いているため、非常に直観的な入力が可能になる。
【００２７】
姿勢状態データ更新手段７０は、三次元操作量センサ５０から与えられる操作量±Ｘ，±Ｙ，±Ｚを示す信号と、設定スイッチ６０から与えられる状態▲１▼／▲２▼を示す信号とに基づいて、姿勢状態データ記憶手段２０内の姿勢状態データｂに対して、次のような更新処理を実行する。
【００２８】
まず、設定スイッチ６０が「▲１▼移動モード」に設定されていた場合は、視線ベクトルＥをＵＶ平面上に投影することにより得られる投影ベクトルＦを考慮して、操作量＋Ｘおよび−Ｘに基づいてＵＶ平面上の位置Ｐを投影ベクトルＦに直交する方向に移動するように座標値（ｕ，ｖ）を更新し、操作量＋Ｙおよび−Ｙに基づいてＵＶ平面上の位置Ｐを投影ベクトルＦの示す方向あるいはその逆方向に移動するように座標値（ｕ，ｖ）を更新する処理を行う。このような更新処理により、「▲１▼移動モード」では、三次元操作量センサ５０上で定義されたＸＹ平面と、三次元画像データａ上で定義されたＵＶ平面とが対応することになり、ユーザは三次元操作量センサ５０によって直感的に指示した方向へ、三次元仮想空間内を移動することができる。
【００２９】
より具体的には、操作量＋Ｘが与えられた場合には、ＵＶ平面上において投影ベクトルＦに直交する線に沿って右方向に位置Ｐが移動するように、座標値（ｕ，ｖ）が更新され、操作量−Ｘが与えられた場合には、ＵＶ平面上において投影ベクトルＦに直交する線に沿って左方向に位置Ｐが移動するように、座標値（ｕ，ｖ）が更新される。したがって、ユーザとしては、視線の向きを固定したまま、右方向あるいは左方向へ移動する状態が体験できる。
【００３０】
また、操作量＋Ｙが与えられた場合には、投影ベクトルＦが示す方向に沿って位置Ｐが移動するように、座標値（ｕ，ｖ）が更新され、操作量−Ｙが与えられた場合には、投影ベクトルＦが示す方向とは逆方向に沿って位置Ｐが移動するように、座標値（ｕ，ｖ）が更新される。したがって、ユーザとしては、視線の向きを固定したまま、前方あるいは後方へ移動する状態が体験できる。
【００３１】
これに対して、設定スイッチ６０が「▲２▼回転モード」に設定されていた場合は、操作量＋Ｘおよび−Ｘに基づいて角度φを増減し、操作量＋Ｙおよび−Ｙに基づいて角度θを増減する更新処理を行う。このような更新処理により、「▲２▼回転モード」では、三次元操作量センサ５０上で定義されたＸＹ平面と、三次元画像データａ上で定義されたＵＷ平面とが対応することになり、ユーザは三次元操作量センサ５０によって直感的に指示した方向へ、視線ベクトルＥを向けることができる。別言すれば、角度φを増減する操作は、直観的には、位置Ｐにおいて、身体の向きを左右に変える操作に相当し、角度θを増減する操作は、直観的には、位置Ｐにおいて、顔の上下方向の向きを変える操作（たとえば、視線を床から天井へ向けて移動させる操作）に相当することになる。
【００３２】
より具体的には、操作量＋Ｘが与えられた場合には、角度φを減少させて視線ベクトルＥを上方から見たときに時計まわり（右まわり）に回転させる操作が行われ、操作量−Ｘが与えられた場合には、角度φを増加させて視線ベクトルＥを上方から見たときに反時計まわり（左まわり）に回転させる操作が行われる。なお、角度φは、０°≦φ＜３６０°なる範囲で定義されているので、この増減処理により０°＜φとなった場合には、３６０°を加算した値を新たなφの値とし、３６０°≦φとなった場合には、３６０°を減算した値を新たなφの値とする補正が行われる。
【００３３】
また、操作量＋Ｙが与えられた場合には、角度θを減少させて視線ベクトルＥを下方へ回転させる操作が行われ、操作量−Ｙが与えられた場合には、角度θを増加させて視線ベクトルＥを上方へ回転させる操作が行われる。なお、角度θは、−９０°≦θ≦９０°なる範囲で定義されているので、この増減処理によりθ＞９０°となるような場合にはθ＝９０°に維持し、θ＜−９０°となるような場合にはθ＝−９０°に維持する飽和処理が行われる。
【００３４】
更に、操作量＋Ｚおよび−Ｚに基づいて倍率値Ｍを増減する処理が行われる。すなわち、操作量＋Ｚが与えられた場合には、倍率値Ｍを減少させる処理が行われ、操作量−Ｚが与えられた場合には、倍率値Ｍを増加させる処理が行われる。このような更新処理により、三次元操作量センサ５０上で定義されたＺ軸と、三次元仮想空間内で注視する対象物の表示倍率とが対応することになり、ユーザは三次元操作量センサ５０によって、あたかもカメラのズームレバーを操作するように、表示倍率を変えることができる。
【００３５】
なお、この操作量±Ｚによる倍率値Ｍの更新処理は、設定スイッチ６０の設定状態にかかわらず常に実行されるようにしてもよいし、設定スイッチ６０がいずれか一方の設定状態にあるときにのみ実行されるようにしてもよい。ここに示す実施形態では、ユーザの操作上の混乱を避けるため、設定スイッチ６０が「▲１▼移動モード」の設定状態になっているときにのみ、この倍率値Ｍの更新処理が行われるようにしている。
【００３６】
図６は、設定スイッチ６０の設定状態と三次元操作量センサ５０から与えられた操作量との組み合わせについて、姿勢状態データ更新手段７０で行われる更新処理の内容を示す図表である。上述したように、「▲１▼移動モード」においては、操作量±Ｘ，±Ｙに基づいて位置Ｐの座標値（ｕ，ｖ）を更新する処理が行われるとともに、操作量±Ｚに基づいて倍率値Ｍを更新する処理が行われ、「▲２▼回転モード」においては、操作量±Ｘ，±Ｙに基づいて視線ベクトルＥの向きを示す角度値（θ，φ）を更新する処理が行われる。
【００３７】
なお、各操作量として、そのスカラー値までも特定可能な三次元操作量センサ５０を用いた場合には、そのスカラー値に応じた更新幅で更新処理を行うことができる。たとえば、「▲１▼移動モード」において、操作量＋Ｙが入力された場合であっても、Ｙ＝＋５なる操作量が入力された場合に対し、Ｙ＝＋１０なる操作量が入力された場合は、位置Ｐの移動量が２倍になるように設定すると、より直観的な移動処理が可能になる。もっとも、本発明に適用する三次元操作量センサ５０としては、必ずしもこのようなスカラー値までも特定できる必要はなく、たとえば、Ｙ軸方向に関しては、＋Ｙ方向の力が検出された、−Ｙ方向の力が検出された、Ｙ軸方向には有意なレベルでの力検出はない、という３つの状態だけを認識する機能が備わっていれば十分であり、この場合は、同じ検出状態が継続する時間によって、更新幅が決定されることになる。たとえば、「＋Ｙ方向の力が検出された」という検出状態が１秒間継続した場合に対し、２秒間継続した場合は位置Ｐの移動量が２倍になればよい。
【００３８】
ところで、図４および図５に示すような三次元操作量センサ５０を操作する場合、±Ｘ，±Ｙ，−Ｚという５種類の操作量を入力する操作は比較的容易であり、自然な操作として実行できるが、＋Ｚという操作量の入力操作はやや不自然な操作で扱いにくい。すなわち、操作量±Ｘ，±Ｙを入力する操作は、操作棹５３の上部に指を当てて、所定方向に操作棹５３を倒すように傾ける操作になり、操作量−Ｚを入力する操作は、操作棹５３の上面に指を当てて下方へと押し込む操作になり、いずれも自然な操作になる。ところが、操作量＋Ｚを入力する操作は、操作棹５３を指でつまんで、これを上方へと引っ張り上げる操作になるため、不自然で扱いにくい操作になる。
【００３９】
このような弊害を避けるためには、図１に示す構成の代わりに、図７に示す構成を採ればよい。この図７に示す構成では、三次元操作量センサ５０としては、±Ｘ，±Ｙ，−Ｚ（座標系の定義のしかたによっては＋Ｚ）という５種類の操作量を入力する機能が備わっていれば足り、操作量＋Ｚ（座標系の定義のしかたによっては−Ｚ）を入力する機能は必ずしも必要とはされない。その代わり、新たに補助設定スイッチ８０を設ける必要がある。この補助設定スイッチ８０は、設定スイッチ６０と同様に、２つの状態のいずれか一方を選択的に設定できるスイッチであれば、どのようなスイッチでもかまわない。
【００４０】
このような構成の体験装置では、姿勢状態データ更新手段７０は、補助設定スイッチ８０の設定状態に基づいて操作量Ｚの符号を決定する。この実施形態では、補助設定スイッチ８０によって、「▲１▼正常モード」か、「▲２▼反転モード」か、の設定が可能であり、「▲１▼正常モード」の設定がなされている場合には、姿勢状態データ更新手段７０は、三次元操作量センサ５０から与えられる操作量−Ｚをそのままの状態で取り扱うが、「▲２▼反転モード」の設定がなされている場合には、符号を反転させて、操作量−Ｚが与えられているにもかかわらず操作量＋Ｚが与えられたものとしての取り扱いを行う。
【００４１】
このような補助設定スイッチ８０を設けた体験装置では、図４および図５に示すような三次元操作量センサ５０に対する入力操作は、±Ｘ，±Ｙ，−Ｚという５種類の操作量の入力操作だけで足り、操作量＋Ｚを入力するための不自然な入力操作は不要になる。すなわち、ユーザは対象物の表示倍率を増加させたい場合には、補助設定スイッチ８０を「▲１▼正常モード」に維持した状態で、操作棹５３の上面を指で押さえるような操作を行えばよいし、逆に表示倍率を減少させたい場合には、補助設定スイッチ８０を「▲２▼反転モード」に維持した状態で、同じように操作棹５３の上面を指で押さえるような操作を行えばよい。補助設定スイッチ８０を切り替える操作が加わるものの、この補助設定スイッチ８０をたとえば単純な押しボタンスイッチ（通常は「▲１▼正常モード」で、押している間だけ「▲２▼反転モード」に切り替わるようなスイッチ）で構成しておけば、操作は非常に自然になる。
【００４２】
【実施例】
続いて、本発明に係る三次元仮想空間の体験装置のより具体的な実施態様を、実施例に即して説明する。ここでは、三次元仮想空間として、模擬的なデパートの店内を想定し、ユーザがこの模擬的なデパート店内を歩きまわりながら、展示されている商品を観察できるようにした実施例、別言すれば、いわゆるオンラインショッピングを実現するための体験装置に本発明を適用した実施例を述べる。
【００４３】
図８は、模擬的なデパートの店内を示す三次元画像データａの概念を示す平面図であり、ＵＶ平面を垂直上方から眺めた状態が示されている。ここに示す例では、ショーウインドウＳ１，Ｓ２が配置されており、各ショーウインドウ内には商品Ｇが並べられている。ショーウインドウや商品は、それぞれ三次元の画像データ（たとえば、表面に定義された多数の画素の画素値を示すデータ）として定義されている。
【００４４】
既に述べたように、この三次元仮想空間内には、ユーザの位置を示すＵＶ平面上の位置Ｐ（ｕ，ｖ）と、このユーザの視線方向を示す視線ベクトルＥ（θ，φ）が定義されている。図示の例では、視線ベクトルＥは、ショーウインドウＳ１内に展示されている商品Ｇの方向を向いている。ユーザの身長を考慮した場合は、図９の側面図に示すように、視線ベクトルＥは、点Ｐ（ｕ，ｖ）の鉛直上方の点Ｐ′（ｕ，ｖ，ｈ）を始点とするベクトルになる。
【００４５】
設定スイッチ６０を「▲１▼移動モード」に設定した状態で、操作量±Ｘを入力すると、図８に「▲１▼＋Ｘ」あるいは「▲１▼−Ｘ」と記した矢印で示すように、ユーザの位置Ｐは左右に移動することになる。また、同じく「▲１▼移動モード」に設定した状態で、操作量±Ｙを入力すると、図８に「▲１▼＋Ｙ」あるいは「▲１▼−Ｙ」と記した矢印で示すように、ユーザの位置Ｐは前後に移動することになる。こうして、「▲１▼移動モード」において、ユーザはＵＶ平面上を自由に移動することができる。
【００４６】
一方、設定スイッチ６０を「▲２▼回転モード」に設定した状態で、操作量±Ｘを入力すると、図８に「▲２▼＋Ｘ」あるいは「▲２▼−Ｘ」と記した矢印で示すように、ユーザは位置Ｐにおいて左右に回転することになり、視線ベクトルＥの向きが変化することになる。すなわち、ユーザは位置Ｐにおいて左右に向きを変えたことになる。また、同じく「▲２▼回転モード」に設定した状態で、操作量±Ｙを入力すると、図９に「▲２▼＋Ｙ」あるいは「▲２▼−Ｙ」と記した矢印で示すように、視線ベクトルＥは下方あるいは上方へと傾斜することになる。すなわち、ユーザは顔の向きを上下に変えたことになる。こうして、「▲２▼回転モード」において、ユーザは任意の方向を見ることが可能になる。
【００４７】
また、この実施例では、設定スイッチ６０の設定状態にかかわりなく、操作量±Ｚを入力することにより、視線ベクトルＥの方向にある対象物を表示する倍率値Ｍを増減できるようにしている。図１０は、実際に表示装置４０のディスプレイ画面上に表示された視界画像の一例を示す図である。設定スイッチ６０が「▲１▼移動モード」にある場合も、「▲２▼回転モード」にある場合も、操作量−Ｚの入力により倍率値Ｍは増加し、図１０の左に示すように視界画像は拡大され、操作量＋Ｚの入力により倍率値Ｍは減少し、図１０の右に示すように視界画像は縮小される。なお、この実施例では、図４および図５に示す静電容量式力センサを三次元操作量センサ５０として用い、図７に示すように、補助設定スイッチ８０によって操作量Ｚの符号を決定する構成を採っているため、補助設定スイッチ８０を「▲１▼正常モード」にして操作棹５３を押し込むと視界画像は拡大表示（ズームアップ）され、補助設定スイッチ８０を「▲２▼反転モード」にして操作棹５３を押し込むと視界画像は縮小表示（ズームダウン）される。
【００４８】
図１１は、上述した実施例に係る体験装置において、各スイッチの設定状態と操作量との組み合わせについて、姿勢状態データ更新手段７０で行われる更新処理の内容を示す図表である。この図表からもわかるとおり、この実施例の場合、補助設定スイッチ８０の設定状態は操作量±Ｘ，±Ｙには無関係であり、設定スイッチ６０の設定状態は操作量−Ｚには無関係であるので、設定スイッチ６０と補助設定スイッチ８０とを兼用するような実施形態も可能である。図１２は、このような実施形態における更新処理の内容を示す図表である。ただ、ユーザによる操作の混乱を防ぐためには、設定スイッチ６０と補助設定スイッチ８０とを別個に設けるのが好ましい。
【００４９】
図１３は、図４および図５に示した静電容量式力センサ５０を、キーボード９０上に設け、キー９１の間隙に操作棹５３を立設するようにした実施例の斜視図である。ここで、センサ５０は、キーボード９０の主面にほぼ沿った横方向（キーボードの長手方向）がＸ軸、縦方向（キーボードの短手方向）がＹ軸、キーボード主面にほぼ垂直な方向がＺ軸となるように、キーボード９０内に埋設されている。ユーザは、キー５３の隙間に配設された操作棹５３を操作することにより、各操作量の入力を行うことができる。なお、このように、センサ５０を内蔵したキーボードの構造は、たとえば、特開平８−６７１１号公報に開示されている。
【００５０】
このように、キーボード９０にセンサ５０を内蔵した構成を採る場合には、このキーボード上に、設定スイッチ６０および補助設定スイッチ８０を独立して設けることもできるが、特定のキー（たとえば、スペースバー、コントロールキーなど）に、設定スイッチ６０および補助設定スイッチ８０としての機能を割り当てることもできる。この場合は、別個独立した設定スイッチを設ける必要はなくなる。たとえば、スペースバーを設定スイッチ６０として利用するのであれば、単に操作棹５３のみを操作すると、「▲１▼移動モード」における操作量入力となり、スペースバーを押しながら操作棹５３を操作すると、「▲２▼回転モード」における操作量入力となるような実施形態が可能である。
【００５１】
【発明の効果】
以上のとおり、本発明に係る三次元仮想空間の体験装置によれば、三次元操作量センサと設定スイッチとを組み合わせた操作量入力を行うようにしたため、直感的な自然な操作によって、できるだけ現実に近い自由度をもった体験を提示することが可能になる。
【図面の簡単な説明】
【図１】本発明に係る三次元仮想空間の体験装置の基本構成を示すブロック図である。
【図２】図１に示す装置における三次元画像データａおよび姿勢状態データｂの内容を説明するための座標図である。
【図３】図２に示した視線ベクトルＥの向きを角度（θ，φ）によって定義する一方法を示す座標図である。
【図４】従来提案されている静電容量式の三次元力センサの側断面図である。
【図５】図４に示すセンサの基板５１上の電極Ｅ１〜Ｅ５の配置を示す上面図である。
【図６】図１に示す三次元仮想空間の体験装置において、設定スイッチ６０の設定状態と三次元操作量センサ５０から与えられた操作量との組み合わせについて、姿勢状態データ更新手段７０で行われる更新処理の内容を示す図表である。
【図７】本発明に係る三次元仮想空間の体験装置の別な基本構成を示すブロック図である。
【図８】模擬的なデパートの店内を示す三次元画像データａの概念を示す平面図である。
【図９】図８に示すデパート店内の側面図である。
【図１０】実際に表示装置４０のディスプレイ画面上に表示された視界画像の一例を示す図である。
【図１１】図７に示す体験装置において、各スイッチの設定状態と操作量との組み合わせについて、姿勢状態データ更新手段７０で行われる更新処理の内容を示す図表である。
【図１２】図７に示す体験装置において、設定スイッチ６０と補助設定スイッチ８０との兼用設定スイッチを用いた実施形態における更新処理の内容を示す図表である。
【図１３】図４および図５に示した静電容量式力センサ５０を、キーボード９０上に設け、キー９１の間隙に操作棹５３を立設するようにした実施例の斜視図である。
【符号の説明】
１０…三次元画像データ記憶手段
２０…姿勢状態データ記憶手段
３０…視界画像データ生成手段
４０…表示手段（ディスプレイ）
５０…三次元操作量センサ
５１…基板
５２…蓋部材
５３…操作棹
６０…設定スイッチ
７０…姿勢状態データ更新手段
８０…補助設定スイッチ
９０…キーボード
９１…キー
ａ…三次元画像データ
ｂ…姿勢状態データ
ｃ…視界画像データ
Ｅ…視線ベクトル
Ｅ１〜Ｅ５…電極
Ｆ…投影ベクトル
Ｇ…商品
Ｍ…対象物の表示倍率値
Ｐ…ＵＶ平面上でのユーザの位置
Ｐ′…ＵＶＷ三次元空間内でのユーザの眼球位置
Ｑ…視線ベクトルＥの先端点
Ｑ′…投影ベクトルＥの先端点
Ｓ１，Ｓ２…ショーウインドウ
θ，φ…視線ベクトルの方向を示す角度
【図１】
0003770965.tif 000002
【図２】
0003770965.tif 000003
【図３】
0003770965.tif 000004
【図４】
0003770965.tif 000005
【図５】
0003770965.tif 000006
【図６】
0003770965.tif 000007
【図７】
0003770965.tif 000008
【図８】
0003770965.tif 000009
【図９】
0003770965.tif 000010
【図１０】
0003770965.tif 000011
【図１１】
0003770965.tif 000012
【図１２】
0003770965.tif 000013
【図１３】
0003770965.tif 000014