JP2018163420A - 情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 - Google Patents
情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 Download PDFInfo
- Publication number
- JP2018163420A JP2018163420A JP2017058988A JP2017058988A JP2018163420A JP 2018163420 A JP2018163420 A JP 2018163420A JP 2017058988 A JP2017058988 A JP 2017058988A JP 2017058988 A JP2017058988 A JP 2017058988A JP 2018163420 A JP2018163420 A JP 2018163420A
- Authority
- JP
- Japan
- Prior art keywords
- avatar
- information processing
- user
- virtual space
- parameter
- 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.)
- Granted
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 63
- 238000003672 processing method Methods 0.000 title claims abstract description 44
- 230000000007 visual effect Effects 0.000 claims abstract description 75
- 230000033001 locomotion Effects 0.000 claims abstract description 52
- 238000000034 method Methods 0.000 claims description 49
- 230000004044 response Effects 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 description 63
- 210000001508 eye Anatomy 0.000 description 40
- 230000008569 process Effects 0.000 description 33
- 238000004891 communication Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 12
- 230000004048 modification Effects 0.000 description 11
- 238000012986 modification Methods 0.000 description 11
- 210000003128 head Anatomy 0.000 description 8
- 230000001902 propagating effect Effects 0.000 description 8
- 230000009471 action Effects 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 235000002673 Dioscorea communis Nutrition 0.000 description 2
- 241000544230 Dioscorea communis Species 0.000 description 2
- 241001469893 Oxyzygonectes dovii Species 0.000 description 2
- 208000035753 Periorbital contusion Diseases 0.000 description 2
- 210000005252 bulbus oculi Anatomy 0.000 description 2
- 210000004087 cornea Anatomy 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 241001504424 Zosteropidae Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013016 damping Methods 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000002834 transmittance Methods 0.000 description 1
Images
Landscapes
- Processing Or Creating Images (AREA)
- Stereophonic System (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
【課題】仮想空間のエンターテイメント性を向上させる。【解決手段】情報処理方法は、仮想空間データを生成するステップと、ユーザ端末のHMDの動きと仮想空間データとに基づいて、HMDに表示される視野画像を示す視野画像データを生成するステップと、HMDを装着したユーザの手の動きに応じてアバター4Aの手を動かすステップと、マイクに入力された音声に基づく音声データを取得するステップと、アバター4Aの手の状態に関連する第1条件が満たされている場合において、アバター4Bが仮想空間における高伝達領域に位置している場合には、音量パラメータLを音量パラメータL1に設定するステップと、アバター4Bが仮想空間における高伝達領域に位置していない場合には、音量パラメータLを音量パラメータL2に設定するステップと、音声データと音量パラメータLに基づいて、ユーザ端末のヘッドフォンにユーザの音声を出力するステップと、を含む。【選択図】図12
Description
本開示は、情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置に関する。
特許文献1には、ゲームプログラムの実行中に、ゲーム空間内の視点となる移動体が移動した場合又は音源が移動した場合に、移動体と音源との間の相対位置関係を算出し、算出された相対位置関係に基づいた定位パラメータにより音源から出力される音声を加工する処理(音像定位処理)が開示されている。
しかしながら、特許文献1では、仮想空間のエンターテイメント性をさらに向上させるために、音源として規定されたオブジェクト(音源オブジェクト)から出力される音声に関連する異なるパラメータ(例えば、減衰係数)を仮想空間内の互いに異なる領域に設定する技術については何ら開示されていない。特に、仮想空間内において、音源オブジェクトから出力される音声に指向性を持たせる技術については何ら開示されていない。ここで、仮想空間は、VR(Virtual Reality)空間、AR(Augmented Reality)空間及びMR(Mixed Reality) 空間を含むものである。
本開示は、仮想空間のエンターテイメント性を向上させることを目的とする。
本開示が示す一態様によれば、情報処理方法は、
a)操作オブジェクトと、対象オブジェクトとを含む仮想空間を規定する仮想空間データを生成するステップと、
b)前記第1ユーザ端末に関連付けられたヘッドマウントデバイスの動きと前記仮想空間データとに基づいて、前記ヘッドマウントデバイスに表示される視野画像を示す視野画像データを生成するステップと、
c)前記ヘッドマウントデバイスを装着した第1ユーザの身体の一部の動きに応じて、前記操作オブジェクトを動かすステップと、
d)音声入力部に入力された音声に基づく音声データを取得するステップと、
e)前記操作オブジェクトの状態に関連する第1条件が満たされている場合において、
e1)前記対象オブジェクトが前記仮想空間における第1領域に位置している場合には、前記音声データに関連するパラメータを第1パラメータに設定するステップと、
e2)前記対象オブジェクトが前記仮想空間における第1領域とは異なる第2領域に位置している場合には、前記音声データに関連するパラメータを前記第1パラメータとは異なる第2パラメータに設定するステップと、
f)前記音声データと前記パラメータに基づいて、前記対象オブジェクト又は前記対象オブジェクトに関連付けられた第2ユーザ端末に影響を与えるステップと、
を含む。
a)操作オブジェクトと、対象オブジェクトとを含む仮想空間を規定する仮想空間データを生成するステップと、
b)前記第1ユーザ端末に関連付けられたヘッドマウントデバイスの動きと前記仮想空間データとに基づいて、前記ヘッドマウントデバイスに表示される視野画像を示す視野画像データを生成するステップと、
c)前記ヘッドマウントデバイスを装着した第1ユーザの身体の一部の動きに応じて、前記操作オブジェクトを動かすステップと、
d)音声入力部に入力された音声に基づく音声データを取得するステップと、
e)前記操作オブジェクトの状態に関連する第1条件が満たされている場合において、
e1)前記対象オブジェクトが前記仮想空間における第1領域に位置している場合には、前記音声データに関連するパラメータを第1パラメータに設定するステップと、
e2)前記対象オブジェクトが前記仮想空間における第1領域とは異なる第2領域に位置している場合には、前記音声データに関連するパラメータを前記第1パラメータとは異なる第2パラメータに設定するステップと、
f)前記音声データと前記パラメータに基づいて、前記対象オブジェクト又は前記対象オブジェクトに関連付けられた第2ユーザ端末に影響を与えるステップと、
を含む。
本開示によれば、仮想空間のエンターテイメント性を向上させることができる。
[本開示が示す実施形態の説明]
本開示が示す実施形態の概要を説明する。
(1)a)操作オブジェクトと、対象オブジェクトとを含む仮想空間を規定する仮想空間データを生成するステップと、
b)前記第1ユーザ端末に関連付けられたヘッドマウントデバイスの動きと前記仮想空間データとに基づいて、前記ヘッドマウントデバイスに表示される視野画像を示す視野画像データを生成するステップと、
c)前記ヘッドマウントデバイスを装着した第1ユーザの身体の一部の動きに応じて、前記操作オブジェクトを動かすステップと、
d)音声入力部に入力された音声に基づく音声データを取得するステップと、
e)前記操作オブジェクトの状態に関連する第1条件が満たされている場合において、
e1)前記対象オブジェクトが前記仮想空間における第1領域に位置している場合には、前記音声データに関連するパラメータを第1パラメータに設定するステップと、
e2)前記対象オブジェクトが前記仮想空間における第1領域とは異なる第2領域に位置している場合には、前記音声データに関連するパラメータを前記第1パラメータとは異なる第2パラメータに設定するステップと、
f)前記音声データと前記パラメータに基づいて、前記対象オブジェクト又は前記対象オブジェクトに関連付けられた第2ユーザ端末に影響を与えるステップと、
を含む情報処理方法。
本開示が示す実施形態の概要を説明する。
(1)a)操作オブジェクトと、対象オブジェクトとを含む仮想空間を規定する仮想空間データを生成するステップと、
b)前記第1ユーザ端末に関連付けられたヘッドマウントデバイスの動きと前記仮想空間データとに基づいて、前記ヘッドマウントデバイスに表示される視野画像を示す視野画像データを生成するステップと、
c)前記ヘッドマウントデバイスを装着した第1ユーザの身体の一部の動きに応じて、前記操作オブジェクトを動かすステップと、
d)音声入力部に入力された音声に基づく音声データを取得するステップと、
e)前記操作オブジェクトの状態に関連する第1条件が満たされている場合において、
e1)前記対象オブジェクトが前記仮想空間における第1領域に位置している場合には、前記音声データに関連するパラメータを第1パラメータに設定するステップと、
e2)前記対象オブジェクトが前記仮想空間における第1領域とは異なる第2領域に位置している場合には、前記音声データに関連するパラメータを前記第1パラメータとは異なる第2パラメータに設定するステップと、
f)前記音声データと前記パラメータに基づいて、前記対象オブジェクト又は前記対象オブジェクトに関連付けられた第2ユーザ端末に影響を与えるステップと、
を含む情報処理方法。
上記方法によれば、操作オブジェクトの状態に関連する第1条件が満たされる場合に、対象オブジェクトが第1領域又は第2領域に位置しているかに応じて、音声データに関連するパラメータが第1パラメータまたは第2パラメータに設定される。その後、音声データとパラメータ(第1パラメータ又は第2パラメータ)に基づいて、対象オブジェクト又は前記対象オブジェクトに関連付けられた第2ユーザ端末に影響を与えさせることが可能となる。したがって、仮想空間のエンターテイメント性を向上させることができる。
(2)g)前記第1条件が満たされない場合には、前記音声データに関連するパラメータを第3パラメータに設定するステップをさらに含む、
項目(1)に記載の情報処理方法。
項目(1)に記載の情報処理方法。
上記方法によれば、操作オブジェクトの状態に関連する第2条件が満たされない場合には、音声データに関連するパラメータが第3パラメータに設定される。その後、音声データと第3パラメータに基づいて、対象オブジェクト又は前記対象オブジェクトに関連付けられた第2ユーザ端末に影響を与えさせることが可能となる。したがって、仮想空間のエンターテイメント性を向上させることができる。
(3)前記視野画像の視点位置と前記対象オブジェクトとの間の相対位置関係に基づいて、前記第1から第3パラメータが設定される、
項目(2)に記載の情報処理方法。
項目(2)に記載の情報処理方法。
上記方法によれば、視野画像の視点位置と対象オブジェクトとの間の相対的位置関係に基づいて第1から第3パラメータが設定されるので、仮想空間のエンターテイメント性を向上させることができる。
(4)前記操作オブジェクトは、第1操作オブジェクトと、第2操作オブジェクトとを有し、
前記第1条件は、前記第1操作オブジェクトと前記第2操作オブジェクトとの間の相対位置関係に関連する第2条件を含む、項目(1)から(3)のうちいずれか一項に記載の情報処理方法。
前記第1条件は、前記第1操作オブジェクトと前記第2操作オブジェクトとの間の相対位置関係に関連する第2条件を含む、項目(1)から(3)のうちいずれか一項に記載の情報処理方法。
上記方法によれば、第1操作オブジェクトと第2操作オブジェクトとの間の相対位置関係に関連する第2条件を含む第1条件が満たされる場合に、対象オブジェクトが第1領域又は第2領域に位置しているかに応じて、互いに異なるパラメータ(第1パラメータと第2パラメータ)を設定することが可能となる。したがって、仮想空間のエンターテイメント性を向上させることができる。
(5)前記第1条件は、前記操作オブジェクトの形状に関連する第3条件を含む、項目(1)から(4)のうちいずれか一項に記載の情報処理方法。
上記方法によれば、操作オブジェクトの形状に関連する第3条件を含む第1条件が満たされる場合に、対象オブジェクトが第1領域又は第2領域に位置しているかに応じて、互いに異なるパラメータ(第1パラメータと第2パラメータ)を設定することが可能となる。したがって、仮想空間のエンターテイメント性を向上させることができる。
(6)前記第1条件は、前記ヘッドマウントデバイスの動きに基づいて前記視野画像を定義する仮想カメラと、前記操作オブジェクトとの間の相対位置関係に関連する第4条件を含む、項目(1)から(5)のうちいずれか一項に記載の情報処理方法。
上記方法によれば、操作オブジェクトと仮想カメラとの間の相対位置関係に関連する第4条件を含む第1条件が満たされる場合に、対象オブジェクトが第1領域又は第2領域に位置しているかに応じて、互いに異なるパラメータ(第1パラメータと第2パラメータ)を設定することが可能となる。したがって、仮想空間のエンターテイメント性を向上させることができる。
(7)前記第1領域と前記第2領域のうちの少なくとも一方は、前記ヘッドマウントデバイスの動きに基づいて前記視野画像を定義する仮想カメラの視野に基づいて区画される、項目(1)から(6)のうちいずれか一項に記載の情報処理方法。
上記方法によれば、第1領域と第2領域のうちの少なくとも一方が仮想カメラの視野に基づいて区画される。このように、仮想カメラの視野に基づいて、互いに異なるパラメータ(第1パラメータと第2パラメータ)を仮想空間内に設定することが可能となる。したがって、仮想空間のエンターテイメント性を向上させることができる。
(8)前記第1領域と前記第2領域は、前記操作オブジェクトの位置に基づいて区画される、項目(1)から(6)のうちいずれか一項に記載の情報処理方法。
上記方法によれば、第1領域と第2領域が操作オブジェクトの位置に基づいて区画される。このように、操作オブジェクトの位置に基づいて、互いに異なるパラメータ(第1パラメータと第2パラメータ)を仮想空間内に設定することが可能となる。したがって、仮想空間のエンターテイメント性を向上させることができる。
(9)前記操作オブジェクトは、第1操作オブジェクトと第2操作オブジェクトを有し、
前記第1領域と前記第2領域は、前記第1操作オブジェクトの位置と前記第2操作オブジェクトの位置に基づいて区画される、
項目(1)から(6)のうちいずれか一項に記載の情報処理方法。
前記第1領域と前記第2領域は、前記第1操作オブジェクトの位置と前記第2操作オブジェクトの位置に基づいて区画される、
項目(1)から(6)のうちいずれか一項に記載の情報処理方法。
上記方法によれば、第1領域と第2領域が第1操作オブジェクトの位置と第2操作オブジェクトの位置に基づいて区画される。このように、第1操作オブジェクトと第2操作オブジェクトの位置に基づいて、互いに異なる所定のパラメータ(第1パラメータと第2パラメータ)を仮想空間内に設定することが可能となる。したがって、仮想空間のエンターテイメント性を向上させることができる。
(10)前記第1領域と前記第2領域は、前記ヘッドマウントデバイスの動きに基づいて前記視野画像を定義する仮想カメラの位置と、前記操作オブジェクトの位置と、に基づいて区画される、項目(1)から(6)のうちいずれか一項に記載の情報処理方法。
上記方法によれば、第1領域と第2領域が仮想カメラの位置と操作オブジェクトの位置に基づいて区画される。このように、仮想カメラの位置と操作オブジェクトの位置に基づいて、互いに異なる所定のパラメータ(第1パラメータと第2パラメータ)を仮想空間内に設定することが可能となる。したがって、仮想空間のエンターテイメント性を向上させることができる。
(11)a)現実空間に重畳して表示される対象オブジェクトを規定する仮想空間データを生成するステップと、
b)第1ユーザ端末に関連付けられたヘッドマウントデバイスの動きと前記仮想空間データとに基づいて、前記ヘッドマウントデバイスに表示される視野画像を示す視野画像データを生成するステップと、
c)前記ヘッドマウントデバイスを装着したユーザの身体の一部の動きを特定するステップと、
d)音声入力部に入力された音声に基づく音声データを取得するステップと、
e)前記身体の一部の状態に関連する第1条件が満たされている場合において、
e1)前記対象オブジェクトが前記現実空間における第1領域に位置している場合には、前記音声データに関連するパラメータを第1パラメータに設定するステップと、
e2)前記対象オブジェクトが前記現実空間における第1領域とは異なる第2領域に位置している場合には、前記音声データに関連するパラメータを前記第1パラメータとは異なる第2パラメータに設定するステップと、
f)前記音声データと前記パラメータに基づいて、前記対象オブジェクト又は前記対象オブジェクトに関連付けられた第2ユーザ端末に影響を与えるステップと、
を含む、情報処理方法。
b)第1ユーザ端末に関連付けられたヘッドマウントデバイスの動きと前記仮想空間データとに基づいて、前記ヘッドマウントデバイスに表示される視野画像を示す視野画像データを生成するステップと、
c)前記ヘッドマウントデバイスを装着したユーザの身体の一部の動きを特定するステップと、
d)音声入力部に入力された音声に基づく音声データを取得するステップと、
e)前記身体の一部の状態に関連する第1条件が満たされている場合において、
e1)前記対象オブジェクトが前記現実空間における第1領域に位置している場合には、前記音声データに関連するパラメータを第1パラメータに設定するステップと、
e2)前記対象オブジェクトが前記現実空間における第1領域とは異なる第2領域に位置している場合には、前記音声データに関連するパラメータを前記第1パラメータとは異なる第2パラメータに設定するステップと、
f)前記音声データと前記パラメータに基づいて、前記対象オブジェクト又は前記対象オブジェクトに関連付けられた第2ユーザ端末に影響を与えるステップと、
を含む、情報処理方法。
上記方法によれば、仮想空間のエンターテイメント性を向上させることができる。
(12)項目(1)から(11)のうちいずれか一項に記載の情報処理方法をコンピュータに実行させるための情報処理プログラム。
上記情報処理プログラムによれば、仮想空間のエンターテイメント性を向上させることができる。
(13)音声入力部とヘッドマウントデバイスとを備えた第1ユーザ端末と、前記第1ユーザ端末と通信可能に接続されたサーバとを備え、項目(1)から(11)のうちいずれか一項に記載の情報処理方法を実行するように構成された、情報処理システム。
上記情報処理システムによれば、仮想空間のエンターテイメント性を向上させることができる。
(14)プロセッサと、
コンピュータ可読命令を記憶するメモリと、を備えた情報処理装置であって、
前記コンピュータ可読命令が前記プロセッサにより実行されると、前記情報処理装置は項目(1)から(11)のうちいずれか一項に記載の情報処理方法を実行する、情報処理装置。
コンピュータ可読命令を記憶するメモリと、を備えた情報処理装置であって、
前記コンピュータ可読命令が前記プロセッサにより実行されると、前記情報処理装置は項目(1)から(11)のうちいずれか一項に記載の情報処理方法を実行する、情報処理装置。
上記情報処理装置によれば、仮想空間のエンターテイメント性を向上させることができる。尚、上記情報処理装置は、ユーザ端末及びサーバの両方を含む点に留意されたい。
[本開示が示す実施形態の詳細]
以下、本開示が示す実施形態について図面を参照しながら説明する。尚、本実施形態の説明において既に説明された部材と同一の参照番号を有する部材については、説明の便宜上、その説明は繰り返さない。
以下、本開示が示す実施形態について図面を参照しながら説明する。尚、本実施形態の説明において既に説明された部材と同一の参照番号を有する部材については、説明の便宜上、その説明は繰り返さない。
最初に、仮想空間配信システム100の構成の概略について図1を参照して説明する。図1は、仮想空間配信システム100(以下、単に配信システム100という。)の概略図である。図1に示すように、配信システム100は、ユーザA(第1ユーザ)によって操作されるユーザ端末1A(第1ユーザ端末)と、ユーザB(第2ユーザ)によって操作されるユーザ端末1B(第2ユーザ端末)と、サーバ2とを備える。ユーザ端末1A,1Bは、インターネット等の通信ネットワーク3を介してサーバ2に通信可能に接続されている。尚、本実施形態において、仮想空間とは、VR(Virtual Reality)空間と、AR(Argumented Reality)空間と、MR(Mixed Reality)空間を含むものである。また、以降では、説明の便宜上、各ユーザ端末1A,1Bを単にユーザ端末1と総称する場合がある。さらに、各ユーザA,Bを単にユーザUと総称する場合がある。また、本実施形態では、ユーザ端末1A,1Bは、同一の構成を備えているものとする。
次に、図2を参照してユーザ端末1の構成について説明する。図2は、ユーザ端末1を示す概略図である。図2に示すように、ユーザ端末1は、ユーザUの頭部に装着されたヘッドマウントデバイス(HMD)110と、ヘッドフォン116と、マイク118と、位置センサ130と、外部コントローラ320と、制御装置120とを備える。
HMD110は、表示部112と、HMDセンサ114と、注視センサ140とを備えている。表示部112は、HMD110を装着したユーザUの視界(視野)を完全に覆うように構成された非透過型の表示装置を備えている。これにより、ユーザUは、表示部112に表示された視野画像のみを見ることで仮想空間に没入することができる。尚、表示部112は、ユーザUの左目に画像を提供するように構成された左目用表示部と、ユーザUの右目に画像を提供するように構成された右目用表示部とから構成されてもよい。また、HMD110は、透過型の表示装置を備えてもよい。この場合、透過型の表示装置は、その透過率を調整することで、一時的に非透過型の表示装置として構成されてもよい。
HMDセンサ114は、HMD110の表示部112の近傍に搭載される。HMDセンサ114は、地磁気センサ、加速度センサ、傾きセンサ(角速度センサやジャイロセンサ等)のうちの少なくとも1つを含み、ユーザUの頭部に装着されたHMD110の各種動き(傾き等)を検出することができる。
注視センサ140は、ユーザUの視線を検出するアイトラッキング機能を有する。注視センサ140は、例えば、右目用注視センサと、左目用注視センサを備えてもよい。右目用注視センサは、ユーザUの右目に例えば赤外光を照射して、右目(特に、角膜や虹彩)から反射された反射光を検出することで、右目の眼球の回転角に関する情報を取得してもよい。一方、左目用注視センサは、ユーザUの左目に例えば赤外光を照射して、左目(特に、角膜や虹彩)から反射された反射光を検出することで、左目の眼球の回転角に関する情報を取得してもよい。
ヘッドフォン116(音声出力部)は、ユーザUの左耳と右耳にそれぞれ装着されている。ヘッドフォン116は、制御装置120から音声データ(電気信号)を受信し、当該受信した音声データに基づいて音声を出力するように構成されている。マイク118(音声入力部)は、ユーザUから発声された音声を収集し、当該収集された音声に基づいて音声データ(電気信号)を生成するように構成されている。さらに、マイク118は、音声データを制御装置120に送信するように構成されている。
位置センサ130は、例えば、ポジション・トラッキング・カメラにより構成され、HMD110と外部コントローラ320の位置を検出するように構成されている。位置センサ130は、制御装置120に無線又は有線により通信可能に接続されており、HMD110に設けられた図示しない複数の検知点の位置、傾き又は発光強度に関する情報を検出するように構成されている。さらに、位置センサ130は、外部コントローラ320に設けられた図示しない複数の検知点の位置、傾き及び/又は発光強度に関する情報を検出するように構成されている。検知点は、例えば、赤外線や可視光を放射する発光部である。また、位置センサ130は、赤外線センサや複数の光学カメラを含んでもよい。
外部コントローラ320は、ユーザUの身体の一部(頭部以外の部位であり、本実施形態においてはユーザUの手)の動きを検知することにより、仮想空間内に表示されるアバターの手の動作を制御するために使用される。外部コントローラ320は、ユーザUの右手によって操作される右手用外部コントローラ320R(以下、単にコントローラ320Rという。)と、ユーザUの左手によって操作される左手用外部コントローラ320L(以下、単にコントローラ320Lという。)と、を有する。コントローラ320Rは、ユーザUの右手の位置や右手の手指の動きを示す装置である。また、コントローラ320Rの動きに応じて仮想空間内に存在するアバターの右手が動く。コントローラ320Lは、ユーザUの左手の位置や左手の手指の動きを示す装置である。また、コントローラ320Lの動きに応じて仮想空間内に存在するアバターの左手が動く。
制御装置120は、HMD110を制御するように構成されたコンピュータである。制御装置120は、位置センサ130から取得された情報に基づいて、HMD110の位置情報を特定し、当該特定された位置情報に基づいて、仮想空間における仮想カメラの位置と、現実空間におけるHMD110を装着したユーザUの位置を正確に対応付けることができる。さらに、制御装置120は、位置センサ130及び/又は外部コントローラ320に内蔵されたセンサから取得された情報に基づいて、外部コントローラ320の動作を特定し、当該特定された外部コントローラ320の動作に基づいて、仮想空間内に表示されるアバターの手の動作と現実空間における外部コントローラ320の動作を正確に対応付けることができる。特に、制御装置120は、位置センサ130及び/又はコントローラ320Lに内蔵されたセンサから取得された情報に基づいて、コントローラ320Lの動作を特定し、当該特定されたコントローラ320Lの動作に基づいて、仮想空間内に表示されるアバターの左手の動作と現実空間におけるコントローラ320Lの動作(ユーザUの左手の動作)を正確に対応付けることができる。同様に、制御装置120は、位置センサ及び/コントローラ320Rに内蔵されたセンサから取得された情報に基づいて、コントローラ320Rの動作を特定し、当該特定されたコントローラ320Rの動作に基づいて、仮想空間内に表示されるアバターの右手の動作と現実空間におけるコントローラ320Rの動作(ユーザUの右手の動作)を正確に対応付けることができる。
また、制御装置120は、注視センサ140(左目用注視センサと右目用注視センサ)から送信された情報に基づいて、ユーザUの右目の視線と左目の視線をそれぞれ特定し、当該右目の視線と当該左目の視線の交点である注視点を特定することができる。さらに、制御装置120は、特定された注視点に基づいて、ユーザUの両目の視線(ユーザUの視線)を特定することができる。ここで、ユーザUの視線は、ユーザUの両目の視線であって、ユーザUの右目と左目を結ぶ線分の中点と注視点を通る直線の方向に一致する。
次に、図3を参照して、HMD110の位置や傾きに関する情報を取得する方法について説明する。図3は、HMD110を装着したユーザUの頭部を示す図である。HMD110を装着したユーザUの頭部の動きに連動したHMD110の位置や傾きに関する情報は、位置センサ130及び/又はHMD110に搭載されたHMDセンサ114により検出可能である。図2に示すように、HMD110を装着したユーザUの頭部を中心として、3次元座標(uvw座標)が規定される。ユーザUが直立する垂直方向をv軸として規定し、v軸と直交しHMD110の中心を通る方向をw軸として規定し、v軸およびw軸と直交する方向をu軸として規定する。位置センサ130及び/又はHMDセンサ114は、各uvw軸回りの角度(すなわち、v軸を中心とする回転を示すヨー角、u軸を中心とした回転を示すピッチ角、w軸を中心とした回転を示すロール角で決定される傾き)を検出する。制御装置120は、検出された各uvw軸回りの角度変化に基づいて、仮想カメラの視軸を制御するための角度情報を決定する。
次に、図4を参照することで、制御装置120のハードウェア構成について説明する。図4は、制御装置120のハードウェア構成を示す図である。図4に示すように、制御装置120は、制御部121と、記憶部123と、I/O(入出力)インターフェース124と、通信インターフェース125と、バス126とを備える。制御部121と、記憶部123と、I/Oインターフェース124と、通信インターフェース125は、バス126を介して互いに通信可能に接続されている。
制御装置120は、HMD110とは別体に、パーソナルコンピュータ、タブレット又はウェアラブルデバイスとして構成されてもよいし、HMD110に内蔵されていてもよい。また、制御装置120の一部の機能がHMD110に搭載されると共に、制御装置120の残りの機能がHMD110とは別体の他の装置に搭載されてもよい。
制御部121は、メモリとプロセッサを備えている。メモリは、例えば、各種プログラム等が格納されたROM(Read Only Memory)やプロセッサにより実行される各種プログラム等が格納される複数ワークエリアを有するRAM(Random Access Memory)等から構成される。プロセッサは、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)及び/又はGPU(Graphics Processing Unit)であって、ROMに組み込まれた各種プログラムから指定されたプログラムをRAM上に展開し、RAMとの協働で各種処理を実行するように構成されている。
特に、プロセッサが制御プログラムをRAM上に展開し、RAMとの協働で制御プログラムを実行することで、制御部121は、制御装置120の各種動作を制御してもよい。制御部121は、視野画像データに基づいてHMD110の表示部112に視野画像を表示する。これにより、ユーザUは、仮想空間に没入することができる。
記憶部(ストレージ)123は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、USBフラッシュメモリ等の記憶装置であって、プログラムや各種データを格納するように構成されている。記憶部123は、本実施形態に係る情報処理方法の少なくとも一部をコンピュータに実行させるための制御プログラムや、複数のユーザによる仮想空間の共有を実現するための制御プログラムを格納してもよい。また、記憶部123には、ユーザUの認証プログラムや各種画像やオブジェクト(例えば、アバター等)に関するデータが格納されてもよい。さらに、記憶部123には、各種データを管理するためのテーブルを含むデータベースが構築されてもよい。
I/Oインターフェース124は、位置センサ130と、HMD110と、外部コントローラ320と、ヘッドフォン116と、マイク118とをそれぞれ制御装置120に通信可能に接続するように構成されており、例えば、USB(Universal Serial Bus)端子、DVI(Digital Visual Interface)端子、HDMI(登録商標)(High―Definition Multimedia Interface)端子等により構成されている。尚、制御装置120は、位置センサ130と、HMD110と、外部コントローラ320と、ヘッドフォン116と、マイク118とのそれぞれと無線接続されていてもよい。
通信インターフェース125は、制御装置120をLAN(Local Area Network)、WAN(Wide Area Network)又はインターネット等の通信ネットワーク3に接続させるように構成されている。通信インターフェース125は、通信ネットワーク3を介してサーバ2等の外部装置と通信するための各種有線接続端子や、無線接続のための各種処理回路を含んでおり、通信ネットワーク3を介して通信するための通信規格に適合するように構成されている。
次に、図5から図8を参照することで視野画像をHMD110に表示するための処理について説明する。図5は、視野画像をHMD110に表示する処理を示すフローチャートである。図6は、仮想空間200の一例を示すxyz空間図である。図7の状態(a)は、図6に示す仮想空間200のyx平面図である。図7の状態(b)は、図6に示す仮想空間200のzx平面図である。図8は、HMD110に表示された視野画像Vの一例を示す図である。
図5に示すように、ステップS1において、制御部121(図4参照)は、仮想カメラ300と、各種オブジェクトとを含む仮想空間200を示す仮想空間データを生成する。図6に示すように、仮想空間200は、中心位置210を中心とした全天球として規定される(図6では、上半分の天球のみが図示されている)。また、仮想空間200では、中心位置210を原点とするxyz座標系が設定されている。仮想カメラ300は、HMD110に表示される視野画像V(図8参照)を特定するための視軸Lを規定している。仮想カメラ300の視野を定義するuvw座標系は、現実空間におけるユーザUの頭部を中心として規定されたuvw座標系に連動するように決定される。また、HMD110を装着したユーザUの現実空間における移動に連動して、制御部121は、仮想カメラ300を仮想空間200内で移動させてもよい。
次に、ステップS2において、制御部121は、仮想カメラ300の視野CV(図7参照)を特定する。具体的には、制御部121は、位置センサ130及び/又はHMDセンサ114から送信されたHMD110の状態を示すデータに基づいて、HMD110の位置や傾きに関する情報を取得する。次に、制御部121は、HMD110の位置や傾きに関する情報に基づいて、仮想空間200内における仮想カメラ300の位置や向きを特定する。次に、制御部121は、仮想カメラ300の位置や向きから仮想カメラ300の視軸Lを決定し、決定された視軸Lから仮想カメラ300の視野CVを特定する。ここで、仮想カメラ300の視野CVは、HMD110を装着したユーザUが視認可能な仮想空間200の一部の領域に相当する(換言すれば、HMD110に表示される仮想空間200の一部の領域に相当する)。また、視野CVは、図7の状態(a)に示すxy平面において、視軸Lを中心とした極角αの角度範囲として設定される第1領域CVaと、図7の状態(b)に示すxz平面において、視軸Lを中心とした方位角βの角度範囲として設定される第2領域CVbとを有する。尚、制御部121は、注視センサ140から送信されたユーザUの視線を示すデータに基づいてユーザUの視線を特定し、特定されたユーザUの視線とHMD110の位置や傾きに関する情報に基づいて、仮想カメラ300の向き(仮想カメラ300の視軸L)を決定してもよい。また、後述するように、制御部121は、HMD110の位置や傾きに関する情報に基づいて、ユーザUのアバターの顔の向きを決定してもよい。
このように、制御部121は、位置センサ130及び/又はHMDセンサ114からのデータに基づいて、仮想カメラ300の視野CVを特定することができる。ここで、HMD110を装着したユーザUが動くと、制御部121は、位置センサ130及び/又はHMDセンサ114から送信されたHMD110の動きを示すデータに基づいて、仮想カメラ300の視野CVを更新することができる。つまり、制御部121は、HMD110の動きに応じて、視野CVを更新することができる。同様に、ユーザUの視線が変化すると、制御部121は、注視センサ140から送信されたユーザUの視線を示すデータに基づいて、仮想カメラ300の視野CVを更新してもよい。つまり、制御部121は、ユーザUの視線の変化に応じて、視野CVを変化させてもよい。
次に、ステップS3において、制御部121は、HMD110の表示部112に表示される視野画像Vを示す視野画像データを生成する。具体的には、制御部121は、仮想空間200を規定する仮想空間データと、仮想カメラ300の視野CVとに基づいて、視野画像データを生成する。
次に、ステップS4において、制御部121は、視野画像データに基づいて、HMD110の表示部112に視野画像Vを表示する(図7参照)。このように、HMD110を装着しているユーザUの動きに応じて、仮想カメラ300の視野CVが変化し、HMD110の表示部112に表示される視野画像Vが変化するので、ユーザUは仮想空間200に没入することができる。
尚、仮想カメラ300は、左目用仮想カメラと右目用仮想カメラを含んでもよい。この場合、制御部121は、仮想空間データと左目用仮想カメラの視野に基づいて、左目用の視野画像を示す左目用視野画像データを生成する。さらに、制御部121は、仮想空間データと、右目用仮想カメラの視野に基づいて、右目用の視野画像を示す右目用視野画像データを生成する。その後、制御部121は、左目用視野画像データに基づいて、左目用表示部に左目用の視野画像を表示すると共に、右目用視野画像データに基づいて、右目用表示部に右目用の視野画像を表示する。このようにして、ユーザUは、左目用視野画像と右目用視野画像との間の視差により、視野画像を3次元的に視認することができる。尚、仮想カメラは、後述するように、ユーザによって操作されるアバターの目の位置に配置されてもよい。例えば、左目用仮想カメラは、アバターの左目に配置される一方で、右目用仮想カメラは、アバターの右目に配置されてもよい。
また、図5に示すステップS1〜S4の処理は1フレーム(動画を構成する静止画像)毎に実行されてもよい。例えば、動画のフレームレートが90fpsである場合、ステップS1〜S4の処理はΔT=1/90(秒)間隔で繰り返し実行されてもよい。このように、ステップS1〜S4の処理が所定間隔ごとに繰り返し実行されるため、HMD110の動作に応じて仮想カメラ300の視野が更新されると共に、HMD110の表示部112に表示される視野画像Vが更新される。
次に、図1に示すサーバ2のハードウェア構成について図9を参照して説明する。図9は、サーバ2のハードウェア構成を示す図である。図9に示すように、サーバ2は、制御部23と、記憶部22と、通信インターフェース21と、バス24とを備える。制御部23と、記憶部22と、通信インターフェース21は、バス24を介して互いに通信可能に接続されている。制御部23は、メモリとプロセッサを備えており、メモリは、例えば、ROM及びRAM等から構成されると共に、プロセッサは、例えば、CPU、MPU及び/又はGPUにより構成される。
記憶部(ストレージ)22は、例えば、大容量のHDD等である。記憶部22は、本実施形態に係る情報処理方法の少なくとも一部をコンピュータに実行させるための制御プログラムや、複数のユーザによる仮想空間の共有を実現させるための制御プログラムを格納してもよい。また、記憶部22は、各ユーザを管理するためのユーザ管理情報や各種画像やオブジェクト(例えば、アバター等)に関するデータを格納してもよい。通信インターフェース21は、サーバ2を通信ネットワーク3に接続させるように構成されている。
次に、図1,10及び11を参照してユーザ端末1Aとユーザ端末1B間において各アバター4A,4Bの動きを同期させる処理の一例について説明する。図10の状態(a)は、ユーザAに提供される仮想空間200Aを示す図である。図10の状態(b)は、ユーザBに提供される仮想空間200Bを示す図である。図11は、ユーザ端末1Aとユーザ端末1B間において各アバター4A,4Bの動きを同期させる処理の一例を説明するためのシーケンス図である。本説明では、前提条件として、図10に示すように、ユーザ端末1A(ユーザA)に関連付けられたアバター4A(第1アバター)と、ユーザ端末1B(ユーザB)に関連付けられたアバター4B(第2アバター)が同一の仮想空間を共有しているものとする。つまり、通信ネットワーク3を介してユーザAとユーザBが一つの仮想空間を共有するものとする。
図10の状態(a)に示すように、ユーザAの仮想空間200Aは、アバター4Aと、アバター4Bとを含む。アバター4Aは、ユーザAによって操作されると共に、ユーザAの動作に連動する。アバター4Aは、ユーザ端末1Aのコントローラ320Lの動作(ユーザAの左手の動作)に連動する左手43A(第1操作オブジェクト)と、ユーザ端末1Aのコントローラ320Rの動作(ユーザAの右手の動作)に連動する右手42A(第2操作オブジェクト)とを有する。
アバター4Aは、仮想カメラ300A(図14参照)と、マイク118に入力されたユーザAの音声の音源として規定された音源オブジェクトと、仮想空間200A上を伝搬する音声を収集する集音器として規定された集音オブジェクトとをさらに有する。尚、音源オブジェクトと、集音オブジェクトは、アバター4Aから分離されていてもよい。仮想カメラ300Aは、アバター4Aの目に配置されてもよい。特に、仮想カメラ300Aが、左目用仮想カメラと、右目用仮想カメラを有する場合、左目用仮想カメラは、アバター4Aの左目に配置されると共に、右目用仮想カメラは、アバター4Aの右目に配置されてもよい。尚、以降の説明では、アバター4Aの視野CVは、アバター4Aの目に配置された仮想カメラ300Aの視野CV(図15参照)と一致するものとする。
尚、仮想空間200Aでは、アバター4Aの身体が可視化されない場合も想定される。この場合でも、仮想空間200Aに配置されるアバター4Aは、仮想カメラ300Aと、音源オブジェクトと、集音オブジェクトと、左手43Aと、右手42Aとを含む。
アバター4Bは、ユーザBによって操作されると共に、ユーザBの動作に連動する。アバター4Bは、ユーザ端末1Bのコントローラ320Lの動作(ユーザBの左手の動作)に連動する左手43B(第1操作オブジェクト)と、ユーザ端末1Bのコントローラ320Rの動作(ユーザBの右手の動作)に連動する右手42B(第2操作オブジェクト)とを有する。
アバター4Bは、仮想カメラ300B(図示せず)と、マイク118に入力されたユーザBの音声の音源として規定された音源オブジェクトと、仮想空間200B上を伝搬する音声を収集する集音器として規定された集音オブジェクトとをさらに有する。ここで、アバター4B又は集音オブジェクトは、対象オブジェクトとして規定される。尚、音源オブジェクトと、集音オブジェクトは、アバター4Bから分離されていてもよい。仮想カメラ300Bは、アバター4Bの目に配置されてもよい。特に、仮想カメラ300Bが、左目用仮想カメラと、右目用仮想カメラを有する場合、左目用仮想カメラは、アバター4Bの左目に配置されると共に、右目用仮想カメラは、アバター4Bの右目に配置されてもよい。尚、以降の説明では、アバター4Bの視野CVは、アバター4Bの目に配置された仮想カメラ300Bの視野CVと一致するものとする。
尚、仮想空間200Bでは、アバター4Bの身体が可視化されない場合も想定される。この場合でも、仮想空間200Bに配置されるアバター4Bは、仮想カメラ300Bと、音源オブジェクトと、集音オブジェクトと、左手43Bと、右手42Bとを含む。
また、ユーザ端末1A,1BのHMD110の位置に応じてアバター4A,4Bの位置が特定されてもよい。同様に、ユーザ端末1A,1BのHMD110の傾きに応じてアバター4A,4Bの顔の向きが特定されてもよい。さらに、ユーザ端末1A,1Bの外部コントローラの動作に応じてアバター4A,4Bの手(操作オブジェクトの一例)の動作が特定されてもよい。特に、ユーザ端末1A,1Bのコントローラ320Lの動作に応じてアバター4A,4Bの左手の動作が特定されると共に、ユーザ端末1A,1Bのコントローラ320Rの動作に応じてアバター4A,4Bの右手の動作が特定されてもよい。また、注視センサ140によって検出されたユーザA,Bの視線を示すデータに応じてアバター4A,4Bの白目に対する黒目の相対的位置が特定されてもよい。特に、左目用注視センサによって検出されたユーザの左目の視線を示すデータに応じてアバターの左白目に対する左黒目の相対的位置が特定されてもよい。さらに、右目用注視センサによって検出されたユーザの右目の視線を示すデータに応じてアバターの右白目に対する右黒目の相対的位置が特定されてもよい。
図10の状態(b)に示すように、ユーザBの仮想空間200Bは、アバター4Aと、アバター4Bとを含む。仮想空間200A内におけるアバター4A,4Bの位置は、仮想空間200B内におけるアバター4A,4Bの位置に対応してもよい。
次に、図11を参照すると、ステップS10において、ユーザ端末1Aは、ユーザAの音声データを生成する。例えば、ユーザAがユーザ端末1Aのマイク118(音声入力部)に音声を入力したときに、ユーザAの音声がマイク118によって電気信号に変換される。その後、電気信号は増幅回路によって増幅された後に、A/D変換によって音声データに変換される。その後、音声データは、I/Oインターフェース124を介して制御部121に送信される。このように、制御部121は、ユーザAの音声に対応する音声データを取得する。
次に、ステップS11において、ユーザ端末1Aの制御部121は、アバター4Aの制御情報を生成した上で、当該生成したアバター4Aの制御情報とユーザAの音声を示す音声データ(ユーザAの音声データ)をサーバ2に送信する。その後、サーバ2の制御部23は、ユーザ端末1Aからアバター4Aの制御情報とユーザAの音声データを受信する(ステップS12)。ここで、アバター4Aの制御情報は、アバター4Aの動作を制御するために必要な情報である。例えば、アバター4Aの制御情報は、アバター4Aの位置に関する情報(位置情報)と、アバター4Aの顔の向きに関する情報(顔向き情報)と、アバター4Aの顔の状態に関する情報(顔情報)と、アバター4Aの手の状態に関する情報(手情報)を含んでもよい。アバター4Aの手情報は、アバター4Aの左手43Aの状態に関する情報(左手情報)と、アバター4Aの右手42Aの状態に関する情報(右手情報)とを含む。
次に、ステップS13において、ユーザ端末1Bの制御部121は、アバター4Bの制御情報を生成した上で、当該生成したアバター4Bの制御情報をサーバ2に送信する。その後、サーバ2の制御部23は、ユーザ端末1Bからアバター4Bの制御情報を受信する(ステップS14)。ここで、アバター4Bの制御情報は、アバター4Bの動作を制御するために必要な情報である。例えば、アバター4Bの制御情報は、アバター4Bの位置に関する情報(位置情報)と、アバター4Bの顔の向きに関する情報(顔向き情報)と、アバター4Bの顔の状態に関する情報(顔情報)と、アバター4Bの手の状態に関する情報(手情報)を含んでもよい。アバター4Bの手情報は、アバター4Bの左手43Bの状態に関する情報(左手情報)と、アバター4Bの右手42Bの状態に関する情報(右手情報)とを含む。
次に、サーバ2の制御部23は、ユーザ端末1Aから受信したユーザAの音声データに関連する音量パラメータLを設定する(ステップS15)。ここで、音量パラメータLは、ユーザ端末1Bのヘッドフォン116(音声出力部)に出力されるユーザAの音声の音量(音圧レベル)を規定するパラメータである。音量パラメータLの設定方法については後述する。
次に、サーバ2は、アバター4Bの制御情報をユーザ端末1Aに送信する一方(ステップS16)、アバター4Aの制御情報と、ユーザAの音声データと、音量パラメータLをユーザ端末1Bに送信する(ステップS20)。その後、ユーザ端末1Aの制御部121は、ステップS17においてアバター4Bの制御情報を受信した後に、アバター4A,4Bの制御情報に基づいて、仮想空間200A(図10の状態(a)参照)を示す仮想空間データを更新する(ステップS18)。例えば、アバター4A,4Bが移動した場合、移動後のアバター4A,4Bを含む仮想空間200Aを示す仮想空間データが生成される。その後、ユーザ端末1Aの制御部121は、HMD110の位置や傾きに応じてアバター4A(仮想カメラ300)の視野CVを更新した上で、更新された仮想空間データと、更新されたアバター4Aの視野CVとに基づいて、HMD110に表示される視野画像を更新する(ステップS19)。
一方、ユーザ端末1Bの制御部121は、ステップS21においてアバター4Aの制御情報と、ユーザAの音声データと、音量パラメータLを受信した後に、アバター4A,4Bの制御情報に基づいて、仮想空間200B(図10の状態(b)参照)を示す仮想空間データを更新する(ステップS22)。その後、ユーザ端末1Bの制御部121は、HMD110の位置や傾きに応じてアバター4B(仮想カメラ300)の視野CVを更新した上で、更新された仮想空間データと、更新されたアバター4Bの視野CVとに基づいて、HMD110に表示される視野画像を更新する(ステップS23)。
その後、ユーザ端末1Bの制御部121は、ユーザAの音声データと、音量パラメータLとに基づいて、ユーザAの音声をヘッドフォン116に出力する(ステップS24)。ここで、制御部121は、音量パラメータLに基づいてヘッドフォン116に出力されるユーザAの音声の音量を決定することができる。また、制御部121は、ユーザAの音声データと、音量パラメータLとに基づいて、ユーザAの音声データを加工した上で、加工した音声データに基づいて、ユーザAの音声をヘッドフォン116に出力してもよい。このように、仮想空間上においてユーザ間(アバター間)の音声チャット(VRチャット)を実現することができる。
本実施形態では、ユーザ端末1A,1Bがサーバ2にアバター4Aの制御情報とアバター4Bの制御情報をそれぞれ送信した後に、サーバ2がアバター4Aの制御情報をユーザ端末1Bに送信する一方、アバター4Bの制御情報をユーザ端末1Aに送信する。このように、ユーザ端末1Aとユーザ端末1B間において各アバター4A,4Bの動きを同期させることが可能となる。
次に、図12及び図13を参照することで本実施形態に係る情報処理方法の一例(即ち、図11のステップS15で規定された音量パラメータLの設定処理の一例)について説明する。図12は、本実施形態に係る音量パラメータLの設定処理(図11のステップS15で規定される処理)の一例を説明するためのフローチャートである。図13の状態(a)は、高伝達領域S1が設定された仮想空間200Aを示す平面図である。図13の状態(b)は、アバター4Aの正面図である。
本実施形態では、前提条件として、図13の状態(a)に示すように、アバター4Aと、アバター4Bと、アバター4Cが同一の仮想空間を共有しているものとする。アバター4Cは、ユーザCによって操作されるアバターであって、ユーザ端末1Cに関連付けられている。つまり、通信ネットワーク3を介してユーザA,B,Cが一つの仮想空間を共有するものとする。ユーザAに提供される仮想空間200Aは、アバター4Aと、アバター4Bと、アバター4Cとを含む。図11に示すように、ユーザ端末1Aの制御部121は、仮想空間200Aを示す仮想空間データを生成する。また、前提条件として、音源オブジェクトと集音オブジェクトがアバター4A,4B,4Cに含まれる。
図12に示すように、ステップS30において、サーバ2の制御部23(以降では、単に制御部23という。)は、アバター4A(音源オブジェクト)とアバター4B(集音オブジェクト)との間の距離D1を特定する。具体的には、制御部23は、アバター4Aの制御情報に含まれるアバター4Aの位置情報に基づいて、アバター4Aの位置を特定すると共に、アバター4Bの制御情報に含まれるアバター4Bの位置情報に基づいて、アバター4Bの位置を特定する。その後、制御部23は、特定されたアバター4Aの位置と特定されたアバター4Bの位置に基づいて、アバター4Aとアバター4Bとの間の距離D1を特定する。尚、音源オブジェクトと集音オブジェクトがアバターから分離している場合では、制御部23は、アバター4Aに関連付けられた音源オブジェクトとアバター4Bに関連付けられた集音オブジェクトとの間の距離を特定してもよい。また、仮想カメラ300Aは、アバター4Aの目に位置しているので、HMD110に表示される視野画像の視点位置は、アバター4Aの位置となる。
次に、制御部23は、ステップS31において、アバター4Aの左手43Aの位置とアバター4Aの右手42Aの位置に基づいて、左手43Aと右手42Aとの間の距離D2を特定する。特に、制御部23は、アバター4Aの制御情報に含まれるアバター4Aの左手情報に基づいてアバター4Aの左手43Aの位置を特定すると共に、アバター4Aの右手情報に基づいてアバター4Aの右手42Aの位置を特定する。
次に、制御部23は、アバター4Aの左手43Aと右手42Aとの間の距離D2が所定の距離Dth以下であるかどうかを判定する(ステップS32)。ステップS32の判定結果がNOの場合、処理はステップS40に進む。一方、制御部23は、距離D2が所定の距離Dth以下であると判定した場合(ステップS32でYES)、アバター4Aの左手43Aの手のひらと右手42Aの手のひらが互いに対向しているかどうかを判定する(ステップS33)。具体的には、制御部23は、アバター4Aの左手情報に基づいて左手43Aの状態を特定すると共に、アバター4Aの右手情報に基づいて右手42Aの状態を特定する。その後、制御部23は、左手43Aの状態と右手42Aの状態に基づいて、左手43Aの手のひらと右手42Aの手のひらが互いに対向しているかどうかを判定する。
ステップS33の判定結果がNOの場合、処理はステップS40に進む。一方、制御部23は、左手43Aの手のひらと右手42Aの手のひらが互いに対向していると判定した場合(ステップS33でYES)、仮想空間200A中に高伝達領域S1を設定する(ステップS34)。ここで、高伝達領域S1では、仮想空間中を伝搬する音声の伝達度合いが高伝達領域S1以外の領域における音声の伝達度合いよりも高い。つまり、高伝達領域S1では、仮想空間中を伝搬する音声の減衰係数α1(dB/距離)が高伝達領域S1以外の領域の減衰係数α2(dB/距離)よりも小さい(α1<α2)。ここで、減衰係数αは、仮想空間200中を伝搬する音声の単位距離当たりの減衰量を規定するパラメータである。
ステップS32で規定される条件とステップS33で規定される条件は、アバター4Aの手(左手43Aと右手42A)の状態に関連する第1条件となる。ステップS34では、制御部23は、アバター4Aの左手43Aの位置とアバター4Aの右手42Aの位置に基づいて、仮想空間200A中に高伝達領域S1を設定する。具体的には、制御部23は、左手43Aの位置と右手42Aの位置に基づいて、基準位置P1(図13の状態(a))を特定した上で、基準位置P1を起点とする高伝達領域S1を設定する。ここで、基準位置P1は、左手43Aの基準位置と右手42Aの基準位置を結ぶ線分の中点として決定されてもよい。また、高伝達領域S1は、xy平面において基準位置P1を起点とした極角の角度範囲として規定される角度領域と、xz平面において基準位置P1を起点とした方位角の角度範囲として規定される角度領域とを有してもよい。
次に、ステップS35において、制御部23は、アバター4Bの位置と高伝達領域S1に基づいて、アバター4Bが高伝達領域S1(第1領域)に位置しているかどうかを判定する。制御部23は、アバター4Bが高伝達領域S1に位置していると判定した場合(ステップS35でYES)、仮想空間200A内を伝搬する音声の単位距離当たりの減衰量を規定する減衰係数αを減衰係数α1に設定する(ステップS36)。その後、制御部23は、減衰係数α1と、アバター4Aとアバター4Bとの間の距離D1とに基づいて、音量パラメータL(音声データに関連するパラメータ)を音量パラメータL1(第1パラメータ)に設定する(ステップS37)。
一方、制御部23は、アバター4Bが高伝達領域S1に位置していないと判定した場合(換言すれば、アバター4Bが高伝達領域S1の外側領域(第2領域)に位置していると判定した場合)(ステップS35でNO)、減衰係数αを減衰係数α2に設定する(ステップS38)。ここで、減衰係数α2は、減衰係数α1よりも大きい(α1<α2)。その後、制御部23は、減衰係数α2と、アバター4Aとアバター4Bとの間の距離D1とに基づいて、音量パラメータLを音量パラメータL2(第2パラメータ)に設定する(ステップS39)。
また、アバター4Aの手の状態に関連する第1条件が満たされなかった場合(つまり、アバター4Aの手の状態がステップS32の条件とステップS33の条件のうちの少なくとも一方を満たさない場合)、ステップS40において、制御部23は、減衰係数αを減衰係数α0に設定した上で、減衰係数α0と距離D1とに基づいて、音量パラメータLを音量パラメータL0(第3パラメータ)に設定する(ステップS41)。アバター4Aの手の状態に関連する第1条件が満たされなかった場合では、仮想空間200A中に高伝達領域S1が設定されないので、仮想空間200Aの全体領域の減衰係数αは減衰係数α0となる。ここで、減衰係数α0=α1<α2でもよいし、α1<α2=α0でもよい。さらに、各減衰係数α0,α1,α2がそれぞれ異なる値でもよい(例えば、α1<α0<α2,α0<α1<α2又はα1<α2<α0)。
本実施形態では、アバター4A(音源オブジェクト)とアバター4B(集音オブジェクト)との間の距離D1の値が大きい程、音量パラメータLの値は小さくなる。その反対に、アバター4Aとアバター4Bとの間の距離D1が小さい程、音量パラメータLの値は大きくなる。さらに、減衰係数α(dB/距離)の値が大きい程、音量パラメータLの値は小さくなる。その反対に、減衰係数αの値が小さい程、音量パラメータLの値は大きくなる。また、音量パラメータLの値が大きい程、ユーザ端末1Bのヘッドフォン116に出力されるユーザAの音声の音量(音圧レベル)は大きくなる。その反対に、音量パラメータLの値が小さい程、ユーザ端末1Bのヘッドフォン116に出力されるユーザAの音声の音量が小さくなる。例えば、制御部23は、距離D1と、減衰係数αと、以下の関係式(1)に基づいて音量パラメータLを設定してもよい。尚、関係式(1)は単なる一例であって、距離D1と減衰係数αと音量パラメータLとの間の関係式が複数想定される。
L=L0−α×D1・・・(1)
L:音量パラメータ(dB)
L0:基準距離D0における音量パラメータ(dB)
α:減衰係数(dB/距離)
D1:アバター4Aとアバター4Bとの間の距離
L=L0−α×D1・・・(1)
L:音量パラメータ(dB)
L0:基準距離D0における音量パラメータ(dB)
α:減衰係数(dB/距離)
D1:アバター4Aとアバター4Bとの間の距離
例えば、減衰係数αがα1の場合、上記関係式(1)より音量パラメータL1は以下のように表すことができる。
L1=L0−α1×D1
L1=L0−α1×D1
本実施形態によれば、制御部23は、アバター4Aの手の状態がステップS32,S33で規定された条件を満たすと判定した場合、アバター4Bが高伝達領域S1に位置しているかどうかに応じて、減衰係数αが減衰係数α1又は減衰係数α2(α1<α2)に設定される。次に、ユーザAの音声データに関連付けられた音量パラメータLが音量パラメータL1又は音量パラメータL2に設定される。その後、ユーザAの音声データと音量パラメータL(音量パラメータL1,L2)に基づいて、ユーザAの音声がアバター4Bに関連付けられたユーザ端末1Bのヘッドフォン116に出力される。特に、送信された音量パラメータLに基づいてユーザ端末1Bのヘッドフォン116に出力されるユーザAの音声の音量が決定される。
このように、アバター4A(ユーザA)の手の状態に応じて、仮想空間200A中に高伝達領域S1が設定される。さらに、アバター4Bが高伝達領域S1に位置しているかどうかに応じて、ユーザ端末1Bのヘッドフォン116に出力されるユーザAの音声の音量が変化する。例えば、アバター4Aとアバター4Bとの間の距離とアバター4Aとアバター4Cとの間の距離が同一であると仮定する。図13の状態(a)に示すように、アバター4Bが高伝達領域S1に位置する一方、アバター4Cが高伝達領域S1の外側の領域に位置する場合、減衰係数α1は減衰係数α2よりも小さいので、ユーザ端末1Bのヘッドフォン116から出力される音声の音量は、ユーザ端末1Cのヘッドフォン116から出力される音声の音量よりも大きい。このように、アバター4A(ユーザA)の手の状態に応じて、仮想空間200Aを伝搬する音声に指向性を持たせることが可能となる。
例えば、アバター4Bを操作するユーザBは、ユーザAの音声を聞き取ることができる一方、アバター4Cを操作するユーザCは、ユーザAの音声を聞き取ることができないといった状況が想定される。また、アバター4Bを操作するユーザBには、ユーザAの音声が大音量で聞こえる一方、アバター4Cを操作するユーザCには、ユーザAの音声が通常の音量で聞こえるといった状況が想定される。このため、ユーザAは、アバター4Cを操作するユーザCに気付かれずに、アバター4Bを操作するユーザBに音声指示を出すことが可能となる。したがって、仮想空間のエンターテイメント性を向上させることができる。
一方、本実施形態によれば、アバター4Aの手の状態がステップS32,S33で規定された条件を満たさないと判定された場合に、仮想空間200Aの全体領域における減衰係数αは減衰係数α0に設定される。その後、減衰係数α0と距離D1とに基づいて音量パラメータLが音量パラメータL0に設定される。その後、ユーザAの音声データと音量パラメータL0に基づいて、ユーザAの音声がユーザ端末1Bのヘッドフォン116から出力される。特に、送信された音量パラメータL0に基づいてユーザ端末1Bのヘッドフォン116に出力されるユーザAの音声の音量が決定される。このように、アバター4A(ユーザA)の手の状態がステップS32,S33で規定された条件を満たさないと判定された場合には、仮想空間200Aを伝搬する音声は指向性を持たない。
尚、本実施形態では、アバター4BはユーザBによって操作されることを前提としているが、アバター4Bが制御部23(例えば、ゲームプログラム)によって制御される場合、制御部23は、設定された音量パラメータLに基づいて、アバター4Bに関連付けられたパラメータを決定してもよい。例えば、制御部23は、音量パラメータLに基づいて、アバター4Bに与えられるダメージ量を決定してもよい。具体的には、制御部23は、音量パラメータLと、音量パラメータLとダメージ量との間の関係を示すLUT(ルックアップテーブル)に基づいて、アバター4Bに与えられるダメージ量を決定してもよい。この点において、音量パラメータLが大きい程、アバター4Bに与えられるダメージ量は大きくもよい。図13の状態(a)に示すように、制御部23によって制御されるアバター4Bが高伝達領域S1に位置する一方、制御部23によって制御されるアバター4Cが高伝達領域S1の外側領域に位置する場合、減衰係数α1は減衰係数α2よりも小さいので、アバター4Bに与えられるダメージ量はアバター4Cに与えられるダメージ量よりも大きくてもよい。このように、アバターの配置位置に応じてアバターに与えられるダメージ量を変動させることができるので、仮想空間のエンターテイメント性を向上させることができる。また、制御部23は、アバターに与えられるダメージ量を決定した後に、アバターのダメージ量を示すテーブルを更新してもよい。
また、本実施形態の説明では、アバター4Bが高伝達領域S1に位置する場合に、減衰係数αがα1に設定される一方、アバター4Bが高伝達領域の外側に位置する場合に、減衰係数αがα2(α1<α2)に設定される。さらに、減衰係数αとアバター4Aとアバター4Bとの間の距離D1に基づいて音量パラメータLが設定される。しかしながら、本実施形態における音量パラメータLの設定処理はこれには限定されない。例えば、減衰係数αや距離D1を考慮せずに、音量パラメータLを直接的に設定してもよい。具体的には、アバター4Bが高伝達領域S1に位置する場合に、音量パラメータLがL1に設定される一方、アバター4Bが高伝達領域の外側に位置する場合に、音量パラメータLがL2(L2<L1)に設定されてもよい。同様に、アバター4Aの手の状態がステップS32に規定される条件とステップS33に規定される条件の両方を満たさない場合に、音量パラメータLがL0に設定されてもよい。
また、本実施形態では、図11に示すように、サーバ2の制御部23が音量パラメータLを設定しているが、ユーザ端末1Aの制御部121が音量パラメータLを設定してもよいし、ユーザ端末1Bの制御部121が音量パラメータLを設定してもよい。ユーザ端末1Aの制御部121が音量パラメータLを設定する場合、当該音量パラメータLの設定処理は、ステップS17の処理とステップS18の処理の間に実行されてもよい。ユーザ端末1Aの制御部121は、音量パラメータLを設定した後に、音量パラメータLをサーバ2を介してユーザ端末1Bに向けて送信する。ユーザ端末1Bの制御部121が音量パラメータLを設定する場合、当該音量パラメータLの設定処理は、ステップS22の処理以降に実行されてもよい。
また、本実施形態では、図12に示すアバター4Aの手の状態に関連する条件(以下、アバター手条件という。)は、ステップS32の条件と、ステップS33の条件の2つの条件を含むが、本実施形態はこれには限定されない。例えば、アバター手条件は、ステップS32の条件と、ステップS33の条件のうちのいずれか一方の条件から構成されてもよい。
次に、アバター手条件の他の一例について説明する。つまり、アバター手条件は、図12に示すステップS32に規定される条件とステップS33に規定される条件に追加して、アバター4Aの手と仮想カメラ300Aとの間の相対的位置関係に関連する条件(第4条件)を含んでもよい。第4条件の一例としては、図14に示すように、サーバ2の制御部23は、アバター4Aの左手43Aと右手42Aが仮想カメラ300Aの位置を基準とした所定領域内に含まれているかどうかを判定してもよい。この場合、左手43Aと右手42Aが当該所定領域内に含まれる場合、制御部23は第4条件が満たされると判定する。第4条件の別の例としては、制御部23は、左手43Aと仮想カメラ300Aとの間の距離が所定の距離Dth2以下であると共に、右手42Aと仮想カメラ300Aとの間の距離が所定の距離Dth2以下であるかどうかを判定してもよい。この場合、左手43Aと仮想カメラ300Aとの間の距離が所定の距離Dth2以下であると共に、右手42Aと仮想カメラ300Aとの間の距離が所定の距離Dth2以下である場合に、制御部23は第4条件が満たされると判定する。尚、アバター手条件は、上記第4条件のみから構成されてもよい。
また、アバター手条件は、図12に示すステップS32に規定される条件とステップS33に規定される条件に追加して、アバター4Aの手とアバター4Aの口との間の相対的位置関係に関連する条件(第5条件)を含んでもよい。第5条件の一例としては、制御部23は、アバター4Aの左手43Aと右手42Aがアバター4Aの口の位置を基準とした所定領域内に含まれているかどうかを判定してもよい。この場合、左手43Aと右手42Aが当該所定領域内に含まれる場合、制御部23は第5条件が満たされると判定する。第5条件の別の例としては、制御部23は、左手43Aとアバター4Aの口との間の距離が所定の距離Dth3以下であると共に、右手42Aとアバター4Aの口との間の距離が所定の距離Dth3以下であるかどうかを判定してもよい。この場合、左手43Aとアバター4Aの口との間の距離が所定の距離Dth3以下であると共に、右手42Aとアバター4Aの口との間の距離が所定の距離Dth3以下である場合に、制御部23は第5条件が満たされると判定する。尚、アバター手条件は、上記第5条件のみから構成されてもよい。
また、本実施形態では、高伝達領域S1は、アバター4Aの左手43Aの位置とアバター4Aの右手42Aの位置に基づいて設定されているが、高伝達領域S1の設定処理はこれには限定されない。例えば、図15に示すように、高伝達領域S2は、仮想カメラ300Aの視野CVに基づいて設定されてもよい。つまり、仮想カメラ300Aの視野CV内の領域が高伝達領域S2として設定される。
また、仮想カメラ300Aの視野CV内の所定の角度領域が高伝達領域S2として設定されてもよい。例えば、仮想カメラ300Aの視軸Laに基づいて高伝達領域S2が設定されてもよい。この場合、高伝達領域S2は、xy平面において視軸Laを中心とした極角の角度範囲として規定される角度領域と、xz平面において視軸Laを中心とした方位角の角度範囲として規定される角度範囲とを有してもよい。
(第1変形例)
次に、図12及び図16を参照することで本実施形態の第1変形例に係る情報処理方法(即ち、図11のステップS15で規定された音量パラメータLの設定処理の第1変形例)について説明する。図16の状態(a)は、高伝達領域S3が設定された仮想空間200Aを示す平面図である。図16の状態(b)は、アバター4Aの正面図である。尚、第1変形例に係る情報処理方法は、既に説明した本実施形態に係る情報処理方法と、ステップS31からS34で規定される処理において相違する。従って、以下では、本実施形態に係る情報処理方法と第1変形例に係る情報処理方法との間の相違点についてのみ説明を行う。
次に、図12及び図16を参照することで本実施形態の第1変形例に係る情報処理方法(即ち、図11のステップS15で規定された音量パラメータLの設定処理の第1変形例)について説明する。図16の状態(a)は、高伝達領域S3が設定された仮想空間200Aを示す平面図である。図16の状態(b)は、アバター4Aの正面図である。尚、第1変形例に係る情報処理方法は、既に説明した本実施形態に係る情報処理方法と、ステップS31からS34で規定される処理において相違する。従って、以下では、本実施形態に係る情報処理方法と第1変形例に係る情報処理方法との間の相違点についてのみ説明を行う。
最初に、図12に示すステップS31において、アバター4Aの右手42A(アバター4Aの片手の一例)と仮想カメラ300Aとの間の距離D3が特定される。次に、ステップS32において、サーバ2の制御部23は、右手42Aと仮想カメラ300Aとの間の距離D3が所定の距離Dth3以下であるかどうかを判定する。制御部23は、右手42Aと仮想カメラ300Aとの間の距離D3が所定の距離Dth3以下であると判定した場合に(ステップS32でYES)、右手42Aが開かれているかどうかを判定する(ステップS33)。制御部23は、右手42Aが開かれていると判定した場合(ステップS33でYES)、仮想空間200A中に高伝達領域S3を設定する(ステップS34)。
例えば、図16の状態(a)に示すように、制御部23は、仮想カメラ300Aの位置と、右手42Aの位置と、仮想カメラ300Aの視野CVに基づいて、高伝達領域S3を設定してもよい。具体的には、仮想カメラ300Aの視野CVの2つの境界のうち、アバター4Aの左手43A側の境界を境界B1とする一方、アバター4Aの右手42A側の境界を境界B2とする。この場合、高伝達領域S3の一方の境界L1は、仮想カメラ300Aの視野CVの境界B1に一致する。さらに、高伝達領域S3の他方の境界L2は、仮想カメラ300Aと右手42Aの所定位置を通るにように設定される。このようにして、境界L1,L2によって規定される高伝達領域S3が設定されてもよい。
一方、高伝達領域S3の代わりに、図17の状態(a)に示すように、制御部23は、仮想カメラ300Aの位置と、右手42Aの位置とに基づいて、高伝達領域S4を設定してもよい。具体的には、高伝達領域S4の一方の境界L2は、仮想カメラ300Aと右手42Aの所定位置を通るように設定される。また、高伝達領域S4の他方の境界L3は、仮想カメラ300Aの撮像面に対して平行となるように設定される。このように、境界L2,L3によって規定される高伝達領域S4が設定されてもよい。
尚、本例では、アバター4Aの片手の一例として右手42Aを挙げているが、アバター4Aの左手43Aの位置と状態に基づいてアバター手条件(ステップS32,S33の条件)が決定されてもよい。さらに、左手43Aの位置と、仮想カメラ300Aの位置に基づいて高伝達領域が設定されてもよい。
また、ステップS31において、右手42Aとアバター4Aの口の基準位置との間の距離が特定されてもよい。この場合、ステップS32では、制御部23は、右手42Aとアバター4Aの口の基準位置との間の距離が所定の距離以下であるかどうかを判定してもよい。
(第2変形例)
次に、図12及び図18を参照することで本実施形態の第2変形例に係る情報処理方法(即ち、図11のステップS15で規定された音量パラメータLの設定処理の第2変形例)について説明する。図18の状態(a)は、高伝達領域S5が設定された仮想空間200Aを示す平面図である。図18の状態(b)は、アバター4Aの正面図である。尚、第2変形例に係る情報処理方法は、既に説明した本実施形態に係る情報処理方法と、ステップS31からS34で規定される処理において相違する。従って、以下では、本実施形態に係る情報処理方法と第2変形例に係る情報処理方法との間の相違点についてのみ説明を行う。
次に、図12及び図18を参照することで本実施形態の第2変形例に係る情報処理方法(即ち、図11のステップS15で規定された音量パラメータLの設定処理の第2変形例)について説明する。図18の状態(a)は、高伝達領域S5が設定された仮想空間200Aを示す平面図である。図18の状態(b)は、アバター4Aの正面図である。尚、第2変形例に係る情報処理方法は、既に説明した本実施形態に係る情報処理方法と、ステップS31からS34で規定される処理において相違する。従って、以下では、本実施形態に係る情報処理方法と第2変形例に係る情報処理方法との間の相違点についてのみ説明を行う。
本例では、図12に示すステップS31,S32の処理は実行されないため、ステップS30の処理が実行された後に、ステップS33において、サーバ2の制御部23は、アバター4Aの右手42Aの形状が指差し形状になっているかどうかを判定する。制御部23は、右手42Aの形状が指差し形状になっていると判定した場合(ステップS33でYES)、仮想空間200A中に高伝達領域S5を設定する(ステップS34)。
例えば、図18の状態(a)に示すように、制御部23は、右手42Aの人差し指の先端420Aの位置を特定した上で、先端420Aを起点とする高伝達領域S5を設定してもよい。高伝達領域S5は、xy平面において先端420Aを起点とした極角の角度範囲として規定される角度領域と、xz平面において先端420Aを起点とした方位角の角度範囲として規定される角度領域とを有してもよい。このように、高伝達領域S5が設定されてもよい。
本例では、アバター手条件は、右手42Aの形状に関連する条件のみを含む。さらに、高伝達領域S5は右手42Aの位置(具体的には、先端420Aの位置)のみに基づいて決定される。尚、本例では、アバター4Aの片手の一例として右手42Aを挙げているが、アバター4Aの左手43Aの形状に基づいてアバター手条件が決定されてもよい。さらに、左手43Aの位置に基づいて高伝達領域が設定されてもよい。
本実施形態では、ユーザUの手の動きを示す外部コントローラ320の動きに応じて、アバターの手の移動が制御されているが、ユーザUの手自体の移動量に応じて、仮想空間内におけるアバターの手の移動が制御されてもよい。例えば、外部コントローラを用いる代わりに、ユーザの手指に装着されるグローブ型デバイスや指輪型デバイスを用いることで、位置センサ130により、ユーザUの手の位置や移動量を検出することができると共に、ユーザUの手指の動きや状態を検出することができる。また、位置センサ130は、ユーザUの手(手指を含む)を撮像するように構成されたカメラであってもよい。この場合、カメラを用いてユーザの手を撮像することにより、ユーザの手指に直接何らかのデバイスを装着させることなく、ユーザの手が表示された画像に基づいて、ユーザUの手の位置や移動量を検出することができると共に、ユーザUの手指の動きや状態を検出することができる。
また、本実施形態では、ユーザAの身体の一部である手の動きに応じてアバター4Aの手(操作オブジェクトの一例)が動かされ、アバター4Aの手の状態に関連する条件(アバター手条件)が満たされている場合に、仮想空間200A中に高伝達領域が設定される。しかしながら、本実施形態はこれには限定されない。例えば、ユーザAの足の動きに応じてアバター4Aの足が動かされ、アバター4Aの足の状態に関連する条件(アバター足条件)が満たされている場合に、仮想空間200A中に高伝達領域が設定されてもよい。このように、操作オブジェクトはアバターの手(左手と右手)に限定されるものではない。
また、ユーザ端末1の制御部121によって実行される各種処理をソフトウェアによって実現するために、各種処理をコンピュータ(プロセッサ)に実行させるための制御プログラムが記憶部123又はメモリに予め組み込まれていてもよい。または、制御プログラムは、磁気ディスク(HDD、フロッピーディスク)、光ディスク(CD−ROM,DVD−ROM、Blu−rayディスク等)、光磁気ディスク(MO等)、フラッシュメモリ(SDカード、USBメモリ、SSD等)等のコンピュータ読取可能な記憶媒体に格納されていてもよい。この場合、記憶媒体が制御装置120に通信可能に接続されることで、当該記憶媒体に格納された制御プログラムが、記憶部123に組み込まれる。そして、記憶部123に組み込まれた制御プログラムがRAM上にロードされて、プロセッサがロードされた当該プログラムを実行することで、制御部121は各種処理を実行する。
さらに、サーバ2の制御部23によって実行される各種処理をソフトウェアによって実現するために、各種処理をコンピュータ(プロセッサ)に実行させるための制御プログラムが記憶部22又はメモリに予め組み込まれていてもよい。または、制御プログラムは、磁気ディスク(HDD、フロッピーディスク)、光ディスク(CD−ROM,DVD−ROM、Blu−rayディスク等)、光磁気ディスク(MO等)、フラッシュメモリ(SDカード、USBメモリ、SSD等)等のコンピュータ読取可能な記憶媒体に格納されていてもよい。この場合、記憶媒体がサーバ2に通信可能に接続されることで、当該記憶媒体に格納された制御プログラムが、記憶部22に組み込まれる。そして、記憶部22に組み込まれた制御プログラムがRAM上にロードされて、プロセッサがロードされた当該プログラムを実行することで、制御部23は各種処理を実行する。
また、制御プログラムは、通信ネットワーク3上のコンピュータから通信インターフェース125を介してダウンロードされてもよい。この場合も同様に、ダウンロードされた当該制御プログラムが制御装置120の記憶部123又はサーバ2の記憶部22に組み込まれる。
以上、本開示の実施形態について説明をしたが、本発明の技術的範囲が本実施形態の説明によって限定的に解釈されるべきではない。本実施形態は一例であって、特許請求の範囲に記載された発明の範囲内において、様々な実施形態の変更が可能であることが当業者によって理解されるところである。本発明の技術的範囲は特許請求の範囲に記載された発明の範囲及びその均等の範囲に基づいて定められるべきである。
本実施形態において、仮想空間は、ユーザにVR(Virtual Reality)、AR(Argumented Reality)及びMR(Mixed Reality)といった、仮想体験を提供するために用いられる。仮想空間がVRを提供する場合、仮想空間の背景にはメモリに保存された背景データが使用される。仮想空間がAR又はMRを提供する場合、背景には現実空間が使用される。この場合、HMD110が透過型の表示装置(光学シースルーまたはビデオシースルー型の表示装置)を備えることにより、現実空間が背景として使用され得る。仮想空間がMRに適用される場合、オブジェクトは、現実空間によって影響を与えられてもよい。このように、仮想空間が背景や仮想オブジェクトといった仮想シーンを少なくとも一部に含むことにより、ユーザには当該仮想シーンとの相互作用が可能な仮想体験が提供され得る。
仮想空間がAR又はMRに適用される場合、アバター手の代わりにユーザの手が用いられてもよい。特に、アバター4Aの手の状態に関連する条件(アバター手条件)の代わりにユーザAの手(ユーザAの身体の一部)の状態に関連する条件(ユーザ手条件)が適用されてもよい。この場合、現実空間において上述の仮想空間における条件(アバター手条件)と同様の条件(ユーザ手条件)を満たした場合には、現実空間中に高伝達領域が設定されてもよい。その後、音声データと音量パラメータに基づいて、アバター4B(対象オブジェクト)又はアバター4Bに関連付けられたユーザ端末B(第2ユーザ端末)に影響が与えられてもよい。
1,1A,1B,1C:ユーザ端末
2:サーバ
3:通信ネットワーク
4A,4B,4C:アバター
21:通信インターフェース
22:記憶部
23:制御部
24:バス
42A,42B:右手
43A,43B:左手
100:仮想空間配信システム(配信システム)
110:HMD
112:表示部
114:HMDセンサ
116:ヘッドフォン
118:マイク
120:制御装置
121:制御部
123:記憶部
124:I/Oインターフェース
125:通信インターフェース
126:バス
130:位置センサ
140:注視センサ
200,200A,200B:仮想空間
210:中心位置
300,300A:仮想カメラ
320:外部コントローラ
320L:左手用外部コントローラ(コントローラ)
320R:右手用外部コントローラ(コントローラ)
420A:先端
2:サーバ
3:通信ネットワーク
4A,4B,4C:アバター
21:通信インターフェース
22:記憶部
23:制御部
24:バス
42A,42B:右手
43A,43B:左手
100:仮想空間配信システム(配信システム)
110:HMD
112:表示部
114:HMDセンサ
116:ヘッドフォン
118:マイク
120:制御装置
121:制御部
123:記憶部
124:I/Oインターフェース
125:通信インターフェース
126:バス
130:位置センサ
140:注視センサ
200,200A,200B:仮想空間
210:中心位置
300,300A:仮想カメラ
320:外部コントローラ
320L:左手用外部コントローラ(コントローラ)
320R:右手用外部コントローラ(コントローラ)
420A:先端
Claims (14)
- a)操作オブジェクトと、対象オブジェクトとを含む仮想空間を規定する仮想空間データを生成するステップと、
b)第1ユーザ端末に関連付けられたヘッドマウントデバイスの動きと前記仮想空間データとに基づいて、前記ヘッドマウントデバイスに表示される視野画像を示す視野画像データを生成するステップと、
c)前記ヘッドマウントデバイスを装着した第1ユーザの身体の一部の動きに応じて、前記操作オブジェクトを動かすステップと、
d)音声入力部に入力された音声に基づく音声データを取得するステップと、
e)前記操作オブジェクトの状態に関連する第1条件が満たされている場合において、
e1)前記対象オブジェクトが前記仮想空間における第1領域に位置している場合には、前記音声データに関連するパラメータを第1パラメータに設定するステップと、
e2)前記対象オブジェクトが前記仮想空間における第1領域とは異なる第2領域に位置している場合には、前記音声データに関連するパラメータを前記第1パラメータとは異なる第2パラメータに設定するステップと、
f)前記音声データと前記パラメータに基づいて、前記対象オブジェクト又は前記対象オブジェクトに関連付けられた第2ユーザ端末に影響を与えるステップと、
を含む、情報処理方法。 - g)前記第1条件が満たされない場合には、前記音声データに関連するパラメータを第3パラメータに設定するステップをさらに含む、
請求項1に記載の情報処理方法。 - 前記視野画像の視点位置と前記対象オブジェクトとの間の相対位置関係に基づいて、前記第1から第3パラメータが設定される、
請求項2に記載の情報処理方法。 - 前記操作オブジェクトは、第1操作オブジェクトと、第2操作オブジェクトとを有し、
前記第1条件は、前記第1操作オブジェクトと前記第2操作オブジェクトとの間の相対位置関係に関連する第2条件を含む、請求項1から3のうちいずれか一項に記載の情報処理方法。 - 前記第1条件は、前記操作オブジェクトの形状に関連する第3条件を含む、請求項1から4のうちいずれか一項に記載の情報処理方法。
- 前記第1条件は、前記ヘッドマウントデバイスの動きに基づいて前記視野画像を定義する仮想カメラと、前記操作オブジェクトとの間の相対位置関係に関連する第4条件を含む、請求項1から5のうちいずれか一項に記載の情報処理方法。
- 前記第1領域と前記第2領域のうちの少なくとも一方は、前記ヘッドマウントデバイスの動きに基づいて前記視野画像を定義する仮想カメラの視野に基づいて区画される、請求項1から6のうちいずれか一項に記載の情報処理方法。
- 前記第1領域と前記第2領域は、前記操作オブジェクトの位置に基づいて区画される、請求項1から6のうちいずれか一項に記載の情報処理方法。
- 前記操作オブジェクトは、第1操作オブジェクトと第2操作オブジェクトを有し、
前記第1領域と前記第2領域は、前記第1操作オブジェクトの位置と前記第2操作オブジェクトの位置に基づいて区画される、
請求項1から6のうちいずれか一項に記載の情報処理方法。 - 前記第1領域と前記第2領域は、前記ヘッドマウントデバイスの動きに基づいて前記視野画像を定義する仮想カメラの位置と、前記操作オブジェクトの位置と、に基づいて区画される、請求項1から6のうちいずれか一項に記載の情報処理方法。
- a)現実空間に重畳して表示される対象オブジェクトを規定する仮想空間データを生成するステップと、
b)第1ユーザ端末に関連付けられたヘッドマウントデバイスの動きと前記仮想空間データとに基づいて、前記ヘッドマウントデバイスに表示される視野画像を示す視野画像データを生成するステップと、
c)前記ヘッドマウントデバイスを装着したユーザの身体の一部の動きを特定するステップと、
d)音声入力部に入力された音声に基づく音声データを取得するステップと、
e)前記身体の一部の状態に関連する第1条件が満たされている場合において、
e1)前記対象オブジェクトが前記現実空間における第1領域に位置している場合には、前記音声データに関連するパラメータを第1パラメータに設定するステップと、
e2)前記対象オブジェクトが前記現実空間における第1領域とは異なる第2領域に位置している場合には、前記音声データに関連するパラメータを前記第1パラメータとは異なる第2パラメータに設定するステップと、
f)前記音声データと前記パラメータに基づいて、前記対象オブジェクト又は前記対象オブジェクトに関連付けられた第2ユーザ端末に影響を与えるステップと、
を含む、情報処理方法。 - 請求項1から11のうちいずれか一項に記載の情報処理方法をコンピュータに実行させるための情報処理プログラム。
- 音声入力部とヘッドマウントデバイスとを備えた第1ユーザ端末と、前記第1ユーザ端末と通信可能に接続されたサーバとを備え、請求項1から11のうちいずれか一項に記載の情報処理方法を実行するように構成された、情報処理システム。
- プロセッサと、
コンピュータ可読命令を記憶するメモリと、を備えた情報処理装置であって、
前記コンピュータ可読命令が前記プロセッサにより実行されると、前記情報処理装置は請求項1から11のうちいずれか一項に記載の情報処理方法を実行する、情報処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017058988A JP6289703B1 (ja) | 2017-03-24 | 2017-03-24 | 情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017058988A JP6289703B1 (ja) | 2017-03-24 | 2017-03-24 | 情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018017700A Division JP2018163649A (ja) | 2018-02-02 | 2018-02-02 | 情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6289703B1 JP6289703B1 (ja) | 2018-03-07 |
JP2018163420A true JP2018163420A (ja) | 2018-10-18 |
Family
ID=61557982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017058988A Active JP6289703B1 (ja) | 2017-03-24 | 2017-03-24 | 情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6289703B1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110099333A (zh) * | 2019-05-24 | 2019-08-06 | 北京字节跳动网络技术有限公司 | 音频信号的处理方法、装置、终端及存储介质 |
JP2020004392A (ja) * | 2019-05-08 | 2020-01-09 | 株式会社バーチャルキャスト | データ送信装置、端末およびプログラム |
-
2017
- 2017-03-24 JP JP2017058988A patent/JP6289703B1/ja active Active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020004392A (ja) * | 2019-05-08 | 2020-01-09 | 株式会社バーチャルキャスト | データ送信装置、端末およびプログラム |
JP7166983B2 (ja) | 2019-05-08 | 2022-11-08 | 株式会社バーチャルキャスト | 端末およびプログラム |
CN110099333A (zh) * | 2019-05-24 | 2019-08-06 | 北京字节跳动网络技术有限公司 | 音频信号的处理方法、装置、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JP6289703B1 (ja) | 2018-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6266814B1 (ja) | 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム | |
JP6058855B1 (ja) | 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム | |
JP6462059B1 (ja) | 情報処理方法、情報処理プログラム、情報処理システム、および情報処理装置 | |
JP6203369B1 (ja) | 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム | |
JP6228640B1 (ja) | 表示制御方法および当該表示制御方法をコンピュータに実行させるためのプログラム | |
JP6212666B1 (ja) | 情報処理方法、プログラム、仮想空間配信システム及び装置 | |
JP6289703B1 (ja) | 情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 | |
JP6223614B1 (ja) | 情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 | |
JP6207691B1 (ja) | 情報処理方法および当該情報処理方法をコンピュータに実行させるためのプログラム | |
JP6266823B1 (ja) | 情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 | |
JP2018120583A (ja) | 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム | |
JP2018109940A (ja) | 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム | |
JP6535699B2 (ja) | 情報処理方法、情報処理プログラム及び情報処理装置 | |
JP2018007227A (ja) | 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム | |
JP2019036239A (ja) | 情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 | |
JP6403843B1 (ja) | 情報処理方法、情報処理プログラム及び情報処理装置 | |
JP2018097847A (ja) | 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム | |
JP2019020516A (ja) | 情報処理方法、情報処理プログラム、情報処理システムおよび情報処理装置 | |
JP6999538B2 (ja) | 情報処理方法、情報処理プログラム、情報処理システム、および情報処理装置 | |
JP6190497B1 (ja) | 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム | |
JP2018163649A (ja) | 情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 | |
JP6205047B1 (ja) | 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム | |
JP2018163637A (ja) | 情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 | |
JP6738308B2 (ja) | 情報処理方法、プログラム、仮想空間配信システム及び装置 | |
JP2018011193A (ja) | 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20180109 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180206 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6289703 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |