JP7043711B2 - 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム - Google Patents
情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム Download PDFInfo
- Publication number
- JP7043711B2 JP7043711B2 JP2020030567A JP2020030567A JP7043711B2 JP 7043711 B2 JP7043711 B2 JP 7043711B2 JP 2020030567 A JP2020030567 A JP 2020030567A JP 2020030567 A JP2020030567 A JP 2020030567A JP 7043711 B2 JP7043711 B2 JP 7043711B2
- Authority
- JP
- Japan
- Prior art keywords
- virtual
- posture
- virtual space
- virtual camera
- display
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
- Controls And Circuits For Display Device (AREA)
Description
しかし、ユーザからの指示をHMDの姿勢の変化により受け付ける場合、ユーザは、仮想空間における仮想カメラの姿勢の変化以外の操作を行うことが難しく、例えば、仮想空間における仮想カメラの位置の変化等の操作が困難となることがあった。そして、HMDを装着したユーザが、仮想空間内の仮想カメラの位置及び姿勢の両方を変化させることが難しい場合、表示部において、位置及び形状の一方または双方を変化させるオブジェクトを継続的に表示させることが、困難となる場合があった。
以下、本発明の実施形態を説明する。
以下、図1乃至図7を参照しながら、本実施形態に係るヘッドマウントディスプレイ1(以下、「HMD1」と称する)の概要の一例について説明する。
端末装置10は、画像を表示するための表示部12を備える。本実施形態では、端末装置10としてスマートフォンを採用する場合を、一例として想定する。但し、端末装置10は、HMD1に設けられるための専用の表示デバイスであってもよい。
図1に示すように、装着具90は、HMD1をユーザUの頭部に装着するための一対のテンプル91L及び91Rと、端末装置10をHMD1に取り付けるための取付孔92と、ユーザUがHMD1を頭部に装着した場合に、ユーザUの両眼が存在する位置に対応するように設けられた一対の貫通孔92L及び92Rと、を備える。なお、貫通孔92L及び92Rの各々には、レンズが設けられていてもよい。そして、ユーザUが、HMD1を頭部に装着した場合、ユーザUの左眼は、貫通孔92Lを介して、または、取付孔92に設けられたレンズを介して、取付孔92に挿入された端末装置10が具備する表示部12を視認することができ、ユーザUの右眼は、貫通孔92Rを介して、または、貫通孔92Rに設けられたレンズを介して、取付孔92に挿入された端末装置10が具備する表示部12を視認することができる。
装置座標系ΣSとは、例えば、HMD1の所定箇所に原点を有し、互いに直交するXS軸、YS軸、及び、ZS軸を有する3軸の直交座標系である。本実施形態では、図2に示すように、ユーザUがHMD1を装着した場合に、+XS方向がユーザUから見た前方方向となり、+YS方向がユーザUから見た左手方向となり、+ZS方向がユーザUから見た上方向となるように、装置座標系ΣSが設定されている場合を、一例として想定する。
また、本実施形態では、キャラクタVが、仮想空間SP-Vにおいて複数種類のモーションを実行可能である場合を想定する。ここで、「モーション」とは、例えば、座る、立つ、走る、戦う、及び、ダンスをする等、キャラクタVが仮想空間SP-Vにおいて、位置及び体勢の少なくとも一方を変化させることである。なお、キャラクタVが体勢を変化させる場合、キャラクタVの形状も変化する。すなわち、「キャラクタVの体勢」とは、「オブジェクトの形状」の一例である。
また、以下では、図3に示すように、仮想空間SP-Vに固定された座標系である仮想空間座標系ΣVを導入する。仮想空間座標系ΣVとは、例えば、仮想空間SP-Vの所定箇所に原点を有し、互いに直交するXV軸、YV軸、及び、ZV軸を有する3軸の直交座標系である。
また、以下では、図4に示すように、仮想カメラCM-Lの光軸方向を、撮像方向LC-Lと称し、仮想カメラCM-Rの光軸方向を、撮像方向LC-Rと称し、撮像方向LC-Lを示すベクトルと、撮像方向LC-Rを示すベクトルとの和により示される方向を、撮像方向LCと称する。なお、本実施形態では、撮像方向LC-Lと撮像方向LC-Rとが、同一の方向である場合を想定する。このため、本実施形態では、撮像方向LCは、撮像方向LC-L及び撮像方向LC-Rと同一の方向となる。
すなわち、ユーザUは、左眼によりキャラクタ画像GV-L及び環境画像GEV-Lを視認し、右眼によりキャラクタ画像GV-R及び環境画像GEV-Rを視認することができる。このため、ユーザUは、図6に例示するように、表示部12において、キャラクタV及び環境構成物EV等の仮想空間SP-V内に存在する仮想的な物体を、キャラクタ画像GV及び環境画像GEV等の立体的な3次元の物体として表した、視認画像GSを視認することが可能となる。
また、以下では、説明の便宜上、図7に示すように、仮想空間SP-Vにおける仮想カメラCMに固定された座標系であるカメラ座標系ΣCを導入する。カメラ座標系ΣCとは、例えば、仮想空間SP-Vのうち仮想カメラCMの位置PCに原点を有し、互いに直交するXC軸、YC軸、及び、ZC軸を有する3軸の直交座標系である。本実施形態では、HMD1を装着したユーザUから見て、XC軸がXS軸と平行であり、YC軸がYS軸と平行であり、ZC軸がZS軸と平行である場合を、一例として想定する。すなわち、本実施形態では、XC軸が、仮想カメラCMの撮像方向LCに延在する場合を、一例として想定する。なお、図7では、カメラ座標系ΣCの原点と位置PCとを異なる位置として示しているが、これは図示の都合上であって、カメラ座標系ΣCの原点と位置PCとは同一の位置である(後述する図12乃至図19でも同様)。
以下、図8及び図9を参照しながら、端末装置10の構成の一例について説明する。
ここで、モーション情報DMとは、キャラクタVが各モーションを実行する場合に、仮想空間SP-VにおけるキャラクタVの位置及び形状の経時的な変化を表す情報である。具体的には、例えば、キャラクタVが、頭部、胴体部、及び、脚部等の複数の部位から構成される場合、モーション情報DMとは、キャラクタVを構成する複数の部位の各々についての位置の経時的な変化を表す情報であってもよい。または、モーション情報DMとは、キャラクタVを構成する複数の部位間の相対的な位置関係の経時的な変化を表す情報であってもよい。または、モーション情報DMとは、キャラクタVを構成する複数の部位間を接続する関節の角度、すなわち、関節に接続される2つの部位のなす角度の経時的な変化を表す情報であってもよい。
表示制御部110は、モード指定部111と、仮想カメラ制御部112と、キャラクタ制御部113と、表示情報生成部114と、を備える。
位置追従制御モードとは、仮想空間SP-Vにおける仮想カメラCMの位置PCが、仮想空間SP-Vにおける仮想点Kの位置PKに基づく位置となるように、仮想空間SP-Vにおける仮想カメラCMを制御する制御モードである。また、仮想カメラ制御部112は、位置追従制御モードにおいて、仮想空間SP-Vにおける仮想カメラCMの姿勢を、姿勢情報Bに基づいて変化させる。なお、仮想点Kについては後述する。
姿勢追従制御モードとは、仮想空間SP-Vにおける仮想カメラCMの姿勢を、例えば、仮想カメラCMから見て撮像方向LCに仮想点Kが位置するような姿勢となるように、仮想空間SP-Vにおける仮想カメラCMを制御する制御モードである。また、仮想カメラ制御部112は、姿勢追従制御モードにおいて、仮想空間SP-Vにおける仮想カメラCMの位置PCを、姿勢情報Bに基づいて変化させる。
表示情報生成部114は、仮想カメラCMによる仮想空間SP-Vの撮像結果を表す表示情報DSを生成し、当該表示情報DSを表示部12に供給することで、表示部12に対して表示画像GHを表示させる。
キャラクタ制御部113は、モーション情報DMに基づいて、キャラクタVにモーションを実行させる。
プロセッサ1000は、例えば、CPU(Central Processing Unit)であり、メモリ1001に記憶された制御プログラムPRGを実行し、当該制御プログラムPRGに従って動作することで、制御部11として機能する。
角速度センサ1002は、上述の通り、X軸角速度センサ、Y軸角速度センサ、及び、Z軸角速度センサを備え、姿勢情報生成部14として機能する。
表示装置1003及び入力装置1004は、例えば、タッチパネルであり、表示部12及び操作部13として機能する。なお、表示装置1003及び入力装置1004は、別体として構成されていてもよい。また、入力装置1004は、タッチパネル、操作ボタン、キーボード、ジョイスティック、及び、マウス等のポインティングデバイスの一部または全部を含む、1または複数の機器から構成されるものであってもよい。
以下、図10乃至図19を参照しながら、端末装置10の動作の一例について説明する。
図10に示すように、表示処理が開始されると、モード指定部111は、制御モードを位置追従制御モードに設定する(S100)。
なお、以下では、HMD1が初期姿勢である場合の装置座標系ΣSを、「初期座標系ΣS1」と称する。また、以下では、後述する図12に示すように、モード指定部111が制御モードを位置追従制御モードに設定した際の仮想カメラCMの撮像方向LCを、「初期撮像方向LC1」と称する。
具体的には、キャラクタ制御部113は、ステップS104において、例えば、キャラクタVが実行しているモーションの種類を特定する。そして、キャラクタ制御部113は、ステップS104において、例えば、モーション情報DMのうち、特定した種類のモーションに係る情報と、キャラクタVが当該モーションを開始してからの経過時間と、に基づいて、現在時刻におけるキャラクタVの位置及び形状を決定することで、キャラクタ情報DCを生成する。
なお、本実施形態では、一例として、キャラクタVが予め定められた種類のモーションを実行している場合を想定する。但し、キャラクタ制御部113は、ステップS104において、キャラクタVが実行するモーションの種類を決定してもよい。
具体的には、キャラクタ制御部113は、ステップS106において、例えば、キャラクタVを構成する、頭部、胴体部、及び、脚部等の複数の部位のうち、キャラクタVが実行しているモーションの種類に対応する部位に基づく位置(「オブジェクトに基づく位置」の一例)を、仮想点Kの位置として決定することで、仮想点位置情報DKを生成してもよい。より具体的には、キャラクタ制御部113は、ステップS106において、例えば、キャラクタVが実行しているモーションの種類に対応するキャラクタVの部位のうち、キャラクタVの表面上における特定の位置を、仮想点Kの位置として決定し、当該決定された仮想点Kの位置を示す仮想点位置情報DKを生成してもよい。なお、モーション情報DMは、各モーションに対応するキャラクタVの部位を示す情報を含んでいてもよい。
以下では、後述する図12に示すように、モード指定部111が制御モードを位置追従制御モードに設定した際の仮想点Kの位置PKを、「初期位置PK1」と称する。また、以下では、初期位置PK1を起点とし、位置PKを終点とするベクトルを、「仮想点位置ベクトルVK」と称する。
具体的には、仮想カメラ制御部112は、ステップS108において、仮想カメラCMから見て仮想点Kが初期撮像方向LC1に位置するように、仮想カメラCMの位置PCを決定する。
また、仮想カメラ制御部112は、例えば、仮想カメラCM及び仮想点Kの間の距離が、所定の距離Disとなるように、仮想カメラCMの位置PCを決定する。この場合、仮想カメラ制御部112は、例えば、仮想カメラCM及び仮想点Kの間の距離が、キャラクタVが実行しているモーションの種類に応じた距離となるように、仮想カメラCMの位置PCを決定してもよい。
なお、以下では、後述する図12に示すように、モード指定部111が制御モードを位置追従制御モードに設定した際の仮想カメラCMの位置PCを、「初期位置PC1」と称する。すなわち、本実施形態において、仮想カメラ制御部112は、ステップS108において、仮想点位置ベクトルVKの起点を初期位置PC1に配置した場合に、当該仮想点位置ベクトルVKの終点の位置を、仮想カメラCMの位置PCとして決定することになる。
また、以下では、モード指定部111が制御モードを位置追従制御モードに設定した際のカメラ座標系ΣCを、「初期カメラ座標系ΣC1」と称する。ここで、初期カメラ座標系ΣC1とは、原点の位置が初期位置PC1であり、XC軸が初期撮像方向LC1となるような座標系である。すなわち、本実施形態において、仮想カメラ制御部112は、ステップS108において、仮想点位置ベクトルVKの起点を初期カメラ座標系ΣC1の原点に配置した場合に、当該仮想点位置ベクトルVKの終点の位置を、カメラ座標系ΣCの原点として決定することになる。
そして、仮想カメラ制御部112は、ステップS110において、姿勢情報取得部115が取得した姿勢情報Bに基づいて、HMD1の初期姿勢からの姿勢変化dB1を算出する(S112)。
なお、本実施形態において、仮想カメラ制御部112は、一例として、姿勢変化dB1を、初期座標系ΣS1における回転軸WSと、回転軸WS周りの回転角度θWと、により表現する。すなわち、本実施形態において、姿勢変化dB1は、HMD1が初期座標系ΣS1から見て回転軸WS周りに回転角度θWだけ回転した場合、初期座標系ΣS1における回転軸WSを示す方向ベクトルと、回転角度θWを示す値と、を含む。
但し、姿勢変化dB1は、他の任意の表現方法により表現されるものであってもよい。例えば、姿勢変化dB1は、初期座標系ΣS1から装置座標系ΣSへの姿勢変化を示す姿勢変換行列により表現されるものであってもよいし、初期座標系ΣS1から装置座標系ΣSへの姿勢変化を示すクォータニオンにより表現されるものであってもよい。
また、以下では、HMD1が、回転軸WS周りに回転角度θWだけ回転した場合に、当該回転角度θWを、「姿勢変化量」と称する場合がある。
具体的には、ステップS114において、仮想カメラ制御部112は、撮像方向LCが、初期撮像方向LC1を、姿勢変化dB1に対応した姿勢変化量だけ変化させた方向となるように、仮想空間SP-Vにおける仮想カメラCMの姿勢を決定する。すなわち、ステップS114において、仮想カメラ制御部112は、カメラ座標系ΣCが、初期カメラ座標系ΣC1を、姿勢変化dB1に対応した姿勢変化量だけ変化した姿勢を有する座標系となるように、仮想空間SP-Vにおける仮想カメラCMの姿勢を決定する。
より具体的には、仮想カメラ制御部112は、ステップS114において、例えば、仮想空間SP-Vに仮想回転軸WSC1を設定する。ここで、仮想回転軸WSC1とは、仮想カメラCMの初期位置PC1と交差する仮想空間SP-V内の直線であって、初期カメラ座標系ΣC1から見た仮想回転軸WSC1の方向を表すベクトルの成分と、初期座標系ΣS1から見た回転軸WSの方向を表すベクトルの成分とが、同一となるような直線である。次に、仮想カメラ制御部112は、ステップS114において、例えば、カメラ座標系ΣCの各座標軸の方向が、初期カメラ座標系ΣC1を仮想回転軸WSC1周りに回転角度θWだけ回転させた方向となるように、カメラ座標系ΣCを設定することで、仮想空間SP-Vにおける仮想カメラCMの姿勢を決定する。なお、上述の通り、仮想カメラ制御部112は、ステップS108において、カメラ座標系ΣCの原点の位置が、初期カメラ座標系ΣC1の原点の位置である初期位置PC1を、仮想点位置ベクトルVKだけ移動させた位置となるように、カメラ座標系ΣCの原点を設定する。
例えば、仮想カメラ制御部112は、HMD1が、初期姿勢から、ZS軸周りのヨー方向QZに対して回転角度θWだけ回転した場合、初期カメラ座標系ΣC1のZC軸を仮想回転軸WSC1として設定したうえで、カメラ座標系ΣCを、初期カメラ座標系ΣC1を仮想回転軸WSC1周りに回転角度θWだけ回転させた姿勢の座標系とすることで、仮想カメラCMの姿勢を決定する。
例えば、仮想カメラ制御部112は、HMD1が、初期姿勢から、YS軸周りのピッチ方向QYに対して回転角度θWだけ回転した場合、初期カメラ座標系ΣC1のYC軸を仮想回転軸WSC1として設定したうえで、カメラ座標系ΣCを、初期カメラ座標系ΣC1を仮想回転軸WSC1周りに回転角度θWだけ回転させた姿勢の座標系とすることで、仮想カメラCMの姿勢を決定する。
例えば、仮想カメラ制御部112は、HMD1が、初期姿勢から、XS軸周りのロール方向QXに対して回転角度θWだけ回転した場合、初期カメラ座標系ΣC1のXC軸を仮想回転軸WSC1として設定したうえで、カメラ座標系ΣCを、初期カメラ座標系ΣC1を仮想回転軸WSC1周りに回転角度θWだけ回転させた姿勢の座標系とすることで、仮想カメラCMの姿勢を決定する。
本実施形態では、一例として、現在時刻よりも所定時間だけ前の時刻から現在時刻までの判定期間におけるHMD1の姿勢変化量が、所定の閾値以下の場合に、モード指定部111が、制御モードを、位置追従制御モードから姿勢追従制御モードに移行させる場合を想定する。このため、モード指定部111は、ステップS118において、例えば、判定期間におけるHMD1の姿勢変化量が、所定の閾値以下であるか否かを判定することで、制御モードを、姿勢追従制御モードに移行させるか否かを判定する。なお、モード指定部111は、ステップS118において、例えば、判定期間の開始時刻におけるHMD1の姿勢と、判定期間内の任意の時刻におけるHMD1の姿勢との差分が、所定の閾値よりも小さいか否かを判定することで、制御モードを、姿勢追従制御モードに移行させるか否かを判定してもよい。
そして、モード指定部111は、ステップS118における判定の結果が肯定の場合には、処理をステップS200に進め、ステップS118における判定の結果が否定の場合には、処理をステップS120に進める。
その後、制御部11は、ユーザUが、表示処理を終了させる旨の所定の終了操作を操作部13から入力したか否かを判定する(S120)。そして、制御部11は、ステップS120における判定の結果が否定の場合には、処理をステップS104に進め、ステップS120における判定の結果が肯定の場合には、表示処理を終了させる。
なお、図12~図15に示す例では、キャラクタVが、図12に示す時刻t1から図13に示す時刻t2にかけて「座る」というモーションを実行し、その後、図14に示す時刻t3から図15に示す時刻t4にかけて「立つ」というモーションを実行する場合を想定する。すなわち、図12~図15に示す例では、キャラクタVが、時刻t1において立っている状態となり、その後、時刻t2において座っている状態に変化し、その後、時刻t3まで座っている状態を継続し、その後、時刻t4において立っている状態に変化する場合を例示している。
また、図12~図15に示す例では、仮想点Kが、キャラクタVの「鼻」に設定される場合を、一例として想定する。すなわち、図12~図15に示す例では、「座る」というモーションの種類に対応する仮想点Kの位置、及び、「立つ」というモーションの種類に対応する仮想点Kの位置が、共に、キャラクタVの「鼻」である場合を、一例として想定する。
また、図12~図15に示す例では、モード指定部111が、時刻t1において、制御モードを位置追従制御モードに設定する場合を想定する。すなわち、図12~図15に示す例では、時刻t1におけるHMD1の姿勢が、初期姿勢となる。そして、図12~図15に示す例では、HMD1が、時刻t1において初期姿勢となり、その後、時刻t2まで初期姿勢を維持し、その後、時刻t3においてYS軸周りに回転角度θWだけ回転をし、その後、時刻t4まで時刻t3における姿勢を維持する場合を、一例として想定する。
また、仮想カメラ制御部112は、時刻t1において、初期姿勢に基づいて定められる撮像方向LC(t1)を初期撮像方向LC1として定める。なお、図12では、撮像方向LC(t1)が+XV方向である場合を、一例として想定する。
そして、仮想カメラ制御部112は、時刻t1において、位置PK(t1)と初期撮像方向LC1とに基づいて、仮想カメラCMの位置PC(t1)を決定し、当該位置PC(t1)を初期位置PC1として定める。より具体的には、仮想カメラ制御部112は、時刻t1において、仮想カメラCMから見て初期撮像方向LC1に位置PK(t1)が位置するように、仮想カメラCMの位置PC(t1)を決定する。また、仮想カメラ制御部112は、時刻t1において、初期姿勢に対応するカメラ座標系ΣCを、初期カメラ座標系ΣC1として定める。
上述の通り、図12~図15に示す例では、HMD1が、時刻t1から時刻t2まで初期姿勢を維持する場合を想定する。このため、仮想カメラ制御部112は、時刻t2において、初期撮像方向LC1を、撮像方向LC(t2)として定める。
そして、仮想カメラ制御部112は、時刻t2において、仮想カメラCMから見て初期撮像方向LC1に位置PK(t2)が位置するように、仮想カメラCMの位置PC(t2)を決定する。すなわち、仮想カメラ制御部112は、時刻t2において、初期位置PC1を仮想点位置ベクトルVK(t2)だけ移動した位置を、位置PC(t2)として決定する。また、仮想カメラ制御部112は、時刻t2において、カメラ座標系ΣCを、位置PC(t2)を原点とし、初期カメラ座標系ΣC1と同一の姿勢の有する座標系として設定する。
また、上述の通り、図12~図15に示す例では、HMD1が、時刻t2において初期姿勢であり、その後、時刻t2から時刻t3までの間に、YS軸周りに回転角度θWだけ回転する。このため、仮想カメラ制御部112は、時刻t3において、初期カメラ座標系ΣC1のYC軸と平行な仮想回転軸WSC1を設定する。そして、仮想カメラ制御部112は、時刻t3において、初期撮像方向LC1を仮想回転軸WSC1回りに回転角度θWだけ回転させた方向を撮像方向LC(t3)として定める。
また、仮想カメラ制御部112は、時刻t3において、仮想カメラCMから見て初期撮像方向LC1に位置PK(t3)が位置するように、仮想カメラCMの位置PC(t3)を決定する。すなわち、仮想カメラ制御部112は、時刻t3において、位置PC(t2)と同一の位置を、仮想カメラCMの位置PC(t3)として決定する。また、仮想カメラ制御部112は、時刻t3において、カメラ座標系ΣCを、位置PC(t3)を原点とし、初期カメラ座標系ΣC1の各座標軸を仮想回転軸WSC1回りに回転角度θWだけ回転させた座標軸を有する座標系として設定する。
上述の通り、図12~図15に示す例では、HMD1が、時刻t3における姿勢を時刻t4まで維持する。このため、仮想カメラ制御部112は、時刻t4において、初期撮像方向LC1を仮想回転軸WSC1回りに回転角度θWだけ回転させた方向を、撮像方向LC(t4)として定める。
また、仮想カメラ制御部112は、時刻t4において、仮想カメラCMから見て初期撮像方向LC1に位置PK(t4)が位置するように、仮想カメラCMの位置PC(t4)を決定する。また、仮想カメラ制御部112は、時刻t4において、カメラ座標系ΣCを、位置PC(t4)を原点とし、初期カメラ座標系ΣC1の各座標軸を仮想回転軸WSC1回りに回転角度θWだけ回転させた座標軸を有する座標系として設定する。
図11に示すように、モード指定部111は、制御モードを姿勢追従制御モードに設定する(S200)。
なお、以下では、HMD1が基準姿勢である場合の装置座標系ΣSを、「基準座標系ΣS2」と称する。また、以下では、後述する図16に示すように、モード指定部111が制御モードを姿勢追従制御モードに設定した際の仮想カメラCMの撮像方向LCを、「基準撮像方向LC2」と称する。また、以下では、モード指定部111が制御モードを姿勢追従制御モードに設定した際の仮想カメラCMの位置PCを、「基準位置PC2」と称する。
以下では、後述する図16に示すように、モード指定部111が制御モードを姿勢追従制御モードに設定した際の仮想点Kの位置PKを、「基準位置PK2」と称する。
具体的には、仮想カメラ制御部112は、ステップS208において、基準位置PC2から仮想点Kを示す方向が撮像方向LCとなるように、仮想カメラCMの姿勢を決定する。換言すれば、仮想カメラ制御部112は、ステップS208において、カメラ座標系ΣCの各座標軸が、カメラ座標系ΣCのXC軸上に仮想点Kが位置するような方向を向くように、カメラ座標系ΣCを設定する。
なお、以下では、モード指定部111が制御モードを姿勢追従制御モードに設定した際のカメラ座標系ΣCを、「基準カメラ座標系ΣC2」と称する。ここで、基準カメラ座標系ΣC2とは、原点の位置が基準位置PC2であり、XC軸が基準撮像方向LC2となるような座標系である。
また、以下では、基準撮像方向LC2と撮像方向LCとのなす角を、「撮像角度θK」と称する。
そして、仮想カメラ制御部112は、ステップS210において、姿勢情報取得部115が取得した姿勢情報Bに基づいて、HMD1の基準姿勢からの姿勢変化dB2を算出する(S212)。
なお、本実施形態において、仮想カメラ制御部112は、一例として、姿勢変化dB2を、基準座標系ΣS2における回転軸WSと、回転軸WS周りの回転角度θWと、により表現する。
具体的には、ステップS214において、仮想カメラ制御部112は、まず、仮想空間SP-Vに仮想回転軸WSC2を設定する。ここで、仮想回転軸WSC2とは、仮想カメラCMの基準位置PC2と交差する仮想空間SP-V内の直線であって、基準カメラ座標系ΣC2から見た仮想回転軸WSC2の方向を表すベクトルの成分と、基準座標系ΣS2から見た回転軸WSの方向を表すベクトルの成分とが、同一となるような直線である。次に、仮想カメラ制御部112は、仮想回転軸WSC2と撮像方向LCとに交差(典型的には、直交)する方向を有し、回転角度θWに応じた長さを有する、カメラ位置変化ベクトルVCを生成する。そして、仮想カメラ制御部112は、カメラ位置変化ベクトルVCの起点を基準位置PC2としたときの、カメラ位置変化ベクトルVCの終点の位置を、仮想カメラCMの位置PCとして決定する。換言すれば、仮想カメラ制御部112は、ステップS214において、カメラ座標系ΣCの原点の位置が、基準カメラ座標系ΣC2の原点の位置である基準位置PC2を、カメラ位置変化ベクトルVCだけ移動させた位置となるように、カメラ座標系ΣCの原点を設定する。なお、上述の通り、仮想カメラ制御部112は、ステップS208において、カメラ座標系ΣCの各座標軸の方向が、基準カメラ座標系ΣC2を仮想回転軸WSC2周りに回転角度θWだけ回転させた方向となるように、カメラ座標系ΣCを設定することで、仮想空間SP-Vにおける仮想カメラCMの姿勢を決定する。
本実施形態では、一例として、現在時刻よりも所定時間だけ前の時刻から現在時刻までの判定期間におけるHMD1の姿勢変化量が、所定の閾値以下の場合に、モード指定部111が、制御モードを、姿勢追従制御モードから位置追従制御モードに移行させる場合を想定する。このため、モード指定部111は、ステップS218において、例えば、判定期間におけるHMD1の姿勢変化量が、所定の閾値以下であるか否かを判定することで、制御モードを、位置追従制御モードに移行させるか否かを判定する。
そして、モード指定部111は、ステップS218における判定の結果が肯定の場合には、処理をステップS100に進め、ステップS218における判定の結果が否定の場合には、処理をステップS220に進める。
その後、制御部11は、ユーザUが、表示処理を終了させる旨の所定の終了操作を操作部13から入力したか否かを判定する(S220)。そして、制御部11は、ステップS220における判定の結果が否定の場合には、処理をステップS204に進め、ステップS220における判定の結果が肯定の場合には、表示処理を終了させる。
なお、図16~図19に示す例では、キャラクタVが、図16に示す時刻t5から図17に示す時刻t6にかけて「座る」というモーションを実行し、その後、図18に示す時刻t7から図19に示す時刻t8にかけて「立つ」というモーションを実行する場合を想定する。すなわち、図16~図18に示す例では、キャラクタVが、時刻t5において立っている状態となり、その後、時刻t6において座っている状態に変化し、その後、時刻t7まで座っている状態を継続し、その後、時刻t8において立っている状態に変化する場合を例示している。
また、図16~図19に示す例では、仮想点Kが、キャラクタVの「鼻」に設定される場合を、一例として想定する。
また、図16~図19に示す例では、モード指定部111が、時刻t5において、制御モードを姿勢追従制御モードに設定する場合を想定する。すなわち、図16~図19に示す例では、時刻t5におけるHMD1の姿勢が、基準姿勢となる。そして、図16~図19に示す例では、HMD1が、時刻t5において基準姿勢となり、その後、時刻t6まで基準姿勢を維持し、その後、時刻t7においてYS軸周りに回転角度θWだけ回転をし、その後、時刻t8まで時刻t7における姿勢を維持する場合を、一例として想定する。
また、仮想カメラ制御部112は、時刻t5における仮想カメラCMの位置PC(t5)を基準位置PC2として定める。そして、仮想カメラ制御部112は、時刻t5において、位置PC(t5)から位置PK(t5)に向かう方向を撮像方向LC(t5)とし、当該撮像方向LC(t5)を、基準撮像方向LC2として定める。なお、図16では、撮像方向LC(t5)が+XV方向である場合を、一例として想定する。
なお、仮想カメラ制御部112は、時刻t5において、基準姿勢に対応するカメラ座標系ΣCを、基準カメラ座標系ΣC2として定める。
上述の通り、図16~図19に示す例では、HMD1が、時刻t5から時刻t6まで基準姿勢を維持する場合を想定する。このため、仮想カメラ制御部112は、時刻t6において、仮想カメラCMの位置PC(t6)を、基準位置PC2に設定する。そして、仮想カメラ制御部112は、時刻t6において、基準位置PC2から位置PK(t6)に向かう方向を撮像方向LC(t6)として定める。この場合、基準撮像方向LC2と撮像方向LC(t6)とのなす角度が、撮像角度θKとなる。
なお、仮想カメラ制御部112は、例えば、基準位置PC2と交差し、基準撮像方向LC2及び仮想点位置ベクトルVKの双方に直交するカメラ回転軸LKを設定し、基準撮像方向LC2をカメラ回転軸LK周りに撮像角度θKだけ回転させることで、撮像方向LCを定めてもよい。図17に示す例では、カメラ回転軸LKは、基準カメラ座標系ΣC2のYC軸となる。
すなわち、仮想カメラ制御部112は、時刻t6において、カメラ座標系ΣCを、位置PC(t6)を原点とし、基準カメラ座標系ΣC2をカメラ回転軸LK周りに撮像角度θKだけ回転させた座標系として定める。
また、仮想カメラ制御部112は、時刻t7において、基準位置PC2から位置PK(t7)に向かう方向を撮像方向LC(t7)として定める。この場合、基準撮像方向LC2と撮像方向LC(t7)とのなす角度が、撮像角度θKとなる。すなわち、撮像方向LC(t7)は、撮像方向LC(t6)と同一の方向となる。
また、上述の通り、図16~図19に示す例では、HMD1が、時刻t6において基準姿勢であり、その後、時刻t6から時刻t7までの間に、YS軸周りに回転角度θWだけ回転する。このため、仮想カメラ制御部112は、時刻t7において、基準カメラ座標系ΣC2のYC軸と平行な仮想回転軸WSC2を設定する。そして、仮想カメラ制御部112は、時刻t7において、仮想回転軸WSC2と撮像方向LC(t7)とに直交する方向を有し、回転角度θWに応じた長さを有する、カメラ位置変化ベクトルVCを設定する。また、仮想カメラ制御部112は、時刻t7において、基準位置PC2を、カメラ位置変化ベクトルVCだけ移動させた位置を、位置PC(t7)として定める。
すなわち、仮想カメラ制御部112は、時刻t7において、カメラ座標系ΣCを、位置PC(t7)を原点とし、基準カメラ座標系ΣC2をカメラ回転軸LK周りに撮像角度θKだけ回転させた座標系として定める。
また、仮想カメラ制御部112は、時刻t8において、基準位置PC2から位置PK(t8)に向かう方向を撮像方向LC(t8)として定める。この場合、撮像方向LC(t8)は、基準撮像方向LC2と同一の方向となる。
上述の通り、図16~図19に示す例では、HMD1が、時刻t7における姿勢を時刻t8まで維持する。このため、仮想カメラ制御部112は、時刻t8において、仮想回転軸WSC2と撮像方向LC(t8)とに直交する方向を有し、回転角度θWに応じた長さを有する、カメラ位置変化ベクトルVCを設定する。そして、仮想カメラ制御部112は、時刻t8において、基準位置PC2を、カメラ位置変化ベクトルVCだけ移動させた位置を、位置PC(t8)として定める。
すなわち、仮想カメラ制御部112は、時刻t8において、カメラ座標系ΣCを、位置PC(t8)を原点とし、基準カメラ座標系ΣC2と同一の姿勢を有する座標系として定める。
以上において説明したように、本実施形態において、表示制御部110は、制御モードが位置追従制御モードである場合に、仮想点Kの位置PKに基づいて、仮想カメラCMの位置PCを制御し、HMD1の姿勢変化を示す姿勢情報Bに基づいて、仮想カメラCMの撮像方向LCを制御することができる。すなわち、表示制御部110は、制御モードが位置追従制御モードである場合に、仮想カメラCMの位置及び姿勢の双方を変化させることができる。このため、本実施形態によれば、HMD1を装着したユーザUが、例えば、仮想カメラCMの撮像方向LCがキャラクタVを向くように、HMD1の姿勢を制御することで、表示部12にキャラクタVを継続的に表示することが可能となる。
以上の各形態は多様に変形され得る。具体的な変形の態様を以下に例示する。以下の例示から任意に選択された2以上の態様は、相互に矛盾しない範囲内で適宜に併合され得る。なお、以下に例示する変形例において作用や機能が実施形態と同等である要素については、以上の説明で参照した符号を流用して各々の詳細な説明を適宜に省略する。
上述した実施形態において、仮想カメラ制御部112は、制御モードが位置追従制御モードの場合、HMD1が初期姿勢からXS軸周りのロール方向QXに対して回転角度θWだけ回転したときに、仮想カメラCMの姿勢をカメラ座標系ΣCのXC軸を周りに回転角度θWだけ回転させ、また、制御モードが姿勢追従制御モードの場合、HMD1が基準姿勢からXS軸周りのロール方向QXに対して回転角度θWだけ回転したときに、仮想カメラCMの位置PCをXC軸に直交するカメラ位置変化ベクトルVC方向に対して、回転角度θWに応じた距離だけ移動させるが、本発明はこのような態様に限定されるものではない。
具体的には、仮想カメラ制御部112は、HMD1が+QX方向に回転角度θWだけ回転した場合には、仮想カメラCMを+XC方向に対して回転角度θWに応じた距離だけ移動させることで、仮想カメラCMとキャラクタVとの距離を近づけ、また、HMD1が-QX方向に回転角度θWだけ回転した場合には、仮想カメラCMを-XC方向に対して回転角度θWに応じた距離だけ移動させることで、仮想カメラCMとキャラクタVとの距離を遠ざけてもよい。
具体的には、仮想カメラ制御部112は、HMD1が+QX方向に回転角度θWだけ回転した場合には、回転角度θWに応じた倍率で、仮想カメラCMによる撮像範囲を縮小し、キャラクタVが拡大して撮像されるようにし、また、HMD1が-QX方向に回転角度θWだけ回転した場合には、回転角度θWに応じた倍率で、仮想カメラCMによる撮像範囲を拡大し、キャラクタVが縮小して撮像されるようにしてもよい。
上述した実施形態及び変形例において、キャラクタ制御部113は、キャラクタVの有する複数の部位のうち、キャラクタVが実行しているモーションの種類に対応する部位に対して、仮想点Kを設定するが、本発明はこのような態様に限定されるものではない。
例えば、キャラクタ制御部113は、キャラクタVが実行しているモーションの種類とは無関係に、キャラクタVの有する複数の部位のうち、所定の部位に対して、仮想点Kを設定してもよい。すなわち、キャラクタ制御部113は、キャラクタVの特定の部分に対して、仮想点Kを設定してもよい。
また、例えば、キャラクタ制御部113は、キャラクタVが実行しているモーションを、複数の単位動作に区分し、キャラクタVの有する複数の部位のうち、キャラクタVが実行している単位動作に対応する部位に対して、仮想点Kを設定してもよい。すなわち、キャラクタVが実行しているモーションが、一の単位動作と他の単位動作とを含む場合、キャラクタVが一の単位動作を実行している場合に、仮想点Kが設定される部位と、キャラクタVが他の単位動作を実行している場合に、仮想点Kが設定される部位とは、異なる部位であってもよい。
上述した実施形態及び変形例において、仮想カメラ制御部112は、制御モードが姿勢追従制御モードの場合、HMD1の姿勢変化dB2に応じて定められるカメラ位置変化ベクトルVCに基づいて、仮想カメラCMの位置PCを変化させるが、本発明はこのような態様に限定されるものではない。
例えば、仮想カメラ制御部112は、制御モードが姿勢追従制御モードの場合に、仮想カメラCMが、環境構成物EVと接触しないように、仮想カメラCMの位置PCを変化させてもよい。具体的には、仮想カメラ制御部112は、制御モードが姿勢追従制御モードの場合に、仮想カメラCMを、環境構成物EVからの距離が、距離α(αは、α≧0を満たす実数)以上離間した領域である、領域Ar1において変化させてもよい。
また、例えば、仮想カメラ制御部112は、制御モードが姿勢追従制御モードの場合に、仮想カメラCMが、仮想点Kから遠ざかり過ぎないように、仮想カメラCMの位置PCを変化させてもよい。具体的には、仮想カメラ制御部112は、制御モードが姿勢追従制御モードの場合に、仮想カメラCMを、仮想点Kからの距離が、距離β(βは、β>0を満たす実数)以内となる領域である、領域Ar2において変化させてもよい。
また、例えば、仮想カメラ制御部112は、制御モードが姿勢追従制御モードの場合に、仮想カメラCMが、キャラクタVと接触しないように、仮想カメラCMの位置PCを変化させてもよい。具体的には、仮想カメラ制御部112は、制御モードが姿勢追従制御モードの場合に、仮想カメラCMを、キャラクタVからの距離が、距離γ(γは、γ≧0を満たす実数)以上離間した領域である、領域Ar3において変化させてもよい。
また、例えば、仮想カメラ制御部112は、制御モードが姿勢追従制御モードの場合に、仮想カメラCMが領域Ar1に位置するという条件と、仮想カメラCMが領域Ar2に位置するという条件と、仮想カメラCMが領域Ar3に位置するという条件と、のうち、一部または全部の条件を満たすように、仮想カメラCMの位置PCを変化させてもよい。
上述した実施形態及び変形例において、制御部11は、位置追従制御モード及び姿勢追従制御モードの、2つの制御モードによる表示処理の実行が可能であるが、本発明はこのような態様に限定されるものではない。制御部11は、位置追従制御モード及び姿勢追従制御モードのうち、一方の制御モードによる表示処理の実行が可能であってもよい。
例えば、制御部11は、図21に示すように、位置追従制御モードにより表示処理を実行するものであってもよい。なお、図21に示すフローチャートは、制御部11が、ステップS118及びステップS200~S220の処理を実行しない点を除き、図10及び図11に示すフローチャートと同様である。
また、例えば、制御部11は、図22に示すように、姿勢追従制御モードにより表示処理を実行するものであってもよい。なお、図22に示すフローチャートは、制御部11が、ステップS218及びステップS100~S120の処理を実行しない点を除き、図10及び図11に示すフローチャートと同様である。
上述した実施形態及び変形例において、仮想空間SP-VにおけるキャラクタVの位置及び形状は、モーション情報DMにより規定されているが、本発明はこのような態様に限定されるものではない。
例えば、キャラクタ制御部113は、モーション情報DMを用いずに、仮想空間SP-VにおけるキャラクタVの位置及び形状を決定してもよい。
具体的には、キャラクタ制御部113は、例えば、ユーザUによる操作部13の操作結果、または、ユーザUに装着されたHMD1の姿勢の変化に基づいて、仮想空間SP-VにおけるキャラクタVの位置及び形状を決定してもよい。
また、端末装置10は、外部装置(図示省略)と通信可能な通信装置(図示省略)を具備していてもよい。この場合、キャラクタ制御部113は、通信装置が外部装置から受信した情報に基づいて、仮想空間SP-VにおけるキャラクタVの位置及び形状を決定してもよい。例えば、端末装置10が他の端末装置10と通信可能である場合、キャラクタ制御部113は、端末装置10に設けられた通信装置が受信した、他のユーザUによる他の端末装置10の操作結果に基づいて、仮想空間SP-VにおけるキャラクタVの位置及び形状を決定してもよい。
上述した実施形態及び変形例において、HMD1は、HMD1を装着したユーザUの視線方向を検出するアイトラッキング機能を有していてもよい。
この場合、仮想カメラ制御部112は、位置追従制御モードにおいて、HMD1の姿勢変化dB1の代わりに、HMD1を装着したユーザUの視線方向に基づいて、仮想空間SP-Vにおける仮想カメラCMの姿勢を決定してもよい。
また、この場合、仮想カメラ制御部112は、姿勢追従制御モードにおいて、HMD1の姿勢変化dB2の代わりに、HMD1を装着したユーザUの視線方向に基づいて、仮想空間SP-Vにおける仮想カメラCMの位置PCを決定してもよい。
上述した実施形態及び変形例において、仮想カメラ制御部112は、現在時刻の仮想点Kの位置PKに基づいて、仮想カメラCMの位置または姿勢を決定するが、本発明はこのような態様に限定されるものではない。仮想カメラ制御部112は、現在時刻の仮想点Kの位置PKと、過去の仮想カメラCMの位置PC、若しくは、過去の仮想カメラCMの位置PCの変化量、または、過去の仮想カメラCMの姿勢、若しくは、過去の仮想カメラCMの姿勢の変化量と、に基づいて、現在時刻の仮想カメラCMの位置または姿勢を決定してもよい。
この例によれば、仮想空間SP-Vにおいて、仮想カメラCMの位置PCが急激に変化することを防止することができるため、仮想カメラCMの撮像結果である表示画像GHを視認するユーザUが、不快感を感じることを防止することが可能となる。
この例によれば、仮想空間SP-Vにおいて、仮想カメラCMの姿勢が急激に変化することを防止することができるため、仮想カメラCMの撮像結果である表示画像GHを視認するユーザUが、不快感を感じることを防止することが可能となる。
上述した実施形態及び変形例において、姿勢情報Bは、端末装置10の姿勢変化の検出結果を示すが、本発明はこのような態様に限定されるものではない。姿勢情報Bは、例えば、地上に固定された座標系から見た端末装置10の姿勢を示す情報であってもよい。
この場合、姿勢情報生成部14は、例えば、角速度センサ、及び、地磁気センサの一方または双方を含んで構成されていてもよい。また、この場合、姿勢情報Bは、例えば、HMD1の外部に設けられ、HMD1を撮像する撮像装置から出力される画像情報であってもよい。
上述した実施形態及び変形例において、情報処理装置は、HMD1に設けられるが、情報処理装置は、HMD1とは別個に設けられてもよい。
図23に示すように、表示システムSYSは、情報処理装置20と、情報処理装置20と通信可能なヘッドマウントディスプレイ1Aと、を備える。このうち、情報処理装置20は、例えば、制御部11と、操作部13と、記憶部15とを備えてもよい。また、ヘッドマウントディスプレイ1Aは、表示部12と、姿勢情報生成部14とに加え、ヘッドマウントディスプレイ1Aを装着したユーザUによる操作を受け付ける操作部31と、各種情報を記憶する記憶部32と、を備えてもよい。
以上の記載から、本発明は例えば以下のように把握される。なお、各態様の理解を容易にするために、以下では、図面の参照符号を便宜的に括弧書きで付記するが、本発明を図示の態様に限定する趣旨ではない。
本発明の一態様に係る情報処理装置のプログラムは、プロセッサを具備する情報処理装置のプログラムであって、前記プロセッサを、仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、ヘッドマウントディスプレイに設けられた表示部に表示させる表示制御部と、前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、して機能させ、前記表示制御部は、前記仮想空間における仮想点の位置に関する位置情報に基づいて、前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、前記姿勢情報に基づいて、前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、前記仮想点は、前記仮想空間に存在するオブジェクトに基づく位置に設定され、前記仮想空間における前記オブジェクトの位置及び形状のうち少なくとも一方の変化に基づいて、前記仮想点の位置が変化する、ことを特徴とする。
また、この態様によれば、実空間においてヘッドマウントディスプレイの位置を変化させることなく、仮想空間における仮想カメラの位置及び姿勢の双方を変化させることができる。このため、この態様によれば、例えば、実空間においてヘッドマウントディスプレイの位置を変化させることで、仮想空間における仮想カメラの位置または姿勢を変化させる場合と比較して、ヘッドマウントディスプレイを装着したユーザが、容易に、仮想空間における仮想カメラを操作することが可能となる。
また、この態様によれば、表示制御部が、オブジェクトの位置に基づいて仮想カメラの位置を変化させつつ、ヘッドマウントディスプレイの姿勢に基づいて仮想カメラの姿勢を変化させる。このため、この態様によれば、ヘッドマウントディスプレイの表示部にオブジェクトを継続的に表示させることと、ヘッドマウントディスプレイを装着したユーザに対して、仮想カメラの姿勢の操作に係る自由度を提供することとの、両立が可能となる。
本発明の他の態様に係る情報処理装置のプログラムは、プロセッサを具備する情報処理装置のプログラムであって、前記プロセッサを、仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、ヘッドマウントディスプレイに設けられた表示部に表示させる表示制御部と、前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、して機能させ、前記表示制御部は、前記仮想空間における仮想点の位置に関する位置情報に基づいて、前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、前記姿勢情報に基づいて、前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、前記仮想点は、前記仮想空間に存在するオブジェクトに基づく位置に設定され、前記仮想空間における前記オブジェクトの位置及び形状のうち少なくとも一方の変化に基づいて、前記仮想点の位置が変化する、ことを特徴とする。
また、この態様によれば、実空間においてヘッドマウントディスプレイの位置を変化させることなく、仮想空間における仮想カメラの位置及び姿勢の双方を変化させることができる。このため、この態様によれば、例えば、実空間においてヘッドマウントディスプレイの位置を変化させることで、仮想空間における仮想カメラの位置または姿勢を変化させる場合と比較して、ヘッドマウントディスプレイを装着したユーザが、容易に、仮想空間における仮想カメラを操作することが可能となる。
また、この態様によれば、表示制御部が、オブジェクトの位置に基づいて仮想カメラの姿勢を変化させつつ、ヘッドマウントディスプレイの姿勢に基づいて仮想カメラの位置を変化させる。このため、この態様によれば、ヘッドマウントディスプレイの表示部にオブジェクトを継続的に表示させることと、ヘッドマウントディスプレイを装着したユーザに対して、仮想カメラの位置の操作に係る自由度を提供することとの、両立が可能となる。
本発明の他の態様に係る情報処理装置のプログラムは、付記1または2に記載の情報処理装置のプログラムであって、前記仮想点は、前記オブジェクトの特定の部分に設定される、ことを特徴とする。
本発明の他の態様に係る情報処理装置のプログラムは、付記1または2に記載の情報処理装置のプログラムであって、前記仮想点は、前記オブジェクトが位置及び形状の少なくとも一方を変化させるモーションを実行する場合に、前記オブジェクトのうち、前記モーションに応じた部分に設定される、ことを特徴とする。
本発明の他の態様に係る情報処理装置のプログラムは、付記1または2に記載の情報処理装置のプログラムであって、前記オブジェクトは、前記仮想空間における位置及び形状の少なくとも一方を変化させる複数種類のモーションを実行可能であり、前記仮想点は、前記オブジェクトのうち、前記オブジェクトの実行しているモーションの種類に応じた部分に設定される、ことを特徴とする。
ここで、モーションを分類するための「所定の基準」とは、モーションの内容に基づく基準であってもよい。具体的には、「所定の基準」とは、例えば、オブジェクトが直立した状態で行われるモーションであるか否か、オブジェクトがモーションを実行する場合にオブジェクトの位置の変化量が所定の変化量以上となる位置変化の大きいモーションであるか否か、及び、オブジェクトがモーションを実行する場合にオブジェクトの形状の変化量が所定の変化量以上となる姿勢変化の大きいモーションであるか否か、等の一部または全部を含むものであってもよい。
また、モーションを分類するための「所定の基準」とは、モーションを実行可能なオブジェクトの種類に基づく基準であってもよい。具体的には、「所定の基準」とは、例えば、人間により実行可能なモーションであるか否か、人間以外のモンスター等により実行可能なモーションであるか否か、及び、仮想的な生物以外の人工物により実行可能なモーションであるか否か、等の一部または全部を含むものであってもよい。
本発明の他の態様に係る情報処理装置のプログラムは、付記1に記載の情報処理装置のプログラムであって、前記表示制御部は、第1の単位期間における、前記仮想カメラの前記仮想空間における位置の変化量と、前記第1の単位期間に後続する第2の単位期間における、前記仮想カメラの前記仮想空間における位置の変化量と、の差分値が、第1閾値以下となるように、前記仮想空間における前記仮想カメラの位置を変化させる、ことを特徴とする。
本発明の他の態様に係る情報処理装置のプログラムは、付記2に記載の情報処理装置のプログラムであって、前記表示制御部は、第1の単位期間における、前記仮想カメラの前記仮想空間における姿勢の変化量と、前記第1の単位期間に後続する第2の単位期間における、前記仮想カメラの前記仮想空間における姿勢の変化量と、の差分値が、第2閾値以下となるように、前記仮想空間における前記仮想カメラの姿勢を変化させる、ことを特徴とする。
本発明の他の態様に係る情報処理装置のプログラムは、付記6または7に記載の情報処理装置のプログラムであって、前記第1の単位期間は、前記オブジェクトが位置及び形状の少なくとも一方を変化させる、第1のモーションを実行する期間であり、前記第2の単位期間は、前記オブジェクトが位置及び形状の少なくとも一方を、前記第1のモーションとは異なる態様で変化させる、第2のモーションを実行する期間である、ことを特徴とする。
本発明の他の態様に係る情報処理装置のプログラムは、付記2に記載の情報処理装置のプログラムであって、前記表示制御部は、前記仮想空間における前記仮想カメラの位置が、前記仮想空間及び前記仮想点の少なくとも一方に基づいて定められる特定領域内に位置するように、前記仮想空間における前記仮想カメラの位置を変化させる、ことを特徴とする。
本発明の他の態様に係る情報処理装置のプログラムは、付記1乃至9に記載の情報処理装置のプログラムであって、前記表示制御部は、前記ヘッドマウントディスプレイが所定の姿勢変化をした場合に、前記仮想カメラによる前記仮想空間の撮像範囲を変化させる、ことを特徴とする。
本発明の一態様に係る情報処理装置は、仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、ヘッドマウントディスプレイに設けられた表示部に表示させる表示制御部と、前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、を備え、前記表示制御部は、前記仮想空間における仮想点の位置に関する位置情報に基づいて、前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、前記姿勢情報に基づいて、前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、前記仮想点は、前記仮想空間に存在するオブジェクトに基づく位置に設定され、前記仮想空間における前記オブジェクトの位置及び形状のうち少なくとも一方の変化に基づいて、前記仮想点の位置が変化する、ことを特徴とする。
本発明の他の態様に係る情報処理装置は、仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、ヘッドマウントディスプレイに設けられた表示部に表示させる表示制御部と、前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、を備え、前記表示制御部は、前記仮想空間における仮想点の位置に関する位置情報に基づいて、前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、前記姿勢情報に基づいて、前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、前記仮想点は、前記仮想空間に存在するオブジェクトに基づく位置に設定され、前記仮想空間における前記オブジェクトの位置及び形状のうち少なくとも一方の変化に基づいて、前記仮想点の位置が変化する、ことを特徴とする。
本発明の一態様に係るヘッドマウントディスプレイは、表示部と、情報処理装置と、を具備するヘッドマウントディスプレイであって、前記情報処理装置は、仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、前記表示部に表示させる表示制御部と、前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、を備え、前記表示制御部は、前記仮想空間における仮想点の位置に関する位置情報に基づいて、前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、前記姿勢情報に基づいて、前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、前記仮想点は、前記仮想空間に存在するオブジェクトに基づく位置に設定され、前記仮想空間における前記オブジェクトの位置及び形状のうち少なくとも一方の変化に基づいて、前記仮想点の位置が変化する、ことを特徴とする。
本発明の他の態様に係るヘッドマウントディスプレイは、表示部と、情報処理装置と、を具備するヘッドマウントディスプレイであって、前記情報処理装置は、仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、前記表示部に表示させる表示制御部と、前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、を備え、前記表示制御部は、前記仮想空間における仮想点の位置に関する位置情報に基づいて、前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、前記姿勢情報に基づいて、前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、前記仮想点は、前記仮想空間に存在するオブジェクトに基づく位置に設定され、前記仮想空間における前記オブジェクトの位置及び形状のうち少なくとも一方の変化に基づいて、前記仮想点の位置が変化する、ことを特徴とする。
本発明の一態様に係る表示システムは、表示部を有するヘッドマウントディスプレイと、情報処理装置と、を具備する表示システムであって、前記情報処理装置は、仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、前記表示部に表示させる表示制御部と、前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、を備え、前記表示制御部は、前記仮想空間における仮想点の位置に関する位置情報に基づいて、前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、前記姿勢情報に基づいて、前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、前記仮想点は、前記仮想空間に存在するオブジェクトに基づく位置に設定され、前記仮想空間における前記オブジェクトの位置及び形状のうち少なくとも一方の変化に基づいて、前記仮想点の位置が変化する、ことを特徴とする。
本発明の他の態様に係る表示システムは、表示部を有するヘッドマウントディスプレイと、情報処理装置と、を具備する表示システムであって、前記情報処理装置は、仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、前記表示部に表示させる表示制御部と、前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、を備え、前記表示制御部は、前記仮想空間における仮想点の位置に関する位置情報に基づいて、前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、前記姿勢情報に基づいて、前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、前記仮想点は、前記仮想空間に存在するオブジェクトに基づく位置に設定され、前記仮想空間における前記オブジェクトの位置及び形状のうち少なくとも一方の変化に基づいて、前記仮想点の位置が変化する、ことを特徴とする。
Claims (11)
- プロセッサを具備する情報処理装置のプログラムであって、
前記プロセッサを、
仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、
ヘッドマウントディスプレイに設けられた表示部に表示させる表示制御部と、
前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、
して機能させ、
前記表示制御部は、
前記仮想空間における仮想点の位置に関する位置情報に基づいて、
前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、
前記姿勢情報に基づいて、
前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、
前記仮想点は、
前記仮想空間に存在するオブジェクトに基づく位置に設定され、
前記仮想空間における前記オブジェクトの形状の変化に
基づいて、
前記仮想点の位置が変化し、
前記仮想点は、
前記オブジェクトが形状を変化させるモーションを実行する場合に、
前記オブジェクトのうち、前記モーションに応じた部分に設定される、
ことを特徴とする、情報処理装置のプログラム。 - プロセッサを具備する情報処理装置のプログラムであって、
前記プロセッサを、
仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、
ヘッドマウントディスプレイに設けられた表示部に表示させる表示制御部と、
前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、
して機能させ、
前記表示制御部は、
前記仮想空間における仮想点の位置に関する位置情報に基づいて、
前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、
前記姿勢情報に基づいて、
前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、
前記仮想点は、
前記仮想空間に存在するオブジェクトに基づく位置に設定され、
前記仮想空間における前記オブジェクトの形状の変化に
基づいて、
前記仮想点の位置が変化し、
前記仮想点は、
前記オブジェクトが形状を変化させるモーションを実行する場合に、
前記オブジェクトのうち、前記モーションに応じた部分に設定される、
ことを特徴とする、情報処理装置のプログラム。 - 前記仮想点は、
前記オブジェクトの特定の部分に設定される、
ことを特徴とする、請求項1または2に記載の情報処理装置のプログラム。 - 前記表示制御部は、
前記仮想空間における前記仮想カメラの位置が、
前記仮想空間及び前記仮想点の少なくとも一方に基づいて定められる特定領域内に位置するように、
前記仮想空間における前記仮想カメラの位置を変化させる、
ことを特徴とする、請求項2に記載の情報処理装置のプログラム。 - 前記表示制御部は、
前記ヘッドマウントディスプレイが所定の姿勢変化をした場合に、
前記仮想カメラによる前記仮想空間の撮像範囲を変化させる、
ことを特徴とする、請求項1乃至4のうち何れか1項に記載の情報処理装置のプログラム。 - 仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、
ヘッドマウントディスプレイに設けられた表示部に表示させる表示制御部と、
前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、
を備え、
前記表示制御部は、
前記仮想空間における仮想点の位置に関する位置情報に基づいて、
前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、
前記姿勢情報に基づいて、
前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、
前記仮想点は、
前記仮想空間に存在するオブジェクトに基づく位置に設定され、
前記仮想空間における前記オブジェクトの形状の変化に基づいて、
前記仮想点の位置が変化し、
前記仮想点は、
前記オブジェクトが形状を変化させるモーションを実行する場合に、
前記オブジェクトのうち、前記モーションに応じた部分に設定される、
ことを特徴とする、情報処理装置。 - 仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、
ヘッドマウントディスプレイに設けられた表示部に表示させる表示制御部と、
前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、
を備え、
前記表示制御部は、
前記仮想空間における仮想点の位置に関する位置情報に基づいて、
前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、
前記姿勢情報に基づいて、
前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、
前記仮想点は、
前記仮想空間に存在するオブジェクトに基づく位置に設定され、
前記仮想空間における前記オブジェクトの形状の変化に基づいて、
前記仮想点の位置が変化し、
前記仮想点は、
前記オブジェクトが形状を変化させるモーションを実行する場合に、
前記オブジェクトのうち、前記モーションに応じた部分に設定される、
ことを特徴とする、情報処理装置。 - 表示部と、情報処理装置と、を具備するヘッドマウントディスプレイであって、
前記情報処理装置は、
仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、
前記表示部に表示させる表示制御部と、
前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、
を備え、
前記表示制御部は、
前記仮想空間における仮想点の位置に関する位置情報に基づいて、
前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、
前記姿勢情報に基づいて、
前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、
前記仮想点は、
前記仮想空間に存在するオブジェクトに基づく位置に設定され、
前記仮想空間における前記オブジェクトの形状の変化に基づいて、
前記仮想点の位置が変化し、
前記仮想点は、
前記オブジェクトが形状を変化させるモーションを実行する場合に、
前記オブジェクトのうち、前記モーションに応じた部分に設定される、
ことを特徴とする、ヘッドマウントディスプレイ。 - 表示部と、情報処理装置と、を具備するヘッドマウントディスプレイであって、
前記情報処理装置は、
仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、
前記表示部に表示させる表示制御部と、
前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、
を備え、
前記表示制御部は、
前記仮想空間における仮想点の位置に関する位置情報に基づいて、
前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、
前記姿勢情報に基づいて、
前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、
前記仮想点は、
前記仮想空間に存在するオブジェクトに基づく位置に設定され、
前記仮想空間における前記オブジェクトの形状の変化に基づいて、
前記仮想点の位置が変化し、
前記仮想点は、
前記オブジェクトが形状を変化させるモーションを実行する場合に、
前記オブジェクトのうち、前記モーションに応じた部分に設定される、
ことを特徴とする、ヘッドマウントディスプレイ。 - 表示部を有するヘッドマウントディスプレイと、情報処理装置と、を具備する表示システムであって、
前記情報処理装置は、
仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、
前記表示部に表示させる表示制御部と、
前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、
を備え、
前記表示制御部は、
前記仮想空間における仮想点の位置に関する位置情報に基づいて、
前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、
前記姿勢情報に基づいて、
前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、
前記仮想点は、
前記仮想空間に存在するオブジェクトに基づく位置に設定され、
前記仮想空間における前記オブジェクトの形状の変化に基づいて、
前記仮想点の位置が変化し、
前記仮想点は、
前記オブジェクトが形状を変化させるモーションを実行する場合に、
前記オブジェクトのうち、前記モーションに応じた部分に設定される、
ことを特徴とする、表示システム。 - 表示部を有するヘッドマウントディスプレイと、情報処理装置と、を具備する表示システムであって、
前記情報処理装置は、
仮想空間を仮想カメラで撮像した画像であって、両眼視差を利用した立体視画像を、
前記表示部に表示させる表示制御部と、
前記ヘッドマウントディスプレイの姿勢に関する姿勢情報を取得する取得部と、
を備え、
前記表示制御部は、
前記仮想空間における仮想点の位置に関する位置情報に基づいて、
前記仮想空間における前記仮想カメラの姿勢を変化させることが可能であり、
前記姿勢情報に基づいて、
前記仮想空間における前記仮想カメラの位置を変化させることが可能であり、
前記仮想点は、
前記仮想空間に存在するオブジェクトに基づく位置に設定され、
前記仮想空間における前記オブジェクトの形状の変化に基づいて、
前記仮想点の位置が変化し、
前記仮想点は、
前記オブジェクトが形状を変化させるモーションを実行する場合に、
前記オブジェクトのうち、前記モーションに応じた部分に設定される、
ことを特徴とする、表示システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020030567A JP7043711B2 (ja) | 2020-02-26 | 2020-02-26 | 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020030567A JP7043711B2 (ja) | 2020-02-26 | 2020-02-26 | 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018011423A Division JP6675615B2 (ja) | 2018-01-26 | 2018-01-26 | 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020113291A JP2020113291A (ja) | 2020-07-27 |
JP7043711B2 true JP7043711B2 (ja) | 2022-03-30 |
Family
ID=71667156
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020030567A Active JP7043711B2 (ja) | 2020-02-26 | 2020-02-26 | 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7043711B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20240020851A (ko) * | 2022-08-09 | 2024-02-16 | 한국전자기술연구원 | 포인트 클라우드 기반 콘텐츠 스트리밍을 위한 영상 스트리밍 방법 및 장치 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009237680A (ja) | 2008-03-26 | 2009-10-15 | Namco Bandai Games Inc | プログラム、情報記憶媒体および画像生成システム |
JP2012003363A (ja) | 2010-06-15 | 2012-01-05 | Konami Digital Entertainment Co Ltd | ゲーム装置、ゲーム処理方法、ならびに、プログラム |
WO2016157523A1 (ja) | 2015-04-03 | 2016-10-06 | 株式会社SR laboratories | 表示端末ならびに情報記録媒体 |
JP2017142783A (ja) | 2017-01-04 | 2017-08-17 | 株式会社コロプラ | 仮想空間における視界領域調整方法、およびプログラム |
-
2020
- 2020-02-26 JP JP2020030567A patent/JP7043711B2/ja active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009237680A (ja) | 2008-03-26 | 2009-10-15 | Namco Bandai Games Inc | プログラム、情報記憶媒体および画像生成システム |
JP2012003363A (ja) | 2010-06-15 | 2012-01-05 | Konami Digital Entertainment Co Ltd | ゲーム装置、ゲーム処理方法、ならびに、プログラム |
WO2016157523A1 (ja) | 2015-04-03 | 2016-10-06 | 株式会社SR laboratories | 表示端末ならびに情報記録媒体 |
JP2017142783A (ja) | 2017-01-04 | 2017-08-17 | 株式会社コロプラ | 仮想空間における視界領域調整方法、およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP2020113291A (ja) | 2020-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1193651A2 (en) | Compound reality presentation | |
KR102461232B1 (ko) | 화상 처리 방법 및 장치, 전자 디바이스, 및 저장 매체 | |
JP2019152903A (ja) | 情報処理装置およびその制御方法 | |
CN111512277A (zh) | 信息处理装置、信息处理方法及程序 | |
JP7043711B2 (ja) | 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム | |
US11300794B2 (en) | Recording medium, information processing system, and information processing method | |
JP6707224B2 (ja) | 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム | |
JP6223614B1 (ja) | 情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 | |
JP6675615B2 (ja) | 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム | |
JP6388270B1 (ja) | 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム | |
US20220405996A1 (en) | Program, information processing apparatus, and information processing method | |
JP2024019911A (ja) | ヘッドマウントディスプレイおよび画像表示方法 | |
WO2021177471A1 (ja) | 検出装置、追跡装置、検出プログラム、及び追跡プログラム | |
JP6923964B2 (ja) | 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム | |
JP6623431B2 (ja) | 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム | |
CN114201028A (zh) | 扩增实境系统与其锚定显示虚拟对象的方法 | |
JP7078273B2 (ja) | 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、情報処理システム | |
JP5739673B2 (ja) | 画像表示プログラム、装置、システムおよび方法 | |
CN113412510A (zh) | 图像调整系统、图像调整装置以及图像调整方法 | |
JP2019175470A (ja) | 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、情報処理システム | |
KR20200112953A (ko) | 정보 처리 장치, 기록 매체, 헤드 마운트 디스플레이 및 정보 처리 시스템 | |
US20240054749A1 (en) | Information processing device and information processing method | |
WO2023120217A1 (ja) | 情報処理装置、情報処理方法およびプログラム | |
JP7295045B2 (ja) | プログラム、コンピュータが実行する方法及びコンピュータ | |
JP2019101468A (ja) | 仮想体験を提供するためのプログラム、情報処理装置、及び情報処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201222 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220128 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220208 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220222 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7043711 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |