JP2017142783A - 仮想空間における視界領域調整方法、およびプログラム - Google Patents

仮想空間における視界領域調整方法、およびプログラム Download PDF

Info

Publication number
JP2017142783A
JP2017142783A JP2017000263A JP2017000263A JP2017142783A JP 2017142783 A JP2017142783 A JP 2017142783A JP 2017000263 A JP2017000263 A JP 2017000263A JP 2017000263 A JP2017000263 A JP 2017000263A JP 2017142783 A JP2017142783 A JP 2017142783A
Authority
JP
Japan
Prior art keywords
player object
virtual camera
tracking area
visual field
area
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.)
Pending
Application number
JP2017000263A
Other languages
English (en)
Inventor
孝展 吉岡
Takanobu Yoshioka
孝展 吉岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Colopl Inc
Original Assignee
Colopl Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Colopl Inc filed Critical Colopl Inc
Priority to JP2017000263A priority Critical patent/JP2017142783A/ja
Publication of JP2017142783A publication Critical patent/JP2017142783A/ja
Pending legal-status Critical Current

Links

Abstract

【課題】臨場感を向上して映像酔いを低減する、仮想空間における視界領域を調整する方法を提供する。
【解決手段】仮想空間を構成する仮想空間画像のうち、ユーザが視認可能な視野画像を特定する仮想カメラを定義するステップS502と、視野画像を透過型ヘッドマウントディスプレイに表示させるステップS503と、ヘッドマウントディスプレイの動きと同期して仮想カメラの向きを変化させることで視野画像を更新するステップS506と、ユーザ作用に基づいて仮想空間内に配置されたプレイヤ・オブジェクトを移動させるステップS509と、ヘッドマウントディスプレイの動きと同期せずに仮想カメラの位置を変化させることで視野画像を更新する場合に、視界領域内で移動したプレイヤ・オブジェクトが視界領域内の所定範囲内に位置するように、仮想カメラの位置をプレイヤ・オブジェクトの移動方向に移動させるステップS514と、を含む。
【選択図】図6

Description

