(57)【特許請求の範囲】
【請求項１】
第１ユーザが使用するコンピュータを、
第２ユーザが使用する、前記コンピュータとは異なる他のコンピュータが前記第２ユーザの操作を受け付ける受付間隔より間隔が長い所定の間隔で、前記他のコンピュータが当該所定の間隔に基づく所定のタイミングで受け付けた前記第２ユーザの操作に基づく第２ユーザ情報を受信する受信部、
前記受信部が前記第２ユーザ情報を受信するごとに、当該第２ユーザ情報に基づいて、前記第２ユーザの操作に伴って変化する変化オブジェクトの変化情報を算出する算出部、及び
前記変化情報に基づいて、前記変化オブジェクトを表示部に表示させる表示制御部、
として機能させ、
前記受信部は、前記変化情報を更新するための更新情報を受信し、
前記表示制御部は、前記算出部が算出した前記変化情報に基づいて表示させた前記変化オブジェクトを、前記更新情報に基づき更新する、
プログラム。
【請求項２】
前記第２ユーザ情報は、前記第２ユーザの操作に基づく操作オブジェクトの位置座標を含み、
前記更新情報は、前記変化オブジェクトの形状を示すための情報であり、
前記算出部は、前記操作オブジェクトの位置座標に基づいて、前記変化情報を算出し、
前記表示制御部は、前記算出部が算出した前記変化情報に基づいて表示させた前記変化オブジェクトの形状を、前記更新情報に基づき更新する、
請求項１に記載のプログラム。
【請求項３】
前記変化オブジェクトは、仮想空間において、前記第２ユーザの操作に基づいて描画される描画オブジェクトであり、
前記算出部は、前記操作オブジェクトの位置座標に基づいて、前記仮想空間に前記描画オブジェクトを描画するための描画位置座標を含む前記変化情報を算出し、
前記表示制御部は、前記算出部が算出した各描画位置座標に基づいて前記描画オブジェクトを表示させ、
前記受信部は、複数の前記描画位置座標を含む前記更新情報を受信し、
前記表示制御部は、前記算出部が算出した前記描画位置座標に基づいて表示した前記描画オブジェクトの形状を、前記受信部が受信した前記複数の描画位置座標に基づき更新する、
請求項２に記載のプログラム。
【請求項４】
前記受信部は、第１間隔で、前記第２ユーザ情報を受信し、
前記算出部は、前記受信部が前記第２ユーザ情報を受信するごとに、前記描画位置座標を算出し、
前記表示制御部は、前記算出部が算出した前記描画位置座標と、当該描画位置座標が算出される直前に算出された前記描画位置座標とを結んだ前記描画オブジェクトを描画して表示させ、
前記受信部は、前記他のコンピュータが前記第１間隔よりも短い間隔である第２間隔で受け付けた前記第２ユーザの操作に基づいて算出した前記複数の描画位置座標を含む前記更新情報を受信し、
前記表示制御部は、前記受信部が前記複数の描画位置座標を受信した場合に、前記第２ユーザ情報に対応する前記描画オブジェクトである第１描画オブジェクトの形状を、前記更新情報に対応する前記描画オブジェクトであって、前記第１描画オブジェクトより各描画位置座標の間隔が短い第２描画オブジェクトの形状に更新する、
請求項３に記載のプログラム。
【請求項５】
前記コンピュータを、
前記第１ユーザの操作を受け付ける受付部、及び
前記受付部が受け付けた前記第１ユーザの操作に基づく第１ユーザ情報を前記他のコンピュータに送信する送信部、
としてさらに機能させ、
前記算出部は、前記受付部が受け付けた前記第１ユーザの操作であって、前記第１ユーザを示す第１ユーザオブジェクトが前記変化オブジェクトの形状を変化させる操作に基づいて、前記変化情報を算出し、
前記送信部は、前記算出部が算出した前記変化情報に対応する前記更新情報を前記他のコンピュータに送信する、
請求項２から４のいずれか一項に記載のプログラム。
【請求項６】
前記変化オブジェクトは、仮想空間において、前記第２ユーザの操作に伴って動き得る動的オブジェクトであり、
前記更新情報は、前記動的オブジェクトの位置を示すための情報であり、
前記表示制御部は、前記算出部が算出した前記変化情報に基づいて表示させた前記動的オブジェクトの位置を、前記更新情報に基づき更新する、
請求項１に記載のプログラム。
【請求項７】
前記算出部は、第２ユーザ情報に基づいて、前記動的オブジェクトの動きを示すための前記変化情報を算出し、
前記表示制御部は、前記算出部が算出した前記変化情報に基づいて、前記動的オブジェクトを表示させ、
前記受信部は、前記第２ユーザの特定の操作に基づく前記動的オブジェクトの位置座標を含む前記更新情報を受信し、
前記表示制御部は、前記算出部が算出した前記動的オブジェクトの動きに基づいて表示させた前記動的オブジェクトの位置を、前記受信部が受信した前記動的オブジェクトの位置座標に基づき更新する、
請求項６に記載のプログラム。
【請求項８】
前記表示制御部は、前記算出部が算出した前記変化情報に基づいて表示させた前記動的オブジェクトの位置座標と、前記受信部が受信した前記動的オブジェクトの位置座標とが異なる場合に、前記動的オブジェクトの位置を更新する、
請求項７に記載のプログラム。
【請求項９】
前記コンピュータを、
前記第１ユーザを示す第１ユーザオブジェクトを動かすための操作を受け付ける受付部、及び
前記受付部が受け付けた前記第１ユーザの操作に応じて動いた前記第１ユーザオブジェクトが前記変化オブジェクトに接触した場合に、当該変化オブジェクトの位置座標を前記他のコンピュータに送信する送信部、
としてさらに機能させる、
請求項６から８のいずれか一項に記載のプログラム。
【請求項１０】
第１ユーザが使用するユーザ端末であって、
第２ユーザが使用する、前記ユーザ端末とは異なる他のユーザ端末が前記第２ユーザの操作を受け付ける受付間隔より間隔が長い所定の間隔で、前記他のコンピュータが当該所定の間隔に基づく所定のタイミングで受け付けた前記第２ユーザの操作に基づく第２ユーザ情報を受信する受信部と、
前記受信部が前記第２ユーザ情報を受信するごとに、当該第２ユーザ情報に基づいて、前記第２ユーザの操作に伴って変化する変化オブジェクトの変化情報を算出する算出部と、
前記変化情報に基づいて、前記変化オブジェクトを表示部に表示させる表示制御部と、
を有し、
前記受信部は、前記変化情報を更新するための更新情報を受信し、
前記表示制御部は、前記算出部が算出した前記変化情報に基づいて表示させた前記変化オブジェクトを、前記更新情報に基づき更新する、
ユーザ端末。
【請求項１１】
第１ユーザが使用するコンピュータが実行する、
第２ユーザが使用する、前記コンピュータとは異なる他のコンピュータを使用する第２ユーザの操作を受け付ける受付間隔より間隔が長い所定の間隔で、前記他のコンピュータが当該所定の間隔に基づく所定のタイミングで受け付けた前記第２ユーザの操作に基づく第２ユーザ情報を受信するステップと、
前記第２ユーザ情報を受信するごとに、当該第２ユーザ情報に基づいて、前記第２ユーザの操作に伴って変化する変化オブジェクトの変化情報を算出するステップと、
前記変化情報に基づいて、前記変化オブジェクトを表示部に表示させるステップと、
前記変化情報を更新するための更新情報を受信ステップと、
算出した前記変化情報に基づいて表示させた前記変化オブジェクトを、前記更新情報に基づき更新するステップと、
を有するオブジェクト更新方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザに仮想空間を提示するためのプログラム、ユーザ端末及びオブジェクト更新方法に関する。
【背景技術】
【０００２】
従来、ユーザに仮想空間を提示する技術が知られている。特許文献１には、ＶＲ（Virtual Reality）表示が可能なＶＲ端末が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１９−１８５７６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、上記ＶＲ端末をそれぞれ使用する複数のユーザに仮想空間を提示する場合において、各ユーザに提示する仮想空間を各ＶＲ端末がそれぞれ独立に生成する場合には、各ユーザの操作が各仮想空間に反映されるまでのレスポンスの速さに応じて得られるユーザの体感性と、各ユーザに同じ状態の仮想空間を提示することを示す仮想空間の整合性との調和が課題となる。例えば、複数のＶＲ端末において、オブジェクトの変化のタイムラグの度合いが大きくなると、ユーザの体感性が低下してしまう。また、複数のＶＲ端末において、仮想空間に存在するオブジェクトの変化に差異が生じると、各ユーザに提示される仮想空間の整合性を保つことができなくなってしまう。そのため、複数のユーザに提示される仮想空間において、ユーザの体感性と仮想空間の整合性との調和を図ることが求められている。
【０００５】
そこで、本発明はこれらの点に鑑みてなされたものであり、複数のユーザに提示する仮想空間の整合性と各ユーザの体感性との調和を図ることができるプログラム、ユーザ端末及びオブジェクト更新方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の第１の態様にかかるプログラムは、第１ユーザが使用するコンピュータを、前記コンピュータとは異なる他の前記コンピュータを使用する第２ユーザの操作に基づく第２ユーザ情報を受信する受信部、前記第２ユーザ情報に基づいて、前記第２ユーザの操作に伴って変化する変化オブジェクトの変化情報を算出する算出部、及び前記変化情報に基づいて、前記変化オブジェクトを表示部に表示させる表示制御部、として機能させ、前記受信部は、前記変化情報を更新するための更新情報を受信し、前記表示制御部は、前記算出部が算出した前記変化情報に基づいて表示させた前記変化オブジェクトを、前記更新情報に基づき更新する。
【０００７】
前記更新情報は、前記変化オブジェクトの形状を示すための情報であってもよいし、前記表示制御部は、前記算出部が算出した前記変化情報に基づいて表示させた前記変化オブジェクトの形状を、前記更新情報に基づき更新してもよい。
【０００８】
前記変化オブジェクトは、仮想空間において、前記第２ユーザの操作に基づいて描画される描画オブジェクトであってもよいし、前記第２ユーザ情報は、前記第２ユーザの操作に基づく操作オブジェクトの位置座標を含んでもよいし、前記算出部は、前記操作オブジェクトの位置座標に基づいて、前記仮想空間に前記描画オブジェクトを描画するための描画位置座標を含む前記変化情報を算出してもよいし、前記表示制御部は、前記算出部が算出した各描画位置座標に基づいて前記描画オブジェクトを表示させてもよいし、前記受信部は、複数の前記描画位置座標を含む前記更新情報を受信してもよいし、前記表示制御部は、前記算出部が算出した前記描画位置座標に基づいて表示した前記描画オブジェクトの形状を、前記受信部が受信した前記複数の描画位置座標に基づき更新してもよい。
【０００９】
前記受信部は、第１間隔で、前記第２ユーザ情報を受信してもよいし、前記算出部は、前記受信部が前記第２ユーザ情報を受信するごとに、前記描画位置座標を算出してもよいし、前記表示制御部は、前記算出部が算出した前記描画位置座標と、当該描画位置座標が算出される直前に算出された前記描画位置座標とを結んだ前記描画オブジェクトを描画して表示させてもよいし、前記受信部は、前記他のコンピュータが前記第１間隔よりも短い間隔である第２間隔で受け付けた前記第２ユーザの操作に基づいて算出した前記複数の描画位置座標を含む前記更新情報を受信してもよいし、前記表示制御部は、前記受信部が前記複数の描画位置座標を受信した場合に、前記第２ユーザ情報に対応する前記描画オブジェクトである第１描画オブジェクトの形状を、前記更新情報に対応する前記描画オブジェクトであって、前記第１描画オブジェクトより各描画位置座標の間隔が短い第２描画オブジェクトの形状に更新してもよい。
【００１０】
前記コンピュータを、前記第１ユーザの操作を受け付ける受付部、及び前記受付部が受け付けた前記第１ユーザの操作に基づく第１ユーザ情報を前記他のコンピュータに送信する送信部、としてさらに機能させてもよいし、前記算出部は、前記受付部が受け付けた前記第１ユーザの操作であって、前記第１ユーザを示す第１ユーザオブジェクトが前記変化オブジェクトの形状を変化させる操作に基づいて、前記変化情報を算出してもよいし、前記送信部は、前記算出部が算出した前記変化情報に対応する前記更新情報を前記他のコンピュータに送信してもよい。
【００１１】
前記更新情報は、前記変化オブジェクトの位置を示すための情報であってもよいし、前記表示制御部は、前記算出部が算出した前記変化情報に基づいて表示させた前記変化オブジェクトの位置を、前記更新情報に基づき更新してもよい。
【００１２】
前記変化オブジェクトは、仮想空間において、前記第２ユーザの操作に伴って動き得る動的オブジェクトであってもよいし、前記算出部は、第２ユーザ情報に基づいて、前記動的オブジェクトの動きを示すための前記変化情報を算出してもよいし、前記表示制御部は、前記算出部が算出した前記変化情報に基づいて、前記動的オブジェクトを表示させてもよいし、前記受信部は、前記第２ユーザの特定の操作に基づく前記動的オブジェクトの位置座標を含む前記更新情報を受信してもよいし、前記表示制御部は、前記算出部が算出した前記動的オブジェクトの動きに基づいて表示させた前記動的オブジェクトの位置を、前記受信部が受信した前記動的オブジェクトの位置座標に基づき更新してもよい。
【００１３】
前記表示制御部は、前記算出部が算出した前記変化情報に基づいて表示させた前記動的オブジェクトの位置座標と、前記受信部が受信した前記動的オブジェクトの位置座標とが異なる場合に、前記動的オブジェクトの位置を更新してもよい。
【００１４】
前記コンピュータを、前記第１ユーザを示す第１ユーザオブジェクトを動かすための操作を受け付ける受付部、及び前記受付部が受け付けた前記第１ユーザの操作に応じて動いた前記第１ユーザオブジェクトが前記変化オブジェクトに接触した場合に、当該変化オブジェクトの位置座標を前記他のコンピュータに送信する送信部、としてさらに機能させてもよい。
【００１５】
本発明の第２の態様にかかるユーザ端末は、第１ユーザが使用するユーザ端末であって、前記ユーザ端末とは異なる他の前記ユーザ端末を使用する第２ユーザの操作に基づく第２ユーザ情報を受信する受信部と、前記第２ユーザ情報に基づいて、前記第２ユーザの操作に伴って変化する変化オブジェクトの変化情報を算出する算出部と、前記変化情報に基づいて、前記変化オブジェクトを表示部に表示させる表示制御部と、を有し、前記受信部は、前記変化情報を更新するための更新情報を受信し、前記表示制御部は、前記算出部が算出した前記変化情報に基づいて表示させた前記変化オブジェクトを、前記更新情報に基づき更新する。
【００１６】
本発明の第３の態様にかかるオブジェクト更新方法は、第１ユーザが使用するコンピュータが実行する、前記コンピュータとは異なる他の前記コンピュータを使用する第２ユーザの操作に基づく第２ユーザ情報を受信するステップと、前記第２ユーザ情報に基づいて、前記第２ユーザの操作に伴って変化する変化オブジェクトの変化情報を算出するステップと、前記変化情報に基づいて、前記変化オブジェクトを表示部に表示させるステップと、前記変化情報を更新するための更新情報を受信ステップと、算出した前記変化情報に基づいて表示させた前記変化オブジェクトを、前記更新情報に基づき更新するステップと、を有する。
【発明の効果】
【００１７】
本発明によれば、複数のユーザに提示する仮想空間の整合性と各ユーザの体感性との調和を図ることができるという効果を奏する。
【図面の簡単な説明】
【００１８】
【図１】本明細書において前提となる空間共有システムの概要を説明するための図である。
【図２】本明細書において前提となる空間共有システムの概要を説明するための図である。
【図３】第１の実施の形態における空間共有システムの概要を説明するための図である。
【図４】ユーザ端末１の構成を示す図である。
【図５】描画オブジェクトを模式的に表した図である。
【図６】第１の実施の形態における空間共有システムの処理の流れを示すシーケンス図である。
【図７】第２の実施の形態における空間共有システムの概要を説明するための図である。
【図８】第２の実施の形態における空間共有システムの概要を説明するための図である。
【図９】第２の実施の形態における空間共有システムの処理の流れを示すシーケンス図である。
【発明を実施するための形態】
【００１９】
［空間共有システムＳの構成］
まず、本明細書において前提となる空間共有システムＳの概要について説明する。図１及び図２は、本明細書において前提となる空間共有システムＳの概要を説明するための図である。空間共有システムＳは、複数のユーザＵに仮想空間Ｖを提示するために用いられるシステムである。空間共有システムが複数のユーザＵに提示する空間は、例えば、ＶＲであるが、これに限らず、ＡＲ（Augmented Reality）及びＭＲ（Mixed Reality）等（ｘＲ）であってもよい。空間共有システムＳは、ユーザ端末１と、管理装置２とを有する。
【００２０】
ユーザ端末１は、ユーザＵが使用するコンピュータであり、例えば、ユーザＵに仮想空間Ｖを提示するためのＶＲ表示が可能なＨＭＤ（Head Mounted Display）型のデバイスである。ユーザ端末１には、ユーザＵに仮想空間Ｖを提示するための専用のアプリケーションプログラム（以下、「専用アプリ」という）がインストールされている。
【００２１】
ユーザ端末１には、ユーザＵが仮想空間Ｖに存在するユーザオブジェクトＡを操作するために用いられるコントローラＣが無線又は有線で接続されており、ユーザＵがコントローラＣを操作すると、当該操作に応じてユーザオブジェクトＡが動作する。なお、ユーザオブジェクトＡは、例えば、ユーザＵのアバターであってもよい。
【００２２】
管理装置２は、複数のユーザ端末１間で送受信される情報を中継する装置であり、例えばサーバである。なお、複数のユーザ端末１は、管理装置２を介さずに、Ｐ２Ｐ（Peer to Peer）で情報を送受信してもよい。
【００２３】
管理装置２は、ユーザ端末１がユーザＵに仮想空間Ｖの提示を開始するための設定情報を管理している。設定情報は、例えば、仮想空間Ｖに存在するオブジェクトごとに、仮想空間Ｖにおける位置座標と、当該オブジェクトの種類（例えば、ユーザオブジェクト及び変化オブジェクト等）とが関連付けられている。変化オブジェクトは、ユーザＵの操作に伴って変化するオブジェクトである。仮想空間Ｖに存在するユーザオブジェクト以外のオブジェクト（一例としては、机、椅子、ペン、ボール、花瓶等）が変化オブジェクトとなり得る。ユーザ端末１は、例えば、ユーザＵが専用アプリを起動する操作を行ったことに応じて管理装置２から設定情報を受信し、受信した設定情報に基づいて仮想空間Ｖの提示を開始する。
【００２４】
空間共有システムＳにおいては、各ユーザ端末１が、管理装置２から受信した設定情報に基づいて仮想空間Ｖを提示するための情報を算出し、算出した情報に基づく画像を表示することにより、複数のユーザＵそれぞれに仮想空間Ｖを提示する。図１に示す仮想空間Ｖには、少なくとも、第１ユーザ端末１ａを使用する第１ユーザＵ１を示す第１ユーザオブジェクトＡ１と、第２ユーザ端末１ｂを使用する第２ユーザＵ２を示す第２ユーザオブジェクトＡ２とが存在している。仮想空間Ｖには、変化オブジェクトがさらに存在してもよい。
【００２５】
空間共有システムＳにおいては、各ユーザ端末１がそれぞれ独立に仮想空間Ｖを提示するため、複数のユーザ端末１の間で仮想空間Ｖを提示するための情報を共有する必要がある。各ユーザ端末１がそれぞれ独立に仮想空間Ｖを提示する場合においては、ユーザＵの体感性と、各ユーザＵに提示される仮想空間Ｖの整合性との調和が課題となる。
【００２６】
本明細書におけるユーザＵ（例えば第１ユーザＵ１）の体感性は、第１ユーザＵ１の操作が第１ユーザＵ１に提示される仮想空間Ｖに反映されるまでのレスポンスの速さに応じて得られる体感性と、第１ユーザＵ１の操作に協働して操作し得る他のユーザＵ（例えば第２ユーザＵ２）の操作が第１ユーザＵ１に提示される仮想空間Ｖに反映されるまでのレスポンスの速さに応じて得られる体感性とを含む。また、本明細書における仮想空間Ｖの整合性は、複数のユーザ端末１（例えば第１ユーザ端末１ａ及び第２ユーザ端末１ｂ）それぞれが同じ状態の仮想空間Ｖを提示することを示す。
【００２７】
複数のユーザ端末１の間で共有する情報の送信頻度が高くなるほど、仮想空間Ｖの整合性が向上するが、ユーザＵの体感性が低下し得る。例えば、上記情報の送信頻度が高いと、ネットワークの負荷が高くなり得る。ネットワークの負荷が高くなったことによって上記情報の受信に遅延が生じると、複数のユーザ端末１の間において変化オブジェクトが変化するタイミングの差が上記遅延に応じて大きくなる。この場合、例えば、第２ユーザＵ２の操作が第１ユーザＵ１に提示される仮想空間Ｖに反映されるまでのレスポンスが遅くなり、第１ユーザＵ１の体感性が低下してしまう。
【００２８】
一方、複数のユーザ端末１の間で共有する情報の送信頻度が低くなるほど、ユーザＵの体感性が向上するが、仮想空間Ｖの整合性が低下し得る。例えば、第２ユーザ端末１ｂが第１ユーザ端末１ａに上記情報を送信する送信頻度が低いと、第１ユーザ端末１ａによって第１ユーザＵ１に提示される仮想空間Ｖで動作する第２ユーザオブジェクトＡ２の動作間隔が、第２ユーザ端末１ｂによって第２ユーザＵ２に提示される仮想空間Ｖで動作する第２ユーザオブジェクトＡ２の動作間隔より長くなる。
【００２９】
具体的には、第２ユーザ端末１ｂによって第２ユーザＵ２に提示される仮想空間Ｖにおける第２ユーザオブジェクトＡ２は、予め定められた受付間隔で第２ユーザＵ２の操作を受け付けるごとに動作するため、スムーズに動作する。受付間隔は、例えば、ユーザ端末１に表示される画面のリフレッシュレートと同程度の間隔である。一方、第１ユーザ端末１ａによって第１ユーザＵ１に提示される仮想空間Ｖにおける第２ユーザオブジェクトＡ２は、受付間隔よりも間隔が長い所定の間隔で上記情報を受信するごとに動作するため、間欠的に動作する。所定の間隔は、例えば、１秒間隔、又は０．５秒間隔等である。所定のタイミングは、所定の間隔において１つの期間が経過した時点である。
【００３０】
この場合、詳細については後述するが、第１ユーザ端末１ａ及び第２ユーザ端末１ｂそれぞれが提示する仮想空間Ｖにおいて変化オブジェクトの変化に差異が生じ得、第１ユーザＵ１及び第２ユーザＵ２に提示する仮想空間Ｖの整合性が保てなくなる。このように、ユーザＵの体感性と、各ユーザＵに提示される仮想空間Ｖの整合性とはトレードオフの関係にあるため、ユーザＵの体感性と仮想空間Ｖの整合性との調和を図ることが求められる。そこで、空間共有システムＳは、ユーザＵの体感性を維持しつつ、所定のタイミングで各ユーザＵに提示する仮想空間Ｖの状態を同期する。
【００３１】
図２に示す例においては、第２ユーザＵ２の操作に伴って変化オブジェクトが変化する例を説明する。この場合において、まず、第２ユーザ端末１ｂは、第２ユーザＵ２の操作を受け付ける（図２の（１））。具体的には、第２ユーザ端末１ｂは、予め定められた受付間隔で第２ユーザＵ２の操作を受け付ける。
【００３２】
第２ユーザ端末１ｂは、管理装置２を介して、第２ユーザＵ２の操作に基づく第２ユーザ情報を、第１ユーザ端末１ａに送信する（図２の（２））。具体的には、第２ユーザ端末１ｂは、受付間隔より間隔が長い所定の間隔で、当該所定の間隔に基づく所定のタイミングで受け付けた第２ユーザＵ２の操作に基づく第２ユーザ情報を、第１ユーザ端末１ａに送信する。
【００３３】
第２ユーザ端末１ｂは、受け付けた第２ユーザＵ２の操作に基づいて、当該第２ユーザＵ２の操作に伴って変化する変化オブジェクトの変化情報を算出する（図２の（３））。第２ユーザ端末１ｂは、第２ユーザＵ２の操作を受け付けるごとに、当該第２ユーザＵ２の操作に対応する変化情報を算出する。
【００３４】
第１ユーザ端末１ａは、第２ユーザ端末１ｂから第２ユーザ情報を受信すると、当該第２ユーザ情報に基づいて、変化情報を算出する（図２の（４））。第１ユーザ端末１ａは、第２ユーザ端末１ｂから第２ユーザ情報を受信するごとに、当該第２ユーザ情報に対応する変化情報を算出する。第１ユーザ端末１ａ及び第２ユーザ端末１ｂは、それぞれが算出した変化情報に基づいて変化オブジェクトを表示させることにより、第１ユーザＵ１及び第２ユーザＵ２に仮想空間Ｖを提示する（図２の（５）、（６））。
【００３５】
このように、空間共有システムＳは、第２ユーザ端末１ｂが受付間隔よりも間隔が長い所定の間隔で第２ユーザ情報を第１ユーザ端末１ａに送信することにより、第２ユーザ情報の送信頻度を低くし、第２ユーザ情報を送信することによるネットワークの負荷を低減することができる。これにより、空間共有システムＳは、第２ユーザの操作に伴って変化する変化オブジェクトを早期に第１ユーザ端末１ａに表示させることができる。その結果、空間共有システムＳは、第１ユーザＵ１の体感性が低下することを低減させることができる。
【００３６】
続いて、第２ユーザ端末１ｂは、第２ユーザ情報を送信した後に、第１ユーザ端末１ａが算出した変化情報を更新させるための更新情報を第１ユーザ端末１ａに送信する（図２の（７））。そして、第１ユーザ端末１ａは、第２ユーザ端末１ｂから更新情報を受信すると、第１ユーザ端末１ａが変化情報に基づいて表示させた変化オブジェクトを、更新情報に基づき更新する（図２の（８））。
【００３７】
このようにすることで、空間共有システムＳは、第１ユーザＵ１及び第２ユーザＵ２に提示した仮想空間Ｖにおいて生じ得る変化オブジェクトの差異を解消することができる。これにより、空間共有システムＳは、第１ユーザＵ１及び第２ユーザＵ２に提示する仮想空間Ｖの整合性を保たせることができる。その結果、空間共有システムＳは、複数のユーザＵに提示する仮想空間Ｖの整合性と各ユーザＵの体感性との調和を図ることができる。
以下、第１の実施の形態における空間共有システムＳについて説明する。
【００３８】
＜第１の実施の形態＞
［第１の実施の形態における空間共有システムＳの概要］
図３は、第１の実施の形態における空間共有システムＳの概要を説明するための図である。第１の実施の形態における空間共有システムＳにおいては、まず、第１ユーザ端末１ａが、第１ユーザＵ１に提示する仮想空間Ｖにおいて、第２ユーザＵ２の操作に伴って変化した変化オブジェクトを、変化情報に基づき表示する。そして、第１ユーザ端末１ａは、当該変化情報に基づいて表示させた変化オブジェクトの形状を、更新情報に基づき更新する。
【００３９】
第１の実施の形態における変化オブジェクトは、仮想空間Ｖにおいて、第２ユーザの操作に基づいて描画される描画オブジェクトであり、例えば、ペンで描かれた線である。また、第１の実施の形態における変化情報及び更新情報は、変化オブジェクト（描画オブジェクト）の形状を示すための情報である。変化情報及び更新情報の詳細については後述する。
【００４０】
図３（ａ）は、第２ユーザ端末１ｂが第２ユーザＵ２に提示した第２仮想空間Ｖ２を模式的に表した図であり、第２ユーザＵ２の視点から見た第２仮想空間Ｖ２を示した図である。図３（ａ）に示す線Ｋは、第２ユーザ端末１ｂが第２ユーザの操作に基づいて表示した描画オブジェクトである。図３（ａ）に示すように、第２仮想空間Ｖ２においては、第２ユーザ端末１ｂが受付間隔で受け付けた第２ユーザの操作に基づいて描画オブジェクトを表示させるため、線Ｋが波線で表示される。
【００４１】
図３（ｂ）、（ｃ）は、第１ユーザ端末１ａが第１ユーザＵ１に提示した第１仮想空間Ｖ１を模式的に表した図であり、第１ユーザＵ１の視点から見た第１仮想空間Ｖ１を示した図である。図３（ｂ）に示す線Ｌは、第２ユーザオブジェクトＡ２が描画した描画オブジェクトであって、第１ユーザ端末１ａが第２ユーザ情報に基づいて表示した描画オブジェクトである。図３（ｂ）に示すように、第１仮想空間Ｖ１においては、第１ユーザ端末１ａが、受付間隔よりも間隔が長い所定の間隔に基づく所定のタイミングで受け付けられた第２ユーザＵ２の操作に基づいて描画オブジェクトを表示させるため、線Ｌが折れ線で表示される。このように、空間共有システムＳは、第２ユーザ情報の送信頻度を低くすると、各仮想空間Ｖにおいて描画オブジェクトの形状に差異が生じ得る。
【００４２】
そこで、空間共有システムＳは、変化情報に基づいて表示させた変化オブジェクトの形状を、更新情報に基づき更新する。図３（ｃ）に示す線Ｍは、第１ユーザ端末１ａが更新情報に基づいて線Ｌを更新した描画オブジェクトである。図３（ａ）及び（ｃ）に示すように、線Ｍは線Ｋと同じように波線で表示されている。
【００４３】
このように、空間共有システムＳは、第２ユーザ情報の送信頻度を低くすることにより、第２ユーザが変化オブジェクトを変化させる操作を行ってから、当該第２ユーザの操作に伴って変化する変化オブジェクトが第１ユーザ端末１ａに表示されるまでの期間を短縮させることができる。これにより、空間共有システムＳは、第２ユーザの操作に伴って変化する変化オブジェクトが早期に第１ユーザ端末１ａに表示されるため、第１ユーザＵ１の体感性の低下を低減させることができる。
【００４４】
また、空間共有システムＳは、更新情報に基づいて変化オブジェクトの形状を更新することにより、第１ユーザＵ１及び第２ユーザＵ２に提示した仮想空間Ｖにおいて生じ得る変化オブジェクトの形状の差異を解消することができる。これにより、空間共有システムＳは、各ユーザＵに提示される仮想空間Ｖの整合性を保たせることができる。その結果、空間共有システムＳは、ユーザＵの体感性と、各ユーザＵに提供される仮想空間Ｖの整合性との調和を図ることができる。
以下、ユーザ端末１の構成について説明する。
【００４５】
［ユーザ端末１の構成］
図４は、ユーザ端末１の構成を示す図である。ユーザ端末１は、第１通信部１１と、第２通信部１２と、表示部１３と、記憶部１４と、制御部１５とを有する。
【００４６】
第１通信部１１は、ネットワークに接続するためのインターフェイスであり、例えば無線ＬＡＮ（Local Area Network）コントローラを含んで構成されている。第２通信部１２は、コントローラＣに接続するためのインターフェイスであり、例えば、近距離無線通信用の通信モジュールである。
【００４７】
表示部１３は、ユーザＵの両目それぞれに画像を提示するためのディスプレイである。記憶部１４は、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）及びハードディスク等の記憶媒体である。記憶部１４は、制御部１５が実行するプログラムを記憶している。
【００４８】
制御部１５は、例えば、ＣＰＵ（Central Processing Unit）又はＧＰＵ（Graphics Processing Unit）等である。制御部１５は、記憶部１４に記憶されたプログラムを実行することにより、受信部１５１、操作受付部１５２、算出部１５３、表示制御部１５４及び送信部１５５として機能する。以下、第１ユーザ端末１ａが当該第１ユーザ端末１ａを使用する第１ユーザＵ１の操作に伴って変化する変化オブジェクトを表示させる機能と、第１ユーザ端末１ａが第２ユーザ端末１ｂを使用する第２ユーザＵ２の操作に伴って変化する変化オブジェクトを表示させる機能とに分けて説明する。
【００４９】
（第１ユーザＵ１の操作に伴って変化する変化オブジェクトを表示）
操作受付部１５２は、第２通信部１２を介して、第１ユーザＵ１の操作をコントローラＣ１から受け付ける。第１ユーザＵ１の操作は、第１ユーザＵ１を示す第１ユーザオブジェクトＡ１を動かすための操作又は第１ユーザオブジェクトＡ１が変化オブジェクトの形状を変化させる操作等である。具体的には、操作受付部１５２は、予め定められた受付間隔で、第１ユーザＵ１の操作を受け付ける。
【００５０】
算出部１５３は、第１ユーザＵ１の操作に基づいて、当該第１ユーザＵ１の操作に伴って変化する変化オブジェクトの変化情報を算出する。変化情報は、例えば、描画位置座標と、描画位置識別情報とを含む。描画位置座標は、仮想空間Ｖに描画オブジェクトを描画するための位置座標である。描画位置識別情報は、描画位置座標を識別するための情報であり、例えば、通し番号を含む文字列である。
【００５１】
具体的には、算出部１５３は、操作オブジェクトの位置座標に基づいて、仮想空間Ｖに描画オブジェクトを描画するための描画位置座標を含む変化情報を算出する。操作オブジェクトは、例えば、第１ユーザオブジェクトＡ１に含まれる手オブジェクトである。
【００５２】
例えば、手オブジェクトの位置座標が手の平の中心であり、手オブジェクトが把持するペンオブジェクトのペン先から描画オブジェクトが描画される場合、算出部１５３は、操作受付部１５２が第１ユーザＵ１の操作を受け付けた時点における手オブジェクトの位置座標と、当該位置座標に対応する手の平の中心からペン先までの距離・角度とに基づいて、描画位置座標を算出するとともに、当該描画位置座標に描画位置識別情報を関連付けて付与する。
【００５３】
算出部１５３は、例えば、操作受付部１５２が第１ユーザＵ１の操作を受け付けるごとに、当該第１ユーザＵ１の操作に対応する変化情報を算出する。また、算出部１５３は、例えば、操作受付部１５２によって受け付けられた第１ユーザＵ１の操作が、変化オブジェクトを変化させる操作である場合に、当該変化オブジェクトに対応する変化情報を算出する。
【００５４】
表示制御部１５４は、算出部１５３が第１ユーザＵ１の操作に基づいて算出した変化情報に基づいて、変化オブジェクトを表示部１３に表示させる。表示制御部１５４は、例えば、図３（ａ）に示す線Ｋを含む画像を表示部１３に表示させる。
【００５５】
具体的には、表示制御部１５４は、算出部１５３が算出した各描画位置座標に基づいて描画オブジェクトを表示させる。より具体的には、表示制御部１５４は、算出部１５３が算出した描画位置座標と、当該描画位置座標が算出される直前に算出された描画位置座標とを結んだ描画オブジェクトを描画して表示させる。
【００５６】
図５は、描画オブジェクトを模式的に表した図である。図５（ａ）に示す線Ｋは、図３（ａ）に示す線Ｋに対応する。位置座標Ｋｎは、算出部１５３が算出した描画位置座標であり、位置座標Ｋｎ−１は、位置座標Ｋｎが算出される直前に算出された描画位置座標である。この場合において、表示制御部１５４は、位置座標Ｋｎと、位置座標Ｋｎ−１とを線で結んだ描画オブジェクトを描画して表示部１３に表示させる。
【００５７】
図４に戻り、送信部１５５は、第１通信部１１を介して、操作受付部１５２が受け付けた第１ユーザＵ１の操作に基づく第１ユーザ情報を、第２ユーザ端末１ｂに送信する。具体的には、送信部１５５は、第１通信部１１を介して、操作受付部１５２が所定のタイミングで受け付けた第１ユーザＵ１の操作に基づく操作オブジェクトの位置座標と、描画オブジェクトを描画することを示すための描画情報とを含む第１ユーザ情報を、第２ユーザ端末１ｂに送信する。
【００５８】
より具体的には、まず、送信部１５５は、第１通信部１１を介して、第１ユーザ情報を管理装置２に送信する。そして、管理装置２は、第１ユーザ端末１ａから受信した第１ユーザ情報を、仮想空間Ｖに参加している複数のユーザＵのうち、第１ユーザＵ１以外のユーザＵである第２ユーザＵ２に対応する第２ユーザ端末１ｂに送信する。送信部１５５は、例えば、所定の間隔である第１間隔で、第１ユーザ情報を管理装置２に送信する。
【００５９】
送信部１５５は、第１ユーザ情報を送信した後に、第１通信部１１を介して、第２ユーザ端末１ｂが第１ユーザ情報に基づいて算出した変化情報を更新するための更新情報を第２ユーザ端末１ｂに送信する。更新情報は、例えば、第１間隔とは異なる第２間隔に基づく１つの期間に算出部１５３が算出した複数の変化情報である。第２間隔は、第１間隔より長い間隔であり、例えば、５秒間隔又は１０秒間隔等である。具体的には、送信部１５５は、第２間隔で、更新情報を第２ユーザ端末１ｂに送信する。
【００６０】
（第２ユーザＵ２の操作に伴って変化する変化オブジェクトを表示）
受信部１５１は、第１通信部１１を介して、第２ユーザ情報又は更新情報を、第２ユーザ端末１ｂから受信する。第２ユーザ情報は、第１ユーザ情報に対応する情報であり、例えば、第２ユーザ端末１ｂが所定のタイミングで受け付けた第２ユーザＵ２の操作に基づく操作オブジェクトの位置座標と、描画オブジェクトを描画することを示すための描画情報とを含む情報である。
【００６１】
具体的には、受信部１５１は、第１通信部１１を介して、第２ユーザ端末１ｂが送信した第２ユーザ情報又は更新情報を、管理装置２から受信する。受信部１５１は、例えば、第１間隔で、第２ユーザ情報を受信する。また、受信部１５１は、例えば、第２ユーザ端末１ｂが第１間隔よりも短い間隔である受付間隔で受け付けた第２ユーザの操作に基づいて算出した複数の変化情報を含む更新情報を受信する。変化情報は、描画位置座標と、当該描画位置座標に対応する描画位置識別情報とを含む。
【００６２】
算出部１５３は、受信部１５１が受信した第２ユーザ情報に基づいて、第２ユーザＵ２の操作に伴って変化する変化オブジェクトの変化情報を算出する。具体的には、算出部１５３は、第２ユーザ情報に基づいて、描画オブジェクトの描画位置座標と、当該描画位置座標に対応する描画位置識別情報とを含む変化情報を算出する。算出部１５３は、例えば、受信部１５１が第１間隔で第２ユーザ情報を受信するごとに、変化情報を算出する。
【００６３】
表示制御部１５４は、算出部１５３が第２ユーザ情報に基づいて算出した変化情報に基づいて、変化オブジェクトを表示部１３に表示させる。表示制御部１５４は、例えば、図３（ｂ）に示す線Ｌを含む画像を表示部１３に表示させる。
【００６４】
表示制御部１５４は、受信部１５１が更新情報を受信した場合に、算出部１５３が第２ユーザ情報に基づいて算出した変化情報に基づいて表示させた変化オブジェクトの形状を、更新情報に基づき更新する。表示制御部１５４は、例えば、図３（ｂ）に示す線Ｌを図３（ｃ）に示す線Ｍに更新した描画オブジェクトを表示部１３に表示させる。具体的には、表示制御部１５４は、算出部１５３が算出した描画位置座標に基づいて表示した描画オブジェクトを、受信部１５１が受信した複数の描画位置座標に基づき更新する。
【００６５】
より具体的には、表示制御部１５４は、受信部１５１が複数の描画位置座標を含む更新情報を受信した場合に、第１描画オブジェクトの形状を、第２描画オブジェクトの形状に更新する。第１描画オブジェクトは、第２ユーザ情報に対応する描画オブジェクトである。第２描画オブジェクトは、更新情報に対応する描画オブジェクトであって、第１描画オブジェクトより各描画位置座標の間隔が短い描画オブジェクトである。
【００６６】
表示制御部１５４は、例えば、算出部１５３が付与した描画位置識別情報である第１描画位置識別情報と、第２ユーザ端末１ｂが付与した描画位置識別情報である第２描画位置識別情報とに基づいて、第１描画オブジェクトの形状を、第２描画オブジェクトの形状に更新する。
【００６７】
図５（ｂ）に示す線Ｌは、第１描画オブジェクトであり、図５（ｃ）に示す線Ｍは、第２描画オブジェクトである。線Ｌを描画するために用いられる座標Ｌ１、Ｌ２、Ｌ３、Ｌ４それぞれに関連づけられている第１描画位置識別情報は、線Ｍを描画するために用いられる座標Ｍ１、Ｍ２、Ｍ３、Ｍ４それぞれに関連付けられている第２描画位置識別情報それぞれと一致する。
【００６８】
この場合において、表示制御部１５４は、座標Ｌ１、Ｌ２、Ｌ３、Ｌ４の位置座標を、第１描画位置識別情報が一致する第２描画位置識別情報に関連付けられている座標Ｍ１、Ｍ２、Ｍ３、Ｍ４の位置座標に変更し、座標Ｍ５から座標Ｍｎまでの位置座標を追加することにより、第１描画オブジェクトの形状を、第２描画オブジェクトの形状に更新する。
【００６９】
［空間共有システムＳの処理］
続いて、第１の実施の形態における空間共有システムＳの処理の流れについて説明する。図６は、第１の実施の形態における空間共有システムＳの処理の流れを示すシーケンス図である。本処理は、第２ユーザ端末１ｂの処理として、操作受付部１５２が、第２通信部１２を介して、第２ユーザＵ２の操作をコントローラＣ２から受け付けたことを契機として開始する（Ｓ１）。
【００７０】
第２ユーザ端末１ｂの処理として、送信部１５５は、第１間隔に基づく期間が経過したか否かを判定する（Ｓ２）。送信部１５５は、第１間隔に基づく期間が経過したと判定した場合（Ｓ２においてＹＥＳの場合）、第１通信部１１を介して、第２ユーザ情報を第１ユーザ端末１ａに送信する（Ｓ３）。一方、送信部１５５は、第１間隔に基づく期間が経過していないと判定した場合（Ｓ２においてＮＯの場合）、処理をＳ４に進める。
【００７１】
第２ユーザ端末１ｂの処理として、算出部１５３は、操作受付部１５２が受け付けた第２ユーザＵ２の操作に基づいて、変化情報を算出する（Ｓ４）。第２ユーザ端末１ｂの処理として、表示制御部１５４は、算出部１５３が第２ユーザＵ２の操作に基づいて算出した変化情報に基づいて、変化オブジェクトを表示部１３に表示させる（Ｓ５）。
【００７２】
第１ユーザ端末１ａの処理として、受信部１５１が第１通信部１１を介して第２ユーザ情報を第２ユーザ端末１ｂから受信すると、算出部１５３は、当該第２ユーザ情報に基づいて、変化情報を算出する（Ｓ６）。第１ユーザ端末１ａの処理として、表示制御部１５４は、算出部１５３が第２ユーザ情報に基づいて算出した変化情報に基づいて、変化オブジェクトを表示部１３に表示させる（Ｓ７）。
【００７３】
第２ユーザ端末１ｂの処理として、送信部１５５は、第２期間に基づく期間が経過したか否かを判定する（Ｓ８）。送信部１５５は、第２期間に基づく期間が経過したと判定した場合（Ｓ８においてＹＥＳの場合）、第１通信部１１を介して、算出部１５３が第２ユーザＵ２の操作に基づいて算出した変化情報を含む更新情報を第１ユーザ端末１ａに送信する（Ｓ９）。一方、送信部１５５は、第２期間に基づく期間が経過していないと判定した場合（Ｓ８においてＮＯの場合）、処理をＳ１に戻す。
【００７４】
第１ユーザ端末１ａの処理として、受信部１５１が第１通信部１１を介して第２ユーザ端末１ｂから更新情報を受信すると、表示制御部１５４は、算出部１５３が第２ユーザ情報に基づいて算出した変化情報に基づいて表示させた変化オブジェクトの形状を、更新情報に基づき更新する（Ｓ１０）。
【００７５】
［第１の実施形態における効果］
以上説明したとおり、ユーザ端末１は、第２ユーザ情報に基づいて変化情報を算出し、算出した変化情報に基づいて変化オブジェクトを表示させる。その後、ユーザ端末１は、更新情報を受信すると、変化情報に基づいて表示させた変化オブジェクトの形状を、当該更新情報に基づき更新する。
【００７６】
このように、空間共有システムＳは、第２ユーザ情報の送信頻度を低くすることにより、第２ユーザが変化オブジェクトを変化させる操作を行ってから、当該第２ユーザの操作に伴って変化する変化オブジェクトが第１ユーザ端末１ａに表示されるまでの期間を短縮させることができる。これにより、空間共有システムＳは、第２ユーザの操作に伴って変化する変化オブジェクトが早期に第１ユーザ端末１ａに表示されるため、第１ユーザＵ１の体感性の低下を低減させることができる。
【００７７】
また、空間共有システムＳは、更新情報に基づいて変化オブジェクトの形状を更新することにより、第１ユーザＵ１及び第２ユーザＵ２に提示した仮想空間Ｖにおいて生じ得る変化オブジェクトの形状の差異を解消することができる。これにより、空間共有システムＳは、各ユーザＵに提示される仮想空間Ｖの整合性を保たせることができる。その結果、空間共有システムＳは、ユーザＵの体感性と、各ユーザＵに提供される仮想空間Ｖの整合性との調和を図ることができる。
【００７８】
＜第２の実施の形態＞
［変化オブジェクトの位置を更新する］
続いて、第２の実施の形態における空間共有システムＳについて説明する。第１の実施の形態における空間共有システムＳにおいては、ユーザ端末１が、変化情報に基づいて表示させた変化オブジェクトの形状を、更新情報に基づき更新する。これに対して、第２の実施の形態における空間共有システムＳにおいては、ユーザ端末１が、変化情報に基づいて表示させた変化オブジェクトの位置を、更新情報に基づき更新する。以下に、第１の実施の形態と異なる部分について説明する。第１の実施の形態と同じ部分については適宜説明を省略する。
【００７９】
図７及び図８は、第２の実施の形態における空間共有システムＳの概要を説明するための図である。第２の実施の形態における変化オブジェクトは、仮想空間Ｖにおいて、ユーザＵの操作に伴って動き得る動的オブジェクトであり、例えばボールである。また、第２の実施の形態における変化情報は、変化オブジェクト（動的オブジェクト）の動きを示すための情報である。また、第２の実施の形態における更新情報は、変化オブジェクト（動的オブジェクト）の位置を示すための情報である。図７においては、第２ユーザオブジェクトＡ２が投げた動的オブジェクトの位置の変化を模式的に示す。
【００８０】
図７（ａ）は、第２ユーザ端末１ｂが第２ユーザＵ２に提示した第２仮想空間Ｖ２を模式的に表した図である。図７（ａ）に示す第２仮想空間Ｖ２においては、位置Ｐ１で第２ユーザオブジェクトＡ２の手オブジェクトから離れた動的オブジェクトが、位置Ｐ２に止まっている。図７（ａ）に示すように、第２仮想空間Ｖ２においては、第２ユーザ端末１ｂが受付間隔で受け付けた第２ユーザの操作に基づいて動的オブジェクトを動作させるため、動的オブジェクトが位置Ｐ１から位置Ｐ２まで移動する。
【００８１】
図７（ｂ）は、第１ユーザ端末１ａが第１ユーザＵ１に提示した第１仮想空間Ｖ１を模式的に表した図である。図７（ｂ）に示す第１仮想空間Ｖ１においては、第２ユーザオブジェクトＡ２によって位置Ｑ１から投げられた動的オブジェクトが、位置Ｑ２に止まっている。図７（ｂ）に示すように、第１仮想空間Ｖ１においては、第１ユーザ端末１ａが、受付間隔よりも間隔が長い所定の間隔に基づく所定のタイミングで受け付けられた第２ユーザＵ２の操作に基づいて動的オブジェクトを動作させるため、動的オブジェクトが位置Ｑ１から位置Ｑ２まで移動する。
【００８２】
このように、空間共有システムＳは、第２ユーザ情報の送信頻度を低くすると、各仮想空間Ｖにおいて動的オブジェクトの位置に差異が生じ得る。また、各仮想空間Ｖにおいて動的オブジェクトの動作が異なることにより、一方の仮想空間Ｖにおいては当該動的オブジェクトが他の動的オブジェクトに当たり、他方の仮想空間Ｖにおいては当該動的オブジェクトが他の動的オブジェクトに当たらなかった場合等、各仮想空間Ｖにおいて様々な動的オブジェクトの位置に差異が生じ得る。
【００８３】
そこで、空間共有システムＳは、変化情報に基づいて表示させた変化オブジェクトの位置を、更新情報に基づき更新する。図８（ａ）は、第２ユーザ端末１ｂが第２ユーザＵ２に提示した第２仮想空間Ｖ２を模式的に表した図である。図８（ｂ）は、第１ユーザ端末１ａが第１ユーザＵ１に提示した第１仮想空間Ｖ１であって、変化情報に基づいて表示させた変化オブジェクトの状態を模式的に表した図である。図８（ｃ）は、第１ユーザ端末１ａが第１ユーザＵ１に提示した第１仮想空間Ｖ１であって、更新情報に基づいて更新した変化オブジェクトの状態を模式的に表した図である。
【００８４】
図８（ａ）に示す例において、第２ユーザオブジェクトＡ２が、位置Ｐ２に止まっている動的オブジェクトを持つ動作をしたとする。この場合、空間共有システムＳは、第１仮想空間Ｖ１において、第２ユーザオブジェクトＡ２が動的オブジェクトに触れる前に図８（ｂ）に示す位置Ｑ２に止まっている動的オブジェクトの位置を、図８（ｃ）に示す位置Ｑ３に更新する。なお、動的オブジェクトの位置の更新を行う契機は、動的オブジェクトを持つ動作や触れる動作に限られず、任意の動作や所定の条件としてもよい。
【００８５】
反対に、図示はしないが、第１ユーザオブジェクトＡ１が、位置Ｑ２に止まっている動的オブジェクトを持つ動作をしたとする。この場合において、空間共有システムＳは、第２ユーザＵ２から見ると位置Ｐ２に止まっている動的オブジェクトの位置を、第１ユーザオブジェクトＡ１が動的オブジェクトに触れることを契機として位置Ｑ２に更新する。
【００８６】
このように、空間共有システムＳは、更新情報に基づいて変化オブジェクトの位置を更新することにより、第１ユーザＵ１及び第２ユーザＵ２に提示した仮想空間Ｖにおいて生じ得る変化オブジェクトの位置の差異を解消することができる。その結果、空間共有システムＳは、複数のユーザＵに提示する仮想空間Ｖの整合性と各ユーザＵの体感性との調和を図ることができる。
【００８７】
［ユーザ端末１の構成］
（第１ユーザＵ１の操作に伴って変化する変化オブジェクトを表示）
続いて、ユーザ端末１の構成について図４を用いて説明する。操作受付部１５２は、第２通信部１２を介して、第１ユーザＵ１の操作をコントローラＣ１から受け付ける。第１ユーザＵ１の操作は、第１ユーザＵ１を示す第１ユーザオブジェクトＡ１を動かすための操作、又は第１ユーザオブジェクトＡ１が動的オブジェクトを動かす操作等である。「第１ユーザオブジェクトＡ１が動的オブジェクトを動かす」動作は、例えば、第１ユーザオブジェクトＡ１が動的オブジェクトを投げる（離す）動作等である。
【００８８】
算出部１５３は、第１ユーザＵ１の操作に基づいて、動的オブジェクトの動きを示すための変化情報を算出する。例えば、専用アプリには、現実世界と同等の物理法則を仮想空間Ｖに適用するための物理モデルが予め設定されており、算出部１５３は、当該物理モデルを用いて、変化情報を算出する。
【００８９】
算出部１５３は、例えば、操作受付部１５２が動的オブジェクトを投げるための操作を受け付けた場合、動的オブジェクトの発射角度、動的オブジェクトの加速度及び仮想空間Ｖの重力等に基づいて、第１ユーザオブジェクトＡ１に含まれる手オブジェクトから動的オブジェクトが離れてから、当該動的オブジェクトが止まるまでの動きを示すための変化情報を算出する。
【００９０】
動的オブジェクトの発射角度は、例えば、動的オブジェクトが第１ユーザオブジェクトＡ１に含まれる手オブジェクトから離れるまでの手オブジェクトの動きに基づいて算出される。動的オブジェクトの加速度は、例えば、動的オブジェクトが第１ユーザオブジェクトＡ１に含まれる手オブジェクトから離れるまでの手オブジェクトの動きの速さに基づいて算出される。
【００９１】
表示制御部１５４は、第１ユーザＵ１の操作に基づいて算出された変化情報に基づいて、動的オブジェクトを表示部１３に表示させる。表示制御部１５４は、例えば、図７（ａ）に示す動的オブジェクトの位置Ｐ１から位置Ｐ２までの動きを表した画像を表示部１３に表示させる。
【００９２】
送信部１５５は、操作受付部１５２が受け付けた第１ユーザＵ１の操作に応じて動いた第１ユーザオブジェクトＡ１が動的オブジェクトを動かした場合、操作オブジェクトの位置座標と動作情報とを含む第１ユーザ情報を第２ユーザ端末１ｂに送信する。動作情報は、動的オブジェクトを動かすことを示すための情報であり、例えば、つかむ及び放す等を示す情報である。
【００９３】
送信部１５５は、第１ユーザＵ１の特定の操作に基づいて、更新情報を第２ユーザ端末１ｂに送信する。具体的には、送信部１５５は、操作受付部１５２が受け付けた第１ユーザＵ１の操作に応じて動いた第１ユーザオブジェクトＡ１が動的オブジェクトに接触した場合に、更新情報を第２ユーザ端末１ｂに送信する。
【００９４】
更新情報は、例えば、動的オブジェクトを識別するためのオブジェクト識別情報と、当該動的オブジェクトの位置座標とを含む。送信部１５５は、第１ユーザオブジェクトＡ１が動的オブジェクトに接触したときに更新情報を第２ユーザ端末１ｂに送信してもよいし、第１間隔で送信する第１ユーザ情報とともに更新情報を第２ユーザ端末１ｂに送信してもよい。
【００９５】
（第２ユーザＵ２の操作に伴って変化する変化オブジェクトを表示）
算出部１５３は、受信部１５１が第２ユーザ端末１ｂから受信した第２ユーザＵ２に基づく第２ユーザ情報に基づいて、動的オブジェクトの動きを示すための変化情報を算出する。第２ユーザ情報は、第１ユーザ情報に対応する情報である。算出部１５３は、例えば、変化情報に動的オブジェクトを離すことを示す動作情報が含まれている場合に、動的オブジェクトの動きを示すための変化情報を算出する。算出部１５３は、例えば、動的オブジェクトの発射角度、動的オブジェクトの加速度及び仮想空間Ｖの重力等に基づいて、第２ユーザオブジェクトＡ２に含まれる手オブジェクトから動的オブジェクトが離れてから、当該動的オブジェクトが止まるまでの動きを示すための変化情報を算出する。
【００９６】
動的オブジェクトの発射角度は、例えば、受信部１５１が第１間隔で受信した複数の第２ユーザ情報によって示される第２ユーザオブジェクトＡ２に含まれる手オブジェクトの動きであって、動的オブジェクトが手オブジェクトから離れるまでの手オブジェクトの動きに基づいて算出される。動的オブジェクトの加速度は、例えば、複数の第２ユーザ情報によって示される第２ユーザオブジェクトＡ２に含まれる手オブジェクトの動きの速さであって、動的オブジェクトが手オブジェクトから離れるまでの手オブジェクトの動きの速さに基づいて算出される。
【００９７】
表示制御部１５４は、算出部１５３が算出した動的オブジェクトの動きに基づいて、動的オブジェクトを表示させる。表示制御部１５４は、例えば、図７（ｂ）に示す動的オブジェクトの位置Ｑ１から位置Ｑ２までの動きを表した画像を表示部１３に表示させる。
【００９８】
受信部１５１が第２ユーザＵ２の特定の操作に基づく動的オブジェクトの位置座標を含む更新情報を受信すると、表示制御部１５４は、算出部１５３が算出した変化情報に基づいて表示させた変化オブジェクトの位置を、更新情報に基づき更新する。表示制御部１５４は、例えば、図８（ｂ）に示す位置Ｑ２から図８（ｃ）に示す位置Ｑ３に更新した動的オブジェクトを表示部１３に表示させる。
【００９９】
具体的には、表示制御部１５４は、算出部１５３が算出した動的オブジェクトの動きに基づいて表示させた動的オブジェクトの位置を、受信部１５１が受信した動的オブジェクトの位置座標に基づき更新する。より具体的には、表示制御部１５４は、更新情報に含まれるオブジェクト識別情報に対応する動的オブジェクトの位置を、当該更新情報に含まれる位置座標に更新する。
【０１００】
表示制御部１５４は、第１ユーザ端末１ａが提示した第１仮想空間Ｖ１における動的オブジェクトの位置座標と、第２ユーザ端末１ｂが提示した第２仮想空間Ｖ２における動的オブジェクトの位置座標とが異なる場合に、第２ユーザオブジェクトＡ２が接触した動的オブジェクトの位置を更新情報に基づき更新してもよい。具体的には、表示制御部１５４は、算出部１５３が算出した変化情報に基づいて表示させた動的オブジェクトの位置座標と、受信部１５１が受信した動的オブジェクトの位置座標とが異なる場合に、動的オブジェクトの位置を更新する。このようにすることで、ユーザ端末１は、各仮想空間Ｖにおける動的オブジェクトの位置に差異がない場合であっても、ユーザオブジェクトＡが動的オブジェクトに接触するごとに更新処理が実行される事態を抑止することができる。
【０１０１】
［空間共有システムＳの処理］
続いて、第２の実施の形態における空間共有システムＳの処理の流れについて説明する。図９は、第２の実施の形態における空間共有システムＳの処理の流れを示すシーケンス図である。本処理は、第２ユーザ端末１ｂの処理として、操作受付部１５２が、第２通信部１２を介して、第２ユーザＵ２による操作をコントローラＣ２から受け付けたことを契機として開始する（Ｓ１１）。第２ユーザＵ２による操作は、例えば、第２ユーザオブジェクトＡ２が動的オブジェクトを投げる操作である。
【０１０２】
第２ユーザ端末１ｂの処理として、送信部１５５は、操作受付部１５２が受け付けた第２ユーザＵ２の操作に応じて動いた第２ユーザオブジェクトＡ２が動的オブジェクトに接触したか否かを判定する（Ｓ１２）。送信部１５５は、第２ユーザオブジェクトＡ２が動的オブジェクトに接触していないと判定した場合（Ｓ１２においてＮＯの場合）、操作オブジェクトの位置座標と動作情報とを含む第２ユーザ情報を第１ユーザ端末１ａに送信する（Ｓ１３）。
【０１０３】
一方、送信部１５５は、第２ユーザオブジェクトＡ２が動的オブジェクトに接触したと判定した場合（Ｓ１２においてＹＥＳの場合）、第２ユーザオブジェクトＡ２が接触した動的オブジェクトの位置座標と、当該動的オブジェクトに対応するオブジェクト識別情報とを含む更新情報を第１ユーザ端末１ａに送信する（Ｓ１４）。
【０１０４】
第２ユーザ端末１ｂの処理として、算出部１５３は、第２ユーザＵ２の操作に基づいて、動的オブジェクトの動きを示すための変化情報を算出する（Ｓ１５）。表示制御部１５４は、第１ユーザＵ１の操作に基づいて算出された変化情報に基づいて、動的オブジェクトを表示部１３に表示させる（Ｓ１６）。
【０１０５】
第１ユーザ端末１ａの処理として、受信部１５１が第１通信部１１を介して第２ユーザ情報を第２ユーザ端末１ｂから受信した場合、算出部１５３は、当該第２ユーザ情報に基づいて、動的オブジェクトの動きを示すための変化情報を算出する（Ｓ１７）。第１ユーザ端末１ａの処理として、表示制御部１５４は、算出部１５３が第２ユーザ情報に基づいて算出した変化情報に基づいて、動的オブジェクトを表示部１３に表示させる（Ｓ１８）。
【０１０６】
第１ユーザ端末１ａの処理として、受信部１５１が第１通信部１１を介して更新情報を第２ユーザ端末１ｂから受信した場合、表示制御部１５４は、算出部１５３が算出した変化情報に基づいて表示させた動的オブジェクトの位置を、更新情報に基づき更新する（Ｓ１９）。
【０１０７】
［第２の実施形態における効果］
以上説明したとおり、ユーザ端末１は、第２ユーザ情報に基づいて変化情報を算出し、算出した変化情報に基づいて変化オブジェクトを表示させる。その後、ユーザ端末１は、変化情報に基づいて表示させた変化オブジェクトの位置を、更新情報に基づき更新する。このように、空間共有システムＳは、更新情報に基づいて変化オブジェクトの位置を更新することにより、第１ユーザＵ１及び第２ユーザＵ２に提示した仮想空間Ｖにおいて生じ得る変化オブジェクトの位置の差異を解消することができる。その結果、空間共有システムＳは、複数のユーザＵに提示する仮想空間Ｖの整合性と各ユーザＵの体感性との調和を図ることができる。
【０１０８】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、装置の全部又は一部は、任意の単位で機能的又は物理的に分散・統合して構成することができる。また、複数の実施の形態の任意の組み合わせによって生じる新たな実施の形態も、本発明の実施の形態に含まれる。組み合わせによって生じる新たな実施の形態の効果は、もとの実施の形態の効果を併せ持つ。
【符号の説明】
【０１０９】
１  ユーザ端末
１１  第１通信部
１２  第２通信部
１３  表示部
１４  記憶部
１５  制御部
１５１  受信部
１５２  操作受付部
１５３  算出部
１５４  表示制御部
１５５  送信部
２  管理装置
Ｃ  コントローラ
Ｓ  空間共有システム
Ｕ  ユーザ
Ｖ  仮想空間
【要約】
【課題】複数のユーザに提示する仮想空間の整合性と各ユーザの体感性との調和を図る。
【解決手段】プログラムは、第１ユーザが使用するコンピュータを、コンピュータとは異なる他のコンピュータを使用する第２ユーザの操作に基づく第２ユーザ情報を受信する受信部１５１、第２ユーザ情報に基づいて、第２ユーザの操作に伴って変化する変化オブジェクトの変化情報を算出する算出部１５３、及び変化情報に基づいて、変化オブジェクトを表示部１３に表示させる表示制御部１５４、として機能させ、受信部１５１は、変化情報を更新するための更新情報を受信し、表示制御部１５４は、算出部１５３が算出した変化情報に基づいて表示させた変化オブジェクトを、更新情報に基づき更新する。
【選択図】図４【図１】
0006810818.tif 000002
【図２】
0006810818.tif 000003
【図３】
0006810818.tif 000004
【図４】
0006810818.tif 000005
【図５】
0006810818.tif 000006
【図６】
0006810818.tif 000007
【図７】
0006810818.tif 000008
【図８】
0006810818.tif 000009
【図９】
0006810818.tif 000010