(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-08-05
(45)【発行日】2025-08-14
(54)【発明の名称】メッセージ送信装置及びメッセージ受信装置
(51)【国際特許分類】
G06T 19/00 20110101AFI20250806BHJP
G06F 3/01 20060101ALI20250806BHJP
G06F 3/04817 20220101ALI20250806BHJP
G06F 3/04845 20220101ALI20250806BHJP
H04L 51/04 20220101ALI20250806BHJP
H04L 67/131 20220101ALI20250806BHJP
【FI】
G06T19/00 A
G06F3/01 570
G06F3/04817
G06F3/04845
H04L51/04
H04L67/131
(21)【出願番号】P 2023576671
(86)(22)【出願日】2022-12-07
(86)【国際出願番号】 JP2022045071
(87)【国際公開番号】W WO2023145265
(87)【国際公開日】2023-08-03
【審査請求日】2024-07-25
(31)【優先権主張番号】P 2022011593
(32)【優先日】2022-01-28
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】392026693
【氏名又は名称】株式会社NTTドコモ
(74)【代理人】
【識別番号】110003177
【氏名又は名称】弁理士法人旺知国際特許事務所
(72)【発明者】
【氏名】山▲崎▼ 智仁
【審査官】松浦 功
(56)【参考文献】
【文献】米国特許出願公開第2013/0293584(US,A1)
【文献】特開2021-051512(JP,A)
【文献】国際公開第2017/013805(WO,A1)
【文献】特開2005-078427(JP,A)
【文献】特開2000-207313(JP,A)
【文献】米国特許出願公開第2013/0307875(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00 - 19/20
G06F 3/00 - 3/18
H04L 51/04 - 51/046
H04L 67/131
(57)【特許請求の範囲】
【請求項1】
送信元のユーザの操作に応じて、メッセージに対応する仮想オブジェクトが仮想空間において移動された場合、前記仮想オブジェクトの軌道に関する軌道情報を生成する軌道情報生成部と、
前記メッセージを示すメッセージ情報と前記軌道情報とを含む送信情報を生成する送信情報生成部と、
通信装置を用いて前記送信情報を前記ユーザが指定する送信先に送信させる送信制御部とを備え、
前記送信元のユーザの操作は、前記仮想オブジェクトの軌道として予め用意された複数の軌道から1以上の軌道を前記送信元のユーザが選択する第1操作と、前記送信元のユーザが前記仮想オブジェクトを前記仮想空間において移動させる第2操作とを含み、
前記軌道情報生成部は、前記第1操作によって選択される前記1以上の軌道と、前記第2操作によって指定される前記仮想オブジェクトの軌道とを合成することによって得られる軌道を示す情報を、前記軌道情報として生成する、
メッセージ送信装置。
【請求項2】
前記軌道は、前記仮想オ
ブジェクトの仮想空間における位置の時間変化を示し、
前記軌道情報生成部は、前記軌道に対して前記ユーザの操作に伴うノイズ成分を除去する処理を施すことによって、前記軌道情報を生成する、請求項1に記載のメッセージ送信装置。
【請求項3】
請求項1又は2に記載のメッセージ送信装置から送信される前記送信情報を通信装置に受信させる受信制御部と、
前記送信情報に含まれる前記軌道情報に従って、仮想空間において仮想オブジェクトが移動する画像を生成する画像生成部と、
前記生成された画像を、前記送信先のユーザの表示装置に表示させる表示制御部とを備える、
メッセージ受信装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、メッセージを送信するメッセージ送信装置及びメッセージを受信するメッセージ受信装置に関する。
【背景技術】
【0002】
非特許文献1には、メールの送受信において、キャラクタがメールを配達するアニメーションを表示する点が開示されている。この技術では、ユーザがメールを送信する場合、動物のキャラクタがメールを持参して部屋から出ていくアニメーションがディスプレイに表示される。また、ユーザがメールを受信する場合、メールを携えたキャラクタが訪れるアニメーションがディスプレイに表示される。
【0003】
ところで、VR(Virtual Reality)技術、AR(Augmented Reality)技術、及びMR(Mixed Reality)技術を含むXR技術では、ユーザが頭部に装着するXRグラスに三次元の仮想空間が表示される。この仮想空間に、メッセージに対応付けられた仮想オブジェクトが表示されることがある。非特許文献1に記載の技術を三次元仮想空間に適用した場合、キャラクタが仮想オブジェクトを配達するアニメーションがXRグラスに表示されることになる。
【先行技術文献】
【非特許文献】
【0004】
【文献】“今注目のメールソフト、ポストペットで遊ぼう!”,[online],1997年10月13日,ウォッチ編集部INTERNET,[令和4年1月24日検索],インターネット<URL:https://internet.watch.impress.co.jp/www/article/971013/special.htm>
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、キャラクタが仮想オブジェクトを配達する動作は、予め定められた動作である。従って、送信元のユーザは、送信先のユーザが視認する仮想空間における仮想オブジェクトの動きを制御することはできなかった。
【0006】
本開示は、メッセージの送信元のユーザが、メッセージの送信先のユーザが視認する仮想空間における仮想オブジェクトの動きを制御できるメッセージ送信装置及びメッセージ受信装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の好適な態様に係るメッセージ送信装置は、送信元のユーザの操作に応じて、メッセージに対応する仮想オブジェクトが仮想空間において移動された場合、前記仮想オブジェクトの軌道に関する軌道情報を生成する軌道情報生成部と、前記メッセージを示すメッセージ情報と前記軌道情報とを含む送信情報を生成する送信情報生成部と、通信装置を用いて前記送信情報を前記ユーザが指定する送信先に送信させる送信制御部とを備える。
【0008】
本発明の好適な態様に係るメッセージ受信装置は、メッセージ送信装置から送信される前記送信情報を通信装置に受信させる受信制御部と、前記送信情報に含まれる前記軌道情報に従って、仮想空間において仮想オブジェクトが移動する画像を生成する画像生成部と、前記生成された画像を、前記送信先のユーザの表示装置に表示させる表示制御部とを備える。
【発明の効果】
【0009】
本発明によれば、メッセージの送信元のユーザが、メッセージの送信先のユーザが視認する仮想空間における仮想オブジェクトの動きを制御できる。
【図面の簡単な説明】
【0010】
【
図1】実施形態に係る情報処理システム1の全体構成を示す図。
【
図2】送信元のユーザU[K]がXRグラス20-Kを介して視認する仮想空間VSの一例を示す模式図。
【
図3】実施形態に係るXRグラス20-Kの外観を示す斜視図。
【
図4】実施形態に係るXRグラス20-Kの構成例を示すブロック図。
【
図5】実施形態に係る端末装置10-Kの構成例を示すブロック図。
【
図6】基準軌道情報Dの情報構造の一例を示す説明図。
【
図7】第1の基準軌道Sr1から第7の基準軌道Sr7までを示す模式図。
【
図9】補正前のユーザ軌道Su1と補正後のユーザ軌道Su2との一例を示す説明図
【
図10A】軌道Sと第1の基準軌道Sr1とを合成した軌道Sxの一例を示す模式図。
【
図10B】第1の基準軌道Sr1と第3の基準軌道Sr3とを合成した軌道Syの一例を示す模式図。
【
図11】ユーザU[K]が複数の軌道の中から1以上の軌道を選択する場合の仮想空間VSの一例を示す模式図。
【
図13】実施形態に係る端末装置10-Kの送信処理の動作例を示すフローチャート。
【
図14A】メッセージ情報と仮想オブジェクトVOとの対応付けの一例を示す模式図。
【
図14B】仮想オブジェクトVOの軌道の生成に関する仮想空間VSの一例を示す模式図。
【
図15】軌道情報の生成に関する処理内容の一例を示すフローチャート。
【
図16A】ユーザ軌道の入力の受付に関する仮想空間VSの一例を示す模式図。
【
図16B】軌道の合成に関する指示の受付に関する仮想空間VSの一例を示す模式図。
【
図17】実施形態に係る端末装置10-Kの送信処理の動作例を示すフローチャート。
【発明を実施するための形態】
【0011】
1:実施形態
以下、
図1~
図17を参照しつつ、情報処理システム1について説明する。
【0012】
1.1:実施形態の構成
1.1.1:全体構成
図1は、情報処理システム1の全体構成を示すブロック図である。
図1に示されるように、情報処理システム1は、端末装置10-1、10-2、…10-K、…10-J、XRグラス20-1、20-2、…20-K、…20-J、及びサーバ30を備える。Jは1以上の整数である。Kは1以上J以下の整数である。本実施形態において、端末装置10-1、10-2、…10-K、…10-Jは同一の構成である。但し、他の端末装置と構成が同一でない端末装置が含まれてもよい。本実施形態において、XRグラス20-1、20-2、…20-K、…20-Jは同一の構成である。但し、他のXRグラスと構成が同一でないXRグラスが含まれてもよい。
【0013】
情報処理システム1において、端末装置10-Kとサーバ30とは、通信網NETを介して互いに通信可能に接続される。また、端末装置10-KとXRグラス20-Kとは互いに通信可能に接続される。なお、
図1において、ユーザU[K]は、端末装置10-KとXRグラス20-Kとの組を利用する。ユーザU[1]、U[2]、…U[K-1]、U[K+1]、…U[J]についても同様に端末装置とXRグラスとの組が利用される。端末装置10-Kは、メッセージ送信装置及びメッセージ受信装置の一例である。
【0014】
サーバ30は、通信網NETを介して、端末装置10-Kに対して各種データ及びクラウドサービスを提供する。クラウドサービスにはメッセージの送受信に関するサービスが含まれる。
【0015】
端末装置10-Kは、ユーザU[K]が頭部に装着するXRグラス20-Kに対して、仮想空間に配置される仮想オブジェクトを表示させる。仮想空間は三次元の空間である。仮想オブジェクトは三次元で表現される。仮想オブジェクトは、例えば、静止画像、動画、3DCGモデル、HTMLファイル、及びテキストファイル等のデータを示す仮想オブジェクト、及びアプリケーションを示す仮想オブジェクトである。ここで、テキストファイルとしては、例として、メモ、ソースコード、日記、及びレシピが挙げられる。また、アプリケーションとしては、例として、ブラウザ、SNSを用いるためのアプリケーション、及びドキュメントファイルを生成するためのアプリケーションが挙げられる。なお、端末装置10-Kは、例として、スマートフォン、及びタブレット等の携帯端末装置であることが好適である。
【0016】
XRグラス20-Kは、ユーザU[K]の頭部に装着するシースルー型のウェアラブルディスプレイである。XRグラス20-Kは、端末装置10-Kの制御に基づいて、両眼用のレンズの各々に設けられた表示パネルに仮想オブジェクトを表示させる。なお、XRグラス20-Kは、表示装置の一例である。
【0017】
本実施形態において、XRグラス20-Kを頭部に装着したユーザU[K]は、端末装置10-Kを用いて、例えば、他のユーザであるU[1]が利用する端末装置10-1に対して、メッセージを示すメッセージ情報を送信する。メッセージは、例えば、テキスト、音声、又はアニメーション等の動画であってもよい。
【0018】
図2は、送信元のユーザU[K]がXRグラス20-Kを介して視認する仮想空間VSの一例である。
図2においてX軸、Y軸、及びZ軸は互いに直交する。以下の説明では、X軸に沿った正方向をX正方向、X軸に沿った負方向をX負方向、Y軸に沿った正方向をY正方向、Y軸に沿った負方向をY負方向、Z軸に沿った正方向をZ正方向、Z軸に沿った負方向をZ負方向と称する。
図2に示される仮想空間VSには、ユーザU[K]のメッセージに対応する仮想オブジェクトVOが存在する。ユーザU[K]は、送信先を指定することによって、メッセージ情報を送信することができる。この例の仮想オブジェクトVOは球体の形状をしている。また、仮想オブジェクトVOは、ユーザU[K]の操作に応じて、仮想空間VSを移動する。
図2に示される仮想オブジェクトVOは、軌道Sに沿って移動する。例えば、ユーザU[K]は仮想オブジェクトVOを一方の手で持って、体の周りを一周させることによって、仮想オブジェクトVOを移動させる。なお、
図2において、ユーザU[K]は省略されている。
【0019】
本実施形態では、送信元のユーザが仮想オブジェクトVOを仮想空間VSで移動させた軌道Sに関する軌道情報が、メッセージ情報と対応づけて送信先のユーザU[1]に対して送信される。ユーザU[1]がXRグラス20-1を用いて仮想空間VSを視認する場合、仮想オブジェクトVOは、軌道情報に基づいて仮想空間VS上で移動する。情報処理システム1によれば、送信元のユーザU[K]は、送信先のユーザU[1]が視認する仮想空間における仮想オブジェクトVOの挙動を制御することができる。ユーザU[1]は、送信先のユーザの一例である。
【0020】
1.1.2:XRグラスの構成
図3は、XRグラス20-Kの外観を示す斜視図である。
図2に示されるようにXRグラス20-Kの外観は、一般的な眼鏡と同様にテンプル91及び92、ブリッジ93、フレーム94及び95、並びにレンズ41L及び41Rを有する。
【0021】
ブリッジ93には撮像装置26が設けられる。撮像装置26は外界を撮像する。また、撮像装置26は、撮像した画像を示す撮像情報を出力する。フレーム94には左用の深度検出装置29Lが設けられる。フレーム95には右用の深度検出装置29Rが設けられる。深度検出装置29L及び深度検出装置29Rは、現実空間に存在する物体までの距離を示す深度情報を出力する。
【0022】
レンズ41L及び41Rの各々は、ハーフミラーを備えている。フレーム94には、左眼用の液晶パネル又は有機ELパネルと、左眼用の表示パネルから射出された光をレンズ41Lに導光する光学部材が設けられる。液晶パネル又は有機ELパネルは、以下、表示パネルと総称する。レンズ41Lに設けられるハーフミラーは、外界の光を透過させて左眼に導くと共に、光学部材によって導光された光を反射した後、反射した光を左眼に入射させる。フレーム95には、右眼用の表示パネルと、右眼用の表示パネルから射出された光をレンズ41Rに導光する光学部材が設けられる。レンズ41Rに設けられるハーフミラーは、外界の光を透過させて右眼に導くと共に、光学部材によって導光された光を反射した後、反射した光を右眼に入射させる。
【0023】
後述するディスプレイ28は、レンズ41L、左眼用の表示パネル、及び左眼用の光学部材、並びにレンズ41R、右眼用の表示パネル、及び右眼用の光学部材を含む。
【0024】
以上の構成において、ユーザU[K]は表示パネルが表示する画像を、外界の様子と重ね合わせたシースルーの状態で観察できる。また、XRグラス20-Kは、視差を伴う両眼画像のうち、左眼用画像を左眼用の表示パネルに表示させ、右眼用画像を右眼用の表示パネルに表示させる。このため、XRグラス20-Kは、ユーザU[K]に対し、表示された画像があたかも奥行き、及び立体感を持つかのように知覚させる。
【0025】
図4は、XRグラス20-Kの構成例を示すブロック図である。XRグラス20-Kは、処理装置21、記憶装置22、視線検出装置23、GPS装置24、動き検出装置25、撮像装置26、通信装置27、ディスプレイ28、並びに深度検出装置29L及び29Rを備える。XRグラス20-Kが有する各要素は、情報を通信するための単体又は複数のバスによって相互に接続される。なお、本明細書における「装置」という用語は、回路、デバイス又はユニット等の他の用語に読替えてもよい。
【0026】
処理装置21は、XRグラス20-Kの全体を制御するプロセッサである。処理装置21は、例えば、単数又は複数のチップを用いて構成される。また、処理装置21は、例えば、周辺装置とのインタフェース、演算装置及びレジスタ等を含む中央処理装置(CPU:Central Processing Unit)を用いて構成される。なお、処理装置21が有する機能の一部又は全部を、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)等のハードウェアによって実現してもよい。処理装置21は、各種の処理を並列的又は逐次的に実行する。
【0027】
記憶装置22は、処理装置21による読取及び書込が可能な記録媒体である。また、記憶装置22は、処理装置21が実行する制御プログラムPR1を含む複数のプログラムを記憶する。
【0028】
視線検出装置23は、ユーザU[K]の視線を検出した後、検出結果を示す視線情報を生成する。視線検出装置23が視線を検出する方法としては、どのような方法を用いてもよい。視線検出装置23は、例えば、目頭の位置と虹彩の位置に基づいて視線情報を生成してもよい。視線情報はユーザU[K]の視線の方向を示す。視線検出装置23は、視線情報を処理装置21に出力する。処理装置21に出力された視線情報は、通信装置27を介して、端末装置10-Kに出力される。
【0029】
GPS装置24は、複数の衛星からの電波を受信する。また、GPS装置24は、受信した電波からユーザU[K]の位置を示すユーザ位置情報を生成する。ユーザ位置情報は、ユーザU[K]の位置を特定できるのであれば、どのような形式であってもよい。ユーザ位置情報は、例えば、XRグラス20-Kの緯度と経度とを示す。ユーザ位置情報は、処理装置21に出力される。処理装置21は、通信装置27を介して、ユーザ位置情報を端末装置10-Kに出力する。
【0030】
動き検出装置25は、XRグラス20-Kの動きを検出する。動き検出装置25は、加速度を検出する加速度センサ及び角加速度を検出するジャイロセンサなどの慣性センサを含む。加速度センサは、直交するX軸、Y軸、及びZ軸の軸ごとに当該軸に沿う方向の加速度を検出する。ジャイロセンサは、X軸、Y軸、及びZ軸の軸ごとに当該軸を回転の中心軸とする角加速度を検出する。動き検出装置25は、ジャイロセンサの出力情報に基づいて、XRグラス20-Kの姿勢を示すユーザ姿勢情報を生成できる。ユーザ動き情報は、3軸の加速度を各々示す加速度情報及び3軸の角加速度を各々示す角加速度情報を含む。また、動き検出装置25は、XRグラス20-Kの姿勢を示すユーザ姿勢情報、及びXRグラス20-Kの動きに関するユーザ動き情報を処理装置21に出力する。処理装置21に出力されたユーザ姿勢情報及びユーザ動き情報は、通信装置27を介して、端末装置10-Kに出力される。
【0031】
撮像装置26は、外界を撮像して得られた撮像情報を出力する。また、撮像装置26は、例えば、レンズ、撮像素子、増幅器、及びAD変換器を備える。レンズを介して集光された光は、撮像素子によってアナログ信号である撮像信号に変換される。増幅器は撮像信号を増幅した上で、増幅された撮像信号をAD変換器に出力する。AD変換器はアナログ信号である増幅された撮像信号をデジタル信号である撮像情報に変換する。変換された撮像情報は、処理装置21に出力される。処理装置21に出力された撮像情報は、通信装置27を介して、端末装置10-Kに出力される。撮像装置26は、例えば、カメラである。
【0032】
通信装置27は、他の装置と通信を行うための、送受信デバイスとしてのハードウェアである。また、通信装置27は、例えば、ネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュール等とも呼ばれる。通信装置27は、有線接続用のコネクターを備え、上記コネクターに対応するインタフェース回路を備えていてもよい。また、通信装置27は、無線通信インタフェースを備えていてもよい。有線接続用のコネクター及びインタフェース回路としては有線LAN、IEEE1394、USBに準拠した製品が挙げられる。また、無線通信インタフェースとしては無線LAN及びBluetooth(登録商標)等に準拠した製品が挙げられる。
【0033】
ディスプレイ28は、画像を表示するデバイスである。ディスプレイ28は、処理装置21の制御のもとで各種の画像を表示する。ディスプレイ28は、上記のように、レンズ41L、左眼用の表示パネル、及び左眼用の光学部材、並びにレンズ41R、右眼用の表示パネル、及び右眼用の光学部材を含む。表示パネルとしては、例えば、液晶表示パネル及び有機EL表示パネル等の各種の表示パネルが好適に利用される。
【0034】
1.1.3:端末装置の構成
図5は、端末装置10-Kの構成例を示すブロック図である。端末装置10-Kは、処理装置11、記憶装置12、通信装置13、ディスプレイ14、入力装置15、及び慣性センサ16を備える。端末装置10-Kが有する各要素は、情報を通信するための単体又は複数のバスによって相互に接続される。
【0035】
処理装置11は、端末装置10-Kの全体を制御するプロセッサである。また、処理装置11は、例えば、単数又は複数のチップを用いて構成される。処理装置11は、例えば、周辺装置とのインタフェース、演算装置及びレジスタ等を含む中央処理装置(CPU)を用いて構成される。なお、処理装置11が有する機能の一部又は全部を、DSP、ASIC、PLD、FPGA等のハードウェアによって実現してもよい。処理装置11は、各種の処理を並列的又は逐次的に実行する。
【0036】
記憶装置12は、処理装置11による読取及び書込が可能な記録媒体である。また、記憶装置12は、処理装置11が実行する制御プログラムPR2を含む複数のプログラムを記憶する。また、記憶装置12は、XRグラス20-Kに表示される画像を示す外部画像情報を更に記憶してもよい。この外部画像情報にはメッセージに対応付けられる仮想オブジェクトVOを示す外部画像情報が含まれる。
【0037】
更に、記憶装置12は、基準軌道情報Dを記憶する。基準軌道情報Dは、予め定められた仮想オブジェクトVOの複数の軌道を示す。
図2を参照して説明したように、ユーザU[K]は、仮想オブジェクトVOを直接操作することによって、仮想オブジェクトVOを仮想空間VSにおいて移動させることができる。また、ユーザU[K]は、予め定められた複数の軌道から、一の軌道を選択することができる。この場合、仮想オブジェクトVOは、選択された一の軌道に沿って移動する。この例の基準軌道情報Dは、
図6に示されるように、第1の基準軌道Sr1を示す第1基準軌道情報D1、第2の基準軌道Sr2を示す第2基準軌道情報D2、第3の基準軌道Sr3を示す第3基準軌道情報D3、第4の基準軌道Sr4を示す第4基準軌道情報D4、第5の基準軌道Sr5を示す第5基準軌道情報D5、第6の基準軌道Sr6を示す第6基準軌道情報D6及び第7の基準軌道Sr7を示す第7基準軌道情報D7を含む。
【0038】
図7は、第1の基準軌道Sr1から第7の基準軌道Sr7までを示す模式図である。第1の基準軌道Sr1は、仮想オブジェクトVOをZ正方向、即ち、図中、上方向に移動させる軌道である。第2の基準軌道Sr2は、仮想オブジェクトVOを、Z負方向、即ち、図中、下方向に移動させる軌道である。第3の基準軌道Sr3は、仮想オブジェクトVOをX正方向、即ち、図中、右方向に移動させる軌道である。第4の基準軌道Sr4は、仮想オブジェクトVOをX負方向、即ち、図中、左方向に移動させる軌道である。第5の基準軌道Sr5は、仮想オブジェクトVOをX正方向に波打つように移動させる軌道である。第6の基準軌道Sr6は、仮想オブジェクトVOをX負方向に波打つように移動させる軌道である。第7の基準軌道Sr7は、仮想オブジェクトVOが仮想空間VSを漂うように移動させる軌道である。
【0039】
図5に示される通信装置13は、他の装置と通信を行うための、送受信デバイスとしてのハードウェアである。通信装置13は、例えば、ネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュール等とも呼ばれる。通信装置13は、有線接続用のコネクターを備え、上記コネクターに対応するインタフェース回路を備えていてもよい。また、通信装置13は、無線通信インタフェースを備えていてもよい。有線接続用のコネクター及びインタフェース回路としては有線LAN、IEEE1394、USBに準拠した製品が挙げられる。また、無線通信インタフェースとしては無線LAN及びBluetooth(登録商標)等に準拠した製品が挙げられる。
【0040】
ディスプレイ14は、画像及び文字情報を表示するデバイスである。ディスプレイ14は、処理装置11の制御のもとで各種の画像を表示する。例えば、液晶表示パネル及び有機EL(Electro Luminescence)表示パネル等の各種の表示パネルがディスプレイ14として好適に利用される。
【0041】
入力装置15は、ユーザU[K]の入力装置15に対する操作に応じた操作情報を生成する。入力装置15は、操作情報を処理装置11に出力する。例えば、入力装置15は、キーボード、タッチパッド、タッチパネル又はマウス等のポインティングデバイスを含んで構成される。ここで、入力装置15は、タッチパネルを含んで構成される場合、ディスプレイ14を兼ねてもよい。
【0042】
慣性センサ16は、慣性力を検出するセンサである。慣性センサ16は、例えば、加速度センサ、角速度センサ、及びジャイロセンサのうち、1以上のセンサを含む。慣性センサ16は、1以上のセンサの検出結果を示すセンサ情報を処理装置11に出力する。処理装置11は、センサ情報に基づいて、端末装置10-Kの姿勢を検出する。更に、処理装置11は、端末装置10-Kの姿勢に基づいて、仮想空間VSにおいて、仮想オブジェクトVOの選択、文字の入力、及び指示の入力を受け付ける。例えば、ユーザU[K]が端末装置10-Kの中心軸を仮想空間VSの所定領域に向けた状態で、入力装置15を操作すると、所定領域に配置される仮想オブジェクトVOが選択される。入力装置15に対するユーザU[K]の操作は、例えば、ダブルタップである。このようにユーザU[K]は端末装置10-Kを操作することで、端末装置10-Kの入力装置15を見なくても仮想オブジェクトVOを選択できる。また、処理装置11は、文字の入力において、仮想空間に複数の仮想キーを有する仮想キーボードを表示させる。ユーザU[K]は、端末装置10-Kの中心軸を仮想キーに向けた状態で、入力装置15を操作することによって、文字が入力される。ユーザU[K]は、この入力操作によって、メッセージの送信先のアドレスを入力することができる。
【0043】
処理装置11は、記憶装置12から制御プログラムPR2を読み出して、読み出した制御プログラムPR2を実行する。その結果、処理装置11は、取得部111、受付部112、軌道情報生成部113、送信情報生成部114、表示制御部115、送信制御部116、及び受信制御部117として機能する。
【0044】
取得部111は、通信装置13を介して、撮像情報、視線情報、ユーザ位置情報、ユーザ姿勢情報、ユーザ動き情報及び深度情報を含む情報を取得する。
【0045】
受付部112は、入力装置15から出力される操作情報、及び慣性センサ16から出力されるセンサ情報を受け付ける。受付部112は、センサ情報に基づいて、端末装置10-Kの姿勢を示す装置姿勢情報を生成する。
【0046】
軌道情報生成部113は、ユーザU[K]の操作に応じて、メッセージに対応する仮想オブジェクトVOが仮想空間において移動された場合、仮想オブジェクトVOの軌道に関する軌道情報を生成する。但し、ユーザU[K]はメッセージの送信元のユーザであるとする。ユーザU[K]の操作には、入力装置15に対する操作の他に、ユーザU[K]の視線に基づく操作、及びユーザU[K]のジェスチャーが含まれる。視線に基づく操作は、XRグラス20-Kから取得される視線情報によって、特定される。ジェスチャーに基づく操作は、XRグラス20-Kから取得される撮像情報によって、特定される。
【0047】
図8は、軌道情報生成部113の詳細な構成を示すブロック図である。軌道情報生成部113は、ユーザ軌道生成部113A、基準軌道選択部113B、及び軌道合成部113Cを含む。
【0048】
ユーザ軌道生成部113Aは、ユーザU[K]が、メッセージに対応する仮想オブジェクトVOを直接操作することによって移動する仮想オブジェクトVOの軌道をユーザ軌道として生成する。仮想オブジェクトVOに対するユーザU[K]の直接の操作は、第2操作の一例である。仮想オブジェクトVOに対するユーザU[K]の操作は、例えば、ユーザU[K]が仮想オブジェクトVOを手に持って、仮想オブジェクトVOを仮想空間VSにおいて移動させる操作である。この操作が為された場合、ユーザ軌道生成部113Aは、ユーザU[K]の手の位置をトラッキングすることによって、仮想オブジェクトVOの軌道を特定する。ユーザ軌道生成部113Aは、ユーザU[K]の手の位置を、深度情報に基づいて特定する。あるいは、ユーザ軌道生成部113Aは、撮像情報に基づいてユーザU[K]の手の位置を特定する。撮像情報に基づく手の位置の特定において、ユーザ軌道生成部113Aは、撮像画像と手の位置との関係を学習済みの学習モデルを用いて、手の位置を特定してもよい。
【0049】
ユーザ軌道生成部113Aは、ユーザU[K]の手の位置の時間変化を示す軌跡情報を生成する。ユーザU[K]の手の位置と仮想オブジェクトVOの中心位置との相対的な位置関係を示す相対位置情報は既知である。ユーザ軌道生成部113Aは、軌跡情報と相対位置情報とに基づいて、仮想オブジェクトVOの仮想空間VSにおける位置の時間変化を示すユーザ軌道を算出し、算出したユーザ軌道を示すユーザ軌道情報を生成する。
図2に示される軌道Sは、ユーザ軌道の一例である。
【0050】
ところで、ユーザU[K]が、仮想オブジェクトVOに対して直接操作を加える場合、ユーザU[K]の手がぶれる場合がある。この場合、ユーザ軌道は、微妙にぶれた軌道となる。そこで、ユーザ軌道生成部113Aは、ユーザ軌道にユーザU[K]の操作に伴うノイズ成分を除去する処理を施すことによって、ユーザ軌道を補正してもよい。補正が実行された場合、ユーザ軌道生成部113Aが生成するユーザ軌道情報は、補正済のユーザ軌道を示す。例えば、
図9に示されるユーザ軌道Su1は補正前の軌道である。ユーザ軌道生成部113Aは、ユーザ軌道Su1にノイズ成分を除去する処理を施すことによって、補正済のユーザ軌道Su2を生成する。ノイズ成分を除去する処理は、例えば、ユーザ軌道から高域周波数成分を除去するローパスフィルタ処理である。但し、ノイズ成分を除去する処理は、ローパスフィルタ処理に限定されず、ノイズを除去できるのであれば、どのような処理であってもよい。
【0051】
ユーザU[K]は、仮想オブジェクトVOを直接操作することによって、仮想オブジェクトVOの軌道としてユーザ軌道を指定してもよいし、あるいは、予め用意されている複数の軌道の中から一の軌道を選択することによって、仮想オブジェクトVOの軌道を指定してもよい。本実施形態において、予め用意されている複数の軌道は、
図7に示される第1の基準軌道Sr1、第2の基準軌道Sr2、…第7の基準軌道Sr7である。更に、軌道情報生成部113は、ユーザ軌道と選択された1以上の軌道とを合成することによって合成された軌道を生成し、合成された軌道を示す軌道情報を生成してもよい。軌道の合成は、2以上の基準軌道の合成であってよいし、あるいは、ユーザ軌道と1以上の基準軌道との合成であってもよい。予め用意されている複数の軌道の中から1以上の軌道を選択する操作は、第1操作の一例である。
【0052】
基準軌道選択部113Bは、ユーザU[K]の操作が第1操作である場合に、第1操作によって選択される1以上の軌道を特定する。具体的には、基準軌道選択部113Bは、第1操作によって選択される1以上の軌道に対応する基準軌道情報Dを記憶装置12から読み出す。
【0053】
軌道合成部113Cは、2以上の軌道を合成して、合成された軌道を生成する。ユーザU[K]が仮想オブジェクトVOを仮想空間VS上で移動させる第2操作を行った場合、ユーザ軌道が生成される。ユーザ軌道が生成されている状態において、基準軌道選択部113Bによって1以上の軌道が選択された場合、軌道合成部113Cは、ユーザ軌道と選択された1以上の軌道を合成する。例えば、ユーザ軌道が
図2に示されるループ状の軌道Sであり、選択された軌道が
図7に示される第1の基準軌道Sr1である場合、軌道合成部113Cは、軌道Sと第1の基準軌道Sr1を合成することによって、
図10Aに示される軌道Sxを生成する。
【0054】
また、ユーザ軌道が生成されていない状態において、基準軌道選択部113Bによって1以上の軌道が選択された場合、軌道合成部113Cは、1以上の軌道を合成する。例えば、基準軌道選択部113Bによって、
図7に示される第1の基準軌道Sr1が選択された後、第3の基準軌道Sr3が選択された場合、軌道合成部113Cは、第1の基準軌道Sr1と第3の基準軌道Sr3とを合成することによって、
図10Bに示される軌道Syを生成する。
【0055】
次に、
図5に示される送信情報生成部114は、メッセージ情報、軌道情報生成部113によって生成された軌道情報、送信先情報、及び送信元情報を含む送信情報を生成する。送信先情報は、例えば、メッセージの送信先を示すアドレスである。送信元情報は、例えば、メッセージの送信元を示すアドレスである。
【0056】
表示制御部115は、ディスプレイ14に表示させる画像を示す内部画像情報と、XRグラス20-Kに表示させる画像を示す外部画像情報とを生成する。表示制御部115は、内部画像情報をディスプレイ14に出力する。表示制御部115は通信装置13を介して外部画像情報をXRグラス20-Kに出力することによって、XRグラス20-Kに仮想オブジェクトVOを含む仮想空間VSを表示させる。
【0057】
表示制御部115は、例えば、ユーザU[K]が複数の軌道の中から1以上の軌道を選択する場合に、
図11に示される仮想空間VSの画像を生成する。
図11に示されるように、仮想空間VSには、仮想オブジェクトVOに対応付けられて第1アイコンA1、第2アイコンA2、…第7アイコンA7が配置される。第1アイコンA1、第2アイコンA2、…第7アイコンA7は第1の基準軌道Sr1、第2の基準軌道Sr2、…第7の基準軌道Sr7と1対1に対応する。ユーザU[K]は、アイコンを選択することによって、1以上の基準軌道を指定することができる。
【0058】
図5に示される送信制御部116は、通信装置13を用いて送信情報をユーザU[K]が指定する送信先に送信させる。具体的には、送信先情報を含む送信情報が、サーバ30に送信される。
【0059】
受信制御部117は、サーバ30を介して、送信元のユーザの端末装置から送信される送信情報を通信装置13に受信させる。ユーザU[1]が送信元のユーザであり、ユーザU[K]が送信先のユーザである場合、端末装置10-1から送信される送信情報は、サーバ30を経由して、端末装置10-Kが受信する。
【0060】
画像生成部118は、メッセージに対応する仮想オブジェクトVOを生成する。また、画像生成部118は、受信された送信情報に含まれる軌道情報に従って、仮想空間VSにおいて仮想オブジェクトVOが移動する画像を生成する。画像生成部118は、生成された画像を示す外部画像情報を表示制御部115に出力する。表示制御部115は、送信先のユーザであるユーザU[K]のXRグラス20-Kに外部画像情報を出力する。ユーザU[1]が送信元のユーザである場合、ユーザU[1]の操作に応じて仮想空間VSを移動する仮想オブジェクトVOの挙動が、送信先のユーザU[K]のXRグラス20-Kに表示される。この表示によって、ユーザU[K]はXRグラス20-Kを介して、仮想空間VSを移動する仮想オブジェクトVOを視認できる。
【0061】
1.1.4:サーバの構成
図12は、サーバ30の構成例を示すブロック図である。サーバ30は、処理装置31、記憶装置32、通信装置33、ディスプレイ34、及び入力装置35を備える。サーバ30が有する各要素は、情報を通信するための単体又は複数のバスによって相互に接続される。
【0062】
処理装置31は、サーバ30の全体を制御するプロセッサである。また、処理装置31は、例えば、単数又は複数のチップを用いて構成される。処理装置31は、例えば、周辺装置とのインタフェース、演算装置及びレジスタ等を含む中央処理装置(CPU)を用いて構成される。なお、処理装置31の機能の一部又は全部を、DSP、ASIC、PLD、FPGA等のハードウェアによって実現してもよい。処理装置31は、各種の処理を並列的又は逐次的に実行する。
【0063】
記憶装置32は、処理装置31による読取及び書込が可能な記録媒体である。また、記憶装置32は、処理装置31が実行する制御プログラムPR3を含む複数のプログラムを記憶する。また、記憶装置32は、データベースDBを記憶する。データベースDBは、識別情報、送信情報、受信日時情報、及び送信日時情報を相互に対応付けて記憶する。識別情報は送信情報を一意に識別する情報である。送信情報は、送信元の端末装置10-1~10-Jから受信される。受信日時情報は送信情報をサーバ30が受信した日時を示す。送信日時情報は、送信情報を送信先の端末装置10-1~10-Jへ送信した送信日時を示す。
【0064】
通信装置33は、他の装置と通信を行うための、送受信デバイスとしてのハードウェアである。通信装置33は、例えば、ネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュール等とも呼ばれる。通信装置33は、有線接続用のコネクターを備え、上記コネクターに対応するインタフェース回路を備えていてもよい。また、通信装置33は、無線通信インタフェースを備えていてもよい。有線接続用のコネクター及びインタフェース回路としては有線LAN、IEEE1394、USBに準拠した製品が挙げられる。また、無線通信インタフェースとしては無線LAN及びBluetooth(登録商標)等に準拠した製品が挙げられる。
【0065】
ディスプレイ34は、画像及び文字情報を表示するデバイスである。ディスプレイ34は、処理装置31の制御のもとで各種の画像を表示する。例えば、液晶表示パネル及び有機EL表示パネル等の各種の表示パネルがディスプレイ34として好適に利用される。
【0066】
入力装置35は、情報処理システム1の管理者からの操作を受け付ける機器である。例えば、入力装置35は、キーボード、タッチパッド、タッチパネル又はマウス等のポインティングデバイスを含んで構成される。ここで、入力装置35は、タッチパネルを含んで構成される場合、ディスプレイ34を兼ねてもよい。
【0067】
処理装置31は、例えば、記憶装置32から制御プログラムPR3を読み出して、読み出した制御プログラムRP3を実行する。その結果、処理装置31は、取得部311、及び出力部312として機能する。
【0068】
取得部311は、通信装置33を介して、端末装置10-Kから送信情報を含む各種の情報を取得する。
【0069】
出力部312は、送信情報に含まれる送信先情報を参照して、当該送信情報を送信先情報の示す送信先アドレスへ通信装置33を介して出力する。
【0070】
1.2:実施形態の動作
端末装置10-Kの動作を送信処理と受信処理とに分けて説明する。
【0071】
1.2.1:送信処理
図13は、実施形態に係る端末装置10-Kの送信処理の動作を示すフローチャートである。
【0072】
ステップS1において、処理装置11は、取得部111として機能する。処理装置11は、ユーザU[K]によって作成されたメッセージ情報を取得する。
【0073】
ステップS2において、処理装置11は、表示制御部115及び画像生成部118として機能する。処理装置11は、ステップS1において作成されたメッセージ情報に対応する仮想オブジェクトVOを生成し、生成した仮想オブジェクトVOをXRグラス20-Kに表示させる。ユーザU[K]は、例えば、以下の操作を行ってもよい。第1に、ユーザU[K]は、メッセージ用の仮想オブジェクトVOを生成する指示を、ジェスチャー、視線、又は入力装置15に対する操作によって入力する。処理装置11は、上記操作を受け付けて、仮想オブジェクトVOを仮想空間VSに表示させる。第2に、ユーザU[K]は、テキスト等のメッセージを表す仮想オブジェクトを、送信用の仮想オブジェクトVOにドラック&ドロップする操作を行う。例えば、
図14Aにおいて、「こんにちは!」を示す仮想オブジェクトVOtを送信用の仮想オブジェクトVOにドラック&ドロップする操作によって、「こんにちは!」に対応するメッセージ情報と仮想オブジェクトVOとが対応付けられる。
【0074】
ステップS3において、処理装置11は、表示制御部115及び受付部112として機能する。処理装置11は、送信先の装置において仮想オブジェクトVOを移動させる操作を受け付けたかを判定する。処理装置11は、例えば、
図14Bに示される仮想空間VSをXRグラス20-Kに表示させる。この例では、仮想オブジェクトVOに対応付けて、「仮想オブジェクトの軌道を生成しますか?」といったメッセージと共に、ボタンB1及びボタンB2が表示される。ボタンB1は、ユーザU[K]が送信先の装置において仮想オブジェクトVOの移動させる指示を入力するために用いられる。ボタンB2は、ユーザU[K]が送信先の装置において仮想オブジェクトVOを移動させない指示を入力するために用いられる。ユーザU[K]がボタンB1を操作した場合、処理装置11は、送信先の装置において仮想オブジェクトVOを移動させる操作を受け付けたと判定する。一方、ユーザU[K]がボタンB2を操作した場合、処理装置11は、送信先の装置において仮想オブジェクトVOを移動さない操作を受け付けたと判定する。
【0075】
ステップS3の判定結果が否定の場合、処理装置11は、処理をステップS5に進める。一方、ステップS3の判定結果が肯定の場合、処理装置11は、軌道情報を生成する(ステップS4)。
【0076】
図15は、軌道情報の生成に関する端末装置10-Kの詳細な動作を示すフローチャートである。ステップS41において、処理装置11は、表示制御部115及び受付部112として機能する。処理装置11は、ユーザ軌道の入力を受け付けたか否かを判定する。処理装置11は、例えば、
図16Aに示される仮想空間VSをXRグラス20-Kに表示させる。この例では、仮想オブジェクトVOに対応付けて、「あなたが仮想オブジェクト移動させますか?」といったメッセージと共に、ボタンB3及びボタンB4が表示される。ボタンB3は、ユーザU[K]が自ら仮想オブジェクトVOの移動する旨の指示を入力するために用いられる。ボタンB4は、ユーザU[K]が自ら仮想オブジェクトVOの移動させない旨の指示を入力するために用いられる。ユーザU[K]がボタンB3を操作した場合、処理装置11は、ユーザ軌道の入力を受け付けたと判定する。一方、ユーザU[K]がボタンB4を操作した場合、処理装置11は、ユーザ軌道の入力を受け付けなかったと判定する。
【0077】
処理装置11は、ステップS41の判定結果が肯定の場合、処理をステップS42に進める。ステップS42において、処理装置11は、ユーザ軌道生成部113Aとして機能する。処理装置11は、ユーザU[K]が仮想オブジェクトVOを手に持って仮想空間VSを移動させる場合、ユーザU[K]の手の位置をトラッキングすることによって、仮想オブジェクトVOの軌道を特定する。処理装置11は、特定された軌道を示すユーザ軌道情報を生成する。
【0078】
ステップS43において、処理装置11は、表示制御部115及び受付部112として機能する。処理装置11は、軌道を合成する指示を受け付けたかを判定する。処理装置11は、例えば、
図16Bに示される仮想空間VSをXRグラス20-Kに表示させる。この例では、仮想オブジェクトVOに対応付けて、「軌道を合成しますか?」といったメッセージと共に、ボタンB5及びボタンB6が表示される。ボタンB5は、ユーザU[K]が軌道を合成する指示を入力するために用いられる。ボタンB6は、ユーザU[K]が軌道を合成しない指示を入力するために用いられる。ユーザU[K]がボタンB5を操作した場合、処理装置11は、軌道を合成する指示を受け付けたと判定する。一方、ユーザU[K]がボタンB6を操作した場合、処理装置11は、軌道を合成する指示を受け付けなかったと判定する。
【0079】
処理装置11は、ステップS43の判定結果が否定の場合、処理をステップS46に進める。処理装置11は、ステップS43の判定結果が肯定の場合、処理をステップS44に進める。
【0080】
ステップS44において、処理装置11は、基準軌道選択部113B、表示制御部115及び受付部112として機能する。処理装置11は、例えば、
図11Bに示される仮想空間VSをXRグラス20-Kに表示させる。この表示によって、ユーザU[K]は、複数の基準軌道のうち、1以上の基準軌道を選択することが促される。処理装置11は、ユーザU[K]によって選択された1以上の基準軌道を受け付ける。
【0081】
ステップS45において、処理装置11は、軌道合成部113Cとして機能する。処理装置11は、ステップS44において受け付けた1以上の軌道に対応する基準軌道情報及びステップS42において生成されたユーザ軌道情報に基づいて、合成された軌道を生成する。
【0082】
ステップS46において、処理装置11は、軌道情報生成部113として機能する。処理装置11は、仮想オブジェクトVOが仮想空間VSを移動する軌道を示す軌道情報を生成する。
【0083】
ステップS41において、ユーザ軌道の入力を受け付けなかったと判定された場合、処理装置11は、処理をステップS47に進める。ステップS47において、処理装置11は、ステップS44と同様に、ユーザU[K]によって選択された1以上の基準軌道を受け付ける。
【0084】
ステップS48において、処理装置11は、ユーザU[K]によって2以上の基準軌道が選択された否かを判定する。
【0085】
ステップS48の判定結果が肯定の場合、処理装置11は、処理をステップS45に進める。この場合、処理装置11は、ユーザU[K]によって選択された2以上の基準軌道を合成する。
【0086】
一方、ステップS48の判定結果が否定の場合、処理装置11は、処理をステップS46に進める。この場合、処理装置11は、ユーザU[K]によって選択された1の基準軌道を示す軌道情報を生成する。以上が、
図13に示されるステップS4の詳細な処理内容である。
【0087】
図13に示されるステップS5において、処理装置11は、受付部112として機能する。処理装置11は、ユーザU[K]が指定する送信先を受け付ける。この受付によって、処理装置11は、送信先情報を取得する。
【0088】
ステップS6において、処理装置11は、送信情報を生成する。具体的には、処理装置11は、ステップS1において生成したメッセージ情報、ステップS4において取得した軌道情報、ステップS5において取得した送信先情報、及び送信元情報を含む送信情報を生成する。
【0089】
ステップS7において、処理装置11は、送信制御部116として機能する。処理装置11は、通信装置13を用いて、送信情報を送信先へ送信させる。
【0090】
1.2.2:受信処理
図17は、実施形態に係る端末装置10-Kの受信処理の動作を示すフローチャートである。
【0091】
ステップS11において、処理装置11は、受信制御部117として機能する。処理装置11は、送信情報を通信装置13に受信させることによって、送信情報を取得する。
【0092】
ステップS12において、処理装置11は、受信制御部117として機能する。処理装置11は、送信情報に軌道情報が含まれるか否かを判定する。ステップS12の判定結果が否定の場合、処理装置11は、受信処理を終了する。
【0093】
ステップS12の判定結果が肯定の場合、処理装置11は、ステップS13において、画像生成部118として機能する。処理装置11は、送信情報に含まれる軌道情報に基づいて、仮想オブジェクトVOが仮想空間VSにおいて移動する画像を示す外部画像情報を生成する。
【0094】
ステップS14において、処理装置11は、表示制御部115として機能する。処理装置11は、通信装置13を介してステップS13において生成された外部画像情報をXRグラス20-Kに出力する。この出力によって、XRグラス20-Kに仮想オブジェクトVOが移動する仮想空間VSを表示させることができる。
【0095】
1.3:実施形態が奏する効果
以上の説明によれば、メッセージ送信装置としての端末装置10-Kは、軌道情報生成部113と、送信情報生成部114と、送信制御部116とを備える。軌道情報生成部113は、送信元のユーザU[K]の操作に応じて、メッセージに対応する仮想オブジェクトVOが仮想空間VSにおいて移動された場合、仮想オブジェクトVOの軌道に関する軌道情報を生成する。送信情報生成部114は、メッセージを示すメッセージ情報と軌道情報とを含む送信情報を生成する。送信制御部116は通信装置13を用いて送信情報をユーザU[K]が指定する送信先に送信させる。
【0096】
端末装置10-Kは、メッセージ情報と仮想オブジェクトVOの軌道に関する軌道情報とを含む送信情報を送信先に送信するので、送信先の装置では軌道情報に基づいて、送信元のユーザU[K]の操作に応じて移動する仮想オブジェクトVOの動きを再現することが可能になる。よって、メッセージの送信元のユーザU[K]は、メッセージの送信先のユーザが視認する仮想空間における仮想オブジェクトVOの動きを制御できる。
【0097】
また以上の説明によれば、軌道は、仮想オブジェクトVOの仮想空間VSにおける位置の時間変化を示す。また、軌道情報生成部113は、軌道に対してユーザU[K]の操作に伴うノイズ成分を除去する処理を施すことによって、軌道情報を生成する。
【0098】
ユーザU[K]が仮想空間VSにおいて仮想オブジェクトVOに触れることによって、仮想オブジェクトVOを移動させる場合、ユーザU[K]の手ぶれが、仮想オブジェクトVOの軌道に反映される。端末装置10-Kが、ノイズ成分を除去する処理を実行することによって、軌道に反映されるユーザU[K]の手ぶれの成分が除去される。よって、送信先のユーザが視認する仮想空間における仮想オブジェクトVOの動きを円滑にできる。
【0099】
また以上の説明によれば、送信元のユーザU[K]の操作は、仮想オブジェクトVOの軌道として予め用意された複数の軌道から1以上の軌道を送信元のユーザU[K]が選択する第1操作と、送信元のユーザU[K]が仮想オブジェクトVOを仮想空間VS上で移動させる第2操作とを含む。また、軌道情報生成部113は、第1操作によって選択される1以上の軌道と、第2操作によって指定される仮想オブジェクトの軌道とを合成した軌道を示す情報を、軌道情報として生成する。
【0100】
端末装置10-Kは、以上の構成を備えるので、第2操作によって指定される仮想オブジェクトの軌道に効果を付与することができる。また、送信元のユーザU[K]が複数の軌道から1以上の軌道を選択することによって、多様な仮想オブジェクトの軌道を生成することができる。
【0101】
以上の説明によれば、メッセージ受信装置としての端末装置10-Kは、メッセージ送信装置から送信される送信情報を通信装置13に受信させる受信制御部117と、送信情報に含まれる軌道情報に従って、仮想空間VSにおいて仮想オブジェクトVOが移動する画像を生成する画像生成部118と、生成された画像を、送信先のユーザU[K]のXRグラス20-Kに表示させる表示制御部115とを備える。
【0102】
端末装置10-Kは、以上の構成を備えるので、送信元のユーザが仮想空間において仮想オブジェクトを移動させた軌道を、送信先のユーザU[K]が視認する仮想空間VSにおいて再現することができる。
【0103】
3:変形例
本開示は、以上に例示した実施形態に限定されない。具体的な変形の態様を以下に例示する。以下の例示から任意に選択された2以上の態様を併合してもよい。
【0104】
3.1:変形例1
実施形態に係る情報処理システム1においては、端末装置10-Kが、取得部111、受付部112、及び軌道情報生成部113を備える。しかし、端末装置10-Kの代わりに、サーバ30がこれらと同様の構成要素を備えてもよい。他の構成要素についても同様に、端末装置10-Kの代わりに、サーバ30がそれらと同様の構成要素を備えてもよい。サーバ30が取得部111、受付部112、及び軌道情報生成部113を備える場合、XRグラス20-Kから端末装置10-Kが取得する各種の情報は、端末装置10-Kからサーバ20へ送信される。また、端末装置10-Kの入力装置15から出力される操作情報も同様に、サーバ30へ送信される。
【0105】
3.2:変形例2
実施形態に係る情報処理システム1において、端末装置10-KとXRグラス20-Kとは別体として実現されている。しかし、本発明の実施形態における、端末装置10-KとXRグラス20-Kの実現方法は、これには限定されない。例えば、XRグラス20-Kが、端末装置10-Kと同一の機能を備えてもよい。換言すれば、端末装置10-KとXRグラス20-Kとが単一の筐体内において実現されてもよい。
【0106】
3.3:変形例3
実施形態に係る端末装置10-Kにおいては、メッセージ情報が生成された後に、メッセージに対応付けられる仮想オブジェクトVOが生成される。しかし、最初に、ユーザU[K]が入力装置15を用いて、仮想オブジェクトVOを生成した後に、当該仮想オブジェクトVOに紐づくメッセージ情報を作成してもよい。
【0107】
3.4:変形例4
実施形態に係る情報処理システム1は、XRグラス20-Kを備える。しかし、情報処理システム1は、XRグラス20-Kの代わりに、VR技術が採用されたVRグラス、VR技術が採用されたHMD(Head Mounted Display)、AR技術が採用されたARグラス、及びAR技術が採用されたHMDのうちいずれか1つを備えてもよい。あるいは、情報処理システム1は、XRグラス20-Kの代わりに、撮像装置を備えた通常のスマートフォン及びタブレットのうちいずれか1つを備えてもよい。これらのVRグラス、ARグラス、HMD、スマートフォン、及びタブレットは、表示装置の一例である。
【0108】
4:その他
(1)上述した実施形態では、記憶装置12、記憶装置22、並びに記憶装置32は、ROM及びRAMなどを例示したが、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu-ray(登録商標)ディスク)、スマートカード、フラッシュメモリデバイス(例えば、カード、スティック、キードライブ)、CD-ROM(Compact Disc-ROM)、レジスタ、リムーバブルディスク、ハードディスク、フロッピー(登録商標)ディスク、磁気ストリップ、データベース、サーバその他の適切な記憶媒体である。また、プログラムは、電気通信回線を介してネットワークから送信されてもよい。また、プログラムは、電気通信回線を介して通信網NETから送信されてもよい。
【0109】
(2)上述した実施形態において、説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
【0110】
(3)上述した実施形態において、入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルを用いて管理してもよい。入出力される情報等は、上書き、更新、又は追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
【0111】
(4)上述した実施形態において、判定は、1ビットを用いて表される値(0か1か)によって行われてもよいし、真偽値(Boolean:true又はfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
【0112】
(5)上述した実施形態において例示した処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本開示において説明した方法については、例示的な順序を用いて様々なステップの要素を提示しており、提示した特定の順序に限定されない。
【0113】
(6)
図1~
図17に例示された各機能は、ハードウェア及びソフトウェアの少なくとも一方の任意の組み合わせによって実現される。また、各機能ブロックの実現方法は特に限定されない。すなわち、各機能ブロックは、物理的又は論理的に結合した1つの装置を用いて実現されてもよいし、物理的又は論理的に分離した2つ以上の装置を直接的又は間接的に(例えば、有線、無線などを用いて)接続し、これら複数の装置を用いて実現されてもよい。機能ブロックは、上記1つの装置又は上記複数の装置にソフトウェアを組み合わせて実現されてもよい。
【0114】
(7)上述した実施形態において例示したプログラムは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称を用いて呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。
【0115】
また、ソフトウェア、命令、情報などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、有線技術(同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL:Digital Subscriber Line)など)及び無線技術(赤外線、マイクロ波など)の少なくとも一方を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び無線技術の少なくとも一方は、伝送媒体の定義内に含まれる。
【0116】
(8)前述の各形態において、「システム」及び「ネットワーク」という用語は、互換的に使用される。
【0117】
(9)本開示において説明した情報、パラメータなどは、絶対値を用いて表されてもよいし、所定の値からの相対値を用いて表されてもよいし、対応する別の情報を用いて表されてもよい。
【0118】
(10)上述した実施形態において、端末装置10-1~10-J、及びサーバ30は、移動局(MS:Mobile Station)である場合が含まれる。移動局は、当業者によって、加入者局、モバイルユニット、加入者ユニット、ワイヤレスユニット、リモートユニット、モバイルデバイス、ワイヤレスデバイス、ワイヤレス通信デバイス、リモートデバイス、モバイル加入者局、アクセス端末、モバイル端末、ワイヤレス端末、リモート端末、ハンドセット、ユーザエージェント、モバイルクライアント、クライアント、又はいくつかの他の適切な用語によって呼ばれる場合もある。また、本開示においては、「移動局」、「ユーザ端末(user terminal)」、「ユーザ装置(UE:User Equipment)」、「端末」等の用語は、互換的に使用され得る。
【0119】
(11)上述した実施形態において、「接続された(connected)」、「結合された(coupled)」という用語、又はこれらのあらゆる変形は、2又はそれ以上の要素間の直接的又は間接的なあらゆる接続又は結合を意味し、互いに「接続」又は「結合」された2つの要素間に1又はそれ以上の中間要素が存在することを含められる。要素間の結合又は接続は、物理的な結合又は接続であっても、論理的な結合又は接続であっても、或いはこれらの組み合わせであってもよい。例えば、「接続」は「アクセス」を用いて読み替えられてもよい。本開示において使用する場合、2つの要素は、1又はそれ以上の電線、ケーブル及びプリント電気接続の少なくとも一つを用いて、並びにいくつかの非限定的かつ非包括的な例として、無線周波数領域、マイクロ波領域及び光(可視及び不可視の両方)領域の波長を有する電磁エネルギーなどを用いて、互いに「接続」又は「結合」されると考えられる。
【0120】
(12)上述した実施形態において、「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
【0121】
(13)本開示において使用される「判断(determining)」、「決定(determining)」という用語は、多種多様な動作を包含する場合がある。「判断」、「決定」は、例えば、判定(judging)、計算(calculating)、算出(computing)、処理(processing)、導出(deriving)、調査(investigating)、探索(looking up、search、inquiry)(例えば、テーブル、データベース又は別のデータ構造での探索)、確認(ascertaining)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、受信(receiving)(例えば、情報を受信すること)、送信(transmitting)(例えば、情報を送信すること)、入力(input)、出力(output)、アクセス(accessing)(例えば、メモリ中のデータにアクセスすること)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、解決(resolving)、選択(selecting)、選定(choosing)、確立(establishing)、比較(comparing)などした事を「判断」「決定」したとみなす事を含み得る。つまり、「判断」「決定」は、何らかの動作を「判断」「決定」したとみなす事を含み得る。また、「判断(決定)」は、「想定する(assU[M]ing)」、「期待する(expecting)」、「みなす(considering)」などによって読み替えられてもよい。
【0122】
(14)上述した実施形態において、「含む(include)」、「含んでいる(including)」及びそれらの変形が使用されている場合、これらの用語は、用語「備える(comprising)」と同様に、包括的であることが意図される。更に、本開示において使用されている用語「又は(or)」は、排他的論理和ではないことが意図される。
【0123】
(15)本開示において、例えば、英語でのa, an及びtheのように、翻訳により冠詞が追加された場合、本開示は、これらの冠詞の後に続く名詞が複数形であることを含んでもよい。
【0124】
(16)本開示において、「AとBが異なる」という用語は、「AとBが互いに異なる」ことを意味してもよい。なお、当該用語は、「AとBがそれぞれCと異なる」ことを意味してもよい。「離れる」、「結合される」等の用語も、「異なる」と同様に解釈されてもよい。
【0125】
(17)本開示において説明した各態様/実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、所定の情報の通知(例えば、「Xであること」の通知)は、明示的に行う通知に限られず、暗黙的(例えば、当該所定の情報の通知を行わない)ことによって行われてもよい。
【0126】
以上、本開示について詳細に説明したが、当業者にとっては、本開示が本開示中に説明した実施形態に限定されないということは明らかである。本開示は、請求の範囲の記載により定まる本開示の趣旨及び範囲を逸脱することなく修正及び変更態様として実施できる。従って、本開示の記載は、例示説明を目的とし、本開示に対して何ら制限的な意味を有さない。
【符号の説明】
【0127】
1…情報処理システム、10-1,10-2,10-K,10-J…端末装置、11…処理装置、12…記憶装置、13…通信装置、14…ディスプレイ、15…入力装置、16…慣性センサ、20-1,20-2,20-K,20-J…XRグラス、21…処理装置、23…視線検出装置、26…撮像装置、27…通信装置、29L,29R…深度検出装置、30…サーバ、31…処理装置、32…記憶装置、33…通信装置、111…取得部、112…受付部、113…軌道情報生成部、114…送信情報生成部、115…表示制御部、116…送信制御部、117…受信制御部、118…画像生成部、U[K]…ユーザ、VO…仮想オブジェクト。