本発明は、ヘッドマウントディスプレイにユーザが没入する仮想空間を提供するための方法およびプログラムに関する。
特許文献1には、アプリケーション進行中に、ヘッドマウントディスプレイ(Head Mounted Display、以下、HMDとも称する。)を装着しているユーザの頭部の動きに連動してユーザ視野内に表示される仮想空間における画像の表示を変更する処理を行う一方、HMDと通信可能に接続されたコントローラを用いて仮想空間における画像の表示を変更することができるヘッドマウントディスプレイシステムが開示されている
特許第5767386号
"[CEDEC 2015]VRで"やってはいけないこと"とは? Oculus VRが快適なVRコンテンツ制作に向けたテクニックを伝授"、[online]、平成27年8月22日、4Gamer.net、[平成28年1月13日検索]、インターネット<URL:http://www.4gamer.net/games/195/G019528/20150828092/>
特許文献1に開示のようなヘッドマウントディスプレイシステムにおいて、例えばスポーツゲームの場合にはプレイヤ(選手)が仮想空間内を縦横無尽に動き回るのに対して、視野画像を定義する仮想カメラの位置を固定してしまうと、臨場感(仮想空間へのユーザの没入感)が損なわれる懸念がある。一方、HMDの動きと連動せずにコントローラを用いて仮想カメラの位置や向きを動かし視野画像を更新させると、ユーザはHMDの動きに連動しない視覚的効果を受けることで、映像酔い(いわゆるVR(Virtual Reality)酔い)を起こす可能性が高くなる。特に、非特許文献1に開示の通り、仮想カメラが後方へ移動した場合、高速で移動した場合、曲線運動により移動した場合などは、ユーザはVR酔いを起こしやすい。
本発明は、臨場感を向上し得るとともに、映像酔いを低減することが可能な、仮想空間における視界領域を調整するための方法およびプログラムを提供することを目的とする。
本発明によれば、
非透過型のヘッドマウントディスプレイに提供される仮想空間におけるユーザの視界領域を調整する方法であって、
前記仮想空間を構成する仮想空間画像のうち、前記ユーザが視認可能な視野画像を特定する仮想カメラを定義するステップと、
前記視野画像を前記ヘッドマウントディスプレイに表示させるステップと、
ユーザ作用に基づいて前記仮想空間内に配置されたプレイヤ・オブジェクトを移動させるステップと、
前記ヘッドマウントディスプレイの動きと同期して前記仮想カメラの向きを変化させることで前記視野画像を更新するステップと、
前記ヘッドマウントディスプレイの動きと同期せずに前記仮想カメラの位置を変化させることで前記視野画像を更新する場合に、前記視界領域内で移動した前記プレイヤ・オブジェクトが前記視界領域内の所定範囲内に位置するように、前記仮想カメラの位置を前記プレイヤ・オブジェクトの移動方向に移動させるステップと、を含む、方法が得られる。
また、本発明によれば、
上記に記載の仮想空間におけるユーザの視界領域を調整する方法をコンピュータに実行させるためのプログラムが得られる。
本発明によれば、臨場感を向上し得るとともに、映像酔いを低減することが可能な、仮想空間における視界領域を調整するための方法およびプログラムが提供される。
本実施形態に係るHMDシステムの構成を示す概略図である。 図1のHMDシステムが備える制御回路部のハードウェア構成を示すブロック図である。 HMDを装着するユーザの頭部を中心に規定される三次元空間上の直交座標系を示す図である。 (a)は、仮想空間および仮想カメラの一例を示すYZ平面図であり、(b)は、仮想空間および仮想カメラの一例を示すXZ平面図である。 本実施形態の構成を実現するための、制御回路部の機能を示すブロック図である。 本実施形態に係るHMDシステムにおける処理を示すフローチャートである。 (a)および(b)は、HMDの動きに同期して視野画像が更新される場合を示す平面図である。 (a)および(b)は、外部コントローラの入力に基づいてプレイヤ・オブジェクトが非追尾領域から遠方追尾領域へ移動した場合の態様を示す平面図である。 (a)および(b)は、外部コントローラの入力に基づいてプレイヤ・オブジェクトが非追尾領域から近傍追尾領域へ移動した場合の態様を示す平面図である。 (a)および(b)は、プレイヤ・オブジェクトの移動先が視界領域外であると判定された場合の態様を示す平面図である。 (a)および(b)は、プレイヤ・オブジェクトが遠方追尾領域内において移動した場合の態様を示す図である。 (a)および(b)は、非追尾領域と遠方追尾領域との間に緩衝(バッファ)領域が設けられた場合の態様を示す平面図である。
[本発明の実施形態の説明]
最初に、本発明の実施形態の内容を列記して説明する。本発明の一実施形態の仮想空間における視界領域調整方法およびプログラムは、以下のような構成を備える。
(項目1)
一実施形態に係る視界領域の調整方法は、
非透過型のヘッドマウントディスプレイに提供される仮想空間におけるユーザの視界領域を調整する方法であって、
前記仮想空間を構成する仮想空間画像のうち、前記ユーザが視認可能な視野画像を特定する仮想カメラを定義するステップと、
前記視野画像を前記ヘッドマウントディスプレイに表示させるステップと、
ユーザ作用に基づいて前記仮想空間内に配置されたプレイヤ・オブジェクトを移動させるステップと、
前記ヘッドマウントディスプレイの動きと同期して前記仮想カメラの向きを変化させることで前記視野画像を更新するステップと、
前記ヘッドマウントディスプレイの動きと同期せずに前記仮想カメラの位置を変化させることで前記視野画像を更新する場合に、前記視界領域内で移動した前記プレイヤ・オブジェクトが前記視界領域内の所定範囲内に位置するように、前記仮想カメラの位置を前記プレイヤ・オブジェクトの移動方向に移動させるステップと、を含む。
この構成によれば、プレイヤ・オブジェクトの動きに合わせて仮想カメラの位置を変化させて視野画像を更新させているため、ユーザの臨場感を向上させることができる。また、仮想カメラの向きはヘッドマウントディスプレイの動きと同期して変化させるものであって、当該向きの変更はユーザに予測可能であるため、ユーザのVR酔いを低減させることができる。
(項目2)
前記仮想カメラの位置を前記プレイヤ・オブジェクトの移動速度よりも遅い速度で移動させることが好ましい。
仮想カメラの位置をプレイヤ・オブジェクトよりも低速移動させることでVR酔いを起こしにくくなる。
(項目3)
前記視界領域は、前記所定範囲である非追尾領域と、前記非追尾領域よりも前記仮想カメラの近傍側の近傍追尾領域と、前記非追尾領域よりも前記仮想カメラの遠方側の遠方追尾領域とに区画されており、
前記非追尾領域内で前記プレイヤ・オブジェクトが移動した場合には、前記プレイヤ・オブジェクトの移動方向へ前記仮想カメラの位置を移動させず、前記プレイヤ・オブジェクトが前記非追尾領域から前記近傍追尾領域あるいは前記遠方追尾領域に移動した場合には、前記プレイヤ・オブジェクトが前記非追尾領域内に位置するように前記仮想カメラの位置を移動させることが好ましい。
この構成によれば、近傍追尾領域や遠方追尾領域へのプレイヤ・オブジェクトの移動に対しては適切に仮想カメラの追尾制御がなされるとともに、非追尾領域内におけるプレイヤ・オブジェクトの移動に対しては仮想カメラが追尾制御されることはないため、視野画像のふらつきに起因するVR酔いが抑えられる。
(項目4)
前記プレイヤ・オブジェクトが前記近傍追尾領域に移動した際の前記仮想カメラの位置の移動速度が、前記プレイヤ・オブジェクトが前記遠方追尾領域に移動した際の前記仮想カメラの位置の移動速度よりも遅くなるように制御することが好ましい。
仮想カメラの後方移動(近傍追尾領域に移動したプレイヤ・オブジェクトに応じた仮想カメラの位置移動)はVR酔いを起こしやすいため、前方移動(遠方追尾領域に移動したプレイヤ・オブジェクトに応じた仮想カメラの位置移動)の場合よりも移動速度を遅くすることでVR酔いをさらに低減させることができる。
(項目5)
前記近傍追尾領域内あるいは前記遠方追尾領域内において前記プレイヤ・オブジェクトが移動した場合には、前記プレイヤ・オブジェクトが前記非追尾領域内に位置するように前記仮想カメラの位置を移動させることが好ましい。
近傍追尾領域内や遠方追尾領域内におけるプレイヤ・オブジェクトの移動に対して仮想カメラの位置移動をプレイヤ・オブジェクトの動きにそのまま連動させるのではなく、あくまでもプレイヤ・オブジェクトを非追尾領域内に位置させるように追尾制御することで、映像のふらつきを抑えることができる。
(項目6)
前記非追尾領域と前記遠方追尾領域との間には緩衝領域が設けられており、
前記プレイヤ・オブジェクトが前記非追尾領域から前記遠方追尾領域に移動した場合には、前記プレイヤ・オブジェクトが前記遠方追尾領域と前記緩衝領域との境界に位置したときに前記仮想カメラの位置の移動を開始し、前記プレイヤ・オブジェクトが前記緩衝領域と前記非追尾領域との境界に位置したときに前記仮想カメラの位置の移動を終了することが好ましい。
緩衝領域を設けることで、仮想カメラの追尾制御が過敏になり過ぎることがなく、視野画像の過剰な変更を抑えることができる。
(項目7)
前記プレイヤ・オブジェクトが前記視界領域外に移動した場合には、前記仮想カメラの位置の移動を行わないように制御することが好ましい。
(項目8)
前記プレイヤ・オブジェクトが前記視界領域外に移動した後で前記ヘッドマウントディスプレイの動きに連動する前記視野画像の更新により再び前記プレイヤ・オブジェクトが前記視界領域内に入った場合には、前記非追尾領域内に前記プレイヤ・オブジェクトが位置されるように、前記仮想カメラの位置を移動させることが好ましい。
これらの構成によれば、仮想カメラによるプレイヤ・オブジェクトの追尾動作の主導権をユーザに委ねることでゲームの臨場感を高めることができる。
(項目9)
一実施形態に係るプログラムは、
項目1〜8のいずれかに記載の方法をコンピュータに実行させるためのプログラムである。
この構成によれば、臨場感を向上させつつ、VR酔いを低減させることができるプログラムが提供される。
[本発明の実施形態の詳細]
本発明の実施形態に係るHMDに提供される仮想空間におけるユーザの視界領域を調整する方法および当該方法をコンピュータに実行させるためのプログラムの具体例を、以下に図面を参照しつつ説明する。仮想空間は3次元仮想空間としているが、必ずしもそれに限られる必要はない。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。
図1は、本実施形態に係るHMDを用いたHMDシステムの構成の概要を示す図である。図2は、図1のHMDシステムが備える制御回路部のハードウェア構成を示すブロック図である。
図1に示すように、HMDシステム100は、ユーザUの頭部に装着されるHMD110と、制御回路部120と、動きセンサ130と、外部コントローラ140とを備えている。
HMD110は、表示部112と、HMDセンサ114と、ヘッドフォン116とを備えている。なお、HMD110にヘッドフォン116を設けずに、HMD110とは独立したスピーカやヘッドフォンを用いてもよい。
表示部112は、HMD110を装着したユーザUの視界(視野)を完全に覆うよう構成された非透過型の表示装置を備えている。これにより、ユーザUは、表示部112に表示される画面のみを観察することができる。すなわち、ユーザUは、外界の視野を失うため、制御回路部120において実行されるアプリケーションにより表示部112に表示される仮想空間に没入できる。
HMDセンサ114は、HMD110の表示部112近傍に搭載される。HMDセンサ114は、地磁気センサ、加速度センサ、傾き(角速度、ジャイロ)センサのうち少なくとも1つを含み、ユーザUの頭部に装着されたHMD110の各種動きを検出することができる。
動きセンサ130は、例えばポジション・トラッキング・カメラ(位置センサ)から構成される。動きセンサ130は、制御回路部120に通信可能に接続され、HMD110に設けられた図示しない複数の検知点の位置や傾きに関する情報を検出する機能を有する。検知点は、例えば赤外線や可視光を発する発光部である。動きセンサ130としてのポジション・トラッキング・カメラは、赤外線センサや複数の光学カメラを含む。制御回路部120は、動きセンサ130からHMD110の位置情報を取得することによって、仮想空間における仮想カメラの位置と、現実空間におけるHMD110を装着したユーザUの位置を正確に対応付けることができる。
HMD110の動きを検出するためのHMDセンサ114および動きセンサ130は、少なくともいずれか一方が設けられていればよい。いずれか一方を用いてHMD110の動きを十分に検出できる場合には、他方は設けられていなくてもよい。
制御回路部120は、HMD110とは別のハードウェア(例えば、パーソナルコンピュータやネットワークを通じたサーバ・コンピュータのようなコンピュータ)として構成され得る。図2に示すように、制御回路部120は、データ伝送路としての通信バスで互いに接続された処理回路121と、メモリ122と、記憶媒体123と、入出力インタフェース124と、通信インタフェース125とを含む。なお、制御回路部120は、HMD110の内部に搭載されても良い。また、制御回路部120は、一部の機能のみがHMD110に実装され、残りの機能がHMD110とは別のハードウェアに実装されても良い。
処理回路121は、CPU(Central Processing Unit)やMPU(Micro processing unit)、GPU(Graphics Processing Unit)等の各種プロセッサを含んで構成され、制御回路部120およびHMDシステム100全体を制御する機能を有する。
メモリ122は、ROM(Read Only Memory)やRAM(Random Access Memory)など揮発性記憶装置を含んで構成され、処理回路121が使用するプログラムや演算パラメータなどの制御用データを一時的に記憶する。
記憶媒体123は、フラッシュメモリやHDD(Hard Disk Drive)などの不揮発性記憶装置を含んで構成され、ユーザの認証プログラムや、各種画像やオブジェクトに関するデータを含むゲームプログラム等が格納される。記憶媒体123には、さらに、各種データを管理するためのテーブルを含むデータベースが構築されていても良い。
入出力インタフェース124は、USB(Universal Serial Bus)端子やDVI(Digital Visual Interface)端子やHDMI(登録商標)(High−Definition Multimedia Interface)端子等の各種接続端子や無線接続のための各種処理回路を含んで構成され、HMD110、動きセンサ130、外部コントローラ140等を接続する。
通信インタフェース125は、ネットワークNWを介して外部装置と通信するための各種有線接続端子や、無線接続のための各種処理回路を含んで構成され、LAN(Local Area Network)やインターネットを介して通信するための通信規格に適合するように構成されている。
制御回路部120は、メモリ122や記憶媒体123に格納された所定のアプリケーションを実行することにより、HMD110の表示部112に仮想空間を提供する。これにより、ユーザUを3次元仮想空間(VR空間)に没入させるための動作を、HMD110に実施させることができる。
外部コントローラ140は、一般的なユーザ端末であり、例えば、ゲーム用コンソールの他、スマートフォン、PDA(Personal Digital Assistant)、タブレット型コンピュータ、ノートPC(Personal Computer)のようなタッチ・ディスプレイを備える携帯型デバイスであることが好ましい。外部コントローラ140は、互いにバス接続されたCPU(Central Processing
Unit)、主記憶、補助記憶、送受信部、表示部、および入力部を備えることが好ましい。HMD110を装着したユーザUは、外部コントローラ140に対してタッチ操作等の入力を行うことにより、仮想空間に様々な操作指示を与えることができる。
次に、図3を参照して、HMD110の位置や傾き(視軸の向き)に関する情報の取得方法を説明する。HMD110を装着したユーザUの頭部の動きに基づくHMD110の位置(向きや傾きを含む)に関する情報は、動きセンサ130および/またはHMD110に搭載されるHMDセンサ114で検知可能である。図3に示すように、HMD110を装着したユーザUの頭部を中心として、3次元座標系(XYZ座標)が規定される。ユーザUが直立する垂直方向をY軸、Y軸と直交し表示部112の中心とユーザUとを結ぶ方向をZ軸、Y軸およびZ軸と直交する方向をX軸とする。動きセンサ130および/またはHMDセンサ114は、各軸回りの角度(すなわち、Y軸を軸とした回転を示すヨー角、X軸を軸とした回転を示すピッチ角、Z軸を軸とした回転を示すロール角で決定される傾き)を検知し、その経時的な変化により、制御回路部120が視野情報を定義する仮想カメラを制御するための角度(傾き)情報データを決定する。
図4(a)は、仮想空間および仮想カメラの一例を示すYZ平面図であり、図4(b)は、仮想空間および仮想カメラの一例を示すXZ平面図である。
図4(a)および(b)に示すように、仮想カメラ300は、天球状の仮想空間200内に配置されている。本例では、仮想カメラ300は、上面視において仮想空間200の中心に配置されているものとする。仮想空間200における仮想カメラ300の位置や向きに基づいて視界領域(ユーザが視認可能な視野)210が設定される。視界領域210は、仮想カメラ300の基準視線Lに基づいて決定される。視界領域210は、図4(a)に示すYZ平面において基準視線Lを中心として極角αを含む範囲として設定される第1領域210Aと、図4(b)に示すXZ平面において基準視線Lを中心として方位角βを含む範囲として設定される第2領域210Bとを有する。第1領域210Aおよび第2領域210Bからなる視界領域210に基づいてユーザが視認可能な視野画像が生成される。視野画像は、左目用と右目用の2つの二次元画像を含む。左目用と右目用の二次元画像がHMD110の表示部112に重畳されることにより、三次元画像としての視野画像がユーザに提供される。
仮想カメラ300の位置および向きの移動は、動きセンサ130/HMDセンサ114および/または外部コントローラ140の入力に基づいて制御され得る。本実施形態においては、動きセンサ130/HMDセンサ114からの入力に基づいて(すなわち、HMD110を装着したユーザの頭部の動きに同期して)仮想カメラ300の向きを変化させるとともに、外部コントローラ140からの入力に基づいて(すなわち、HMD110の動きに同期せずに)仮想カメラの位置を変化させている。
図5は、本実施形態の構成を実現するための、制御回路部120の機能を示すブロック図である。図6は、本実施形態に係るHMDシステムにおける処理を示すフローチャートである。
図5に示すように、制御回路部120は、仮想空間生成部410と、画像生成部420と、入力受付部430と、空間情報格納部440と、を備えている。画像生成部420は、視野画像生成部421と、入力判定部422と、カメラ制御部423と、第一視野画像更新部424と、オブジェクト移動制御部425と、オブジェクト移動判定部426と、第二視野画像更新部427とを含む。
図6に示すように、まず、仮想空間生成部410は、空間情報格納部440を参照して、ユーザが没入する天球状の仮想空間200を生成する(ステップS501)。図7(a),(b)に示すように、仮想空間200内には、仮想カメラ300とともに、例えばテニスゲーム等の対戦スポーツゲームにおける自プレイヤであるプレイヤ・オブジェクトP1や相手プレイヤであるプレイヤ・オブジェクトP2を含むゲーム・オブジェクトが配置される。図7(a)の例では、例えば、仮想カメラ300の基準視線L上にある所定の視界中心点Cにプレイヤ・オブジェクトP1が配置されるように仮想カメラ300の位置が設定されている。
次に、画像生成部420は、視野画像生成部421において、仮想空間200内の仮想カメラ300の位置および向きに基づいて、ユーザが視認可能な視界領域210を特定する(ステップS502)。図7(a)に示すように、視界領域210は、基準視線L上の視界中心点Cを含み左右に延びる帯状の非追尾領域211と、非追尾領域211よりも仮想カメラ300の近傍側の近傍追尾領域212と、非追尾領域211よりも仮想カメラ300の遠方側の遠方追尾領域213とに区画されている。図7(a)に示すように、例えば、HMD110を装着したユーザがプレイヤ・オブジェクトP1を見ている場合には、非追尾領域211内の視界中心点C付近にプレイヤ・オブジェクトP1が位置するように、仮想カメラ300の位置および向きが設定される。
そして、視野画像生成部421は、ステップS502を実行した結果として、仮想カメラ300の視界領域210に基づく視野画像の表示態様に関する情報をHMD110へ出力する。HMD110は、この情報を受信し、表示部112に、視野画像を表示させる(ステップS503)。
次に、入力受付部430は、仮想カメラ300の位置および/または向きを動かすための入力として、HMDセンサ114、動きセンサ130および外部コントローラ140からの入力を受け付ける(ステップS504)。なお、VR空間を用いて実行されるコンテンツによっては、HMD110の動きや外部コントローラ140の入力が無い状態で、自動的に仮想カメラ300が仮想空間200内で動いて視界領域210が変更される場合もある。
次に、画像生成部420は、入力判定部422において、仮想カメラ300の動きが、HMD110の動きと同期させる場合におけるものか、HMD110の動きと同期させない場合におけるものかを判定する(ステップS505)。すなわち、入力判定部422は、ステップS504による入力がHMDセンサ114および/または動きセンサ130からの入力であるか、外部コントローラ140からの入力であるかを判定する。
HMD110の動きと同期して仮想カメラ300を動かす入力(すなわち、HMDセンサ114および/または動きセンサ130からの入力)であると判定された場合は(ステップS505のYes)、画像生成部420は、カメラ制御部423において、HMDセンサ114および/または動きセンサ130からの入力に基づいて仮想カメラ300の新たな向きを特定する(ステップS506)。そして、画像生成部420は、第一視野画像更新部424において、特定された仮想カメラ300の新たな向きに基づいて新たな視野画像を特定し、仮想カメラ300の向きの変化に応じて更新される視野画像を生成する(ステップS507)。このように、仮想カメラ300の動きが、HMD110の動きに同期して制御される場合には、仮想カメラ300の基準視線LがHMD110の3次元座標系のZ軸方向(図3参照)に対応するように、現実空間におけるHMD110の動きと仮想空間200における仮想カメラ300の動きが対応付けられる。図7(a)に示す例において、ユーザがプレイヤ・オブジェクトP1から他のゲーム・オブジェクト(例えば、プレイヤ・オブジェクトP2)に視線を向けるように頭部を動かすと、図7(b)に示すように、HMD110の動きに同期して、基準視線L上にプレイヤ・オブジェクトP2が位置するように仮想カメラ300の向きが変更される。これにより、視界領域210が変更され、ユーザが視認可能な視野画像が更新される。このように、HMD110の動きと同期して仮想カメラ300の向きを変化させることで視野画像が更新され得る。なお、このとき、HMD110の動きに同期して仮想カメラ300の向きが変更された場合でも、自プレイヤであるプレイヤ・オブジェクトP1が視界領域210内に含まれる限りにおいて、プレイヤ・オブジェクトP1が非追尾領域211内に位置するように仮想カメラ300の位置が設定される。プレイヤ・オブジェクトP1が視界領域210内に含まれなくなった場合の仮想カメラ300の位置調整については後述する。
次いで、第一視野画像更新部424は、ステップS507を実行した結果として、仮想カメラ300の向きが変化することにより更新される視野画像の表示態様に関する情報をHMD110へ出力する。HMD110は、この情報を受信し、表示部112に表示される視野画像を更新する(ステップS508)。そして、ステップS504に戻る。
これに対し、ステップS505において、HMD110の動きと同期せずに仮想カメラ300を動かす入力(すなわち、外部コントローラ140からの入力)であると判定された場合は(ステップS505のNo)、画像生成部420は、オブジェクト移動制御部425において、外部コントローラ140からの入力に基づいてプレイヤ・オブジェクトP1を移動させる(ステップS509)。具体的には、オブジェクト移動制御部425は、プレイヤ・オブジェクトP1の移動に関する情報をHMD110へ出力し、HMD110は受信した情報に基づいて表示部112に表示されるプレイヤ・オブジェクトP1を移動させる。なお、外部コントローラ140への入力が無い状態で、自動的にプレイヤ・オブジェクトP1が仮想空間200内で移動する場合もある。
次に、画像生成部420は、オブジェクト移動判定部426において、プレイヤ・オブジェクトP1の移動先の位置を特定し、当該移動先の位置が非追尾領域211内であるか否かを判定する(ステップS510)。プレイヤ・オブジェクトP1の移動先が非追尾領域211内であると判定された場合には(ステップS510のYes)、画像生成部420は、仮想カメラ300の位置移動を行うことなく、ステップS504へ戻る。このように、非追尾領域211内におけるプレイヤ・オブジェクトP1の移動に対しては仮想カメラ300が追尾制御されることはないため、視野画像のふらつきに起因するVR酔いの可能性を低減させることができる。
一方、プレイヤ・オブジェクトP1の移動先が非追尾領域211内でないと判定された場合には(ステップS510のNo)、オブジェクト移動判定部426は、プレイヤ・オブジェクトP1の移動先が近傍追尾領域212または遠方追尾領域213内であるか否かを判定する(ステップS511)。
プレイヤ・オブジェクトP1の移動先が近傍追尾領域212または遠方追尾領域213整理番号:COL08028 特願2016-024810 (Proof) 提出日:平成28年 2月12日 9内であると判定された場合には(ステップS511のYes)、カメラ制御部423は、プレイヤ・オブジェクトP1の移動先の位置に基づいて仮想カメラ300の新たな位置を特定する(ステップS512)。そして、画像生成部420は、第二視野画像更新部427において、特定された仮想カメラ300の新たな位置に基づいて新たな視野画像を特定し、仮想カメラ300の位置の変化に応じて更新される視野画像を生成する(ステップS513)。このように、仮想カメラ300の動きが、HMD110の動きに同期せずに制御される場合には、プレイヤ・オブジェクトP1の移動に追尾するように仮想カメラ300の位置が移動される。
例えば、図8(a)に示すように、外部コントローラ140の入力に基づいてプレイヤ・オブジェクトP1が非追尾領域211から遠方追尾領域213へ移動した場合には、カメラ制御部423は、移動したプレイヤ・オブジェクトP1が非追尾領域211内に位置するように、仮想カメラ300の位置をプレイヤ・オブジェクトP1の移動方向に移動させる。すなわち、図8(b)に示すように、カメラ制御部423は、プレイヤ・オブジェクトP1が非追尾領域211内に位置するまで、仮想カメラ300を前方に移動させる。詳細には、仮想カメラ300は、プレイヤ・オブジェクトP1の移動先方向を特定し、当該移動先と仮想カメラ300の位置との間の距離が所定範囲内に入るように仮想カメラ300を図8(a)に示す位置(図8(b)の破線位置)からプレイヤ・オブジェクトP1の移動先方向に向けて移動する。プレイヤ・オブジェクトP1の移動先は、基準視線Lに対するプレイヤ・オブジェクトP1の移動先方向Dの角度θにより特定され、仮想カメラ300は、この角度θを保ったまま、プレイヤ・オブジェクトP1が非追尾領域211内に収まるように斜めに移動される。すなわち、外部コントローラ140の入力に基づくプレイヤ・オブジェクトP1の移動に対しては、仮想カメラ300の向きは変化させずに、仮想カメラ300の位置を変化させるように追尾制御を行う。プレイヤ・オブジェクトP1の移動先の特定は、毎フレーム(または所定フレーム)ごとに行われ、仮想カメラ300の移動方向も所定フレーム毎に更新される。なお、カメラ制御部423は、プレイヤ・オブジェクトP1の全体が非追尾領域211内に入るように移動させるのではなく、図8(c)に示すように、プレイヤ・オブジェクトP1の少なくとも一部が非追尾領域211に差し掛かる位置となるように、仮想カメラ300の位置を移動させても良い。また、図9(a)に示すように、外部コントローラ140の入力に基づいてプレイヤ・オブジェクトP1が非追尾領域211から近傍追尾領域212へ移動した場合には、図9(b)に示すように、カメラ制御部423は、プレイヤ・オブジェクトP1が非追尾領域211内に位置するまで、仮想カメラ300を現在のカメラ位置からプレイヤ・オブジェクトP1の移動先方向Dに沿って斜め後方に移動させる。
このようにプレイヤ・オブジェクトP1の移動に追尾するように仮想カメラ300の位置が移動される場合には、カメラ制御部423は、仮想カメラ300の位置をプレイヤ・オブジェクトP1の移動速度よりも遅い速度で移動させることが好ましい。仮想カメラ300の位置をプレイヤ・オブジェクトP1よりも低速移動させることでVR酔いを起こしにくくなる。また、カメラ制御部423は、プレイヤ・オブジェクトP1が近傍追尾領域212に移動した際の仮想カメラ300の位置の移動速度が、プレイヤ・オブジェクトP1が遠方追尾領域213に移動した際の仮想カメラ300の位置の移動速度よりも遅くなるように制御することが好ましい。仮想カメラ300の後方への移動はVR酔いを起こしやすいため、前方への移動の場合よりも移動速度を遅くすることでVR酔いをさらに低減させることができるためである。
次に、第二視野画像更新部427は、ステップS513を実行した結果として、更新される視野画像の表示態様に関する情報をHMD110へ出力する。HMD110は、表示部112に、更新された視野画像を表示させる(ステップS514)。そして、ステップS504に戻る。
一方、プレイヤ・オブジェクトP1の移動先が近傍追尾領域212または遠方追尾領域213内でない、すなわち図10(a)に示すようにプレイヤ・オブジェクトP1の移動先が視界領域210外であると判定された場合には(ステップS511のNo)、仮想カメラ300の位置移動を行うことなく、ステップS504へ戻る。なお、図10(b)に示すように、プレイヤ・オブジェクトP1が視界領域210外に移動した後で、ユーザがプレイヤ・オブジェクトP1へ視線を移すとHMD110の動きに連動して視野画像が更新される。この視野画像の更新により再びプレイヤ・オブジェクトP1が視界領域210内に入った場合には、図10(c)に示すように、非追尾領域211内にプレイヤ・オブジェクトP1が位置されるように、仮想カメラ300の位置が制御される。プレイヤ・オブジェクトP1の移動先が視界領域210外である場合にまで、HMD110の動きと同期せずに仮想カメラ300による追尾を行うと臨場感を損なうおそれがあるため、この場合には仮想カメラ300によるプレイヤ・オブジェクトP1の追尾動作の主導権をユーザに委ねている。
上記説明したように、本実施形態においては、HMD110の動きと同期して仮想カメラ300の向きを変化させることで視野画像を更新するステップと、HMD110の動きと同期せずに仮想カメラ300の位置を変化させることで視野画像を更新する場合に、ユーザ作用に基づいて視界領域210内で移動されたプレイヤ・オブジェクトP1が非追尾領域211内に位置するように、仮想カメラ300の位置をプレイヤ・オブジェクトP1の移動方向に移動させるステップと、を含んでいる。この構成によれば、プレイヤ・オブジェクトP1の動きに合わせて仮想カメラ300の位置を変化させて視野画像を更新させているため、ユーザの臨場感を向上させることができる。また、仮想カメラ300の向きはHMD110の動きと同期して変化させるものであって、この向きの変更に関してはユーザに予測可能であるため、ユーザのVR酔いを低減させることができる。
図11(a)に示すように、プレイヤ・オブジェクトP1が遠方追尾領域213内(あるいは近傍追尾領域212内)において移動した場合には、仮想カメラ300の位置の移動をプレイヤ・オブジェクトP1の動きにそのまま連動させるのではなく、図11(b)に示すように、プレイヤ・オブジェクトP1が非追尾領域211内に位置するように仮想カメラ300の位置を移動させることが好ましい。遠方追尾領域213内や近傍追尾領域212内におけるプレイヤ・オブジェクトP1の移動に対しては、あくまでもプレイヤ・オブジェクトP1を非追尾領域211内に位置させるように仮想カメラ300の位置を制御することで、映像のふらつきを抑えることができる。
また、図12(a)に示すように、視界領域210のうち、非追尾領域211と遠方追尾領域213との間には緩衝領域(バッファ領域)214が設けられてもよい。この場合、プレイヤ・オブジェクトP1が非追尾領域211から遠方追尾領域213に向けて移動する場合に、図12(a)に示すように、プレイヤ・オブジェクトP1が非追尾領域211と緩衝領域214との境界に差し掛かったときには仮想カメラ300の位置を移動させず、図12(b)に示すように、プレイヤ・オブジェクトP1が緩衝領域214と遠方追尾領域213との境界に差し掛かったときに仮想カメラ300の位置の移動を開始する。そして、仮想カメラ300の位置を移動させることで、図12(a)に示すようにプレイヤ・オブジェクトP1が緩衝領域214と非追尾領域211との境界に再び差し掛かったときに仮想カメラ300の位置の移動を終了する。このように、仮想カメラ300による追尾移動を遅延制御するための緩衝領域214を設けることで、仮想カメラ300の追尾制御が過敏になり過ぎることがなく、視野画像の過剰な変更を抑えることができる。
上記の実施形態は、本発明の理解を容易にするための例示に過ぎず、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良することができると共に、本発明にはその均等物が含まれることは言うまでもない。
上記の実施形態では追尾領域212,213および非追尾領域211が基準視線Lに基づいて設定されている例を示したが、これに限定されない。例えば、追尾領域212,213および非追尾領域211は、仮想カメラ300とプレイヤ・オブジェクトP1の位置関係に基づいて設定されていてもよい。この場合には、プレイヤ・オブジェクトP1が仮想カメラ300から所定の距離に配置されるように配置されるようにすることができる。
100:ヘッドマウントディスプレイシステム(HMDシステム)、110:ヘッドマウントディスプレイ(HMD)、112:表示部、114:センサ、116:ヘッドフォ
ン、120:制御回路部、121:処理回路、122:メモリ、123:記憶媒体、124:入出力インタフェース、125:通信インタフェース、130:動きセンサ、140:外部コントローラ、200:仮想空間、210:視界領域、211:非追尾領域、212:近傍追尾領域、213:遠方追尾領域、214:緩衝(バッファ)領域、300:仮想カメラ、410:仮想空間生成部、420:画像生成部、421:視野画像生成部、422:入力判定部、423:カメラ制御部、424:第一視野画像更新部、425:オブジェクト移動制御部、426:オブジェクト移動判定部、427:第二視野画像更新部、430:入力受付部、440:空間情報格納部、L:基準視線、C:視界中心点、P1,P2:プレイヤ・オブジェクト


Claims (9)

  1. 非透過型のヘッドマウントディスプレイに提供される仮想空間におけるユーザの視界領域を調整する方法であって、
    前記仮想空間を構成する仮想空間画像のうち、前記ユーザが視認可能な視野画像を特定する仮想カメラを定義するステップと、
    前記視野画像を前記ヘッドマウントディスプレイに表示させるステップと、
    ユーザ作用に基づいて前記仮想空間内に配置されたプレイヤ・オブジェクトを移動させるステップと、
    前記ヘッドマウントディスプレイの動きと同期して前記仮想カメラの向きを変化させることで前記視野画像を更新するステップと、
    前記ヘッドマウントディスプレイの動きと同期せずに前記仮想カメラの位置を変化させることで前記視野画像を更新する場合に、前記視界領域内で移動した前記プレイヤ・オブジェクトが前記視界領域内の所定範囲内に位置するように、前記仮想カメラの位置を前記プレイヤ・オブジェクトの移動方向に移動させるステップと、を含む、方法。
  2. 前記仮想カメラの位置を前記プレイヤ・オブジェクトの移動速度よりも遅い速度で移動させる、請求項1に記載の方法。
  3. 前記視界領域は、前記所定範囲である非追尾領域と、前記非追尾領域よりも前記仮想カメラの近傍側の近傍追尾領域と、前記非追尾領域よりも前記仮想カメラの遠方側の遠方追尾領域とに区画されており、
    前記非追尾領域内で前記プレイヤ・オブジェクトが移動した場合には、前記プレイヤ・オブジェクトの移動方向へ前記仮想カメラの位置を移動させず、前記プレイヤ・オブジェクトが前記非追尾領域から前記近傍追尾領域あるいは前記遠方追尾領域に移動した場合には、前記プレイヤ・オブジェクトが前記非追尾領域内に位置するように前記仮想カメラの位置を移動させる、請求項1または2に記載の方法。
  4. 前記プレイヤ・オブジェクトが前記近傍追尾領域に移動した際の前記仮想カメラの位置の移動速度が、前記プレイヤ・オブジェクトが前記遠方追尾領域に移動した際の前記仮想カメラの位置の移動速度よりも遅くなるように制御する、請求項3に記載の方法。
  5. 前記近傍追尾領域内あるいは前記遠方追尾領域内において前記プレイヤ・オブジェクトが移動した場合には、前記プレイヤ・オブジェクトが前記非追尾領域内に位置するように前記仮想カメラの位置を移動させる、請求項3または4に記載の方法。
  6. 前記非追尾領域と前記遠方追尾領域との間には緩衝領域が設けられており、
    前記プレイヤ・オブジェクトが前記非追尾領域から前記遠方追尾領域に移動した場合には、前記プレイヤ・オブジェクトが前記遠方追尾領域と前記緩衝領域との境界に位置したときに前記仮想カメラの位置の移動を開始し、前記プレイヤ・オブジェクトが前記緩衝領域と前記非追尾領域との境界に位置したときに前記仮想カメラの位置の移動を終了する、請求項3から5のいずれか一項に記載の方法。
  7. 前記プレイヤ・オブジェクトが前記視界領域外に移動した場合には、前記仮想カメラの位置の移動を行わないように制御する、請求項3から6のいずれか一項に記載の方法。
  8. 前記プレイヤ・オブジェクトが前記視界領域外に移動した後で前記ヘッドマウントディスプレイの動きに連動する前記視野画像の更新により再び前記プレイヤ・オブジェクトが前記視界領域内に入った場合には、前記非追尾領域内に前記プレイヤ・オブジェクトが位置されるように、前記仮想カメラの位置を移動させる、請求項7に記載の方法。
  9. 請求項1〜8のいずれか一項に記載の方法をコンピュータに実行させるためのプログラム。


JP2017000263A 2017-01-04 2017-01-04 仮想空間における視界領域調整方法、およびプログラム Pending JP2017142783A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017000263A JP2017142783A (ja) 2017-01-04 2017-01-04 仮想空間における視界領域調整方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017000263A JP2017142783A (ja) 2017-01-04 2017-01-04 仮想空間における視界領域調整方法、およびプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016024810A Division JP6074525B1 (ja) 2016-02-12 2016-02-12 仮想空間における視界領域調整方法、およびプログラム

Publications (1)

Publication Number Publication Date
JP2017142783A true JP2017142783A (ja) 2017-08-17

Family

ID=59628590

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017000263A Pending JP2017142783A (ja) 2017-01-04 2017-01-04 仮想空間における視界領域調整方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP2017142783A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019128875A (ja) * 2018-01-26 2019-08-01 株式会社コナミデジタルエンタテインメント 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム
JP2020113291A (ja) * 2020-02-26 2020-07-27 株式会社コナミデジタルエンタテインメント 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム
JP2022550126A (ja) * 2020-01-17 2022-11-30 テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド レンズの動きを制御する方法及び装置並びコンピュータ装置及びプログラム
CN115861581A (zh) * 2023-02-08 2023-03-28 成都艺馨达科技有限公司 一种基于混合现实的移动互联云服务方法及系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019128875A (ja) * 2018-01-26 2019-08-01 株式会社コナミデジタルエンタテインメント 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム
JP2022550126A (ja) * 2020-01-17 2022-11-30 テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド レンズの動きを制御する方法及び装置並びコンピュータ装置及びプログラム
JP2020113291A (ja) * 2020-02-26 2020-07-27 株式会社コナミデジタルエンタテインメント 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム
JP7043711B2 (ja) 2020-02-26 2022-03-30 株式会社コナミデジタルエンタテインメント 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、表示システム
CN115861581A (zh) * 2023-02-08 2023-03-28 成都艺馨达科技有限公司 一种基于混合现实的移动互联云服务方法及系统

Similar Documents

Publication Publication Date Title
JP6074525B1 (ja) 仮想空間における視界領域調整方法、およびプログラム
JP6087453B1 (ja) 仮想空間の提供方法、およびプログラム
JP6058184B1 (ja) ヘッドマウントディスプレイシステムを制御するための方法、および、プログラム
US10394319B2 (en) Method of displaying an image, and system therefor
JP5996814B1 (ja) 仮想空間の画像をヘッドマウントディスプレイに提供する方法及びプログラム
JP6058855B1 (ja) 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム
JP6342038B1 (ja) 仮想空間を提供するためのプログラム、当該プログラムを実行するための情報処理装置、および仮想空間を提供するための方法
JP6002286B1 (ja) ヘッドマウントディスプレイ制御方法、および、ヘッドマウントディスプレイ制御プログラム
JP2017138973A (ja) 仮想空間の提供方法、およびプログラム
US10504296B2 (en) Information processing method and system for executing the information processing method
JP2017045294A (ja) ヘッドマウントディスプレイシステムを制御するプログラム
JP2017111539A (ja) プログラム及びコンピュータ
JP2017142783A (ja) 仮想空間における視界領域調整方法、およびプログラム
JP6121496B2 (ja) ヘッドマウントディスプレイシステムを制御するプログラム
JP2017021824A (ja) ヘッドマウントディスプレイ制御方法、および、ヘッドマウントディスプレイ制御プログラム
JP2017121082A (ja) プログラム及びコンピュータ
JP2018026048A (ja) 情報処理方法および当該情報処理方法をコンピュータに実行させるためのプログラム
JP2017097918A (ja) 画像表示方法及びプログラム
JP2017162443A (ja) ヘッドマウントディスプレイシステムを制御するための方法、および、プログラム
JP6121495B2 (ja) ヘッドマウントディスプレイシステムを制御するプログラム
WO2023242981A1 (ja) ヘッドマウントディスプレイ、ヘッドマウントディスプレイシステム、および、ヘッドマウントディスプレイの表示方法
JP2017142769A (ja) 仮想空間の画像をヘッドマウントディスプレイに提供する方法及びプログラム
JP2018007227A (ja) 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム
JP2018200688A (ja) 仮想空間を提供するためのプログラム、当該プログラムを実行するための情報処理装置、および仮想空間を提供するための方法
JP2018089351A (ja) 情報処理方法および当該情報処理方法をコンピュータに実行させるためのプログラム