〔実施形態1〕
以下、この技術的思想の実施の形態について図面を参照しながら詳細に説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。本開示において示される1以上の実施形態において、各実施形態が含む要素を互いに組み合わせることができ、かつ、当該組み合わせられた結果物も本開示が示す実施形態の一部をなすものとする。
[Embodiment 1]
Hereinafter, embodiments of this technical idea will be described in detail with reference to the drawings. In the following description, the same parts are given the same reference numerals. Their names and functions are also the same. Therefore, detailed description thereof will not be repeated. In one or more of the embodiments presented in this disclosure, elements of each embodiment may be combined with each other and the combined result shall also form part of the embodiments presented in this disclosure.
[HMDシステムの構成]
図1を参照して、HMD(Head-Mounted Device)システム100の構成について説明する。図1は、本実施の形態に従うHMDシステム100の構成の概略を表す図である。HMDシステム100は、家庭用のシステムとしてあるいは業務用のシステムとして提供される。
[Configuration of HMD system]
The configuration of an HMD (Head-Mounted Device) system 100 will be described with reference to FIG. FIG. 1 is a diagram showing a schematic configuration of an HMD system 100 according to this embodiment. The HMD system 100 is provided as a system for home use or as a system for business use.
HMDシステム100は、サーバ600と、HMDセット110A,110B,110C,110Dと、外部機器700と、ネットワーク2とを含む。HMDセット110A,110B,110C,110Dの各々は、ネットワーク2を介してサーバ600や外部機器700と通信可能に構成される。以下、HMDセット110A,110B,110C,110Dを総称して、HMDセット110とも言う。HMDシステム100を構成するHMDセット110の数は、4つに限られず、3つ以下でも、5つ以上でもよい。HMDセット110は、HMD120と、コンピュータ200と、HMDセンサ410と、ディスプレイ430と、コントローラ300とを備える。HMD120は、モニタ130と、注視センサ140と、第1カメラ150と、第2カメラ160と、マイク170と、スピーカ180とを含む。コントローラ300は、モーションセンサ420を含み得る。
HMD system 100 includes server 600 , HMD sets 110 A, 110 B, 110 C, and 110 D, external device 700 , and network 2 . Each of HMD sets 110A, 110B, 110C, and 110D is configured to communicate with server 600 and external device 700 via network 2 . Hereinafter, the HMD sets 110A, 110B, 110C, and 110D are collectively referred to as the HMD set 110 as well. The number of HMD sets 110 configuring the HMD system 100 is not limited to four, and may be three or less or five or more. HMD set 110 includes HMD 120 , computer 200 , HMD sensor 410 , display 430 and controller 300 . HMD 120 includes monitor 130 , gaze sensor 140 , first camera 150 , second camera 160 , microphone 170 , and speaker 180 . Controller 300 may include motion sensor 420 .
ある局面において、コンピュータ200は、インターネットその他のネットワーク2に接続可能であり、ネットワーク2に接続されているサーバ600その他のコンピュータと通信可能である。その他のコンピュータとしては、例えば、他のHMDセット110のコンピュータや外部機器700が挙げられる。別の局面において、HMD120は、HMDセンサ410の代わりに、センサ190を含み得る。
In one aspect, computer 200 is connectable to network 2 such as the Internet, and is capable of communicating with server 600 and other computers connected to network 2 . Other computers include, for example, computers of other HMD sets 110 and external devices 700 . In another aspect, HMD 120 may include sensor 190 instead of HMD sensor 410 .
HMD120は、ユーザ5の頭部に装着され、動作中に仮想空間をユーザ5に提供し得る。より具体的には、HMD120は、右目用の画像および左目用の画像をモニタ130にそれぞれ表示する。ユーザ5の各目がそれぞれの画像を視認すると、ユーザ5は、両目の視差に基づき当該画像を3次元画像として認識し得る。HMD120は、モニタを備える所謂ヘッドマウントディスプレイと、スマートフォンその他のモニタを有する端末を装着可能なヘッドマウント機器のいずれをも含み得る。
The HMD 120 can be worn on the head of the user 5 and provide the user 5 with a virtual space during operation. More specifically, HMD 120 displays a right-eye image and a left-eye image on monitor 130 . When each eye of the user 5 views the respective image, the user 5 can perceive the image as a three-dimensional image based on the parallax of both eyes. The HMD 120 may include both a so-called head-mounted display having a monitor and a head-mounted device on which a smartphone or other terminal having a monitor can be attached.
モニタ130は、例えば、非透過型の表示装置として実現される。ある局面において、モニタ130は、ユーザ5の両目の前方に位置するようにHMD120の本体に配置されている。したがって、ユーザ5は、モニタ130に表示される3次元画像を視認すると、仮想空間に没入することができる。ある局面において、仮想空間は、例えば、背景、ユーザ5が操作可能なオブジェクト、ユーザ5が選択可能なメニューの画像を含む。ある局面において、モニタ130は、所謂スマートフォンその他の情報表示端末が備える液晶モニタまたは有機EL(Electro Luminescence)モニタとして実現され得る。
The monitor 130 is implemented as, for example, a non-transmissive display device. In one aspect, the monitor 130 is arranged on the main body of the HMD 120 so as to be positioned in front of both eyes of the user 5 . Therefore, the user 5 can immerse himself in the virtual space by viewing the three-dimensional image displayed on the monitor 130 . In one aspect, the virtual space includes images of, for example, a background, objects that the user 5 can manipulate, and menus that the user 5 can select. In one aspect, the monitor 130 can be realized as a liquid crystal monitor or an organic EL (Electro Luminescence) monitor provided in a so-called smart phone or other information display terminal.
別の局面において、モニタ130は、透過型の表示装置として実現され得る。この場合、HMD120は、図1に示されるようにユーザ5の目を覆う密閉型ではなく、メガネ型のような開放型であり得る。透過型のモニタ130は、その透過率を調整することにより、一時的に非透過型の表示装置として構成可能であってもよい。モニタ130は、仮想空間を構成する画像の一部と、現実空間とを同時に表示する構成を含んでいてもよい。例えば、モニタ130は、HMD120に搭載されたカメラで撮影した現実空間の画像を表示してもよいし、一部の透過率を高く設定することにより現実空間を視認可能にしてもよい。
In another aspect, monitor 130 may be implemented as a transmissive display. In this case, the HMD 120 may be an open type, such as a glasses type, instead of a closed type that covers the eyes of the user 5 as shown in FIG. Transmissive monitor 130 may be temporarily configurable as a non-transmissive display by adjusting its transmittance. The monitor 130 may include a configuration for simultaneously displaying a portion of the image forming the virtual space and the real space. For example, the monitor 130 may display an image of the real space captured by a camera mounted on the HMD 120, or may make the real space visible by setting a partial transmittance high.
ある局面において、モニタ130は、右目用の画像を表示するためのサブモニタと、左目用の画像を表示するためのサブモニタとを含み得る。別の局面において、モニタ130は、右目用の画像と左目用の画像とを一体として表示する構成であってもよい。この場合、モニタ130は、高速シャッタを含む。高速シャッタは、画像がいずれか一方の目にのみ認識されるように、右目用の画像と左目用の画像とを交互に表示可能に作動する。
In one aspect, monitor 130 may include a sub-monitor for displaying images for the right eye and a sub-monitor for displaying images for the left eye. In another aspect, monitor 130 may be configured to display the image for the right eye and the image for the left eye as one. In this case, monitor 130 includes a high speed shutter. The high speed shutter operates to alternately display the right eye image and the left eye image so that the image is perceived by only one eye.
ある局面において、HMD120は、図示せぬ複数の光源を含む。各光源は例えば、赤外線を発するLED(Light Emitting Diode)により実現される。HMDセンサ410は、HMD120の動きを検出するためのポジショントラッキング機能を有する。より具体的には、HMDセンサ410は、HMD120が発する複数の赤外線を読み取り、現実空間内におけるHMD120の位置および傾きを検出する。
In one aspect, the HMD 120 includes multiple light sources (not shown). Each light source is implemented by, for example, an LED (Light Emitting Diode) that emits infrared rays. HMD sensor 410 has a position tracking function for detecting movement of HMD 120 . More specifically, HMD sensor 410 reads a plurality of infrared rays emitted by HMD 120 and detects the position and tilt of HMD 120 in the physical space.
別の局面において、HMDセンサ410は、カメラにより実現されてもよい。この場合、HMDセンサ410は、カメラから出力されるHMD120の画像情報を用いて、画像解析処理を実行することにより、HMD120の位置および傾きを検出することができる。
In another aspect, HMD sensor 410 may be implemented by a camera. In this case, the HMD sensor 410 can detect the position and tilt of the HMD 120 by executing image analysis processing using the image information of the HMD 120 output from the camera.
別の局面において、HMD120は、位置検出器として、HMDセンサ410の代わりに、あるいはHMDセンサ410に加えてセンサ190を備えてもよい。HMD120は、センサ190を用いて、HMD120自身の位置および傾きを検出し得る。例えば、センサ190が角速度センサ、地磁気センサ、あるいは加速度センサである場合、HMD120は、HMDセンサ410の代わりに、これらの各センサのいずれかを用いて、自身の位置および傾きを検出し得る。一例として、センサ190が角速度センサである場合、角速度センサは、現実空間におけるHMD120の3軸周りの角速度を経時的に検出する。HMD120は、各角速度に基づいて、HMD120の3軸周りの角度の時間的変化を算出し、さらに、角度の時間的変化に基づいて、HMD120の傾きを算出する。
In another aspect, HMD 120 may include sensor 190 instead of HMD sensor 410 or in addition to HMD sensor 410 as a position detector. HMD 120 can detect the position and tilt of HMD 120 using sensor 190 . For example, if sensor 190 is an angular velocity sensor, a geomagnetic sensor, or an acceleration sensor, HMD 120 can detect its own position and tilt using any of these sensors instead of HMD sensor 410 . As an example, when the sensor 190 is an angular velocity sensor, the angular velocity sensor temporally detects angular velocities around three axes of the HMD 120 in real space. The HMD 120 calculates temporal changes in angles around the three axes of the HMD 120 based on the angular velocities, and further calculates the tilt of the HMD 120 based on the temporal changes in the angles.
注視センサ140は、ユーザ5の右目および左目の視線が向けられる方向を検出する。つまり、注視センサ140は、ユーザ5の視線を検出する。視線の方向の検出は、例えば、公知のアイトラッキング機能によって実現される。注視センサ140は、当該アイトラッキング機能を有するセンサにより実現される。ある局面において、注視センサ140は、右目用のセンサおよび左目用のセンサを含むことが好ましい。注視センサ140は、例えば、ユーザ5の右目および左目に赤外線を照射するとともに、照射光に対する角膜および虹彩からの反射光を受けることにより各眼球の回転角を検出するセンサであってもよい。注視センサ140は、検出した各回転角に基づいて、ユーザ5の視線を検知することができる。
Gaze sensor 140 detects the directions in which the user's 5 right and left eyes are directed. That is, the gaze sensor 140 detects the line of sight of the user 5 . Detection of the line-of-sight direction is achieved by, for example, a known eye-tracking function. Gaze sensor 140 is realized by a sensor having the eye tracking function. In one aspect, gaze sensor 140 preferably includes a right eye sensor and a left eye sensor. The gaze sensor 140 may be, for example, a sensor that irradiates the right and left eyes of the user 5 with infrared rays and receives reflected light from the cornea and iris of the irradiated light, thereby detecting the rotation angle of each eyeball. The gaze sensor 140 can detect the line of sight of the user 5 based on each detected rotation angle.
第1カメラ150は、ユーザ5の顔の下部を撮影する。より具体的には、第1カメラ150は、ユーザ5の鼻および口などを撮影する。第2カメラ160は、ユーザ5の目および眉などを撮影する。HMD120のユーザ5側の筐体をHMD120の内側、HMD120のユーザ5とは逆側の筐体をHMD120の外側と定義する。ある局面において、第1カメラ150は、HMD120の外側に配置され、第2カメラ160は、HMD120の内側に配置され得る。第1カメラ150および第2カメラ160が生成した画像は、コンピュータ200に入力される。別の局面において、第1カメラ150と第2カメラ160とを1台のカメラとして実現し、この1台のカメラでユーザ5の顔を撮影するようにしてもよい。
The first camera 150 photographs the lower part of the user's 5 face. More specifically, first camera 150 captures the nose, mouth, and the like of user 5 . The second camera 160 photographs the eyes, eyebrows, etc. of the user 5 . The housing of the HMD 120 on the side of the user 5 is defined as the inside of the HMD 120 , and the housing of the HMD 120 on the side opposite to the user 5 is defined as the outside of the HMD 120 . In one aspect, first camera 150 may be positioned outside HMD 120 and second camera 160 may be positioned inside HMD 120 . Images generated by first camera 150 and second camera 160 are input to computer 200 . In another aspect, the first camera 150 and the second camera 160 may be realized as one camera, and the face of the user 5 may be photographed with this one camera.
マイク170は、ユーザ5の発話を音声信号(電気信号)に変換してコンピュータ200に出力する。スピーカ180は、音声信号を音声に変換してユーザ5に出力する。別の局面において、HMD120は、スピーカ180に替えてイヤホンを含み得る。
The microphone 170 converts the speech of the user 5 into an audio signal (electrical signal) and outputs it to the computer 200 . The speaker 180 converts the audio signal into audio and outputs it to the user 5 . In another aspect, HMD 120 may include earphones instead of speaker 180 .
コントローラ300は、有線または無線によりコンピュータ200に接続されている。コントローラ300は、ユーザ5からコンピュータ200への命令の入力を受け付ける。ある局面において、コントローラ300は、ユーザ5によって把持可能に構成される。別の局面において、コントローラ300は、ユーザ5の身体あるいは衣類の一部に装着可能に構成される。さらに別の局面において、コントローラ300は、コンピュータ200から送信される信号に基づいて、振動、音、光のうちの少なくともいずれかを出力するように構成されてもよい。さらに別の局面において、コントローラ300は、ユーザ5から、仮想空間に配置されるオブジェクトの位置や動きを制御するための操作を受け付ける。
The controller 300 is connected to the computer 200 by wire or wirelessly. The controller 300 accepts command input from the user 5 to the computer 200 . In one aspect, controller 300 is configured to be grippable by user 5 . In another aspect, controller 300 is configured to be attachable to part of user's 5 body or clothing. In yet another aspect, controller 300 may be configured to output at least one of vibration, sound, and light based on signals transmitted from computer 200 . In yet another aspect, controller 300 receives an operation from user 5 for controlling the position and movement of an object placed in the virtual space.
ある局面において、コントローラ300は、複数の光源を含む。各光源は例えば、赤外線を発するLEDにより実現される。HMDセンサ410は、ポジショントラッキング機能を有する。この場合、HMDセンサ410は、コントローラ300が発する複数の赤外線を読み取り、現実空間内におけるコントローラ300の位置および傾きを検出する。別の局面において、HMDセンサ410は、カメラにより実現されてもよい。この場合、HMDセンサ410は、カメラから出力されるコントローラ300の画像情報を用いて、画像解析処理を実行することにより、コントローラ300の位置および傾きを検出することができる。
In one aspect, controller 300 includes multiple light sources. Each light source is implemented, for example, by an LED that emits infrared rays. The HMD sensor 410 has a position tracking function. In this case, the HMD sensor 410 reads multiple infrared rays emitted by the controller 300 and detects the position and tilt of the controller 300 in the physical space. In another aspect, HMD sensor 410 may be implemented by a camera. In this case, the HMD sensor 410 can detect the position and tilt of the controller 300 by executing image analysis processing using the image information of the controller 300 output from the camera.
モーションセンサ420は、ある局面において、ユーザ5の手に取り付けられて、ユーザ5の手の動きを検出する。例えば、モーションセンサ420は、手の回転速度、回転数等を検出する。検出された信号は、コンピュータ200に送られる。モーションセンサ420は、例えば、コントローラ300に設けられている。ある局面において、モーションセンサ420は、例えば、ユーザ5に把持可能に構成されたコントローラ300に設けられている。別の局面において、現実空間における安全のため、コントローラ300は、手袋型のようにユーザ5の手に装着されることにより容易に飛んで行かないものに装着される。さらに別の局面において、ユーザ5に装着されないセンサがユーザ5の手の動きを検出してもよい。例えば、ユーザ5を撮影するカメラの信号が、ユーザ5の動作を表わす信号として、コンピュータ200に入力されてもよい。モーションセンサ420とコンピュータ200とは、一例として、無線により互いに接続される。無線の場合、通信形態は特に限られず、例えば、Bluetooth(登録商標)その他の公知の通信手法が用いられる。
Motion sensor 420 , in one aspect, is attached to the hand of user 5 to detect movement of the hand of user 5 . For example, the motion sensor 420 detects hand rotation speed, number of rotations, and the like. The detected signal is sent to computer 200 . Motion sensor 420 is provided in controller 300, for example. In one aspect, motion sensor 420 is provided, for example, in controller 300 configured to be grippable by user 5 . In another aspect, for safety in the real space, the controller 300 is attached to an object such as a glove that is attached to the hand of the user 5 so as not to fly off easily. In yet another aspect, sensors not worn by user 5 may detect movement of user's 5 hand. For example, a signal from a camera that takes an image of user 5 may be input to computer 200 as a signal representing the motion of user 5 . Motion sensor 420 and computer 200 are, for example, wirelessly connected to each other. In the case of wireless communication, the form of communication is not particularly limited, and for example, Bluetooth (registered trademark) or other known communication methods are used.
ディスプレイ430は、モニタ130に表示されている画像と同様の画像を表示する。これにより、HMD120を装着しているユーザ5以外のユーザにも当該ユーザ5と同様の画像を視聴させることができる。ディスプレイ430に表示される画像は、3次元画像である必要はなく、右目用の画像や左目用の画像であってもよい。ディスプレイ430としては、例えば、液晶ディスプレイや有機ELモニタなどが挙げられる。
Display 430 displays an image similar to the image displayed on monitor 130 . This allows users other than the user 5 wearing the HMD 120 to view the same image as that of the user 5 . The image displayed on display 430 does not have to be a three-dimensional image, and may be an image for the right eye or an image for the left eye. Examples of the display 430 include a liquid crystal display and an organic EL monitor.
サーバ600は、コンピュータ200にプログラムを送信し得る。別の局面において、サーバ600は、他のユーザによって使用されるHMD120に仮想現実を提供するための他のコンピュータ200と通信し得る。例えば、アミューズメント施設において、複数のユーザが参加型のゲームを行なう場合、各コンピュータ200は、各ユーザの動作に基づく信号をサーバ600を介して他のコンピュータ200と通信して、同じ仮想空間において複数のユーザが共通のゲームを楽しむことを可能にする。各コンピュータ200は、各ユーザの動作に基づく信号をサーバ600を介さずに他のコンピュータ200と通信するようにしてもよい。
Server 600 may transmit programs to computer 200 . In another aspect, server 600 may communicate with other computers 200 to provide virtual reality to HMDs 120 used by other users. For example, when a plurality of users play a participatory game in an amusement facility, each computer 200 communicates a signal based on each user's action with the other computers 200 via the server 600 so that a plurality of users can participate in the same virtual space. users to enjoy common games. Each computer 200 may communicate signals based on each user's actions with other computers 200 without going through the server 600 .
外部機器700は、コンピュータ200と通信可能な機器であればどのような機器であってもよい。外部機器700は、例えば、ネットワーク2を介してコンピュータ200と通信可能な機器であってもよいし、近距離無線通信や有線接続によりコンピュータ200と直接通信可能な機器であってもよい。外部機器700としては、例えば、スマートデバイス、PC(Personal Computer)、及びコンピュータ200の周辺機器などが挙げられるが、これらに限定されるものではない。
The external device 700 may be any device as long as it can communicate with the computer 200 . The external device 700 may be, for example, a device capable of communicating with the computer 200 via the network 2, or may be a device capable of directly communicating with the computer 200 through short-range wireless communication or wired connection. Examples of the external device 700 include smart devices, PCs (Personal Computers), and peripheral devices of the computer 200, but are not limited to these.
[コンピュータのハードウェア構成]
図2を参照して、本実施の形態に係るコンピュータ200について説明する。図2は、本実施の形態に従うコンピュータ200のハードウェア構成の一例を表すブロック図である。コンピュータ200は、主たる構成要素として、プロセッサ210と、メモリ220と、ストレージ230と、入出力インターフェイス240と、通信インターフェイス250とを備える。各構成要素は、それぞれ、バス260に接続されている。
[Computer hardware configuration]
A computer 200 according to the present embodiment will be described with reference to FIG. FIG. 2 is a block diagram showing an example of the hardware configuration of computer 200 according to this embodiment. The computer 200 includes a processor 210, a memory 220, a storage 230, an input/output interface 240, and a communication interface 250 as main components. Each component is connected to bus 260 respectively.
プロセッサ210は、コンピュータ200に与えられる信号に基づいて、あるいは、予め定められた条件が成立したことに基づいて、メモリ220またはストレージ230に格納されているプログラムに含まれる一連の命令を実行する。ある局面において、プロセッサ210は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、MPU(Micro Processor Unit)、FPGA(Field-Programmable Gate Array)その他のデバイスとして実現される。
Processor 210 executes a series of instructions contained in a program stored in memory 220 or storage 230 based on a signal given to computer 200 or based on the establishment of a predetermined condition. In one aspect, processor 210 is implemented as a CPU (Central Processing Unit), GPU (Graphics Processing Unit), MPU (Micro Processor Unit), FPGA (Field-Programmable Gate Array), or other device.
メモリ220は、プログラムおよびデータを一時的に保存する。プログラムは、例えば、ストレージ230からロードされる。データは、コンピュータ200に入力されたデータと、プロセッサ210によって生成されたデータとを含む。ある局面において、メモリ220は、RAM(Random Access Memory)その他の揮発メモリとして実現される。
Memory 220 temporarily stores programs and data. The program is loaded from storage 230, for example. Data includes data input to computer 200 and data generated by processor 210 . In one aspect, memory 220 is implemented as random access memory (RAM) or other volatile memory.
ストレージ230は、プログラムおよびデータを永続的に保持する。ストレージ230は、例えば、ROM(Read-Only Memory)、ハードディスク装置、フラッシュメモリ、その他の不揮発記憶装置として実現される。ストレージ230に格納されるプログラムは、HMDシステム100において仮想空間を提供するためのプログラム、シミュレーションプログラム、ゲームプログラム、ユーザ認証プログラム、他のコンピュータ200との通信を実現するためのプログラムを含む。ストレージ230に格納されるデータは、仮想空間を規定するためのデータおよびオブジェクト等を含む。
Storage 230 permanently holds programs and data. The storage 230 is implemented as, for example, a ROM (Read-Only Memory), hard disk device, flash memory, or other non-volatile storage device. The programs stored in the storage 230 include programs for providing a virtual space in the HMD system 100, simulation programs, game programs, user authentication programs, and programs for realizing communication with other computers 200. The data stored in the storage 230 includes data and objects for defining the virtual space.
別の局面において、ストレージ230は、メモリカードのように着脱可能な記憶装置として実現されてもよい。さらに別の局面において、コンピュータ200に内蔵されたストレージ230の代わりに、外部の記憶装置に保存されているプログラムおよびデータを使用する構成が使用されてもよい。このような構成によれば、例えば、アミューズメント施設のように複数のHMDシステム100が使用される場面において、プログラムやデータの更新を一括して行なうことが可能になる。
In another aspect, storage 230 may be implemented as a removable storage device such as a memory card. In still another aspect, instead of storage 230 built into computer 200, a configuration using programs and data stored in an external storage device may be used. According to such a configuration, for example, in a scene where a plurality of HMD systems 100 are used, such as an amusement facility, it is possible to collectively update programs and data.
入出力インターフェイス240は、HMD120、HMDセンサ410、モーションセンサ420およびディスプレイ430との間で信号を通信する。HMD120に含まれるモニタ130,注視センサ140,第1カメラ150,第2カメラ160,マイク170およびスピーカ180は、HMD120の入出力インターフェイス240を介してコンピュータ200との通信を行ない得る。ある局面において、入出力インターフェイス240は、USB(Universal Serial Bus)、DVI(Digital Visual Interface)、HDMI(登録商標)(High-Definition Multimedia Interface)その他の端子を用いて実現される。入出力インターフェイス240は上述のものに限られない。
Input/output interface 240 communicates signals between HMD 120 , HMD sensor 410 , motion sensor 420 and display 430 . Monitor 130 , gaze sensor 140 , first camera 150 , second camera 160 , microphone 170 and speaker 180 included in HMD 120 can communicate with computer 200 via input/output interface 240 of HMD 120 . In one aspect, the input/output interface 240 is implemented using a USB (Universal Serial Bus), DVI (Digital Visual Interface), HDMI (registered trademark) (High-Definition Multimedia Interface), or other terminals. Input/output interface 240 is not limited to the one described above.
ある局面において、入出力インターフェイス240は、さらに、コントローラ300と通信し得る。例えば、入出力インターフェイス240は、コントローラ300およびモーションセンサ420から出力された信号の入力を受ける。別の局面において、入出力インターフェイス240は、プロセッサ210から出力された命令を、コントローラ300に送る。当該命令は、振動、音声出力、発光等をコントローラ300に指示する。コントローラ300は、当該命令を受信すると、その命令に応じて、振動、音声出力または発光のいずれかを実行する。
In some aspects, input/output interface 240 may also communicate with controller 300 . For example, input/output interface 240 receives signals output from controller 300 and motion sensor 420 . In another aspect, input/output interface 240 sends instructions output from processor 210 to controller 300 . The command instructs the controller 300 to vibrate, output sound, emit light, or the like. Upon receiving the command, the controller 300 performs any one of vibration, sound output, or light emission according to the command.
通信インターフェイス250は、ネットワーク2に接続されて、ネットワーク2に接続されている他のコンピュータ(例えば、サーバ600)と通信する。ある局面において、通信インターフェイス250は、例えば、LAN(Local Area Network)その他の有線通信インターフェイス、あるいは、WiFi(Wireless Fidelity)、Bluetooth(登録商標)、NFC(Near Field Communication)その他の無線通信インターフェイスとして実現される。通信インターフェイス250は上述のものに限られない。
The communication interface 250 is connected to the network 2 and communicates with other computers connected to the network 2 (for example, the server 600). In one aspect, the communication interface 250 is implemented as, for example, a LAN (Local Area Network) or other wired communication interface, or a WiFi (Wireless Fidelity), Bluetooth (registered trademark), NFC (Near Field Communication) or other wireless communication interface. be done. Communication interface 250 is not limited to the one described above.
ある局面において、プロセッサ210は、ストレージ230にアクセスし、ストレージ230に格納されている1つ以上のプログラムをメモリ220にロードし、当該プログラムに含まれる一連の命令を実行する。当該1つ以上のプログラムは、コンピュータ200のオペレーティングシステム、仮想空間を提供するためのアプリケーションプログラム、仮想空間で実行可能なゲームソフトウェア等を含み得る。プロセッサ210は、入出力インターフェイス240を介して、仮想空間を提供するための信号をHMD120に送る。 HMD120は、その信号に基づいてモニタ130に映像を表示する。
In one aspect, processor 210 accesses storage 230, loads one or more programs stored in storage 230 into memory 220, and executes the sequences of instructions contained in the programs. The one or more programs may include an operating system of computer 200, an application program for providing virtual space, game software executable in virtual space, and the like. Processor 210 sends a signal for providing virtual space to HMD 120 via input/output interface 240 . HMD 120 displays an image on monitor 130 based on the signal.
図2に示される例では、コンピュータ200は、HMD120の外部に設けられる構成が示されているが、別の局面において、コンピュータ200は、HMD120に内蔵されてもよい。一例として、モニタ130を含む携帯型の情報通信端末(例えば、スマートフォン)がコンピュータ200として機能してもよい。
In the example shown in FIG. 2, computer 200 is provided outside HMD 120, but computer 200 may be built into HMD 120 in another aspect. As an example, a portable information communication terminal (for example, a smart phone) including monitor 130 may function as computer 200 .
コンピュータ200は、複数のHMD120に共通して用いられる構成であってもよい。このような構成によれば、例えば、複数のユーザに同一の仮想空間を提供することもできるので、各ユーザは同一の仮想空間で他のユーザと同一のアプリケーションを楽しむことができる。
The computer 200 may have a configuration that is commonly used by a plurality of HMDs 120 . According to such a configuration, for example, the same virtual space can be provided to a plurality of users, so each user can enjoy the same application as other users in the same virtual space.
ある実施の形態において、HMDシステム100では、現実空間における座標系である実座標系が予め設定されている。実座標系は、現実空間における鉛直方向、鉛直方向に直交する水平方向、並びに、鉛直方向および水平方向の双方に直交する前後方向にそれぞれ平行な、3つの基準方向(軸)を有する。実座標系における水平方向、鉛直方向(上下方向)、および前後方向は、それぞれ、x軸、y軸、z軸と規定される。より具体的には、実座標系において、x軸は現実空間の水平方向に平行である。y軸は、現実空間の鉛直方向に平行である。z軸は現実空間の前後方向に平行である。
In one embodiment, in the HMD system 100, a real coordinate system, which is a coordinate system in real space, is set in advance. The real coordinate system has three reference directions (axes) parallel to the vertical direction in the real space, the horizontal direction perpendicular to the vertical direction, and the front-rear direction perpendicular to both the vertical and horizontal directions. The horizontal direction, vertical direction (vertical direction), and front-rear direction in the real coordinate system are defined as x-axis, y-axis, and z-axis, respectively. More specifically, in the real coordinate system, the x-axis is parallel to the horizontal direction of the real space. The y-axis is parallel to the vertical direction in real space. The z-axis is parallel to the front-back direction of the physical space.
ある局面において、HMDセンサ410は、赤外線センサを含む。赤外線センサが、HMD120の各光源から発せられた赤外線をそれぞれ検出すると、HMD120の存在を検出する。HMDセンサ410は、さらに、各点の値(実座標系における各座標値)に基づいて、HMD120を装着したユーザ5の動きに応じた、現実空間内におけるHMD120の位置および傾き(向き)を検出する。より詳しくは、HMDセンサ410は、経時的に検出された各値を用いて、HMD120の位置および傾きの時間的変化を検出できる。
In one aspect, HMD sensor 410 includes an infrared sensor. The presence of HMD 120 is detected when the infrared sensor detects infrared rays emitted from each light source of HMD 120 . The HMD sensor 410 further detects the position and inclination (orientation) of the HMD 120 in the physical space according to the movement of the user 5 wearing the HMD 120, based on the value of each point (each coordinate value in the real coordinate system). do. More specifically, the HMD sensor 410 can detect temporal changes in the position and tilt of the HMD 120 using each value detected over time.
HMDセンサ410によって検出されたHMD120の各傾きは、実座標系におけるHMD120の3軸周りの各傾きに相当する。HMDセンサ410は、実座標系におけるHMD120の傾きに基づき、uvw視野座標系をHMD120に設定する。HMD120に設定されるuvw視野座標系は、HMD120を装着したユーザ5が仮想空間において物体を見る際の視点座標系に対応する。
Each tilt of HMD 120 detected by HMD sensor 410 corresponds to each tilt of HMD 120 around three axes in the real coordinate system. The HMD sensor 410 sets the uvw visual field coordinate system to the HMD 120 based on the tilt of the HMD 120 in the real coordinate system. The uvw visual field coordinate system set in the HMD 120 corresponds to the viewpoint coordinate system when the user 5 wearing the HMD 120 sees an object in virtual space.
[uvw視野座標系]
図3を参照して、uvw視野座標系について説明する。図3は、ある実施の形態に従うHMD120に設定されるuvw視野座標系を概念的に表す図である。HMDセンサ410は、HMD120の起動時に、実座標系におけるHMD120の位置および傾きを検出する。プロセッサ210は、検出された値に基づいて、uvw視野座標系をHMD120に設定する。
[uvw visual field coordinate system]
The uvw visual field coordinate system will be described with reference to FIG. FIG. 3 is a diagram conceptually representing the uvw viewing coordinate system set in the HMD 120 according to one embodiment. HMD sensor 410 detects the position and tilt of HMD 120 in the real coordinate system when HMD 120 is activated. Processor 210 sets the uvw viewing coordinate system to HMD 120 based on the detected values.
図3に示されるように、HMD120は、HMD120を装着したユーザ5の頭部を中心(原点)とした3次元のuvw視野座標系を設定する。より具体的には、HMD120は、実座標系を規定する水平方向、鉛直方向、および前後方向(x軸、y軸、z軸)を、実座標系内においてHMD120の各軸周りの傾きだけ各軸周りにそれぞれ傾けることによって新たに得られる3つの方向を、HMD120におけるuvw視野座標系のピッチ軸(u軸)、ヨー軸(v軸)、およびロール軸(w軸)として設定する。
As shown in FIG. 3 , the HMD 120 sets a three-dimensional uvw visual field coordinate system centered (origin) on the head of the user 5 wearing the HMD 120 . More specifically, the HMD 120 rotates the horizontal direction, the vertical direction, and the front-rear direction (x-axis, y-axis, and z-axis) defining the real coordinate system by tilts around each axis of the HMD 120 within the real coordinate system. The three directions newly obtained by tilting around the axes are set as the pitch axis (u-axis), yaw-axis (v-axis), and roll-axis (w-axis) of the uvw visual field coordinate system in the HMD 120 .
ある局面において、HMD120を装着したユーザ5が直立し、かつ、正面を視認している場合、プロセッサ210は、実座標系に平行なuvw視野座標系をHMD120に設定する。この場合、実座標系における水平方向(x軸)、鉛直方向(y軸)、および前後方向(z軸)は、HMD120におけるuvw視野座標系のピッチ軸(u軸)、ヨー軸(v軸)、およびロール軸(w軸)に一致する。
In one aspect, when user 5 wearing HMD 120 is standing upright and looking straight ahead, processor 210 sets HMD 120 to a uvw viewing coordinate system that is parallel to the real coordinate system. In this case, the horizontal direction (x-axis), vertical direction (y-axis), and front-back direction (z-axis) in the real coordinate system are the pitch axis (u-axis) and yaw-axis (v-axis) of the uvw visual field coordinate system in the HMD 120. , and the roll axis (w-axis).
uvw視野座標系がHMD120に設定された後、HMDセンサ410は、HMD120の動きに基づいて、設定されたuvw視野座標系におけるHMD120の傾きを検出できる。この場合、HMDセンサ410は、HMD120の傾きとして、uvw視野座標系におけるHMD120のピッチ角(θu)、ヨー角(θv)、およびロール角(θw)をそれぞれ検出する。ピッチ角(θu)は、uvw視野座標系におけるピッチ軸周りのHMD120の傾き角度を表す。ヨー角(θv)は、uvw視野座標系におけるヨー軸周りのHMD120の傾き角度を表す。ロール角(θw)は、uvw視野座標系におけるロール軸周りのHMD120の傾き角度を表す。
After the uvw visual field coordinate system is set on the HMD 120 , the HMD sensor 410 can detect the tilt of the HMD 120 in the set uvw visual field coordinate system based on the movement of the HMD 120 . In this case, the HMD sensor 410 detects the pitch angle (θu), yaw angle (θv), and roll angle (θw) of the HMD 120 in the uvw visual field coordinate system as the tilt of the HMD 120 . The pitch angle (θu) represents the tilt angle of the HMD 120 around the pitch axis in the uvw visual field coordinate system. The yaw angle (θv) represents the tilt angle of the HMD 120 around the yaw axis in the uvw visual field coordinate system. A roll angle (θw) represents the tilt angle of the HMD 120 around the roll axis in the uvw visual field coordinate system.
HMDセンサ410は、検出されたHMD120の傾きに基づいて、HMD120が動いた後のHMD120におけるuvw視野座標系を、HMD120に設定する。HMD120と、HMD120のuvw視野座標系との関係は、HMD120の位置および傾きに関わらず、常に一定である。HMD120の位置および傾きが変わると、当該位置および傾きの変化に連動して、実座標系におけるHMD120のuvw視野座標系の位置および傾きが変化する。
The HMD sensor 410 sets the uvw visual field coordinate system in the HMD 120 after the HMD 120 moves based on the detected inclination of the HMD 120 to the HMD 120 . The relationship between the HMD 120 and the uvw visual field coordinate system of the HMD 120 is always constant regardless of the position and tilt of the HMD 120 . When the position and tilt of the HMD 120 change, the position and tilt of the uvw visual field coordinate system of the HMD 120 in the real coordinate system change in conjunction with the change in the position and tilt.
ある局面において、HMDセンサ410は、赤外線センサからの出力に基づいて取得される赤外線の光強度および複数の点間の相対的な位置関係(例えば、各点間の距離など)に基づいて、HMD120の現実空間内における位置を、HMDセンサ410に対する相対位置として特定してもよい。プロセッサ210は、特定された相対位置に基づいて、現実空間内(実座標系)におけるHMD120のuvw視野座標系の原点を決定してもよい。
In one aspect, HMD sensor 410 detects HMD 120 based on the infrared light intensity and the relative positional relationship between a plurality of points (for example, the distance between points) obtained based on the output from the infrared sensor. position in the physical space may be specified as a relative position with respect to the HMD sensor 410 . Processor 210 may determine the origin of the uvw visual field coordinate system of HMD 120 in physical space (real coordinate system) based on the specified relative position.
[仮想空間]
図4を参照して、仮想空間についてさらに説明する。図4は、ある実施の形態に従う仮想空間11を表現する一態様を概念的に表す図である。仮想空間11は、中心12の360度方向の全体を覆う全天球状の構造を有する。図4では、説明を複雑にしないために、仮想空間11のうちの上半分の天球が例示されている。仮想空間11では各メッシュが規定される。各メッシュの位置は、仮想空間11に規定されるグローバル座標系であるXYZ座標系における座標値として予め規定されている。コンピュータ200は、仮想空間11に展開可能なパノラマ画像13(静止画、動画等)を構成する各部分画像を、仮想空間11において対応する各メッシュにそれぞれ対応付ける。
[Virtual space]
The virtual space will be further described with reference to FIG. FIG. 4 is a diagram conceptually showing one aspect of expressing virtual space 11 according to an embodiment. The virtual space 11 has a spherical structure covering the entire 360-degree direction of the center 12 . In FIG. 4, the celestial sphere in the upper half of the virtual space 11 is illustrated in order not to complicate the explanation. Each mesh is defined in the virtual space 11 . The position of each mesh is defined in advance as coordinate values in the XYZ coordinate system, which is the global coordinate system defined in the virtual space 11 . The computer 200 associates each partial image that constitutes the panorama image 13 (still image, moving image, etc.) that can be developed in the virtual space 11 with each corresponding mesh in the virtual space 11 .
ある局面において、仮想空間11では、中心12を原点とするXYZ座標系が規定される。XYZ座標系は、例えば、実座標系に平行である。XYZ座標系における水平方向、鉛直方向(上下方向)、および前後方向は、それぞれX軸、Y軸、Z軸として規定される。したがって、XYZ座標系のX軸(水平方向)が実座標系のx軸と平行であり、XYZ座標系のY軸(鉛直方向)が実座標系のy軸と平行であり、XYZ座標系のZ軸(前後方向)が実座標系のz軸と平行である。
In one aspect, the virtual space 11 defines an XYZ coordinate system with the center 12 as the origin. The XYZ coordinate system is parallel to the real coordinate system, for example. The horizontal direction, vertical direction (vertical direction), and front-rear direction in the XYZ coordinate system are defined as the X-axis, Y-axis, and Z-axis, respectively. Therefore, the X-axis (horizontal direction) of the XYZ coordinate system is parallel to the x-axis of the real coordinate system, the Y-axis (vertical direction) of the XYZ coordinate system is parallel to the y-axis of the real coordinate system, and the The Z-axis (front-rear direction) is parallel to the z-axis of the real coordinate system.
HMD120の起動時、すなわちHMD120の初期状態において、仮想カメラ14が、仮想空間11の中心12に配置される。ある局面において、プロセッサ210は、仮想カメラ14が撮影する画像をHMD120のモニタ130に表示する。仮想カメラ14は、現実空間におけるHMD120の動きに連動して、仮想空間11を同様に移動する。これにより、現実空間におけるHMD120の位置および傾きの変化が、仮想空間11において同様に再現され得る。
When the HMD 120 is activated, that is, in the initial state of the HMD 120 , the virtual camera 14 is arranged at the center 12 of the virtual space 11 . In one aspect, processor 210 displays an image captured by virtual camera 14 on monitor 130 of HMD 120 . The virtual camera 14 similarly moves in the virtual space 11 in conjunction with the movement of the HMD 120 in the real space. Thereby, changes in the position and tilt of the HMD 120 in the real space can be similarly reproduced in the virtual space 11 .
仮想カメラ14には、HMD120の場合と同様に、uvw視野座標系が規定される。仮想空間11における仮想カメラ14のuvw視野座標系は、現実空間(実座標系)におけるHMD120のuvw視野座標系に連動するように規定されている。したがって、HMD120の傾きが変化すると、それに応じて、仮想カメラ14の傾きも変化する。仮想カメラ14は、HMD120を装着したユーザ5の現実空間における移動に連動して、仮想空間11において移動することもできる。
A uvw field-of-view coordinate system is defined in the virtual camera 14 as in the case of the HMD 120 . The uvw visual field coordinate system of the virtual camera 14 in the virtual space 11 is defined to interlock with the uvw visual field coordinate system of the HMD 120 in the real space (real coordinate system). Therefore, when the tilt of HMD 120 changes, the tilt of virtual camera 14 also changes accordingly. The virtual camera 14 can also move in the virtual space 11 in conjunction with the movement of the user 5 wearing the HMD 120 in the real space.
コンピュータ200のプロセッサ210は、仮想カメラ14の位置と傾き(基準視線16)とに基づいて、仮想空間11における視界領域15を規定する。視界領域15は、仮想空間11のうち、HMD120を装着したユーザ5が視認する領域に対応する。つまり、仮想カメラ14の位置は、仮想空間11におけるユーザ5の視点と言える。
The processor 210 of the computer 200 defines the field of view area 15 in the virtual space 11 based on the position and tilt of the virtual camera 14 (reference line of sight 16). The field of view area 15 corresponds to an area of the virtual space 11 that is visually recognized by the user 5 wearing the HMD 120 . That is, the position of the virtual camera 14 can be said to be the viewpoint of the user 5 in the virtual space 11 .
注視センサ140によって検出されるユーザ5の視線は、ユーザ5が物体を視認する際の視点座標系における方向である。HMD120のuvw視野座標系は、ユーザ5がモニタ130を視認する際の視点座標系に等しい。仮想カメラ14のuvw視野座標系は、HMD120のuvw視野座標系に連動している。したがって、ある局面に従うHMDシステム100は、注視センサ140によって検出されたユーザ5の視線を、仮想カメラ14のuvw視野座標系におけるユーザ5の視線とみなすことができる。
The line of sight of the user 5 detected by the gaze sensor 140 is the direction in the viewpoint coordinate system when the user 5 visually recognizes an object. The uvw visual field coordinate system of the HMD 120 is equal to the viewpoint coordinate system when the user 5 visually recognizes the monitor 130 . The uvw visual field coordinate system of the virtual camera 14 is interlocked with the uvw visual field coordinate system of the HMD 120 . Therefore, the HMD system 100 according to one aspect can regard the line of sight of the user 5 detected by the gaze sensor 140 as the line of sight of the user 5 in the uvw field coordinate system of the virtual camera 14 .
[ユーザの視線]
図5を参照して、ユーザ5の視線の決定について説明する。図5は、ある実施の形態に従うHMD120を装着するユーザ5の頭部を上から表した図である。
[User's line of sight]
Determination of the line of sight of the user 5 will be described with reference to FIG. FIG. 5 is a top view of the head of user 5 wearing HMD 120 according to an embodiment.
ある局面において、注視センサ140は、ユーザ5の右目および左目の各視線を検出する。ある局面において、ユーザ5が近くを見ている場合、注視センサ140は、視線R1およびL1を検出する。別の局面において、ユーザ5が遠くを見ている場合、注視センサ140は、視線R2およびL2を検出する。この場合、ロール軸wに対して視線R2およびL2が成す角度は、ロール軸wに対して視線R1およびL1が成す角度よりも小さい。注視センサ140は、検出結果をコンピュータ200に送信する。
In one aspect, gaze sensor 140 detects the line of sight of user 5's right and left eyes. In one aspect, when user 5 is looking near, gaze sensor 140 detects lines of sight R1 and L1. In another aspect, when user 5 is looking far away, gaze sensor 140 detects lines of sight R2 and L2. In this case, the angle between the lines of sight R2 and L2 with respect to the roll axis w is smaller than the angle between the lines of sight R1 and L1 with respect to the roll axis w. Gaze sensor 140 transmits the detection result to computer 200 .
コンピュータ200が、視線の検出結果として、視線R1およびL1の検出値を注視センサ140から受信した場合には、その検出値に基づいて、視線R1およびL1の交点である注視点N1を特定する。一方、コンピュータ200は、視線R2およびL2の検出値を注視センサ140から受信した場合には、視線R2およびL2の交点を注視点として特定する。コンピュータ200は、特定した注視点N1の位置に基づき、ユーザ5の視線N0を特定する。コンピュータ200は、例えば、ユーザ5の右目Rと左目Lとを結ぶ直線の中点と、注視点N1とを通る直線の延びる方向を、視線N0として検出する。視線N0は、ユーザ5が両目により実際に視線を向けている方向である。視線N0は、視界領域15に対してユーザ5が実際に視線を向けている方向に相当する。
When computer 200 receives detection values of lines of sight R1 and L1 from gaze sensor 140 as a detection result of lines of sight, computer 200 identifies point of gaze N1, which is the intersection of lines of sight R1 and L1, based on the detected values. On the other hand, when computer 200 receives detection values of lines of sight R2 and L2 from gaze sensor 140, computer 200 identifies the intersection of lines of sight R2 and L2 as the point of gaze. The computer 200 identifies the line of sight N0 of the user 5 based on the identified position of the gaze point N1. The computer 200 detects, for example, the extending direction of a straight line passing through the midpoint of the straight line connecting the right eye R and the left eye L of the user 5 and the gaze point N1 as the line of sight N0. The line of sight N0 is the direction in which the user 5 is actually looking with both eyes. The line of sight N<b>0 corresponds to the direction in which the user 5 actually looks toward the field of view area 15 .
別の局面において、HMDシステム100は、テレビジョン放送受信チューナを備えてもよい。このような構成によれば、HMDシステム100は、仮想空間11においてテレビ番組を表示することができる。
In another aspect, HMD system 100 may include a television broadcast reception tuner. With such a configuration, the HMD system 100 can display television programs in the virtual space 11 .
さらに別の局面において、HMDシステム100は、インターネットに接続するための通信回路、あるいは、電話回線に接続するための通話機能を備えていてもよい。
In still another aspect, the HMD system 100 may have a communication circuit for connecting to the Internet or a calling function for connecting to a telephone line.
[視界領域]
図6および図7を参照して、視界領域15について説明する。図6は、仮想空間11において視界領域15をX方向から見たYZ断面を表す図である。図7は、仮想空間11において視界領域15をY方向から見たXZ断面を表す図である。
[Vision area]
The field of view area 15 will be described with reference to FIGS. 6 and 7. FIG. FIG. 6 is a diagram showing a YZ cross section of the visual field area 15 viewed from the X direction in the virtual space 11. As shown in FIG. FIG. 7 is a diagram showing an XZ cross section of the visual field area 15 viewed from the Y direction in the virtual space 11. As shown in FIG.
図6に示されるように、YZ断面における視界領域15は、領域18を含む。領域18は、仮想カメラ14の位置と基準視線16と仮想空間11のYZ断面とによって定義される。プロセッサ210は、仮想空間における基準視線16を中心として極角αを含む範囲を、領域18として規定する。
As shown in FIG. 6 , the field of view area 15 in the YZ cross section includes area 18 . A region 18 is defined by the position of the virtual camera 14 , the reference line of sight 16 and the YZ section of the virtual space 11 . The processor 210 defines an area 18 centered on the reference line of sight 16 in the virtual space and including the polar angle α.
図7に示されるように、XZ断面における視界領域15は、領域19を含む。領域19は、仮想カメラ14の位置と基準視線16と仮想空間11のXZ断面とによって定義される。プロセッサ210は、仮想空間11における基準視線16を中心とした方位角βを含む範囲を、領域19として規定する。極角αおよびβは、仮想カメラ14の位置と仮想カメラ14の傾き(向き)とに応じて定まる。
As shown in FIG. 7 , the viewing area 15 in the XZ cross section includes area 19 . A region 19 is defined by the position of the virtual camera 14 , the reference line of sight 16 and the XZ section of the virtual space 11 . The processor 210 defines a range including the azimuth angle β around the reference line of sight 16 in the virtual space 11 as the region 19 . The polar angles α and β are determined according to the position of the virtual camera 14 and the tilt (orientation) of the virtual camera 14 .
ある局面において、HMDシステム100は、コンピュータ200からの信号に基づいて、視界画像17をモニタ130に表示させることにより、ユーザ5に仮想空間11における視界を提供する。視界画像17は、パノラマ画像13のうち視界領域15に対応する部分に相当する画像である。ユーザ5が、頭部に装着したHMD120を動かすと、その動きに連動して仮想カメラ14も動く。その結果、仮想空間11における視界領域15の位置が変化する。これにより、モニタ130に表示される視界画像17は、パノラマ画像13のうち、仮想空間11においてユーザ5が向いた方向の視界領域15に重畳する画像に更新される。ユーザ5は、仮想空間11における所望の方向を視認することができる。
In one aspect, HMD system 100 provides user 5 with a view in virtual space 11 by displaying view image 17 on monitor 130 based on a signal from computer 200 . The field-of-view image 17 is an image corresponding to a portion of the panoramic image 13 corresponding to the field-of-view area 15 . When the user 5 moves the HMD 120 worn on the head, the virtual camera 14 also moves in conjunction with the movement. As a result, the position of the viewing area 15 in the virtual space 11 changes. As a result, the field-of-view image 17 displayed on the monitor 130 is updated to an image of the panorama image 13 that is superimposed on the field-of-view area 15 in the direction the user 5 faces in the virtual space 11 . The user 5 can visually recognize a desired direction in the virtual space 11 .
このように、仮想カメラ14の傾きは仮想空間11におけるユーザ5の視線(基準視線16)に相当し、仮想カメラ14が配置される位置は、仮想空間11におけるユーザ5の視点に相当する。したがって、仮想カメラ14の位置または傾きを変更することにより、モニタ130に表示される画像が更新され、ユーザ5の視界が移動される。
Thus, the tilt of the virtual camera 14 corresponds to the line of sight (reference line of sight 16 ) of the user 5 in the virtual space 11 , and the position where the virtual camera 14 is arranged corresponds to the viewpoint of the user 5 in the virtual space 11 . Therefore, by changing the position or tilt of the virtual camera 14, the image displayed on the monitor 130 is updated and the field of view of the user 5 is moved.
ユーザ5は、HMD120を装着している間、現実世界を視認することなく、仮想空間11に展開されるパノラマ画像13のみを視認できる。そのため、HMDシステム100は、仮想空間11への高い没入感覚をユーザ5に与えることができる。
While wearing the HMD 120, the user 5 can visually recognize only the panoramic image 13 developed in the virtual space 11 without visually recognizing the real world. Therefore, the HMD system 100 can give the user 5 a high sense of immersion in the virtual space 11 .
ある局面において、プロセッサ210は、HMD120を装着したユーザ5の現実空間における移動に連動して、仮想空間11において仮想カメラ14を移動し得る。この場合、プロセッサ210は、仮想空間11における仮想カメラ14の位置および傾きに基づいて、HMD120のモニタ130に投影される画像領域(視界領域15)を特定する。
In one aspect, processor 210 can move virtual camera 14 in virtual space 11 in conjunction with movement of user 5 wearing HMD 120 in the physical space. In this case, processor 210 identifies an image area (viewing area 15 ) projected on monitor 130 of HMD 120 based on the position and tilt of virtual camera 14 in virtual space 11 .
ある局面において、仮想カメラ14は、2つの仮想カメラ、すなわち、右目用の画像を提供するための仮想カメラと、左目用の画像を提供するための仮想カメラとを含み得る。ユーザ5が3次元の仮想空間11を認識できるように、適切な視差が、2つの仮想カメラに設定される。別の局面において、仮想カメラ14を1つの仮想カメラにより実現してもよい。この場合、1つの仮想カメラにより得られた画像から、右目用の画像と左目用の画像とを生成するようにしてもよい。本実施の形態においては、仮想カメラ14が2つの仮想カメラを含み、2つの仮想カメラのロール軸が合成されることによって生成されるロール軸(w)がHMD120のロール軸(w)に適合されるように構成されているものとして、本開示に係る技術思想を例示する。
In one aspect, virtual camera 14 may include two virtual cameras, a virtual camera for providing images for the right eye and a virtual camera for providing images for the left eye. Appropriate parallax is set for the two virtual cameras so that the user 5 can recognize the three-dimensional virtual space 11 . In another aspect, virtual camera 14 may be realized by one virtual camera. In this case, an image for the right eye and an image for the left eye may be generated from an image obtained by one virtual camera. In the present embodiment, the virtual camera 14 includes two virtual cameras, and the roll axis (w) generated by synthesizing the roll axes of the two virtual cameras is adapted to the roll axis (w) of the HMD 120. The technical idea according to the present disclosure is exemplified as configured as follows.
[コントローラ]
図8を参照して、コントローラ300の一例について説明する。図8は、ある実施の形態に従うコントローラ300の概略構成を表す図である。
[controller]
An example of the controller 300 will be described with reference to FIG. FIG. 8 is a diagram showing a schematic configuration of controller 300 according to an embodiment.
図8に示されるように、ある局面において、コントローラ300は、右コントローラ300Rと図示せぬ左コントローラとを含み得る。右コントローラ300Rは、ユーザ5の右手で操作される。左コントローラは、ユーザ5の左手で操作される。ある局面において、右コントローラ300Rと左コントローラとは、別個の装置として対称に構成される。したがって、ユーザ5は、右コントローラ300Rを把持した右手と、左コントローラを把持した左手とをそれぞれ自由に動かすことができる。別の局面において、コントローラ300は両手の操作を受け付ける一体型のコントローラであってもよい。以下、右コントローラ300Rについて説明する。
As shown in FIG. 8, in one aspect, controller 300 may include a right controller 300R and a left controller (not shown). Right controller 300R is operated by user 5's right hand. The left controller is operated with the user's 5 left hand. In one aspect, right controller 300R and left controller are symmetrically configured as separate devices. Therefore, the user 5 can freely move the right hand holding the right controller 300R and the left hand holding the left controller. In another aspect, controller 300 may be an integrated controller that accepts two-handed operation. The right controller 300R will be described below.
右コントローラ300Rは、グリップ310と、フレーム320と、天面330とを備える。グリップ310は、ユーザ5の右手によって把持されるように構成されている。たとえば、グリップ310は、ユーザ5の右手の掌と3本の指(中指、薬指、小指)とによって保持され得る。
Right controller 300R includes grip 310 , frame 320 , and top surface 330 . The grip 310 is configured to be gripped by the user's 5 right hand. For example, grip 310 may be held by user 5's right palm and three fingers (middle finger, ring finger, little finger).
グリップ310は、ボタン340,350と、モーションセンサ420とを含む。ボタン340は、グリップ310の側面に配置され、右手の中指による操作を受け付ける。ボタン350は、グリップ310の前面に配置され、右手の人差し指による操作を受け付ける。ある局面において、ボタン340,350は、トリガー式のボタンとして構成される。モーションセンサ420は、グリップ310の筐体に内蔵されている。ユーザ5の動作がカメラその他の装置によってユーザ5の周りから検出可能である場合には、グリップ310は、モーションセンサ420を備えなくてもよい。
Grip 310 includes buttons 340 and 350 and motion sensor 420 . Button 340 is arranged on the side surface of grip 310 and is operated by the middle finger of the right hand. Button 350 is arranged on the front surface of grip 310 and is operated by the index finger of the right hand. In one aspect, buttons 340, 350 are configured as trigger buttons. Motion sensor 420 is built into the housing of grip 310 . The grip 310 may not include the motion sensor 420 if the motion of the user 5 can be detected from around the user 5 by a camera or other device.
フレーム320は、その円周方向に沿って配置された複数の赤外線LED360を含む。赤外線LED360は、コントローラ300を使用するプログラムの実行中に、当該プログラムの進行に合わせて赤外線を発光する。赤外線LED360から発せられた赤外線は、右コントローラ300Rと左コントローラとの各位置や姿勢(傾き、向き)を検出するために使用され得る。図8に示される例では、二列に配置された赤外線LED360が示されているが、配列の数は図8に示されるものに限られない。一列あるいは3列以上の配列が使用されてもよい。
Frame 320 includes a plurality of infrared LEDs 360 arranged along its circumference. Infrared LED 360 emits infrared light in accordance with the progress of a program using controller 300 during execution of the program. Infrared rays emitted from infrared LED 360 can be used to detect the positions and orientations (inclination and orientation) of right controller 300R and left controller. Although the example shown in FIG. 8 shows infrared LEDs 360 arranged in two rows, the number of arrays is not limited to that shown in FIG. A single row or three or more row arrays may be used.
天面330は、ボタン370,380と、アナログスティック390とを備える。ボタン370,380は、プッシュ式ボタンとして構成される。ボタン370,380は、ユーザ5の右手の親指による操作を受け付ける。アナログスティック390は、ある局面において、初期位置(ニュートラルの位置)から360度任意の方向への操作を受け付ける。当該操作は、たとえば、仮想空間11に配置されるオブジェクトを移動するための操作を含む。
Top surface 330 includes buttons 370 and 380 and analog stick 390 . Buttons 370 and 380 are configured as push buttons. Buttons 370 and 380 accept operations by user 5's right thumb. In a certain aspect, the analog stick 390 accepts an operation in any direction of 360 degrees from the initial position (neutral position). The operation includes, for example, an operation for moving an object placed in the virtual space 11 .
ある局面において、右コントローラ300Rおよび左コントローラは、赤外線LED360その他の部材を駆動するための電池を含む。電池は、充電式、ボタン型、乾電池型などを含むが、これらに限定されない。別の局面において、右コントローラ300Rと左コントローラは、たとえば、コンピュータ200のUSBインターフェースに接続され得る。この場合、右コントローラ300Rおよび左コントローラは、電池を必要としない。
In one aspect, right controller 300R and left controller include batteries for powering infrared LEDs 360 and other components. Batteries include, but are not limited to, rechargeable, button-type, dry cell-type, and the like. In another aspect, right controller 300R and left controller may be connected to a USB interface of computer 200, for example. In this case, right controller 300R and left controller do not require batteries.
図8の状態(A)および状態(B)に示されるように、例えば、ユーザ5の右手に対して、ヨー、ロール、ピッチの各方向が規定される。ユーザ5が親指と人差し指とを伸ばした場合に、親指の伸びる方向がヨー方向、人差し指の伸びる方向がロール方向、ヨー方向の軸およびロール方向の軸によって規定される平面に垂直な方向がピッチ方向として規定される。
As shown in states (A) and (B) of FIG. 8, for example, the yaw, roll, and pitch directions are defined for the user's 5 right hand. When the user 5 extends the thumb and index finger, the direction in which the thumb extends is the yaw direction, the direction in which the index finger extends is the roll direction, and the direction perpendicular to the plane defined by the yaw direction axis and the roll direction axis is the pitch direction. defined as
[サーバのハードウェア構成]
図9を参照して、本実施の形態に係るサーバ600について説明する。図9は、ある実施の形態に従うサーバ600のハードウェア構成の一例を表すブロック図である。サーバ600は、主たる構成要素として、プロセッサ610と、メモリ620と、ストレージ630と、入出力インターフェイス640と、通信インターフェイス650とを備える。各構成要素は、それぞれ、バス660に接続されている。
[Server hardware configuration]
Server 600 according to the present embodiment will be described with reference to FIG. FIG. 9 is a block diagram showing an example hardware configuration of server 600 according to an embodiment. The server 600 includes a processor 610, a memory 620, a storage 630, an input/output interface 640, and a communication interface 650 as main components. Each component is respectively connected to bus 660 .
プロセッサ610は、サーバ600に与えられる信号に基づいて、あるいは、予め定められた条件が成立したことに基づいて、メモリ620またはストレージ630に格納されているプログラムに含まれる一連の命令を実行する。ある局面において、プロセッサ610は、CPU、GPU、MPU、FPGAその他のデバイスとして実現される。
Processor 610 executes a series of instructions contained in a program stored in memory 620 or storage 630 based on a signal provided to server 600 or based on the establishment of a predetermined condition. In one aspect, processor 610 is implemented as a CPU, GPU, MPU, FPGA, or other device.
メモリ620は、プログラムおよびデータを一時的に保存する。プログラムは、例えば、ストレージ630からロードされる。データは、サーバ600に入力されたデータと、プロセッサ610によって生成されたデータとを含む。ある局面において、メモリ620は、RAMその他の揮発メモリとして実現される。
Memory 620 temporarily stores programs and data. The program is loaded from storage 630, for example. Data includes data input to server 600 and data generated by processor 610 . In one aspect, memory 620 is implemented as RAM or other volatile memory.
ストレージ630は、プログラムおよびデータを永続的に保持する。ストレージ630は、例えば、ROM、ハードディスク装置、フラッシュメモリ、その他の不揮発記憶装置として実現される。ストレージ630に格納されるプログラムは、HMDシステム100において仮想空間を提供するためのプログラム、シミュレーションプログラム、ゲームプログラム、ユーザ認証プログラム、コンピュータ200との通信を実現するためのプログラムを含んでもよい。ストレージ630に格納されるデータは、仮想空間を規定するためのデータおよびオブジェクト等を含んでもよい。
Storage 630 permanently holds programs and data. The storage 630 is implemented as, for example, a ROM, hard disk device, flash memory, or other non-volatile memory device. The programs stored in the storage 630 may include a program for providing a virtual space in the HMD system 100, a simulation program, a game program, a user authentication program, and a program for realizing communication with the computer 200. The data stored in the storage 630 may include data and objects for defining the virtual space.
別の局面において、ストレージ630は、メモリカードのように着脱可能な記憶装置として実現されてもよい。さらに別の局面において、サーバ600に内蔵されたストレージ630の代わりに、外部の記憶装置に保存されているプログラムおよびデータを使用する構成が使用されてもよい。このような構成によれば、例えば、アミューズメント施設のように複数のHMDシステム100が使用される場面において、プログラムやデータの更新を一括して行なうことが可能になる。
In another aspect, storage 630 may be implemented as a removable storage device such as a memory card. In still another aspect, instead of storage 630 built into server 600, a configuration using programs and data stored in an external storage device may be used. According to such a configuration, for example, in a scene where a plurality of HMD systems 100 are used, such as an amusement facility, it is possible to collectively update programs and data.
入出力インターフェイス640は、入出力機器との間で信号を通信する。ある局面において、入出力インターフェイス640は、USB、DVI、HDMI(登録商標)その他の端子を用いて実現される。入出力インターフェイス640は上述のものに限られない。
Input/output interface 640 communicates signals with input/output devices. In one aspect, input/output interface 640 is implemented using a USB, DVI, HDMI (registered trademark) or other terminal. Input/output interface 640 is not limited to the one described above.
通信インターフェイス650は、ネットワーク2に接続されて、ネットワーク2に接続されているコンピュータ200と通信する。ある局面において、通信インターフェイス650は、例えば、LANその他の有線通信インターフェイス、あるいは、WiFi、Bluetooth、NFCその他の無線通信インターフェイスとして実現される。通信インターフェイス650は上述のものに限られない。
Communication interface 650 is connected to network 2 and communicates with computer 200 connected to network 2 . In one aspect, communication interface 650 is implemented as, for example, a LAN or other wired communication interface, or a WiFi, Bluetooth, NFC or other wireless communication interface. Communication interface 650 is not limited to those described above.
ある局面において、プロセッサ610は、ストレージ630にアクセスし、ストレージ630に格納されている1つ以上のプログラムをメモリ620にロードし、当該プログラムに含まれる一連の命令を実行する。当該1つ以上のプログラムは、サーバ600のオペレーティングシステム、仮想空間を提供するためのアプリケーションプログラム、仮想空間で実行可能なゲームソフトウェア等を含み得る。プロセッサ610は、入出力インターフェイス640を介して、仮想空間を提供するための信号をコンピュータ200に送ってもよい。
In one aspect, processor 610 accesses storage 630, loads one or more programs stored in storage 630 into memory 620, and executes the sequences of instructions contained in the programs. The one or more programs may include an operating system of server 600, an application program for providing virtual space, game software executable in virtual space, and the like. Processor 610 may send signals to computer 200 via input/output interface 640 to provide the virtual space.
[HMDの制御装置]
図10を参照して、HMD120の制御装置について説明する。ある実施の形態において、制御装置は周知の構成を有するコンピュータ200によって実現される。図10は、ある実施の形態に従うコンピュータ200をモジュール構成として表わすブロック図である。
[HMD control device]
A control device for the HMD 120 will be described with reference to FIG. In one embodiment, the controller is implemented by computer 200 having a well-known configuration. FIG. 10 is a block diagram representing a modular configuration of computer 200 according to one embodiment.
図10に示されるように、コンピュータ200は、コントロールモジュール510と、レンダリングモジュール520と、メモリモジュール530と、通信制御モジュール540とを備える。ある局面において、コントロールモジュール510とレンダリングモジュール520とは、プロセッサ210によって実現される。別の局面において、複数のプロセッサ210がコントロールモジュール510とレンダリングモジュール520として作動してもよい。メモリモジュール530は、メモリ220またはストレージ230によって実現される。通信制御モジュール540は、通信インターフェイス250によって実現される。
As shown in FIG. 10, computer 200 comprises control module 510 , rendering module 520 , memory module 530 and communication control module 540 . In one aspect, control module 510 and rendering module 520 are implemented by processor 210 . In another aspect, multiple processors 210 may act as control module 510 and rendering module 520 . Memory module 530 is implemented by memory 220 or storage 230 . Communication control module 540 is implemented by communication interface 250 .
コントロールモジュール510は、ユーザ5に提供される仮想空間11を制御する。コントロールモジュール510は、仮想空間11を表す仮想空間データを用いて、HMDシステム100における仮想空間11を規定する。仮想空間データは、例えば、メモリモジュール530に記憶されている。コントロールモジュール510が、仮想空間データを生成したり、サーバ600などから仮想空間データを取得するようにしたりしてもよい。
A control module 510 controls the virtual space 11 provided to the user 5 . The control module 510 defines the virtual space 11 in the HMD system 100 using virtual space data representing the virtual space 11 . Virtual space data is stored, for example, in memory module 530 . The control module 510 may generate virtual space data or acquire virtual space data from the server 600 or the like.
コントロールモジュール510は、オブジェクトを表すオブジェクトデータを用いて、仮想空間11にオブジェクトを配置する。オブジェクトデータは、例えば、メモリモジュール530に記憶されている。コントロールモジュール510が、オブジェクトデータを生成したり、サーバ600などからオブジェクトデータを取得するようにしたりしてもよい。オブジェクトは、例えば、ユーザ5の分身であるアバターオブジェクト、キャラクタオブジェクト、コントローラ300によって操作される仮想手などの操作オブジェクト、ゲームのストーリーの進行に従って配置される森、山その他を含む風景、街並み、動物等を含み得る。
The control module 510 places objects in the virtual space 11 using object data representing the objects. Object data is stored, for example, in memory module 530 . The control module 510 may generate object data or acquire object data from the server 600 or the like. The objects include, for example, an avatar object that is the alter ego of the user 5, a character object, an operation object such as a virtual hand operated by the controller 300, landscapes including forests, mountains, etc. arranged according to the progress of the story of the game, townscapes, and animals. etc.
コントロールモジュール510は、ネットワーク2を介して接続される他のコンピュータ200のユーザ5のアバターオブジェクトを仮想空間11に配置する。ある局面において、コントロールモジュール510は、ユーザ5のアバターオブジェクトを仮想空間11に配置する。ある局面において、コントロールモジュール510は、ユーザ5を含む画像に基づいて、ユーザ5を模したアバターオブジェクトを仮想空間11に配置する。別の局面において、コントロールモジュール510は、複数種類のアバターオブジェクト(例えば、動物を模したオブジェクトや、デフォルメされた人のオブジェクト)の中からユーザ5による選択を受け付けたアバターオブジェクトを仮想空間11に配置する。
The control module 510 places the avatar object of the user 5 of the other computer 200 connected via the network 2 in the virtual space 11 . In one aspect, control module 510 places user 5's avatar object in virtual space 11 . In one aspect, the control module 510 places an avatar object that resembles the user 5 in the virtual space 11 based on the image containing the user 5 . In another aspect, the control module 510 arranges in the virtual space 11 an avatar object that has been selected by the user 5 from among multiple types of avatar objects (for example, an object imitating an animal or a deformed human object). do.
コントロールモジュール510は、HMDセンサ410の出力に基づいてHMD120の傾きを特定する。別の局面において、コントロールモジュール510は、モーションセンサとして機能するセンサ190の出力に基づいてHMD120の傾きを特定する。コントロールモジュール510は、第1カメラ150および第2カメラ160が生成するユーザ5の顔の画像から、ユーザ5の顔を構成する器官(例えば、口,目,眉)を検出する。コントロールモジュール510は、検出した各器官の動き(形状)を検出する。
Control module 510 identifies the tilt of HMD 120 based on the output of HMD sensor 410 . In another aspect, control module 510 identifies the tilt of HMD 120 based on the output of sensor 190, which functions as a motion sensor. The control module 510 detects the facial organs of the user 5 (eg, mouth, eyes, eyebrows) from the facial images of the user 5 generated by the first camera 150 and the second camera 160 . The control module 510 detects the motion (shape) of each detected organ.
コントロールモジュール510は、注視センサ140からの信号に基づいて、ユーザ5の仮想空間11における視線を検出する。コントロールモジュール510は、検出したユーザ5の視線と仮想空間11の天球とが交わる視点位置(XYZ座標系における座標値)を検出する。より具体的には、コントロールモジュール510は、uvw座標系で規定されるユーザ5の視線と、仮想カメラ14の位置および傾きとに基づいて、視点位置を検出する。コントロールモジュール510は、検出した視点位置をサーバ600に送信する。別の局面において、コントロールモジュール510は、ユーザ5の視線を表す視線情報をサーバ600に送信するように構成されてもよい。係る場合、サーバ600が受信した視線情報に基づいて視点位置を算出し得る。
The control module 510 detects the line of sight of the user 5 in the virtual space 11 based on the signal from the gaze sensor 140 . The control module 510 detects the viewpoint position (coordinate values in the XYZ coordinate system) where the detected line of sight of the user 5 and the celestial sphere of the virtual space 11 intersect. More specifically, the control module 510 detects the viewpoint position based on the line of sight of the user 5 defined by the uvw coordinate system and the position and tilt of the virtual camera 14 . Control module 510 transmits the detected viewpoint position to server 600 . In another aspect, control module 510 may be configured to transmit gaze information representing the gaze of user 5 to server 600 . In this case, the viewpoint position can be calculated based on the line-of-sight information received by the server 600 .
コントロールモジュール510は、HMDセンサ410が検出するHMD120の動きをアバターオブジェクトに反映する。例えば、コントロールモジュール510は、HMD120が傾いたことを検知して、アバターオブジェクトを傾けて配置する。コントロールモジュール510は、検出した顔器官の動作を、仮想空間11に配置されるアバターオブジェクトの顔に反映させる。コントロールモジュール510は、サーバ600から他のユーザ5の視線情報を受信し、当該他のユーザ5のアバターオブジェクトの視線に反映させる。ある局面において、コントロールモジュール510は、コントローラ300の動きをアバターオブジェクトや操作オブジェクトに反映する。この場合、コントローラ300は、コントローラ300の動きを検知するためのモーションセンサ、加速度センサ、または複数の発光素子(例えば、赤外線LED)などを備える。
The control module 510 reflects the movement of the HMD 120 detected by the HMD sensor 410 on the avatar object. For example, the control module 510 detects that the HMD 120 is tilted, and tilts and arranges the avatar object. The control module 510 reflects the motion of the detected facial features on the face of the avatar object placed in the virtual space 11 . The control module 510 receives line-of-sight information of the other user 5 from the server 600 and reflects the line-of-sight information of the avatar object of the other user 5 . In one aspect, control module 510 reflects movements of controller 300 on avatar objects and operation objects. In this case, controller 300 includes a motion sensor, an acceleration sensor, a plurality of light emitting elements (for example, infrared LEDs), or the like for detecting movement of controller 300 .
コントロールモジュール510は、仮想空間11においてユーザ5の操作を受け付けるための操作オブジェクトを仮想空間11に配置する。ユーザ5は、操作オブジェクトを操作することにより、例えば、仮想空間11に配置されるオブジェクトを操作する。ある局面において、操作オブジェクトは、例えば、ユーザ5の手に相当する仮想手である手オブジェクト等を含み得る。ある局面において、コントロールモジュール510は、モーションセンサ420の出力に基づいて現実空間におけるユーザ5の手の動きに連動するように仮想空間11において手オブジェクトを動かす。ある局面において、操作オブジェクトは、アバターオブジェクトの手の部分に相当し得る。
The control module 510 arranges in the virtual space 11 an operation object for receiving an operation by the user 5 in the virtual space 11 . The user 5 operates an object placed in the virtual space 11, for example, by operating the operation object. In one aspect, the manipulation object may include, for example, a hand object, which is a virtual hand corresponding to the user's 5 hand. In one aspect, the control module 510 moves the hand object in the virtual space 11 based on the output of the motion sensor 420 in conjunction with the hand movement of the user 5 in the real space. In one aspect, the manipulation object may correspond to a hand portion of the avatar object.
コントロールモジュール510は、仮想空間11に配置されるオブジェクトのそれぞれが、他のオブジェクトと衝突した場合に、当該衝突を検出する。コントロールモジュール510は、例えば、あるオブジェクトのコリジョンエリアと、別のオブジェクトのコリジョンエリアとが触れたタイミングを検出することができ、当該検出がされたときに、予め定められた処理を行なう。コントロールモジュール510は、オブジェクトとオブジェクトとが触れている状態から離れたタイミングを検出することができ、当該検出がされたときに、予め定められた処理を行なう。コントロールモジュール510は、オブジェクトとオブジェクトとが触れている状態であることを検出することができる。例えば、コントロールモジュール510は、操作オブジェクトと、他のオブジェクトとが触れたときに、これら操作オブジェクトと他のオブジェクトとが触れたことを検出して、予め定められた処理を行なう。
The control module 510 detects a collision when each of the objects placed in the virtual space 11 collides with another object. The control module 510 can detect, for example, the timing at which the collision area of a certain object touches the collision area of another object, and performs predetermined processing when the detection is made. The control module 510 can detect the timing when the objects are separated from the touching state, and performs predetermined processing when the detection is made. The control module 510 can detect that objects are touching. For example, when the operating object touches another object, the control module 510 detects that the operating object touches the other object, and performs predetermined processing.
ある局面において、コントロールモジュール510は、HMD120のモニタ130における画像表示を制御する。例えば、コントロールモジュール510は、仮想空間11に仮想カメラ14を配置する。コントロールモジュール510は、仮想空間11における仮想カメラ14の位置と、仮想カメラ14の傾き(向き)を制御する。コントロールモジュール510は、HMD120を装着したユーザ5の頭部の傾きと、仮想カメラ14の位置に応じて、視界領域15を規定する。レンダリングモジュール520は、決定された視界領域15に基づいて、モニタ130に表示される視界画像17を生成する。レンダリングモジュール520により生成された視界画像17は、通信制御モジュール540によってHMD120に出力される。
In one aspect, control module 510 controls image display on monitor 130 of HMD 120 . For example, control module 510 places virtual camera 14 in virtual space 11 . The control module 510 controls the position of the virtual camera 14 in the virtual space 11 and the tilt (orientation) of the virtual camera 14 . The control module 510 defines the field of view area 15 according to the tilt of the head of the user 5 wearing the HMD 120 and the position of the virtual camera 14 . Rendering module 520 generates view image 17 displayed on monitor 130 based on determined view area 15 . The field-of-view image 17 generated by the rendering module 520 is output to the HMD 120 by the communication control module 540 .
コントロールモジュール510は、HMD120から、ユーザ5のマイク170を用いた発話を検出すると、当該発話に対応する音声データの送信対象のコンピュータ200を特定する。音声データは、コントロールモジュール510によって特定されたコンピュータ200に送信される。コントロールモジュール510は、ネットワーク2を介して他のユーザのコンピュータ200から音声データを受信すると、当該音声データに対応する音声(発話)をスピーカ180から出力する。
When the control module 510 detects an utterance by the user 5 using the microphone 170 from the HMD 120, the control module 510 specifies the computer 200 to which the audio data corresponding to the utterance is to be transmitted. The audio data is sent to the computer 200 specified by control module 510 . When the control module 510 receives voice data from another user's computer 200 via the network 2 , the control module 510 outputs voice (utterance) corresponding to the voice data from the speaker 180 .
メモリモジュール530は、コンピュータ200が仮想空間11をユーザ5に提供するために使用されるデータを保持している。ある局面において、メモリモジュール530は、空間情報と、オブジェクト情報と、ユーザ情報とを保持している。
Memory module 530 holds data used by computer 200 to provide virtual space 11 to user 5 . In one aspect, memory module 530 holds spatial information, object information, and user information.
空間情報は、仮想空間11を提供するために規定された1つ以上のテンプレートを保持している。
The spatial information holds one or more templates defined to provide the virtual space 11. FIG.
オブジェクト情報は、仮想空間11を構成する複数のパノラマ画像13、仮想空間11にオブジェクトを配置するためのオブジェクトデータを含む。パノラマ画像13は、静止画像および動画像を含み得る。パノラマ画像13は、非現実空間の画像と現実空間の画像とを含み得る。非現実空間の画像としては、例えば、コンピュータグラフィックスで生成された画像が挙げられる。
The object information includes a plurality of panoramic images 13 forming the virtual space 11 and object data for arranging objects in the virtual space 11 . Panorama image 13 may include still images and moving images. The panorama image 13 may include an image of unreal space and an image of real space. Images of unreal space include, for example, images generated by computer graphics.
ユーザ情報は、ユーザ5を識別するユーザIDを保持する。ユーザIDは、例えば、ユーザが使用するコンピュータ200に設定されるIP(Internet Protocol)アドレスまたはMAC(Media Access Control)アドレスであり得る。別の局面において、ユーザIDはユーザによって設定され得る。ユーザ情報は、HMDシステム100の制御装置としてコンピュータ200を機能させるためのプログラム等を含む。
User information holds a user ID that identifies the user 5 . The user ID may be, for example, an IP (Internet Protocol) address or a MAC (Media Access Control) address set in the computer 200 used by the user. In another aspect, the user ID can be set by the user. The user information includes programs and the like for causing the computer 200 to function as a control device for the HMD system 100 .
メモリモジュール530に格納されているデータおよびプログラムは、HMD120のユーザ5によって入力される。あるいは、プロセッサ210が、当該コンテンツを提供する事業者が運営するコンピュータ(例えば、サーバ600)からプログラムあるいはデータをダウンロードして、ダウンロードされたプログラムあるいはデータをメモリモジュール530に格納する。
Data and programs stored in memory module 530 are input by user 5 of HMD 120 . Alternatively, processor 210 downloads a program or data from a computer (for example, server 600 ) operated by a content provider, and stores the downloaded program or data in memory module 530 .
通信制御モジュール540は、ネットワーク2を介して、サーバ600その他の情報通信装置と通信し得る。
Communication control module 540 can communicate with server 600 and other information communication devices via network 2 .
ある局面において、コントロールモジュール510及びレンダリングモジュール520は、例えば、ユニティテクノロジーズ社によって提供されるUnity(登録商標)を用いて実現され得る。別の局面において、コントロールモジュール510及びレンダリングモジュール520は、各処理を実現する回路素子の組み合わせとしても実現され得る。
In one aspect, control module 510 and rendering module 520 may be implemented using, for example, Unity® provided by Unity Technologies. In another aspect, the control module 510 and the rendering module 520 can also be implemented as a combination of circuit elements that implement each process.
コンピュータ200における処理は、ハードウェアと、プロセッサ210により実行されるソフトウェアとによって実現される。このようなソフトウェアは、ハードディスクその他のメモリモジュール530に予め格納されている場合がある。ソフトウェアは、CD-ROMその他のコンピュータ読み取り可能な不揮発性のデータ記録媒体に格納されて、プログラム製品として流通している場合もある。あるいは、当該ソフトウェアは、インターネットその他のネットワークに接続されている情報提供事業者によってダウンロード可能なプログラム製品として提供される場合もある。このようなソフトウェアは、光ディスク駆動装置その他のデータ読取装置によってデータ記録媒体から読み取られて、あるいは、通信制御モジュール540を介してサーバ600その他のコンピュータからダウンロードされた後、記憶モジュールに一旦格納される。そのソフトウェアは、プロセッサ210によって記憶モジュールから読み出され、実行可能なプログラムの形式でRAMに格納される。プロセッサ210は、そのプログラムを実行する。
Processing in computer 200 is realized by hardware and software executed by processor 210 . Such software may be pre-stored on a hard disk or other memory module 530 . The software may be distributed as a program product stored in a CD-ROM or other computer-readable non-volatile data recording medium. Alternatively, the software may be provided as a downloadable program product by an information provider connected to the Internet or other network. Such software is read from a data recording medium by an optical disk drive or other data reading device, or downloaded from the server 600 or other computer via the communication control module 540, and then temporarily stored in the storage module. . The software is read from the storage module by processor 210 and stored in RAM in the form of executable programs. Processor 210 executes the program.
[HMDシステムの制御構造]
図11を参照して、HMDセット110の制御構造について説明する。図11は、ある実施の形態に従うHMDセット110において実行される処理の一部を表すシーケンスチャートである。
[Control Structure of HMD System]
The control structure of the HMD set 110 will be described with reference to FIG. FIG. 11 is a sequence chart representing part of the processing performed in HMD set 110 according to one embodiment.
図11に示されるように、ステップS1110において、コンピュータ200のプロセッサ210は、コントロールモジュール510として、仮想空間データを特定し、仮想空間11を定義する。
As shown in FIG. 11, in step S1110, processor 210 of computer 200, as control module 510, specifies virtual space data and defines virtual space 11. As shown in FIG.
ステップS1120において、プロセッサ210は、仮想カメラ14を初期化する。たとえば、プロセッサ210は、メモリのワーク領域において、仮想カメラ14を仮想空間11において予め規定された中心12に配置し、仮想カメラ14の視線をユーザ5が向いている方向に向ける。
At step S1120, processor 210 initializes virtual camera . For example, the processor 210 places the virtual camera 14 at the predefined center 12 in the virtual space 11 in the work area of the memory, and directs the line of sight of the virtual camera 14 in the direction the user 5 is facing.
ステップS1130において、プロセッサ210は、レンダリングモジュール520として、初期の視界画像を表示するための視界画像データを生成する。生成された視界画像データは、通信制御モジュール540によってHMD120に出力される。
In step S1130, processor 210, as rendering module 520, generates view image data for displaying an initial view image. The generated visual field image data is output to HMD 120 by communication control module 540 .
ステップS1132において、HMD120のモニタ130は、コンピュータ200から受信した視界画像データに基づいて、視界画像を表示する。HMD120を装着したユーザ5は、視界画像を視認すると仮想空間11を認識し得る。
In step S<b>1132 , monitor 130 of HMD 120 displays a view image based on the view image data received from computer 200 . The user 5 wearing the HMD 120 can recognize the virtual space 11 by viewing the visual field image.
ステップS1134において、HMDセンサ410は、HMD120から発信される複数の赤外線光に基づいて、HMD120の位置と傾きを検知する。検知結果は、動き検知データとして、コンピュータ200に出力される。
In step S<b>1134 , HMD sensor 410 detects the position and tilt of HMD 120 based on a plurality of infrared rays emitted from HMD 120 . The detection result is output to the computer 200 as motion detection data.
ステップS1140において、プロセッサ210は、HMD120の動き検知データに含まれる位置と傾きとに基づいて、HMD120を装着したユーザ5の視界方向を特定する。
In step S<b>1140 , processor 210 identifies the viewing direction of user 5 wearing HMD 120 based on the position and tilt included in the motion detection data of HMD 120 .
ステップS1150において、プロセッサ210は、アプリケーションプログラムを実行し、アプリケーションプログラムに含まれる命令に基づいて、仮想空間11にオブジェクトを配置する。
In step S1150, processor 210 executes the application program and places objects in virtual space 11 based on instructions included in the application program.
ステップS1160において、コントローラ300は、モーションセンサ420から出力される信号に基づいて、ユーザ5の操作を検出し、その検出された操作を表す検出データをコンピュータ200に出力する。別の局面において、ユーザ5によるコントローラ300の操作は、ユーザ5の周囲に配置されたカメラからの画像に基づいて検出されてもよい。
In step S<b>1160 , controller 300 detects the operation of user 5 based on the signal output from motion sensor 420 and outputs detection data representing the detected operation to computer 200 . In another aspect, manipulation of controller 300 by user 5 may be detected based on images from cameras placed around user 5 .
ステップS1170において、プロセッサ210は、コントローラ300から取得した検出データに基づいて、ユーザ5によるコントローラ300の操作を検出する。
In step S<b>1170 , processor 210 detects an operation of controller 300 by user 5 based on the detection data acquired from controller 300 .
ステップS1180において、プロセッサ210は、ユーザ5によるコントローラ300の操作に基づく視界画像データを生成する。生成された視界画像データは、通信制御モジュール540によってHMD120に出力される。
In step S<b>1180 , processor 210 generates view image data based on the operation of controller 300 by user 5 . The generated visual field image data is output to HMD 120 by communication control module 540 .
ステップS1190において、HMD120は、受信した視界画像データに基づいて視界画像を更新し、更新後の視界画像をモニタ130に表示する。
In step S<b>1190 , HMD 120 updates the field-of-view image based on the received field-of-view image data, and displays the updated field-of-view image on monitor 130 .
[アバターオブジェクト]
図12(A)、(B)を参照して、本実施の形態に従うアバターオブジェクトについて説明する。以下、HMDセット110A,110Bの各ユーザ5のアバターオブジェクトを説明する図である。以下、HMDセット110Aのユーザをユーザ5A、HMDセット110Bのユーザをユーザ5B、HMDセット110Cのユーザをユーザ5C、HMDセット110Dのユーザをユーザ5Dと表す。HMDセット110Aに関する各構成要素の参照符号にAが付され、HMDセット110Bに関する各構成要素の参照符号にBが付され、HMDセット110Cに関する各構成要素の参照符号にCが付され、HMDセット110Dに関する各構成要素の参照符号にDが付される。例えば、HMD120Aは、HMDセット110Aに含まれる。
[Avatar object]
An avatar object according to this embodiment will be described with reference to FIGS. Hereafter, it is a figure explaining the avatar object of each user 5 of HMD set 110A, 110B. Hereinafter, the user of the HMD set 110A is referred to as the user 5A, the user of the HMD set 110B as the user 5B, the user of the HMD set 110C as the user 5C, and the user of the HMD set 110D as the user 5D. A is attached to the reference sign of each component regarding the HMD set 110A, B is attached to the reference sign of each component regarding the HMD set 110B, C is attached to the reference sign of each component regarding the HMD set 110C, and the HMD set A D is attached to the reference number of each component related to 110D. For example, HMD 120A is included in HMD set 110A.
図12(A)は、ネットワーク2において、各HMD120がユーザ5に仮想空間11を提供する状況を表す模式図である。コンピュータ200A~200Dは、HMD120A~120Dを介して、ユーザ5A~5Dに、仮想空間11A~11Dをそれぞれ提供する。図12(A)に示される例において、仮想空間11Aおよび仮想空間11Bは同じデータによって構成されている。換言すれば、コンピュータ200Aとコンピュータ200Bとは同じ仮想空間を共有していることになる。仮想空間11Aおよび仮想空間11Bには、ユーザ5Aのアバターオブジェクト6Aと、ユーザ5Bのアバターオブジェクト6Bとが存在する。仮想空間11Aにおけるアバターオブジェクト6Aおよび仮想空間11Bにおけるアバターオブジェクト6BがそれぞれHMD120を装着しているが、これは説明を分かりやすくするためのものであって、実際にはこれらのオブジェクトはHMD120を装着していない。
FIG. 12A is a schematic diagram showing a situation in which each HMD 120 provides the virtual space 11 to the user 5 in the network 2. FIG. Computers 200A-200D provide users 5A-5D with virtual spaces 11A-11D via HMDs 120A-120D, respectively. In the example shown in FIG. 12A, virtual space 11A and virtual space 11B are configured with the same data. In other words, the computers 200A and 200B share the same virtual space. An avatar object 6A of the user 5A and an avatar object 6B of the user 5B exist in the virtual space 11A and the virtual space 11B. Although the avatar object 6A in the virtual space 11A and the avatar object 6B in the virtual space 11B are each wearing the HMD 120, this is for the sake of clarity of explanation, and in reality these objects are not wearing the HMDs 120. not
ある局面において、プロセッサ210Aは、ユーザ5Aの視界画像17Aを撮影する仮想カメラ14Aを、アバターオブジェクト6Aの目の位置に配置し得る。
In one aspect, processor 210A may position virtual camera 14A capturing view image 17A of user 5A at the eye position of avatar object 6A.
図12(B)は、図12(A)におけるユーザ5Aの視界画像17Aを示す図である。視界画像17Aは、HMD120Aのモニタ130Aに表示される画像である。この視界画像17Aは、仮想カメラ14Aにより生成された画像である。視界画像17Aには、ユーザ5Bのアバターオブジェクト6Bが表示されている。特に図示はしていないが、ユーザ5Bの視界画像にも同様に、ユーザ5Aのアバターオブジェクト6Aが表示されている。
FIG. 12(B) is a diagram showing a field-of-view image 17A of the user 5A in FIG. 12(A). The field-of-view image 17A is an image displayed on the monitor 130A of the HMD 120A. This field-of-view image 17A is an image generated by the virtual camera 14A. An avatar object 6B of the user 5B is displayed in the field-of-view image 17A. Although not particularly illustrated, the avatar object 6A of the user 5A is similarly displayed in the visual field image of the user 5B.
図12(B)の状態において、ユーザ5Aは仮想空間11Aを介してユーザ5Bと対話による通信(コミュニケーション)を図ることができる。より具体的には、マイク170Aにより取得されたユーザ5Aの音声は、サーバ600を介してユーザ5BのHMD120Bに送信され、HMD120Bに設けられたスピーカ180Bから出力される。ユーザ5Bの音声は、サーバ600を介してユーザ5AのHMD120Aに送信され、HMD120Aに設けられたスピーカ180Aから出力される。
In the state of FIG. 12B, the user 5A can communicate with the user 5B through dialogue through the virtual space 11A. More specifically, the voice of user 5A acquired by microphone 170A is transmitted to HMD 120B of user 5B via server 600 and output from speaker 180B provided in HMD 120B. The voice of user 5B is transmitted to HMD 120A of user 5A via server 600, and is output from speaker 180A provided in HMD 120A.
ユーザ5Bの動作(HMD120Bの動作およびコントローラ300Bの動作)は、プロセッサ210Aにより仮想空間11Aに配置されるアバターオブジェクト6Bに反映される。これにより、ユーザ5Aは、ユーザ5Bの動作を、アバターオブジェクト6Bを通じて認識できる。
Actions of the user 5B (actions of the HMD 120B and actions of the controller 300B) are reflected in the avatar object 6B arranged in the virtual space 11A by the processor 210A. Thereby, the user 5A can recognize the action of the user 5B through the avatar object 6B.
図13は、本実施の形態に従うHMDシステム100において実行される処理の一部を表すシーケンスチャートである。図13においては、HMDセット110Dを図示していないが、HMDセット110Dについても、HMDセット110A、110B、110Cと同様に動作する。以下の説明でも、HMDセット110Aに関する各構成要素の参照符号にAが付され、HMDセット110Bに関する各構成要素の参照符号にBが付され、HMDセット110Cに関する各構成要素の参照符号にCが付され、HMDセット110Dに関する各構成要素の参照符号にDが付されるものとする。
FIG. 13 is a sequence chart showing part of the processing executed in HMD system 100 according to the present embodiment. Although the HMD set 110D is not shown in FIG. 13, the HMD set 110D operates similarly to the HMD sets 110A, 110B, and 110C. In the following description, A is attached to the reference sign of each component regarding the HMD set 110A, B is attached to the reference sign of each component regarding the HMD set 110B, and C is attached to the reference sign of each component regarding the HMD set 110C. , and D is added to the reference numeral of each component of the HMD set 110D.
ステップS1310Aにおいて、HMDセット110Aにおけるプロセッサ210Aは、仮想空間11Aにおけるアバターオブジェクト6Aの動作を決定するためのアバター情報を取得する。このアバター情報は、例えば、動き情報、フェイストラッキングデータ、および音声データ等のアバターに関する情報を含む。動き情報は、HMD120Aの位置および傾きの時間的変化を示す情報や、モーションセンサ420A等により検出されたユーザ5Aの手の動きを示す情報などを含む。フェイストラッキングデータは、ユーザ5Aの顔の各パーツの位置および大きさを特定するデータが挙げられる。フェイストラッキングデータは、ユーザ5Aの顔を構成する各器官の動きを示すデータや視線データが挙げられる。音声データは、HMD120Aのマイク170Aによって取得されたユーザ5Aの音声を示すデータが挙げられる。アバター情報には、アバターオブジェクト6A、あるいはアバターオブジェクト6Aに関連付けられるユーザ5Aを特定する情報や、アバターオブジェクト6Aが存在する仮想空間11Aを特定する情報等が含まれてもよい。アバターオブジェクト6Aやユーザ5Aを特定する情報としては、ユーザIDが挙げられる。アバターオブジェクト6Aが存在する仮想空間11Aを特定する情報としては、ルームIDが挙げられる。プロセッサ210Aは、上述のように取得されたアバター情報を、ネットワーク2を介してサーバ600に送信する。
In step S1310A, the processor 210A in the HMD set 110A acquires avatar information for determining the motion of the avatar object 6A in the virtual space 11A. This avatar information includes, for example, information about the avatar such as motion information, face tracking data, and voice data. The movement information includes information indicating temporal changes in the position and tilt of the HMD 120A, information indicating hand movements of the user 5A detected by the motion sensor 420A, and the like. The face tracking data includes data specifying the position and size of each part of the user 5A's face. The face tracking data includes data indicating the movement of each organ that constitutes the face of the user 5A and line-of-sight data. The audio data includes data indicating the audio of the user 5A acquired by the microphone 170A of the HMD 120A. The avatar information may include information specifying the avatar object 6A or the user 5A associated with the avatar object 6A, information specifying the virtual space 11A in which the avatar object 6A exists, and the like. A user ID is mentioned as information which specifies the avatar object 6A and the user 5A. Room ID is mentioned as information which specifies virtual space 11A in which avatar object 6A exists. Processor 210A transmits the avatar information obtained as described above to server 600 via network 2 .
ステップS1310Bにおいて、HMDセット110Bにおけるプロセッサ210Bは、ステップS1310Aにおける処理と同様に、仮想空間11Bにおけるアバターオブジェクト6Bの動作を決定するためのアバター情報を取得し、サーバ600に送信する。同様に、ステップS1310Cにおいて、HMDセット110Cにおけるプロセッサ210Cは、仮想空間11Cにおけるアバターオブジェクト6Cの動作を決定するためのアバター情報を取得し、サーバ600に送信する。
In step S1310B, processor 210B in HMD set 110B acquires avatar information for determining the motion of avatar object 6B in virtual space 11B and transmits it to server 600, as in the process in step S1310A. Similarly, in step S1310C, the processor 210C in the HMD set 110C acquires avatar information for determining the motion of the avatar object 6C in the virtual space 11C and transmits it to the server 600.
ステップS1320において、サーバ600は、HMDセット110A、HMDセット110B、およびHMDセット110Cのそれぞれから受信したプレイヤ情報を一旦記憶する。サーバ600は、各アバター情報に含まれるユーザIDおよびルームID等に基づいて、共通の仮想空間11に関連付けられた全ユーザ(この例では、ユーザ5A~5C)のアバター情報を統合する。そして、サーバ600は、予め定められたタイミングで、統合したアバター情報を当該仮想空間11に関連付けられた全ユーザに送信する。これにより、同期処理が実行される。このような同期処理により、HMDセット110A、HMDセット110B、およびHMDセット110Cは、互いのアバター情報をほぼ同じタイミングで共有することができる。
In step S1320, server 600 temporarily stores the player information received from each of HMD set 110A, HMD set 110B, and HMD set 110C. Server 600 integrates avatar information of all users (users 5A to 5C in this example) associated with common virtual space 11 based on user IDs, room IDs, and the like included in each avatar information. Then, the server 600 transmits the integrated avatar information to all users associated with the virtual space 11 at a predetermined timing. Accordingly, synchronization processing is executed. Such synchronization processing enables the HMD set 110A, the HMD set 110B, and the HMD set 110C to share each other's avatar information at approximately the same timing.
続いて、サーバ600から各HMDセット110A~110Cに送信されたアバター情報に基づいて、各HMDセット110A~110Cは、ステップS1330A~S1330Cの処理を実行する。ステップS1330Aの処理は、図11におけるステップS1180の処理に相当する。
Subsequently, based on the avatar information transmitted from server 600 to each HMD set 110A-110C, each HMD set 110A-110C executes the process of steps S1330A-S1330C. The processing of step S1330A corresponds to the processing of step S1180 in FIG.
ステップS1330Aにおいて、HMDセット110Aにおけるプロセッサ210Aは、仮想空間11Aにおける他のユーザ5B,5Cのアバターオブジェクト6B、アバターオブジェクト6Cの情報を更新する。具体的には、プロセッサ210Aは、HMDセット110Bから送信されたアバター情報に含まれる動き情報に基づいて、仮想空間11におけるアバターオブジェクト6Bの位置および向き等を更新する。例えば、プロセッサ210Aは、メモリモジュール530に格納されたオブジェクト情報に含まれるアバターオブジェクト6Bの情報(位置および向き等)を更新する。同様に、プロセッサ210Aは、HMDセット110Cから送信されたアバター情報に含まれる動き情報に基づいて、仮想空間11におけるアバターオブジェクト6Cの情報(位置および向き等)を更新する。
In step S1330A, the processor 210A in the HMD set 110A updates information on the avatar objects 6B and 6C of the other users 5B and 5C in the virtual space 11A. Specifically, the processor 210A updates the position, orientation, etc. of the avatar object 6B in the virtual space 11 based on the motion information included in the avatar information transmitted from the HMD set 110B. For example, processor 210A updates the information (such as position and orientation) of avatar object 6B contained in the object information stored in memory module 530. FIG. Similarly, the processor 210A updates the information (position, orientation, etc.) of the avatar object 6C in the virtual space 11 based on the motion information included in the avatar information transmitted from the HMD set 110C.
ステップS1330Bにおいて、HMDセット110Bにおけるプロセッサ210Bは、ステップS1330Aにおける処理と同様に、仮想空間11Bにおけるユーザ5A,5Cのアバターオブジェクト6A,6Cの情報を更新する。同様に、ステップS1330Cにおいて、HMDセット110Cにおけるプロセッサ210Cは、仮想空間11Cにおけるユーザ5A,5Bのアバターオブジェクト6A,6Bの情報を更新する。
In step S1330B, processor 210B in HMD set 110B updates information on avatar objects 6A and 6C of users 5A and 5C in virtual space 11B, similar to the process in step S1330A. Similarly, in step S1330C, the processor 210C in the HMD set 110C updates information on the avatar objects 6A, 6B of the users 5A, 5B in the virtual space 11C.
[モジュールの詳細構成]
図14を参照して、コンピュータ200のモジュール構成の詳細について説明する。図14は、ある実施の形態に従うコンピュータ200のモジュールの詳細構成を表わすブロック図である。図14に示されるように、コントロールモジュール510は、仮想オブジェクト生成モジュール1421、仮想カメラ制御モジュール1422、操作オブジェクト制御モジュール1423、アバターオブジェクト制御モジュール1424、動き検出モジュール1425、衝突検出モジュール1426、仮想オブジェクト制御モジュール1427、課金処理モジュール1428、および決済処理モジュール1429を備えている。
[Detailed module configuration]
Details of the module configuration of the computer 200 will be described with reference to FIG. FIG. 14 is a block diagram showing the detailed configuration of the modules of computer 200 according to one embodiment. As shown in FIG. 14, the control module 510 includes a virtual object generation module 1421, a virtual camera control module 1422, a manipulated object control module 1423, an avatar object control module 1424, a motion detection module 1425, a collision detection module 1426, a virtual object control module 1421, a It has a module 1427 , a billing processing module 1428 , and a payment processing module 1429 .
仮想オブジェクト生成モジュール1421は、各種の仮想オブジェクトを仮想空間11に生成する。ある局面において、仮想オブジェクトは、例えば、ゲームのストーリーの進行に従って配置される森、山その他を含む風景、動物等を含み得る。ある局面において、仮想オブジェクトは、アバターオブジェクト、操作オブジェクト、およびステージオブジェクト、UI(User Interface)オブジェクトを含み得る。
A virtual object generation module 1421 generates various virtual objects in the virtual space 11 . In one aspect, the virtual objects may include, for example, landscapes including forests, mountains, etc., animals, etc. arranged according to the progress of the story of the game. In one aspect, the virtual object may include an avatar object, an operation object, a stage object, and a UI (User Interface) object.
仮想カメラ制御モジュール1422は、仮想空間11における仮想カメラ14の挙動を制御する。仮想カメラ制御モジュール1422は、例えば、仮想空間11における仮想カメラ14の配置位置と、仮想カメラ14の向き(傾き)とを制御する。
The virtual camera control module 1422 controls behavior of the virtual camera 14 in the virtual space 11 . The virtual camera control module 1422 controls, for example, the arrangement position of the virtual camera 14 in the virtual space 11 and the orientation (inclination) of the virtual camera 14 .
操作オブジェクト制御モジュール1423は、仮想空間11においてユーザ5の操作を受け付けるための操作オブジェクトを制御する。ユーザ5は、操作オブジェクトを操作することによって、例えば、仮想空間11に配置される仮想オブジェクトを操作する。ある局面において、操作オブジェクトは、例えば、HMD120を装着したユーザ5の手に相当する手オブジェクト(仮想手)等を含み得る。ある局面において、操作オブジェクトは、後述するアバターオブジェクトの手の部分に相当し得る。
The manipulation object control module 1423 controls manipulation objects for receiving manipulations by the user 5 in the virtual space 11 . The user 5 operates, for example, a virtual object placed in the virtual space 11 by operating the operation object. In one aspect, the operation object may include, for example, a hand object (virtual hand) corresponding to the hand of user 5 wearing HMD 120 . In one aspect, the manipulation object can correspond to a hand portion of an avatar object, which will be described later.
アバターオブジェクト制御モジュール1424は、HMDセンサ410が検出するHMD120の動きをアバターオブジェクトに反映する。例えば、アバターオブジェクト制御モジュール1424は、HMD120が傾いたことを検知して、アバターオブジェクトを傾けて配置するためのデータを生成する。ある局面において、アバターオブジェクト制御モジュール1424は、コントローラ300の動きをアバターオブジェクトに反映する。この場合、コントローラ300は、コントローラ300の動きを検知するためのモーションセンサ、加速度センサ、または複数の発光素子(例えば、赤外線LED)などを備える。アバターオブジェクト制御モジュール1424は、動き検出モジュール1425が検出した顔器官の動作を、仮想空間11に配置されるアバターオブジェクトの顔に反映させる。つまり、アバターオブジェクト制御モジュール1424は、ユーザ5の顔の動作をアバターオブジェクトに反映する。
Avatar object control module 1424 reflects the movement of HMD 120 detected by HMD sensor 410 on the avatar object. For example, the avatar object control module 1424 detects that the HMD 120 is tilted and generates data for tilting and arranging the avatar object. In one aspect, the avatar object control module 1424 reflects movements of the controller 300 on the avatar object. In this case, controller 300 includes a motion sensor, an acceleration sensor, a plurality of light emitting elements (for example, infrared LEDs), or the like for detecting movement of controller 300 . The avatar object control module 1424 reflects the motion of facial organs detected by the motion detection module 1425 on the face of the avatar object placed in the virtual space 11 . That is, the avatar object control module 1424 reflects the motion of the user 5's face on the avatar object.
動き検出モジュール1425は、ユーザ5の動きを検出する。動き検出モジュール1425は、例えば、コントローラ300の出力に応じて、ユーザ5の手の動きを検出する。動き検出モジュール1425は、例えば、ユーザ5の身体に装着されるモーションセンサの出力に応じて、ユーザ5の身体の動きを検出する。動き検出モジュール1425は、ユーザ5の顔器官の動作を検出することもできる。
Motion detection module 1425 detects motion of user 5 . The motion detection module 1425 detects motion of the hand of the user 5 according to the output of the controller 300, for example. The motion detection module 1425 detects body motion of the user 5 according to the output of a motion sensor attached to the body of the user 5, for example. The motion detection module 1425 can also detect motion of the user's 5 facial features.
衝突検出モジュール1426は、仮想空間11に配置される仮想オブジェクトのそれぞれが、他の仮想オブジェクトと衝突した場合に、当該衝突を検出する。衝突検出モジュール1426は、例えば、ある仮想オブジェクトと、別の仮想オブジェクトとが触れたタイミングを検出することができる。衝突検出モジュール1426は、ある仮想オブジェクトと他の仮想オブジェクトとが触れている状態から離れたタイミングを検出することができる。衝突検出モジュール1426は、ある仮想オブジェクトと他の仮想オブジェクトとが触れている状態であることを検出することもできる。衝突検出モジュール1426は、例えば、操作オブジェクトと、他の仮想オブジェクトとが触れたときに、これら操作オブジェクトと他のオブジェクトとが触れたことを検出する。衝突検出モジュール1426は、これらの検出結果に基づいて、予め定められた処理を実行する。
The collision detection module 1426 detects a collision when each virtual object placed in the virtual space 11 collides with another virtual object. Collision detection module 1426 may, for example, detect when one virtual object touches another virtual object. Collision detection module 1426 can detect when one virtual object is out of touch with another virtual object. Collision detection module 1426 can also detect when one virtual object is in contact with another virtual object. The collision detection module 1426 detects that the operating object touches another virtual object, for example, when the operating object touches another virtual object. Collision detection module 1426 performs predetermined processing based on these detection results.
仮想オブジェクト制御モジュール1427は、仮想空間11において、アバターオブジェクトを除く仮想オブジェクトの挙動を制御する。一例として、仮想オブジェクト制御モジュール1427は、仮想オブジェクトを変形させる。別の例として、仮想オブジェクト制御モジュール1427は、仮想オブジェクトの配置位置を変更する。別の例として、仮想オブジェクト制御モジュール1427は、仮想オブジェクトを移動させる。
The virtual object control module 1427 controls behavior of virtual objects other than avatar objects in the virtual space 11 . As an example, virtual object control module 1427 deforms the virtual object. As another example, the virtual object control module 1427 changes the placement position of the virtual object. As another example, virtual object control module 1427 moves virtual objects.
課金処理モジュール1428は、課金に関する処理を実行する。
Billing processing module 1428 executes processing related to billing.
決済処理モジュール1429は、決済に関する処理を実行する。
The payment processing module 1429 executes processing related to payment.
[視聴者の仮想空間]
図15は、ある実施の形態に従う仮想空間11Aおよび視界画像1517Aを示す図である。図15(A)では、ユーザ5A(第1ユーザ)に仮想体験を提供するための仮想空間11Aに、アバターオブジェクト6A~6D、仮想カメラ14A、およびステージオブジェクト1532が少なくとも配置される。ユーザ5Aは、頭部にHMD120Aを装着している。ユーザ5Aは、ユーザ5Aの身体の右側の一部を構成する右手(第1部位)で右コントローラ300RAを把持し、ユーザ5Aの身体の左側の一部を構成する左手(第2部位)で左コントローラ300LAを把持している。アバターオブジェクト6A(第1アバター)は、仮想右手1531RAおよび仮想左手1531LAを含む。仮想右手1531RAは操作オブジェクトの一種であり、ユーザ5Aの右手の動きに応じて仮想空間11Aにおいて動くことができる。仮想左手1531LAは操作オブジェクトの一種であり、ユーザ5Aの左手の動きに応じて仮想空間11Aにおいて動くことができる。
[Viewer's virtual space]
FIG. 15 is a diagram showing virtual space 11A and view image 1517A according to one embodiment. In FIG. 15A, at least avatar objects 6A to 6D, a virtual camera 14A, and a stage object 1532 are placed in a virtual space 11A for providing a virtual experience to a user 5A (first user). User 5A wears HMD 120A on the head. The user 5A holds the right controller 300RA with the right hand (first part) forming part of the right side of user 5A's body, and holds the left controller 300RA with the left hand (second part) forming part of the left side of user 5A's body. It holds the controller 300LA. Avatar object 6A (first avatar) includes virtual right hand 1531RA and virtual left hand 1531LA. The virtual right hand 1531RA is a kind of operation object, and can move in the virtual space 11A according to the movement of the right hand of the user 5A. The virtual left hand 1531LA is a kind of operation object, and can move in the virtual space 11A according to the movement of the left hand of the user 5A.
図15(A)に示す仮想空間11Aは、コンピュータ200Aにおいてライブコンテンツが再生されることによって、構築される。仮想空間11Aにおいて、アバターオブジェクト6Bは、ライブの演者としてパフォーマンスを実行し、アバターオブジェクト6Aを含む他のアバターオブジェクトは、ライブの視聴者としてパフォーマンスを視聴する。仮想空間11Aにおいて、アバターオブジェクト6A~6Dは、それぞれ、ユーザ5A~5Dに個別に関連付けられている。
A virtual space 11A shown in FIG. 15A is constructed by playing live content on computer 200A. In virtual space 11A, avatar object 6B performs a performance as a live performer, and other avatar objects including avatar object 6A watch the performance as live viewers. In the virtual space 11A, avatar objects 6A-6D are individually associated with users 5A-5D, respectively.
仮想空間11Aにおいて、アバターオブジェクト6B(第2アバター)は、ステージオブジェクト1532上に配置される。ステージオブジェクト1532は、現実のライブ会場におけるステージを模した外観を有している。アバターオブジェクト6A、6C、および6Dは、いずれも、ステージオブジェクト1532の手前に配置される。仮想空間11Aにおいて、アバターオブジェクト6Bは、ユーザ5B(第2ユーザ)の動きに応じて動くことによって、ライブのパフォーマンスを実行する。仮想空間11Aにおいて、アバターオブジェクト6Aは、アバターオブジェクト6Bによるパフォーマンスを視聴する。このとき、ユーザ5Cに提供される仮想空間11Cにおいて、アバターオブジェクト6Cは、アバターオブジェクト6Bによって実行されたパフォーマンスを視聴する。同様に、ユーザ5Dに提供される仮想空間11Dにおいて、アバターオブジェクト6Dは、アバターオブジェクト6Bによって実行されたパフォーマンスを視聴する。したがって、ユーザ5Bが演者であり、かつ、ユーザ5A、5C、および5Dが視聴者であるとも言える。
The avatar object 6B (second avatar) is placed on the stage object 1532 in the virtual space 11A. The stage object 1532 has an appearance that imitates a stage in a real live venue. Avatar objects 6A, 6C, and 6D are all placed in front of stage object 1532 . In the virtual space 11A, the avatar object 6B performs a live performance by moving according to the movement of the user 5B (second user). In the virtual space 11A, the avatar object 6A watches the performance by the avatar object 6B. At this time, the avatar object 6C watches the performance performed by the avatar object 6B in the virtual space 11C provided to the user 5C. Similarly, in virtual space 11D provided to user 5D, avatar object 6D watches the performance performed by avatar object 6B. Therefore, it can be said that the user 5B is the performer and the users 5A, 5C and 5D are the viewers.
図15(A)において、仮想カメラ14Aは、アバターオブジェクト6Aの頭部に配置される。仮想カメラ14Aは、仮想カメラ14Aの位置および向きに応じた視界領域15Aを規定する。仮想カメラ14Aは、視界領域15Aに対応する視界画像1517Aを生成して、図15(B)に示すようにHMD120Aに表示させる。ユーザ5Aは、視界画像1517Aを視認することによって、アバターオブジェクト6Aの視点で仮想空間の一部を視認する。これにより、ユーザ5Aは、あたかもユーザ5A自身がアバターオブジェクト6Aであるかのような仮想体験を、得ることができる。視界画像1517Aには、パフォーマンスを実行するアバターオブジェクト6Bが含まれる。したがって、ユーザ5Aは、アバターオブジェクト6Bによるパフォーマンスを、アバターオブジェクト6Aの視点で視聴することができる。
In FIG. 15A, the virtual camera 14A is arranged on the head of the avatar object 6A. The virtual camera 14A defines a viewing area 15A according to the position and orientation of the virtual camera 14A. The virtual camera 14A generates a field-of-view image 1517A corresponding to the field-of-view area 15A, and displays it on the HMD 120A as shown in FIG. 15(B). The user 5A visually recognizes a part of the virtual space from the viewpoint of the avatar object 6A by visually recognizing the view image 1517A. Thereby, the user 5A can obtain a virtual experience as if the user 5A were the avatar object 6A. View image 1517A includes avatar object 6B performing a performance. Therefore, the user 5A can view the performance by the avatar object 6B from the viewpoint of the avatar object 6A.
仮想空間11Aには、異なる複数のアバターオブジェクト6Bが配置されることもできる。ある局面では、複数のアバターオブジェクト6Bにそれぞれ異なるユーザ5が関連付けられる。別の局面では、複数のアバターオブジェクト6Bに同一のユーザ5Bが関連付けられる。
A plurality of different avatar objects 6B can also be arranged in the virtual space 11A. In one aspect, different users 5 are associated with the plurality of avatar objects 6B. In another aspect, the same user 5B is associated with multiple avatar objects 6B.
[演者の仮想空間]
図16は、ある実施の形態に従う仮想空間11Bおよび視界画像1617Bを示す図である。図16(A)では、ユーザ5Bに仮想体験を提供するための仮想空間11Bに、アバターオブジェクト6A~6D、仮想カメラ14B、およびステージオブジェクト1532が少なくとも配置される。ユーザ5Bは、頭部にHMD120Bを装着している。ユーザ5Bは、ユーザ5Bの身体の右側の一部を構成する右手(第1部位)で右コントローラ300RBを把持し、ユーザ5Bの身体の左側の一部を構成する左手(第2部位)で左コントローラ300LBを把持している。
[Performer's virtual space]
FIG. 16 is a diagram showing virtual space 11B and view image 1617B according to one embodiment. In FIG. 16A, at least avatar objects 6A-6D, a virtual camera 14B, and a stage object 1532 are placed in a virtual space 11B for providing a virtual experience to a user 5B. User 5B wears HMD 120B on the head. The user 5B holds the right controller 300RB with the right hand (first part) forming part of the right side of the body of the user 5B, and holds the right controller 300RB with the left hand (second part) forming part of the left side of the body of the user 5B. It holds the controller 300LB.
HMD120Bは、モーションセンサとして機能するセンサ190を備える。右コントローラ300RBおよび左コントローラ300LBは、モーションセンサ420を備える。ユーザ5Bは、さらに、モーションセンサ1641~1643を装着している。モーションセンサ1641は、ベルト1644によってユーザ5Bの腰部に装着されている。モーションセンサ1642は、ユーザ5Bの右足の甲に装着されている。モーションセンサ1643は、ユーザ5Bのユーザ5Bの左足の甲に装着されている。モーションセンサ1641~1643は、有線または無線によってコンピュータ200Bに接続されている。
HMD 120B includes sensor 190 that functions as a motion sensor. Right controller 300RB and left controller 300LB include motion sensors 420 . User 5B also wears motion sensors 1641-1643. A motion sensor 1641 is attached to the waist of the user 5B by a belt 1644. FIG. The motion sensor 1642 is attached to the instep of the right foot of the user 5B. The motion sensor 1643 is attached to the instep of the user 5B's left foot. Motion sensors 1641-1643 are wired or wirelessly connected to computer 200B.
ある局面において、ユーザ5Bに装着されるモーションセンサは、ベースステーション(図示しない)から照射される信号(例えば赤外線レーザ)の到達時間と角度とを検出する。コンピュータ200Bのプロセッサ210B(以下、単にプロセッサ210B)は、モーションセンサの検出結果に基づいて、ベースステーションに対するモーションセンサの位置を検出する。プロセッサ210Bは、さらに、ベースステーションに対するモーションセンサの位置を、所定点(例えば頭部に装着されたセンサ190の位置)を基準として規格化してもよい。
In one aspect, a motion sensor worn by user 5B detects the arrival time and angle of a signal (eg, an infrared laser) emitted from a base station (not shown). A processor 210B (hereinafter simply processor 210B) of computer 200B detects the position of the motion sensor with respect to the base station based on the detection result of the motion sensor. Processor 210B may also normalize the positions of the motion sensors relative to the base station relative to a predetermined point (eg, the position of head-mounted sensor 190).
アバターオブジェクト6Bは、仮想右手1531RBおよび仮想左手1531LBを含む。仮想右手1531RBは操作オブジェクトの一種であり、ユーザ5Bの右手の動きに応じて仮想空間11Bにおいて動くことができる。仮想左手1531LAは操作オブジェクトの一種であり、ユーザ5Bの左手の動きに応じて仮想空間11Bにおいて動くことができる。
Avatar object 6B includes virtual right hand 1531RB and virtual left hand 1531LB. The virtual right hand 1531RB is a kind of operation object, and can move in the virtual space 11B according to the movement of the right hand of the user 5B. The virtual left hand 1531LA is a kind of operation object, and can move in the virtual space 11B according to the movement of the left hand of the user 5B.
図16(A)に示す仮想空間11Bは、コンピュータ200Bにおいてライブコンテンツが再生されることによって、構築される。仮想空間11Aおよび11Bは、サーバ600の制御に応じて互いに同期している。ユーザ5Bは、アバターオブジェクト6Bにパフォーマンスを実行させるために、自身の身体を動かす。コンピュータ200Bは、ユーザ5Bに装着される各種のモーションセンサの出力に基づいて、ユーザ5Bの動きを検出する。仮想空間11Bにおいて、アバターオブジェクト6Bは、特定されたユーザ5Bの動きに応じて、現実空間におけるユーザ5Bの動きが反映されたパフォーマンスを実行する。仮想空間11Bにおいて、アバターオブジェクト6A、6C、および6Dは、アバターオブジェクト6Bによるパフォーマンスを視聴する。仮想空間11Bにおいてアバターオブジェクト6Bがユーザ5Bに動きに応じたパフォーマンスを実行すると、それに同期して、仮想空間11A、11C、および11Dにおいてもアバターオブジェクト6Bが同じパフォーマンスを実行する。このように、ユーザ5Bは、アバターオブジェクト6Bによるライブを、ユーザ5A、5C、および5Dにそれぞれ配信する配信者としての役割を有する。
A virtual space 11B shown in FIG. 16A is constructed by playing live content on a computer 200B. The virtual spaces 11A and 11B are synchronized with each other under the control of the server 600. FIG. The user 5B moves his/her own body to cause the avatar object 6B to perform the performance. The computer 200B detects the movement of the user 5B based on the outputs of various motion sensors attached to the user 5B. In the virtual space 11B, the avatar object 6B performs a performance reflecting the movement of the user 5B in the real space according to the specified movement of the user 5B. In virtual space 11B, avatar objects 6A, 6C, and 6D watch a performance by avatar object 6B. When the avatar object 6B performs a performance according to the movement of the user 5B in the virtual space 11B, the avatar object 6B also performs the same performance in the virtual spaces 11A, 11C, and 11D in synchronization therewith. In this way, user 5B has a role as a distributor who distributes a live performance by avatar object 6B to users 5A, 5C, and 5D, respectively.
図16(A)において、仮想カメラ14Bは、アバターオブジェクト6Bの頭部に配置される。仮想カメラ14Bは、仮想カメラ14Bの位置および向きに応じた視界領域15Bを規定する。仮想カメラ14Bは、視界領域15Bに対応する視界画像1617Bを生成して、図16(B)に示すようにHMD120Bに表示させる。ユーザ5Bは、視界画像1617Bを視認することによって、アバターオブジェクト6Bの視点で仮想空間の一部を視認する。これにより、ユーザ5Bは、あたかもユーザ5B自身がアバターオブジェクト6Bであるかのような仮想体験を、得ることができる。視界画像1617Bには、パフォーマンスを視聴するアバターオブジェクト6A、6C、および6Dが含まれる。したがって、ユーザ5Bは、アバターオブジェクト6Bによるパフォーマンスを視聴するアバターオブジェクト6A、6C、および6Dの様子を、アバターオブジェクト6Bの視点で把握することができる。
In FIG. 16A, the virtual camera 14B is placed on the head of the avatar object 6B. The virtual camera 14B defines a viewing area 15B according to the position and orientation of the virtual camera 14B. The virtual camera 14B generates a field-of-view image 1617B corresponding to the field-of-view area 15B, and displays it on the HMD 120B as shown in FIG. 16(B). The user 5B visually recognizes a part of the virtual space from the viewpoint of the avatar object 6B by visually recognizing the view image 1617B. Thereby, the user 5B can obtain a virtual experience as if the user 5B himself were the avatar object 6B. View image 1617B includes avatar objects 6A, 6C, and 6D viewing the performance. Therefore, the user 5B can grasp the state of the avatar objects 6A, 6C, and 6D watching the performance by the avatar object 6B from the viewpoint of the avatar object 6B.
[ライブ配信フロー]
図17は、HMDシステム100において実行される処理の一例を示すシーケンス図である。以下では、仮想空間11Bにおいて行われるアバターオブジェクト6Bのライブを、コンピュータ200Bからコンピュータ200Aに対して配信するための一連の処理を説明する。コンピュータ200Cおよび200Dに対しても、同様の一連の処理に基づいてアバターオブジェクト6Bのライブが配信される。
[Live streaming flow]
FIG. 17 is a sequence diagram showing an example of processing executed in the HMD system 100. As shown in FIG. A series of processes for distributing the live performance of the avatar object 6B performed in the virtual space 11B from the computer 200B to the computer 200A will be described below. Avatar object 6B is also distributed live to computers 200C and 200D based on a similar series of processing.
ステップS1701において、プロセッサ210Bは、ユーザ5Bに装着されたモーションセンサから、ユーザ5Bの頭部、腰部、両手、および両足の位置を検出する。以下、各モーションセンサによって検出されるユーザ5Bの部位の位置を「位置情報」とも言う。ステップS1702において、プロセッサ210Bは、ユーザ5Bの現在の位置情報と、予め取得されたユーザ5Bの寸法データとに基づいて、ユーザ5Bの関節の回転方向を算出する。寸法データは、ユーザ5Bの身体の寸法を表すデータである。寸法データおよび回転方向については後述する。現在の位置情報を検出することおよび回転方向を算出すること、ユーザ5Bの動きを検出することと同義である。
In step S1701, processor 210B detects the positions of user 5B's head, waist, both hands, and both feet from the motion sensors worn by user 5B. Hereinafter, the positions of the parts of the user 5B detected by each motion sensor are also referred to as "positional information". In step S1702, the processor 210B calculates the rotational directions of the joints of the user 5B based on the current position information of the user 5B and the pre-acquired dimension data of the user 5B. The dimension data is data representing the body dimension of the user 5B. Dimensional data and the direction of rotation will be described later. Detecting the current position information, calculating the direction of rotation, and detecting the movement of the user 5B are synonymous.
ステップS1703において、プロセッサ210Bは、現在の位置情報および回転方向に基づいて、仮想空間11Bに配置されるアバターオブジェクト6Bを動かす。プロセッサ210Bは、例えば、右肩の回転方向に基づいて、アバターオブジェクト6Bの右上腕部を動かす。プロセッサ210Bはさらに、現在の位置情報(例えば現在の腰部の位置情報)に基づいて、アバターオブジェクト6Bの仮想空間11Bにおける位置を動かす。これにより、プロセッサ210Bは、現実空間のユーザ5Bの動きが仮想空間のアバターオブジェクト6Bに反映させる。言い換えれば、プロセッサ210Bは、アバターオブジェクト6Bに、ユーザ5Bの動きに応じたパフォーマンスを実行させる。
At step S1703, the processor 210B moves the avatar object 6B placed in the virtual space 11B based on the current position information and the rotation direction. Processor 210B moves the right upper arm of avatar object 6B, for example, based on the rotation direction of the right shoulder. The processor 210B further moves the position of the avatar object 6B in the virtual space 11B based on the current position information (for example, current waist position information). Thereby, the processor 210B reflects the movement of the user 5B in the real space on the avatar object 6B in the virtual space. In other words, the processor 210B causes the avatar object 6B to perform a performance according to the movements of the user 5B.
ユーザ5Bの動きをアバターオブジェクト6Bに反映させるための処理は、上述した位置情報および回転方向に応じた処理に限定されない。プロセッサ210Bは、例えば、回転方向を算出することなく、ユーザ5Bの動きに応じてアバターオブジェクト6Bを動かすこともできる。プロセッサ210Bは、例えば、ユーザ5Bの身体を構成する各部位の位置に対応するように、ユーザ5Bの各部位に対応するアバターオブジェクト6Bの各部位オブジェクトの位置を制御するようにしてもよい。
The processing for reflecting the movement of the user 5B on the avatar object 6B is not limited to the processing according to the above-described positional information and rotation direction. Processor 210B may, for example, move avatar object 6B in response to movement of user 5B without calculating the direction of rotation. For example, the processor 210B may control the position of each part object of the avatar object 6B corresponding to each part of the user 5B so as to correspond to the position of each part constituting the body of the user 5B.
ステップS1704において、プロセッサ210Bは、パフォーマンスを実行した際のアバターオブジェクト6Bの動きを表す動き情報を生成し、この動き情報を含むアバターオブジェクト6Bのアバター情報をサーバ600に送信する。
In step S<b>1704 , processor 210</b>B generates motion information representing the motion of avatar object 6</b>B when performing the performance, and transmits avatar information of avatar object 6</b>B including this motion information to server 600 .
ステップS1710において、コンピュータ200Aのプロセッサ210A(以下、単にプロセッサ210A)は、アバターオブジェクト6Aのアバター情報をサーバに送信する。ステップS1720において、サーバ600は、仮想空間11Aおよび11Bを同期するための同期処理を実行する。詳細には、サーバ600は、コンピュータ200Bから受信したアバターオブジェクト6Bのアバター情報を、コンピュータ200Aに送信する。サーバ600は、さらに、コンピュータ200Aから受信したアバターオブジェクト6Aのアバター情報を、コンピュータ200Bに送信する。
In step S1710, processor 210A of computer 200A (hereinafter simply processor 210A) transmits avatar information of avatar object 6A to the server. In step S1720, server 600 executes synchronization processing for synchronizing virtual spaces 11A and 11B. Specifically, server 600 transmits the avatar information of avatar object 6B received from computer 200B to computer 200A. Server 600 further transmits the avatar information of avatar object 6A received from computer 200A to computer 200B.
ステップS1705において、プロセッサ210Bは、サーバ600から送信されたアバターオブジェクト6Aのアバター情報を受信する。ステップS1706において、プロセッサ210Bは、受信したアバター情報に基づいて、仮想空間11Bにおいてアバターオブジェクトを制御する。これにより、仮想空間11Aにおけるアバターオブジェクト6Aの挙動が、仮想空間11Bにおけるアバターオブジェクト6Aに反映される。言い換えれば、アバターオブジェクト6Aの挙動が、仮想空間11Aおよび11Bにおいて同期される。例えば、仮想空間11Aにおいてアバターオブジェクト6Aが移動した場合、仮想空間11Bにおいてもアバターオブジェクト6Aは同様に移動する。
At step S<b>1705 , the processor 210</b>B receives the avatar information of the avatar object 6</b>A transmitted from the server 600 . At step S1706, processor 210B controls the avatar object in virtual space 11B based on the received avatar information. Thereby, the behavior of the avatar object 6A in the virtual space 11A is reflected in the avatar object 6A in the virtual space 11B. In other words, the behavior of avatar object 6A is synchronized in virtual spaces 11A and 11B. For example, when the avatar object 6A moves in the virtual space 11A, the avatar object 6A also moves in the virtual space 11B.
ステップS1711において、プロセッサ210Aは、サーバ600から送信されたアバターオブジェクト6Bのアバター情報を受信する。ステップS1712において、プロセッサ210Aは、受信したアバター情報に含まれる動き情報に基づいて、アバターオブジェクト6Bを動かす。これにより、プロセッサ210Bは、現実空間のユーザ5Bの動きを、仮想空間11Aに配置されるアバターオブジェクト6Bに反映させる。言い換えれば、プロセッサ210Aは、仮想空間11Aにおいて、アバターオブジェクト6Bにユーザ5Bの動きに応じたパフォーマンスを実行させる。これにより、仮想空間11Bにおけるアバターオブジェクト6Bの挙動が、仮想空間11Aにおけるアバターオブジェクト6Bに反映される。言い換えれば、アバターオブジェクト6Bの挙動が、仮想空間11Aおよび11Bにおいて同期される。例えば、仮想空間11Bにおいてアバターオブジェクト6Bが第1パフォーマンスを実行した場合、仮想空間11Aにおいてもアバターオブジェクト6Bは同様に第1パフォーマンスを実行する。このようにして、仮想空間11Bにおけるアバターオブジェクト6Bのライブが、仮想空間11Aに配信される。
At step S1711, the processor 210A receives the avatar information of the avatar object 6B transmitted from the server 600. FIG. At step S1712, the processor 210A moves the avatar object 6B based on the motion information included in the received avatar information. Thereby, the processor 210B reflects the movement of the user 5B in the physical space on the avatar object 6B arranged in the virtual space 11A. In other words, the processor 210A causes the avatar object 6B to perform a performance according to the movement of the user 5B in the virtual space 11A. Thereby, the behavior of the avatar object 6B in the virtual space 11B is reflected in the avatar object 6B in the virtual space 11A. In other words, the behavior of avatar object 6B is synchronized in virtual spaces 11A and 11B. For example, when the avatar object 6B performs the first performance in the virtual space 11B, the avatar object 6B similarly performs the first performance in the virtual space 11A. In this way, the live performance of the avatar object 6B in the virtual space 11B is delivered to the virtual space 11A.
図示しないが、プロセッサ210Bは、ユーザ5Bが発した音声を、マイク170Bを用いて録音する。プロセッサ210Bは、ユーザ5Bの音声を表す音声データを生成し、サーバ600に送信する。サーバ600は、受信したユーザ5Bの音声データを、同期処理によってコンピュータ200Aに送信する。プロセッサ210Aは、受信したユーザ5Bの音声データが表す音声を、スピーカ180Aに出力する。これらの一連の処理の結果、ユーザ5Aは、ライブ中にユーザ5Bが発した音声を、リアルタイムに聴取することができる。
Although not shown, the processor 210B records the voice uttered by the user 5B using the microphone 170B. The processor 210B generates voice data representing the voice of the user 5B and transmits it to the server 600. FIG. The server 600 transmits the received voice data of the user 5B to the computer 200A by synchronous processing. The processor 210A outputs the voice represented by the received voice data of the user 5B to the speaker 180A. As a result of these series of processes, the user 5A can listen in real time to the voice uttered by the user 5B during the live performance.
[寸法データの取得]
図18は、寸法データの取得方法を説明するための図である。図18(A)は、ユーザ5Bが、正面を向き、両手を水平に広げ、起立している状態を表す。以下、図18(A)に示される状態を第1姿勢とも言う。図18(B)は、ユーザ5Bが、正面を向き、両手を太もも側面に下ろし、起立している状態を表す。以下、図18(B)に示される状態を第2姿勢とも言う。
[Acquisition of dimension data]
FIG. 18 is a diagram for explaining a method of acquiring dimension data. FIG. 18A shows a state in which the user 5B faces the front, spreads both hands horizontally, and stands up. Hereinafter, the state shown in FIG. 18A is also referred to as the first posture. FIG. 18B shows a state in which the user 5B faces the front, puts both hands on the sides of the thighs, and stands up. Hereinafter, the state shown in FIG. 18B is also referred to as the second posture.
ある局面において、プロセッサ210Bは、ユーザ5Bに対し第1姿勢および第2姿勢をとるように促す。一例として、プロセッサ210Bは、第1姿勢および第2姿勢のキャラクタをモニタ130Bに表示し、同様の姿勢をとる旨のメッセージを表示する。他の例として、プロセッサ210Bは、第1姿勢および第2姿勢をとる旨の音声をスピーカ180Bから出力してもよい。
In one aspect, processor 210B prompts user 5B to take a first pose and a second pose. As an example, processor 210B displays the characters in the first and second poses on monitor 130B and displays a message to the effect that they will take similar poses. As another example, the processor 210B may output a voice indicating that the first posture and the second posture are taken from the speaker 180B.
プロセッサ210Bは、2つの姿勢(第1姿勢と第2姿勢)のそれぞれにおいて、ユーザ5Bに装着されたモーションセンサの出力に基づいてユーザ5Bの頭部、腰部、両手、両足の位置情報を取得する。これら位置情報は、図19に示されるように実座標系(x、y、z)における位置として取得され得る。
The processor 210B acquires position information of the head, waist, hands, and feet of the user 5B based on the outputs of the motion sensors worn by the user 5B in each of the two postures (the first posture and the second posture). . These position information can be obtained as positions in the real coordinate system (x, y, z) as shown in FIG.
プロセッサ210Bは、2つの姿勢に対応する位置情報からユーザ5Bの寸法データを算出する。ある実施形態において、プロセッサ210Bは、図20に示されるように、ユーザ5Bの身長、肩幅、腕の長さ、足の長さ、頭部から肩までの高さを寸法データとして算出する。プロセッサ210Bは、第2姿勢における両手の間隔を肩幅として算出し得る。プロセッサ210Bは、第1姿勢における両手の間隔から肩幅を差し引いた値の半分を腕の長さとして算出し得る。プロセッサ210Bは、足の高さから頭部の高さまでの距離を身長として算出し得る。プロセッサ210Bは、足の高さから腰部の高さまでの距離を足の長さとして算出し得る。プロセッサ210Bは、第1姿勢における手の高さから頭部までの高さを、頭部から肩までの高さとして算出し得る。
The processor 210B calculates the dimension data of the user 5B from the position information corresponding to the two postures. In one embodiment, the processor 210B calculates the height, shoulder width, arm length, leg length, and head-to-shoulder height of the user 5B as dimension data, as shown in FIG. Processor 210B may calculate the distance between both hands in the second posture as the shoulder width. The processor 210B may calculate half the distance between the hands in the first posture minus the shoulder width as the arm length. The processor 210B may calculate the height as the distance from the height of the feet to the height of the head. Processor 210B may calculate the distance from the height of the legs to the height of the hips as the length of the legs. The processor 210B may calculate the height from the hand height to the head in the first pose as the height from the head to the shoulder.
図21は、寸法データを取得するための処理を表すフローチャートである。ステップS2110において、プロセッサ210Bは、仮想空間11Bに仮想カメラ14Bを配置する。プロセッサ210Bはさらに、仮想カメラ14Bの撮影範囲に対応する視界画像17Bをモニタ130Bに出力する。
FIG. 21 is a flowchart showing processing for acquiring dimension data. In step S2110, processor 210B arranges virtual camera 14B in virtual space 11B. Processor 210B further outputs field-of-view image 17B corresponding to the imaging range of virtual camera 14B to monitor 130B.
ステップS2120において、プロセッサ210Bは、ユーザ5Bに第1姿勢になるように指示する。例えば、プロセッサ210Bは、当該指示が記されたオブジェクトを仮想空間11Bに配置することでステップS2120の処理を実現する。ステップS2130において、プロセッサ210Bは、第1姿勢に対応する位置情報を取得する。
At step S2120, the processor 210B instructs the user 5B to take the first posture. For example, the processor 210B implements the process of step S2120 by arranging the object on which the instruction is written in the virtual space 11B. At step S2130, the processor 210B obtains position information corresponding to the first pose.
ステップS2140において、プロセッサ210Bは、ユーザ5Bに第2姿勢になるように指示する。ステップS2150において、プロセッサ210Bは、第2姿勢に対応する位置情報を取得する。
At step S2140, the processor 210B instructs the user 5B to take the second posture. At step S2150, the processor 210B obtains position information corresponding to the second posture.
ステップS2160において、プロセッサ210Bは、第1姿勢に対応する位置情報と第2姿勢に対応する位置情報とから、ユーザ5Bの寸法データを算出する。プロセッサ210Bは、寸法データをストレージ230Bに格納する。
In step S2160, processor 210B calculates dimension data of user 5B from the position information corresponding to the first posture and the position information corresponding to the second posture. Processor 210B stores the dimension data in storage 230B.
以上のように、ユーザ5Bは、2つの姿勢をとるだけで、自身の寸法をコンピュータ200Bに容易に入力できる。なお、他の局面において、ユーザ5Bは、自身の寸法をキーボード等の入力デバイスを用いてコンピュータ200Bに入力してもよい。
As described above, the user 5B can easily input his/her own dimensions to the computer 200B simply by taking two postures. In another aspect, user 5B may input his/her own dimensions into computer 200B using an input device such as a keyboard.
[関節の回転方向]
ある実施形態において、プロセッサ210Bは、ユーザ5Bに装着された6つのモーションセンサの出力(位置情報)と、寸法データとに基づいて、ユーザ5Bの関節の回転方向を推定する。一例として、プロセッサ210Bは、頭部の位置情報と、肩幅と、頭部から肩までの高さとに基づいて、肩の位置を推定する。プロセッサ210Bは、肩の位置と手の位置情報とから、肘の位置を推定する。この推定は、逆運動学(Inverse Kinematics)を利用した公知のアプリケーションにより実行され得る。
[Direction of joint rotation]
In one embodiment, the processor 210B estimates the rotational direction of the joints of the user 5B based on the outputs (positional information) of the six motion sensors attached to the user 5B and the dimensional data. As an example, the processor 210B estimates the position of the shoulder based on the head position information, the shoulder width, and the height from the head to the shoulder. Processor 210B estimates the elbow position from the shoulder position and hand position information. This estimation can be performed by known applications using Inverse Kinematics.
ある実施形態において、プロセッサ210Bは、6つのモーションセンサから、ユーザ5Bの首(頭部)、腰、両手首、および両足首の関節の傾き(回転方向)を取得する。加えて、プロセッサ210Bは、逆運動学に基づいて、両肩、両肘、両股(足のつけ根)、両膝の関節の回転方向を推定する。図22に示されるように、プロセッサ210Bは、各関節の回転方向をuvw視野座標系で取得または推定する。
In one embodiment, the processor 210B acquires the joint tilts (rotation directions) of the neck (head), waist, both wrists, and both ankles of the user 5B from six motion sensors. In addition, processor 210B estimates the rotational directions of the shoulder, elbow, hip, and knee joints based on inverse kinematics. As shown in FIG. 22, the processor 210B acquires or estimates the rotation direction of each joint in the uvw field coordinate system.
なお、回転方向が位置情報と寸法データとに基づいて算出される場合、プロセッサ210Bは、ユーザ5Bが正面を向いていないとき(つまり、頭部と腰部とが異なる方向を向いているとき)の肩の位置等を正確に推定できない。そこで、他の実施形態において、コンピュータ200Bは、モーションセンサによって検出されるユーザ5Bの部位の傾きをさらに考慮して関節の回転方向を推定してもよい。例えば、コンピュータ200Bは、頭部の位置情報と、頭部の傾きと、腰部の傾きと、肩幅と、頭部から肩までの高さとに基づいて、肩の位置を推定する。当該構成によれば、コンピュータ200Bは、関節の回転方向の精度を向上し得る。
Note that when the rotation direction is calculated based on the position information and the dimension data, the processor 210B calculates the rotation direction when the user 5B is not facing the front (that is, when the head and waist are facing in different directions). The position of the shoulder, etc. cannot be estimated accurately. Therefore, in another embodiment, the computer 200B may further consider the inclination of the part of the user 5B detected by the motion sensor to estimate the rotation direction of the joint. For example, the computer 200B estimates the positions of the shoulders based on the position information of the head, the tilt of the head, the tilt of the waist, the shoulder width, and the height from the head to the shoulders. According to this configuration, the computer 200B can improve the accuracy of the rotational direction of the joint.
[ライブ会場選択処理フロー]
図23は、ある実施の形態に従うHMDセット110Aにおいて実行される処理の一部を表すシーケンスチャートである。図24は、ある実施の形態に従う第1仮想空間2411Aおよび視界画像2417Aを示す図である。本実施形態では、ユーザ5Aが仮想ライブを視聴する場所である仮想会場を選択するための一連の処理が、HMDセット110Aにより実行されるものとして説明する。ただし、当該処理は、他のHMDセット110B,110C,110Dにより実行されてもよいし、当該処理の一部または全部がサーバ600によって実行されてもよい。
[Live venue selection processing flow]
FIG. 23 is a sequence chart representing part of the processing performed in HMD set 110A according to an embodiment. FIG. 24 is a diagram showing first virtual space 2411A and view image 2417A according to one embodiment. In this embodiment, it is assumed that the HMD set 110A executes a series of processes for selecting the virtual venue where the user 5A will watch the virtual live performance. However, the processing may be executed by the other HMD sets 110B, 110C, and 110D, or part or all of the processing may be executed by the server 600. FIG.
ステップS2301において、プロセッサ210Aは、図24(A)に示すような第1仮想空間2411Aを定義する。当該処理は、図11のステップS1110の処理に相当する。具体的には、プロセッサ210Aは、仮想空間データを特定することによって、仮想空間データによって表される第1仮想空間2411Aを定義する。第1仮想空間2411Aは、アバターオブジェクト6Bによるライブが開始される前にアバターオブジェクト6Aが配置される仮想空間である。第1仮想空間2411Aは、ユーザ5Aに、会場を選択させるための仮想空間でもある。
At step S2301, the processor 210A defines a first virtual space 2411A as shown in FIG. 24(A). This process corresponds to the process of step S1110 in FIG. Specifically, the processor 210A defines the first virtual space 2411A represented by the virtual space data by specifying the virtual space data. The first virtual space 2411A is a virtual space in which the avatar object 6A is arranged before the live performance by the avatar object 6B is started. The first virtual space 2411A is also a virtual space for allowing the user 5A to select a venue.
ステップS2302において、プロセッサ210Aは、仮想オブジェクト生成モジュール1421として、仮想カメラ14Aを生成し、第1仮想空間2411Aに配置する。ステップS2303において、プロセッサ210Aは、仮想オブジェクト生成モジュール1421として、仮想右手1531RAおよび仮想左手1531LAを含むアバターオブジェクト6Aを生成し、第1仮想空間2411Aに配置する。ステップS2304において、プロセッサ210Aは、仮想オブジェクト生成モジュール1421として、UIパネル2450およびペンオブジェクト2453を生成し、第1仮想空間2411Aに配置する。
In step S2302, the processor 210A, as the virtual object generation module 1421, generates the virtual camera 14A and places it in the first virtual space 2411A. In step S2303, the processor 210A, as the virtual object generation module 1421, generates the avatar object 6A including the virtual right hand 1531RA and the virtual left hand 1531LA, and places it in the first virtual space 2411A. In step S2304, processor 210A, as virtual object generation module 1421, generates UI panel 2450 and pen object 2453, and places them in first virtual space 2411A.
UIパネル2450はUIオブジェクトの一種であり、会場を選択するための処理をプロセッサ210Aに実行させるために、ユーザ5Aによって用いられる。UIパネル2450は、UIパネル2450の前面に配置される選択肢2451および2452を含む。選択肢2451および2452は、その選択肢がユーザ5Aによって選択された場合に選択される会場の名称を説明する情報を含む。選択肢2451は、第1会場を選択するための項目であり、選択肢2452は、第1会場とは異なる第2会場を選択するための項目である。ペンオブジェクト2453は、仮想オブジェクトの一種であり、UIパネル2450の選択肢2451または2452を選択するために、仮想右手1531RAまたは仮想左手1531LAによって把持されかつ使用される。
UI panel 2450 is a type of UI object, and is used by user 5A to cause processor 210A to execute processing for selecting a venue. UI panel 2450 includes options 2451 and 2452 located in front of UI panel 2450 . Choices 2451 and 2452 include information describing the name of the venue that will be selected if that choice is selected by user 5A. Option 2451 is an item for selecting the first venue, and option 2452 is an item for selecting a second venue different from the first venue. Pen object 2453 is a type of virtual object, and is grasped and used by virtual right hand 1531RA or virtual left hand 1531LA to select option 2451 or 2452 on UI panel 2450 .
ステップS2305において、プロセッサ210Aは、仮想カメラ制御モジュール1422として、HMD120Aの動きに応じて第1仮想空間2411Aにおける仮想カメラ14Aの位置および傾きを決定する。より詳細には、プロセッサ210Aは、ユーザ5Aの頭部の姿勢と、第1仮想空間2411Aにおける仮想カメラ14Aの位置とに応じて、第1仮想空間2411Aにおける仮想カメラ14Aからの視界である視界領域15Aを制御する。当該処理は、図11のステップS1140の処理の一部に相当する。仮想カメラ14Aがアバターオブジェクト6Aと同一の位置に配置されるので、仮想カメラ14Aの位置は、アバターオブジェクト6Aの位置と同義である。さらに、仮想カメラ14Aからの視界は、アバターオブジェクト6Aからの視界と同義である。
In step S2305, the processor 210A, as the virtual camera control module 1422, determines the position and tilt of the virtual camera 14A in the first virtual space 2411A according to the movement of the HMD 120A. More specifically, processor 210A adjusts the field of view, which is the field of view from virtual camera 14A in first virtual space 2411A, according to the posture of user 5A's head and the position of virtual camera 14A in first virtual space 2411A. 15A is controlled. This process corresponds to part of the process of step S1140 in FIG. Since the virtual camera 14A is arranged at the same position as the avatar object 6A, the position of the virtual camera 14A is synonymous with the position of the avatar object 6A. Furthermore, the field of view from the virtual camera 14A is synonymous with the field of view from the avatar object 6A.
ステップS2306において、プロセッサ210Aは、視界画像17Aをモニタ130Aに表示する。具体的には、プロセッサ210Aは、HMD120Aの動き(すなわち仮想カメラ14Aの位置および傾き)と、第1仮想空間2411Aを定義する仮想空間データと、に基づいて、視界領域15Aに対応する視界画像17Aを定義する。視界画像17Aを定義することは、視界画像17Aを生成することと同義である。プロセッサ210Aは、さらに、HMD120Aのモニタ130Aに視界画像17Aを出力することによって、視界画像17AをHMD120Aに表示させる。当該処理は、図11のステップS1180およびS1190の処理に相当する。
In step S2306, processor 210A displays view image 17A on monitor 130A. Specifically, processor 210A generates visual field image 17A corresponding to visual field area 15A based on the movement of HMD 120A (that is, the position and tilt of virtual camera 14A) and the virtual space data defining first virtual space 2411A. Define Defining the field-of-view image 17A is synonymous with generating the field-of-view image 17A. Processor 210A further causes HMD 120A to display field-of-view image 17A by outputting field-of-view image 17A to monitor 130A of HMD 120A. This processing corresponds to the processing of steps S1180 and S1190 in FIG.
プロセッサ210Aは、例えば、図24(A)に示す第1仮想空間2411Aに対応する視界画像2417Aを、図24(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像2417Aを視認することによって、UIパネル2450の選択肢2451または選択肢2452を選択する必要があることを認識する。
The processor 210A, for example, displays a view image 2417A corresponding to the first virtual space 2411A shown in FIG. 24(A) on the monitor 130A as shown in FIG. 24(B). User 5A recognizes that it is necessary to select option 2451 or option 2452 of UI panel 2450 by visually recognizing view image 2417A.
上述したステップS2305およびS2306の処理(すなわち、HMD120Aの動きに応じた視界画像17Aの更新)は、後述するステップS2307~S2310が実行される間にも、継続して繰り返し実行される。
The processing of steps S2305 and S2306 described above (that is, updating of field-of-view image 17A in accordance with the movement of HMD 120A) is continuously and repeatedly performed while steps S2307 to S2310, which will be described later, are performed.
ステップS2307において、プロセッサ210Aは、動き検出モジュール1425として、右コントローラ300RAの出力に基づいて、ユーザ5Aの右手の動きを検出する。ステップS2308において、プロセッサ210Aは、操作オブジェクト制御モジュール1423として、検出されたユーザ5Aの右手の動きに応じて、第1仮想空間2411Aにおいて仮想右手1531RAを動かす。ある局面において、プロセッサ210Aは、ユーザ5Aの右手の動きに応じて、ペンオブジェクト2453に仮想右手1531RAを近づけるように、第1仮想空間2411Aにおいて仮想右手1531RAを動かす。プロセッサ210Aは、仮想右手1531RAがペンオブジェクト2453に十分に近づいた後、ユーザ5Aの右手の動きに基づいて、仮想右手1531RAでペンオブジェクト2453を選択する(掴む)。ユーザ5Aの右手の動きとしては、例えば、右コントローラ300RAのいずれかのボタンを押下する動きが挙げられる。これにより、仮想右手1531RAでペンオブジェクト2453が把持される。
At step S2307, the processor 210A, as the motion detection module 1425, detects motion of the right hand of the user 5A based on the output of the right controller 300RA. In step S2308, the processor 210A, as the operating object control module 1423, moves the virtual right hand 1531RA in the first virtual space 2411A in accordance with the detected movement of the right hand of the user 5A. In one aspect, processor 210A moves virtual right hand 1531RA in first virtual space 2411A so as to bring virtual right hand 1531RA closer to pen object 2453 in response to movement of user 5A's right hand. After the virtual right hand 1531RA is sufficiently close to the pen object 2453, the processor 210A selects (grabs) the pen object 2453 with the virtual right hand 1531RA based on the movement of the right hand of the user 5A. The movement of the right hand of the user 5A includes, for example, the movement of pressing any button of the right controller 300RA. As a result, the pen object 2453 is gripped with the virtual right hand 1531RA.
図25は、ある実施の形態に従う第1仮想空間2411Aおよび視界画像2517Aを示す図である。図25(A)に示すように、プロセッサ210Aは、仮想右手1531RAがペンオブジェクト2453を選択した後、ユーザ5Aの右手の動きに基づいて、ペンオブジェクト2453の先端を選択肢2451に近づけるように、第1仮想空間2411Aにおいて仮想右手1531RAおよびペンオブジェクト2453を動かす。プロセッサ210Aは、衝突検出モジュール1426として、ペンオブジェクト2453の先端と選択肢2451とが第1位置関係になった場合、ペンオブジェクト2453の先端と選択肢2451とが衝突したことを検出する。第1位置関係とは、例えば、ペンオブジェクト2453の先端と選択肢2451との距離が第1距離を下回ることである。あるいは、ペンオブジェクト2453の先端に規定されるコリジョンエリアと、選択肢2451に設定されるコリジョンエリアとが少なくとも部分的に衝突することである。プロセッサ210Aは、ペンオブジェクト2453の先端と選択肢2451とが衝突したことに基づいて、ペンオブジェクト2453によって選択肢2451が選択されたことを検出する。ステップ S2309において、プロセッサ210Aは、選択された選択肢2451に対応する第1会場の選択を受け付ける。第1会場は、ユーザ5Aがライブを視聴する環境である第2仮想空間2711Aに対応する仮想会場である。
FIG. 25 is a diagram showing first virtual space 2411A and view image 2517A according to one embodiment. As shown in FIG. 25A, after the virtual right hand 1531RA selects the pen object 2453, the processor 210A moves the tip of the pen object 2453 closer to the option 2451 based on the movement of the right hand of the user 5A. 1 Move the virtual right hand 1531RA and the pen object 2453 in the virtual space 2411A. Processor 210A, as collision detection module 1426, detects that the tip of pen object 2453 and option 2451 have collided when the tip of pen object 2453 and option 2451 are in the first positional relationship. The first positional relationship is, for example, that the distance between the tip of pen object 2453 and option 2451 is less than the first distance. Alternatively, the collision area defined at the tip of the pen object 2453 and the collision area set in the option 2451 at least partially collide. The processor 210A detects that the pen object 2453 has selected the option 2451 based on the collision between the tip of the pen object 2453 and the option 2451 . At step S2309, the processor 210A accepts the selection of the first venue corresponding to the selected option 2451. The first venue is a virtual venue corresponding to the second virtual space 2711A, which is the environment in which the user 5A watches live performances.
プロセッサ210Aは、例えば、図25(A)に示す第1仮想空間2411Aに対応する視界画像2517Aを、図25(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像2517Aを視認することによって、UIパネル2450の選択肢2451を選択したこと(すなわち第1会場を選択したこと)を認識する。
The processor 210A, for example, displays a view image 2517A corresponding to the first virtual space 2411A shown in FIG. 25(A) on the monitor 130A as shown in FIG. 25(B). User 5A recognizes that he has selected option 2451 on UI panel 2450 (that is, he has selected the first venue) by visually recognizing view image 2517A.
ステップS2310において、プロセッサ210Aは、アバターオブジェクト制御モジュール1424として、アバターオブジェクト6Aを第1仮想空間2411Aから退出させる。詳細には、プロセッサ210Aは、第1仮想空間2411Aにおけるアバターオブジェクト6Aの配置を終了する。この後、プロセッサ210Aは、第1仮想空間2411Aの定義を継続する。プロセッサ210Aは、さらに、アバターオブジェクト6Aが配置されなくなった後も、第1仮想空間2411Aには他の仮想オブジェクトを配置したままにする。プロセッサ210Aは、ユーザ5Aに対する第1仮想空間2411Aの提供を中断する。プロセッサ210Aは、さらに、アバターオブジェクト6Bによるパフォーマンスをアバターオブジェクト6Aに視聴させるための一連の処理を実行することによって、第1会場に対応する第2仮想空間2711Aをユーザ5Aに新たに提供する。
In step S2310, the processor 210A, as the avatar object control module 1424, causes the avatar object 6A to leave the first virtual space 2411A. Specifically, the processor 210A finishes placing the avatar object 6A in the first virtual space 2411A. Thereafter, processor 210A continues definition of first virtual space 2411A. Further, the processor 210A leaves other virtual objects placed in the first virtual space 2411A even after the avatar object 6A is no longer placed. Processor 210A suspends provision of first virtual space 2411A to user 5A. Further, the processor 210A newly provides the user 5A with a second virtual space 2711A corresponding to the first venue by executing a series of processes for causing the avatar object 6A to view the performance by the avatar object 6B.
会場選択方式は、上述した例に限定されない。プロセッサ210Aは、例えば、会場の内容を視覚化した球体モデルを第1仮想空間2411Aに配置する。プロセッサ210Aは、この球体モデルが仮想右手1531RAまたは仮想左手1531LAによって選択された場合も、選択された球体モデルが示す会場に対応する第2仮想空間2711Aをユーザ5Aに新たに提供することができる。
The venue selection method is not limited to the examples described above. The processor 210A arranges, for example, a spherical model that visualizes the contents of the venue in the first virtual space 2411A. Even when this spherical model is selected by virtual right hand 1531RA or virtual left hand 1531LA, processor 210A can newly provide user 5A with second virtual space 2711A corresponding to the venue indicated by the selected spherical model.
[ライブ視聴処理フロー]
図26は、ある実施の形態に従うHMDセット110Aにおいて実行される処理の一部を表すシーケンスチャートである。図27は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像2717Aを示す図である。本実施形態では、ライブ視聴を開始するための一連の処理が、HMDセット110Aにより実行されるものとして説明する。ただし、当該処理は、他のHMDセット110B,110C,110Dにより実行されてもよいし、当該処理の一部または全部がサーバ600によって実行されてもよい。
[Live Viewing Processing Flow]
FIG. 26 is a sequence chart representing part of the processing performed in HMD set 110A according to an embodiment. FIG. 27 is a diagram showing second virtual space 2711A and view image 2717A according to an embodiment. In this embodiment, it is assumed that a series of processes for starting live viewing are executed by the HMD set 110A. However, the processing may be executed by the other HMD sets 110B, 110C, and 110D, or part or all of the processing may be executed by the server 600. FIG.
ステップS2601において、プロセッサ210Aは、図27(A)に示すような第2仮想空間2711Aを定義する。当該処理は、図11のステップS1110の処理に相当する。具体的には、プロセッサ210Aは、仮想空間データを特定することによって、仮想空間データによって表される第2仮想空間2711Aを定義する。第2仮想空間2711Aは、第1仮想空間2411Aとは異なる仮想空間であり、アバターオブジェクト6Bのライブをアバターオブジェクト6Aが視聴する仮想空間である。言い換えれば、第2仮想空間2711Aは、アバターオブジェクト6Bによるパフォーマンスが行われる仮想空間である。
At step S2601, the processor 210A defines a second virtual space 2711A as shown in FIG. 27(A). This process corresponds to the process of step S1110 in FIG. Specifically, processor 210A defines second virtual space 2711A represented by the virtual space data by specifying the virtual space data. The second virtual space 2711A is a virtual space different from the first virtual space 2411A, and is a virtual space in which the avatar object 6A watches the live performance of the avatar object 6B. In other words, the second virtual space 2711A is a virtual space where the performance is performed by the avatar object 6B.
ステップS2602において、プロセッサ210Aは、仮想カメラ14Aを生成し、第2仮想空間2711Aに配置する。ステップS2603において、プロセッサ210Aは、ステージオブジェクト1532を生成し、第2仮想空間2711Aに配置する。ステップS2604において、プロセッサ210Aは、アバターオブジェクト6Cおよび6Dの各アバター情報を、サーバ600から受信する。ステップS2605において、プロセッサ210Aは、受信した各アバター情報に基づいて、アバターオブジェクト6Cおよび6Dを第2仮想空間2711Aに配置する。プロセッサ210Aは、さらに、他のアバターオブジェクト6のアバター情報も受信し、第2仮想空間2711Aに配置する。第2仮想空間2711Aには、他のアバターオブジェクト6が多数配置されているが、図27では、説明の便宜のため、その内の1つのみを代表的に図示している。以降、特に必要がない限り、他のアバターオブジェクト6には言及しない。
In step S2602, processor 210A generates virtual camera 14A and places it in second virtual space 2711A. In step S2603, the processor 210A creates a stage object 1532 and places it in the second virtual space 2711A. At step S2604, processor 210A receives from server 600 each avatar information of avatar objects 6C and 6D. At step S2605, processor 210A arranges avatar objects 6C and 6D in second virtual space 2711A based on the received avatar information. The processor 210A also receives avatar information of other avatar objects 6 and places them in the second virtual space 2711A. A large number of other avatar objects 6 are arranged in the second virtual space 2711A, but only one of them is representatively illustrated in FIG. 27 for convenience of explanation. Henceforth, other avatar objects 6 will not be referred to unless particularly necessary.
ステップS2606において、プロセッサ210Aは、アバターオブジェクト制御モジュール1424として、アバターオブジェクト6Aを第2仮想空間2711Aに入場させる。詳細には、プロセッサ210Aは、第1仮想空間2411Aから退出させたアバターオブジェクト6Aを、第2仮想空間2711Aに配置する。このように、アバターオブジェクト6Aを第2仮想空間2711Aに入場させることは、アバターオブジェクト6Aを第2仮想空間2711Aに配置することと同義である。図示しないが、プロセッサ210Aは、任意のタイミングで、アバターオブジェクト6Aのアバター情報を生成し、サーバ600に送信する。
At step S2606, the processor 210A, as the avatar object control module 1424, causes the avatar object 6A to enter the second virtual space 2711A. Specifically, the processor 210A places the avatar object 6A that has left the first virtual space 2411A in the second virtual space 2711A. In this way, allowing the avatar object 6A to enter the second virtual space 2711A is synonymous with placing the avatar object 6A in the second virtual space 2711A. Although not shown, the processor 210A generates avatar information of the avatar object 6A and transmits it to the server 600 at arbitrary timing.
ステップS2607において、プロセッサ210Aは、仮想オブジェクト生成モジュール1421として、タグオブジェクト2733Aを生成し、アバターオブジェクト6Aに関連付ける。詳細には、プロセッサ210Aは、タグオブジェクト2733Aをアバターオブジェクト6Aの仮想左手1531LAに配置する。タグオブジェクト2733Aは、仮想オブジェクトの一種である。タグオブジェクト2733Aは、第2仮想空間2711Aにおいてライブを視聴するユーザ5Aに課金される課金額を表す課金情報を管理するための仮想オブジェクトである。
At step S2607, the processor 210A, as the virtual object generation module 1421, generates a tag object 2733A and associates it with the avatar object 6A. Specifically, processor 210A places tag object 2733A in virtual left hand 1531LA of avatar object 6A. A tag object 2733A is a type of virtual object. The tag object 2733A is a virtual object for managing billing information representing the billing amount to be billed to the user 5A who watches the live performance in the second virtual space 2711A.
プロセッサ210Aは、ライブ中にユーザ5Aに課金されることが可能な課金額の上限(以下、上限課金額)を設定する。プロセッサ210Aは、さらに、設定された上限課金額を表す上限課金情報を、タグオブジェクト2733Aに登録する。プロセッサ210Aは、例えば、タグオブジェクト2733Aを仮想左手1531LAに配置した後、ユーザ5Aによる上限課金額の入力を受け付け、入力された上限課金額を設定することができる。プロセッサ210Aは、例えば、ユーザ5BがHMDシステム100にユーザ情報を登録した際、ユーザ情報に含まれるクレジットカード情報などに基づいて、上限課金額を予め設定することもできる。プロセッサ210Aは、例えば、ユーザ5Aが過去に視聴したライブにおけるユーザの過去の課金額に基づいて、上限課金額を算出することもできる。プロセッサ210Aは、設定された上限課金額を表す上限課金情報を、タグオブジェクト2733Aに登録する。
The processor 210A sets the upper limit of the billing amount that can be billed to the user 5A during the live performance (hereinafter referred to as the upper limit billing amount). Processor 210A also registers, in tag object 2733A, maximum billing information representing the set maximum billing amount. Processor 210A can, for example, accept the input of the maximum billing amount by user 5A after placing tag object 2733A in virtual left hand 1531LA, and set the inputted maximum billing amount. For example, when the user 5B registers the user information in the HMD system 100, the processor 210A can preset the upper limit billing amount based on the credit card information or the like included in the user information. The processor 210A can also calculate the upper limit billing amount, for example, based on the user's past billing amount for live performances that the user 5A has viewed in the past. Processor 210A registers, in tag object 2733A, maximum billing information representing the set maximum billing amount.
図27(A)では、アバターオブジェクト6Bは第2仮想空間2711Aに配置されていない。言い換えれば、第2仮想空間2711Aにおいて、アバターオブジェクト6Bのライブがまだ開始されていない。ステップS2608において、プロセッサ210Aは、仮想カメラ制御モジュール1422として、HMD120Aの動きに応じて第2仮想空間2711Aにおける仮想カメラ14Aの位置および傾きを決定する。この処理は、ステップS2305における処理と基本的に同一であるため、詳細な説明を繰り返さない。ステップS2609において、プロセッサ210Aは、視界画像17Aをモニタ130Aに表示する。この処理は、ステップS2306における処理と基本的に同一であるため、詳細な説明を繰り返さない。
In FIG. 27(A), the avatar object 6B is not arranged in the second virtual space 2711A. In other words, the live performance of avatar object 6B has not yet started in second virtual space 2711A. In step S2608, the processor 210A, as the virtual camera control module 1422, determines the position and tilt of the virtual camera 14A in the second virtual space 2711A according to the movement of the HMD 120A. Since this process is basically the same as the process in step S2305, detailed description will not be repeated. In step S2609, processor 210A displays view image 17A on monitor 130A. Since this process is basically the same as the process in step S2306, detailed description will not be repeated.
プロセッサ210Aは、例えば、図27(A)に示す第2仮想空間2711Aに対応する視界画像2717Aを、図27(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像2717Aを視認することによって、アバターオブジェクト6Aが第2仮想空間2711Aに入場したことを認識する。ユーザ5Aは、さらに、ステージオブジェクト1532上にアバターオブジェクト6Bが配置されていないので、アバターオブジェクト6Bのライブがまだ開始されていないことを認識する。
The processor 210A, for example, displays a view image 2717A corresponding to the second virtual space 2711A shown in FIG. 27(A) on the monitor 130A as shown in FIG. 27(B). User 5A recognizes that avatar object 6A has entered second virtual space 2711A by visually recognizing view image 2717A. The user 5A also recognizes that the live performance of the avatar object 6B has not yet started because the avatar object 6B is not placed on the stage object 1532 .
図28は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像2817Aを示す図である。ステップS2610において、プロセッサ210Aは、課金処理モジュール1428として、第2仮想空間2711Aに対応する第1会場の入場料を表す課金情報を、タグオブジェクト2733Aに登録する。第1会場の入場料は、第2仮想空間2711Aにおいて行われるライブを視聴するためにユーザ5Aに課金される課金額である。ここで登録される課金情報は、アバターオブジェクト6Aが第2仮想空間2711Aに入場するという行動に応じた課金情報であるとも言える。プロセッサ210Aは、タグオブジェクト2733Aに登録された課金情報を、タグオブジェクト2733A上で視覚化する。詳細には、プロセッサ210Aは、タグオブジェクト2733Aの表面に、登録された各課金情報が表す課金額の合計(以下、合計課金額)を表示する。図28(A)では、タグオブジェクト2733Aに1つの課金情報が登録されている。この場合、プロセッサ210Aは、登録された課金情報が表す課金額(500円)そのものを、合計課金額としてタグオブジェクト2733Aに表示する。プロセッサ210Aは、さらに、上限課金情報が表す上限課金額(30000円)を、タグオブジェクト2733Aに表示する。
FIG. 28 is a diagram showing second virtual space 2711A and view image 2817A according to one embodiment. In step S2610, the processor 210A, as the billing processing module 1428, registers billing information representing the admission fee for the first venue corresponding to the second virtual space 2711A in the tag object 2733A. The admission fee for the first venue is the amount charged to the user 5A for viewing the live performance held in the second virtual space 2711A. The billing information registered here can also be said to be billing information according to the action of the avatar object 6A entering the second virtual space 2711A. Processor 210A visualizes billing information registered with tag object 2733A on tag object 2733A. Specifically, processor 210A displays the total billing amount represented by each piece of registered billing information (hereinafter, total billing amount) on the surface of tag object 2733A. In FIG. 28A, one billing information is registered in tag object 2733A. In this case, processor 210A displays the billing amount (500 yen) represented by the registered billing information as the total billing amount on tag object 2733A. Processor 210A further displays the maximum billing amount (30000 yen) represented by the maximum billing information on tag object 2733A.
課金情報が登録された後、ユーザ5Aは、腕時計で時間を確認するように、左手を自身の視界内まで移動させる。プロセッサ210Aは、左コントローラ300LAの出力に基づいて、ユーザ5Aの左手の動きを検出する。プロセッサ210Aは、ユーザ5Aの左手の動きに応じて、図28(A)に示すように仮想左手1531LAを視界領域15A内に移動させる。プロセッサ210Aは、例えば、図28(A)に示す第2仮想空間2711Aに対応する視界画像2817Aを、図28(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像2817Aを視認することによって、タグオブジェクト2733Aに表示される上限課金額および合計課金額を、それぞれ確認する。図28(B)の例では、ユーザは、上限課金額が30000円であり、かつ、現時点での合計課金額が500円であることを認識する。言い換えれば、ユーザ5Aは、第2仮想空間2711Aにアバターオブジェクト6Aが入場した結果、入場料として500円がユーザ5Aに課金されたことを把握する。
After the billing information is registered, user 5A moves his/her left hand into his/her field of view as if checking the time on a wristwatch. Processor 210A detects the movement of user 5A's left hand based on the output of left controller 300LA. Processor 210A moves virtual left hand 1531LA into visual field area 15A as shown in FIG. 28(A) according to the movement of user 5A's left hand. The processor 210A, for example, displays a view image 2817A corresponding to the second virtual space 2711A shown in FIG. 28(A) on the monitor 130A as shown in FIG. 28(B). User 5A confirms the upper limit billing amount and total billing amount displayed in tag object 2733A by visually recognizing view image 2817A. In the example of FIG. 28B, the user recognizes that the maximum billing amount is 30000 yen and the current total billing amount is 500 yen. In other words, the user 5A understands that the entrance fee of 500 yen was charged to the user 5A as a result of the avatar object 6A entering the second virtual space 2711A.
[ライブ開始]
図29は、ある実施の形態に従う第2仮想空間2711Bおよび視界画像2917Bを示す図である。アバターオブジェクト6Aが第2仮想空間2711Aに入場した後、プロセッサ210Bは、図29に示す第2仮想空間2711Bを定義する。第2仮想空間2711Bは、ユーザ5Bに提供され、かつ、第2仮想空間2711Aと同期される仮想空間である。第2仮想空間2711Bは、アバターオブジェクト6Bによるパフォーマンスが行われる仮想空間でもある。プロセッサ210Bは、仮想カメラ14B、アバターオブジェクト6B、およびステージオブジェクト1532を第2仮想空間2711Bに配置する。プロセッサ210Bは、アバターオブジェクト6A、6C、および6Dの各アバター情報をサーバ600から受信し、これらのアバター情報に基づいて、アバターオブジェクト6A、6C、および6Dを第2仮想空間2711Bに配置する。
[Start live]
FIG. 29 is a diagram showing second virtual space 2711B and view image 2917B according to one embodiment. After avatar object 6A enters second virtual space 2711A, processor 210B defines second virtual space 2711B shown in FIG. A second virtual space 2711B is a virtual space provided to the user 5B and synchronized with the second virtual space 2711A. The second virtual space 2711B is also a virtual space in which performances are performed by the avatar object 6B. Processor 210B arranges virtual camera 14B, avatar object 6B, and stage object 1532 in second virtual space 2711B. Processor 210B receives avatar information of avatar objects 6A, 6C, and 6D from server 600, and arranges avatar objects 6A, 6C, and 6D in second virtual space 2711B based on this avatar information.
プロセッサ210Bは、例えば、図29(A)に示す第2仮想空間2711Bに対応する視界画像2917Bを、図29(B)に示すようにモニタ130Bに表示する。ユーザ5Bは、視界画像2917Bを視認することによって、ライブの視聴者であるアバターオブジェクト6A、6C、および6Dがステージオブジェクト1532の前にいることを認識する。ステージオブジェクト1532上にアバターオブジェクト6Bが配置された後、アバターオブジェクト6Bによるライブが開始される。この後、ユーザ5Bは、自身が動いたり、音声を発したり、右コントローラ300RBおよび左コントローラ300LBを操作したりすることによって、第2仮想空間2711Bにおけるアバターオブジェクト6Bのライブを進行させる。プロセッサ210Bは、ライブの実行中に、アバターオブジェクト6Bの動き情報を含むアバター情報を、リアルタイムにサーバ600に送信する。
The processor 210B, for example, displays a view image 2917B corresponding to the second virtual space 2711B shown in FIG. 29(A) on the monitor 130B as shown in FIG. 29(B). User 5B recognizes that live viewers avatar objects 6A, 6C, and 6D are in front of stage object 1532 by viewing view image 2917B. After the avatar object 6B is placed on the stage object 1532, the live performance by the avatar object 6B is started. After that, the user 5B makes the live performance of the avatar object 6B in the second virtual space 2711B progress by moving himself, emitting sounds, and operating the right controller 300RB and the left controller 300LB. The processor 210B transmits avatar information including movement information of the avatar object 6B to the server 600 in real time during the live performance.
図30は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像3017Aを示す図である。第2仮想空間2711Bが定義された後、ステップS2611において、プロセッサ210Aは、アバターオブジェクト6Bのアバター情報をサーバ600からリアルタイムに受信する。ステップS2612において、プロセッサ210Aは、最初に受信したアバターオブジェクト6Bのアバター情報に基づいて、図30(A)に示すように、アバターオブジェクト6Bを第2仮想空間2711Aに配置する。詳細には、プロセッサ210Aは、アバターオブジェクト6Bをステージオブジェクト1532上に配置する。
FIG. 30 is a diagram showing second virtual space 2711A and view image 3017A according to an embodiment. After the second virtual space 2711B is defined, in step S2611 the processor 210A receives avatar information of the avatar object 6B from the server 600 in real time. In step S2612, processor 210A arranges avatar object 6B in second virtual space 2711A, as shown in FIG. 30A, based on the avatar information of avatar object 6B received first. Specifically, processor 210A places avatar object 6B on stage object 1532 .
プロセッサ210Aは、例えば、図30(A)に示す第2仮想空間2711Aに対応する視界画像3017Aを、図30(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像3017Aを視認することによって、ライブの演者であるアバターオブジェクト6Bがステージオブジェクト1532上に登場したことを認識する。ユーザ5Bは、さらに、アバターオブジェクト6Bによるライブがこれから開始されることを認識する。
The processor 210A, for example, displays a view image 3017A corresponding to the second virtual space 2711A shown in FIG. 30(A) on the monitor 130A as shown in FIG. 30(B). User 5A recognizes that avatar object 6B as a live performer has appeared on stage object 1532 by visually recognizing view image 3017A. The user 5B also recognizes that the live performance by the avatar object 6B is about to start.
図31は、ある実施形態に係るユーザ5Bの姿勢の一例を表す図である。ライブの開始後、ユーザ5Bは、例えば図31に示す姿勢を取るように自身の身体を動かす。図31に示す姿勢は、第1パフォーマンスに対応する姿勢である。プロセッサ210Bは、図31に示す姿勢を取った際のユーザ5Bの動きに応じて、第2仮想空間2711Bにおいてアバターオブジェクト6Bに第1パフォーマンスを実行させる。プロセッサ210Bは、アバターオブジェクト6Bが第1パフォーマンスを実行した際のアバターオブジェクト6Bの動き情報を含むアバター情報を、サーバ600にリアルタイムに送信する。
FIG. 31 is a diagram showing an example of the posture of the user 5B according to an embodiment. After starting the live performance, the user 5B moves his or her body so as to take the posture shown in FIG. 31, for example. The posture shown in FIG. 31 is a posture corresponding to the first performance. The processor 210B causes the avatar object 6B to perform the first performance in the second virtual space 2711B according to the movement of the user 5B when taking the posture shown in FIG. Processor 210B transmits avatar information including movement information of avatar object 6B when avatar object 6B performs the first performance to server 600 in real time.
図32は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像3217Aを示す図である。第2仮想空間2711Bにおいてアバターオブジェクト6Bが第1パフォーマンスを実行した後、ステップS2613において、プロセッサ210Aは、アバターオブジェクト6Bのアバター情報をサーバ600からリアルタイムに受信する。ステップS2614において、プロセッサ210Aは、受信したアバター情報に含まれる動き情報に基づいて、アバターオブジェクト6Bに第1パフォーマンスを実行させる。これにより、プロセッサ210Aは、図31に示すユーザ5Bの動きに応じて、アバターオブジェクト6Bに第1パフォーマンスを実行させることができる。
FIG. 32 is a diagram showing second virtual space 2711A and view image 3217A according to an embodiment. After the avatar object 6B performs the first performance in the second virtual space 2711B, the processor 210A receives avatar information of the avatar object 6B from the server 600 in real time in step S2613. At step S2614, the processor 210A causes the avatar object 6B to perform the first performance based on the motion information included in the received avatar information. Thereby, the processor 210A can cause the avatar object 6B to perform the first performance according to the movement of the user 5B shown in FIG.
図31の例では、アバターオブジェクト6Bは、ステージオブジェクト1532上に限らず、第2仮想空間2711A内の任意に位置に移動して、第1パフォーマンスを実行することができる。また、アバターオブジェクト6Aは、第2仮想空間2711A内の任意の位置で、アバターオブジェクト6Bによる第1パフォーマンスを視聴することできる。したがって、第2仮想空間2711A内において第1パフォーマンスが行われる領域(第1領域)は、第2仮想空間2711Aの全体であると言える。
In the example of FIG. 31, the avatar object 6B can move not only to the stage object 1532 but also to any position within the second virtual space 2711A to perform the first performance. Also, the avatar object 6A can view the first performance by the avatar object 6B at any position within the second virtual space 2711A. Therefore, it can be said that the area (first area) where the first performance is performed in the second virtual space 2711A is the entire second virtual space 2711A.
プロセッサ210Aは、アバターオブジェクト6Bによる第1パフォーマンスを、第2仮想空間2711Aにおいてアバターオブジェクト6Aに視聴させる。プロセッサ210Aは、例えば、図32(A)に示す第2仮想空間2711Aに対応する視界画像3217Aを、図32(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像3217Aを視認することによって、アバターオブジェクト6Bがステージオブジェクト1532上で第1パフォーマンスを実行したことを認識する。これにより、ユーザ5Aは、アバターオブジェクト6Aの視点で、アバターオブジェクト6Bによるパフォーマンスを楽しむことができる。
The processor 210A causes the avatar object 6A to view the first performance by the avatar object 6B in the second virtual space 2711A. The processor 210A, for example, displays a view image 3217A corresponding to the second virtual space 2711A shown in FIG. 32(A) on the monitor 130A as shown in FIG. 32(B). The user 5A recognizes that the avatar object 6B performed the first performance on the stage object 1532 by viewing the view image 3217A. Thereby, the user 5A can enjoy the performance by the avatar object 6B from the viewpoint of the avatar object 6A.
[課金情報の登録]
図33は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像3317Aを示す図である。プロセッサ210Aは、アバターオブジェクト6Bのライブを撮影したライブ映像の購入をユーザ5Aに案内するメッセージを、ライブ中にユーザ5Aに通知する。プロセッサ210Aは、例えば、タグオブジェクト2733Aにメッセージを表示する。メッセージは、ライブ映像の購入をユーザ5Aに案内するテキストと、ユーザ5Bがライブ映像を購入するための必要な課金額とを含む。図33の例では、ライブ映像を購入するための課金額は1000円である。
[Registration of billing information]
FIG. 33 is a diagram showing second virtual space 2711A and view image 3317A according to an embodiment. During the live, the processor 210A notifies the user 5A of a message guiding the user 5A to purchase the live video of the avatar object 6B taken live. Processor 210A, for example, displays the message in tag object 2733A. The message includes text guiding the user 5A to purchase the live video, and the billing amount required for the user 5B to purchase the live video. In the example of FIG. 33, the billing amount for purchasing the live video is 1000 yen.
第2仮想空間2711Aには、ユーザ5Aが購入可能なライブ映像を撮影するための専用の仮想カメラ(不図示)が、第2仮想空間2711Aに配置されている。プロセッサ210Aは、専用の仮想カメラによって第2仮想空間2711A内の一部を撮影することによって、ライブ映像を生成する。プロセッサ210Aは、専用の仮想カメラを第2仮想空間2711A内で移動させながらライブ映像を撮影することもできる。
In the second virtual space 2711A, a dedicated virtual camera (not shown) for shooting live video that can be purchased by the user 5A is arranged in the second virtual space 2711A. Processor 210A generates live video by capturing a portion of second virtual space 2711A with a dedicated virtual camera. Processor 210A can also shoot live video while moving a dedicated virtual camera within second virtual space 2711A.
メッセージがタグオブジェクト2733Aに表示された後、ユーザ5Aは、腕時計で時間を確認するように、左手を自身の視界内まで移動させる。プロセッサ210Aは、ユーザ5Aの左手の動きに応じて、図33(A)に示すように、仮想左手1531LAを視界領域15A内に移動させる。プロセッサ210Aは、例えば、図33(A)に示す第2仮想空間2711Aに対応する視界画像3317Aを、図33(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像3317Aを視認することによって、タグオブジェクト2733Aに表示されるメッセージを確認する。これにより、ユーザ5Bは、新たに1000円の課金額を支払えばライブ映像を購入できることを認識する。
After the message is displayed on tag object 2733A, user 5A moves his left hand into his field of vision as if he were checking the time on his wristwatch. The processor 210A moves the virtual left hand 1531LA into the visual field area 15A as shown in FIG. 33(A) according to the movement of the left hand of the user 5A. The processor 210A, for example, displays a view image 3317A corresponding to the second virtual space 2711A shown in FIG. 33(A) on the monitor 130A as shown in FIG. 33(B). User 5A confirms the message displayed on tag object 2733A by visually recognizing view image 3317A. As a result, the user 5B recognizes that the live video can be purchased by paying a new billing amount of 1000 yen.
図34は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像3417Aを示す図である。ユーザ5Aは、タグオブジェクト2733Aに表示されたメッセージを確認した後、ライブ映像を購入するための操作を行う。ユーザ5Aは、仮想右手1531RAの先端をタグオブジェクト2733Aに近づけるように、自身の右手を動かす。プロセッサ210Aは、ユーザ5Bの右手の動きに応じて、仮想右手1531RAの先端をタグオブジェクト2733Aに近づけるように、第2仮想空間2711Aにおいて仮想右手1531RAを動かす。
FIG. 34 is a diagram showing second virtual space 2711A and view image 3417A according to one embodiment. After confirming the message displayed on tag object 2733A, user 5A performs an operation to purchase the live video. User 5A moves his right hand so that the tip of virtual right hand 1531RA approaches tag object 2733A. The processor 210A moves the virtual right hand 1531RA in the second virtual space 2711A so that the tip of the virtual right hand 1531RA approaches the tag object 2733A in accordance with the movement of the right hand of the user 5B.
プロセッサ210Aは、衝突検出モジュール1426として、仮想右手1531RAの先端とタグオブジェクト2733Aとが第1位置関係になった場合、仮想右手1531RAの先端とタグオブジェクト2733Aとが衝突したことを検出する。第1位置関係とは、例えば、仮想右手1531RAの先端とタグオブジェクト2733Aとの距離が第1距離を下回ることである。あるいは、仮想右手1531RAの先端に規定されるコリジョンエリアと、タグオブジェクト2733Aに設定されるコリジョンエリアとが少なくとも部分的に衝突することである。プロセッサ210Aは、仮想右手1531RAの先端とタグオブジェクト2733Aとが衝突したことに基づいて、仮想右手1531RAによってタグオブジェクト2733Aが選択されたことを検出する。プロセッサ210Aは、ライブ映像を購入を案内するメッセージが表示されるタグオブジェクト2733Aが選択されたことに応じて、ライブ映像を購入するためのユーザ5Aの操作を検出する。
Processor 210A, as collision detection module 1426, detects that the tip of virtual right hand 1531RA and tag object 2733A have collided when the tip of virtual right hand 1531RA and tag object 2733A are in the first positional relationship. The first positional relationship is, for example, that the distance between the tip of virtual right hand 1531RA and tag object 2733A is less than the first distance. Alternatively, the collision area defined at the tip of virtual right hand 1531RA and the collision area set for tag object 2733A at least partially collide. Processor 210A detects that tag object 2733A has been selected by virtual right hand 1531RA based on the collision between the tip of virtual right hand 1531RA and tag object 2733A. Processor 210A detects user 5A's operation for purchasing live video in response to selection of tag object 2733A displaying a message guiding purchase of live video.
プロセッサ210Aは、例えば、図34(A)に示す第2仮想空間2711Aに対応する視界画像3417Aを、図34(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像3417Aを視認することによって、メッセージが表示されるタグオブジェクト2733Aを仮想右手1531RAで選択したことを認識する。図34の例では、ライブ映像を購入するためのユーザ5Aの操作がタグオブジェクト2733Aに対してなされるので、第2仮想空間2711Aに対するユーザ5Aの没入感を損なわずに済む。
The processor 210A, for example, displays a view image 3417A corresponding to the second virtual space 2711A shown in FIG. 34(A) on the monitor 130A as shown in FIG. 34(B). User 5A recognizes that tag object 2733A on which a message is displayed has been selected with virtual right hand 1531RA by visually recognizing view image 3417A. In the example of FIG. 34, the user 5A's operation for purchasing the live video is performed on the tag object 2733A, so the user 5A's sense of immersion in the second virtual space 2711A is not impaired.
図35は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像3517Aを示す図である。ステップS2615において、プロセッサ210Aは、課金処理モジュール1428として、アバターオブジェクト6Bの行動に応じた課金情報を、タグオブジェクト2733Aに登録する。ここで言うアバターオブジェクト6Aの行動とは、ユーザ5Bに対する課金に繋がるアバターオブジェクト6Aの行動を意味する。図34の例では、ユーザ5Bに対する課金に繋がる行動は、アバターオブジェクト6Aが、仮想右手1531RAでタグオブジェクト2733Aを選択することである。課金に繋がる行動は、後述する実施形態2~8における課金に繋がる行動でもあり得る。課金に繋がる行動は、ユーザ5Aがライブ中に使用可能な仮想グッズ(例えば仮想ペンライト)を購入することに繋がるアバターオブジェクト6Aの行動でもあり得る。図34の例では、プロセッサ210Aは、ライブ映像の購入に必要な課金額(1000円)を表す課金情報を、タグオブジェクト2733Aに新たに登録する。
FIG. 35 is a diagram showing second virtual space 2711A and view image 3517A according to an embodiment. In step S2615, the processor 210A, as the billing processing module 1428, registers billing information corresponding to the action of the avatar object 6B in the tag object 2733A. The action of the avatar object 6A referred to here means the action of the avatar object 6A that leads to charging the user 5B. In the example of FIG. 34, the action leading to billing for user 5B is avatar object 6A selecting tag object 2733A with virtual right hand 1531RA. Actions that lead to billing may also be actions that lead to billing in embodiments 2 to 8, which will be described later. Actions that lead to billing can also be actions of the avatar object 6A that lead to the purchase of virtual goods (for example, a virtual penlight) that can be used by the user 5A during a live performance. In the example of FIG. 34, processor 210A newly registers billing information representing the billing amount (1000 yen) required to purchase live video in tag object 2733A.
課金情報が登録された後、プロセッサ210Aは、タグオブジェクト2733A上で課金情報を再び視覚化する。詳細には、プロセッサ210Aは、タグオブジェクト2733Aにおけるメッセージの表示を消去すると共に、上限課金額および合計課金額をタグオブジェクト2733Aに表示する。詳細には、プロセッサ210Aは、タグオブジェクト2733Aに登録された2つの課金情報が表す2つの課金額(500円および1000円)の合計(1500円)を算出し、合計課金額としてタグオブジェクト2733Aに表示する。プロセッサ210Aは、例えば、図35(A)に示す第2仮想空間2711Aに対応する視界画像3517Aを、図35(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像3517Aを視認することによって、ライブ映像を購入したことによって現時点での合計課金額が1500円に増加したことを認識する。このように、ユーザ5Aは、簡単な操作で合計課金額を確認することができる。
After the billing information is registered, processor 210A re-visualizes the billing information on tag object 2733A. Specifically, processor 210A clears the display of the message in tag object 2733A and displays the maximum charge amount and total charge amount in tag object 2733A. Specifically, processor 210A calculates the total (1,500 yen) of the two billing amounts (500 yen and 1,000 yen) represented by the two pieces of billing information registered in tag object 2733A, and stores the sum (1,500 yen) in tag object 2733A as the total billing amount. indicate. The processor 210A, for example, displays a view image 3517A corresponding to the second virtual space 2711A shown in FIG. 35(A) on the monitor 130A as shown in FIG. 35(B). User 5A recognizes that the current total billing amount has increased to 1500 yen by purchasing the live video by visually recognizing view image 3517A. Thus, the user 5A can confirm the total billing amount with a simple operation.
プロセッサ210Aは、合計課金額だけでなく、その内訳をタグオブジェクト2733A上で視覚化することもできる。プロセッサ210Aは、例えば、タグオブジェクト2733Aに登録された複数の課金情報が表す各課金額を、個別にタグオブジェクト2733Aに表示する。ユーザ5Aは、タグオブジェクト2733Aを視認することによって、個々の課金額を確認することができる。
Processor 210A can also visualize the breakdown as well as the total billing amount on tag object 2733A. Processor 210A, for example, individually displays on tag object 2733A each billing amount represented by a plurality of pieces of billing information registered in tag object 2733A. User 5A can confirm the individual billing amount by visually recognizing tag object 2733A.
プロセッサ210Aは、課金情報をタグオブジェクト2733A上で視覚化することなく、視界画像3517A上で直接視覚化することもできる。プロセッサ210Aは、例えば、視界画像3517Aに重畳するポップアップ画像などの通知UIをモニタ130Aに表示すると共に、その通知UIに合計課金額を表示することができる。プロセッサ210Aは、ポップアップ画像を視界画像3517A上でタグオブジェクト2733Aに関連付けてモニタ130Aに表示することもできる。
Processor 210A may also visualize billing information directly on view image 3517A without visualizing it on tag object 2733A. The processor 210A can display, on the monitor 130A, a notification UI such as a pop-up image superimposed on the view image 3517A, and display the total billing amount on the notification UI. Processor 210A may also display a pop-up image on monitor 130A in association with tag object 2733A on view image 3517A.
ライブ映像購入に対応する課金情報の登録後、プロセッサ210Aは、第2仮想空間2711A内でアバターオブジェクト6Aが課金に繋がる新たな行動を取るたびに、その行動に応じた課金情報をタグオブジェクト2733Aに新たに登録する。タグオブジェクト2733Aに登録された課金情報がより増加することによって、ユーザ5Aに課金される合計課金額がさらに増加する。ユーザ5Bは、所望のタイミングでタグオブジェクト2733Aを視認することによって、最新の合計課金額を確認することができる。
After registering the billing information corresponding to the live video purchase, every time the avatar object 6A takes a new action leading to billing in the second virtual space 2711A, the processor 210A stores the billing information corresponding to the action to the tag object 2733A. Register again. As the billing information registered in tag object 2733A increases, the total billing amount charged to user 5A further increases. User 5B can confirm the latest total billing amount by visually recognizing tag object 2733A at a desired timing.
[合計課金額の決済]
図36は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像3617Aを示す図である。図36(A)では、第2仮想空間2711Aにおけるライブは終了している。ライブの終了に伴って、アバターオブジェクト6Bおよび6Cが第2仮想空間2711Aから退出している。アバターオブジェクト6Aおよび6Dは、ライブの終了後に第2仮想空間2711Aに残っている。ライブの終了時点で、ユーザ5Bに対して課金された合計課金額は12000円であるとする。言い換えれば、タグオブジェクト2733Aに登録される各課金情報が表す課金額の合計は、12000円である。
[Settlement of total billed amount]
FIG. 36 is a diagram showing second virtual space 2711A and view image 3617A according to one embodiment. In FIG. 36(A), the live performance in the second virtual space 2711A has ended. Avatar objects 6B and 6C have left the second virtual space 2711A with the end of the live. Avatar objects 6A and 6D remain in the second virtual space 2711A after the live performance ends. Assume that the total billing amount charged to the user 5B at the end of the live performance is 12000 yen. In other words, the total billing amount represented by each piece of billing information registered in tag object 2733A is 12000 yen.
プロセッサ210Aは、例えば、図36(A)に示す第2仮想空間2711Aに対応する視界画像3617Aを、図36(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像3617Aを視認することによって、ライブが終了したことを認識する。ユーザ5Bは、さらに、ユーザ5Aに課金された合計課金額が12000円であることを認識する。
The processor 210A, for example, displays a view image 3617A corresponding to the second virtual space 2711A shown in FIG. 36(A) on the monitor 130A as shown in FIG. 36(B). User 5A recognizes that the live has ended by visually recognizing field-of-view image 3617A. User 5B further recognizes that the total billing amount charged to user 5A is 12000 yen.
ユーザ5Aは、ライブ終了時点での合計課金額を確認した後、アバターオブジェクト6Aを第2仮想空間2711Aから退出させるための操作を行う。この操作は、例えば、右コントローラ300RAのいずれかのボタンをユーザ5Aが押下することである。ステップS2616において、プロセッサ210Aは、アバターオブジェクト6Aを退出させるためのユーザ5Aの操作を検出したことに応じて、アバターオブジェクト6Aを第2仮想空間2711Aから退出させる。これにより、プロセッサ210Aは、ユーザ5Aに対する第2仮想空間2711Aの提供を終了する。
After confirming the total billing amount at the end of the live performance, the user 5A performs an operation for leaving the avatar object 6A from the second virtual space 2711A. This operation is, for example, the user 5A pressing any button of the right controller 300RA. In step S2616, the processor 210A causes the avatar object 6A to leave the second virtual space 2711A in response to detecting the user's 5A operation for leaving the avatar object 6A. Thereby, the processor 210A finishes providing the second virtual space 2711A to the user 5A.
図37は、ある実施の形態に従う第1仮想空間2411Aおよび視界画像3717Aを示す図である。ステップS2617において、プロセッサ210Aは、第2仮想空間2711Aから退出したアバターオブジェクト6Aを、図37に示すように再び第1仮想空間2411Aに入場させる。言い換えれば、プロセッサ210Aは、アバターオブジェクト6Aを第1仮想空間2411Aに再び配置する。このとき、プロセッサ210Aは、アバターオブジェクト6Aに対するタグオブジェクト2733Aの関連付けを解消する。言い換えれば、プロセッサ210Aは、第1仮想空間2411Aにおいて、仮想左手1531LAにタグオブジェクト2733Aを配置しない。
FIG. 37 is a diagram showing first virtual space 2411A and view image 3717A according to one embodiment. In step S2617, the processor 210A causes the avatar object 6A that has left the second virtual space 2711A to enter the first virtual space 2411A again as shown in FIG. In other words, the processor 210A repositions the avatar object 6A in the first virtual space 2411A. At this time, processor 210A disassociates tag object 2733A from avatar object 6A. In other words, processor 210A does not place tag object 2733A in virtual left hand 1531LA in first virtual space 2411A.
ステップS2618において、プロセッサ210Aは、決済処理モジュール1429として、タグオブジェクト2733Aに登録された課金情報に応じた決済に関する処理を実行する。プロセッサ210Aは、例えば、登録された各課金情報が表す各課金額の合計を、サーバ600に通知する。サーバ600は、通知された合計課金額を決済する。サーバ600は、例えば、HMDシステム100に登録されたユーザ5Aのクレジットカード情報に応じて、合計課金額のクレジットカード決済を実行する。これにより、クレジットカードの発行者は、後日、ユーザ5Aに課金された12000円を、ユーザ5Aに請求する。サーバ600とは異なる別のサーバが、ユーザ5Aに課金された合計課金額を決済することもできる。プロセッサ210Aが、ユーザ5Aに課金された合計課金額を決済することもできる。
In step S2618, processor 210A, as payment processing module 1429, executes processing related to payment according to the billing information registered in tag object 2733A. Processor 210A, for example, notifies server 600 of the total billing amount represented by each registered billing information. Server 600 settles the notified total billing amount. The server 600 executes credit card settlement of the total charge amount according to the credit card information of the user 5A registered in the HMD system 100, for example. As a result, the credit card issuer later bills the user 5A for the 12,000 yen charged to the user 5A. Another server different from the server 600 can also settle the total billing amount charged to the user 5A. Processor 210A can also settle the total billing amount charged to user 5A.
プロセッサ210Aは、例えば、図37(A)に示す第1仮想空間2411Aに対応する視界画像3717Aを、図37(B)に示すようにモニタ130Aに表示する。サーバ600は、決済が終了したことをコンピュータ200Aに通知する。プロセッサ210Aは、決済の完了がサーバ600から通知されたことに応じて、決済が完了したことを視界画像3717A上でユーザ5Aに通知する。プロセッサ210Aは、例えば、決済が完了したことを説明するメッセージを含む通知画像3735を、視界画像3717Aに重畳させてモニタ130Aに表示する。プロセッサ210Aは、通知画像3735と同一の外観を有する仮想オブジェクトを、第2仮想空間2711Aにおける視界領域15A内の任意の位置に配置することもできる。プロセッサ210Aは、あるいは、視界画像3717Aの生成時に、視界画像3717A内の任意の位置に通知画像3735を含めることもできる。ユーザ5Bは、視界画像3717Aを視認することによって、ライブの終了後、第1仮想空間2411Aにアバターオブジェクト6Aが再び配置されたことを認識する。ユーザ5Aは、さらに、通知画像3735を視認することによって、ライブ中にユーザ5Aに課金された課金額の決済が完了したことを把握する。ユーザ5Aは、さらに、第1仮想空間2411Aにおいて仮想左手7131LBにタグオブジェクト2733Aが配置されないので、第1仮想空間2411Aにおいてはアバターオブジェクト6Aの行動に応じた課金額がユーザ5Aにこれ以上課金されないことを認識する。
The processor 210A, for example, displays a view image 3717A corresponding to the first virtual space 2411A shown in FIG. 37(A) on the monitor 130A as shown in FIG. 37(B). Server 600 notifies computer 200A that the payment has been completed. In response to notification of the completion of payment from server 600, processor 210A notifies user 5A of the completion of payment on view image 3717A. Processor 210A, for example, superimposes notification image 3735 including a message explaining that payment has been completed on view image 3717A and displays it on monitor 130A. Processor 210A can also place a virtual object having the same appearance as notification image 3735 at any position within view area 15A in second virtual space 2711A. Processor 210A may alternatively include notification image 3735 at any location within view image 3717A when view image 3717A is generated. User 5B recognizes that avatar object 6A has been placed again in first virtual space 2411A after the end of the live performance by visually recognizing view image 3717A. Further, user 5A recognizes that settlement of the billing amount charged to user 5A during the live has been completed by visually recognizing notification image 3735 . Further, the user 5A will not be billed any more for the action of the avatar object 6A in the first virtual space 2411A because the tag object 2733A is not arranged in the virtual left hand 7131LB in the first virtual space 2411A. to recognize
プロセッサ210Aは、アバターオブジェクト6Aが第1仮想空間2411Aに移動した後、タグオブジェクト2733Aをアバターオブジェクト6Aに配置したままにすることもできる。この場合、プロセッサ210Aは、決済の完了後、決済が完了したことをユーザ5Aに通知するメッセージをタグオブジェクト2733Aに表示する。プロセッサ210Aは、さらに、「了承」ボタンをタグオブジェクト2733Aに表示する。プロセッサ210Aは、アバターオブジェクト6Aが「了承」ボタンを押下した場合、アバターオブジェクト6Aに対するタグオブジェクト2733Aの関連付けを解消する。これにより、タグオブジェクト2733Aがアバターオブジェクト6Aに配置されなくなる。したがって、ユーザ5Aは、仮想左手1531LAを視界領域15A内に移動させたとしても、タグオブジェクト2733Aを視認できなくなる。
The processor 210A can also leave the tag object 2733A placed on the avatar object 6A after the avatar object 6A moves to the first virtual space 2411A. In this case, processor 210A displays a message on tag object 2733A notifying user 5A that the payment has been completed after the payment is completed. Processor 210A also displays an "accept" button on tag object 2733A. When avatar object 6A presses the "Approve" button, processor 210A disassociates tag object 2733A from avatar object 6A. As a result, the tag object 2733A is no longer placed on the avatar object 6A. Therefore, even if the user 5A moves the virtual left hand 1531LA into the viewing area 15A, the tag object 2733A cannot be visually recognized.
プロセッサ210Bは、ライブの終了後、視聴者である各ユーザ5に課金された各合計課金額を合算することによって、ライブの売り上げを算出する。サーバ600が売り上げを算出し、コンピュータ200Bに通知することもできる。プロセッサ210Bは、ライブの売り上げに応じた報酬をユーザ5Bに支払うための処理を実行する。プロセッサ210Bは、例えば、報酬の支払いをサーバ600に要求する要求情報を、ライブの終了後にサーバ600に送信する。サーバ600は、受信した要求情報に応じて、各ユーザ5に対する決済の完了後、ライブの売り上げの少なくとも一部を報酬としてユーザ5Bに支払う。サーバ600は、ライブが終了するたびに、報酬をユーザ5Bに支払うことができる。サーバ600は、あるいは、一定期間(例えば一ヶ月)内に行われた各ライブの売り上げの合計に応じた報酬を、一定期間が経過した時点でユーザ5Bにまとめて支払うこともできる。サーバ600ではなくプロセッサ210Bが、売り上げに応じた報酬をユーザ5Bに支払うこともできる。
Processor 210B calculates live sales by totaling the total charges charged to each user 5 who is a viewer after the end of the live. Server 600 can also calculate sales and notify computer 200B. Processor 210B executes processing for paying user 5B a reward according to live sales. The processor 210B, for example, transmits request information requesting the server 600 to pay the reward to the server 600 after the live performance ends. The server 600 pays the user 5B as a reward at least part of the sales of the live show after completing the payment for each user 5 according to the received request information. The server 600 can pay a reward to the user 5B each time a live performance ends. Alternatively, the server 600 can collectively pay the user 5B a remuneration according to the total sales of each live performance held within a certain period of time (for example, one month) after a certain period of time has passed. The processor 210B, instead of the server 600, can also pay the user 5B a reward according to the sales.
[本実施形態の主要な利点]
以上のように、プロセッサ210Aは、第2仮想空間2711A内でのアバターオブジェクト6Aの行動に応じた課金情報を、アバターオブジェクト6Aに関連付けられて自動的に登録する。このように、HMDシステム100は、第2仮想空間2711Aにおける好適な課金方式をユーザ5Aに提供することができる。プロセッサ210Aは、さらに、課金に関する入力をユーザ5Aに求めるUIを視界画像17Aに重畳させてモニタ130Aに表示することなく、タグオブジェクト2733Aに課金情報を自動的に登録する。これにより、課金に関する処理が実行される際に、第2仮想空間2711Aに対するユーザ5Aの没入感を損なわずに済む。
[Main advantages of this embodiment]
As described above, processor 210A automatically registers billing information according to the behavior of avatar object 6A in second virtual space 2711A in association with avatar object 6A. Thus, the HMD system 100 can provide the user 5A with a suitable billing method in the second virtual space 2711A. Further, the processor 210A automatically registers billing information in the tag object 2733A without displaying on the monitor 130A a UI requesting the user 5A for input regarding billing superimposed on the view image 17A. As a result, the feeling of being immersed in the second virtual space 2711A by the user 5A can be maintained when the billing process is executed.
プロセッサ210Aは、さらに、アバターオブジェクト6Aが第2仮想空間2711Aから退場した場合、決済に関する処理を自動的に実行する。このように、HMDシステム100は、第2仮想空間2711Aにおける好適な決済方法をユーザ5Aに提供することができる。プロセッサ210Aは、さらに、決済に関する入力をユーザ5Aに求めるUIを視界画像17Aに重畳させてモニタ130Aに表示することなく、決済に関する処理を自動的に実行する。これにより、決済に関する処理が実行される際に、第1仮想空間2411Aに対するユーザ5Aの没入感を損なわずに済む。
Further, the processor 210A automatically executes processing related to payment when the avatar object 6A leaves the second virtual space 2711A. Thus, the HMD system 100 can provide the user 5A with a suitable payment method in the second virtual space 2711A. Further, the processor 210A automatically executes processing related to payment without superimposing a UI requesting the user 5A for input regarding payment on the view image 17A and displaying it on the monitor 130A. As a result, the immersive feeling of the user 5A in the first virtual space 2411A is not impaired when the processing related to settlement is executed.
プロセッサ210Aは、さらに、クレジットカードまたは現金を模した決済用の仮想オブジェクト(仮想通貨)をユーザ5Aに使用させることなく、決済に関する処理を自動的に実行する。これにより、決済に関する処理が実行される際に、ユーザ5Aに煩わしさを与えずに済む。
Further, the processor 210A automatically executes processing related to payment without having the user 5A use a virtual object (virtual currency) for payment imitating a credit card or cash. As a result, the user 5A does not have to be bothered when the processing related to payment is executed.
[ユーザ5Aに対する警告]
図38は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像3817Aを示す図である。図38の例では、合計課金額は25000円であり、上限課金額の一定割合を超えている。一定割合は、例えば上限課金額の70%(21000円である)。プロセッサ210Aは、合計課金額が上限課金額の一定割合を超えていることを、ユーザ5Bに警告する。プロセッサ210Aは、例えば、図38(A)に示すように、タグオブジェクト2733Aを発光させることによって、ユーザ5Bに警告する。
[Warning to User 5A]
FIG. 38 is a diagram showing second virtual space 2711A and view image 3817A according to one embodiment. In the example of FIG. 38, the total billing amount is 25000 yen, which exceeds a certain percentage of the maximum billing amount. The fixed rate is, for example, 70% of the maximum billing amount (21,000 yen). Processor 210A warns user 5B that the total billing amount exceeds a certain percentage of the maximum billing amount. Processor 210A alerts user 5B by, for example, causing tag object 2733A to emit light as shown in FIG. 38(A).
プロセッサ210Aは、例えば、図38(A)に示す第2仮想空間2711Aに対応する視界画像3817Aを、図38(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像3817Aを視認することによって、現時点での合計課金額が25000円であることを認識する。ユーザ5Aは、さらに、タグオブジェクト2733Aの発光を視認することによって、合計課金額が上限課金額に近づいた旨を警告されたことを認識する。これにより、ユーザ5Aは、自身の知らない間に合計課金額が上限課金額を超えてしまうことを、避けることができる。
The processor 210A, for example, displays a view image 3817A corresponding to the second virtual space 2711A shown in FIG. 38(A) on the monitor 130A as shown in FIG. 38(B). User 5A recognizes that the current total billing amount is 25000 yen by visually recognizing view image 3817A. Further, user 5A recognizes that the warning that the total billing amount is approaching the maximum billing amount is given by visually recognizing the light emission of tag object 2733A. As a result, the user 5A can avoid the total billing amount exceeding the maximum billing amount without his knowledge.
プロセッサ210Aは、ユーザ5Aに警告した後、ユーザ5Aの操作に応じて上限課金額を増加させることができる。ユーザ5Aは、例えば、仮想右手1531RAを操作することによって、タグオブジェクト2733Aに新たな上限課金額を入力する。プロセッサ210Aは、入力された新たな上限課金額を検出する。プロセッサ210Aは、タグオブジェクト2733Aに登録される上限課金情報が表す上限課金額を、検出した新たな上限課金額に更新する。
After warning the user 5A, the processor 210A can increase the maximum billing amount in accordance with the operation of the user 5A. The user 5A inputs a new maximum billing amount to the tag object 2733A, for example, by operating the virtual right hand 1531RA. Processor 210A detects the entered new maximum billing amount. Processor 210A updates the maximum billing amount represented by the maximum billing information registered in tag object 2733A to the detected new maximum billing amount.
図39は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像3917Aを示す図である。図39の例では、プロセッサ210Aは、合計課金額に応じて第2仮想空間2711Aの外観を制御する。詳細には、プロセッサ210Aは、合計課金額をユーザ5Aに通知するためのモニタオブジェクト3936Aを、アバターオブジェクト6Aに関連付けて第2仮想空間2711Aに配置する。プロセッサ210Aは、さらに、合計課金額を表す合計課金情報を生成し、サーバ600に定期的に送信する。以後、この合計課金情報を、アバターオブジェクト6Aの合計課金情報と称する。
FIG. 39 is a diagram showing second virtual space 2711A and view image 3917A according to one embodiment. In the example of FIG. 39, processor 210A controls the appearance of second virtual space 2711A according to the total billing amount. Specifically, processor 210A arranges monitor object 3936A for notifying user 5A of the total billing amount in second virtual space 2711A in association with avatar object 6A. Processor 210A also generates total billing information representing the total billing amount and periodically transmits it to server 600 . Hereinafter, this total billing information will be referred to as total billing information of the avatar object 6A.
図示しない第2仮想空間2711Cにおいて、アバターオブジェクト6Cの仮想左手1531LCにタグオブジェクト2733Cが配置されている。タグオブジェクト2733Cには、ユーザ5Cに対して課金される各課金額を表す各課金情報が登録されている。プロセッサ210Cは、タグオブジェクト2733Cに登録される各課金情報が表す各課金額の合計(合計課金額)を算出する。プロセッサ210Cは、さらに、合計課金額を表す合計課金情報を生成し、サーバ600に定期的に送信する。以後、この合計課金情報を、アバターオブジェクト6Cの合計課金情報と称する。
In the second virtual space 2711C (not shown), a tag object 2733C is placed on the virtual left hand 1531LC of the avatar object 6C. Each billing information indicating each billing amount to be billed to the user 5C is registered in the tag object 2733C. Processor 210C calculates the sum of each billing amount represented by each piece of billing information registered in tag object 2733C (total billing amount). Processor 210C also generates total billing information representing the total billing amount and periodically transmits it to server 600 . Hereinafter, this total billing information will be referred to as total billing information of the avatar object 6C.
図示しない第2仮想空間2711Dにおいて、アバターオブジェクト6Dの仮想左手1531LDにタグオブジェクト2733Dが配置されている。タグオブジェクト2733Dには、ユーザ5Dに対して課金される各課金額表す各課金情報が登録されている。プロセッサ210Dは、タグオブジェクト2733Dに登録される各課金情報が表す各課金額の合計(合計課金額)を算出する。プロセッサ210Dは、さらに、合計課金額を表す合計課金情報を生成し、サーバ600に定期的に送信する。以後、この合計課金情報を、アバターオブジェクト6Dの合計課金情報と称する。
In a second virtual space 2711D (not shown), a tag object 2733D is placed on the virtual left hand 1531LD of the avatar object 6D. In the tag object 2733D, each billing information representing each billing amount to be billed to the user 5D is registered. Processor 210D calculates the sum of each billing amount represented by each piece of billing information registered in tag object 2733D (total billing amount). Processor 210D also generates total billing information representing the total billing amount and periodically transmits it to server 600 . Hereinafter, this total billing information will be referred to as total billing information of the avatar object 6D.
プロセッサ210Aは、アバターオブジェクト6Cおよび6Dの各合計課金情報をサーバ600から受信する。プロセッサ210Aは、アバターオブジェクト6Cの合計課金情報が表す合計課金額に応じて、第2仮想空間2711Aにおいてアバターオブジェクト6Cの外観を制御する。詳細には、プロセッサ210Aは、ユーザ5Cの合計課金額が視覚化されるモニタオブジェクト3936Cを、アバターオブジェクト6Cに関連付けて第2仮想空間2711Aに配置する。
Processor 210A receives from server 600 total billing information for each of avatar objects 6C and 6D. The processor 210A controls the appearance of the avatar object 6C in the second virtual space 2711A according to the total billing amount represented by the total billing information of the avatar object 6C. Specifically, the processor 210A places a monitor object 3936C in which the total billing amount of the user 5C is visualized in the second virtual space 2711A in association with the avatar object 6C.
プロセッサ210Aは、課金情報が表す課金額の合計に応じて、第2仮想空間2711Aにおいてアバターオブジェクト6Dの外観を制御する。プロセッサ210Aは、アバターオブジェクト6Dの合計課金情報が表す合計課金額に応じて、第2仮想空間2711Aにおいてアバターオブジェクト6Dの外観を制御する。詳細には、プロセッサ210Aは、ユーザ5Dの合計課金額が視覚化されるモニタオブジェクト3936Dを、アバターオブジェクト6Dに関連付けて第2仮想空間2711Aに配置する。
The processor 210A controls the appearance of the avatar object 6D in the second virtual space 2711A according to the total billing amount represented by the billing information. The processor 210A controls the appearance of the avatar object 6D in the second virtual space 2711A according to the total billing amount represented by the total billing information of the avatar object 6D. Specifically, the processor 210A places a monitor object 3936D in which the total billing amount of the user 5D is visualized in the second virtual space 2711A in association with the avatar object 6D.
モニタオブジェクト3936A~3936Cは、アバターオブジェクト6A~6Cのそれぞれの上部に配置される。プロセッサ210Aは、アバターオブジェクト6Aの課金情報をモニタオブジェクト3936A上で視覚化することによって、アバターオブジェクト6Aの外観を制御する。詳細には、プロセッサ210Aは、ユーザ5Aの合計課金額をモニタオブジェクト3936Aに表示する。プロセッサ210Aは、アバターオブジェクト6Cの課金情報をモニタオブジェクト3936C上で視覚化することによって、アバターオブジェクト6Cの外観を制御する。詳細には、プロセッサ210Aは、ユーザ5Cの合計課金額を、モニタオブジェクト3936Cに表示する。プロセッサ210Aは、アバターオブジェクト6Dの課金情報をモニタオブジェクト3936D上で視覚化することによって、アバターオブジェクト6Dの外観を制御する。詳細には、プロセッサ210Dはユーザ5Dの合計課金額をモニタオブジェクト3936Dに表示する。
A monitor object 3936A-3936C is placed on top of each of the avatar objects 6A-6C. Processor 210A controls the appearance of avatar object 6A by visualizing billing information for avatar object 6A on monitor object 3936A. Specifically, processor 210A displays user 5A's total billing amount in monitor object 3936A. Processor 210A controls the appearance of avatar object 6C by visualizing billing information for avatar object 6C on monitor object 3936C. Specifically, processor 210A displays the total billing amount for user 5C in monitor object 3936C. Processor 210A controls the appearance of avatar object 6D by visualizing billing information for avatar object 6D on monitor object 3936D. Specifically, processor 210D displays the total billing amount for user 5D in monitor object 3936D.
プロセッサ210Aは、例えば、図39(A)に示す第2仮想空間2711Aに対応する視界画像3917Aを、図39(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像3917Aを視認することによって、ユーザ5Cの現時点での合計課金額が20000円であり、かつ、ユーザ5Dの現時点での合計課金額が5000円であることを認識する。モニタオブジェクト3936Aは視界領域15A内に配置されないので、ユーザ5Aは、モニタオブジェクト3936Aに表示されるユーザ5Aの合計課金額を視認しない。
The processor 210A, for example, displays a view image 3917A corresponding to the second virtual space 2711A shown in FIG. 39(A) on the monitor 130A as shown in FIG. 39(B). User 5A recognizes that user 5C's current total billing amount is 20000 yen and user 5D's current total billing amount is 5000 yen by visually recognizing view image 3917A. Since the monitor object 3936A is not placed within the viewing area 15A, the user 5A does not visually recognize the total billing amount of the user 5A displayed on the monitor object 3936A.
モニタオブジェクト3936Aには、ユーザ5Aの合計課金額が表示されるので、合計課金額がより多いほど、より高い金額がモニタオブジェクト3936Aに表示される。モニタオブジェクト3936Aに表示される金額が低いと、その金額はユーザ5B~5Dの注目をあまり集めない。したがって、モニタオブジェクト3936Aに関連付けられるアバターオブジェクト6Aは、他のユーザ5B~5Dに対してあまり目立たない。モニタオブジェクト3936Aに表示される金額がより高いほど、その金額はユーザ5B~5Dの注目をより多く集める。したがって、モニタオブジェクト3936Aに関連付けられるアバターオブジェクト6Aは、他のユーザ5B~5Dに、より目立って見える。このように、プロセッサ210Aは、モニタオブジェクト3936Aにユーザ5Aの合計課金額を表示することによって、合計課金額がより多いほどアバターオブジェクト6Aの外観をより目立たせることができる。
Since the monitor object 3936A displays the total billing amount of the user 5A, the larger the total billing amount, the higher the amount displayed in the monitor object 3936A. If the amount displayed in monitor object 3936A is low, the amount will not attract much attention from users 5B-5D. Therefore, avatar object 6A associated with monitor object 3936A is less noticeable to other users 5B-5D. The higher the amount displayed in monitor object 3936A, the more that amount attracts the attention of users 5B-5D. Therefore, avatar object 6A associated with monitor object 3936A appears more prominent to other users 5B-5D. Thus, processor 210A displays the total billing amount of user 5A on monitor object 3936A, thereby making the appearance of avatar object 6A more conspicuous as the total billing amount increases.
視界画像3917Aにおいて、アバターオブジェクト6Cに関連付けて表示されるユーザ5Cの合計課金額(20000円)は、アバターオブジェクト6Dに関連付けて表示されるユーザ5Dの合計課金額(5000円)よりも多い。したがって、ユーザ5Aは、視界画像3917Aを視認することによって、アバターオブジェクト6Cの外観がアバターオブジェクト6Dの外観よりも目立っていることを認識する。
In view image 3917A, the total billing amount for user 5C (20,000 yen) displayed in association with avatar object 6C is greater than the total billing amount for user 5D (5,000 yen) displayed in association with avatar object 6D. Therefore, the user 5A recognizes that the appearance of the avatar object 6C is more conspicuous than the appearance of the avatar object 6D by viewing the view image 3917A.
図40は、ある実施の形態に従う第2仮想空間2711Bおよび視界画像4017Bを示す図である。サーバ600は、受信したアバターオブジェクト6A、6C、および6Dの各合計課金情報を、同期処理によってコンピュータ200Bに送信する。プロセッサ210Bは、サーバ600から送信されたアバターオブジェクト6A、6C、および6Dの各合計課金情報を受信する。プロセッサ210Bは、受信したアバターオブジェクト6A、6C、および6Dの各合計課金情報に応じて、アバターオブジェクト6A、6C、および6Dの各外観を制御する。この場合の外観制御は、図39に示す第2仮想空間2711Aにおけるアバターオブジェクト6A、6C、および6Dの各外観の制御と同様であるため、詳細な説明は繰り返さない。
FIG. 40 is a diagram showing second virtual space 2711B and view image 4017B according to an embodiment. Server 600 transmits the received total billing information of avatar objects 6A, 6C, and 6D to computer 200B by synchronous processing. Processor 210B receives total billing information for each of avatar objects 6A, 6C, and 6D transmitted from server 600. FIG. Processor 210B controls the appearance of each of avatar objects 6A, 6C and 6D in response to received total billing information for each of avatar objects 6A, 6C and 6D. Appearance control in this case is the same as the appearance control of each of avatar objects 6A, 6C, and 6D in second virtual space 2711A shown in FIG. 39, so detailed description will not be repeated.
プロセッサ210Bは、例えば、図40(A)に示す第2仮想空間2711Bに対応する視界画像4017Bを、図40(B)に示すようにモニタ130Bに表示する。ユーザ5Bは、視界画像4017Bを視認することによって、ユーザ5Aの現時点での合計課金額が7000円であり、ユーザ5Cの現時点での合計課金額が20000円であり、かつ、ユーザ5Dの現時点での合計課金額が5000円であることを認識する。ユーザ5Bにとって、より高い合計課金額に対応するアバターオブジェクト6Cの外観は、より低い合計課金額に対応するアバターオブジェクト6Aおよびユーザ5Dに関連付けられるアバターオブジェクト6Dの各外観に比べて、より目立って見える。このように、ユーザ5Cは、ユーザ5Bおよび5Dに比べて自身の合計課金額が多いことを、アバターオブジェクト6Cの外観変化を通じてユーザ5Bに対してアピールすることができる。
The processor 210B, for example, displays a view image 4017B corresponding to the second virtual space 2711B shown in FIG. 40(A) on the monitor 130B as shown in FIG. 40(B). By visually recognizing the view image 4017B, the user 5B confirms that the current total billing amount for the user 5A is 7,000 yen, the current total billing amount for the user 5C is 20,000 yen, and the current total billing amount for the user 5D is 7,000 yen. is 5,000 yen. For user 5B, the appearance of avatar object 6C corresponding to the higher total billing amount appears more prominent than the appearances of avatar object 6A corresponding to the lower total billing amount and avatar object 6D associated with user 5D. . Thus, the user 5C can appeal to the user 5B through the appearance change of the avatar object 6C that the total billing amount of the user 5C is larger than that of the users 5B and 5D.
図41は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像4117Aを示す図である。図41の例では、プロセッサ210Aは、アバターオブジェクト6A、6C、および6Dの各課金情報に応じて、アバターオブジェクト6A、6C、および6Dの外観の色を制御する。詳細には、プロセッサ210Aは、各課金情報に応じたテクスチャ4137A、4137C、および4137Dを、アバターオブジェクト6A、6C、および6Dに貼り付けることによって、アバターオブジェクト6A、6C、および6Dの外観の色を変化させる。
FIG. 41 is a diagram showing second virtual space 2711A and view image 4117A according to an embodiment. In the example of FIG. 41, the processor 210A controls the appearance colors of the avatar objects 6A, 6C and 6D according to the respective billing information of the avatar objects 6A, 6C and 6D. Specifically, the processor 210A applies textures 4137A, 4137C, and 4137D corresponding to each billing information to the avatar objects 6A, 6C, and 6D, thereby changing the appearance colors of the avatar objects 6A, 6C, and 6D. change.
テクスチャ4137Dは、合計課金額が第1閾値を上回ることに対応する、第1色に着色されるテクスチャである。テクスチャ4137Aは、合計課金額が第2閾値を上回ることに対応する、第2色に着色されるテクスチャである。テクスチャ4137Cは、合計課金額が第3閾値を上回ることに対応する、第3色に着色されるテクスチャである。第2色は、第1色よりも目立つ色である。第3色は、第2色よりも目立つ色である。第1色は、例えば銅色であり、第2色は例えば銀色であり、第3色は例えば金色である。
Texture 4137D is a texture colored in a first color corresponding to the total billing amount exceeding the first threshold. Texture 4137A is a texture colored in a second color corresponding to the total billing amount exceeding the second threshold. Texture 4137C is a texture colored in a third color corresponding to the total billing amount exceeding the third threshold. The second color is a color that stands out more than the first color. The third color is a color that stands out more than the second color. The first color is for example copper, the second color is for example silver and the third color is for example gold.
プロセッサ210Aは、例えば、図41(A)に示す第2仮想空間2711Aに対応する視界画像4117Aを、図41(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像4117Aを視認することによって、アバターオブジェクト6Cの外観が第3色に変化し、かつ、アバターオブジェクト6Dの外観が第1色に変化したことを認識する。ユーザ5Aは、視界画像3917Aを視認することによって、アバターオブジェクト6Cの外観がアバターオブジェクト6Dの外観よりも目立っていることを認識する。
The processor 210A, for example, displays a view image 4117A corresponding to the second virtual space 2711A shown in FIG. 41(A) on the monitor 130A as shown in FIG. 41(B). User 5A recognizes that the appearance of avatar object 6C has changed to the third color and the appearance of avatar object 6D has changed to the first color by visually recognizing view image 4117A. User 5A recognizes that the appearance of avatar object 6C is more conspicuous than the appearance of avatar object 6D by visually recognizing view image 3917A.
プロセッサ210Aは、合計課金額がより多いほど、アバターオブジェクト6Aの外観を、より金持ちらしく見える外観に変化させることもできる。プロセッサ210Aは、図示しない掲示板オブジェクトを第2仮想空間2711Aに配置すると共に、合計課金額のランキングを掲示板オブジェクトに表示することもできる。プロセッサ210Aは、例えば、合計課金額がより多い上位5名のユーザ5の名称を、掲示板オブジェクトに表示する。これにより、合計課金額がより多いユーザ5に関連付けられるアバターオブジェクト6を、第2仮想空間2711Aにおいてより目立たせることができる。
The processor 210A can also change the appearance of the avatar object 6A to look richer as the total billing amount increases. The processor 210A can place a bulletin board object (not shown) in the second virtual space 2711A and display the ranking of the total billing amount on the bulletin board object. The processor 210A displays, for example, the names of the top five users 5 with the highest total billing amounts on the bulletin board object. This makes it possible to make the avatar object 6 associated with the user 5 with the larger total billing amount more prominent in the second virtual space 2711A.
プロセッサ210Aは、アバターオブジェクト6Aの外観の全体ではなくその一部を変化させることもできる。プロセッサ210Aは、アバターオブジェクト6Aの外観をより金持ちらしく見せることができるアクセサリーを、アバターオブジェクト6Aに装着することもできる。このようなアクセサリーとして、例えば、例えば、金ぴかの時計またはネックレスなどが挙げられる。
The processor 210A may also change some, but not all, of the appearance of the avatar object 6A. The processor 210A can also equip the avatar object 6A with accessories that can make the avatar object 6A look richer. Such accessories include, for example, gold-plated watches or necklaces.
[ライブビューイングの視聴]
図42は、ある実施の形態に従う第2仮想空間4211Bおよびライブ映像4239を示す図である。プロセッサ210Bは、第2仮想空間2711Bと同様に、アバターオブジェクト6A~6D、ステージオブジェクト1532、および仮想カメラ14Bを第2仮想空間4211Bに配置する。プロセッサ210Bは、さらに、第2仮想空間4211Bには仮想カメラ4238を配置する。仮想カメラ4238は、アバターオブジェクト6Bのライブを撮影したライブ映像を生成する仮想オブジェクトである。プロセッサ210Bは、例えば、アバターオブジェクト6Bの正面から一定距離を置いた位置に、仮想カメラ4238を配置する。プロセッサ210Bは、さらに、仮想カメラ4238の向きを制御することによって、仮想カメラ4238の視界領域4215内にステージオブジェクト1532およびアバターオブジェクト6Bを収める。
[Watch live viewing]
FIG. 42 is a diagram showing second virtual space 4211B and live video 4239 according to one embodiment. Processor 210B arranges avatar objects 6A-6D, stage object 1532, and virtual camera 14B in second virtual space 4211B, as in second virtual space 2711B. Processor 210B further arranges virtual camera 4238 in second virtual space 4211B. The virtual camera 4238 is a virtual object that generates a live video image of the avatar object 6B live. The processor 210B places the virtual camera 4238 at a certain distance from the front of the avatar object 6B, for example. Processor 210B also controls the orientation of virtual camera 4238 to bring stage object 1532 and avatar object 6B within field of view 4215 of virtual camera 4238 .
プロセッサ210Bは、例えば、仮想カメラ4238を制御することによって、第2仮想空間4211Bのうち視界領域4215に含まれる箇所を仮想カメラ4238で撮影する。これにより、プロセッサ210Bは、視界領域4215に対応するライブ映像4239を図42(B)に示すように生成する。ライブ映像4239は、一種の視界画像である。ライブ映像4239には、アバターオブジェクト6Bがステージオブジェクト1532上でパフォーマンスを実行する様子が映し出されている。プロセッサ210Bは、生成されたライブ映像4239を、コンピュータ200Aなどの他の各コンピュータ200にサーバ600を介して配信する。
The processor 210B, for example, controls the virtual camera 4238 so that the virtual camera 4238 captures a portion included in the field of view area 4215 in the second virtual space 4211B. Thereby, the processor 210B generates a live image 4239 corresponding to the field of view area 4215 as shown in FIG. 42(B). Live video 4239 is a kind of view image. A live video 4239 shows the avatar object 6B performing a performance on the stage object 1532 . Processor 210B distributes generated live video 4239 to each of the other computers 200, such as computer 200A, via server 600. FIG.
図43は、ある実施の形態に従う第2仮想空間4311Aおよび視界画像4317Aを示す図である。プロセッサ210Aは、第2仮想空間2711Aと同様に、アバターオブジェクト6A、6C、および6Dを第2仮想空間4311Aに配置する。しかし、プロセッサ210Aは、第2仮想空間2711Aとは異なり、ステージオブジェクト1532およびアバターオブジェクト6Bを、第2仮想空間4311Aに配置しない。その代わりに、プロセッサ210Aは、スクリーンオブジェクト4340を第2仮想空間4311Aに配置する。
FIG. 43 is a diagram showing a second virtual space 4311A and a view image 4317A according to one embodiment. Processor 210A arranges avatar objects 6A, 6C, and 6D in second virtual space 4311A, similar to second virtual space 2711A. However, unlike the second virtual space 2711A, the processor 210A does not place the stage object 1532 and the avatar object 6B in the second virtual space 4311A. Instead, processor 210A places screen object 4340 in second virtual space 4311A.
プロセッサ210Aは、サーバ600を介してコンピュータ200Bから配信されたライブ映像4239を受信する。プロセッサ210Aは、受信したライブ映像4239を、スクリーンオブジェクト4340に表示する。これにより、プロセッサ210Aは、ライブ映像4239に映し出されるアバターオブジェクト6Bによるパフォーマンスを、アバターオブジェクト6Aに視聴させる。プロセッサ210Aは、例えば、図43(A)に示す第2仮想空間4311Aに対応する視界画像4317Aを、図43(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像4317Aを視認することによって、スクリーンオブジェクト4340に表示されるライブ映像4239を視認する。ライブ映像4239には、ステージオブジェクト1532上でパフォーマンスを行うアバターオブジェクト6Bの姿が映し出されている。ユーザ5Aは、ライブ映像4239を視認することによって、アバターオブジェクト6Bによるライブのライブビューイングを第2仮想空間4311Aにおいてあたかも自身が視聴しているかのような仮想体験を、得ることができる。
Processor 210A receives live video 4239 delivered from computer 200B via server 600 . Processor 210A displays received live video 4239 on screen object 4340 . Thereby, the processor 210A causes the avatar object 6A to view the performance by the avatar object 6B displayed on the live video 4239. FIG. The processor 210A, for example, displays a view image 4317A corresponding to the second virtual space 4311A shown in FIG. 43(A) on the monitor 130A as shown in FIG. 43(B). User 5A visually recognizes live video 4239 displayed on screen object 4340 by visually recognizing view image 4317A. The live video 4239 shows the avatar object 6B performing on the stage object 1532 . By visually recognizing the live image 4239, the user 5A can obtain a virtual experience as if he/she were watching the live viewing by the avatar object 6B in the second virtual space 4311A.
ライブビューイングの配信は、上述した例に限定されない。例えば、アバターオブジェクト6B、ステージオブジェクト1532、および仮想カメラ4238のみが配置されるライブ映像撮影用の仮想空間において、アバターオブジェクト6Bのライブ映像を撮影し、そのライブ映像を、第2仮想空間4311Aに配置されるスクリーンオブジェクト4340に表示する方式によっても、ライブ映像を配信することができる。
Distribution of live viewing is not limited to the examples described above. For example, in a virtual space for live video shooting in which only the avatar object 6B, the stage object 1532, and the virtual camera 4238 are arranged, the live video of the avatar object 6B is shot, and the live video is placed in the second virtual space 4311A. Live video can also be distributed by a method of displaying on the screen object 4340 that is displayed.
プロセッサ210Aは、第2仮想空間4311A内でのアバターオブジェクト6Aの行動に応じた課金情報を、タグオブジェクト2733Aに登録することもできる。プロセッサ210Aは、例えば、ユーザ5Aがライブ映像4239を購入することに繋がる行動をアバターオブジェクト6Aが取った場合、その行動に応じた課金情報をタグオブジェクト2733Aに登録する。
The processor 210A can also register billing information according to the behavior of the avatar object 6A within the second virtual space 4311A in the tag object 2733A. For example, when the avatar object 6A takes an action leading to the purchase of the live video 4239 by the user 5A, the processor 210A registers billing information according to the action in the tag object 2733A.
[仮想空間内の第1領域]
図44は、ある実施の形態に従う第2仮想空間4411Aおよび視界画像4417Aを示す図である。プロセッサ210Aは、第2仮想空間2711Aと同様に、アバターオブジェクト6Aおよび6C、およびステージオブジェクト1532を第2仮想空間4411Aに配置する。第2仮想空間4411Aは、第1領域4451を含んでいる。第1領域4451は、第2仮想空間4411Aの一部分に相当する。プロセッサ210Aは、第1領域4451の外縁における一カ所に、ゲートオブジェクト4452を配置する。
[First area in virtual space]
FIG. 44 is a diagram showing second virtual space 4411A and view image 4417A according to an embodiment. Processor 210A arranges avatar objects 6A and 6C and stage object 1532 in second virtual space 4411A in the same manner as second virtual space 2711A. A second virtual space 4411A includes a first area 4451 . The first area 4451 corresponds to part of the second virtual space 4411A. The processor 210A arranges the gate object 4452 at one place on the outer edge of the first area 4451 .
図44では、アバターオブジェクト6Cおよびステージオブジェクト1532は第1領域4451内に配置されている。アバターオブジェクト6Aは、第1領域4451外に配置されている。第1領域4451は、図示しない不透明の壁オブジェクトによって囲まれている。第1領域4451は、アバターオブジェクト6Bのライブが開催される場所である。アバターオブジェクト6Aは、第1領域4451内にいる場合、アバターオブジェクト6Bによるパフォーマンスを視聴することができる。アバターオブジェクト6Aは、第1領域4451外にいる場合、アバターオブジェクト6Bによるパフォーマンスを視聴することができない。アバターオブジェクト6Aは、ゲートオブジェクト4452を通ることによって、第1領域4451に入場したり、第1領域4451から退出したりすることができる。
In FIG. 44, the avatar object 6C and the stage object 1532 are placed within the first area 4451. In FIG. Avatar object 6A is placed outside first area 4451 . The first area 4451 is surrounded by non-illustrated opaque wall objects. A first area 4451 is a place where a live performance of the avatar object 6B is held. When the avatar object 6A is in the first area 4451, it can watch the performance by the avatar object 6B. When the avatar object 6A is outside the first area 4451, the avatar object 6B cannot view the performance. The avatar object 6A can enter or leave the first area 4451 by passing through the gate object 4452 .
プロセッサ210Aは、第2仮想空間4411Aを定義した後、アバターオブジェクト6Aを、第2仮想空間4411Aにおける第1領域4451外に配置する。プロセッサ210Aは、アバターオブジェクト6Aが第1領域4451外に配置される間、タグオブジェクト2733Aを仮想左手1531LAに配置しない。プロセッサ210Aは、ユーザ5Aの操作に応じて、ゲートオブジェクト4452を通じてアバターオブジェクト6Aを第1領域4451外から第1領域4451内に移動させる。これにより、プロセッサ210Aは、アバターオブジェクト6Aを第1領域4451に入場させる。
After defining the second virtual space 4411A, the processor 210A arranges the avatar object 6A outside the first area 4451 in the second virtual space 4411A. Processor 210A does not place tag object 2733A in virtual left hand 1531LA while avatar object 6A is placed outside first area 4451 . The processor 210A moves the avatar object 6A from outside the first area 4451 into the first area 4451 through the gate object 4452 according to the operation of the user 5A. Thereby, the processor 210A causes the avatar object 6A to enter the first area 4451. FIG.
プロセッサ210Aは、アバターオブジェクト6Aが第1領域4451に入場した場合、仮想左手1531LAにタグオブジェクト2733Aを配置する。プロセッサ210Aは、第1領域4451内でのアバターオブジェクト6Aの行動に応じた課金情報を、タグオブジェクト2733Aに登録する。プロセッサ210Aは、ユーザ5Aの操作に応じて、ゲートオブジェクト4452を通じてアバターオブジェクト6Aを第1領域4451内から第1領域4451外に移動させる。これにより、プロセッサ210Aは、アバターオブジェクト6Aを第1領域4451から退出させる。
When the avatar object 6A enters the first area 4451, the processor 210A places the tag object 2733A on the virtual left hand 1531LA. Processor 210A registers billing information corresponding to the action of avatar object 6A within first area 4451 in tag object 2733A. The processor 210A moves the avatar object 6A from inside the first area 4451 to outside the first area 4451 through the gate object 4452 according to the operation of the user 5A. Thereby, the processor 210A causes the avatar object 6A to leave the first area 4451.
プロセッサ210Aは、アバターオブジェクト6Aが第1領域4451から退出した場合、タグオブジェクト2733Aに登録される課金情報に応じた決済に関する処理を実行する。プロセッサ210Aは、さらに、仮想左手1531LAからタグオブジェクト2733Aを削除する。
When avatar object 6A leaves first area 4451, processor 210A executes processing related to payment according to billing information registered in tag object 2733A. Processor 210A also removes tag object 2733A from virtual left hand 1531LA.
[変形例]
プロセッサ210Aは、タグオブジェクト2733Aを、仮想左手1531LAに限らず、アバターオブジェクト6Aの任意の一部に関連付けることができる。プロセッサ210Aは、例えば、タグオブジェクト2733Aを仮想右手1531RAに関連付ける。プロセッサ210Aは、例えば、アバターオブジェクト6Aの胴体または足にタグオブジェクト2733Aを関連付ける。プロセッサ210Aは、好ましくは、仮想右手1531RAまたは仮想左手1531LAにタグオブジェクト2733Aを配置する。これにより、タグオブジェクト2733Aに表示される合計課金額をユーザ5Aに容易に確認させることができる。
[Modification]
Processor 210A can associate tag object 2733A with any part of avatar object 6A, not just virtual left hand 1531LA. Processor 210A, for example, associates tag object 2733A with virtual right hand 1531RA. Processor 210A associates tag object 2733A with, for example, the body or legs of avatar object 6A. Processor 210A preferably places tag object 2733A in virtual right hand 1531RA or virtual left hand 1531LA. This allows the user 5A to easily confirm the total billing amount displayed in the tag object 2733A.
プロセッサ210Aは、アバターオブジェクト6Aが第2仮想空間2711Aに入場した場合、必ずしもタグオブジェクト2733Aをアバターオブジェクト6Aに関連付ける必要はない。プロセッサ210Aは、課金情報をアバターオブジェクト6Aに関連付けてアバターオブジェクト6Aに登録することができる。アバターオブジェクト6Aは、アバターオブジェクト6Aが第2仮想空間2711Aから退場した場合、アバターオブジェクト6Aに登録された課金情報に応じて決済に関する処理を実行することもできる。
Processor 210A does not necessarily associate tag object 2733A with avatar object 6A when avatar object 6A enters second virtual space 2711A. The processor 210A can associate billing information with the avatar object 6A and register it with the avatar object 6A. When the avatar object 6A exits from the second virtual space 2711A, the avatar object 6A can also execute settlement-related processing according to the billing information registered in the avatar object 6A.
ユーザ5Aは、合計課金額の決済に利用可能なポイントを事前に購入することができる。サーバ600は、ユーザ5Aがポイントを事前に購入していた場合、ユーザ5Aが所持する全ポイントのうち合計課金額に相当するポイントを消費することによって、合計課金額を決済することができる。
The user 5A can pre-purchase points that can be used for settlement of the total billing amount. When the user 5A has purchased points in advance, the server 600 can settle the total billing amount by consuming points corresponding to the total billing amount out of all the points possessed by the user 5A.
プロセッサ210Aは、タグオブジェクト2733Aに課金情報を登録する際、課金情報をストレージ230Aに保存することができる。プロセッサ210Aは、アバターオブジェクト6Aが第2仮想空間2711Aから不正に離脱した場合、ストレージ230Aに保存される課金情報を用いて、決済に関する処理を実行する。アバターオブジェクト6Aが第2仮想空間2711Aから不正に離脱することは、例えば、アバターオブジェクト6Aが第2仮想空間2711Aから退場する前に、ユーザ5Aがコンピュータ200Aの電源を強制的にオフさせる場合に、発生し得る。プロセッサ210Aは、コンピュータ200Aの電源がオンされた後、ストレージ230Aに保存される課金情報をサーバ600に送信する。プロセッサ610は、受信した課金情報が表す課金額の合計を決済する。
When processor 210A registers the billing information with tag object 2733A, processor 210A can store the billing information in storage 230A. When avatar object 6A illegally leaves second virtual space 2711A, processor 210A uses the billing information stored in storage 230A to execute processing related to payment. Avatar object 6A illegally leaves second virtual space 2711A, for example, when user 5A forcibly turns off computer 200A before avatar object 6A leaves second virtual space 2711A. can occur. Processor 210A transmits the billing information stored in storage 230A to server 600 after computer 200A is powered on. Processor 610 settles the total billing amount represented by the received billing information.
プロセッサ210Aは、アバターオブジェクト6Aを第2仮想空間2711Aから退場させる前に、ユーザ5Aがコンピュータ200Aの電源を強制的にオフさせた場合、コンピュータ200Aの電源が次回オンされた後に、アバターオブジェクト6Aの不正離脱が発生したことを検出する。プロセッサ210Aは、不正離脱の発生を検出した場合、サーバ600にその旨を通知する。プロセッサ610は、不正離脱の発生がコンピュータ200Aから通知された場合、不正離脱が発生した時点でのユーザ5Aの課金情報に応じて、課金額を決済する。これにより、HMDシステム100は、ユーザ5Aが課金額の決済を逃れることを防止することができる。プロセッサ610は、アバターオブジェクト6Aの不正離脱が頻繁に発生したり、不正離脱後の決済を正常に完了させることができなかったりする場合、ユーザ5Aのアカウントを削除することができる。
If the user 5A forcibly powers off the computer 200A before leaving the avatar object 6A from the second virtual space 2711A, the processor 210A restores the power of the avatar object 6A after the power of the computer 200A is turned on next time. Detects that an unauthorized exit has occurred. When processor 210A detects the occurrence of unauthorized withdrawal, processor 210A notifies server 600 to that effect. When the computer 200A notifies the processor 610 of the occurrence of unauthorized withdrawal, the processor 610 settles the billing amount according to the billing information of the user 5A at the time when the unauthorized withdrawal occurred. Thereby, the HMD system 100 can prevent the user 5A from evading payment of the billing amount. The processor 610 can delete the account of the user 5A when the avatar object 6A frequently withdraws illegally or the settlement cannot be completed normally after the illegal withdrawal.
プロセッサ210Aは、アバターオブジェクト6Aが第2仮想空間2711Aに入場した場合、入場料に対応する課金情報をタグオブジェクト2733Aに登録すると共に、入場料に対応する決済に関する処理を直ちに実行することができる。言い換えれば、プロセッサ210Aは、タグオブジェクト2733Aに課金情報が登録された後、アバターオブジェクト6Aが第2仮想空間2711Aから退場する前に、決済に関する処理を実行することもできる。プロセッサ210Aは、さらに、アバターオブジェクト6Aの行動に応じた課金情報をタグオブジェクト2733Aに登録した場合も、アバターオブジェクト6Aが退場する前に、登録された課金情報に対応する決済に関する処理を実行することができる。
When the avatar object 6A enters the second virtual space 2711A, the processor 210A can register billing information corresponding to the entrance fee in the tag object 2733A and immediately execute processing related to settlement corresponding to the entrance fee. In other words, processor 210A can also execute processing related to payment after billing information is registered in tag object 2733A and before avatar object 6A exits second virtual space 2711A. Furthermore, even when billing information corresponding to the behavior of avatar object 6A is registered in tag object 2733A, processor 210A executes processing related to payment corresponding to the registered billing information before avatar object 6A leaves. can be done.
プロセッサ210Aは、第2仮想空間2711Aにおけるアバターオブジェクト6Bのライブが開催される前に、アバターオブジェクト6Aを第2仮想空間2711Aに入場させることができる。プロセッサ210Aは、アバターオブジェクト6Aがライブの開催前に第2仮想空間2711Aに入場した場合、第2仮想空間2711Aにおいて、アバターオブジェクト6Aにアバターオブジェクト6Bからライブのチケットを購入させることができる。
The processor 210A can cause the avatar object 6A to enter the second virtual space 2711A before the live performance of the avatar object 6B in the second virtual space 2711A. When avatar object 6A enters second virtual space 2711A before the live performance, processor 210A can cause avatar object 6A to purchase a ticket for the live performance from avatar object 6B in second virtual space 2711A.
ユーザ5Aは、ライブの開催前に、ライブのチケットをアバターオブジェクト6Aに購入させることができる。ある局面において、プロセッサ210Bは、ライブのチケットを販売するためのユーザ5Bの動きを、ライブの開催前に予めに検出する。プロセッサ210Bは、検出された動きに応じて、アバターオブジェクト6Bに、チケットを販売するための第1動作を実行させる。プロセッサ210Bは、第1動作に対応する動き情報を含むアバターオブジェクト6Bのアバター情報を、サーバ600に送信する。
The user 5A can cause the avatar object 6A to purchase a live ticket before the live is held. In one aspect, the processor 210B pre-detects the movement of the user 5B to sell tickets for the gig in advance of the gig. Processor 210B causes avatar object 6B to perform a first action for selling tickets in response to the detected motion. The processor 210B transmits to the server 600 avatar information of the avatar object 6B including motion information corresponding to the first action.
プロセッサ210Aは、ライブの開催前にアバターオブジェクト6Aが第2仮想空間2711Aに入場した場合、コンピュータ200Bが事前にサーバ600に送信しておいたアバターオブジェクト6Bのアバター情報を、サーバ600にリクエストする。サーバ600は、リクエストに応じて、アバターオブジェクト6Bのアバター情報をコンピュータ200Aに送信する。プロセッサ210Aは、受信したアバター情報に基づいて、アバターオブジェクト6Bを第2仮想空間2711Aに配置する。プロセッサ210Aは、アバター情報に含まれる動き情報に基づいて、チケットを販売するための第1動作を、アバターオブジェクト6Bに実行させる。プロセッサ210Aは、例えば、アバターオブジェクト6Bからアバターオブジェクト6Aにチケットを手渡しさせる。プロセッサ210Aは、さらに、アバターオブジェクト6Bに仮想左手1531LBを振らせる。
When avatar object 6A enters second virtual space 2711A before the live performance, processor 210A requests server 600 for the avatar information of avatar object 6B, which computer 200B has sent to server 600 in advance. Server 600 transmits the avatar information of avatar object 6B to computer 200A in response to the request. Processor 210A arranges avatar object 6B in second virtual space 2711A based on the received avatar information. The processor 210A causes the avatar object 6B to perform a first action for selling tickets based on the motion information included in the avatar information. The processor 210A, for example, causes the avatar object 6B to hand over the ticket to the avatar object 6A. Processor 210A also causes avatar object 6B to swing virtual left hand 1531LB.
別の局面において、プロセッサ210Aは、特定の時間帯にアバターオブジェクト6Aを第2仮想空間2711Aに入場させた場合、アバターオブジェクト6Aのアバター情報をサーバ600に送信する。サーバ600による同期処理の結果、プロセッサ210Bは、アバターオブジェクト6Aのアバター情報をサーバ600から受信する。プロセッサ210Bは、受信したアバター情報に応じて、アバターオブジェクト6Aを第2仮想空間2711Bに配置する。プロセッサ210Bは、アバターオブジェクト6Aが配置された後、ライブのチケットを販売するためのユーザ5Bの動きを検出する。プロセッサ210Bは、検出したユーザ5Bの動きに応じて、第2仮想空間2711Bにおいて、アバターオブジェクト6Aにチケットを販売するための第2動作をアバターオブジェクト6Bに実行させる。プロセッサ210Bは、第2動作に対応する動き情報を含むアバターオブジェクト6Bのアバター情報を、サーバ600に送信する。
In another aspect, processor 210A transmits avatar information of avatar object 6A to server 600 when avatar object 6A enters second virtual space 2711A during a specific time period. As a result of the synchronization processing by the server 600, the processor 210B receives the avatar information of the avatar object 6A from the server 600. FIG. Processor 210B arranges avatar object 6A in second virtual space 2711B according to the received avatar information. Processor 210B detects movement of user 5B to sell tickets for a live show after avatar object 6A is positioned. Processor 210B causes avatar object 6B to perform a second action for selling tickets to avatar object 6A in second virtual space 2711B in accordance with the detected movement of user 5B. The processor 210B transmits to the server 600 avatar information of the avatar object 6B including motion information corresponding to the second action.
プロセッサ210Aは、サーバ600の同期処理の結果、アバターオブジェクト6Bのアバター情報をサーバ600から受信する。プロセッサ210Aは、受信したアバター情報に含まれる動き情報に応じて、プロセッサ210Aは、アバター情報に含まれる動き情報に基づいて、チケットを販売するための第2動作を、アバターオブジェクト6Bに実行させる。言い換えれば、プロセッサ210Aは、ユーザ5Bのリアルタイムの動きに応じて、アバターオブジェクト6Bにチケットを販売する動作を実行させることができる。これにより、ユーザ5Aをユーザ5Bとリアルタイムに交流させることができるので、ユーザ5Aをより満足させることができる。
Processor 210A receives the avatar information of avatar object 6B from server 600 as a result of the synchronization processing of server 600 . Based on the motion information included in the received avatar information, the processor 210A causes the avatar object 6B to perform a second action for selling tickets based on the motion information included in the avatar information. In other words, the processor 210A can cause the avatar object 6B to perform the action of selling tickets in response to the real-time movements of the user 5B. This allows the user 5A to interact with the user 5B in real time, thereby making the user 5A more satisfied.
〔実施形態2〕
本実施形態において、プロセッサ210Aは、ユーザ5Aに対する課金および決済に関する処理を、実施形態1に記載されるタグオブジェクト2733Aを用いた方式によって実行する。しかし、これに限定されず、プロセッサ210Aは、実施形態1に係る方式とは異なる任意の方式によって、ユーザ5Aに対する課金および決済に関する処理を実行することもできる。
[Embodiment 2]
In this embodiment, the processor 210A executes processing related to billing and settlement for the user 5A by the method using the tag object 2733A described in the first embodiment. However, without being limited to this, the processor 210A can also execute processing related to billing and payment for the user 5A by any method different from the method according to the first embodiment.
[移動距離に応じた課金処理フロー]
図45は、ある実施の形態に従うHMDセット110Aにおいて実行される処理の一部を表すシーケンスチャートである。図46は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像4617Aを示す図である。図46では、第2仮想空間2711Aにおいて、ユーザ5B(第2ユーザ)に関連付けられるアバターオブジェクト6B(第2アバター)によるパフォーマンスが行われている。タグオブジェクト2733Aには、入場料(500円)に対応する課金情報のみが登録されている。ユーザ5A(第1ユーザ)に関連付けられるアバターオブジェクト6A(第1アバター)は、第2仮想空間2711Aにおける、ステージオブジェクト1532から大きく離れた第1位置4661に配置されている。ユーザ5Aは、アバターオブジェクト6Aから遠く離れた位置にいるアバターオブジェクト6Bのパフォーマンスを視聴している。
[Billing processing flow according to distance traveled]
FIG. 45 is a sequence chart representing part of the processing performed in HMD set 110A according to an embodiment. FIG. 46 is a diagram showing second virtual space 2711A and view image 4617A according to one embodiment. In FIG. 46, in the second virtual space 2711A, a performance is being performed by the avatar object 6B (second avatar) associated with the user 5B (second user). Only billing information corresponding to the entrance fee (500 yen) is registered in the tag object 2733A. Avatar object 6A (first avatar) associated with user 5A (first user) is placed at a first position 4661 far away from stage object 1532 in second virtual space 2711A. A user 5A is watching the performance of an avatar object 6B far away from the avatar object 6A.
ユーザ5Aは、アバターオブジェクト6Aをステージオブジェクト1532に近い第2位置4662に移動させることによって、アバターオブジェクト6Bのもっと近くでパフォーマンスを視聴することを望む。ユーザ5Aは、この希望を叶えるために、仮想右手1531RAの先端が第2位置4662を指し示すように、右手を動かす。ステップS4501において、プロセッサ210Aは、右コントローラ300RAの出力に基づいて、ユーザ5Aの右手の動きを検出する。ステップS4502において、プロセッサ210Aは、ユーザ5Aの右手の動きに応じて仮想右手1531RAを動かす。図46(A)に示すように、仮想右手1531RAが動いた後、仮想右手1531RAの先端は、第2仮想空間2711Aにおける第2位置4662を指し示している。ステップS4503において、プロセッサ210Aは、仮想右手1531RAの先端が指し示す第2仮想空間2711A内の第2位置4662を特定する。
User 5A wishes to view the performance closer to avatar object 6B by moving avatar object 6A to second position 4662 closer to stage object 1532 . User 5A moves the right hand so that the tip of virtual right hand 1531RA points to second position 4662 in order to fulfill this desire. At step S4501, the processor 210A detects movement of the right hand of the user 5A based on the output of the right controller 300RA. At step S4502, the processor 210A moves the virtual right hand 1531RA according to the movement of the right hand of the user 5A. As shown in FIG. 46A, after the virtual right hand 1531RA moves, the tip of the virtual right hand 1531RA points to the second position 4662 in the second virtual space 2711A. In step S4503, the processor 210A identifies the second position 4662 in the second virtual space 2711A pointed to by the tip of the virtual right hand 1531RA.
プロセッサ210Aは、例えば、図46(A)に示す第2仮想空間2711Aに対応する視界画像4617Aを、図46(B)に示すようにモニタ130Aに表示する。ステップS4504において、プロセッサ210Aは、第2仮想空間2711A内の第2位置4662を示すマーク4663を、視界画像4617A上でユーザ5Aに通知する。詳細には、プロセッサ210Aは、マーク4663を、第2位置4662に対応する視界画像4617Aにおける位置4664に重畳させてモニタ130Aに表示する。プロセッサ210Aは、マーク4663を、第2仮想空間2711A内の第2位置4662に仮想オブジェクトとして配置することができる。プロセッサ210Aは、あるいは、視界画像4617Aの生成時に、第2位置4662に対応する位置4664にマーク4663を含めるようにすることもできる。ユーザ5Aは、視界画像4617Aを視認することによって、第2仮想空間2711A内の第2位置4662を示すマーク4663がモニタ130Aに表示されたことを確認する。ユーザ5Aは、マーク4663を確認することによって、アバターオブジェクト6Aの移動先として第2位置4662を指定したことを把握する。
The processor 210A, for example, displays a view image 4617A corresponding to the second virtual space 2711A shown in FIG. 46(A) on the monitor 130A as shown in FIG. 46(B). At step S4504, the processor 210A notifies the user 5A on the view image 4617A of the mark 4663 indicating the second position 4662 in the second virtual space 2711A. Specifically, processor 210A displays mark 4663 superimposed on position 4664 in view image 4617A corresponding to second position 4662 on monitor 130A. Processor 210A can place mark 4663 as a virtual object at second position 4662 in second virtual space 2711A. Processor 210A may alternatively include mark 4663 at location 4664 corresponding to second location 4662 when generating view image 4617A. User 5A confirms that mark 4663 indicating second position 4662 in second virtual space 2711A is displayed on monitor 130A by viewing view image 4617A. By checking the mark 4663, the user 5A understands that the second position 4662 has been specified as the destination of the avatar object 6A.
マーク4663の確認後、ユーザ5Aは、アバターオブジェクト6Aを第2位置4662に移動させるための第1操作を行う。第1操作は、例えば、右コントローラ300RAのいずれかのボタンをユーザが押下することである。ステップS4505において、プロセッサ210Aは、アバターオブジェクト6Aを移動させるためのユーザ5Aの第1操作を検出する。
After confirming the mark 4663, the user 5A performs the first operation to move the avatar object 6A to the second position 4662. The first operation is, for example, the user pressing any button of the right controller 300RA. At step S4505, the processor 210A detects a first operation by the user 5A for moving the avatar object 6A.
図47は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像4717Aを示す図である。ステップS4506において、プロセッサ210Aは、ユーザ5Aの第1操作が検出された場合、アバターオブジェクト制御モジュール1424として、図47(A)に示すように、第2仮想空間2711A内でアバターオブジェクト6Aを第1位置4661から第2位置4662まで離散的に移動させる。詳細には、プロセッサ210Aは、第1位置4661から第2位置4662までの間の各位置を経由することなく、アバターオブジェクト6Aを第1位置4661から第2位置4662まで瞬間的に移動させる(ワープ移動させる)。プロセッサ210Aは、さらに、アバターオブジェクト6Aの移動に連動させて仮想カメラ14Aも離散的に移動させる。
FIG. 47 is a diagram showing second virtual space 2711A and view image 4717A according to an embodiment. In step S4506, when the first operation by the user 5A is detected, the processor 210A, as the avatar object control module 1424, moves the avatar object 6A to the first position within the second virtual space 2711A as shown in FIG. Discretely move from position 4661 to second position 4662 . Specifically, the processor 210A instantaneously moves the avatar object 6A from the first position 4661 to the second position 4662 without going through each position between the first position 4661 and the second position 4662 (warping). move). The processor 210A also discretely moves the virtual camera 14A in conjunction with the movement of the avatar object 6A.
ステップS4507において、プロセッサ210Aは、第1位置4661から第2位置4662までのアバターオブジェクト6Aの移動距離4775に応じた課金情報を、タグオブジェクト2733Aに登録する。詳細には、プロセッサ210Aは、移動距離4775に、一定距離ごとの課金単価を乗算することによって、移動距離4775に応じた課金額を算出する。課金単価は、例えば、HMDシステム100の運営者によって予め決定されている。プロセッサ210Aは、例えば、第2仮想空間2711Aを定義する際、仮想空間データに含まれる単価情報が表す課金単価を、コンピュータ200Aに設定する。図47では、課金額として500円が算出される。プロセッサ210Aは、算出した課金額を表す課金情報を、タグオブジェクト2733Aに新たに登録する。プロセッサ210Aは、タグオブジェクト2733Aの表面に、登録された2つの課金情報が表す各課金額の合計(1000円)を表示する。
In step S4507, processor 210A registers billing information according to moving distance 4775 of avatar object 6A from first position 4661 to second position 4662 in tag object 2733A. Specifically, processor 210A calculates the billing amount according to moving distance 4775 by multiplying moving distance 4775 by a billing unit price for each fixed distance. The charging unit price is determined in advance by the operator of the HMD system 100, for example. For example, when defining the second virtual space 2711A, the processor 210A sets the charging unit price represented by the unit price information included in the virtual space data in the computer 200A. In FIG. 47, 500 yen is calculated as the billing amount. Processor 210A newly registers billing information representing the calculated billing amount in tag object 2733A. Processor 210A displays on the surface of tag object 2733A the total billing amount (1000 yen) represented by the two registered billing information.
課金情報が登録された後、プロセッサ210Aは、ユーザ5Aの左手の動きに応じて、図47(A)に示すように、仮想左手1531LAを視界領域15A内に移動させる。プロセッサ210Aは、例えば、図47(A)に示す第2仮想空間2711Aに対応する視界画像4717Aを、図47(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像4717Aを視認することによって、アバターオブジェクト6Aがステージオブジェクト1532の近くの第2位置4662まで移動したことを認識する。ユーザ5Aは、さらに、アバターオブジェクト6Bがアバターオブジェクト6Aの目の前にいることを認識する。これにより、ユーザ5Aは、アバターオブジェクト6Bの近くでパフォーマンスを視聴することができるので、ライブをより楽しむことができる。ユーザ5Aは、さらに、タグオブジェクト2733Aを視認することによって、現時点での合計課金額が1000円であることを認識する。言い換えれば、ユーザ5Aは、アバターオブジェクト6Aを第2位置4662まで移動させた結果、移動料金として500円が新たにユーザ5Aに課金されたことを把握する。
After the billing information is registered, processor 210A moves virtual left hand 1531LA into viewing area 15A as shown in FIG. 47(A) in accordance with the movement of user 5A's left hand. The processor 210A, for example, displays a view image 4717A corresponding to the second virtual space 2711A shown in FIG. 47(A) on the monitor 130A as shown in FIG. 47(B). User 5A recognizes that avatar object 6A has moved to second position 4662 near stage object 1532 by visually recognizing view image 4717A. The user 5A also recognizes that the avatar object 6B is in front of the avatar object 6A. This allows the user 5A to view the performance near the avatar object 6B, thereby enjoying the live performance more. User 5A further recognizes that the current total billing amount is 1000 yen by visually recognizing tag object 2733A. In other words, the user 5A understands that as a result of moving the avatar object 6A to the second position 4662, the user 5A has been newly charged 500 yen as a movement fee.
図48は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像4817Aを示す図である。図48における第2仮想空間2711Aにおいて、図46と同一である。アバターオブジェクト6Aは第1位置4661に配置されている。タグオブジェクト2733Aには、入場料(500円)に対応する課金情報のみが登録されている。ユーザ5Aは、仮想右手1531RAの先端が、第2位置4662よりもステージオブジェクト1532から遠い第3位置4866を指し示すように、右手を動かす。プロセッサ210Aは、仮想右手1531RAの先端が指し示す第2仮想空間2711A内の第3位置4866を特定する。
FIG. 48 is a diagram showing second virtual space 2711A and view image 4817A according to one embodiment. The second virtual space 2711A in FIG. 48 is the same as in FIG. Avatar object 6A is placed at first position 4661 . Only billing information corresponding to the entrance fee (500 yen) is registered in the tag object 2733A. The user 5A moves the right hand so that the tip of the virtual right hand 1531RA points to the third position 4866 farther from the stage object 1532 than the second position 4662. Processor 210A identifies third position 4866 in second virtual space 2711A pointed to by the tip of virtual right hand 1531RA.
プロセッサ210Aは、例えば、図48(A)に示す第2仮想空間2711Aに対応する視界画像4817Aを、図48(B)に示すようにモニタ130Aに表示する。プロセッサ210Aは、第2仮想空間2711Aにおける第3位置4866を示すマーク4663を、視界画像4817A上でユーザ5Aに通知する。詳細には、プロセッサ210Aは、マーク4663を、第2仮想空間2711Aにおける第3位置4866に対応する視界画像4817Aにおける位置4867に重畳させてモニタ130Aに表示する。プロセッサ210Aは、マーク4663を、第2仮想空間2711A内の第3位置4866に仮想オブジェクトとして配置することができる。プロセッサ210Aは、あるいは、視界画像4817Aの生成時に、第3位置4886に対応する位置4867にマーク4663を含めるようにすることもできる。ユーザ5Aは、視界画像4817Aを視認することによって、第2仮想空間2711A内の第3位置4866を示すマーク4663がモニタ130Aに表示されたことを確認する。ユーザ5Aは、マーク4663を確認することによって、アバターオブジェクト6Aの移動先として第3位置4866を指定したことを把握する。
The processor 210A, for example, displays a view image 4817A corresponding to the second virtual space 2711A shown in FIG. 48(A) on the monitor 130A as shown in FIG. 48(B). Processor 210A notifies user 5A on view image 4817A of mark 4663 indicating third position 4866 in second virtual space 2711A. Specifically, processor 210A superimposes mark 4663 on position 4867 in view image 4817A corresponding to third position 4866 in second virtual space 2711A and displays it on monitor 130A. Processor 210A can place mark 4663 as a virtual object at third position 4866 in second virtual space 2711A. Processor 210A may alternatively include mark 4663 at location 4867 corresponding to third location 4886 when generating view image 4817A. User 5A confirms that mark 4663 indicating third position 4866 in second virtual space 2711A is displayed on monitor 130A by viewing view image 4817A. By checking the mark 4663, the user 5A understands that the third position 4866 has been specified as the destination of the avatar object 6A.
図49は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像4917Aを示す図である。プロセッサ210Aは、アバターオブジェクト6Aを第3位置4866に移動させるためのユーザ5Aの第1操作を検出する。プロセッサ210Aは、ユーザ5Aの第1操作が検出された場合、図49(A)に示すように、第2仮想空間2711A内でアバターオブジェクト6Aおよび仮想カメラ14Aを第1位置4661から第3位置4866まで離散的に移動させる。プロセッサ210Aは、第1位置4661から第3位置4866までのアバターオブジェクト6Aの移動距離4969に応じた課金情報を、タグオブジェクト2733Aに登録する。詳細には、プロセッサ210Aは、移動距離4969に課金単価を乗算することによって、移動距離4969に応じた課金額を算出する。移動距離4969は移動距離4775よりも短いので、図49では、500円よりも安い250円が課金額として算出される。プロセッサ210Aは、算出した課金額を表す課金情報を、タグオブジェクト2733Aに新たに登録する。
FIG. 49 is a diagram showing second virtual space 2711A and view image 4917A according to an embodiment. The processor 210A detects a first operation by the user 5A to move the avatar object 6A to the third position 4866. When the first operation by user 5A is detected, processor 210A moves avatar object 6A and virtual camera 14A from first position 4661 to third position 4866 in second virtual space 2711A as shown in FIG. 49(A). discretely move up to Processor 210A registers billing information according to moving distance 4969 of avatar object 6A from first position 4661 to third position 4866 in tag object 2733A. Specifically, processor 210A calculates the billing amount according to moving distance 4969 by multiplying moving distance 4969 by the billing unit price. Since the moving distance 4969 is shorter than the moving distance 4775, 250 yen, which is cheaper than 500 yen, is calculated as the billing amount in FIG. Processor 210A newly registers billing information representing the calculated billing amount in tag object 2733A.
プロセッサ210Aは、タグオブジェクト2733Aの表面に、登録された2つの課金情報が表す各課金額の合計(750円)を表示する。プロセッサ210Aは、例えば、図49(A)に示す第2仮想空間2711Aに対応する視界画像4917Aを、図49(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像4917Aを視認することによって、アバターオブジェクト6Aがステージオブジェクト1532からやや離れた第3位置4866まで移動したことを認識する。ユーザ5Aは、さらに、現時点での合計課金額が750円であることを認識する。言い換えれば、ユーザ5Aは、アバターオブジェクト6Aを第3位置4866まで移動させた結果、移動料金として250円が新たにユーザ5Aに課金されたことを把握する。図47および図49に示すように、プロセッサ210Aは、移動距離がより長いほどより高い課金額を表す課金情報をタグオブジェクト2733Aに登録する。
Processor 210A displays on the surface of tag object 2733A the sum of each billing amount (750 yen) represented by the two registered billing information. Processor 210A, for example, displays view image 4917A corresponding to second virtual space 2711A shown in FIG. 49(A) on monitor 130A as shown in FIG. 49(B). User 5A recognizes that avatar object 6A has moved to third position 4866, which is slightly away from stage object 1532, by visually recognizing view image 4917A. User 5A also recognizes that the current total billing amount is 750 yen. In other words, as a result of moving the avatar object 6A to the third position 4866, the user 5A understands that 250 yen has been newly charged to the user 5A as a movement fee. As shown in FIGS. 47 and 49, processor 210A registers billing information in tag object 2733A, which indicates that the longer the distance traveled, the higher the billing amount.
[本実施形態の主要な利点]
プロセッサ210Aは、アバターオブジェクト6Aの移動距離に応じた課金情報をタグオブジェクト2733Aに登録する。このように、HMDシステム100は、第2仮想空間2711Aにおける好適な課金方式をユーザ5Aに提供することができる。
[Main advantages of this embodiment]
Processor 210A registers billing information according to the moving distance of avatar object 6A in tag object 2733A. Thus, the HMD system 100 can provide the user 5A with a suitable billing method in the second virtual space 2711A.
ユーザ5Aは、ライブ中に第2仮想空間2711Aにおける所望の位置にアバターオブジェクト6Aを移動させることによって、自身の好きな位置でライブを視聴することができる。ユーザ5Aは、例えば、自身の好きなパフォーマンスが行われる場合はアバターオブジェクト6Aをアバターオブジェクト6Bの近くの位置まで移動させる。ユーザ5Aは、アバターオブジェクト6Bにより行われるパフォーマンスの内容に応じて視聴したい位置が異なる場合には、パフォーマンスの内容ごとに自身の好きな位置にアバターオブジェクト6Aを移動させてライブを視聴できる。ユーザ5Aは、例えば、自身の好きなパフォーマンスが2つのパートで構成されている場合、第1のパートは、アバターオブジェクト6Bの正面位置にアバターオブジェクト6Aを移動させて視聴し、第2のパートは、ステージオブジェクト1532の上手側にアバターオブジェクト6Aを移動させて斜め方向からアバターオブジェクト6Bを視聴することができる。パフォーマンスを行うアバターオブジェクト6Bが第2仮想空間2711A内に複数存在し、かつ、各アバターオブジェクト6Bのステージオブジェクト1532上での位置が入れ替わる場合、ユーザ5Aは、自身の好きなアバターオブジェクト6Bの位置に追従するようにアバターオブジェクト6Aを移動させてライブを視聴することもできる。これらの結果、HMDシステム100は、ユーザ5Aの嗜好に応じてライブをより楽しませることができる。
The user 5A can watch the live performance at his/her favorite position by moving the avatar object 6A to a desired position in the second virtual space 2711A during the live performance. The user 5A, for example, moves the avatar object 6A to a position near the avatar object 6B when performing a favorite performance. When the user 5A wants to view the performance at a different position depending on the contents of the performance performed by the avatar object 6B, the user 5A can move the avatar object 6A to his/her favorite position for each performance and view the live performance. For example, if the user 5A's favorite performance consists of two parts, the first part is viewed by moving the avatar object 6A to the position in front of the avatar object 6B, and the second part is , the avatar object 6A can be moved to the upper side of the stage object 1532 and the avatar object 6B can be viewed from an oblique direction. When there are a plurality of avatar objects 6B performing performances in the second virtual space 2711A and the positions of the avatar objects 6B on the stage object 1532 are switched, the user 5A can move to the position of his/her favorite avatar object 6B. It is also possible to watch live by moving the avatar object 6A so as to follow it. As a result, the HMD system 100 can make the live performance more enjoyable according to the preferences of the user 5A.
[アバターオブジェクト6Bの移動]
以上では、アバターオブジェクト6Aが任意のタイミングで移動可能である例について説明したが、アバターオブジェクト6Aの移動はこの例に限定されない。以下では、アバターオブジェクト6Bが指定したタイミングでのみアバターオブジェクト6Aの移動が可能である例について、詳細に説明する。
[Movement of avatar object 6B]
Although the example in which the avatar object 6A can move at any timing has been described above, the movement of the avatar object 6A is not limited to this example. An example in which the avatar object 6A can be moved only at the timing designated by the avatar object 6B will be described in detail below.
図50は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像5017Aを示す図である。図50では、第2仮想空間2711Aにおいてアバターオブジェクト6Bによるパフォーマンスが行われている。タグオブジェクト2733Aには、入場料(500円)に対応する課金情報のみが登録されている。アバターオブジェクト6Bは、ステージオブジェクト1532上の右端近くの第1位置5070に配置されている。アバターオブジェクト6Aは、第2仮想空間2711Aにおける、ステージオブジェクト1532に近くにおける、第1位置5070に対向する第2位置5071に配置されている。このように、アバターオブジェクト6Aは、アバターオブジェクト6Bと向き合うようにして、アバターオブジェクト6Bの近くでアバターオブジェクト6Bによるパフォーマンスを視聴している。
FIG. 50 is a diagram showing second virtual space 2711A and view image 5017A according to an embodiment. In FIG. 50, the avatar object 6B is performing in the second virtual space 2711A. Only billing information corresponding to the entrance fee (500 yen) is registered in the tag object 2733A. Avatar object 6B is placed at first position 5070 near the right end on stage object 1532 . The avatar object 6A is placed at a second position 5071 opposite the first position 5070 near the stage object 1532 in the second virtual space 2711A. Thus, the avatar object 6A faces the avatar object 6B and watches the performance by the avatar object 6B near the avatar object 6B.
プロセッサ210Aは、例えば、図50(A)に示す第2仮想空間2711Aに対応する視界画像5017Aを、図50(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像5017Aを視認することによって、アバターオブジェクト6Aの近くにいるアバターオブジェクト6Bのパフォーマンスを楽しむ。
Processor 210A, for example, displays view image 5017A corresponding to second virtual space 2711A shown in FIG. 50(A) on monitor 130A as shown in FIG. 50(B). User 5A enjoys the performance of avatar object 6B near avatar object 6A by visually recognizing view image 5017A.
図51は、ある実施の形態に従う第2仮想空間2711Bおよび視界画像5117Bを示す図である。図51に示す第2仮想空間2711Bは、図50に示す第2仮想空間2711Aに同期されている。プロセッサ210Bは、例えば、図51(A)に示す第2仮想空間2711Bに対応する視界画像5117Bを、図51(B)に示すようにモニタ130Bに表示する。ユーザ5Bは、視界画像5117Bを視認することによって、アバターオブジェクト6Aがアバターオブジェクト6Bの近くでパフォーマンスを視聴していることを認識する。
FIG. 51 is a diagram showing second virtual space 2711B and view image 5117B according to an embodiment. The second virtual space 2711B shown in FIG. 51 is synchronized with the second virtual space 2711A shown in FIG. The processor 210B, for example, displays a view image 5117B corresponding to the second virtual space 2711B shown in FIG. 51(A) on the monitor 130B as shown in FIG. 51(B). User 5B recognizes that avatar object 6A is watching the performance near avatar object 6B by visually recognizing view image 5117B.
図52は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像5217Aを示す図である。プロセッサ210Aは、第2仮想空間2711A内でアバターオブジェクト6Aを移動させることを可能とさせる条件が成立していない場合、アバターオブジェクト6Aが第2仮想空間2711A内で移動することを禁止している。図52において、プロセッサ210Aは、ユーザ5Aの右手の動きに応じて、仮想右手1531RAの先端が第2仮想空間2711Aにおける所望の位置を指し示すように、仮想右手1531RAを動かす。しかし、プロセッサ210Aは、アバターオブジェクト6Aの移動が禁止されていることに応じて、仮想右手1531RAの先端が指し示す位置を特定しない。
FIG. 52 is a diagram showing second virtual space 2711A and view image 5217A according to an embodiment. The processor 210A prohibits the avatar object 6A from moving within the second virtual space 2711A when the conditions enabling the avatar object 6A to move within the second virtual space 2711A are not satisfied. In FIG. 52, processor 210A moves virtual right hand 1531RA so that the tip of virtual right hand 1531RA points to a desired position in second virtual space 2711A in accordance with the movement of user 5A's right hand. However, processor 210A does not specify the position pointed to by the tip of virtual right hand 1531RA in response to prohibition of movement of avatar object 6A.
プロセッサ210Aは、例えば、図52(A)に示す第2仮想空間2711Aに対応する視界画像5217Aを、図52(B)に示すようにモニタ130Aに表示する。プロセッサ210Aは、仮想右手1531RAの先端が指し示す位置を特定しないことに応じて、当該位置を示すマーク4663を視界画像5217A上でユーザ5Aに通知しない。ユーザ5Aは、視界画像5217Aを視認することによって、仮想右手1531RAの先端で第2仮想空間2711A内の所望の位置を指し示したにも関わらず、位置を示すマーク4663がモニタ130Aに表示されないことを確認する。ユーザ5Aは、さらに、マーク4663が表示されないために、アバターオブジェクト6Aを移動させることができないことを把握する。
The processor 210A, for example, displays a view image 5217A corresponding to the second virtual space 2711A shown in FIG. 52(A) on the monitor 130A as shown in FIG. 52(B). In response to not specifying the position pointed by the tip of virtual right hand 1531RA, processor 210A does not notify user 5A of mark 4663 indicating that position on view image 5217A. By visually recognizing the field of view image 5217A, the user 5A notices that the mark 4663 indicating the position is not displayed on the monitor 130A even though the tip of the virtual right hand 1531RA points to the desired position in the second virtual space 2711A. confirm. The user 5A also understands that the avatar object 6A cannot be moved because the mark 4663 is not displayed.
図53は、ある実施の形態に従う第2仮想空間2711Bおよび視界画像5317Bを示す図である。ユーザ5Bは、ステージオブジェクト1532においてアバターオブジェクト6Bがパフォーマンスを実行する位置を、ステージオブジェクト1532の左端に近い第3位置5372に変更することを望む。ユーザ5Bは、この希望を叶えるため、仮想左手1531LBの先端が第3位置5372を指し示すように、左手を動かす。プロセッサ210Bは、ユーザ5Bの左手の動きに応じて、第2仮想空間2711Bにおいて仮想左手1531LBを動かす。プロセッサ210Bは、仮想左手1531LBの先端が指し示す第2仮想空間2711B内の第3位置5372を特定する。
FIG. 53 is a diagram showing second virtual space 2711B and view image 5317B according to an embodiment. User 5B wishes to change the position at which avatar object 6B performs on stage object 1532 to third position 5372 near the left end of stage object 1532 . User 5B moves the left hand so that the tip of virtual left hand 1531LB points to third position 5372 in order to fulfill this desire. Processor 210B moves virtual left hand 1531LB in second virtual space 2711B in accordance with the movement of user 5B's left hand. Processor 210B identifies third position 5372 in second virtual space 2711B pointed to by the tip of virtual left hand 1531LB.
プロセッサ210Bは、例えば、図53(A)に示す第2仮想空間2711Bに対応する視界画像5317Bを、図53(B)に示すようにモニタ130Bに表示する。プロセッサ210Bは、第2仮想空間2711Bにおける第3位置5372を示すマーク4663を、視界画像5317B上でユーザ5Bに通知する。詳細には、プロセッサ210Bは、マーク4663を、第2仮想空間2711Bにおける第3位置5372に対応する視界画像5317Bにおける位置5373に重畳させてモニタ130Bに表示する。プロセッサ210Bは、マーク4663を、第2仮想空間2711B内の第3位置5372に仮想オブジェクトとして配置することができる。プロセッサ210Bは、あるいは、視界画像5317Bの生成時に、第3位置5372に対応する位置5373にマーク4663を含めるようにすることもできる。ユーザ5Bは、視界画像5317Bを視認することによって、第3位置5372を示すマーク4663がモニタ130Bに表示されたことを確認する。ユーザ5Bは、マーク4663を確認することによって、アバターオブジェクト6Bの移動先として第3位置5372を指定したことを把握する。
The processor 210B, for example, displays a view image 5317B corresponding to the second virtual space 2711B shown in FIG. 53(A) on the monitor 130B as shown in FIG. 53(B). Processor 210B notifies user 5B on view image 5317B of mark 4663 indicating third position 5372 in second virtual space 2711B. Specifically, processor 210B superimposes mark 4663 on position 5373 in view image 5317B corresponding to third position 5372 in second virtual space 2711B and displays it on monitor 130B. Processor 210B can place mark 4663 as a virtual object at third position 5372 in second virtual space 2711B. Processor 210B may alternatively include mark 4663 at location 5373 corresponding to third location 5372 when generating view image 5317B. User 5B confirms that mark 4663 indicating third position 5372 is displayed on monitor 130B by visually recognizing view image 5317B. By checking the mark 4663, the user 5B understands that the third position 5372 has been specified as the destination of the avatar object 6B.
マーク4663の確認後、ユーザ5Bは、アバターオブジェクト6Bを第3位置5372に移動させるための第2操作を行う。第2操作は、例えば、右コントローラ300RAのいずれかのボタンをユーザ5Bが押下することである。プロセッサ210Bは、アバターオブジェクト6Bを移動させるためのユーザ5Bの第2操作を検出する。
After confirming the mark 4663, the user 5B performs a second operation for moving the avatar object 6B to the third position 5372. FIG. The second operation is, for example, the user 5B pressing any button of the right controller 300RA. Processor 210B detects a second operation by user 5B to move avatar object 6B.
図54は、ある実施の形態に従う第2仮想空間2711Bおよび視界画像5417Bを示す図である。プロセッサ210Bは、ユーザ5Bの第2操作が検出された場合、図54(A)に示すように、第2仮想空間2711B内でアバターオブジェクト6Bおよび仮想カメラ14Bを第1位置5070から第3位置5372まで離散的に移動させる。プロセッサ210Bは、例えば、図54(A)に示す第2仮想空間2711Bに対応する視界画像5417Bを、図54(B)に示すようにモニタ130Bに表示する。ユーザ5Bは、視界画像5417Bを視認することによって、アバターオブジェクト6Bが第3位置5372まで移動したことを認識する。ユーザ5Bは、さらに、アバターオブジェクト6Bが移動した結果、アバターオブジェクト6Aがアバターオブジェクト6Bの視界内からいなくなったことを認識する。
FIG. 54 is a diagram showing second virtual space 2711B and view image 5417B according to one embodiment. When the second operation by the user 5B is detected, the processor 210B moves the avatar object 6B and the virtual camera 14B from the first position 5070 to the third position 5372 within the second virtual space 2711B as shown in FIG. 54(A). discretely move up to The processor 210B, for example, displays a view image 5417B corresponding to the second virtual space 2711B shown in FIG. 54(A) on the monitor 130B as shown in FIG. 54(B). User 5B recognizes that avatar object 6B has moved to third position 5372 by visually recognizing view image 5417B. The user 5B also recognizes that the avatar object 6A has disappeared from the field of view of the avatar object 6B as a result of the movement of the avatar object 6B.
図55は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像5517Aを示す図である。第2仮想空間2711Bにおいてアバターオブジェクト6Bが移動した後、プロセッサ210Aは、アバターオブジェクト6Bの最新のアバター情報をサーバ600から受信する。プロセッサ210Aは、受信したアバター情報に含まれる動き情報に基づいて、第2仮想空間2711Aにおいてアバターオブジェクト6Bを第1位置5070から第3位置5372まで離散的に移動させる。これにより、アバターオブジェクト6Bは視界領域15A外に配置される。プロセッサ210Aは、例えば、図55(A)に示す第2仮想空間2711Aに対応する視界画像5517Aを、図55(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像5517Aを視認することによって、アバターオブジェクト6Bがステージオブジェクト1532上を移動したために、アバターオブジェクト6Aの視界内からいなくなったことを認識する。
FIG. 55 is a diagram showing second virtual space 2711A and view image 5517A according to an embodiment. After avatar object 6B has moved in second virtual space 2711B, processor 210A receives the latest avatar information of avatar object 6B from server 600 . Processor 210A discretely moves avatar object 6B from first position 5070 to third position 5372 in second virtual space 2711A based on the motion information included in the received avatar information. As a result, the avatar object 6B is placed outside the field of view 15A. The processor 210A, for example, displays a view image 5517A corresponding to the second virtual space 2711A shown in FIG. 55(A) on the monitor 130A as shown in FIG. 55(B). The user 5A recognizes that the avatar object 6B has moved on the stage object 1532 and has left the field of view of the avatar object 6A by visually recognizing the field-of-view image 5517A.
プロセッサ210Aは、第2仮想空間2711A内でアバターオブジェクト6Bが移動した場合、第2仮想空間2711A内でアバターオブジェクト6Aを移動させることを可能とする。ただし、第2仮想空間2711A内でアバターオブジェクト6Aを移動させることを可能とさせる条件は、これに限定されるものではない。プロセッサ210Aは、アバターオブジェクト6Aが移動できるようになったことを、例えば音声などでユーザ5Aに通知する。プロセッサ210Aは、アバターオブジェクト6Aが移動できるようなったことを、第2仮想空間2711A内の照明を変更することによってユーザ5Aに通知することもできる。
The processor 210A enables the avatar object 6A to move within the second virtual space 2711A when the avatar object 6B moves within the second virtual space 2711A. However, the conditions that allow the avatar object 6A to move within the second virtual space 2711A are not limited to this. The processor 210A notifies the user 5A that the avatar object 6A can move, for example, by voice. The processor 210A can also notify the user 5A that the avatar object 6A can now move by changing the lighting in the second virtual space 2711A.
図56は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像5617Aを示す図である。図56では、プロセッサ210Aは、アバターオブジェクト6Bが移動したことに応じて、第2仮想空間2711A内でアバターオブジェクト6Aが移動することを許可している。ユーザ5Aは、右側を向くことによって、アバターオブジェクト6Bがステージオブジェクト1532の右端近くに移動したことを認識する。ユーザ5Aは、移動後のアバターオブジェクト6Bに近い第2仮想空間2711Aにおける第4位置5674にアバターオブジェクト6Aを移動させることによって、引き続きアバターオブジェクト6Bの近くでライブを視聴することを望む。
FIG. 56 is a diagram showing second virtual space 2711A and view image 5617A according to an embodiment. In FIG. 56, processor 210A permits avatar object 6A to move within second virtual space 2711A in response to movement of avatar object 6B. The user 5A recognizes that the avatar object 6B has moved near the right end of the stage object 1532 by looking to the right. User 5A wishes to continue watching the live near avatar object 6B by moving avatar object 6A to fourth position 5674 in second virtual space 2711A near avatar object 6B after movement.
ユーザ5Aは、この希望を叶えるために、仮想右手1531RAの先端が第4位置5674を指し示すように、右手を動かす。プロセッサ210Aは、ユーザ5Aの右手の動きに応じて仮想右手1531RAを動かす。プロセッサ210Aは、アバターオブジェクト6Aの移動が許可されていることに応じて、移動後の仮想右手1531RAの先端が指し示す第4位置5674を特定する。
The user 5A moves the right hand so that the tip of the virtual right hand 1531RA points to the fourth position 5674 in order to fulfill this desire. The processor 210A moves the virtual right hand 1531RA according to the movement of the right hand of the user 5A. The processor 210A identifies the fourth position 5674 pointed to by the tip of the virtual right hand 1531RA after movement in response to the permission of movement of the avatar object 6A.
プロセッサ210Aは、例えば、図56(A)に示す第2仮想空間2711Aに対応する視界画像5617Aを、図56(B)に示すようにモニタ130Aに表示する。プロセッサ210Aは、第2仮想空間2711Aにおける第4位置5674を示すマーク4663を、第2仮想空間2711Aにおける第4位置5674に対応する視界画像4817Aにおける位置5675に重畳させてモニタ130Aに表示する。プロセッサ210Aは、マーク4663を、第2仮想空間2711A内の第4位置5674に仮想オブジェクトとして配置することができる。プロセッサ210Aは、あるいは、視界画像5617Aの生成時に、第4位置5674に対応する位置5675にマーク4663を含めるようにすることもできる。ユーザ5Aは、視界画像5617Aを視認することによって、アバターオブジェクト6Bがステージオブジェクト1532の右端近くまで移動したことを認識する。ユーザ5Aは、さらに、視界画像5617Aに含まれるマーク4663を確認することによって、アバターオブジェクト6Aの移動先として第4位置5674を指定したことを把握する。
Processor 210A, for example, displays view image 5617A corresponding to second virtual space 2711A shown in FIG. 56(A) on monitor 130A as shown in FIG. 56(B). Processor 210A superimposes mark 4663 indicating fourth position 5674 in second virtual space 2711A on position 5675 in view image 4817A corresponding to fourth position 5674 in second virtual space 2711A and displays it on monitor 130A. Processor 210A can place mark 4663 as a virtual object at fourth position 5674 in second virtual space 2711A. Processor 210A may alternatively include mark 4663 at location 5675 corresponding to fourth location 5674 when generating view image 5617A. User 5A recognizes that avatar object 6B has moved to near the right end of stage object 1532 by visually recognizing view image 5617A. User 5A further confirms that fourth position 5674 has been designated as the destination of avatar object 6A by confirming mark 4663 included in field-of-view image 5617A.
図57は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像5717Aを示す図である。プロセッサ210Aは、アバターオブジェクト6Aを第4位置5674に移動させるためのユーザ5Aの第1操作を検出する。プロセッサ210Aは、ユーザ5Aの第1操作が検出された場合、図57(A)に示すように、第2仮想空間2711A内でアバターオブジェクト6Aおよび仮想カメラ14Aを第2位置5071から第4位置5674まで離散的に移動させる。プロセッサ210Aは、第2位置5071から第4位置5674までのアバターオブジェクト6Aの移動距離5776に応じた課金情報を、タグオブジェクト2733Aに登録する。
FIG. 57 is a diagram showing second virtual space 2711A and view image 5717A according to one embodiment. The processor 210A detects a first operation by the user 5A to move the avatar object 6A to the fourth position 5674. When the first operation by user 5A is detected, processor 210A moves avatar object 6A and virtual camera 14A from second position 5071 to fourth position 5674 in second virtual space 2711A as shown in FIG. 57(A). discretely move up to Processor 210A registers billing information according to moving distance 5776 of avatar object 6A from second position 5071 to fourth position 5674 in tag object 2733A.
プロセッサ210Aは、例えば、図57(A)に示す第2仮想空間2711Aに対応する視界画像5717Aを、図57(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像5717Aを視認することによって、アバターオブジェクト6Aがアバターオブジェクト6Bの近くの第4位置5674まで移動したことを認識する。ユーザ5は、さらに、アバターオブジェクト6Bがアバターオブジェクト6Aの目の前にいることを認識する。これにより、ユーザ5Aは、引き続きアバターオブジェクト6Bの近くでライブを楽しむことができる。
The processor 210A, for example, displays a view image 5717A corresponding to the second virtual space 2711A shown in FIG. 57(A) on the monitor 130A as shown in FIG. 57(B). User 5A recognizes that avatar object 6A has moved to fourth position 5674 near avatar object 6B by visually recognizing view image 5717A. User 5 also recognizes that avatar object 6B is in front of avatar object 6A. Thereby, the user 5A can continue to enjoy the live near the avatar object 6B.
図50~図57に示す形態では、アバターオブジェクト6Bが第2仮想空間2711A内で移動した結果、ユーザ5Aは、アバターオブジェクト6Aをアバターオブジェクト6Bの近くに移動させる動機を強く持つ。このように、ユーザ5Bは、アバターオブジェクト6Aを移動させることによって、アバターオブジェクト6Aの移動をユーザ5Aに強く促すことができる。したがって、ユーザ5Aが第2仮想空間2711A内でアバターオブジェクト6Aを積極的に移動することが期待できるので、移動距離に応じた課金額をユーザ5Aに課金できる可能性をより高めることができる。その結果、アバターオブジェクト6Bのライブの売り上げを増加させる可能性を高めることができる。
In the forms shown in FIGS. 50 to 57, as a result of the avatar object 6B moving within the second virtual space 2711A, the user 5A has a strong motivation to move the avatar object 6A closer to the avatar object 6B. Thus, the user 5B can strongly urge the user 5A to move the avatar object 6A by moving the avatar object 6A. Therefore, it can be expected that the user 5A will actively move the avatar object 6A within the second virtual space 2711A, so that it is possible to increase the possibility of charging the user 5A with the billing amount corresponding to the movement distance. As a result, it is possible to increase the possibility of increasing live sales of the avatar object 6B.
[変形例]
プロセッサ210Aは、移動距離に応じた課金情報を、必ずしもタグオブジェクト2733Aに登録する必要はない。プロセッサ210Aは、例えば、移動距離に応じた課金情報を、アバターオブジェクト6Aに関連付けてアバターオブジェクト6Aに登録することもできる。プロセッサ210Aは、移動距離に応じた課金情報をタグオブジェクト2733Aに登録する代わりに、移動距離に応じた課金に関する任意の処理を実行することができる。課金に関する処理は、例えば、課金情報をタグオブジェクト2733Aに登録することなくサーバ600に送信することである。
[Modification]
Processor 210A does not necessarily need to register billing information according to travel distance in tag object 2733A. The processor 210A can, for example, associate billing information according to the distance traveled with the avatar object 6A and register it in the avatar object 6A. Processor 210A can perform any processing related to charging based on moving distance instead of registering billing information based on moving distance in tag object 2733A. Processing related to billing is, for example, transmitting billing information to server 600 without registering it in tag object 2733A.
プロセッサ210Aは、アバターオブジェクト6Aの移動回数に応じた課金に関する処理を実行することもできる。プロセッサ210Aは、例えば、移動回数に応じた課金情報を、タグオブジェクト2733Aに登録する。プロセッサ210Aは、例えば、移動回数がより多いほどより高くなる課金額を算出し、算出した課金額を表す課金情報をタグオブジェクト2733Aに登録する。この場合、プロセッサ210Aは、アバターオブジェクト6Aの移動回数に応じた最適な課金情報をタグオブジェクト2733Aに登録することができる。プロセッサ210Aは、さらに、アバターオブジェクト6Aが第2仮想空間2711A内を無制限に移動することによってアバターオブジェクト6Bのライブを阻害することを、防止することができる。
The processor 210A can also perform processing related to charging according to the number of times the avatar object 6A moves. Processor 210A, for example, registers billing information according to the number of times of movement in tag object 2733A. Processor 210A, for example, calculates a billing amount that increases as the number of times of movement increases, and registers billing information representing the calculated billing amount in tag object 2733A. In this case, the processor 210A can register optimal billing information in the tag object 2733A according to the number of movements of the avatar object 6A. The processor 210A can also prevent the avatar object 6A from interfering with the live performance of the avatar object 6B by unlimited movement within the second virtual space 2711A.
プロセッサ210Aは、移動距離および移動回数の少なくともいずれかに応じた課金処理を実行することができる。プロセッサ210Aは、移動距離のみに応じた課金に関する第1処理、移動回数のみに応じた課金に関する第2処理、ならびに移動距離および移動回数の双方に応じた課金に関する第3処理のうち、任意の処理を実行することができる。
Processor 210A can perform billing processing according to at least one of the distance traveled and the number of times traveled. Processor 210A performs arbitrary processing among a first process related to charging based only on the distance traveled, a second process related to charging based only on the number of times of travel, and a third process related to charging based on both the distance traveled and the number of times traveled. can be executed.
プロセッサ210Aは、アバターオブジェクト6Aの移動距離および移動方向に応じた課金に関する処理を実行することもできる。プロセッサ210Aは、例えば、アバターオブジェクト6Aの移動方向がアバターオブジェクト6Bにより近づく方向である場合、課金単価をより高くする。プロセッサ210Aは、例えば、アバターオブジェクト6Aの移動方向がアバターオブジェクト6Bからより離れる方向である場合、課金単価をより安くする。
The processor 210A can also perform processing related to charging according to the moving distance and moving direction of the avatar object 6A. For example, when the moving direction of the avatar object 6A is the direction closer to the avatar object 6B, the processor 210A increases the charging unit price. For example, the processor 210A lowers the charging unit price when the moving direction of the avatar object 6A is the direction away from the avatar object 6B.
プロセッサ210Aは、第2仮想空間2711A内でアバターオブジェクト6Aを連続的に移動させることもできる。プロセッサ210Aは、例えば、ユーザ5Aによる第1操作に応じて、第1位置4661から第2位置4662までの間の各位置をすべて経由するように、アバターオブジェクト6Aを第1位置4661から第2位置4662まで移動させる。この場合も、プロセッサ210Aは、移動距離4775に応じた課金額を表す課金情報を、タグオブジェクト2733Aに登録する。
The processor 210A can also continuously move the avatar object 6A within the second virtual space 2711A. For example, the processor 210A moves the avatar object 6A from the first position 4661 to the second position so as to pass through all the positions between the first position 4661 and the second position 4662 in response to the first operation by the user 5A. Move to 4662. In this case as well, processor 210A registers billing information indicating the billing amount according to movement distance 4775 in tag object 2733A.
プロセッサ210Aは、ユーザ5Bの第1操作を検出することなく、第2仮想空間2711A内でアバターオブジェクト6Aを自動的に移動させることもできる。プロセッサ210Aは、アバターオブジェクト6Aを自動的に移動させた場合も、移動距離に応じた課金額を表す課金情報をタグオブジェクト2733Aに登録する。
The processor 210A can also automatically move the avatar object 6A within the second virtual space 2711A without detecting the first operation by the user 5B. Even when the avatar object 6A is automatically moved, the processor 210A registers in the tag object 2733A billing information representing the billing amount according to the movement distance.
本実施形態では、プロセッサ210Aは、第2仮想空間2711Aにおいてアバターオブジェクト6Aとは異なるアバターオブジェクト6が配置されない位置にのみ、アバターオブジェクト6Aを移動させることができることを前提とするが、これに限定されるものではない。言い換えれば、ユーザ5Aは、アバターオブジェクト6Aとは異なるアバターオブジェクト6が配置される位置を、アバターオブジェクト6Aの異動先の位置として指定することはできないことを前提とするが、これに限定されるものではない。
In the present embodiment, it is assumed that the processor 210A can move the avatar object 6A only to a position where no avatar object 6 different from the avatar object 6A is placed in the second virtual space 2711A, but is limited to this. not something. In other words, it is assumed that the user 5A cannot designate the position where the avatar object 6 different from the avatar object 6A is placed as the position to which the avatar object 6A is to be transferred, but is limited to this. isn't it.
プロセッサ210Aは、第2仮想空間2711Aにおける規定の範囲内の位置にだけ、アバターオブジェクト6Aを移動させることができることを前提とする。プロセッサ210Aは、例えば、ステージオブジェクト1532上にアバターオブジェクト6Aを移動することを原則として禁止する。プロセッサ210Aは、ユーザ5Bによる許可があった場合、ステージオブジェクト1532上にアバターオブジェクト6Aを移動させることもできる。ただし、これに限定されるものではない。
It is assumed that the processor 210A can move the avatar object 6A only to positions within a prescribed range in the second virtual space 2711A. The processor 210A for example forbids moving the avatar object 6A onto the stage object 1532 in principle. Processor 210A can also move avatar object 6A onto stage object 1532 if authorized by user 5B. However, it is not limited to this.
ユーザ5Bは、アバターオブジェクト6Aの移動を許可するための第2操作を行うことができる。プロセッサ210Bは、ユーザ5Bの第2操作を検出した場合、第2操作の検出を示す検出情報をサーバ600を介してコンピュータ200Aに送信する。プロセッサ210Aは、コンピュータ200Bから送信された検出情報を受信する。プロセッサ210Aは、受信した検出情報に基づいて、ユーザ5Bによる第2操作を検出する。プロセッサ210Aは、第2操作を検出した場合、第2仮想空間2711A内でアバターオブジェクト6Aを移動させることを可能とする。プロセッサ210Aは、例えば、第2操作を検出してから、一定期間、移動させることを可能とする。第2操作は、ユーザ5Bの操作そのものではなく、ユーザ5Bの発話内容などのユーザ5Bの動作であってもよいし、移動させることを可能とする期間を指定する情報としてもよい。これにより、プロセッサ210Aは、ライブ中にユーザ5Bの許可無く勝手にアバターオブジェクト6Aが移動することを防止することができる。言い換えれば、ユーザ5Bは、アバターオブジェクト6Aが移動することができるタイミングを、自らの意志で指定することができる。これにより、ユーザ5Bは、ライブの演出をよりユーザ5Bの望むような形に制御することができる。
The user 5B can perform a second operation for permitting movement of the avatar object 6A. When processor 210B detects the second operation by user 5B, processor 210B transmits detection information indicating detection of the second operation to computer 200A via server 600 . Processor 210A receives detection information transmitted from computer 200B. Processor 210A detects the second operation by user 5B based on the received detection information. The processor 210A enables the avatar object 6A to move within the second virtual space 2711A when detecting the second operation. The processor 210A, for example, enables movement for a certain period of time after detecting the second operation. The second operation may not be the operation itself of the user 5B, but may be an action of the user 5B such as the contents of the speech of the user 5B, or may be information specifying a period during which the movement is allowed. Thereby, the processor 210A can prevent the avatar object 6A from moving freely without permission of the user 5B during the live. In other words, the user 5B can voluntarily specify the timing at which the avatar object 6A can move. As a result, the user 5B can control the performance of the live performance in a manner more desired by the user 5B.
プロセッサ210Aは、第2仮想空間2711Aにおける第1事象の発生を検出することができる。第1事象は、例えば、アバターオブジェクト6Bが何らかの行動を取ることである。アバターオブジェクト6Bの行動は、例えば、図55に示すように、アバターオブジェクト6Bがステージオブジェクト1532上の他の位置に移動することである。第1事象は、ステージオブジェクト1532上でアバターオブジェクト6Bが一定時間以上、規定のパフォーマンスを実行することでもよい。プロセッサ210Aは、第1事象を検出した場合、アバターオブジェクト6Aを第2仮想空間2711A内で移動させることを可能とする。これにより、アバターオブジェクト6Aがライブ中に無作為に移動することを防止することができる。
Processor 210A can detect the occurrence of a first event in second virtual space 2711A. The first event is, for example, the avatar object 6B taking some action. The action of the avatar object 6B is, for example, moving the avatar object 6B to another position on the stage object 1532 as shown in FIG. The first event may be that the avatar object 6B performs a prescribed performance on the stage object 1532 for a certain period of time or longer. The processor 210A enables the avatar object 6A to move within the second virtual space 2711A when the first event is detected. This prevents the avatar object 6A from randomly moving during a live performance.
HMDシステム100において、一定距離ごとの課金単価は、第2仮想空間2711Aのサイズに応じて異なっていてもよい。例えば、第2仮想空間2711Aのサイズがより大きいほど、課金単価はより安い。プロセッサ210Aは、定義された第2仮想空間2711Aのサイズが第1サイズである場合、課金単価として第1課金単価(例えば50円)をコンピュータ200Aに設定する。プロセッサ210Aは、定義された第2仮想空間2711Aのサイズが第1サイズよりも大きい第2サイズの場合、課金単価として第1課金単価よりも安い第2課金単価(例えば20円)をコンピュータ200Aに設定する。プロセッサ210Aは、コンピュータ200Aに設定された課金単価にアバターオブジェクト6Aの移動距離を乗算することによって、第2仮想空間2711Aのサイズおよび移動距離の双方に応じた最適な課金額を算出することができる。
In the HMD system 100, the charging unit price for each fixed distance may differ according to the size of the second virtual space 2711A. For example, the larger the size of the second virtual space 2711A, the cheaper the charge unit price. When the size of the defined second virtual space 2711A is the first size, the processor 210A sets the first billing unit price (eg, 50 yen) to the computer 200A as the billing unit price. When the size of the defined second virtual space 2711A is a second size larger than the first size, the processor 210A sends a second billing unit price (for example, 20 yen) lower than the first billing unit price to the computer 200A. set. The processor 210A can calculate the optimum billing amount according to both the size and the moving distance of the second virtual space 2711A by multiplying the billing unit price set in the computer 200A by the moving distance of the avatar object 6A. .
プロセッサ210Aは、図43に示すライブ映像4239が再生される第2仮想空間4311A内でアバターオブジェクト6Aが移動した場合も、移動距離および移動回数の少なくともいずれかに応じた課金に関する処理を実行することができる。プロセッサ210Aは、他にも、アバターオブジェクト6Bによるパフォーマンスが行われず、かつ、ライブ映像4239が再生されない仮想空間内でアバターオブジェクト6Aが移動した場合も、移動距離および移動回数の少なくともいずれかに応じた課金に関する処理を実行することができる。
Even when avatar object 6A moves within second virtual space 4311A in which live video 4239 shown in FIG. 43 is reproduced, processor 210A executes processing related to charging according to at least one of the moving distance and the number of moving times. can be done. In addition, processor 210A also controls the movement of avatar object 6A in a virtual space in which no performance by avatar object 6B is performed and live video 4239 is not reproduced, according to at least one of the movement distance and the number of movement times. Billing-related processing can be executed.
〔実施形態3〕
本実施形態において、プロセッサ210Aは、ユーザ5Aに対する課金および決済に関する処理を、実施形態1に記載されるタグオブジェクト2733Aを用いた方式によって実行する。しかし、これに限定されず、プロセッサ210Aは、実施形態1に係る方式とは異なる任意の方式によって、ユーザ5Aに対する課金および決済に関する処理を実行することもできる。
[Embodiment 3]
In this embodiment, the processor 210A executes processing related to billing and settlement for the user 5A by the method using the tag object 2733A described in the first embodiment. However, without being limited to this, the processor 210A can also execute processing related to billing and payment for the user 5A by any method different from the method according to the first embodiment.
本実施形態において、プロセッサ210Cは、ユーザ5Cに対する課金および決済に関する処理を、実施形態1に記載されるタグオブジェクト2733Aを用いた方式と同一の方式によって実行する。しかし、これに限定されず、プロセッサ210Cは、実施形態1に係る方式とは異なる任意の方式によって、ユーザ5Cに対する課金および決済に関する処理を実行することもできる。
In this embodiment, the processor 210C executes processing related to billing and payment for the user 5C by the same method as the method using the tag object 2733A described in the first embodiment. However, without being limited to this, the processor 210C can also execute processing related to billing and payment for the user 5C by any method different from the method according to the first embodiment.
[視点共有処理フロー]
図58は、ある実施の形態に従うHMDセット110Aにおいて実行される処理の一部を表すシーケンスチャートである。図59は、ある実施の形態に従う第2仮想空間2711Cおよび視界画像5917Cを示す図である。図59では、プロセッサ210Cは、ユーザ5C(第2ユーザ)に提供される第2仮想空間2711Cにおいて、ユーザ5Bの動きに応じて、ユーザ5B(第3ユーザ)に関連付けられるアバターオブジェクト6B(第3アバター)にパフォーマンス(第1パフォーマンス)を実行させる。プロセッサ210Cは、ユーザ5Cに関連付けられるアバターオブジェクト6C(第2アバター)に、アバターオブジェクト6Bの近くでパフォーマンスを視聴させる。プロセッサ210Cは、ユーザ5A(第1ユーザ)に関連付けられるアバターオブジェクト6A(第1アバター)に、アバターオブジェクト6Bから離れた位置でパフォーマンスを視聴させる。
[Viewpoint sharing processing flow]
FIG. 58 is a sequence chart representing part of the processing performed in HMD set 110A according to one embodiment. FIG. 59 is a diagram showing second virtual space 2711C and view image 5917C according to one embodiment. In FIG. 59, the processor 210C controls the avatar object 6B (third user) associated with the user 5B (third user) in accordance with the movement of the user 5B in the second virtual space 2711C provided to the user 5C (second user). avatar) to perform the performance (first performance). Processor 210C causes avatar object 6C (second avatar) associated with user 5C to view the performance near avatar object 6B. The processor 210C causes the avatar object 6A (first avatar) associated with the user 5A (first user) to view the performance remotely from the avatar object 6B.
第2仮想空間2711Cに同期される第2仮想空間2711Aにおいて、プロセッサ210Aは、ユーザ5Bの動きに応じて、アバターオブジェクト6Bにパフォーマンスを実行させる。プロセッサ210Aは、第2仮想空間2711Aにおいて、アバターオブジェクト6Bによるパフォーマンスをアバターオブジェクト6Aおよび6Cに視聴させる。
In the second virtual space 2711A that is synchronized with the second virtual space 2711C, the processor 210A causes the avatar object 6B to perform performance according to the movement of the user 5B. Processor 210A causes avatar objects 6A and 6C to view the performance by avatar object 6B in second virtual space 2711A.
プロセッサ210Cは、ステージオブジェクト1532へのアバターオブジェクト6Cの移動を案内するメッセージを、ライブ中にユーザ5Cに通知する。プロセッサ210Cは、例えば、図59(A)に示すように、メッセージをタグオブジェクト2733Cに表示する。メッセージは、ステージオブジェクト1532への移動をユーザ5Cに案内するテキストと、アバターオブジェクト6Cを移動させる場合にユーザ5Cに課金される課金額とを含む。図59の例では、アバターオブジェクト6Cをステージオブジェクト1532上に移動させるための課金額は、1000円である。
The processor 210C notifies the user 5C of a message guiding the movement of the avatar object 6C to the stage object 1532 during the live. Processor 210C, for example, displays the message in tag object 2733C, as shown in FIG. 59(A). The message includes text guiding the user 5C to move to the stage object 1532, and the billing amount to be charged to the user 5C when moving the avatar object 6C. In the example of FIG. 59, the billing amount for moving the avatar object 6C onto the stage object 1532 is 1000 yen.
メッセージがタグオブジェクト2733Cに表示された後、プロセッサ210Cは、ユーザ5Cの左手の動きに応じて、図59(A)に示すように、仮想左手1531LCを視界領域15C内に移動させる。プロセッサ210Cは、例えば、図59(A)に示す第2仮想空間2711Cに対応する視界画像5917Cを、図59(B)に示すようにモニタ130Cに表示する。ユーザ5Cは、視界画像5917Cを視認することによって、タグオブジェクト2733Cに表示されるメッセージを確認する。これにより、ユーザ5Cは、新たに1000円の課金額を支払えば、アバターオブジェクト6Cをステージオブジェクト1532上に移動させることができることを認識する。
After the message is displayed on tag object 2733C, processor 210C moves virtual left hand 1531LC into viewing area 15C, as shown in FIG. 59(A), in response to movement of user's 5C left hand. The processor 210C, for example, displays a view image 5917C corresponding to the second virtual space 2711C shown in FIG. 59(A) on the monitor 130C as shown in FIG. 59(B). User 5C confirms the message displayed on tag object 2733C by visually recognizing view image 5917C. Thereby, the user 5C recognizes that the avatar object 6C can be moved onto the stage object 1532 by paying a new charge of 1000 yen.
図60は、ある実施の形態に従う第2仮想空間2711Cおよび視界画像6017Cを示す図である。ユーザ5Cは、視界画像6017Cを視聴することによって、タグオブジェクト2733Cに表示されたメッセージを確認する。ユーザ5Cは、メッセージを確認した結果、アバターオブジェクト6Cをステージオブジェクト1532上に移動させることを望む。この希望を叶えるため、ユーザ5Cは、タグオブジェクト2733Cを選択するための操作を行う。プロセッサ210Cは、ユーザ5Cの操作を検出したことに応じて、タグオブジェクト2733Cに、ステージ移動に対応する課金情報を登録する。詳細には、プロセッサ210Cは、アバターオブジェクト6Cをステージオブジェクト1532上に移動させるたの課金額を表す課金情報をタグオブジェクト2733Cに登録する。課金情報の登録後、プロセッサ210Cは、図60(A)に示すように、アバターオブジェクト6Cをステージオブジェクト1532上に移動させる。プロセッサ210Cは、ステージオブジェクト1532におけるアバターオブジェクト6Bの目の前の位置に、移動後のアバターオブジェクト6Cを配置する。プロセッサ210Cは、アバターオブジェクト
6Cの移動後、アバターオブジェクト6Cのアバター情報をサーバ600に送信する。
FIG. 60 is a diagram showing second virtual space 2711C and view image 6017C according to an embodiment. User 5C confirms the message displayed in tag object 2733C by viewing view image 6017C. User 5C wishes to move avatar object 6C onto stage object 1532 as a result of confirming the message. In order to fulfill this desire, the user 5C performs an operation for selecting the tag object 2733C. Processor 210C registers billing information corresponding to stage movement in tag object 2733C in response to detecting the operation of user 5C. Specifically, the processor 210C registers billing information representing the billing amount for moving the avatar object 6C onto the stage object 1532 in the tag object 2733C. After registering the billing information, the processor 210C moves the avatar object 6C onto the stage object 1532 as shown in FIG. 60(A). The processor 210C places the avatar object 6C after movement at a position in front of the avatar object 6B on the stage object 1532 . The processor 210C transmits the avatar information of the avatar object 6C to the server 600 after moving the avatar object 6C.
プロセッサ210Cは、例えば、図60(A)に示す第2仮想空間2711Cに対応する視界画像6017Cを、図60(B)に示すようにモニタ130Cに表示する。ユーザ5Cは、視界画像6017Cを視認することによって、アバターオブジェクト6Cがステージオブジェクト1532上に移動したことを認識する。ユーザ5Cは、さらに、アバターオブジェクト6Bの目の前でパフォーマンスを楽しんだり、アバターオブジェクト6Bとの(言い換えれば、ユーザ5Bとの)交流を楽しんだりすることができる。
The processor 210C, for example, displays a view image 6017C corresponding to the second virtual space 2711C shown in FIG. 60(A) on the monitor 130C as shown in FIG. 60(B). The user 5C recognizes that the avatar object 6C has moved onto the stage object 1532 by viewing the view image 6017C. The user 5C can also enjoy a performance in front of the avatar object 6B and enjoy interaction with the avatar object 6B (in other words, with the user 5B).
図61は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像6117Aを示す図である。ステップS5801において、プロセッサ210Aは、第2仮想空間2711Cにおいてアバターオブジェクト6Cがステージオブジェクト1532上に移動した後、アバターオブジェクト6Cのアバター情報をサーバ600から受信する。ステップS5802において、プロセッサ210Aは、受信したアバター情報に基づいて、図61(A)に示すように、第2仮想空間2711Aにおいてアバターオブジェクト6Cをステージオブジェクト1532上に移動させる。言い換えれば、プロセッサ210Aとしては、第2仮想空間2711Aを、図60に示す第2仮想空間2711Cに同期させる。プロセッサ210Aは、プロセッサ210Cは、ステージオブジェクト1532におけるアバターオブジェクト6Bの目の前の位置に、アバターオブジェクト6Cを配置する。
FIG. 61 is a diagram showing second virtual space 2711A and view image 6117A according to an embodiment. At step S5801, the processor 210A receives avatar information of the avatar object 6C from the server 600 after the avatar object 6C moves onto the stage object 1532 in the second virtual space 2711C. In step S5802, processor 210A moves avatar object 6C onto stage object 1532 in second virtual space 2711A, as shown in FIG. 61A, based on the received avatar information. In other words, the processor 210A synchronizes the second virtual space 2711A with the second virtual space 2711C shown in FIG. The processor 210A arranges the avatar object 6C at a position on the stage object 1532 in front of the avatar object 6B.
プロセッサ210Aは、アバターオブジェクト6Cをステージオブジェクト1532上に移動した後、アバターオブジェクト6Bのアバター情報をサーバ600から受信する。プロセッサ210Aは、受信したアバター情報に含まれる動き情報に応じて、アバターオブジェクト6Bに、アバターオブジェクト6Cに対するパフォーマンス(第2パフォーマンス)を実行させる。このように、第2仮想空間2711Aにおいて、アバターオブジェクト6Cは、ステージ移動に対応する課金情報がタグオブジェクト2733Cに登録されたことに応じて、アバターオブジェクト6Cに対するアバターオブジェクト6Bによるパフォーマンスを視聴している。
After moving the avatar object 6C onto the stage object 1532, the processor 210A receives the avatar information of the avatar object 6B from the server 600. FIG. Processor 210A causes avatar object 6B to perform a performance (second performance) for avatar object 6C in accordance with the motion information included in the received avatar information. Thus, in the second virtual space 2711A, the avatar object 6C watches the performance of the avatar object 6B for the avatar object 6C in response to the billing information corresponding to the stage movement being registered in the tag object 2733C. .
プロセッサ210Aは、アバターオブジェクト6Cがステージオブジェクト1532上に移動した後、アバターオブジェクト6Aとは異なる他のアバターオブジェクト6の視点をアバターオブジェクト6Aに共有させることをユーザ5Aに案内するメッセージを、ライブ中にユーザ5Aに通知する。プロセッサ210Aは、例えば、タグオブジェクト2733Aにメッセージを表示する。メッセージは、視点共有をユーザ5Aに案内するテキストと、視点を共有させる場合にユーザ5Aに課金される課金額とを含む。図61の例では、視点共有のためにユーザ5Aに課金される課金額は、200円である。メッセージがタグオブジェクト2733Aに表示された後、プロセッサ210Aは、ユーザ5Aの左手の動きに応じて、図61(A)に示すように、仮想左手1531LAを視界領域15A内に
移動させる。
After the avatar object 6C moves onto the stage object 1532, the processor 210A sends a message to the user 5A during the live to guide the avatar object 6A to share the viewpoint of another avatar object 6 different from the avatar object 6A. Notify the user 5A. Processor 210A, for example, displays the message in tag object 2733A. The message includes text guiding the user 5A to share the viewpoint, and the billing amount to be charged to the user 5A when sharing the viewpoint. In the example of FIG. 61, the billing amount charged to the user 5A for viewpoint sharing is 200 yen. After the message is displayed on tag object 2733A, processor 210A moves virtual left hand 1531LA into viewing area 15A, as shown in FIG. 61(A), according to the movement of user's 5A left hand.
プロセッサ210Aは、例えば、図61(A)に示す第2仮想空間2711Aに対応する視界画像6117Aを、図61(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像6117Aを視認することによって、アバターオブジェクト6Cがステージオブジェクト1532上に移動したことを認識する。ユーザ5Aは、さらに、アバターオブジェクト6Cがステージオブジェクト1532上でアバターオブジェクト6Bの近くでパフォーマンスを視認していることを認識する。ユーザ5Aは、さらに、タグオブジェクト2733Cに表示されるメッセージを確認することによって、新たに200円の課金額を支払えば、いずれかのアバターオブジェクト6の視点をアバターオブジェクト6Aに共有させることができることを認識する。
The processor 210A, for example, displays a view image 6117A corresponding to the second virtual space 2711A shown in FIG. 61(A) on the monitor 130A as shown in FIG. 61(B). The user 5A recognizes that the avatar object 6C has moved onto the stage object 1532 by viewing the view image 6117A. User 5A also recognizes that avatar object 6C is viewing the performance on stage object 1532 near avatar object 6B. Further, by confirming the message displayed on the tag object 2733C, the user 5A can make the avatar object 6A share the viewpoint of any of the avatar objects 6 by paying a new charge of 200 yen. recognize.
[課金による視点共有]
図62は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像3417Aを示す図である。ユーザ5Aは、タグオブジェクト2733Aに表示されたメッセージを確認した後、アバターオブジェクト6Cの視点をアバターオブジェクト6Aに共有させることを望む。ユーザ5Aは、この希望を叶えるため、タグオブジェクト2733Aを選択するための操作を行う。ステップS5803において、プロセッサ210Aは、ユーザ5Aの操作を検出した場合、視点共有に対応する課金情報をタグオブジェクト2733Aに登録する。詳細には、プロセッサ210Aは、視点共有に必要な課金額(200円)を表す課金情報をタグオブジェクト2733Aに新たに登録する。プロセッサ210Aは、課金情報が登録されたことに応じて、第2仮想空間2711Aにおいて、他のアバターオブジェクト6の視点をアバターオブジェクト6Aに共有させることを可能とする。プロセッサ210Aは、視点共有が可能になったことを、例えば音声などでユーザ5Aに通知する。プロセッサ210Aは、視点共有が可能になったことを、第2仮想空間2711A内の照明を変更することによってユーザ5Aに通知することもできる。
[Viewpoint sharing by billing]
FIG. 62 is a diagram showing second virtual space 2711A and view image 3417A according to one embodiment. After confirming the message displayed in tag object 2733A, user 5A desires to have avatar object 6A share the viewpoint of avatar object 6C. User 5A performs an operation to select tag object 2733A in order to fulfill this desire. In step S5803, processor 210A registers billing information corresponding to viewpoint sharing in tag object 2733A when an operation by user 5A is detected. Specifically, processor 210A newly registers billing information representing the billing amount (200 yen) required for viewpoint sharing in tag object 2733A. Processor 210A enables avatar object 6A to share the viewpoint of other avatar object 6 in second virtual space 2711A in response to registration of billing information. The processor 210A notifies the user 5A that viewpoint sharing has become possible, for example, by voice. The processor 210A can also notify the user 5A that viewpoint sharing is enabled by changing the lighting in the second virtual space 2711A.
プロセッサ210Aは、タグオブジェクト2733Aが選択された後の右手の動きに応じて、図62(A)に示すように、仮想右手153の1RAの先端がアバターオブジェクト6Cを指し示すように、仮想右手1531RAを動かす。ステップS5804において、プロセッサ210Aは、仮想右手1531RAの先端が指し示すアバターオブジェクト6Cを特定する。
Processor 210A moves virtual right hand 1531RA so that the tip of 1RA of virtual right hand 153 points to avatar object 6C as shown in FIG. move. In step S5804, the processor 210A identifies the avatar object 6C pointed to by the tip of the virtual right hand 1531RA.
プロセッサ210Aは、例えば、図62(A)に示す第2仮想空間2711Aに対応する視界画像6217Aを、図62(B)に示すようにモニタ130Aに表示する。ステップ5805において、プロセッサ210Aは、アバターオブジェクト6Cを示すマーク6277を、視界画像6217Aにおいてアバターオブジェクト6Cに重畳させてモニタ130Aに表示する。プロセッサ210Aは、マーク6277を、アバターオブジェクト6Cに接触または近接する仮想オブジェクトとして第2仮想空間2711Aに配置することもできる。プロセッサ210Aは、視界画像6217Aの生成時に、視界画像4617A内のアバターオブジェクト6Cの位置にマーク6277を含めるようにすることもできる。ユーザ5Aは、視界画像6217A内のマーク6277を視認することによって、アバターオブジェクト6Cを指定したことを把握する。マーク6277の確認後、ユーザ5Aは、アバターオブジェクト6Cの視点をアバターオブジェクト6Aに共有させるための第1操作を行う。第1操作は、例えば、右コントローラ300RAのいずれかのボタンをユーザ5Aが押下することである。
Processor 210A, for example, displays field-of-view image 6217A corresponding to second virtual space 2711A shown in FIG. 62(A) on monitor 130A as shown in FIG. 62(B). At step 5805, processor 210A displays on monitor 130A a mark 6277 indicating avatar object 6C superimposed on avatar object 6C in view image 6217A. The processor 210A can also place the mark 6277 in the second virtual space 2711A as a virtual object in contact with or close to the avatar object 6C. Processor 210A may also cause, when generating view image 6217A, to include mark 6277 at the position of avatar object 6C within view image 4617A. User 5A recognizes that avatar object 6C has been specified by visually recognizing mark 6277 in view image 6217A. After confirming the mark 6277, the user 5A performs the first operation to share the viewpoint of the avatar object 6C with the avatar object 6A. The first operation is, for example, the user 5A pressing any button of the right controller 300RA.
図63は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像6317Aを示す図である。ステップS5806において、プロセッサ210Aは、第1操作が検出されたことに応じて、アバターオブジェクト6Cを選択する。ステップS5807において、プロセッサ210Aは、アバターオブジェクト6Cが選択されたことに応じて、アバターオブジェクト6Cに対するパフォーマンスを視聴しているアバターオブジェクト6Cの視点を、アバターオブジェクト6Aに共有させる。詳細には、プロセッサ210Aは、仮想カメラ14Aを、アバターオブジェクト6Aの位置からアバターオブジェクト6Cの位置まで移動させる。このとき、プロセッサ210Aは、アバターオブジェクト6Aを移動させない。したがって、仮想カメラ14Aが移動した後、第2仮想空間2711Aにおいてアバターオブジェクト6Aおよび仮想カメラ14Aが配置される位置は、互いに異なる。プロセッサ210Aは、アバターオブジェクト6Cの頭部の向きに応じて、移動後の仮想カメラ14Aの向きを制御する。これにより、アバターオブジェクト6Aはアバターオブジェクト6Cの視点を共有することができる。
FIG. 63 is a diagram showing second virtual space 2711A and view image 6317A according to an embodiment. At step S5806, processor 210A selects avatar object 6C in response to detection of the first operation. At step S5807, the processor 210A causes the avatar object 6A to share the viewpoint of the avatar object 6C viewing the performance for the avatar object 6C in response to the avatar object 6C being selected. Specifically, processor 210A moves virtual camera 14A from the position of avatar object 6A to the position of avatar object 6C. At this time, the processor 210A does not move the avatar object 6A. Therefore, after the virtual camera 14A moves, the positions at which the avatar object 6A and the virtual camera 14A are arranged in the second virtual space 2711A are different from each other. The processor 210A controls the orientation of the virtual camera 14A after movement according to the orientation of the head of the avatar object 6C. This allows the avatar object 6A to share the viewpoint of the avatar object 6C.
プロセッサ210Aは、視点共有に対応する課金情報がタグオブジェクト2733Aに登録された場合、アバターオブジェクト6Cを選択するためのUIをタグオブジェクト2733A上に表示することもできる。この場合、ユーザ5Aは、タグオブジェクト2733Aに表示されるUIへの入力を通じて、アバターオブジェクト6Cを選択する。プロセッサ210Aは、UIを通じて選択されたアバターオブジェクト6Cの視点を、アバターオブジェクト6Aに共有させる。プロセッサ210Aは、視点共有に対応する課金情報がタグオブジェクト2733Aに登録された場合、ユーザ5Aにアバターオブジェクト6Cを選択させることなく、アバターオブジェクト6Cの視点を自動的にアバターオブジェクト6Aに共有させることもできる。
Processor 210A can also display a UI for selecting avatar object 6C on tag object 2733A when billing information corresponding to view sharing is registered in tag object 2733A. In this case, user 5A selects avatar object 6C through input to the UI displayed in tag object 2733A. The processor 210A causes the avatar object 6A to share the viewpoint of the avatar object 6C selected through the UI. When billing information corresponding to viewpoint sharing is registered in tag object 2733A, processor 210A can automatically cause avatar object 6A to share the viewpoint of avatar object 6C without causing user 5A to select avatar object 6C. can.
視点共有後、ステップS5808において、プロセッサ210Aは、アバターオブジェクト6Bのアバター情報をサーバ600から受信する。ステップS5809において、プロセッサ210Aは、受信したアバター情報に含まれる動き情報に基づいて、アバターオブジェクト6Bに、アバターオブジェクト6Cに対するパフォーマンス(第2パフォーマンス)を実行させる。このように、アバターオブジェクト6Cは、ステージ移動に対応する課金情報がタグオブジェクト2733Cに登録されたことに応じて、第2仮想空間2711Aにおいてアバターオブジェクト6Cに対するアバターオブジェクト6Bによるパフォーマンスを視聴している。
After sharing the viewpoint, at step S5808, the processor 210A receives the avatar information of the avatar object 6B from the server 600. FIG. In step S5809, processor 210A causes avatar object 6B to perform a performance (second performance) for avatar object 6C based on the motion information included in the received avatar information. In this way, the avatar object 6C watches the performance by the avatar object 6B for the avatar object 6C in the second virtual space 2711A in response to the billing information corresponding to stage movement being registered in the tag object 2733C.
プロセッサ210Aは、例えば、図63(A)に示す第2仮想空間2711Aに対応する視界画像6317A(第1視界画像)を、図63(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像6317Aを視認することによって、アバターオブジェクト6Cの視点がアバターオブジェクト6Aに共有されたことを認識する。言い換えれば、ユーザ5Aは、ユーザ5Cと同様に、アバターオブジェクト6Bの目の前で、アバターオブジェクト6Cに対するパフォーマンスを視聴することができる。
The processor 210A, for example, displays a field-of-view image 6317A (first field-of-view image) corresponding to the second virtual space 2711A shown in FIG. 63(A) on the monitor 130A as shown in FIG. 63(B). The user 5A recognizes that the viewpoint of the avatar object 6C is shared with the avatar object 6A by viewing the view image 6317A. In other words, the user 5A can watch the performance for the avatar object 6C in front of the avatar object 6B, like the user 5C.
図63(A)では、アバターオブジェクト6Cの視点がアバターオブジェクト6Aに共有されるが、アバターオブジェクト6Aそのものはアバターオブジェクト6Bから遠く離れた位置にいる。したがって、ユーザ5Aは、アバターオブジェクト6Aをアバターオブジェクト6Bと直接的に交流させることはできない。例えば、ユーザ5Aは、仮想右手1531RAをアバターオブジェクト6Bに向かって差し出したり、振らせたりすることはできない。プロセッサ210Aは、ユーザ5Bが発した音声をスピーカ180Aに出力しないようにしてもよい。これにより、ユーザ5Aが、ユーザ5Bがアバターオブジェクト6Cに向かって語りかける音声を聴取することはできないようにしてもよい。このように、ユーザ5Aは、ユーザ5Cがアバターオブジェクト6B(ユーザ5B)と交流する様子を、アバターオブジェクト6Cの視点で視認することができるのみである。視点共有のための課金額(200円)は、ステージオブジェクト1532上への移動のための課金額(1000円)よりも安いので、ユーザ5Aは、視点共有後にアバターオブジェクト6Aをアバターオブジェクト6Bと交流させることができないことに納得する。さらに、ユーザ5Aには、視点共有を試してみようという動機が与えられる。
In FIG. 63A, the viewpoint of avatar object 6C is shared with avatar object 6A, but avatar object 6A itself is located far away from avatar object 6B. Therefore, the user 5A cannot directly interact with the avatar object 6A with the avatar object 6B. For example, the user 5A cannot extend the virtual right hand 1531RA toward the avatar object 6B or wave it. The processor 210A may prevent the voice uttered by the user 5B from being output to the speaker 180A. This may prevent the user 5A from listening to the voice spoken by the user 5B toward the avatar object 6C. In this way, the user 5A can only visually recognize how the user 5C interacts with the avatar object 6B (user 5B) from the viewpoint of the avatar object 6C. Since the billing amount (200 yen) for viewpoint sharing is lower than the billing amount (1000 yen) for moving onto the stage object 1532, the user 5A exchanges the avatar object 6A with the avatar object 6B after viewpoint sharing. I agree that it cannot be done. Furthermore, the user 5A is motivated to try out viewpoint sharing.
図64は、ある実施の形態に従う第2仮想空間2711Bおよび視界画像6417Bを示す図である。図64(A)において、ステージオブジェクト1532上にアバターオブジェクト6Bおよびアバターオブジェクト6Cが配置されている。アバターオブジェクト6Aを含む異なる3つのアバターオブジェクト6が、アバターオブジェクト6Cの視点を共有している。プロセッサ210Bは、アバターオブジェクト6Cの視点を共有しているアバターオブジェクト6の数をユーザ5Bに通知するためのモニタオブジェクト6478を、アバターオブジェクト6Cに関連付けて第2仮想空間2711Bに配置する。モニタオブジェクト6478は、アバターオブジェクト6Cの上に配置される。プロセッサ210Bは、モニタオブジェクト6478に、アバターオブジェクト6Cの視点を共有しているアバターオブジェクト6の数を表示する。
FIG. 64 is a diagram showing second virtual space 2711B and view image 6417B according to one embodiment. In FIG. 64A, avatar object 6B and avatar object 6C are placed on stage object 1532 . Three different avatar objects 6, including avatar object 6A, share the viewpoint of avatar object 6C. The processor 210B places a monitor object 6478 for notifying the user 5B of the number of avatar objects 6 sharing the viewpoint of the avatar object 6C in the second virtual space 2711B in association with the avatar object 6C. A monitor object 6478 is placed above the avatar object 6C. Processor 210B displays on monitor object 6478 the number of avatar objects 6 sharing the viewpoint of avatar object 6C.
プロセッサ210Bは、例えば、図64(A)に示す第2仮想空間2711Bに対応する視界画像6417Bを、図64(B)に示すようにモニタ130Bに表示する。ユーザ5Bは、視界画像6417Bを視認することによって、アバターオブジェクト6Bの目の前でアバターオブジェクト6Cがパフォーマンスを視聴していることを認識する。ユーザ5Bは、さらに、モニタオブジェクト6478に表示される数を確認することによって、アバターオブジェクト6Cの視点を他の3つのアバターオブジェクト6が共有していることを認識する。言い換えれば、ユーザ5Bは、アバターオブジェクト6Cに向けたパフォーマンスが、どのくらいの数の他のユーザ5に受けているのかを把握することができる。
The processor 210B, for example, displays a view image 6417B corresponding to the second virtual space 2711B shown in FIG. 64(A) on the monitor 130B as shown in FIG. 64(B). User 5B recognizes that avatar object 6C is watching the performance in front of avatar object 6B by visually recognizing view image 6417B. User 5B also recognizes that three other avatar objects 6 share the viewpoint of avatar object 6C by checking the number displayed on monitor object 6478 . In other words, the user 5B can grasp how many other users 5 have received the performance for the avatar object 6C.
[課金によるアバターオブジェクト6Aの移動]
図65は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像6517Aを示す図である。図65(A)に示すように、プロセッサ210Aは、アバターオブジェクト6Cをステージオブジェクト1532上に移動させた後、規定の条件(例えば、一定時間の経過)が成立した場合、アバターオブジェクト6Cを第2仮想空間2711Aにおける元の位置に戻す。ステップS5810において、プロセッサ210Aは、アバターオブジェクト6Cを元の位置に戻した場合、視点共有を終了する。詳細には、プロセッサ210Aは、仮想カメラ14Aをアバターオブジェクト6Aの位置まで移動させる。
[Movement of avatar object 6A by billing]
FIG. 65 is a diagram showing second virtual space 2711A and view image 6517A according to one embodiment. As shown in FIG. 65(A), after moving the avatar object 6C onto the stage object 1532, the processor 210A moves the avatar object 6C to the second stage if a prescribed condition (for example, a certain period of time has elapsed) is met. It returns to the original position in the virtual space 2711A. At step S5810, the processor 210A ends the viewpoint sharing if the avatar object 6C is returned to its original position. Specifically, processor 210A moves virtual camera 14A to the position of avatar object 6A.
視点共有の終了後、プロセッサ210Aは、ステージオブジェクト1532上へのアバターオブジェクト6Aの移動を案内するメッセージを、ライブ中にユーザ5Aに通知する。プロセッサ210Aは、例えば、タグオブジェクト2733Aにメッセージを表示する。メッセージは、ステージオブジェクト1532への移動をユーザ5Aに案内するテキストと、アバターオブジェクト6Aをステージオブジェクト1532上に移動させる場合にユーザ5Aに課金される課金額とを含む。図65の例では、アバターオブジェクト6Aをステージオブジェクト1532上に移動させるための課金額は、1000円である。
After the viewpoint sharing ends, the processor 210A notifies the user 5A of a message guiding the movement of the avatar object 6A onto the stage object 1532 during the live. Processor 210A, for example, displays the message in tag object 2733A. The message includes text guiding the user 5A to move to the stage object 1532 and the billing amount to be charged to the user 5A when moving the avatar object 6A onto the stage object 1532 . In the example of FIG. 65, the billing amount for moving the avatar object 6A onto the stage object 1532 is 1000 yen.
メッセージの表示後、プロセッサ210Aは、ユーザ5Aの左手の動きに応じて、図65(A)に示すように、仮想左手1531LAを視界領域15A内に移動させる。プロセッサ210Aは、例えば、図65(A)に示す第2仮想空間2711Aに対応する視界画像6517Aを、図65(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像6517Aを視認することによって、視点の共有が終了したことを認識する。ユーザ5Aは、さらに、タグオブジェクト2733Aに表示されるメッセージを確認することによって、新たに1000円の課金額を支払えばアバターオブジェクト6Aをステージオブジェクト1532上に移動させることできることを認識する。
After displaying the message, processor 210A moves virtual left hand 1531LA into viewing area 15A as shown in FIG. 65(A) in accordance with the movement of user 5A's left hand. The processor 210A, for example, displays a view image 6517A corresponding to the second virtual space 2711A shown in FIG. 65(A) on the monitor 130A as shown in FIG. 65(B). The user 5A recognizes that the sharing of the viewpoint has ended by visually recognizing the field-of-view image 6517A. Further, by confirming the message displayed on tag object 2733A, user 5A recognizes that avatar object 6A can be moved onto stage object 1532 by paying a new charge of 1000 yen.
図66は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像6617Aを示す図である。ユーザ5Aは、アバターオブジェクト6Cの視点をアバターオブジェクト6Aに共有させた体験を楽しんだ結果、アバターオブジェクト6Aをステージオブジェクト1532上に移動させることによって、アバターオブジェクト6Bと直接交流することを望む。この希望を叶えるため、ユーザ5Aは、タグオブジェクト2733Aに表示されたメッセージを確認した後、タグオブジェクト2733Aを選択するための操作を行う。ステップS5811において、プロセッサ210Aは、タグオブジェクト2733Aを選択するためのユーザ5Aの操作を検出した場合、ステージ移動に対応する課金情報をタグオブジェクト2733Aに登録する。詳細には、プロセッサ210Aは、視点の共有が終了した後、ステージ移動に対応する課金額(1000円)を表す課金情報を、タグオブジェクト2733Aに新たに登録する。
FIG. 66 is a diagram showing second virtual space 2711A and view image 6617A according to an embodiment. User 5A enjoys the experience of having avatar object 6A share the viewpoint of avatar object 6C and wishes to interact directly with avatar object 6B by moving avatar object 6A onto stage object 1532 . In order to fulfill this desire, the user 5A confirms the message displayed on the tag object 2733A and then performs an operation to select the tag object 2733A. In step S5811, when the processor 210A detects an operation by the user 5A for selecting the tag object 2733A, the processor 210A registers billing information corresponding to stage movement in the tag object 2733A. Specifically, processor 210A newly registers, in tag object 2733A, billing information representing the billing amount (1000 yen) corresponding to stage movement after the sharing of the viewpoint is completed.
ステップS5812において、プロセッサ210Aは、ステージ移動に対応する課金情報がタグオブジェクト2733Aに登録された場合、図66(A)に示すように、アバターオブジェクト6Aをステージオブジェクト1532上に移動させる。プロセッサ210Aは、ステージオブジェクト1532におけるアバターオブジェクト6Bの目の前の位置に、移動後のアバターオブジェクト6Aを配置する。ステップS5813において、プロセッサ210Aは、アバターオブジェクト6Bのアバター情報をサーバ600から受信する。ステップS5814において、アバターオブジェクト制御モジュール1424は、受信したアバター情報に含まれる動き情報に応じて、アバターオブジェクト6Bに、アバターオブジェクト6Aに対するパフォーマンス(第2パフォーマンス)を実行させる。
In step S5812, when billing information corresponding to stage movement is registered in tag object 2733A, processor 210A moves avatar object 6A onto stage object 1532 as shown in FIG. 66(A). The processor 210A places the avatar object 6A after movement at a position in front of the avatar object 6B on the stage object 1532 . At step S5813, the processor 210A receives from the server 600 the avatar information of the avatar object 6B. In step S5814, the avatar object control module 1424 causes the avatar object 6B to perform a performance (second performance) for the avatar object 6A according to the motion information included in the received avatar information.
プロセッサ210Aは、例えば、図66(A)に示す第2仮想空間2711Aに対応する視界画像6617Aを、図66(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像6617Aを視認することによって、アバターオブジェクト6Aがステージオブジェクト1532上に移動したことを認識する。ユーザ5Aは、さらに、アバターオブジェクト6Bの目の前でパフォーマンスを楽しんだり、アバターオブジェクト6Bとの(言い換えれば、ユーザ5Bとの)交流を楽しんだりすることができる。
Processor 210A, for example, displays field-of-view image 6617A corresponding to second virtual space 2711A shown in FIG. 66(A) on monitor 130A as shown in FIG. 66(B). User 5A recognizes that avatar object 6A has moved onto stage object 1532 by viewing view image 6617A. The user 5A can also enjoy a performance in front of the avatar object 6B and enjoy interaction with the avatar object 6B (in other words, with the user 5B).
図66では、視点共有の場合とは異なり、第2仮想空間2711Aにおいてアバターオブジェクト6Aはアバターオブジェクト6Bの目の前にいる。したがって、ユーザ5Aは、仮想右手1531RAをアバターオブジェクト6Bに向かって差し出したり、振らせたりすることができる。プロセッサ210Aは、ユーザ5Bが発した音声をスピーカ180Aに出力する。したがって、ユーザ5Aは、ユーザ5Bがアバターオブジェクト6Aに向かって語りかける音声を聴取することができる。このように、ユーザ5Aは、視点共有の場合とは異なりアバターオブジェクト6Aをアバターオブジェクト6Bと直接交流させることができるので、視点共有の場合に比べてより満足することができる。
In FIG. 66, unlike the case of viewpoint sharing, the avatar object 6A is in front of the avatar object 6B in the second virtual space 2711A. Therefore, the user 5A can hold out the virtual right hand 1531RA toward the avatar object 6B and wave it. Processor 210A outputs the voice uttered by user 5B to speaker 180A. Therefore, the user 5A can hear the voice spoken by the user 5B toward the avatar object 6A. In this way, the user 5A can directly interact with the avatar object 6A with the avatar object 6B unlike in the case of shared viewpoints, so that the user 5A can be more satisfied than in the case of shared viewpoints.
[本実施形態の主要な利点]
プロセッサ210Aは、第2仮想空間2711Aにおいて、アバターオブジェクト6Aとは異なる他のアバターオブジェクト6の視点を、アバターオブジェクト6Aに共有させることができる。これにより、ユーザ5Aは、アバターオブジェクト6Aの視点だけではなく、アバターオブジェクト6Aとは異なる位置にいる他のアバターオブジェクト6の視点でも、アバターオブジェクト6Bのパフォーマンスを視聴することができる。ユーザ5Aは、例えば、アバターオブジェクト6Aを移動させたい位置にアバターオブジェクト6Cがすでにいるために、その位置にアバターオブジェクト6Aを移動させることができない場合であっても、視点共有によってアバターオブジェクト6Cの視点でアバターオブジェクト6Bのパフォーマンスを視聴することができる。このように、HMDシステム100は、第2仮想空間2711Aにおけるユーザ5Aの興趣性をより高めることができる。
[Main advantages of this embodiment]
The processor 210A can cause the avatar object 6A to share the viewpoint of another avatar object 6 different from the avatar object 6A in the second virtual space 2711A. This allows the user 5A to view the performance of the avatar object 6B not only from the viewpoint of the avatar object 6A, but also from the viewpoint of another avatar object 6 located at a position different from that of the avatar object 6A. For example, even if the user 5A cannot move the avatar object 6A to that position because the avatar object 6C is already at the position where the user 5A wants to move the avatar object 6A, the user 5A can move the viewpoint of the avatar object 6C by sharing the viewpoint. , the performance of the avatar object 6B can be viewed. In this way, the HMD system 100 can further enhance the interest of the user 5A in the second virtual space 2711A.
本実施形態では、アバターオブジェクト6Cは、ステージ移動の課金額がユーザ5Cに課金された結果、アバターオブジェクト6Bによるアバターオブジェクト6Cに対するパフォーマンスを視聴する。アバターオブジェクト6Aは、視点共有の課金額がユーザ5Aに課金された場合、課金の結果として行われるアバターオブジェクト6Cに対するパフォーマンスを、アバターオブジェクト6Cの視点で視聴する。これにより、ユーザ5Aは、アバターオブジェクト6Cに対するパフォーマンスを、不完全な形ではあるが事前に体験することができる。ユーザ5Bは、視点共有時のアバターオブジェクト6Bのパフォーマンスに満足した場合、アバターオブジェクト6Bによるパフォーマンスをアバターオブジェクト6Aに対して実行して貰うことを望む。これにより、ユーザ5Aは、ステージ移動のための課金額がユーザ5Aに課金されることを許容する。
In this embodiment, the avatar object 6C watches the performance of the avatar object 6C by the avatar object 6B as a result of the user 5C being charged for the stage movement. When the user 5A is billed for viewpoint sharing, the avatar object 6A views the performance for the avatar object 6C as a result of the billing from the viewpoint of the avatar object 6C. This allows the user 5A to experience the performance for the avatar object 6C in advance, albeit incompletely. When the user 5B is satisfied with the performance of the avatar object 6B when the viewpoint is shared, the user 5B wants the avatar object 6A to perform the performance of the avatar object 6B. Thereby, the user 5A allows the user 5A to be billed for the stage movement.
このように、HMDシステム100は、ステージ移動に対応する課金額をユーザ5Cに課金した後、視点共有に対応する課金額をユーザ5Aに課金し、さらにその課金をきっかけとして、ステージ移動に対応する課金額をユーザ5Aにも課金することができる。このように、HMDシステム100は、ユーザ5Aに対する複数回数の課金サイクルを実現することができるので、より多くの課金額をユーザ5Aに課金することができる。その結果、ユーザ5Bは、ライブの売り上げをより増加させることができる。
In this way, the HMD system 100 charges the user 5C with the billing amount corresponding to the stage movement, and then bills the user 5A with the billing amount corresponding to the viewpoint sharing. The billing amount can also be billed to the user 5A. In this way, the HMD system 100 can realize a plurality of billing cycles for the user 5A, so that the user 5A can be billed with a larger billing amount. As a result, the user 5B can further increase live sales.
[変形例]
視点共有のためのユーザ5Aに対する課金は、必ずしも必要ではない。プロセッサ210Aは、視点共有に対応する課金情報をタグオブジェクト2733Aに登録することなく、視点共有をユーザ5Aに許可することができる。言い換えれば、プロセッサ210Aは、ライブ中の任意の時点におけるユーザ5Aによる操作に応じて、他のアバターオブジェクト6の視点をアバターオブジェクト6Aに共有させることができる。プロセッサ210Aは、ユーザ5Aによる操作を検出することなく、他のアバターオブジェクト6の視点をアバターオブジェクト6Aに自動的に共有させることもできる。
[Modification]
Charging the user 5A for viewpoint sharing is not necessarily required. Processor 210A can allow user 5A to share a view without registering billing information corresponding to view sharing in tag object 2733A. In other words, the processor 210A can cause the avatar object 6A to share the viewpoint of the other avatar object 6 according to the operation by the user 5A at any time during the live. Processor 210A can also cause avatar object 6A to automatically share the viewpoint of other avatar object 6 without detecting an operation by user 5A.
プロセッサ210Aは、ステージオブジェクト1532に配置されない他のアバターオブジェクト6の視点を、アバターオブジェクト6Aに共有させることができる。プロセッサ210Aは、例えば、ユーザ5Aによってアバターオブジェクト6Dが選択された場合、アバターオブジェクト6Dの視点をアバターオブジェクト6Aに共有させる。
The processor 210A can cause the avatar object 6A to share the viewpoint of other avatar objects 6 that are not placed on the stage object 1532 . For example, when the avatar object 6D is selected by the user 5A, the processor 210A causes the avatar object 6A to share the viewpoint of the avatar object 6D.
プロセッサ210Bは、複数の異なるアバターオブジェクト6のそれぞれについて、視点を共有している他のアバターオブジェクト6の数をユーザ5Bに通知することができる。これによりユーザ5Bは、第2仮想空間2711Bにおけるどのアバターオブジェクト6の視点が、より多くのユーザ5の人気を集めているのかを把握することができる。
The processor 210B can inform the user 5B of the number of other avatar objects 6 sharing a viewpoint for each of the plurality of different avatar objects 6. Thereby, the user 5B can grasp which viewpoint of the avatar object 6 in the second virtual space 2711B is gaining popularity among more users 5 .
プロセッサ210Cは、ステージ移動に対応する課金情報を、必ずしもタグオブジェクト2733Cに登録する必要はない。プロセッサ210Cは、例えば、ステージ移動に対応する課金情報をアバターオブジェクト6Cに関連付けてアバターオブジェクト6Cに登録することもできる。プロセッサ210Cは、ステージ移動に対応する課金情報をタグオブジェクト2733Cに登録する代わりに、ステージ移動に対応する課金(第2課金)に関する任意の他の処理を実行することができる。当該他の処理は、例えば、ステージ移動に対応する課金情報をタグオブジェクト2733Cに登録することなくサーバ600に送信することである。
Processor 210C does not necessarily need to register billing information corresponding to stage movement in tag object 2733C. The processor 210C can, for example, associate billing information corresponding to stage movement with the avatar object 6C and register it in the avatar object 6C. Instead of registering the billing information corresponding to the stage movement in the tag object 2733C, the processor 210C can perform any other processing related to the billing corresponding to the stage movement (second billing). The other processing is, for example, transmitting billing information corresponding to stage movement to server 600 without registering it in tag object 2733C.
プロセッサ210Aは、視点共有に対応する課金情報を、必ずしもタグオブジェクト2733Aに登録する必要はない。プロセッサ210Aは、例えば、視点共有に対応する課金情報をアバターオブジェクト6Aに関連付けてアバターオブジェクト6Aに登録することもできる。プロセッサ210Aは、視点共有に対応する課金情報をタグオブジェクト2733Aに登録する代わりに、視点共有に対応する課金(第1課金)に関する任意の他の処理を実行することができる。当該他の処理は、例えば、視点共有に対応する課金情報をタグオブジェクト2733Aに登録することなくサーバ600に送信することである。
Processor 210A does not necessarily need to register billing information corresponding to view sharing in tag object 2733A. The processor 210A can, for example, associate billing information corresponding to viewpoint sharing with the avatar object 6A and register it in the avatar object 6A. Instead of registering the billing information corresponding to view sharing in tag object 2733A, processor 210A can perform any other processing related to billing corresponding to view sharing (first billing). The other processing is, for example, transmitting billing information corresponding to viewpoint sharing to server 600 without registering it in tag object 2733A.
プロセッサ210Aは、ステージ移動に対応する課金情報を、必ずしもタグオブジェクト2733Aに登録する必要はない。プロセッサ210Aは、例えば、ステージ移動に対応する課金情報をアバターオブジェクト6Aに関連付けてアバターオブジェクト6Aに登録することもできる。プロセッサ210Aは、ステージ移動に対応する課金情報をタグオブジェクト2733Aに登録する代わりに、ステージ移動に対応する課金(第3課金)に関する任意の他の処理を実行することができる。当該他の処理は、例えば、課金情報をタグオブジェクト2733Aに登録することなくサーバ600に送信することである。
Processor 210A does not necessarily need to register billing information corresponding to stage movement in tag object 2733A. The processor 210A can, for example, associate billing information corresponding to stage movement with the avatar object 6A and register it in the avatar object 6A. Instead of registering the billing information corresponding to the stage movement in the tag object 2733A, the processor 210A can perform any other processing related to the billing corresponding to the stage movement (third billing). The other processing is, for example, transmitting billing information to server 600 without registering it in tag object 2733A.
ユーザ5Bは、視点共有を許可するための第1操作を行うことができる。プロセッサ210Bは、ユーザ5Bの第1操作を検出した場合、第1操作の検出を示す検出情報をサーバ600を介してコンピュータ200Aに送信する。プロセッサ210Aは、コンピュータ200Bから送信された検出情報を受信する。プロセッサ210Aは、受信した検出情報に基づいて、ユーザ5Bによる第1操作を検出する。プロセッサ210Aは、第1操作が検出された場合、アバターオブジェクト6Aとは異なる他のいずれかのアバターオブジェクト6の視点をアバターオブジェクト6Aに共有させることを可能とする。プロセッサ210Aは、例えば、第1操作を検出した後、一定期間、アバターオブジェクト6Aとは異なる他のいずれかのアバターオブジェクト6の視点をアバターオブジェクト6Aに共有させることを可能とする。第1操作は、ユーザ5Bの操作そのものではなく、ユーザ5Bの発話内容などのユーザ5Bの動作であってもよいし、視点共有させることを可能とする期間を指定する情報としてもよい。これにより、ユーザ5Bの許可無く勝手に他のアバターオブジェクト6の視点がアバターオブジェクト6Aに共有されることを防止することができる。言い換えれば、ユーザ5Bは、アバターオブジェクト6Aが他のアバターオブジェクト6の視点を共有することができるタイミングを、自らの意志で指定することができる。これにより、ユーザ5Bは、ライブの演出をよりユーザ5Bの望むような形に制御することができる。
The user 5B can perform a first operation for permitting viewpoint sharing. When processor 210B detects the first operation by user 5B, processor 210B transmits detection information indicating detection of the first operation to computer 200A via server 600 . Processor 210A receives detection information transmitted from computer 200B. Processor 210A detects the first operation by user 5B based on the received detection information. The processor 210A enables the avatar object 6A to share the viewpoint of any other avatar object 6 different from the avatar object 6A when the first operation is detected. For example, after detecting the first operation, the processor 210A enables the avatar object 6A to share the viewpoint of any other avatar object 6 different from the avatar object 6A for a certain period of time. The first operation may not be the operation of the user 5B itself, but may be an action of the user 5B, such as the content of an utterance by the user 5B, or may be information specifying a period during which the viewpoint can be shared. As a result, it is possible to prevent the viewpoint of another avatar object 6 from being shared by the avatar object 6A without permission from the user 5B. In other words, the user 5B can voluntarily specify the timing at which the avatar object 6A can share the viewpoint of the other avatar object 6. FIG. As a result, the user 5B can control the performance of the live performance in a manner more desired by the user 5B.
プロセッサ210Aは、仮想カメラ14Aをアバターオブジェクト6Cの位置に移動させることなく、アバターオブジェクト6Cの視点をアバターオブジェクト6Aに共有させることができる。プロセッサ210Aは、例えば、アバターオブジェクト6Cの視点をアバターオブジェクト6Aに共有させるためのユーザ5Aの操作を検出した場合、視点共有を要求するための要求情報を、サーバ600を介してコンピュータ200Cに送信する。プロセッサ210Cは、要求情報を受信した場合、仮想カメラ14Cによって生成される、アバターオブジェクト6Cからの視界領域15Cに対応する視界画像6017C(第2視界画像)を、サーバ600を介してコンピュータ200Aに送信する。プロセッサ210Aは、視界画像6017Cを受信した場合、仮想カメラ14Aの制御を一時的に停止する。プロセッサ210Aは、さらに、受信した視界画像6017Cを、モニタ130Aに出力する。ユーザ5Aは、視界画像6017Cを視認することによって、アバターオブジェクト6Cの視点でアバターオブジェクト6Bのパフォーマンスを視聴することができる。
Processor 210A can cause avatar object 6A to share the viewpoint of avatar object 6C without moving virtual camera 14A to the position of avatar object 6C. For example, when the processor 210A detects an operation by the user 5A to cause the avatar object 6C to share the viewpoint of the avatar object 6C, the processor 210A transmits request information for requesting viewpoint sharing to the computer 200C via the server 600. . When the request information is received, the processor 210C transmits a view image 6017C (second view image) generated by the virtual camera 14C and corresponding to the view area 15C from the avatar object 6C to the computer 200A via the server 600. do. When processor 210A receives view image 6017C, it temporarily stops controlling virtual camera 14A. Processor 210A also outputs received view image 6017C to monitor 130A. The user 5A can view the performance of the avatar object 6B from the viewpoint of the avatar object 6C by viewing the view image 6017C.
プロセッサ210Aは、第2仮想空間2711Aにおける第1事象の発生を検出することができる。第1事象は、例えば、アバターオブジェクト6Bが何らかの行動を取ることである。アバターオブジェクト6Bの行動は、例えば、アバターオブジェクト6Bがステージオブジェクト1532上の他の位置に移動することである。第1事象は、ステージオブジェクト1532上でアバターオブジェクト6Bが一定時間以上、規定のパフォーマンスを実行することでもよい。第1事象は、他には、アバターオブジェクト6Cがステージオブジェクト1532上に移動することでもよい。プロセッサ210Aは、第1事象を検出した場合、他のアバターオブジェクト6の視点をアバターオブジェクト6Aに共有させることを可能とする。これにより、勝手に他のアバターオブジェクト6の視点がアバターオブジェクト6Aに共有されることを防止することができる。
Processor 210A can detect the occurrence of a first event in second virtual space 2711A. The first event is, for example, the avatar object 6B taking some action. The action of the avatar object 6B is to move the avatar object 6B to another position on the stage object 1532, for example. The first event may be that the avatar object 6B performs a prescribed performance on the stage object 1532 for a certain period of time or longer. The first event may alternatively be the movement of the avatar object 6C onto the stage object 1532. FIG. Processor 210A enables avatar object 6A to share the viewpoint of other avatar objects 6 when the first event is detected. As a result, it is possible to prevent the viewpoint of another avatar object 6 from being shared by the avatar object 6A without permission.
プロセッサ210Aは、視点の共有後、仮想カメラ14Cの制御に連動させて仮想カメラ14Aを制御することができる。プロセッサ210Aは、例えば、仮想カメラ14Aをアバターオブジェクト6Cの位置に移動させた後、仮想カメラ14Cの位置および向きの制御内容を表す制御情報を、サーバ600を介してコンピュータ200Cから受信する。プロセッサ210Aは、受信した制御情報に応じて、仮想カメラ14Cの制御に連動させて仮想カメラ14Aを制御する。これにより、アバターオブジェクト6Cの視点をアバターオブジェクト6Aが共有していることを、より明瞭にユーザ5Aに実感させることができる。
After sharing the viewpoint, the processor 210A can control the virtual camera 14A in conjunction with the control of the virtual camera 14C. For example, after moving the virtual camera 14A to the position of the avatar object 6C, the processor 210A receives from the computer 200C via the server 600 control information representing the control details of the position and orientation of the virtual camera 14C. Processor 210A controls virtual camera 14A in conjunction with control of virtual camera 14C according to the received control information. This allows the user 5A to more clearly realize that the avatar object 6A shares the viewpoint of the avatar object 6C.
〔実施形態4〕
本実施形態において、プロセッサ210Bは、ユーザ5Bに対する課金および決済に関する処理を、実施形態1に記載されるタグオブジェクト2733Aを用いた方式と同一の方式によって実行する。しかし、これに限定されず、プロセッサ210Bは、実施形態1に係る方式とは異なる任意の方式によって、ユーザ5Bに対する課金および決済に関する処理を実行することもできる。
[Embodiment 4]
In this embodiment, the processor 210B executes processing related to billing and payment for the user 5B by the same method as the method using the tag object 2733A described in the first embodiment. However, without being limited to this, the processor 210B can also execute processing related to billing and payment for the user 5B by any method different from the method according to the first embodiment.
[アバター選択フロー]
図67は、ある実施の形態に従うHMDセット110Bにおいて実行される処理の一部を表すシーケンスチャートである。図68は、ある実施の形態に従う第3仮想空間6811Bおよび視界画像6817Bを示す図である。ステップS6701において、コンピュータ200Bのプロセッサ210B(以下単に「プロセッサ210B」)は、図68(A)に示すような第3仮想空間6811Bを定義する。当該処理は、図11のステップS1110の処理に相当する。具体的には、プロセッサ210Bは、仮想空間データを特定することによって、仮想空間データによって表される第3仮想空間6811Bを定義する。第3仮想空間6811Bは、第2仮想空間2711Bにおけるライブが開始される前にアバターオブジェクト6Bが配置される仮想空間である。第3仮想空間6811Bは、ライブ中にユーザ5Bによって用いられるアバターオブジェクトをユーザ5Bに選択させるための仮想空間でもある。
[Avatar selection flow]
FIG. 67 is a sequence chart representing part of the processing performed in HMD set 110B according to one embodiment. FIG. 68 is a diagram showing a third virtual space 6811B and a view image 6817B according to one embodiment. In step S6701, processor 210B of computer 200B (hereinafter simply "processor 210B") defines a third virtual space 6811B as shown in FIG. 68(A). This process corresponds to the process of step S1110 in FIG. Specifically, the processor 210B defines the third virtual space 6811B represented by the virtual space data by specifying the virtual space data. The third virtual space 6811B is a virtual space in which the avatar object 6B is arranged before the live performance in the second virtual space 2711B is started. The third virtual space 6811B is also a virtual space for allowing the user 5B to select an avatar object to be used by the user 5B during a live performance.
ステップS6702において、プロセッサ210Bは、仮想カメラ14Bを生成し、第3仮想空間6811Bに配置する。ステップS6703において、プロセッサ210Bは、仮想右手1531RBおよび仮想左手1531LBを含むアバターオブジェクト6Bを生成し、第3仮想空間6811Bに配置する。アバターオブジェクト6Bは、ライブ中にユーザ5Bによって使用されるアバターを第3仮想空間6811Bにおいて選択するために、ユーザ5Bによって使用される。本実施形態では、アバターオブジェクト6Bは第2仮想空間2711Bにおいて使用されない。ステップS6704において、プロセッサ210Bは、UIパネル6850およびペンオブジェクト6853を生成し、第3仮想空間6811Bに配置する。
At step S6702, the processor 210B creates the virtual camera 14B and places it in the third virtual space 6811B. At step S6703, the processor 210B generates the avatar object 6B including the virtual right hand 1531RB and the virtual left hand 1531LB and places it in the third virtual space 6811B. Avatar object 6B is used by user 5B to select an avatar in third virtual space 6811B to be used by user 5B during a live performance. In this embodiment, the avatar object 6B is not used in the second virtual space 2711B. In step S6704, processor 210B generates UI panel 6850 and pen object 6853 and places them in third virtual space 6811B.
本実施形態では、複数の異なるアバターオブジェクトが、HMDシステム100に予め用意されている。ユーザ5Bは、複数のアバターオブジェクトの中から、第2仮想空間2711Bにおいてライブに使用する1つのアバターオブジェクトを選択することができる。
In this embodiment, a plurality of different avatar objects are prepared in the HMD system 100 in advance. User 5B can select one avatar object to be used live in second virtual space 2711B from among a plurality of avatar objects.
UIパネル6850はUIオブジェクトの一種であり、複数のアバターオブジェクトの中から1つのアバターオブジェクトを選択するための処理をプロセッサ210Bに実行させるために、ユーザ5Bによって用いられる。UIパネル6850は、UIパネル6850の前面に配置される選択肢6851および6852を含む。選択肢6851および6852は、その選択肢がユーザ5Bによって選択された場合に選択されるアバターオブジェクトの外観を示す画像を含む。選択肢6851は、複数のアバターオブジェクトのうちの第1アバターオブジェクトを選択するための項目であり、選択肢6852は、複数のアバターのうちの第2アバターオブジェクトを選択するための項目である。ペンオブジェクト6853は、仮想オブジェクトの一種であり、UIパネル6850の選択肢6851または6852を選択するために、仮想右手1531RBまたは仮想左手1531LBによって把持されかつ使用される。
UI panel 6850 is a type of UI object, and is used by user 5B to cause processor 210B to execute processing for selecting one avatar object from among a plurality of avatar objects. UI panel 6850 includes options 6851 and 6852 located in front of UI panel 6850 . Choices 6851 and 6852 include images showing the appearance of the avatar object that would be selected if that choice were selected by user 5B. Option 6851 is an item for selecting a first avatar object from among multiple avatar objects, and option 6852 is an item for selecting a second avatar object from among multiple avatars. Pen object 6853 is a kind of virtual object, and is grasped and used by virtual right hand 1531 RB or virtual left hand 1531 LB to select option 6851 or 6852 of UI panel 6850 .
ステップS6705において、プロセッサ210Bは、HMD120Bの動きに応じて第3仮想空間6811Bにおける仮想カメラ14Bの位置および傾きを決定する。当該処理は、図11のステップS1140の処理の一部に相当する。ステップS6706において、プロセッサ210Bは、視界画像17Bをモニタ130Aに表示する。当該処理は、図11のステップS1180およびS1190の処理に相当する。
In step S6705, the processor 210B determines the position and tilt of the virtual camera 14B in the third virtual space 6811B according to the movement of the HMD 120B. This process corresponds to part of the process of step S1140 in FIG. At step S6706, processor 210B displays view image 17B on monitor 130A. This processing corresponds to the processing of steps S1180 and S1190 in FIG.
プロセッサ210Bは、例えば、図68(A)に示す第3仮想空間6811Bに対応する視界画像6817Bを、図68(B)に示すようにモニタ130Bに表示する。ユーザ5Bは、視界画像6817Bを視認することによって、UIパネル6850の選択肢6851または選択肢6852を選択する必要があることを認識する。
The processor 210B, for example, displays a view image 6817B corresponding to the third virtual space 6811B shown in FIG. 68(A) on the monitor 130B as shown in FIG. 68(B). User 5B recognizes that it is necessary to select option 6851 or option 6852 on UI panel 6850 by viewing view image 6817B.
上述したステップS6705およびS6706の処理(すなわち、HMD120Bの動きに応じた視界画像17Bの更新)は、後述するステップS6707~S6709が実行される間にも、継続して繰り返し実行される。
The processing of steps S6705 and S6706 described above (that is, the field-of-view image 17B is updated according to the movement of the HMD 120B) is continuously and repeatedly performed while steps S6707 to S6709, which will be described later, are performed.
ステップS6707において、プロセッサ210Bは、右コントローラ300RBの出力に基づいて、ユーザ5Bの右手の動きを検出する。ステップS6708において、プロセッサ210Bは、検出されたユーザ5Bの右手の動きに応じて、第3仮想空間6811Bにおいて仮想右手1531RBを動かす。ある局面において、プロセッサ210Bは、ユーザ5Bの右手の動きに応じて、ペンオブジェクト6853に仮想右手1531RBを近づけるように、第3仮想空間6811Bにおいて仮想右手1531RBを動かす。プロセッサ210Bは、仮想右手1531RBがペンオブジェクト6853に十分に近づいた後、ユーザ5Bの右手の動きに基づいて、仮想右手1531RBでペンオブジェクト6853を選択する(掴む)。
At step S6707, the processor 210B detects movement of the right hand of the user 5B based on the output of the right controller 300RB. At step S6708, the processor 210B moves the virtual right hand 1531RB in the third virtual space 6811B in accordance with the detected movement of the right hand of the user 5B. In one aspect, the processor 210B moves the virtual right hand 1531RB in the third virtual space 6811B so as to bring the virtual right hand 1531RB closer to the pen object 6853 in response to the movement of the right hand of the user 5B. After the virtual right hand 1531RB comes sufficiently close to the pen object 6853, the processor 210B selects (grabs) the pen object 6853 with the virtual right hand 1531RB based on the movement of the right hand of the user 5B.
図69は、ある実施の形態に従う第3仮想空間6811Bおよび視界画像6917Bを示す図である。図69(A)に示すように、プロセッサ210Bは、仮想右手1531RBがペンオブジェクト6853を選択した後、ユーザ5Bの右手の動きに基づいて、ペンオブジェクト6853の先端を選択肢6851に近づけるように、第3仮想空間6811Bにおいて仮想右手1531RBおよびペンオブジェクト6853を動かす。プロセッサ210Bは、ペンオブジェクト6853の先端と選択肢6851とが衝突したことに基づいて、ペンオブジェクト6853によって選択肢6851が選択されたことを検出する。ステップS6709において、プロセッサ210Bは、複数のアバターオブジェクトの中から、選択された選択肢6851に対応するアバターオブジェクト7106Bを選択する。アバターオブジェクト7106Bの外観およびサイズは、アバターオブジェクト6Bの外観およびサイズとは異なっている。
FIG. 69 is a diagram showing a third virtual space 6811B and a view image 6917B according to one embodiment. As shown in FIG. 69A, after the virtual right hand 1531RB selects the pen object 6853, the processor 210B moves the tip of the pen object 6853 closer to the option 6851 based on the movement of the right hand of the user 5B. 3 Move virtual right hand 1531RB and pen object 6853 in virtual space 6811B. The processor 210B detects that the pen object 6853 has selected the option 6851 based on the collision between the tip of the pen object 6853 and the option 6851 . At step S6709, the processor 210B selects the avatar object 7106B corresponding to the selected option 6851 from among the plurality of avatar objects. The appearance and size of avatar object 7106B is different from the appearance and size of avatar object 6B.
プロセッサ210Bは、例えば、図69(A)に示す第3仮想空間6811Bに対応する視界画像6917Bを、図69(B)に示すようにモニタ130Aに表示する。ユーザ5Bは、視界画像6917Bを視認することによって、UIパネル6850の選択肢6851を選択したことによってアバターオブジェクト7106Bを選択したことを、認識する。
Processor 210B displays, for example, view image 6917B corresponding to third virtual space 6811B shown in FIG. 69(A) on monitor 130A as shown in FIG. 69(B). User 5B recognizes that avatar object 7106B has been selected by selecting option 6851 on UI panel 6850 by visually recognizing view image 6917B.
プロセッサ210Bは、アバターオブジェクト7106Bの選択後、第3仮想空間6811Bにおけるアバターオブジェクト6Bの配置を終了する。この後、プロセッサ210Bは、第3仮想空間6811Bの定義を継続する。プロセッサ210Bは、さらに、アバターオブジェクト6Bが配置されなくなった後も、第3仮想空間6811Bには他の仮想オブジェクトを配置したままにする。プロセッサ210Bは、ユーザ5Bに対する第3仮想空間6811Bの提供を中断する。プロセッサ210Bは、さらに、アバターオブジェクト7106Bにパフォーマンスを実行させる一連の処理を実行することによって、第2仮想空間2711Bをユーザ5Bに新たに提供する。
After selecting avatar object 7106B, processor 210B finishes arranging avatar object 6B in third virtual space 6811B. Thereafter, processor 210B continues definition of third virtual space 6811B. Further, the processor 210B keeps placing other virtual objects in the third virtual space 6811B even after the avatar object 6B is no longer placed. Processor 210B suspends provision of third virtual space 6811B to user 5B. Processor 210B further provides a second virtual space 2711B to user 5B by executing a series of processes that cause avatar object 7106B to perform a performance.
ユーザ5Bによるアバターオブジェクトの選択方式は、上述した例に限定されない。プロセッサ210Bは、例えば、選択肢6851が示す第1アバターオブジェクトおよび選択肢6852が示す第2アバターオブジェクトを、第3仮想空間6811Bに配置してもよい。ユーザ5Bは、例えば、仮想右手1531RBを、第3仮想空間6811Bに配置される第1アバターオブジェクトまたは第2アバターオブジェクトに接触させる。プロセッサ210Bは、仮想右手1531RBに接触したアバターオブジェクトを選択する。
A method of selecting an avatar object by the user 5B is not limited to the example described above. Processor 210B may arrange, for example, the first avatar object indicated by option 6851 and the second avatar object indicated by option 6852 in third virtual space 6811B. The user 5B, for example, brings the virtual right hand 1531RB into contact with the first avatar object or the second avatar object placed in the third virtual space 6811B. Processor 210B selects the avatar object that touches virtual right hand 1531RB.
[パフォーマンス実行処理フロー]
図70は、ある実施の形態に従うHMDセット110Bにおいて実行される処理の一部を表すシーケンスチャートである。図71は、ある実施の形態に従う第2仮想空間2711Bおよび視界画像7117Aを示す図である。ステップS7001において、プロセッサ210Bは、図71(A)に示すような第2仮想空間2711Bを定義する。ステップS7002において、プロセッサ210Bは、仮想カメラ14Bを生成し、第2仮想空間2711Bに配置する。ステップS7003において、プロセッサ210Bは、ステージオブジェクト1532を生成し、第2仮想空間2711Bに配置する。ステップS7004において、プロセッサ210Bは、アバターオブジェクト6A、6C、および6Dの各アバター情報を、サーバ600から受信する。ステップS7005において、プロセッサ210Bは、受信した各アバター情報に基づいて、アバターオブジェクト6A、6C、および6Dを第2仮想空間2711Bに配置する。
[Performance execution processing flow]
FIG. 70 is a sequence chart representing part of the processing performed in HMD set 110B according to one embodiment. FIG. 71 is a diagram showing second virtual space 2711B and view image 7117A according to one embodiment. At step S7001, the processor 210B defines a second virtual space 2711B as shown in FIG. 71(A). In step S7002, the processor 210B creates the virtual camera 14B and places it in the second virtual space 2711B. In step S7003, the processor 210B creates a stage object 1532 and places it in the second virtual space 2711B. At step S7004, processor 210B receives from server 600 each avatar information of avatar objects 6A, 6C and 6D. At step S7005, processor 210B places avatar objects 6A, 6C, and 6D in second virtual space 2711B based on the received avatar information.
ステップS7006において、プロセッサ210Bは、仮想右手7131RBおよび仮想左手7131LBを含むアバターオブジェクト7106B(第1アバター)を、ユーザ5B(第1ユーザ)に関連付けて第2仮想空間2711Bに配置する。詳細には、プロセッサ210Bは、アバターオブジェクト7106Bをステージオブジェクト1532上に配置する。図示しないが、プロセッサ210Bは、任意のタイミングで、アバターオブジェクト6Bのアバター情報を生成し、サーバ600に送信する。
In step S7006, the processor 210B arranges the avatar object 7106B (first avatar) including the virtual right hand 7131RB and the virtual left hand 7131LB in the second virtual space 2711B in association with the user 5B (first user). Specifically, processor 210B places avatar object 7106B on stage object 1532 . Although not shown, the processor 210B generates avatar information of the avatar object 6B and transmits it to the server 600 at arbitrary timing.
ステップS7007において、プロセッサ210Bは、タグオブジェクト2733Bを生成し、アバターオブジェクト7106Bに関連付ける。詳細には、プロセッサ210Bは、タグオブジェクト2733Bをアバターオブジェクト7106Bの仮想左手7131LBに配置する。プロセッサ210Bは、ライブ中にユーザ5Bに課金されることが可能な課金額の上限を表す上限課金情報を、タグオブジェクト2733Bに登録する。
At step S7007, the processor 210B creates a tag object 2733B and associates it with the avatar object 7106B. Specifically, processor 210B places tag object 2733B in virtual left hand 7131LB of avatar object 7106B. Processor 210B registers, in tag object 2733B, upper limit billing information representing the upper limit of the billing amount that can be billed to user 5B during a live performance.
ステージオブジェクト1532上にアバターオブジェクト7106Bが配置された後、第2仮想空間2711Bにおいて、アバターオブジェクト7106Bによるライブが開始される。図71(A)は、ライブが開始された時点の第2仮想空間2711Bを表す。プロセッサ210Bは、ライブの開始時点では、タグオブジェクト2733Bに課金情報を登録しない。ステップS7008において、プロセッサ210Bは、HMD120Bの動きに応じて第2仮想空間2711Bにおける仮想カメラ14Bの位置および傾きを決定する。この処理は、ステップS2305における処理と基本的に同一であるため、詳細な説明を繰り返さない。ステップS7009において、プロセッサ210Bは、視界画像17Bをモニタ130Bに表示する。この処理は、ステップS2306における処理と基本的に同一であるため、詳細な説明を繰り返さない。
After the avatar object 7106B is placed on the stage object 1532, a live performance by the avatar object 7106B is started in the second virtual space 2711B. FIG. 71(A) represents the second virtual space 2711B at the time when the live was started. Processor 210B does not register billing information in tag object 2733B at the start of the live. In step S7008, the processor 210B determines the position and tilt of the virtual camera 14B in the second virtual space 2711B according to the movement of the HMD 120B. Since this process is basically the same as the process in step S2305, detailed description will not be repeated. At step S7009, processor 210B displays view image 17B on monitor 130B. Since this process is basically the same as the process in step S2306, detailed description will not be repeated.
プロセッサ210Bは、例えば、図71(A)に示す第2仮想空間2711Bに対応する視界画像7117Bを、図71(B)に示すようにモニタ130Bに表示する。プロセッサ210Bは、上限課金情報が表す上限課金額をタグオブジェクト2733Bに表示する。プロセッサ210Bは、さらに、課金情報がタグオブジェクト2733Aに登録されていないことに応じて、合計課金額として0円をタグオブジェクト2733Aに表示する。ユーザ5Bは、視界画像7117Bを視認することによって、ライブの視聴者であるアバターオブジェクト6A、6C、および6Dがステージオブジェクト1532の前にいることを認識する。ユーザ5Bは、さらに、ライブの開始時点ではアバターオブジェクト7106Bの使用料がユーザ5Bに課金されていないことを認識する。
The processor 210B, for example, displays a view image 7117B corresponding to the second virtual space 2711B shown in FIG. 71(A) on the monitor 130B as shown in FIG. 71(B). Processor 210B displays the maximum billing amount indicated by the maximum billing information in tag object 2733B. Further, processor 210B displays 0 yen as the total billing amount in tag object 2733A in response to billing information not being registered in tag object 2733A. User 5B recognizes that avatar objects 6A, 6C, and 6D, which are live viewers, are in front of stage object 1532 by visually recognizing view image 7117B. User 5B also recognizes that the usage fee for avatar object 7106B has not been charged to user 5B at the start of the live.
図72は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像7217Aを示す図である。プロセッサ210Aは、第2仮想空間2711Bが定義された後、アバターオブジェクト6Bのアバター情報をサーバ600からリアルタイムに受信する。プロセッサ210Aは、最初に受信したアバターオブジェクト6Bのアバター情報に基づいて、図72(A)に示すように、アバターオブジェクト7106Bを第2仮想空間2711Aに配置する。詳細には、プロセッサ210Aは、アバターオブジェクト7106Bをステージオブジェクト1532上に配置する。
FIG. 72 is a diagram showing second virtual space 2711A and view image 7217A according to an embodiment. The processor 210A receives the avatar information of the avatar object 6B from the server 600 in real time after the second virtual space 2711B is defined. Processor 210A arranges avatar object 7106B in second virtual space 2711A, as shown in FIG. 72(A), based on the avatar information of avatar object 6B received first. Specifically, processor 210 A places avatar object 7106 B on stage object 1532 .
プロセッサ210Aは、例えば、図72(A)に示す第2仮想空間2711Aに対応する視界画像7217Aを、図72(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像7217Aを視認することによって、ライブの演者であるアバターオブジェクト7106Bがステージオブジェクト1532上に登場したことを認識する。ユーザ5は、さらに、アバターオブジェクト7106Bによるライブがこれから開始されることを認識する。
The processor 210A, for example, displays a view image 7217A corresponding to the second virtual space 2711A shown in FIG. 72(A) on the monitor 130A as shown in FIG. 72(B). User 5A recognizes that avatar object 7106B, a live performer, has appeared on stage object 1532 by visually recognizing view image 7217A. User 5 also recognizes that a live performance by avatar object 7106B is about to start.
図73は、ある実施形態に係るユーザ5Bの姿勢の一例を表す図である。ライブの開始後、ユーザ5Bは、例えば図73に示す姿勢を取るように自身の身体を動かす。ステップS7010において、プロセッサ210Bは、各モーションセンサの出力に基づいて、図73に示す姿勢を取った際のユーザ5Bの動きを検出する。
FIG. 73 is a diagram illustrating an example of a posture of user 5B according to an embodiment. After starting the live performance, the user 5B moves his or her body so as to take the posture shown in FIG. 73, for example. In step S7010, processor 210B detects the motion of user 5B when taking the posture shown in FIG. 73 based on the output of each motion sensor.
図74は、ある実施の形態に従う第2仮想空間2711Bおよび視界画像7417Bを示す図である。ステップS7011において、プロセッサ210Bは、ユーザ5Bの動きに応じて、図74(A)に示すように、第2仮想空間2711Bにおいてアバターオブジェクト7106Bにパフォーマンスを実行させる。詳細には、プロセッサ210Bは、図73に示すユーザ5Bの身体の動きを、アバターオブジェクト7106Bに反映させる。プロセッサ210Bは、アバターオブジェクト7106Bがパフォーマンスを実行した際のアバターオブジェクト7106Bの動き情報を含むアバター情報を、サーバ600にリアルタイムに送信する。
FIG. 74 is a diagram showing second virtual space 2711B and view image 7417B according to an embodiment. In step S7011, the processor 210B causes the avatar object 7106B to perform in the second virtual space 2711B according to the movement of the user 5B, as shown in FIG. 74(A). Specifically, the processor 210B causes the body movements of the user 5B shown in FIG. 73 to be reflected in the avatar object 7106B. Processor 210B transmits avatar information including movement information of avatar object 7106B when avatar object 7106B performs a performance to server 600 in real time.
プロセッサ210Bは、例えば、図74(A)に示す第2仮想空間2711Bに対応する視界画像7417Bを、図74(B)に示すようにモニタ130Bに表示する。ユーザ5Bは、視界画像7417Bを視認することによって、パフォーマンスに対するアバターオブジェクト6A、6C、および6Dの反応を確認する。
The processor 210B, for example, displays a view image 7417B corresponding to the second virtual space 2711B shown in FIG. 74(A) on the monitor 130B as shown in FIG. 74(B). User 5B confirms the reactions of avatar objects 6A, 6C, and 6D to the performance by viewing view image 7417B.
図75は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像7517Aを示す図である。第2仮想空間2711Bにおいてアバターオブジェクト7106Bがパフォーマンスを実行した後、プロセッサ210Aは、アバターオブジェクト7106Bのアバター情報をサーバ600からリアルタイムに受信する。プロセッサ210Aは、受信したアバター情報に含まれる動き情報に基づいて、アバターオブジェクト7106Bにパフォーマンスを実行させる。これにより、プロセッサ210Aは、図73に示すユーザ5Bの動きに応じて、アバターオブジェクト7106Bにパフォーマンスを実行させることができる。プロセッサ210Aは、アバターオブジェクト7106Bによるパフォーマンスを、第2仮想空間2711Aにおいてアバターオブジェクト6Aに視聴させる。プロセッサ210Aは、例えば、図75(A)に示す第2仮想空間2711Aに対応する視界画像7517Aを、図75(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像7517Aを視認することによって、アバターオブジェクト7106Bがステージオブジェクト1532上で第1パフォーマンスを実行したことを認識する。これにより、ユーザ5Aは、アバターオブジェクト6Aの視点で、アバターオブジェクト7106Bによるパフォーマンスを楽しむことができる。
FIG. 75 is a diagram showing second virtual space 2711A and view image 7517A according to one embodiment. After the performance of avatar object 7106B in second virtual space 2711B, processor 210A receives avatar information of avatar object 7106B from server 600 in real time. Processor 210A causes avatar object 7106B to perform a performance based on the motion information contained in the received avatar information. This allows the processor 210A to cause the avatar object 7106B to perform the performance according to the movement of the user 5B shown in FIG. Processor 210A causes avatar object 6A to view the performance by avatar object 7106B in second virtual space 2711A. The processor 210A, for example, displays a view image 7517A corresponding to the second virtual space 2711A shown in FIG. 75(A) on the monitor 130A as shown in FIG. 75(B). User 5A recognizes that avatar object 7106B performed the first performance on stage object 1532 by visually recognizing view image 7517A. Thereby, the user 5A can enjoy the performance by the avatar object 7106B from the viewpoint of the avatar object 6A.
[課金情報の登録]
図76は、ある実施の形態に従う第2仮想空間2711Bおよび視界画像7617Bを示す図である。図76(A)に示す第2仮想空間2711Bにおいて、アバターオブジェクト7106Bのライブはすでに終了している。ステップS7012において、プロセッサ210Bは、第2仮想空間2711Bにおけるアバターオブジェクト7106Bのパフォーマンスに応じた課金情報を、タグオブジェクト2733Bに登録する。プロセッサ210Bは、例えば、第2仮想空間2711Bにおいてアバターオブジェクト7106Bが使用された時間に応じた課金額を表す課金情報を、ライブが終了した後にタグオブジェクト2733Bに登録する。プロセッサ210Bは、ライブの開始時点から終了時点までの経過時間に、アバターオブジェクト7106Bに設定される一定時間ごとの課金単価を乗算することによって、アバターオブジェクト7106Bの使用料である課金額を算出する。図76では、課金額として1000円が算出される。プロセッサ210Bは、算出された課金額を表す課金情報を、タグオブジェクト2733Bに登録する。プロセッサ210Bは、登録された課金情報をタグオブジェクト2733B上で視覚化する。
[Registration of billing information]
FIG. 76 is a diagram showing second virtual space 2711B and view image 7617B according to one embodiment. In the second virtual space 2711B shown in FIG. 76(A), the live performance of the avatar object 7106B has already ended. In step S7012, the processor 210B registers billing information according to the performance of the avatar object 7106B in the second virtual space 2711B in the tag object 2733B. Processor 210B, for example, registers billing information representing the billing amount according to the time that avatar object 7106B is used in second virtual space 2711B in tag object 2733B after the live performance ends. Processor 210B multiplies the elapsed time from the start of the live performance to the end of the live performance by the unit charge per fixed time set for avatar object 7106B, thereby calculating the charge for using avatar object 7106B. In FIG. 76, 1000 yen is calculated as the billing amount. Processor 210B registers billing information representing the calculated billing amount in tag object 2733B. Processor 210B visualizes the registered billing information on tag object 2733B.
プロセッサ210Bは、例えば、図76(A)に示す第2仮想空間2711Bに対応する視界画像7617Bを、図76(B)に示すようにモニタ130Bに表示する。ユーザ5Bは、視界画像7617Bを視認することによって、アバターオブジェクト7106Bの使用料として1000円がユーザ5Bに課金されたことを把握する。
The processor 210B, for example, displays a view image 7617B corresponding to the second virtual space 2711B shown in FIG. 76(A) on the monitor 130B as shown in FIG. 76(B). By visually recognizing the view image 7617B, the user 5B understands that 1000 yen has been charged to the user 5B as the usage fee for the avatar object 7106B.
ユーザ5Bは、ライブ終了時点での合計課金額を確認した後、アバターオブジェクト7106Bを第2仮想空間2711Bから退出させるための操作を行う。この操作は、例えば、右コントローラ300RBのいずれかのボタンをユーザ5Bが押下することである。ステップS7013において、プロセッサ210Bは、アバターオブジェクト7106Bを退出させるためのユーザ5Bの操作を検出したことに応じて、アバターオブジェクト7106Bを第2仮想空間2711Bから退出させる。これにより、プロセッサ210Bは、ユーザ5Bに対する第2仮想空間2711Bの提供を終了する。
After confirming the total billing amount at the end of the live performance, the user 5B performs an operation for leaving the avatar object 7106B from the second virtual space 2711B. This operation is, for example, the user 5B pressing any button of the right controller 300RB. In step S7013, the processor 210B causes the avatar object 7106B to leave the second virtual space 2711B in response to detecting the operation of the user 5B for leaving the avatar object 7106B. Thereby, the processor 210B finishes providing the second virtual space 2711B to the user 5B.
図77は、ある実施の形態に従う第3仮想空間6811Bおよび視界画像7717Bを示す図である。ステップS7014において、プロセッサ210Bは、アバターオブジェクト6Bを、図77(A)に示すように再び第3仮想空間6811Bに配置する。このとき、プロセッサ210Bは、仮想左手1531LBにタグオブジェクト2733Bを配置しない。ステップS7015において、プロセッサ210Bは、タグオブジェクト2733Bに登録された課金情報に応じた決済に関する処理を実行する。この処理は、ステップS2618における処理と基本的に同一であるため、詳細な説明を繰り返さない。
FIG. 77 is a diagram showing a third virtual space 6811B and a view image 7717B according to one embodiment. In step S7014, the processor 210B arranges the avatar object 6B again in the third virtual space 6811B as shown in FIG. 77(A). At this time, processor 210B does not place tag object 2733B in virtual left hand 1531LB. In step S7015, processor 210B executes processing related to settlement according to the billing information registered in tag object 2733B. Since this process is basically the same as the process in step S2618, detailed description will not be repeated.
プロセッサ210Bは、例えば、図77(A)に示す第3仮想空間6811Bに対応する視界画像7717Bを、図77(B)に示すようにモニタ130Bに表示する。サーバ600は、決済が終了したことをコンピュータ200Bに通知する。プロセッサ210Bは、決済の完了がサーバ600から通知されたことに応じて、決済が完了したことを視界画像7717B上でユーザ5Bに通知する。プロセッサ210Bは、例えば、決済が完了したことを説明するメッセージを含む通知画像3735を、視界画像7717Bに重畳させてモニタ130Bに表示する。プロセッサ210Bは、通知画像3735と同一の外観を有する仮想オブジェクトを、第2仮想空間2711Bにおける視界領域15B内の任意の位置に配置することもできる。プロセッサ210Bは、あるいは、視界画像7717Bの生成時に、視界画像7717B内の任意の位置に通知画像3735を含めることもできる。ユーザ5Bは、視界画像7717Bを視認することによって、ライブの終了後、第3仮想空間6811Bにアバターオブジェクト6Bが再び配置されたことを認識する。ユーザ5Bは、さらに、通知画像3735を視認することによって、アバターオブジェクト7
106Bの使用料に対応する課金額の決済が完了したことを把握する。ユーザ5Bは、さらに、第3仮想空間6811Bにおいて仮想左手7131LBにタグオブジェクト2733Bが配置されないので、アバターオブジェクト7106Bの使用料金がこれ以上課金されないことを認識する。
The processor 210B, for example, displays a view image 7717B corresponding to the third virtual space 6811B shown in FIG. 77(A) on the monitor 130B as shown in FIG. 77(B). Server 600 notifies computer 200B that the payment has been completed. Processor 210B notifies user 5B of the completion of payment on view image 7717B in response to notification of completion of payment from server 600 . Processor 210B displays, for example, notification image 3735 including a message explaining that payment has been completed on monitor 130B while superimposing it on view image 7717B. Processor 210B can also place a virtual object having the same appearance as notification image 3735 at any position within view area 15B in second virtual space 2711B. Processor 210B may alternatively include notification image 3735 at any location within view image 7717B when view image 7717B is generated. By visually recognizing the view image 7717B, the user 5B recognizes that the avatar object 6B has been placed again in the third virtual space 6811B after the end of the live performance. The user 5B further sees the notification image 3735, thereby confirming that the avatar object 7
It grasps that the settlement of the billing amount corresponding to the usage fee of 106B has been completed. User 5B also recognizes that since tag object 2733B is not placed on virtual left hand 7131LB in third virtual space 6811B, no further usage fee for avatar object 7106B will be charged.
ステップS7016において、プロセッサ210Bは、アバターオブジェクト7106Bの作成者への報酬を決定する。プロセッサ210Bは、詳細には、タグオブジェクト2733Bに登録された課金情報に応じて報酬を決定する。課金情報はアバターオブジェクト7106Bのパフォーマンスに応じて登録されるので、課金情報に応じて報酬を決定することは、アバターオブジェクト7106Bのパフォーマンスに応じて報酬を決定することと同義である。図76の例では、第2仮想空間2711Bにおいてアバターオブジェクト7106Bが使用された時間に応じた課金額を表す課金情報が登録される。したがって、プロセッサ210Bは、第2仮想空間2711Bにおいてアバターオブジェクト7106Bが使用された時間に応じた報酬を決定する。
At step S7016, the processor 210B determines a reward for the creator of the avatar object 7106B. Processor 210B determines the reward, in particular, according to billing information registered in tag object 2733B. Since the billing information is registered according to the performance of avatar object 7106B, determining the reward according to the billing information is synonymous with determining the reward according to the performance of avatar object 7106B. In the example of FIG. 76, billing information representing the billing amount according to the time during which avatar object 7106B is used in second virtual space 2711B is registered. Therefore, processor 210B determines a reward according to the time avatar object 7106B is used in second virtual space 2711B.
ステップS7017において、プロセッサ210Bは、決定された報酬をアバターオブジェクト7106Bの作成者に支払うための処理を実行する。プロセッサ210Bは、例えば、決定された報酬をサーバ600に通知する。サーバ600は、決済の実行後、通知された報酬をアバターオブジェクト7106Bの作成者に支払う。サーバ600は、アバターオブジェクト7106Bが使用されるライブが終了するたびに、報酬をアバターオブジェクト7106Bの使用者に支払うことができる。サーバ600は、あるいは、一定期間(例えば一ヶ月)内のアバターオブジェクト7106Bの使用料の合計に応じた報酬を、一定期間が経過した時点でアバターオブジェクト7106Bの作成者にまとめて支払うこともできる。サーバ600ではなくプロセッサ210Bが、課金情報に応じた報酬をアバターオブジェクト7106Bの作成者に支払うこともできる。
At step S7017, processor 210B performs processing to pay the determined reward to the creator of avatar object 7106B. Processor 210B, for example, notifies server 600 of the determined reward. After executing the payment, server 600 pays the notified reward to the creator of avatar object 7106B. Server 600 can pay a reward to the user of avatar object 7106B each time a live performance in which avatar object 7106B is used ends. Alternatively, the server 600 can collectively pay the creator of the avatar object 7106B a reward according to the total usage fee of the avatar object 7106B within a certain period of time (for example, one month) when the certain period of time has elapsed. Processor 210B, rather than server 600, may pay the creator of avatar object 7106B a reward according to billing information.
[本実施形態の主要な利点]
以上のように、プロセッサ210Bは、第2仮想空間2711Bにおけるアバターオブジェクト7106Bのパフォーマンスに応じた課金情報を、タグオブジェクト2733Bに登録する。このように、HMDシステム100は、第2仮想空間2711Bにおける好適な課金方式をユーザ5Bに提供することができる。
[Main advantages of this embodiment]
As described above, processor 210B registers billing information corresponding to the performance of avatar object 7106B in second virtual space 2711B in tag object 2733B. Thus, the HMD system 100 can provide the user 5B with a suitable billing scheme in the second virtual space 2711B.
プロセッサ210Bは、ユーザ5Bの位置情報および関節の回転方向に応じて、ユーザ5Bによって選択されたアバターオブジェクトにパフォーマンスを実行させる。これにより、ユーザ5Bとは形状が大きく異なるアバターオブジェクトに対しても、ユーザ5Bの動きを正確に反映させることができる。このように、HMDシステム100では、ユーザ5Bが選択可能なアバターオブジェクトの形状を、特定の形状に制約する必要がない。したがって、形状が異なる多様なアバターオブジェクトを、HMDシステム100に用意することができる。その結果、ユーザ5Bが選択可能なアバターオブジェクトの選択肢をより増やすことができるので、演者によるライブの多様性を高めることができる。
The processor 210B causes the avatar object selected by the user 5B to perform the performance according to the position information of the user 5B and the rotation direction of the joints. As a result, it is possible to accurately reflect the movement of the user 5B even on an avatar object whose shape is significantly different from that of the user 5B. Thus, in the HMD system 100, there is no need to restrict the shape of the avatar object selectable by the user 5B to a specific shape. Therefore, various avatar objects with different shapes can be prepared for the HMD system 100 . As a result, it is possible to increase the number of avatar object options that can be selected by the user 5B, thereby increasing the variety of performers' live performances.
アバターオブジェクトの作成者は、自身が作成したアバターオブジェクトが演者によって使用された場合、アバターオブジェクトのパフォーマンスに応じた報酬を受け取ることができる。したがって、HMDシステム100は、HMDシステム100において使用可能な新たなアバターオブジェクトを作成する動機を、多くの作成者に与えることができる。その結果、HMDシステム100に用意されるアバターオブジェクトの種類をより増やすことができる。これにより、演者が選択可能なアバターオブジェクトの選択肢を、より増やすことができるので、演者によるライブの多様性を高めることができる。
A creator of an avatar object can receive a reward according to the performance of the avatar object when the avatar object created by the creator is used by the performer. Therefore, the HMD system 100 can motivate many creators to create new avatar objects that can be used in the HMD system 100 . As a result, the types of avatar objects prepared for the HMD system 100 can be increased. As a result, it is possible to increase the number of avatar object options that can be selected by the performer, thereby increasing the variety of live performances by the performer.
[変形例]
プロセッサ210Bは、アバター使用に対応する課金情報を、必ずしもタグオブジェクト2733Bに登録する必要はない。プロセッサ210Bは、例えば、アバター使用に対応する課金情報をアバターオブジェクト7106Bに関連付けてアバターオブジェクト7106Bに登録することもできる。プロセッサ210Bは、アバター使用に対応する課金情報をタグオブジェクト2733Bに登録する代わりに、アバター使用に対応する課金に関する任意の他の処理を実行することができる。当該他の処理は、例えば、アバター使用に対応する課金情報をタグオブジェクト2733Bに登録することなくサーバ600に送信することである。
[Modification]
Processor 210B need not necessarily register billing information corresponding to avatar use in tag object 2733B. Processor 210B may, for example, associate billing information corresponding to avatar use with avatar object 7106B and register it with avatar object 7106B. Instead of registering billing information for avatar use in tag object 2733B, processor 210B may perform any other processing related to billing for avatar use. The other processing is, for example, transmitting billing information corresponding to avatar use to server 600 without registering it in tag object 2733B.
プロセッサ210Bは、第2仮想空間2711Bにおけるライブの売り上げに応じた課金額に対応する課金に関する処理を、実行することができる。プロセッサ210Bは、さらに、第2仮想空間2711Bにおけるライブの売り上げに応じた報酬を決定することができる。プロセッサ210Bは、例えば、売り上げの一部をライブの売り上げに応じた課金額として算出する。プロセッサ210Bは、売り上げに応じた課金額を表す課金情報を、タグオブジェクト2733Bに登録する。これにより、ライブの売り上げがより高くなるほど、アバターオブジェクト7106Bの使用料としてユーザ5Bに課金される課金額もより高くなる。また、ライブの売り上げがより高いほど、アバターオブジェクト7106Bの作成者に支払われる報酬もより高くなる。これにより、HMDシステム100は、ライブの売り上げ増加に繋がるような人気のあるアバターオブジェクト7106Bを作成する動機を、作成者に与えることができる。
The processor 210B can execute processing related to billing corresponding to the billing amount according to the live sales in the second virtual space 2711B. Processor 210B can further determine rewards according to live sales in second virtual space 2711B. The processor 210B, for example, calculates part of the sales as a billing amount according to the live sales. Processor 210B registers billing information representing the billing amount according to sales in tag object 2733B. Accordingly, the higher the live sales, the higher the billing amount charged to the user 5B as the usage fee for the avatar object 7106B. Also, the higher the live sales, the higher the reward paid to the creator of avatar object 7106B. This allows HMD system 100 to motivate creators to create popular avatar objects 7106B that will lead to increased live sales.
プロセッサ210Bは、アバターオブジェクト7106Bが使用される第2仮想空間2711Bの内容に応じた課金額に対応する課金に関する処理を、実行することができる。プロセッサ210Bは、さらに、第2仮想空間2711Bの内容に応じた報酬を決定することができる。プロセッサ210Bは、例えば、アバターオブジェクト7106Bが使用される第2仮想空間2711Bのサイズがより大きいほど、アバターオブジェクト7106Bの使用料としてより高い課金額を算出する。プロセッサ210Bは、算出した課金額を表す課金情報をタグオブジェクト2733Bに登録する。アバターオブジェクト7106Bが使用される第2仮想空間2711Bのサイズがより大きいほど、アバターオブジェクト7106Bの作成者に支払われる報酬がより高くなる。これにより、HMDシステム100は、より大きいサイズの第2仮想空間2711Bにおいて使用されるような人気のあるアバターオブジェクト7106Bを作成する動機を、作成者に与えることができる。
Processor 210B can execute processing related to charging corresponding to the charging amount according to the contents of second virtual space 2711B in which avatar object 7106B is used. Processor 210B can further determine a reward according to the contents of second virtual space 2711B. For example, the larger the size of the second virtual space 2711B in which the avatar object 7106B is used, the processor 210B calculates a higher fee for using the avatar object 7106B. Processor 210B registers billing information representing the calculated billing amount in tag object 2733B. The larger the size of the second virtual space 2711B in which the avatar object 7106B is used, the higher the reward paid to the creator of the avatar object 7106B. This allows the HMD system 100 to motivate creators to create popular avatar objects 7106B to be used in the larger size second virtual space 2711B.
プロセッサ210Bは、第2仮想空間2711Bにおけるアバターオブジェクト7106Bの使用履歴を生成することができる。プロセッサ210Bは、使用履歴として、例えば、第2仮想空間2711Bにおけるアバターオブジェクト7106Bの使用時間の履歴を生成する。プロセッサ210Aは、使用履歴として、例えば、第2仮想空間2711Bにおいてアバターオブジェクト7106Bが使用されたライブの売り上げの履歴を生成する。プロセッサ210Bは、例えば、アバターオブジェクト7106Bが使用された第2仮想空間2711Aの履歴を生成する。プロセッサ210Bは、生成された使用履歴を、アバターオブジェクト7106Bの作成者に通知する。作成者は、通知されたアバターオブジェクト7106Bの使用履歴を閲覧することによって、第2仮想空間2711Bにおいて過去にアバターオブジェクト7106Bが使用された状況の詳細を把握することができる。作成者は、把握した使用状況を参考にすることによって、より優れたアバターオブジェクトを新たに作成することができる。
Processor 210B can generate a usage history of avatar object 7106B in second virtual space 2711B. Processor 210B generates, as a usage history, for example, a usage time history of avatar object 7106B in second virtual space 2711B. The processor 210A generates, as a usage history, for example, a history of live sales in which the avatar object 7106B was used in the second virtual space 2711B. Processor 210B, for example, generates a history of second virtual space 2711A in which avatar object 7106B has been used. Processor 210B notifies the creator of avatar object 7106B of the generated usage history. The creator can grasp the details of the past use of avatar object 7106B in second virtual space 2711B by viewing the notified usage history of avatar object 7106B. The creator can newly create a better avatar object by referring to the grasped usage status.
ユーザ5Bは、アバターオブジェクト7106Bを、作成者からレンタルすることもできる。この場合、プロセッサ210Bは、アバターオブジェクト7106Bのレンタル期間に応じた課金額を、ユーザ5Bに課金する。プロセッサ210Bは、さらに、アバターオブジェクト7106Bのレンタル期間に応じた報酬を決定する。
User 5B can also rent avatar object 7106B from the creator. In this case, the processor 210B charges the user 5B a charge corresponding to the rental period of the avatar object 7106B. Processor 210B also determines a reward for the rental period of avatar object 7106B.
〔実施形態5〕
本実施形態において、プロセッサ210Aは、ユーザ5Aに対する課金および決済に関する処理を、実施形態1に記載されるタグオブジェクト2733Aを用いた方式によって実行する。しかし、これに限定されず、プロセッサ210Aは、実施形態1に係る方式とは異なる任意の方式によって、ユーザ5Aに対する課金および決済に関する処理を実行することもできる。
[Embodiment 5]
In this embodiment, the processor 210A executes processing related to billing and settlement for the user 5A by the method using the tag object 2733A described in the first embodiment. However, without being limited to this, the processor 210A can also execute processing related to billing and payment for the user 5A by any method different from the method according to the first embodiment.
[第2パフォーマンスのリクエスト]
図78は、HMDシステム100において実行される処理の一例を示すシーケンスチャートである。以下では、ユーザ5A(第1ユーザ)が行った第2パフォーマンスのリクエストに対し、ユーザ5B(第2ユーザ)が、仮想空間11Bにてアバターオブジェクト6B(第2アバター)に第2パフォーマンスを実行させるための一連の処理を説明する。図78に示すシーケンスチャートは、図26に示すステップS2614が実行された後の処理を示している。なお、第2パフォーマンスのリクエストは、ユーザ5Cが行ってもよいし、ユーザ5Dが行ってもよい。
[Request for second performance]
FIG. 78 is a sequence chart showing an example of processing executed in the HMD system 100. FIG. In the following, in response to a second performance request made by the user 5A (first user), the user 5B (second user) causes the avatar object 6B (second avatar) to perform the second performance in the virtual space 11B. A series of processes for The sequence chart shown in FIG. 78 shows processing after step S2614 shown in FIG. 26 is executed. The request for the second performance may be made by the user 5C or by the user 5D.
図79は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像7917Aを示す図である。プロセッサ210Aは、アバターオブジェクト6Bに対する第2パフォーマンスのリクエストをユーザ5Aに案内するメッセージを、ライブ中にユーザ5Aに通知する。プロセッサ210Aは、例えば、タグオブジェクト2733Aにメッセージを表示する。メッセージは、第2パフォーマンスの内容をユーザ5Aに案内するテキストと、ユーザ5Aが第2パフォーマンスをリクエストするために必要な課金額とを含む。図79の例では、第2パフォーマンスの内容は指さしポーズであり、指さしポーズのリクエストを行うために必要な課金額は500円である。指さしポーズとは、例えば、アバターオブジェクト6Bがアバターオブジェクト6A(第1アバター)を指さすパフォーマンスである。このように、第2パフォーマンスは、第2パフォーマンスをリクエストしたユーザ5に関連付けられたアバターオブジェクト6を対象とするパフォーマンスであってもよい。
FIG. 79 is a diagram showing second virtual space 2711A and view image 7917A according to one embodiment. The processor 210A notifies the user 5A during the live of a message guiding the user 5A to request the second performance for the avatar object 6B. Processor 210A, for example, displays the message in tag object 2733A. The message includes a text that guides the user 5A to the content of the second performance, and the billing amount required for the user 5A to request the second performance. In the example of FIG. 79, the content of the second performance is a pointing pose, and the billing amount required to request the pointing pose is 500 yen. A pointing pose is, for example, a performance in which the avatar object 6B points to the avatar object 6A (first avatar). Thus, the second performance may be a performance directed to the avatar object 6 associated with the user 5 who requested the second performance.
メッセージがタグオブジェクト2733Aに表示された後、プロセッサ210Aは、ユーザ5Aの左手の動きに応じて、図79(A)に示すように、仮想左手1531LAを視界領域15A内に移動させる。プロセッサ210Aは、例えば、図79(A)に示す第2仮想空間2711Aに対応する視界画像7917Aを、図79(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像7917Aを視認することによって、タグオブジェクト2733Aに表示されるメッセージを確認する。これにより、ユーザ5Aは、新たに500円の課金額を支払えば、アバターオブジェクト6Bに対して、指さしポーズをリクエストできることを認識する。
After the message is displayed on tag object 2733A, processor 210A moves virtual left hand 1531LA into viewing area 15A, as shown in FIG. 79(A), in response to the movement of user's 5A left hand. Processor 210A, for example, displays view image 7917A corresponding to second virtual space 2711A shown in FIG. 79(A) on monitor 130A as shown in FIG. 79(B). User 5A confirms the message displayed on tag object 2733A by visually recognizing view image 7917A. Thereby, the user 5A recognizes that the pointing pose can be requested to the avatar object 6B by paying a new charge of 500 yen.
ユーザ5Aは、タグオブジェクト2733Aに表示されたメッセージを確認した後、指さしポーズをリクエストするための操作を行う。該操作は、実施形態1にて図34を参照して説明しているため、ここでは繰り返さない。プロセッサ210Aは、第2パフォーマンスのリクエストを案内するメッセージが表示されるタグオブジェクト2733Aが選択されたことに応じて、第2パフォーマンスをリクエストするためのユーザ5Aの操作を検出する。
After confirming the message displayed on tag object 2733A, user 5A performs an operation to request a pointing pose. Since this operation has been described with reference to FIG. 34 in Embodiment 1, it will not be repeated here. Processor 210A detects user 5A's operation for requesting the second performance in response to selection of tag object 2733A in which a message guiding the request for the second performance is displayed.
図80は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像8017Aを示す図である。ステップS7801において、プロセッサ210Aは、第2パフォーマンスのリクエストに対応する課金情報を、タグオブジェクト2733Aに登録する。図79の例では、プロセッサ210Aは、アバターオブジェクト6Aが、仮想右手1531RAでタグオブジェクト2733Aを選択した場合、指さしポーズのリクエストに必要な課金額(500円)を表す課金情報を、タグオブジェクト2733Aに新たに登録する。なお、登録された課金情報が表す課金額の決済は、実施形態1で説明した方法で行えばよい。
FIG. 80 is a diagram showing second virtual space 2711A and view image 8017A according to an embodiment. At step S7801, processor 210A registers billing information corresponding to the request for the second performance in tag object 2733A. In the example of FIG. 79, when avatar object 6A selects tag object 2733A with virtual right hand 1531RA, processor 210A sends billing information representing the billing amount (500 yen) required for requesting the pointing pose to tag object 2733A. Register again. It should be noted that the settlement of the billing amount represented by the registered billing information may be performed by the method described in the first embodiment.
課金情報が登録された後、プロセッサ210Aは、タグオブジェクト2733A上で課金情報を再び視覚化する。この処理の詳細については、実施形態1にて図35を参照して説明しているため、ここでは繰り返さない。プロセッサ210Aは、例えば、図80(A)に示す第2仮想空間2711Aに対応する視界画像8017Aを、図80(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像8017Aを視認することによって、指さしポーズをリクエストした結果として現時点での合計課金額が2000円に増加したことを認識する。
After the billing information is registered, processor 210A re-visualizes the billing information on tag object 2733A. The details of this process have been described with reference to FIG. 35 in the first embodiment, and will not be repeated here. Processor 210A displays, for example, view image 8017A corresponding to second virtual space 2711A shown in FIG. 80(A) on monitor 130A as shown in FIG. 80(B). By visually recognizing the view image 8017A, the user 5A recognizes that the current total billing amount has increased to 2000 yen as a result of requesting the pointing pose.
ステップS7802において、プロセッサ210Aは、第2パフォーマンスのリクエストをコンピュータ200Bへ送信する。詳細には、プロセッサ210Aは、該リクエストをサーバ600へ送信する。サーバ600は、受信した第2パフォーマンスに関する情報を、同期処理によってコンピュータ200Bへ送信する。なお、コンピュータ200Aとコンピュータ200Bとの間の情報の送受信がサーバ600を介して行われることは、実施形態1にて図17を参照して既に説明している。このため、図78では、サーバ600が実行する処理を図示していない。
At step S7802, processor 210A sends a request for a second performance to computer 200B. Specifically, processor 210A transmits the request to server 600 . The server 600 transmits the received information about the second performance to the computer 200B by synchronous processing. It has already been described in the first embodiment with reference to FIG. 17 that information is transmitted and received between the computer 200A and the computer 200B via the server 600. FIG. Therefore, FIG. 78 does not show the processing executed by the server 600 .
図81は、ある実施の形態に従う第2仮想空間2711Bおよび視界画像8117Bを示す図である。図81の例では、アバターオブジェクト6Bは、アバターオブジェクト6C(第3アバター)の方向を向いており、かつ、アバターオブジェクト6Aは、視界領域外の第1位置8176に配置されている。つまり、視界領域15B内には、アバターオブジェクト6Aが配置されていない。プロセッサ210Bは、例えば、図81(A)に示す第2仮想空間2711Bに対応する視界画像8117Bを、図81(B)に示すようにモニタ130Aに表示する。
FIG. 81 is a diagram showing second virtual space 2711B and view image 8117B according to an embodiment. In the example of FIG. 81, the avatar object 6B faces the avatar object 6C (third avatar), and the avatar object 6A is placed at the first position 8176 outside the viewing area. That is, the avatar object 6A is not placed within the field of view 15B. Processor 210B, for example, displays view image 8117B corresponding to second virtual space 2711B shown in FIG. 81(A) on monitor 130A as shown in FIG. 81(B).
ステップS7811において、プロセッサ210Bは、プロセッサ210Aから送信された第2パフォーマンスのリクエストを受信する。ステップS7812において、プロセッサ210Bは、リクエストされた第2パフォーマンスに関する情報をユーザ5Bに通知する。リクエストされた第2パフォーマンスに関する情報は、例えば、リクエストされた第2パフォーマンスの内容であってもよい。プロセッサ210Bは、さらに、第2パフォーマンスをリクエストしたユーザ5Aに関連付けられたアバターオブジェクト6Aの、第2仮想空間2711Bにおける位置(以下、「第1位置」)を示す情報をユーザ5Bに通知してもよい。プロセッサ210Bは、一例として、リクエストされた第2パフォーマンスに関する情報と、第1位置8176を示す情報とを、視界画像8117B上で通知する。プロセッサ210Bは、例えば、図81(B)に示すように、通知画像8181および矢印画像8182を視界画像8117Bに含めて、モニタ130に表示する。プロセッサ210Bは、通知画像8181と同一の外観を有する仮想オブジェクトを、第2仮想空間2711Bに配置することもできる。プロセッサ210Bは、矢印画像8182と同一の外観を有する仮想オブジェクトを、第2仮想空間2711Bに配置することもできる。
At step S7811, the processor 210B receives the request for the second performance sent from the processor 210A. At step S7812, the processor 210B notifies the user 5B of information regarding the requested second performance. Information about the requested second performance may be, for example, the content of the requested second performance. Processor 210B may also notify user 5B of information indicating the position (hereinafter, "first position") in second virtual space 2711B of avatar object 6A associated with user 5A who requested the second performance. good. Processor 210B, as an example, notifies information about the requested second performance and information indicating first location 8176 on view image 8117B. Processor 210B includes notification image 8181 and arrow image 8182 in view image 8117B and displays it on monitor 130, as shown in FIG. 81B, for example. Processor 210B can also place a virtual object having the same appearance as notification image 8181 in second virtual space 2711B. Processor 210B can also place a virtual object having the same appearance as arrow image 8182 in second virtual space 2711B.
通知画像8181は、一例として、図81(B)に示すように、第2パフォーマンスがリクエストされたこと、および、リクエストされた第2パフォーマンスの内容を含む。これにより、ユーザ5Bは、第2パフォーマンスがリクエストされたこと、および、リクエストされた第2パフォーマンスの内容を認識することができる。
The notification image 8181 includes, as an example, that the second performance has been requested and the content of the requested second performance, as shown in FIG. 81(B). This allows the user 5B to recognize that the second performance has been requested and the content of the requested second performance.
矢印画像8182は、図81(A)に示すように、アバターオブジェクト6Aが視界領域15Bに配置されていない場合の第1位置8176を示す画像である。詳細には、矢印画像8182は、視界領域15B内の第2位置8177から、アバターオブジェクト6Aがいる第1位置8176へ向かう第1方向8178に対応する、視界画像8117Bにおける第2方向を示す画像である。すなわち、図81の例の場合、矢印画像8182は、視界画像8117Bの左から右へ向かう(右向きの)矢印の画像である。矢印画像8182が視界画像8117Bに含まれていることにより、ユーザ5Bは、右方向に頭部を動かすことにより、視界画像17Bに、第2パフォーマンスをリクエストしたユーザ5に関連付けられたアバターオブジェクト6(アバターオブジェクト6A)が含まれることを、容易に認識することができる。
The arrow image 8182 is an image showing the first position 8176 when the avatar object 6A is not placed in the field of view area 15B, as shown in FIG. 81(A). Specifically, arrow image 8182 is an image showing a second direction in view image 8117B, corresponding to first direction 8178 from second position 8177 within view area 15B toward first position 8176 where avatar object 6A is located. be. That is, in the example of FIG. 81, the arrow image 8182 is an image of an arrow pointing from left to right (rightward) in the view image 8117B. Since the arrow image 8182 is included in the view image 8117B, the user 5B moves his/her head to the right so that the avatar object 6 ( It can be easily recognized that the avatar object 6A) is included.
なお、プロセッサ210Bは、リクエストに含まれるアバターオブジェクト6Aを識別する情報を用いて、第2仮想空間2711Bにおける、アバターオブジェクト6Aの第1位置8176を特定すればよい。該情報は、例えば、ユーザ5Aまたはアバターオブジェクト6AのIDであってもよい。そして、プロセッサ210Bは、アバターオブジェクト6Aが視界領域15Bに配置されているか否かを判定すればよい。
Processor 210B may specify first position 8176 of avatar object 6A in second virtual space 2711B using information identifying avatar object 6A included in the request. The information may be, for example, the ID of the user 5A or the avatar object 6A. The processor 210B then determines whether or not the avatar object 6A is placed in the view area 15B.
図82は、ある実施の形態に従う第2仮想空間2711Bおよび視界画像8217Bを示す図である。ユーザ5Bが頭部を動かしたことにより、アバターオブジェクト6Bが図82(A)に示す方向を向いたとする。これにより、図82(A)に示すように、アバターオブジェクト6Aが視界領域15Bに含まれる。換言すれば、プロセッサ210Bは、アバターオブジェクト6Aが視界領域15Bに含まれていると判定する。プロセッサ210Bは、図82(A)に示す第2仮想空間2711Bに対応する視界画像8117Bに、図82(B)に示すように、アバターオブジェクト6Aを囲う枠画像8283を含めて、モニタ130Bに表示する。これにより、ユーザ5Bは、第2パフォーマンスをリクエストしたユーザ5に関連付けられたアバターオブジェクト6を容易に特定することができる。プロセッサ210Bは、枠画像8283と同一の外観を有する仮想オブジェクトを、アバターオブジェクト6Aを囲うように第2仮想空間2711Bに配置することもできる。
FIG. 82 is a diagram showing second virtual space 2711B and view image 8217B according to an embodiment. It is assumed that the avatar object 6B faces the direction shown in FIG. 82(A) as a result of the user 5B moving his/her head. Thereby, as shown in FIG. 82(A), the avatar object 6A is included in the view area 15B. In other words, processor 210B determines that avatar object 6A is included in viewing area 15B. Processor 210B displays view image 8117B corresponding to second virtual space 2711B shown in FIG. 82(A) on monitor 130B, including frame image 8283 surrounding avatar object 6A as shown in FIG. 82(B). do. This allows the user 5B to easily identify the avatar object 6 associated with the user 5 who requested the second performance. The processor 210B can also place a virtual object having the same appearance as the frame image 8283 in the second virtual space 2711B so as to surround the avatar object 6A.
図83は、ある実施形態に係るユーザ5Bの姿勢の一例を表す図である。ステップS7813において、プロセッサ210Bは、第2パフォーマンスに対応するユーザ5Bの動きを検出する。図81(B)に示す通知画像8181を視認したユーザ5Bは、例えば図83に示す姿勢、すなわち、右手を前に突き出す姿勢を取るように自身の身体を動かす。このとき、ユーザ5Bは、右コントローラ300RBに設けられたボタン(図83では不図示)を操作(例えば押下)するものとする。図83に示す姿勢は、ユーザ5Aにリクエストされた第2パフォーマンス、すなわち指さしポーズに対応する姿勢である。
FIG. 83 is a diagram showing an example of the posture of user 5B according to an embodiment. At step S7813, the processor 210B detects movement of the user 5B corresponding to the second performance. The user 5B who has visually recognized the notification image 8181 shown in FIG. 81(B) moves his/her body so as to assume the posture shown in FIG. 83, that is, the posture of pushing the right hand forward. At this time, it is assumed that the user 5B operates (for example, presses) a button (not shown in FIG. 83) provided on the right controller 300RB. The posture shown in FIG. 83 is the posture corresponding to the second performance requested by the user 5A, that is, the pointing pose.
図84は、ある実施の形態に従う第2仮想空間2711Bおよび視界画像8417Bを示す図である。ステップS7814において、プロセッサ210Bは、検出した動きに応じてアバターオブジェクト6Bに第2パフォーマンスを実行させる。一例として、プロセッサ210Bは、図83に示す姿勢をとるユーザ5Bの動き、および、右コントローラ300RBに設けられたボタンの押下に応じて、図84(A)に示すように、アバターオブジェクト6Bに指さしポーズを実行させる。詳細には、プロセッサ210Bは、仮想右手1531RBを前に伸ばし、伸ばした先を指さす動作を、アバターオブジェクト6Bに実行させる。プロセッサ210Bは、例えば、図84(A)に示す第2仮想空間2711Bに対応する視界画像8417Bを、図84(B)に示すようにモニタ130Aに表示する。ユーザ5Bは仮想右手1531RBを含む視界画像8417Bを視認することによって、アバターオブジェクト6Bが指さしポーズを実行していることを認識することができる。
FIG. 84 is a diagram showing second virtual space 2711B and view image 8417B according to an embodiment. At step S7814, the processor 210B causes the avatar object 6B to perform the second performance according to the detected movement. As an example, processor 210B points to avatar object 6B as shown in FIG. 84(A) in response to the movement of user 5B taking the posture shown in FIG. perform a pose. Specifically, the processor 210B causes the avatar object 6B to extend the virtual right hand 1531RB forward and point to the extended tip. Processor 210B displays, for example, view image 8417B corresponding to second virtual space 2711B shown in FIG. 84(A) on monitor 130A as shown in FIG. 84(B). The user 5B can recognize that the avatar object 6B is performing the pointing pose by visually recognizing the view image 8417B including the virtual right hand 1531RB.
プロセッサ210Bは、アバターオブジェクト6Bに第2パフォーマンスを実行させると、図84(B)に示すように、通知画像8181および枠画像8283を視界画像8417Bにおいて非表示とする。一例として、プロセッサ210Bは、ユーザ5Bがとった姿勢を示す情報と、第2パフォーマンスの内容と関連付けられてストレージ230に格納されている、該第2パフォーマンスの姿勢を示す情報とを比較する。比較した結果、2つの情報の一致率が所定の閾値以上であった場合、プロセッサ210Bは、アバターオブジェクト6Bに第2パフォーマンスを実行させたと判定し、通知画像8181および枠画像8283を視界画像8417Bにおいて非表示とする。
After causing avatar object 6B to perform the second performance, processor 210B hides notification image 8181 and frame image 8283 in view image 8417B as shown in FIG. 84(B). As an example, the processor 210B compares the information indicating the posture taken by the user 5B with the information indicating the posture of the second performance stored in the storage 230 in association with the contents of the second performance. As a result of the comparison, if the matching rate of the two pieces of information is equal to or higher than the predetermined threshold, processor 210B determines that avatar object 6B has performed the second performance, and places notification image 8181 and frame image 8283 in view image 8417B. Hide.
ステップS7815において、プロセッサ210Bは、第2パフォーマンスの実行に対応するアバター情報を、コンピュータ200Aへ送信する。詳細には、プロセッサ210Bは、該アバター情報をサーバ600へ送信する。サーバ600は、受信したアバター情報を、同期処理によってコンピュータ200Aへ送信する。
At step S7815, processor 210B transmits the avatar information corresponding to the execution of the second performance to computer 200A. Specifically, processor 210B transmits the avatar information to server 600 . Server 600 transmits the received avatar information to computer 200A through synchronization processing.
図85は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像8517Aを示す図である。ステップS7803において、プロセッサ210Aは、プロセッサ210Bから送信されたアバター情報をリアルタイムに受信する。ステップS7804において、プロセッサ210Aは、受信したアバター情報に含まれる動き情報に基づいて、アバターオブジェクト6Bに第2パフォーマンスを実行させる。これにより、プロセッサ210Aは、図83に示すユーザ5Bの動きに応じて、アバターオブジェクト6Bに第2パフォーマンスを実行させることができる。
FIG. 85 is a diagram showing second virtual space 2711A and view image 8517A according to an embodiment. At step S7803, the processor 210A receives the avatar information transmitted from the processor 210B in real time. At step S7804, the processor 210A causes the avatar object 6B to perform the second performance based on the motion information included in the received avatar information. Thereby, the processor 210A can cause the avatar object 6B to perform the second performance according to the movement of the user 5B shown in FIG.
プロセッサ210Aは、アバターオブジェクト6Bによる第2パフォーマンスを、第2仮想空間2711Aにおいてアバターオブジェクト6Aに視聴させる。プロセッサ210Aは、例えば、図85(A)に示す第2仮想空間2711Aに対応する視界画像8517Aを、図85(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像8517Aを視認することによって、アバターオブジェクト6Bが、自身がリクエストした第2パフォーマンスを実行したことを認識する。これにより、ユーザ5Aは、アバターオブジェクト6Bが、自身がリクエストした第2パフォーマンスを実行したことに対し、喜びを感じる。詳細には、ユーザ5Aは、現実のライブでは体験することが難しい、自身に向けられた演者のパフォーマンスを、課金額の負担により仮想体験することができる。結果として、ユーザ5Aに喜びを感じさせることができ、ユーザ5Aをより満足させることができる。つまり、仮想空間におけるライブの興趣性をより高めることができる。
The processor 210A causes the avatar object 6A to view the second performance by the avatar object 6B in the second virtual space 2711A. Processor 210A, for example, displays view image 8517A corresponding to second virtual space 2711A shown in FIG. 85(A) on monitor 130A as shown in FIG. 85(B). User 5A recognizes that avatar object 6B has performed the second performance requested by user 5A by visually recognizing view image 8517A. As a result, the user 5A feels happy that the avatar object 6B performed the second performance requested by the user 5A. Specifically, the user 5A can virtually experience the performance of a performer directed at him/herself, which is difficult to experience in a real live performance, by paying the fee. As a result, the user 5A can be made to feel joy, and the user 5A can be more satisfied. In other words, it is possible to further enhance the interest of the live performance in the virtual space.
[変形例]
ユーザ5Aが、内容を指定せずに第2パフォーマンスをリクエストすることが可能であってもよい。この場合、リクエストを受信したプロセッサ210Bは、第2パフォーマンスのリクエストがあったことのみをユーザ5Bへ通知する。ユーザ5Bは、アバターオブジェクト6Bに実行させる第2パフォーマンスを自ら決定し、決定した第2パフォーマンスに対応する姿勢を取る。
[Modification]
It may be possible for the user 5A to request the second performance without specifying the content. In this case, the processor 210B that received the request only notifies the user 5B that the second performance was requested. The user 5B himself decides the second performance to be executed by the avatar object 6B, and takes a posture corresponding to the decided second performance.
第2パフォーマンスのリクエストを行うために必要な課金額は、リクエストする第2パフォーマンスの内容に応じて設定されてもよい。一例として、実行に時間がかかる、複雑である、工数(動作)が多いなどの、ユーザ5Bにとって実行することが大変な第2パフォーマンスは、課金額が高く設定されてもよい。
The billing amount required for requesting the second performance may be set according to the content of the requested second performance. As an example, a high billing amount may be set for a second performance that is difficult for the user 5B to execute, such as taking a long time to execute, being complicated, or requiring a large number of man-hours (operations).
第2パフォーマンスの内容は、上述した例に限定されない。例えば、第2パフォーマンスは、アバターオブジェクト6Bがステージオブジェクト1532から移動し、リクエストしたアバターオブジェクト6に近づいて、任意のまたはリクエストされた内容のパフォーマンスを実行することであってもよい。アバターオブジェクト6Bのステージオブジェクト1532からの移動は、実施形態2で説明した移動方法で行われてもよい。また、第2パフォーマンスは、第2パフォーマンスをリクエストしたユーザ5に関連付けられたアバターオブジェクト6を対象としないパフォーマンスであってもよい。このようなパフォーマンスの一例としては、ステージオブジェクト1532上でジャンプするなどが挙げられる。
The content of the second performance is not limited to the example described above. For example, the second performance may be the avatar object 6B moving from the stage object 1532, approaching the requesting avatar object 6, and performing any or requested content. The movement of the avatar object 6B from the stage object 1532 may be performed by the movement method described in the second embodiment. Also, the second performance may be a performance that does not target the avatar object 6 associated with the user 5 who requested the second performance. An example of such performance is jumping on stage object 1532 .
通知画像8181、および、矢印画像8182または枠画像8283は、リクエストを受信した直後ではなく、予め設定されたタイミングで視界画像17Bに含められてもよい。予め設定されたタイミングとは、例えば、ユーザ5Bが、第2パフォーマンスを実行する期間として設定した期間が開始されたタイミングであってもよい。
The notification image 8181 and the arrow image 8182 or the frame image 8283 may be included in the field of view image 17B at preset timing instead of immediately after receiving the request. The preset timing may be, for example, the timing at which the period set by the user 5B as the period for performing the second performance starts.
第2パフォーマンスをリクエストするために必要な課金額は、例えば、第2パフォーマンスをリクエストするための操作が行われたときに決済されてもよい。
The billing amount required for requesting the second performance may be settled, for example, when an operation for requesting the second performance is performed.
第2パフォーマンスのリクエストは、例えば、入札方式であってもよい。この例の場合、第2パフォーマンスをリクエストするために必要な課金額は設定されていない。プロセッサ210Aは、第2パフォーマンスの対価としての金額(以下、「第1金額」)の入力を受け付ける。また、プロセッサ210Aは、第1金額が、ユーザ5A以外のユーザ5(第3ユーザ)により入力された、第2パフォーマンスの対価としての金額(第2金額)より高い場合、第1金額を表す課金情報をタグオブジェクト2733Aに登録する。第1金額と第2金額との比較は、例えば、サーバ600が行えばよい。つまり、プロセッサ210Aは第1金額を示す情報をサーバ600へ送信する。サーバ600は、第1金額が第2金額より高い場合、その旨をコンピュータ200Aに通知する。プロセッサ210Aは、該通知を受信した場合、第1金額を表す課金情報をタグオブジェクト2733Aに登録する。
The second performance request may be, for example, a bidding scheme. In this example, no billing amount is set for requesting the second performance. Processor 210A accepts an input of an amount of money (hereinafter, "first amount of money") as consideration for the second performance. Further, if the first amount of money is higher than the amount of money (second amount of money) as consideration for the second performance input by the user 5 (third user) other than the user 5A, the processor 210A sets the billing amount representing the first amount of money. Register information in tag object 2733A. For example, the server 600 may compare the first amount and the second amount. That is, processor 210A transmits information indicating the first amount of money to server 600 . If the first amount is higher than the second amount, server 600 notifies computer 200A to that effect. When processor 210A receives the notification, processor 210A registers billing information representing the first amount of money in tag object 2733A.
第2パフォーマンスのリクエストが入札方式である場合、第2パフォーマンスの内容および実行するタイミングはユーザ5Bが予め設定していてもよい。また、仮想空間11を複数の領域に分割し、該領域単位で入札が行われてもよい。この場合、プロセッサ210Bは、各領域の課金額を集計し、集計した金額が最も高い領域を示す画像を、視界画像17Bに含める。この場合の第2パフォーマンスは、例えば、各領域に配置されたステージオブジェクトのうち、集計した金額が最も高い領域に配置されたステージオブジェクトにアバターオブジェクト6Bが移動し、第1パフォーマンスを実行することであってもよい。
If the request for the second performance is based on the bidding system, the user 5B may preset the content and execution timing of the second performance. Alternatively, the virtual space 11 may be divided into a plurality of areas and a bid may be made for each area. In this case, processor 210B sums up the billing amount for each area and includes an image showing the area with the highest summed amount in view image 17B. In the second performance in this case, for example, the avatar object 6B moves to the stage object arranged in the area with the highest sum of money among the stage objects arranged in each area, and the first performance is executed. There may be.
第2パフォーマンスのリクエストが入札方式である場合、最低入札金額が設定されていてもよい。サーバ600は、第1金額および第2金額が、いずれも最低入札金額より低い場合、その旨をコンピュータ200Bへ通知してもよい。プロセッサ210Bは、該通知を受信した場合、ユーザ5Bに、入札された金額が最低入札金額に到達しなかったことを通知してもよい。この場合、ユーザ5Bは、アバターオブジェクト6Bに第2パフォーマンスを実行させなくてもよい。例えば、第2パフォーマンスが、リクエストしたユーザ5に関連付けられたアバターオブジェクト6に近づいて、リクエストされた内容のパフォーマンスを行うことである例を説明する。この例において、第1金額および第2金額最低入札金額より低い場合、ユーザ5Bは、アバターオブジェクト6Bに、上記第2パフォーマンスに代えて、ステージオブジェクト1532上での第1パフォーマンスを継続させてもよい。
If the second performance request is bidding, a minimum bid amount may be set. If both the first price and the second price are lower than the minimum bid price, server 600 may notify computer 200B to that effect. When processor 210B receives the notification, processor 210B may notify user 5B that the amount bid has not reached the minimum bid amount. In this case, the user 5B does not have to cause the avatar object 6B to perform the second performance. For example, an example will be described in which the second performance is to approach the avatar object 6 associated with the requesting user 5 and perform the requested content. In this example, if the first amount and the second amount are lower than the minimum bid amount, the user 5B may cause the avatar object 6B to continue the first performance on the stage object 1532 instead of the second performance. .
また、第2パフォーマンスのリクエストは、アバターオブジェクト6Bによる第1パフォーマンスが開始される前に行われてもよい。一例として、該リクエストは、ユーザ5Aがライブの仮想体験を開始する前に行われてもよい。この例の場合、該リクエストは、いわゆるクラウドファンディングの形式で行われてもよい。例えば、ユーザ5Bが、ライブの仮想体験の開始前に、アバターオブジェクト6Bが近づいて、所定のパフォーマンスを行なうことを希望するユーザ5に課金額の支払いを促す旨の募集を行う。課金額が設定した金額以上となった場合、アバターオブジェクト6Bは、ライブにおいて、課金額を負担したユーザ5に関連付けられたアバターオブジェクト6に近づいて、所定のパフォーマンスを行う。
Also, the request for the second performance may be made before the first performance by the avatar object 6B is started. As an example, the request may be made before user 5A begins a live virtual experience. In this example, the request may be made in the form of so-called crowdfunding. For example, before the start of the live virtual experience, the user 5B approaches the avatar object 6B and invites users 5 who wish to perform a predetermined performance to pay the charge. When the billing amount exceeds the set amount, the avatar object 6B approaches the avatar object 6 associated with the user 5 who has paid the billing amount and performs a predetermined performance live.
〔実施形態6〕
本実施形態において、プロセッサ210Aは、ユーザ5Aに対する課金および決済に関する処理を、実施形態1に記載されるタグオブジェクト2733Aを用いた方式によって実行する。しかし、これに限定されず、プロセッサ210Aは、実施形態1に係る方式とは異なる任意の方式によって、ユーザ5Aに対する課金および決済に関する処理を実行することもできる。
[Embodiment 6]
In this embodiment, the processor 210A executes processing related to billing and settlement for the user 5A by the method using the tag object 2733A described in the first embodiment. However, without being limited to this, the processor 210A can also execute processing related to billing and payment for the user 5A by any method different from the method according to the first embodiment.
図86は、HMDシステム100において実行される処理の一例を示すシーケンスチャートである。以下では、ユーザ5A(第1ユーザ)が、仮想空間11Aにてアバターオブジェクト6A(第1アバター)の外観を制御し、アバターオブジェクト6Aを対象とする第2パフォーマンスをアバターオブジェクト6B(第2アバター)に実行させるための一連の処理を説明する。図86に示すシーケンスチャートは、図26に示すステップS2614が実行された後の処理を示している。なお、アバターオブジェクト6の外観の制御は、ユーザ5Cが行ってもよいし、ユーザ5Dが行ってもよい。
FIG. 86 is a sequence chart showing an example of processing executed in the HMD system 100. FIG. Below, the user 5A (first user) controls the appearance of the avatar object 6A (first avatar) in the virtual space 11A, and performs the second performance targeting the avatar object 6A with the avatar object 6B (second avatar). A series of processes to be executed will be described. The sequence chart shown in FIG. 86 shows the processing after step S2614 shown in FIG. 26 is executed. The control of the appearance of the avatar object 6 may be performed by the user 5C or the user 5D.
図87は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像8717Aを示す図である。プロセッサ210Aは、アバターオブジェクト6Aの外観の制御をユーザ5Aに案内するメッセージを、ライブ中にユーザ5Aに通知する。一例として、外観の制御は、アバターオブジェクト6Aの外観を、他のアバターオブジェクト6より目立たせる(強調する)ことである。プロセッサ210Aは、例えば、タグオブジェクト2733Aにメッセージを表示する。メッセージは、外観の強調を案内するテキストと、ユーザ5Aがアバターオブジェクト6Aの外観を強調するために必要な課金額とを含む。
FIG. 87 is a diagram showing second virtual space 2711A and view image 8717A according to an embodiment. The processor 210A notifies the user 5A of a message during the live to guide the user 5A to control the appearance of the avatar object 6A. As an example, controlling the appearance is to make the appearance of the avatar object 6</b>A stand out (emphasize) from the other avatar objects 6 . Processor 210A, for example, displays the message in tag object 2733A. The message includes text guiding appearance enhancement, and the billing amount required for the user 5A to enhance the appearance of the avatar object 6A.
メッセージがタグオブジェクト2733Aに表示された後、プロセッサ210Aは、ユーザ5Aの左手の動きに応じて、図87(A)に示すように、仮想左手1531LAを視界領域15A内に移動させる。プロセッサ210Aは、例えば、図87(A)に示す第2仮想空間2711Aに対応する視界画像8717Aを、図87(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像8717Aを視認することによって、タグオブジェクト2733Aに表示されるメッセージを確認する。これにより、ユーザ5Aは、新たに500円の課金額を支払えば、アバターオブジェクト6Aの外観を強調できることを認識する。
After the message is displayed on tag object 2733A, processor 210A moves virtual left hand 1531LA into viewing area 15A as shown in FIG. 87(A) in accordance with the movement of user's 5A left hand. Processor 210A, for example, displays view image 8717A corresponding to second virtual space 2711A shown in FIG. 87(A) on monitor 130A as shown in FIG. 87(B). User 5A confirms the message displayed on tag object 2733A by visually recognizing view image 8717A. Thereby, the user 5A recognizes that the appearance of the avatar object 6A can be emphasized by paying a new charge of 500 yen.
ユーザ5Aは、タグオブジェクト2733Aに表示されたメッセージを確認した後、アバターオブジェクト6Aの外観を強調するための操作を行う。該操作は、実施形態1にて図34を参照して説明しているため、ここでは繰り返さない。プロセッサ210Aは、アバターオブジェクト6Aの外観の強調を案内するメッセージが表示されるタグオブジェクト2733Aが選択されたことに応じてアバターオブジェクト6Aの外観を強調するためのユーザ5Aの操作を検出する。
After confirming the message displayed on tag object 2733A, user 5A performs an operation to emphasize the appearance of avatar object 6A. Since this operation has been described with reference to FIG. 34 in Embodiment 1, it will not be repeated here. Processor 210A detects user 5A's operation for emphasizing the appearance of avatar object 6A in response to selection of tag object 2733A displaying a message guiding emphasis of the appearance of avatar object 6A.
図88は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像8817Aを示す図である。ステップS8601において、プロセッサ210Aは、アバターオブジェクト6Aの強調に対応する課金情報を、タグオブジェクト2733Aに登録する。図88の例では、プロセッサ210Aは、アバターオブジェクト6Aが、仮想右手1531RAでタグオブジェクト2733Aを選択した場合、アバターオブジェクト6Aの強調に必要な課金額(500円)を表す課金情報を、タグオブジェクト2733Aに新たに登録する。なお、登録された課金情報が表す課金額の決済は、実施形態1で説明した方法で行えばよい。
FIG. 88 is a diagram showing second virtual space 2711A and view image 8817A according to an embodiment. At step S8601, processor 210A registers billing information corresponding to highlighting of avatar object 6A in tag object 2733A. In the example of FIG. 88, when avatar object 6A selects tag object 2733A with virtual right hand 1531RA, processor 210A transmits charging information representing the charging amount (500 yen) required for emphasizing avatar object 6A to tag object 2733A. to register anew. It should be noted that the settlement of the billing amount indicated by the registered billing information may be performed by the method described in the first embodiment.
課金情報が登録された後、プロセッサ210Aは、タグオブジェクト2733A上で課金情報を再び視覚化する。この処理の詳細については、実施形態1にて図35を参照して説明しているため、ここでは繰り返さない。プロセッサ210Aは、例えば、図88(A)に示す第2仮想空間2711Aに対応する視界画像8817Aを、図88(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像8817Aを視認することによって、アバターオブジェクト6Aを強調させた結果として現時点での合計課金額が2000円に増加したことを認識する。
After the billing information is registered, processor 210A re-visualizes the billing information on tag object 2733A. The details of this process have been described with reference to FIG. 35 in the first embodiment, and will not be repeated here. Processor 210A, for example, displays view image 8817A corresponding to second virtual space 2711A shown in FIG. 88(A) on monitor 130A as shown in FIG. 88(B). User 5A recognizes that the current total billing amount has increased to 2000 yen as a result of emphasizing avatar object 6A by visually recognizing view image 8817A.
図89は、ある実施の形態に従う第2仮想空間2711Bおよび視界画像8117Bを示す図である。ステップS8602において、プロセッサ210Aは、アバターオブジェクト6Aの外観を、ユーザ5A以外の視聴者側のユーザ5(第3ユーザ)に関連付けられたアバターオブジェクト6(第3アバター、以下「他のアバターオブジェクト6」)より目立たせる。一例として、プロセッサ210Aは、他のアバターオブジェクト6より目立つように、アバターオブジェクト6Aの外観の色を制御する。詳細には、プロセッサ210Aは、図89(A)に示すように、テクスチャ4137Aをアバターオブジェクト6Aに貼り付けることにより、アバターオブジェクト6Aの外観の色を変化させる。テクスチャ4137Aは、アバターオブジェクト6Aの強調に必要な課金額(500円)がユーザ5Aに1回課金されたことに対応する、第1色に着色されるテクスチャである。プロセッサ210Aは、例えば、図89(A)に示す第2仮想空間2711Aに対応する視界画像8917Aを、図89(B)に示すようにモニタ130Aに表示する。
FIG. 89 is a diagram showing second virtual space 2711B and view image 8117B according to an embodiment. In step S8602, the processor 210A changes the appearance of the avatar object 6A to the avatar object 6 (third avatar, hereinafter "other avatar object 6") associated with the viewer-side user 5 (third user) other than the user 5A. ) to make it stand out more. As an example, processor 210A controls the appearance color of avatar object 6A so that it stands out from other avatar objects 6. FIG. Specifically, processor 210A changes the appearance color of avatar object 6A by applying texture 4137A to avatar object 6A, as shown in FIG. 89(A). The texture 4137A is a texture colored in the first color corresponding to the user 5A having been charged once with the charge (500 yen) necessary for emphasizing the avatar object 6A. Processor 210A, for example, displays view image 8917A corresponding to second virtual space 2711A shown in FIG. 89(A) on monitor 130A as shown in FIG. 89(B).
プロセッサ210Aは、アバターオブジェクト6Aの強調に必要な課金額をユーザ5Aに課金した回数が増えるたびに、アバターオブジェクト6Aをより目立たせてもよい。一例として、該課金額を課金した回数が増えるたびに、アバターオブジェクト6Aの外観の色をより目立つように変化させてもよい。例えば、該課金額を2回課金した場合、第1色より目立つ第2色に着色されるテクスチャを、アバターオブジェクト6Aに貼り付けてもよい。また、該課金額を3回課金した場合、第2色より目立つ第3色に着色されるテクスチャを、アバターオブジェクト6Aに貼り付けてもよい。第1色は、例えば銅色であり、第2色は例えば銀色であり、第3色は例えば金色である。
The processor 210A may make the avatar object 6A more conspicuous each time the user 5A is charged the amount necessary for highlighting the avatar object 6A. As an example, the color of the appearance of the avatar object 6A may be changed to make it more conspicuous each time the number of times the billing amount is charged increases. For example, if the billing amount is billed twice, a texture colored in a second color that is more conspicuous than the first color may be attached to the avatar object 6A. Also, when the billing amount is billed three times, a texture colored in a third color that is more conspicuous than the second color may be attached to the avatar object 6A. The first color is for example copper, the second color is for example silver and the third color is for example gold.
ステップS8603において、プロセッサ210Aは、外観が制御されたアバターオブジェクト6Aのアバター情報(第1情報)を、コンピュータ200Bへ送信する。詳細には、プロセッサ210Aは、該アバター情報をサーバ600へ送信する。サーバ600は、受信したアバター情報を、同期処理によってコンピュータ200Bへ送信する。なお、アバター情報には、ユーザ5Aを示す第1ユーザ情報が含まれている。第1ユーザ情報は、例えば、ユーザ5Aを示すIDであってもよいし、アバターオブジェクト6Aを示すIDであってもよい。
In step S8603, processor 210A transmits avatar information (first information) of appearance-controlled avatar object 6A to computer 200B. Specifically, processor 210A transmits the avatar information to server 600 . Server 600 transmits the received avatar information to computer 200B by synchronous processing. Note that the avatar information includes first user information indicating the user 5A. The first user information may be, for example, an ID indicating the user 5A or an ID indicating the avatar object 6A.
図90は、ある実施の形態に従う第2仮想空間2711Bおよび視界画像9017Bを示す図である。ステップS8611において、プロセッサ210Bは、プロセッサ210Aから送信されたアバター情報をリアルタイムに受信する。ステップS8612において、プロセッサ210Bは、受信したアバター情報に基づいて、アバターオブジェクト6Aの外観を、他のアバターオブジェクト6より目立たせる。詳細には、プロセッサ210Bは、受信したアバター情報に基づいて、図90(A)に示すように、テクスチャ4137Aをアバターオブジェクト6Aに貼り付けることにより、アバターオブジェクト6Aの外観の色を変化させる。プロセッサ210Bは、例えば、図90(A)に示す第2仮想空間
2711Bに対応する視界画像9017Bを、図90(B)に示すようにモニタ130Aに表示する。ユーザ5B(第2ユーザ)は、視界画像9017Bを視認することによって、アバターオブジェクト6Aの外観が、他のアバターオブジェクト6より目立つように変更されたことを認識する。すなわち、ユーザ5Bは、アバターオブジェクト6Aを目立たせるための課金額がユーザ5Aに課金されたことを認識する。
FIG. 90 is a diagram showing second virtual space 2711B and view image 9017B according to an embodiment. At step S8611, the processor 210B receives the avatar information transmitted from the processor 210A in real time. At step S8612, the processor 210B makes the appearance of the avatar object 6A stand out from the other avatar objects 6 based on the received avatar information. Specifically, processor 210B changes the appearance color of avatar object 6A by applying texture 4137A to avatar object 6A, as shown in FIG. 90(A), based on the received avatar information. Processor 210B, for example, displays view image 9017B corresponding to second virtual space 2711B shown in FIG. 90(A) on monitor 130A as shown in FIG. 90(B). User 5B (second user) recognizes that the appearance of avatar object 6A has been changed to be more conspicuous than other avatar objects 6 by visually recognizing view image 9017B. That is, user 5B recognizes that user 5A has been charged for making avatar object 6A stand out.
ステップS8613において、プロセッサ210Bは、お勧めの第2パフォーマンスをユーザ5Bに通知する。詳細には、プロセッサ210Bは、複数の第2パフォーマンスのうち、少なくとも1つの第2パフォーマンスを選択し、ユーザ5Bに優先的に通知する。一例として、プロセッサ210Bは、外観が制御されたアバターオブジェクト6Aが関連付けられたユーザ5Aに対する課金に繋がる第2パフォーマンスを選択し、ユーザ5Bに通知する。
At step S8613, the processor 210B notifies the user 5B of the recommended second performance. Specifically, the processor 210B selects at least one second performance from among the plurality of second performances and preferentially notifies the user 5B. As an example, processor 210B selects and notifies user 5B of a second performance that will result in billing for user 5A with whom appearance-controlled avatar object 6A is associated.
図91は、ユーザ5Bに少なくとも1つの第2パフォーマンスを通知するために、プロセッサ210Bが参照するデータの一例を示す図である。該データは、例えば、ストレージ230Bに格納されている。「第2パフォーマンス」のカラムには、「指さしポーズ」、「手を振る」などの各第2パフォーマンスの内容を示す情報(以下、「第2情報」)が格納されている。「第1ユーザ情報」のカラムには、各第2情報に関連付けられている第1ユーザ情報が格納されている。図91では、第1ユーザ情報の一例として、本明細書で「ユーザ」に付している符号5A、5C、および5Dを用いている。
FIG. 91 is a diagram showing an example of data referred to by processor 210B in order to notify user 5B of at least one second performance. The data is stored, for example, in the storage 230B. The "second performance" column stores information (hereinafter referred to as "second information") indicating the content of each second performance such as "pointing pose" and "waving hand". The first user information associated with each piece of second information is stored in the "first user information" column. In FIG. 91, reference numerals 5A, 5C, and 5D attached to "user" in this specification are used as an example of the first user information.
第1ユーザ情報は、図86に示す処理以前に、プロセッサ210Bにより第2情報に関連付けられる。一例として、プロセッサ210Bは、アバターオブジェクト6Bが第2パフォーマンスを実行した後、該第2パフォーマンスの実行から所定時間、アバター情報の受信を待機する。所定時間以内にアバター情報を受信した場合、プロセッサ210Bは、該アバター情報に含まれる第1ユーザ情報を、直前に実行した第2パフォーマンスを示す第2情報に関連付ける。つまり、プロセッサ210Bは、第2パフォーマンスが実行されてから所定時間以内に、視聴者側のユーザ5が、自身に関連付けられたアバターオブジェクト6を目立たせるために課金情報を登録した場合、直前に実行した第2パフォーマンスを、該ユーザ5による課金に繋がった第2パフォーマンスとして設定する。
The first user information is associated with the second information by processor 210B prior to the processing shown in FIG. As an example, after the avatar object 6B has performed the second performance, the processor 210B waits for reception of avatar information for a predetermined period of time from the performance of the second performance. If the avatar information is received within the predetermined time, the processor 210B associates the first user information contained in the avatar information with the second information indicating the second performance performed immediately before. In other words, if the user 5 on the audience side registers the billing information to make the avatar object 6 associated with him/herself stand out within a predetermined time after the second performance is performed, the processor 210B executes immediately before the second performance. The resulting second performance is set as the second performance leading to billing by the user 5 .
プロセッサ210Bは、受信したアバター情報に含まれる第1ユーザ情報が関連付けられている第2情報を、ユーザ5Bに通知する。一例として、ユーザ5Aを示す第1ユーザ情報「5A」を含むアバター情報を受信した場合、プロセッサ210Bは、図91に示すデータを参照し、「5A」という第1ユーザ情報が対応付けられた「指さしポーズ」を選択し、ユーザ5Bに通知する。つまり、プロセッサ210Bは、過去にアバターオブジェクト6Bに実行させた結果としてユーザ5Aに対する課金に実際に繋がった第2パフォーマンスを、課金に繋がる可能性が高い第2パフォーマンスとしてユーザ5Bに通知する。
プロセッサ210Bは、図90(B)に示すように、視界画像9017Bに、選択した第2パフォーマンスの内容を示すテキストを含む通知画像9084を含めて、モニタ130Bに表示する。プロセッサ210Bは、通知画像9084と同一の外観を有する仮想オブジェクトを、第2仮想空間2711Bに配置することもできる。ユーザ5Bは、通知画像9084を視認することによって、ユーザ5Aに対する課金に繋がる可能性が高い第2パフォーマンスを認識することができる。
Processor 210B notifies user 5B of the second information associated with the first user information included in the received avatar information. As an example, when avatar information including first user information "5A" indicating user 5A is received, processor 210B refers to the data shown in FIG. "Pointing pose" is selected and notified to the user 5B. In other words, the processor 210B notifies the user 5B of the second performance that actually led to billing for the user 5A as a result of having the avatar object 6B performed in the past as the second performance that is highly likely to lead to billing.
As shown in FIG. 90B, processor 210B displays view image 9017B including notification image 9084 including text indicating the content of the selected second performance on monitor 130B. Processor 210B can also place a virtual object having the same appearance as notification image 9084 in second virtual space 2711B. By visually recognizing the notification image 9084, the user 5B can recognize the second performance that is highly likely to lead to billing for the user 5A.
ステップS8614において、プロセッサ210Bは、第2パフォーマンスに対応するユーザ5Bの動きを検出する。ステップS8615において、プロセッサ210Bは、検出したユーザ5Bの動きに応じて、アバターオブジェクト6Bに第2パフォーマンスを実行させる。プロセッサ210Bは、ユーザ5Bの動きに応じて、アバターオブジェクト6Bに指さしポーズを実行させる。指さしポーズの詳細、および、指さしポーズをアバターオブジェクト6Bに実行させるためのユーザ5Bの動きの詳細は、実施形態5にて図83および84を参照して既に説明しているため、ここでは繰り返さない。
At step S8614, the processor 210B detects movement of the user 5B corresponding to the second performance. At step S8615, the processor 210B causes the avatar object 6B to perform the second performance according to the detected movement of the user 5B. The processor 210B causes the avatar object 6B to perform a pointing pose according to the movement of the user 5B. The details of the pointing pose and the movement of the user 5B to cause the avatar object 6B to perform the pointing pose have already been described in Embodiment 5 with reference to FIGS. 83 and 84, and will not be repeated here. .
プロセッサ210Bは、アバターオブジェクト6Bに第2パフォーマンスを実行させると、通知画像9084を視界画像17Bにおいて非表示とする。プロセッサ210Bは、この処理の一例として、実施形態5にて説明した、通知画像8181および枠画像8283を視界画像17Bにおいて非表示とする処理と同様の処理を行なえばよい。
After causing the avatar object 6B to perform the second performance, the processor 210B hides the notification image 9084 in the view image 17B. As an example of this process, the processor 210B may perform the same process as the process of not displaying the notification image 8181 and the frame image 8283 in the view image 17B described in the fifth embodiment.
ステップS8616において、プロセッサ210Bは、第2パフォーマンスの実行に対応するアバター情報を、コンピュータ200Aへ送信する。詳細には、プロセッサ210Bは、該アバター情報をサーバ600へ送信する。サーバ600は、受信したアバター情報を、同期処理によってコンピュータ200Aへ送信する。
At step S8616, processor 210B transmits the avatar information corresponding to the performance of the second performance to computer 200A. Specifically, processor 210B transmits the avatar information to server 600 . Server 600 transmits the received avatar information to computer 200A through synchronization processing.
図92は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像9217Aを示す図である。ステップS8604において、プロセッサ210Aは、プロセッサ210Bから送信されたアバター情報をリアルタイムに受信する。ステップS8605において、プロセッサ210Aは、受信したアバター情報に含まれる動き情報に基づいて、アバターオブジェクト6Bに第2パフォーマンスを実行させる。これにより、プロセッサ210Aは、ユーザ5Bの動きに応じて、アバターオブジェクト6Bに第2パフォーマンスを実行させることができる。
FIG. 92 is a diagram showing second virtual space 2711A and view image 9217A according to an embodiment. At step S8604, the processor 210A receives the avatar information transmitted from the processor 210B in real time. At step S8605, the processor 210A causes the avatar object 6B to perform the second performance based on the motion information included in the received avatar information. Thereby, the processor 210A can cause the avatar object 6B to perform the second performance according to the movement of the user 5B.
プロセッサ210Aは、アバターオブジェクト6Bによる第2パフォーマンスを、第2仮想空間2711Aにおいてアバターオブジェクト6Aに視聴させる。プロセッサ210Aは、例えば、図92(A)に示す第2仮想空間2711Aに対応する視界画像9217Aを、図92(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像8517Aを視認することによって、アバターオブジェクト6Bが、自身がリクエストした第2パフォーマンスを実行したことを認識する。これにより、ユーザ5Aは、自身に関連付けられたアバターオブジェクト6Aの外観を、課金額の負担により他の視聴者側のアバターオブジェクト6より目立たせたことによって、アバターオブジェクト6Bが第2パフォーマンスを実行したと認識し、喜びを感じる。つまり、仮想空間におけるライブの興趣性をより高めることができる。また、ユーザ5Aは、自身に向けられた第2パフォーマンスを再度実行してほしいと願い、アバターオブジェクト6Aをさらに目立たせるために、さらに課金額を支払う可能性がある。これにより、ユーザ5Bはより多くの収入を得ることができる。
The processor 210A causes the avatar object 6A to view the second performance by the avatar object 6B in the second virtual space 2711A. Processor 210A, for example, displays view image 9217A corresponding to second virtual space 2711A shown in FIG. 92(A) on monitor 130A as shown in FIG. 92(B). User 5A recognizes that avatar object 6B has performed the second performance requested by user 5A by visually recognizing view image 8517A. As a result, the user 5A made the appearance of the avatar object 6A associated with him stand out more than the avatar object 6 on the other viewer side by paying the billing amount, so that the avatar object 6B performed the second performance. Recognize and feel joy. In other words, it is possible to further enhance the interest of the live performance in the virtual space. Also, the user 5A may wish to perform the second performance directed to him/herself again, and may pay a further billing amount in order to make the avatar object 6A stand out more. This allows the user 5B to earn more income.
また、ユーザ5Bがアバターオブジェクト6Bに、通知された第2パフォーマンス(お勧めの第2パフォーマンス)を実行させた場合を考える。該第2パフォーマンスは、過去に実行した際、ユーザ5Aが課金額を支払うことに繋がった第2パフォーマンスであり、換言すれば、ユーザ5Aが好む第2パフォーマンスである。ユーザ5Aにしてみると、自身に関連付けられたアバターオブジェクト6Aの外観を、課金額の支払いにより他の視聴者側のアバターオブジェクト6より目立たせたことによって、アバターオブジェクト6Bが、自身が好む第2パフォーマンスを実行してくれたと感じる。これにより、ユーザ5Aはより大きな喜びを感じる。また、アバターオブジェクト6Aをさらに目立たせるための課金額をユーザ5Aが支払う可能性も上がる。
Also, consider a case where the user 5B causes the avatar object 6B to perform the notified second performance (recommended second performance). The second performance is a second performance that, when performed in the past, led to the user 5A paying the billing amount, in other words, a second performance that the user 5A likes. For the user 5A, by making the appearance of the avatar object 6A associated with him/herself stand out from the avatar objects 6 on the other viewer side by paying the billing amount, the avatar object 6B can be displayed in his/her preferred second I feel like I did a performance. This makes the user 5A more happy. In addition, the user 5A is more likely to pay the billing amount for making the avatar object 6A stand out more.
[変形例]
アバターオブジェクト6Aの外観の制御は、アバターオブジェクト6Bからアバターオブジェクト6Aが目立つような外観の制御であれば、上述した、アバターオブジェクト6Aの色を変化させる例に限定されない。例えば、プロセッサ210Aは、アバターオブジェクト6Aの大きさや形状を変化させてもよい。また、プロセッサ210Aは、他のアバターオブジェクト6の外観を制御することにより、アバターオブジェクト6Aを目立たせてもよい。例えば、プロセッサ210Aは、他のアバターオブジェクト6を一定時間透明にしてもよい。
[Modification]
The control of the appearance of the avatar object 6A is not limited to the example of changing the color of the avatar object 6A described above, as long as the appearance control is such that the avatar object 6A stands out from the avatar object 6B. For example, the processor 210A may change the size or shape of the avatar object 6A. Processor 210A may also control the appearance of other avatar objects 6 to make avatar object 6A stand out. For example, processor 210A may make other avatar objects 6 transparent for a period of time.
ユーザ5Bに通知する第2パフォーマンスを選択するための条件は、上述した例、すなわち、「課金に繋がる第2パフォーマンス」に限定されない。詳細には、プロセッサ210Bは、該条件で選択した第2パフォーマンスを、他の条件でさらに絞り込んでもよい。該他の条件は、例えば、「ユーザ5Bが得意な第2パフォーマンス」であってもよい。つまり、プロセッサ210Bは、ユーザ5Aに対する課金に繋がった第2パフォーマンスが複数ある場合、ユーザ5Bが得意な第2パフォーマンスを選択し、ユーザ5Bに通知してもよい。ユーザ5Bが得意な第2パフォーマンスは、ユーザ5Bが予め設定しておけばよい。
The conditions for selecting the second performance to be notified to the user 5B are not limited to the example described above, that is, the "second performance leading to billing". Specifically, the processor 210B may further narrow down the second performances selected under the condition under another condition. The other condition may be, for example, "the second performance that the user 5B is good at". That is, when there are multiple second performances that have led to billing for user 5A, processor 210B may select a second performance that user 5B is good at and notify user 5B of it. The second performance that the user 5B is good at may be preset by the user 5B.
また、該他の条件は、例えば、「他のユーザ5の評価を下げない第2パフォーマンス」であってもよい。つまり、プロセッサ210Bは、ユーザ5Aに対する課金に繋がった第2パフォーマンスが複数ある場合、過去のライブで実行したときの評価を示す評価値が閾値未満の第2パフォーマンスを選択肢から除外してもよい。評価値は、一例として、視聴者側の各ユーザが行った個別の評価に基づいて算出される。該個別の評価は、例えば、視聴者側のユーザ5が右手または左手を用いて所定の操作を行うことにより入力された値であり、該値は、コンピュータ200Bへ送信される。プロセッサ210Bは、一例として、受信した値を平均することで、評価値を算出する。以上より、課金に繋がる第2パフォーマンスを行った結果、アバターオブジェクト6Bの評価が下がったり、インターネット上で批判されたりすることを防ぐことができる。
Also, the other condition may be, for example, "second performance that does not lower the evaluation of other users 5". That is, when there are a plurality of second performances that have led to billing for user 5A, processor 210B may exclude second performances whose evaluation values indicating evaluations performed in past live performances are less than a threshold from options. The evaluation value is calculated, for example, based on individual evaluations made by each user on the viewer side. The individual evaluation is, for example, a value input by the viewer side user 5 by performing a predetermined operation with the right hand or the left hand, and the value is transmitted to the computer 200B. For example, the processor 210B calculates the evaluation value by averaging the received values. As described above, it is possible to prevent the evaluation of the avatar object 6B from being lowered or being criticized on the Internet as a result of performing the second performance leading to billing.
視聴者側のユーザ5は、個別の評価とともに、第2パフォーマンスに対するコメントを入力してもよい。プロセッサ210Aは、図示しない掲示板オブジェクトを第2仮想空間2711Aに配置すると共に、該コメントを掲示板オブジェクトに表示してもよい。
A user 5 on the viewer side may enter comments on the second performance along with individual evaluations. Processor 210A may place a bulletin board object (not shown) in second virtual space 2711A and display the comment on the bulletin board object.
また、プロセッサ210Bは、ユーザ5Bに通知する第2パフォーマンスを選択する際、視聴者側のユーザ5の男女比、年齢の分布などを参照してもよい。例えば、ユーザ5Aに対する課金に繋がった複数の第2パフォーマンスに、過去のライブで実行したときの評価を示す評価値が閾値未満の第2パフォーマンスがあるとする。該第2パフォーマンスは、女性限定のライブにおいて評価値が閾値未満である一方、男性限定のライブにおいては評価値が閾値以上であるとする。ここで、今回のライブの視聴者側のユーザ5の男女比は、男性が8割であるとする。この場合、プロセッサ210Bは、該第2パフォーマンスは、男性には受けが良い第2パフォーマンスであるとして、選択肢から除外せず、ユーザ5Bに通知してもよい。
Further, the processor 210B may refer to the gender ratio, age distribution, etc. of the users 5 on the viewer side when selecting the second performance to be notified to the user 5B. For example, it is assumed that among the plurality of second performances that have led to billing for user 5A, there is a second performance whose evaluation value indicating the evaluation when performed in a live performance in the past is less than a threshold. Assume that the evaluation value of the second performance is less than the threshold value in the women-only live performance, and the evaluation value is equal to or greater than the threshold value in the men-only live performance. Here, it is assumed that 80% of the users 5 on the audience side of this live show are male. In this case, the processor 210B may notify the user 5B that the second performance is the second performance that is well received by men, without excluding it from the options.
〔実施形態7〕
本実施形態において、プロセッサ210Aは、ユーザ5Aに対する課金および決済に関する処理を、実施形態1に記載されるタグオブジェクト2733Aを用いた方式によって実行する。しかし、これに限定されず、プロセッサ210Aは、実施形態1に係る方式とは異なる任意の方式によって、ユーザ5Aに対する課金および決済に関する処理を実行することもできる。
[Embodiment 7]
In this embodiment, the processor 210A executes processing related to billing and settlement for the user 5A by the method using the tag object 2733A described in the first embodiment. However, without being limited to this, the processor 210A can also execute processing related to billing and payment for the user 5A by any method different from the method according to the first embodiment.
図93は、HMDシステム100において実行される処理の一例を示すシーケンスチャートである。以下では、ユーザ5A(第1ユーザ)の入力に基づいて、ライブの演出制御を実行するための一連の処理を説明する。図93に示すシーケンスチャートは、図26に示すステップS2613が実行された後の処理を示している。なお、本実施形態では、ユーザ5Aに行わせる演出制御として、照明制御を例に挙げて説明する。ただし、該演出制御は、照明制御に限定されない。例えば、該演出制御は、音響制御を含んでもよい。この例の場合、プロセッサ210Aは、ユーザ5Aの入力に基づいて、照明および音響の少なくとも一方を制御する。また、ライブの演出制御は、ユーザ5Cが行ってもよいし、ユーザ5Dが行ってもよい。
FIG. 93 is a sequence chart showing an example of processing executed in the HMD system 100. FIG. Below, based on the input of user 5A (1st user), a series of processes for performing production|presentation control of a live performance are demonstrated. The sequence chart shown in FIG. 93 shows processing after step S2613 shown in FIG. 26 is executed. In addition, in this embodiment, lighting control is mentioned as an example and demonstrated as production|presentation control which the user 5A is made to perform. However, the effect control is not limited to lighting control. For example, the presentation control may include sound control. In this example, processor 210A controls at least one of lighting and sound based on user 5A's input. Moreover, the user 5C may perform live production|presentation control, and the user 5D may perform.
図94は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像9417Aを示す図である。図94(A)に示すように、第2仮想空間2711Aには、仮想オブジェクトの一種である、照明オブジェクト9491が配置されている。一例として、プロセッサ210Aは、ステージオブジェクト1532とともに、照明オブジェクト9491を第2仮想空間2711Aに配置してもよい。
FIG. 94 is a diagram showing second virtual space 2711A and view image 9417A according to an embodiment. As shown in FIG. 94A, a lighting object 9491, which is a type of virtual object, is arranged in the second virtual space 2711A. As an example, processor 210A may place illumination object 9491 in second virtual space 2711A along with stage object 1532 .
ステップS9301において、プロセッサ210Aは、受信したアバター情報に含まれる動き情報に基づいて、アバターオブジェクト6B(第2アバター)に第1パフォーマンスを実行させる。ステップS9302において、プロセッサ210Aは、第1照明演出を実行する。第1照明演出は、ユーザ5Bがライブの開始前に予め設定した照明演出である。第1照明演出を実行するための情報は、コンピュータ200Bからサーバ600を介してコンピュータ200Aに送信される。コンピュータ200Aは、例えば、アバターオブジェクト6Bを第2仮想空間2711Aに配置するためのアバター情報とともに、該情報を受信しておき、ステップS9302において、該情報に基づいて第1照明演出を実行してもよい。
In step S9301, the processor 210A causes the avatar object 6B (second avatar) to perform the first performance based on the motion information included in the received avatar information. In step S9302, processor 210A executes a first lighting effect. The first lighting effect is a lighting effect preset by the user 5B before the start of the live performance. Information for executing the first lighting effect is transmitted from computer 200B via server 600 to computer 200A. Computer 200A may, for example, receive avatar information for arranging avatar object 6B in second virtual space 2711A together with the information, and execute the first lighting effect based on the information in step S9302. good.
詳細には、プロセッサ210Aは、仮想オブジェクト制御モジュール1427として、図94(A)に示すように、照明オブジェクト9491から、第1照明演出を実行するための情報に基づいて、光線オブジェクト9492を出射させる。プロセッサ210Aは、該情報に基づいて、照明オブジェクト9491を動かしてもよい。これにより、プロセッサ210Aは、光線オブジェクト9492を動かすことができる。なお、照明オブジェクト9491は、例えば、ステージオブジェクト1532の配置と同じタイミングで、第2仮想空間2711Aに配置されてもよい。
Specifically, processor 210A, as virtual object control module 1427, emits light ray object 9492 from lighting object 9491 based on information for executing the first lighting effect, as shown in FIG. . Processor 210A may move lighting object 9491 based on the information. This allows processor 210A to move ray object 9492 . Note that the illumination object 9491 may be placed in the second virtual space 2711A at the same timing as the stage object 1532 is placed, for example.
プロセッサ210Aは、照明制御をユーザ5Aに案内するメッセージを、ライブ中にユーザ5Aに通知する。プロセッサ210Aは、例えば、タグオブジェクト2733Aにメッセージを表示する。メッセージは、照明制御を案内するテキストと、ユーザ5Aがライブの照明制御を行うために必要な課金額とを含む。
The processor 210A notifies the user 5A during the live of a message that guides the user 5A to the lighting control. Processor 210A, for example, displays the message in tag object 2733A. The message includes text guiding lighting control and the billing amount required for user 5A to perform live lighting control.
メッセージがタグオブジェクト2733Aに表示された後、プロセッサ210Aは、ユーザ5Aの左手の動きに応じて、図94(A)に示すように、仮想左手1531LAを視界領域15A内に移動させる。プロセッサ210Aは、例えば、図94(A)に示す第2仮想空間2711Aに対応する視界画像9417Aを、図94(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像9417Aを視認することによって、タグオブジェクト2733Aに表示されるメッセージを確認する。これにより、ユーザ5Aは、新たに1000円の課金額を支払えば、自身がライブの照明制御を行なえることを認識する。
After the message is displayed on tag object 2733A, processor 210A moves virtual left hand 1531LA into viewing area 15A as shown in FIG. 94(A) in accordance with the movement of user's 5A left hand. Processor 210A, for example, displays view image 9417A corresponding to second virtual space 2711A shown in FIG. 94(A) on monitor 130A as shown in FIG. 94(B). User 5A confirms the message displayed on tag object 2733A by visually recognizing view image 9417A. As a result, the user 5A recognizes that he or she can control live lighting by paying a new billing amount of 1000 yen.
ユーザ5Aは、タグオブジェクト2733Aに表示されたメッセージを確認した後、照明制御を自身が行うための操作を行う。該操作は、実施形態1にて図34を参照して説明しているため、ここでは繰り返さない。プロセッサ210Aは、照明制御を案内するメッセージが表示されるタグオブジェクト2733Aが選択されたことに応じて、照明制御を行うためのユーザ5Aの操作を検出する。
After confirming the message displayed on the tag object 2733A, the user 5A performs an operation for himself/herself to control the lighting. Since this operation has been described with reference to FIG. 34 in Embodiment 1, it will not be repeated here. Processor 210A detects user 5A's operation for performing lighting control in response to selection of tag object 2733A displaying a message guiding lighting control.
図95は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像9517Aを示す図である。ステップS9303において、プロセッサ210Aは、照明制御に対応する課金情報を、タグオブジェクト2733Aに登録する。図95の例では、プロセッサ210Aは、アバターオブジェクト6A(第1アバター)が、仮想右手1531RAでタグオブジェクト2733Aを選択した場合、照明制御に必要な課金額(1000円)を表す課金情報を、タグオブジェクト2733Aに新たに登録する。なお、登録された課金情報が表す課金額の決済は、実施形態1で説明した方法で行えばよい。
FIG. 95 is a diagram showing second virtual space 2711A and view image 9517A according to an embodiment. At step S9303, processor 210A registers billing information corresponding to lighting control in tag object 2733A. In the example of FIG. 95 , when avatar object 6A (first avatar) selects tag object 2733A with virtual right hand 1531RA, processor 210A transmits charging information indicating the charging amount (1000 yen) required for lighting control to the tag. Newly register in object 2733A. It should be noted that the settlement of the billing amount represented by the registered billing information may be performed by the method described in the first embodiment.
課金情報が登録された後、プロセッサ210Aは、タグオブジェクト2733A上で課金情報を再び視覚化する。この処理の詳細については、実施形態1にて図35を参照して説明しているため、ここでは繰り返さない。プロセッサ210Aは、例えば、図95(A)に示す第2仮想空間2711Aに対応する視界画像9517Aを、図95(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像9517Aを視認することにより、照明制御を行うことによって現時点での合計課金額が2500円に増加したことを認識する。
After the billing information is registered, processor 210A re-visualizes the billing information on tag object 2733A. Details of this process have been described with reference to FIG. 35 in the first embodiment, and therefore will not be repeated here. Processor 210A, for example, displays view image 9517A corresponding to second virtual space 2711A shown in FIG. 95(A) on monitor 130A as shown in FIG. 95(B). User 5A recognizes that the current total billing amount has increased to 2500 yen by performing lighting control by visually recognizing view image 9517A.
図96は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像9617Aを示す図である。ステップS9304において、プロセッサ210Aは、アバターオブジェクト6Aを、照明制御を行うための第1位置へ移動させる。プロセッサ210Aは、仮想オブジェクト生成モジュール1421として、照明制御オブジェクト9693を生成し、第1位置へ移動したアバターオブジェクト6Aの前に配置する。照明制御オブジェクト9693は、照明演出を制御するための処理をプロセッサ210Aに実行させるために、ユーザ5Cによって用いられる。照明制御オブジェクト9693は、一例として、アバターオブジェクト6Aの操作を受け付けるボタン、ダイヤル、スライダなどの部分オブジェクトを含む。プロセッサ210Aは、部分オブジェクトに対する操作を受け付けることにより、照明演出を制御する。例えば、プロセッサ210Aは、受け付けた操作に応じて、光線オブジェクト9492の色を変化させたり、照明オブジェクト9491を動かしたりすることができる。なお、照明制御オブジェクト9693は、第1位置に基づいて定まる所定の位置(図96(A)に示す位置)に、アバターオブジェクト6Aが移動する前に配置されてもよい。例えば、照明制御オブジェクト9693は、ステージオブジェクト1532の配置と同じタイミングで、該所定の位置に配置されてもよい。
FIG. 96 is a diagram showing second virtual space 2711A and view image 9617A according to one embodiment. At step S9304, the processor 210A moves the avatar object 6A to the first position for lighting control. The processor 210A, as the virtual object generation module 1421, generates the lighting control object 9693 and places it in front of the avatar object 6A that has moved to the first position. The lighting control object 9693 is used by the user 5C to cause the processor 210A to perform processing for controlling lighting effects. The lighting control object 9693 includes, for example, partial objects such as buttons, dials, and sliders that receive operations of the avatar object 6A. The processor 210A controls lighting effects by receiving operations on partial objects. For example, the processor 210A can change the color of the ray object 9492 or move the lighting object 9491 according to the received operation. Note that the lighting control object 9693 may be placed at a predetermined position determined based on the first position (the position shown in FIG. 96A) before the avatar object 6A moves. For example, the lighting control object 9693 may be arranged at the predetermined position at the same timing as the stage object 1532 is arranged.
プロセッサ210Aは、例えば、図96(A)に示す第2仮想空間2711Aに対応する視界画像9617Aを、図96(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像9617Aを視認することにより、アバターオブジェクト6Aが第1位置へ移動したこと、および、照明制御オブジェクト9693を認識する。換言すれば、ユーザ5Aは、自身が照明制御を行えるようになったことを認識する。
Processor 210A, for example, displays view image 9617A corresponding to second virtual space 2711A shown in FIG. 96(A) on monitor 130A as shown in FIG. 96(B). User 5A recognizes that avatar object 6A has moved to the first position and lighting control object 9693 by visually recognizing view image 9617A. In other words, the user 5A recognizes that he or she can now control the lighting.
図97は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像9717Aを示す図である。ユーザ5Aは、第1位置に移動した後、照明を制御するための操作を行う。ユーザ5Aは、仮想右手1531RAの先端を照明制御オブジェクト9693に近づけるように、自身の右手を動かす。ステップS9305において、プロセッサ210Aは、右コントローラ300RAの出力に基づいて、ユーザ5Aの右手の動きを検出する。ステップS9306において、プロセッサ210Aは、ユーザ5Aの右手の動きに応じて、仮想右手1531RAの先端を照明制御オブジェクト9693に近づけるように、第2仮想空間2711Aにおいて仮想右手1531RAを動かす。
FIG. 97 is a diagram showing second virtual space 2711A and view image 9717A according to an embodiment. After moving to the first position, the user 5A performs an operation for controlling lighting. The user 5A moves his or her right hand so that the tip of the virtual right hand 1531RA approaches the lighting control object 9693. At step S9305, the processor 210A detects movement of the right hand of the user 5A based on the output of the right controller 300RA. In step S9306, the processor 210A moves the virtual right hand 1531RA in the second virtual space 2711A so that the tip of the virtual right hand 1531RA approaches the lighting control object 9693 according to the movement of the right hand of the user 5A.
ステップS9307において、プロセッサ210Aは、仮想右手1531RAの動きに応じて、照明制御オブジェクト9693を操作する。詳細には、プロセッサ210Aは、仮想右手1531RAの先端と照明制御オブジェクト9693に含まれる部分オブジェクトとが第1位置関係になった場合、仮想右手1531RAの先端と部分オブジェクトとが衝突したことを検出する。第1位置関係とは、例えば、仮想右手1531RAの先端と部分オブジェクトとの距離が第1距離を下回ることである。あるいは、仮想右手1531RAの先端に規定されるコリジョンエリアと、部分オブジェクトに設定されるコリジョンエリアとが少なくとも部分的に衝突することである。プロセッサ210Aは、仮想右手1531RAの先端と部分オブジェクトとが衝突したことに基づいて、仮想右手1531RAによって部分オブジェクトが操作されたことを検出する。
At step S9307, the processor 210A operates the lighting control object 9693 according to the movement of the virtual right hand 1531RA. Specifically, processor 210A detects that the tip of virtual right hand 1531RA collides with the partial object when the tip of virtual right hand 1531RA and the partial object included in lighting control object 9693 are in the first positional relationship. . The first positional relationship is, for example, that the distance between the tip of the virtual right hand 1531RA and the partial object is less than the first distance. Alternatively, the collision area defined at the tip of the virtual right hand 1531RA and the collision area set for the partial object at least partially collide. The processor 210A detects that the partial object has been manipulated by the virtual right hand 1531RA based on the collision between the tip of the virtual right hand 1531RA and the partial object.
ステップS9308において、プロセッサ210Aは、照明制御オブジェクト9693に対する操作、すなわち、部分オブジェクトに対する操作に応じて、第2照明演出を実行する。第2照明演出とは、ユーザ5Aの制御によって行われる、第1照明演出と異なる照明演出である。例えば、プロセッサ210Aは、部分オブジェクトに対する操作に応じて、第1色に着色された光線オブジェクト9492を、図97(A)に示すように、第2色に着色された光線オブジェクト9792に変更する。プロセッサ210Aは、例えば、図97(A)に示す第2仮想空間2711Aに対応する視界画像9717Aを、図97(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像9717Aを視認することによって、第2仮想空間2711Aにおいて、自身の操作に応じた第2照明演出が実行されていることを確認する。
In step S9308, the processor 210A executes the second lighting effect according to the operation on the lighting control object 9693, ie, the operation on the partial object. The second lighting effect is a lighting effect different from the first lighting effect, which is performed under the control of the user 5A. For example, processor 210A changes light ray object 9492 colored in the first color to light ray object 9792 colored in the second color, as shown in FIG. 97(A), according to the operation on the partial object. Processor 210A, for example, displays view image 9717A corresponding to second virtual space 2711A shown in FIG. 97(A) on monitor 130A as shown in FIG. 97(B). The user 5A confirms that the second lighting effect corresponding to his/her own operation is being executed in the second virtual space 2711A by viewing the view image 9717A.
プロセッサ210Aは、第2照明演出を実行するための情報を、サーバ600に送信する。サーバ600は、受信した該情報を、全てのユーザ5のコンピュータ200へ送信する。これにより、各コンピュータ200のプロセッサ210は、第2照明演出を実行可能となる。
Processor 210A transmits information for executing the second lighting effect to server 600 . The server 600 transmits the received information to the computers 200 of all users 5 . This enables the processor 210 of each computer 200 to execute the second lighting effect.
図98は、ある実施の形態に従う第2仮想空間2711Cおよび視界画像9817Cを示す図である。プロセッサ210Cは、第2照明演出を実行するための情報を受信すると、UIパネル9894を生成し、第2仮想空間2711Cに配置する。プロセッサ210Cは、例えば、図98(A)に示す第2仮想空間2711Cに対応する視界画像9817Cを、図98(B)に示すようにモニタ130Cに表示する。ユーザ5C(第3ユーザ)は、視界画像9817Cを視認することによって、UIパネル9894が第2仮想空間2711Cに配置されたことを認識する。
FIG. 98 is a diagram showing second virtual space 2711C and view image 9817C, according to an embodiment. Upon receiving the information for executing the second lighting effect, processor 210C generates UI panel 9894 and places it in second virtual space 2711C. The processor 210C, for example, displays a view image 9817C corresponding to the second virtual space 2711C shown in FIG. 98(A) on the monitor 130C as shown in FIG. 98(B). The user 5C (third user) recognizes that the UI panel 9894 has been placed in the second virtual space 2711C by viewing the view image 9817C.
UIパネル9894はUIオブジェクトの一種であり、照明演出を選択するための処理をプロセッサ210Cに実行させるために、ユーザ5Cによって用いられる。UIパネル9894は、UIパネル9894の前面に配置される選択肢9895および9896を含む。選択肢9895および選択肢9896は、その選択肢がユーザ5Cによって選択された場合に選択される照明演出を説明する情報を含む。選択肢9895は、第1照明演出、換言すれば、デフォルトの照明演出を選択するための項目であり、選択肢9896は、第2照明演出、換言すれば、ユーザ5Aの制御による照明演出を選択するための項目である。つまり、ユーザ5Cは、第2照明演出でアバターオブジェクト6Bの第1パフォーマンスを視聴するか否かを選択することができる。
The UI panel 9894 is a kind of UI object, and is used by the user 5C to cause the processor 210C to execute processing for selecting lighting effects. UI panel 9894 includes options 9895 and 9896 located in front of UI panel 9894 . Option 9895 and option 9896 include information describing the lighting effects that are selected when that option is selected by user 5C. The option 9895 is an item for selecting the first lighting effect, in other words, the default lighting effect, and the option 9896 is for selecting the second lighting effect, in other words, the lighting effect controlled by the user 5A. is the item. That is, the user 5C can select whether or not to view the first performance of the avatar object 6B with the second lighting effect.
図98の例では、選択肢9895が選択されている。このため、プロセッサ210Cは、第2仮想空間2711Cにおいて、第1照明演出を実行している。プロセッサ210Cは、図98(B)に示すように、選択されている選択肢9895と選択されていない選択肢9896との色を異ならせてもよい。これにより、ユーザ5Cは、選択肢9895が選択されていることを認識することができる。なお、第1照明演出はデフォルトの照明演出であるため、UIパネル9894が第2仮想空間2711Cに配置された時点で、自動的に選択肢9855が選択されていてもよい。
In the example of FIG. 98, option 9895 is selected. Therefore, the processor 210C is executing the first lighting effect in the second virtual space 2711C. The processor 210C may change the color of the selected option 9895 and the unselected option 9896, as shown in FIG. 98(B). Thereby, the user 5C can recognize that the option 9895 is selected. Since the first lighting effect is the default lighting effect, the option 9855 may be automatically selected when the UI panel 9894 is placed in the second virtual space 2711C.
ユーザ5Cは、第2仮想空間2711Cにおいて第2照明演出の実行を希望する場合、照明演出を変更するための操作を行う。一例として、ユーザ5Cは、仮想右手1531RCの先端を選択肢9896に近づけるように、自身の右手を動かす。プロセッサ210Cは、右コントローラ300RCの出力に基づいて、ユーザ5Cの右手の動きを検出する。そして、プロセッサ210Cは、ユーザ5Cの右手の動きに応じて、仮想右手1531RCの先端を選択肢9896に近づけるように、第2仮想空間2711Cにおいて仮想右手1531RCを動かす。
When the user 5C wishes to execute the second lighting effect in the second virtual space 2711C, the user 5C performs an operation for changing the lighting effect. As an example, user 5C moves his or her right hand so that the tip of virtual right hand 1531RC approaches option 9896 . The processor 210C detects movement of the right hand of the user 5C based on the output of the right controller 300RC. Then, the processor 210C moves the virtual right hand 1531RC in the second virtual space 2711C so that the tip of the virtual right hand 1531RC approaches the option 9896 according to the movement of the right hand of the user 5C.
プロセッサ210Cは、ユーザ5Cの右手の動きに基づいて、仮想右手1531RCの先端を選択肢9896に近づけるように、第2仮想空間2711Cにおいて仮想右手1531RCを動かす。プロセッサ210Cは、仮想右手1531RCの先端と選択肢9896とが衝突したことに基づいて、仮想右手1531RCによって選択肢9896が選択されたことを検出する。
The processor 210C moves the virtual right hand 1531RC in the second virtual space 2711C so that the tip of the virtual right hand 1531RC approaches the option 9896 based on the movement of the right hand of the user 5C. Processor 210C detects that option 9896 has been selected by virtual right hand 1531RC based on the collision between the tip of virtual right hand 1531RC and option 9896. FIG.
図99は、ある実施の形態に従う第2仮想空間2711Cおよび視界画像9917Cを示す図である。プロセッサ210Cは、選択肢9896の選択を検出したことに応じて、第2仮想空間2711Cにおいて第2照明演出を実行する。プロセッサ210Cは、例えば、図99(A)に示す第2仮想空間2711Cに対応する視界画像9917Cを、図99(B)に示すようにモニタ130Cに表示する。ユーザ5Cは、視界画像9917Cを視認することによって、選択肢9896が選択されたこと、および、第2仮想空間2711Cにおいて第2照明演出が開始されたことを認識する。プロセッサ210Cは、第2仮想空間2711Cにおいて第2照明演出を実行すると、サーバ600を介して、その旨をコンピュータ200Aへ通知する。
FIG. 99 is a diagram showing second virtual space 2711C and view image 9917C according to an embodiment. Processor 210C executes a second lighting effect in second virtual space 2711C in response to detecting selection of option 9896 . The processor 210C, for example, displays a view image 9917C corresponding to the second virtual space 2711C shown in FIG. 99(A) on the monitor 130C as shown in FIG. 99(B). The user 5C recognizes that the option 9896 has been selected and that the second lighting effect has started in the second virtual space 2711C by viewing the view image 9917C. When processor 210C executes the second lighting effect in second virtual space 2711C, processor 210C notifies computer 200A to that effect via server 600 .
図100は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像10017Aを示す図である。ステップS9309において、プロセッサ210Aは、第2照明演出でアバターオブジェクト6Bの第1パフォーマンスを視聴しているユーザ5の人数をユーザ5Aに通知する。詳細には、プロセッサ210Aは、他のコンピュータ200から受信した、第2照明演出を実行した旨の通知の数を、上記人数としてユーザ5Aに通知する。プロセッサ210Aは、例えば、図100(A)に示す第2仮想空間2711Aに対応する視界画像10017Aに、上記人数を示すテキストを含む通知画像10085を含める。そして、プロセッサ210Aは、図100(B)に示すように、視界画像10017Aをモニタ130Aに表示する。プロセッサ210Aは、通知画像10085と同一の外観を有する仮想オブジェクトを、第2仮想空間2711Aに配置することもできる。ユーザ5Aは、視界画像10017Aを視認することによって、第2照明演出でアバターオブジェクト6Bの第1パフォーマンスを視聴している人数を認識する。
FIG. 100 is a diagram showing second virtual space 2711A and view image 10017A according to one embodiment. At step S9309, the processor 210A notifies the users 5A of the number of users 5 viewing the first performance of the avatar object 6B with the second lighting effect. Specifically, processor 210A notifies user 5A of the number of notifications received from other computers 200 to the effect that the second lighting effect has been executed as the number of people. Processor 210A includes, for example, notification image 10085 including text indicating the number of people in view image 10017A corresponding to second virtual space 2711A shown in FIG. 100(A). Processor 210A then displays field-of-view image 10017A on monitor 130A, as shown in FIG. 100(B). Processor 210A can also place a virtual object having the same appearance as notification image 10085 in second virtual space 2711A. The user 5A recognizes the number of people watching the first performance of the avatar object 6B with the second lighting effect by visually recognizing the view image 10017A.
図101は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像10117Aを示す図である。図101(A)では、第2仮想空間2711Aにおけるライブは終了している。ライブの終了に伴って、アバターオブジェクト6Bおよび6Cが第2仮想空間2711Aから退出している。アバターオブジェクト6Aおよび6Dは、ライブの終了後に第2仮想空間2711Aに残っている。
FIG. 101 is a diagram showing second virtual space 2711A and view image 10117A according to an embodiment. In FIG. 101(A), the live performance in the second virtual space 2711A has ended. Avatar objects 6B and 6C have left the second virtual space 2711A with the end of the live. Avatar objects 6A and 6D remain in the second virtual space 2711A after the live performance ends.
ステップS9310において、プロセッサ210Aは、他のユーザ5の、第2照明演出に対する評価に基づいて、タグオブジェクト2733Aに登録された課金情報における課金額を変更する。該評価は、一例として、第2照明演出でアバターオブジェクト6Bの第1パフォーマンスを視聴したユーザ5の人数であってもよい。プロセッサ210Aは、例えば、該人数が多いほど、タグオブジェクト2733Aに登録された課金情報における課金額を減少させてもよい。
In step S9310, processor 210A changes the billing amount in the billing information registered in tag object 2733A based on another user's 5 evaluation of the second lighting effect. The evaluation may be, for example, the number of users 5 who have viewed the first performance of the avatar object 6B with the second lighting effect. Processor 210A may, for example, decrease the billing amount in the billing information registered in tag object 2733A as the number of people increases.
プロセッサ210Aは、例えば、図101(A)に示す第2仮想空間2711Aに対応する視界画像10117Aを、図101(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像10117Aを視認することによって、ライブが終了したことを認識する。ユーザ5Aは、さらに、ユーザ5Aに課金された合計課金額が、2500円(図95(B)参照)から2300円に変更されたことを認識する。換言すれば、ユーザ5Aは、自身が行った照明制御の評価により、照明制御に必要な課金額が安くなったことを認識する。
Processor 210A, for example, displays view image 10117A corresponding to second virtual space 2711A shown in FIG. 101(A) on monitor 130A as shown in FIG. 101(B). User 5A recognizes that the live has ended by visually recognizing field-of-view image 10117A. User 5A further recognizes that the total billing amount charged to user 5A has been changed from 2,500 yen (see FIG. 95(B)) to 2,300 yen. In other words, the user 5A recognizes that the amount of charge required for lighting control has decreased due to the evaluation of the lighting control performed by the user 5A.
以上のように、プロセッサ210Aは、課金情報の登録に応じて、ユーザ5Aにライブの演出を制御させる。このように、HMDシステム100は、現実のライブでは不可能な、観客によるライブの演出をユーザ5Aに仮想体験させることができる。結果として、仮想空間におけるライブの興趣性をより高めることができる。また、ライブの演出制御には、課金額の支払いが必要となるため、演出制御を行うユーザ5の人数を最適化することができ、ユーザ5の演出によりアバターオブジェクト6Bのパフォーマンスが阻害されることを防ぐことができる。
As described above, the processor 210A allows the user 5A to control the performance of the live performance in accordance with the registration of the billing information. In this way, the HMD system 100 can allow the user 5A to virtually experience a live performance by the audience, which is impossible in a real live performance. As a result, it is possible to further enhance the interest of live performances in the virtual space. In addition, since live performance control requires payment of a billing amount, the number of users 5 who perform performance control can be optimized, and the performance of the avatar object 6B is not hindered by the performance of the users 5. can be prevented.
また、ユーザ5Aによる演出制御が高い評価を得た場合、ユーザ5Aが仮想空間におけるライブの演出スタッフとしての名声を得ることができる。結果として、ユーザ5Aが、ユーザ5Bにより演出スタッフとして雇用されることも考えられる。
Also, when the performance control by the user 5A is highly evaluated, the user 5A can gain fame as a live performance staff in the virtual space. As a result, it is conceivable that the user 5A is employed as a production staff by the user 5B.
[変形例]
図102は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像10217Aを示す図である。プロセッサ210Aは、ユーザ5B(第2ユーザ)による第1操作を検出した場合に、ユーザ5Aによる演出制御を可能としてもよい。詳細には、プロセッサ
210Aは、コンピュータ200Bから、演出制御を許可する旨の通知を受信した場合、演出制御をユーザ5Aに案内するメッセージを、タグオブジェクト2733Aに表示する。プロセッサ210Aは、例えば、図102(A)に示す第2仮想空間2711Aに対応する視界画像10217Aを、図102(B)に示すようにモニタ130Aに表示する。このとき、プロセッサ210Aは、視界画像10217Aに、ユーザ5Aによる演出制御が可能となったことを示す通知画像10286を含めてもよい。これにより、ユーザ5Aは、視界画像10217Aを視認することによって、自身による演出制御が可能となったことを認識することができる。なお、第1操作は、例えば、図102(B)に示すように、アバターオブジェクト6Bに、両手を上に上げる姿勢を取らせるためのユーザ5Bの動きであってもよい。プロセッサ210Aは、通知画像10286と同一の外観を有する仮想オブジェクトを、第2仮想空間2711Aに配置することもできる。
[Modification]
FIG. 102 is a diagram showing second virtual space 2711A and view image 10217A according to one embodiment. The processor 210A may enable the effect control by the user 5A when detecting the first operation by the user 5B (second user). Specifically, when the processor 210A receives a notification that the effect control is permitted from the computer 200B, it displays a message for guiding the effect control to the user 5A on the tag object 2733A. Processor 210A, for example, displays view image 10217A corresponding to second virtual space 2711A shown in FIG. 102(A) on monitor 130A as shown in FIG. 102(B). At this time, the processor 210A may include a notification image 10286 indicating that the effect control by the user 5A is enabled in the view image 10217A. Thereby, the user 5A can recognize that the production control by himself/herself is enabled by visually recognizing the field-of-view image 10217A. Note that the first operation may be, for example, a movement of the user 5B to cause the avatar object 6B to take a posture of raising both hands, as shown in FIG. 102(B). Processor 210A can also place a virtual object having the same appearance as notification image 10286 in second virtual space 2711A.
演出制御のために必要な課金額は、演出制御の内容に応じて設定されてもよい。例えば、音響および照明を制御する場合、いずれか一方のみを制御する場合より高い課金額が設定されてもよい。また、演出制御のために必要な課金額は、演出制御を行った時間に応じて決定されてもよい。この例の場合、プロセッサ210Aは、演出制御の終了後に、演出制御に要した時間に応じた課金額を表す課金情報を、タグオブジェクト2733Aに新たに登録する。
The billing amount required for effect control may be set according to the content of effect control. For example, when controlling sound and lighting, a higher billing amount may be set than when controlling only one of them. Also, the billing amount required for effect control may be determined according to the time during which effect control is performed. In the case of this example, the processor 210A newly registers billing information indicating the billing amount corresponding to the time required for the effect control in the tag object 2733A after the effect control is finished.
ユーザ5Aは、演出制御を、コンピュータ200Aに接続された入力デバイスへの操作により行ってもよい。この例の場合、プロセッサ210Aは、モニタ130だけでなく、コンピュータ200Aに接続されたディスプレイ430Aに視界画像17Aを表示するものとする。詳細には、ユーザ5Aは、課金情報が登録された後、HMD120を頭部から外す。そして、演出制御に適した視界画像17Aが、ディスプレイ430Aに表示されるように、HMD120の向きを調節する。演出制御に適した視界画像17Aとは、例えば、アバターオブジェクト6Bおよび光線オブジェクト9492が含まれる視界画像である。そして、ユーザ5Aは、コンピュータ200Aに接続されたキーボードやマウスなどの入力デバイスを操作する。プロセッサ210Aは、該操作に応じた演出制御を実行する。
The user 5A may perform production control by operating an input device connected to the computer 200A. In this example, processor 210A displays view image 17A not only on monitor 130 but also on display 430A connected to computer 200A. Specifically, user 5A removes HMD 120 from the head after billing information is registered. Then, the orientation of the HMD 120 is adjusted so that the view image 17A suitable for effect control is displayed on the display 430A. The field-of-view image 17A suitable for effect control is, for example, a field-of-view image including the avatar object 6B and the ray object 9492. FIG. The user 5A then operates input devices such as a keyboard and a mouse connected to the computer 200A. The processor 210A executes effect control according to the operation.
他のユーザ5の、第2照明演出に対する評価に基づいて、タグオブジェクト2733Aに登録された課金情報における課金額が変更された結果、合計課金額が負の値となってもよい。例えば、ユーザ5Aが行った演出制御が非常に高い評価を得たことにより、課金額が大幅に減少され、合計課金額が負の値となってもよい。この場合、ユーザ5Bまたはプラットフォーマが、上記合計課金額の絶対値をユーザ5Aに報酬として支払うこととなる。
The total billing amount may become a negative value as a result of changing the billing amount in the billing information registered in the tag object 2733A based on another user's 5 evaluation of the second lighting effect. For example, when the performance control performed by the user 5A is highly evaluated, the billing amount may be greatly reduced and the total billing amount may become a negative value. In this case, the user 5B or the platformer pays the user 5A the absolute value of the total billing amount as a reward.
ユーザ5Aによる演出制御に、ユーザ5Aに対する課金が不要であってもよい。
The user 5A may not need to charge for the performance control by the user 5A.
〔実施形態8〕
本実施形態において、プロセッサ210Aは、ユーザ5Aに対する課金および決済に関する処理を、実施形態1に記載されるタグオブジェクト2733Aを用いた方式によって実行する。しかし、これに限定されず、プロセッサ210Aは、実施形態1に係る方式とは異なる任意の方式によって、ユーザ5Aに対する課金および決済に関する処理を実行することもできる。
[Embodiment 8]
In this embodiment, the processor 210A executes processing related to billing and settlement for the user 5A by the method using the tag object 2733A described in the first embodiment. However, without being limited to this, the processor 210A can also execute processing related to billing and payment for the user 5A by any method different from the method according to the first embodiment.
[会場選択]
図103は、ある実施の形態に従う第1仮想空間2411A(第1領域)および視界画像10317Aを示す図である。プロセッサ210Aは、UIパネル10350およびペンオブジェクト2453を生成し、第1仮想空間2411Aに配置する。なお、ペンオブジェクト2453は、実施形態1にて、図24を参照して既に説明しているため、ここでは説明を繰り返さない。
[Venue selection]
FIG. 103 is a diagram showing first virtual space 2411A (first region) and view image 10317A according to one embodiment. Processor 210A generates UI panel 10350 and pen object 2453 and places them in first virtual space 2411A. Note that the pen object 2453 has already been described with reference to FIG. 24 in the first embodiment, so description thereof will not be repeated here.
UIパネル10350は、実施形態1にて説明したUIパネル2450(図24参照)と同様に、会場を選択するための処理をプロセッサ210Aに実行させるために、ユーザ5Aによって用いられる。UIパネル10350は、UIパネル10350の前面に配置される選択肢10351および10352を含む。選択肢10351および10352は、その選択肢がユーザ5A(第1ユーザ)によって選択された場合に選択される会場の名称を説明する情報を含む。また、選択肢10351および10352は、その選択肢がユーザ5Aによって選択された場合の課金額を含む。該課金額は、一例として、会場料金(第1課金額)およびパフォーマンス料金(第2課金額)である。会場料金は、会場に応じた課金額であり、パフォーマンス料金は、アバターオブジェクト6のパフォーマンスに応じた課金額である。
The UI panel 10350 is used by the user 5A to cause the processor 210A to execute processing for selecting a venue, similar to the UI panel 2450 (see FIG. 24) described in the first embodiment. UI panel 10350 includes options 10351 and 10352 located in front of UI panel 10350 . Options 10351 and 10352 include information describing the name of the venue to be selected when that option is selected by user 5A (first user). Also, options 10351 and 10352 include billing amounts when the option is selected by user 5A. The billing amount is, for example, a venue fee (first billing amount) and a performance fee (second billing amount). The venue fee is an amount charged according to the venue, and the performance fee is an amount charged according to the performance of the avatar object 6 .
選択肢10351は、第1会場を選択するための項目であり、第1会場を選択した場合の会場料金は1000円、パフォーマンス料金は1000円である。選択肢10352は、第1会場と異なる第2会場を選択するための項目であり、第2会場を選択した場合の会場料金は500円、パフォーマンス料金は800円である。つまり、第1会場と第2会場とは異なる会場であるため、選択肢10351と選択肢10352とで会場料金が異なっている。また、第1会場でパフォーマンスをするアバターオブジェクト6と、第2会場でパフォーマンスをするアバターオブジェクト6とは異なり、さらに、そのパフォーマンス内容も異なり得るため、選択肢10351と選択肢10352とでパフォーマンス料金も異なっている。
The option 10351 is an item for selecting the first venue, and when the first venue is selected, the venue fee is 1000 yen and the performance fee is 1000 yen. The option 10352 is an item for selecting a second venue different from the first venue. When the second venue is selected, the venue fee is 500 yen and the performance fee is 800 yen. In other words, since the first venue and the second venue are different venues, the venue fees for the options 10351 and 10352 are different. In addition, the avatar object 6 performing at the first venue is different from the avatar object 6 performing at the second venue, and the content of the performance may be different. there is
プロセッサ210Aは、例えば、図103(A)に示す第1仮想空間2411Aに対応する視界画像10317Aを、図103(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像10317Aを視認することによって、UIパネル10350の選択肢10351または選択肢10352を選択する必要があることを認識する。
Processor 210A, for example, displays view image 10317A corresponding to first virtual space 2411A shown in FIG. 103(A) on monitor 130A as shown in FIG. 103(B). User 5A recognizes that it is necessary to select option 10351 or option 10352 of UI panel 10350 by visually recognizing view image 10317A.
図104は、ある実施の形態に従う第1仮想空間2411Aおよび視界画像10417Aを示す図である。プロセッサ210Aは、第1会場をユーザ5Aに選択させる。図104(A)に示すように、プロセッサ210Aは、仮想右手1531RAがペンオブジェクト2453を選択した後、ユーザ5Aの右手の動きに基づいて、ペンオブジェクト2453の先端を選択肢10351に近づけるように、第1仮想空間2411Aにおいて仮想右手1531RAおよびペンオブジェクト2453を動かす。プロセッサ210Aは、ペンオブジェクト2453の先端と選択肢10351とが衝突したことに基づいて、ペンオブジェクト2453によって選択肢10351が選択されたことを検出する。そして、プロセッサ210Aは、選択された選択肢10351に対応する第1会場の選択を受け付ける。
FIG. 104 is a diagram showing first virtual space 2411A and view image 10417A according to one embodiment. Processor 210A allows user 5A to select the first venue. As shown in FIG. 104A, after the virtual right hand 1531RA selects the pen object 2453, the processor 210A moves the tip of the pen object 2453 closer to the option 10351 based on the movement of the right hand of the user 5A. 1 Move the virtual right hand 1531RA and the pen object 2453 in the virtual space 2411A. The processor 210A detects that the pen object 2453 has selected the option 10351 based on the collision between the tip of the pen object 2453 and the option 10351 . Processor 210A then accepts selection of the first venue corresponding to selected option 10351 .
プロセッサ210Aは、例えば、図104(A)に示す第1仮想空間2411Aに対応する視界画像10417Aを、図104(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像10417Aを視認することによって、UIパネル10350の選択肢10351を選択したこと(すなわち第1会場を選択したこと)を認識する。
The processor 210A, for example, displays a view image 10417A corresponding to the first virtual space 2411A shown in FIG. 104(A) on the monitor 130A as shown in FIG. 104(B). User 5A recognizes selection of option 10351 of UI panel 10350 (that is, selection of the first meeting place) by visually recognizing view image 10417A.
図105は、ある実施形態に従うHMDセット110において実行される処理の一部を表すシーケンスチャートである。以下では、ユーザ5Aが、第1会場を選択した後の課金に関する処理について説明する。図105に示すシーケンスチャートは、図26に示すステップS2607が実行された後の処理を示している。
FIG. 105 is a sequence chart representing part of the processing performed in the HMD set 110 according to one embodiment. In the following, the billing process after the user 5A selects the first venue will be described. The sequence chart shown in FIG. 105 shows the processing after step S2607 shown in FIG. 26 is executed.
図106は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像10617Aを示す図である。ステップS10501において、プロセッサ210Aは、会場料金を表す課金情報をタグオブジェクト2733Aに登録する(第1課金に関する処理を実行する)。ステップS10502において、プロセッサ210Aは、パフォーマンス料金を表す課金情報をタグオブジェクト2733Aに登録する(第2課金に関する処理を実行する)。プロセッサ210Aは、タグオブジェクト2733Aに登録された課金情報を、タグオブジェクト2733A上で視覚化する。図106(A)の例では、プロセッサ210Aは、会場料金とパフォーマンス料金との合計(2000円)を、合計課金額としてタグオブジェクト2733Aに表示する。なお、ステップS10501およびステップS10502の処理は、同時に実行されてもよいし、ステップS10502の処理が、ステップS10501の処理より前に実行されてもよい。
FIG. 106 is a diagram showing second virtual space 2711A and view image 10617A according to one embodiment. In step S10501, processor 210A registers billing information representing the hall fee in tag object 2733A (performs processing relating to the first billing). In step S10502, processor 210A registers billing information representing the performance fee in tag object 2733A (performs processing relating to the second billing). Processor 210A visualizes billing information registered with tag object 2733A on tag object 2733A. In the example of FIG. 106A, processor 210A displays the sum of the venue fee and the performance fee (2000 yen) as the total billing amount in tag object 2733A. Note that the processes of steps S10501 and S10502 may be executed simultaneously, or the process of step S10502 may be executed before the process of step S10501.
課金情報が登録された後、ユーザ5Aは、腕時計で時間を確認するように、左手を自身の視界内まで移動させる。プロセッサ210Aは、左コントローラ300LAの出力に基づいて、ユーザ5Aの左手の動きを検出する。プロセッサ210Aは、ユーザ5Aの左手の動きに応じて、図106(A)に示すように仮想左手1531LAを視界領域15A内に移動させる。プロセッサ210Aは、例えば、図106(A)に示す第2仮想空間2711Aに対応する視界画像10617Aを、図106(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像10617Aを視認することによって、タグオブジェクト2733Aに表示される上限課金額および合計課金額を、それぞれ確認する。図106(B)の例では、ユーザは、上限課金額が30000円であり、かつ、現時点での合計課金額が2000円であることを認識する。換言すれば、ユーザ5Aは、第2仮想空間2711Aにアバターオブジェクト6A(第1アバター)が入場した結果、会場料金(1000円)およびパフォーマンス料金(1000円)が課金されたことを把握する。
After the billing information is registered, user 5A moves his/her left hand into his/her field of view as if checking the time on a wristwatch. Processor 210A detects the movement of user 5A's left hand based on the output of left controller 300LA. Processor 210A moves virtual left hand 1531LA into visual field 15A as shown in FIG. 106(A) according to the movement of user 5A's left hand. Processor 210A, for example, displays view image 10617A corresponding to second virtual space 2711A shown in FIG. 106(A) on monitor 130A as shown in FIG. 106(B). User 5A confirms the upper limit billing amount and total billing amount displayed in tag object 2733A by visually recognizing view image 10617A. In the example of FIG. 106B, the user recognizes that the maximum billing amount is 30000 yen and the current total billing amount is 2000 yen. In other words, the user 5A understands that the venue fee (1000 yen) and the performance fee (1000 yen) have been charged as a result of the avatar object 6A (first avatar) entering the second virtual space 2711A.
ステップS10503において、プロセッサ210Aは、アバターオブジェクト6B(第2アバター)のアバター情報をサーバ600からリアルタイムに受信する。ステップS10504において、プロセッサ210Aは、最初に受信したアバターオブジェクト6Bのアバター情報に基づいて、アバターオブジェクト6Bを第2仮想空間2711Aに配置する。詳細には、プロセッサ210Aは、アバターオブジェクト6Bをステージオブジェクト1532上に配置する。
At step S10503, processor 210A receives avatar information of avatar object 6B (second avatar) from server 600 in real time. In step S10504, processor 210A arranges avatar object 6B in second virtual space 2711A based on the avatar information of avatar object 6B received first. Specifically, processor 210A places avatar object 6B on stage object 1532 .
実施形態1にて図31を参照して説明したように、ライブの開始後、ユーザ5B(第2ユーザ)は自身の身体を動かす。プロセッサ210Bは、ユーザ5Bの動きに応じて、第2仮想空間2711Bにおいてアバターオブジェクト6Bに第1パフォーマンスを実行させる。プロセッサ210Bは、アバターオブジェクト6Bが第1パフォーマンスを実行した際のアバターオブジェクト6Bの動き情報を含むアバター情報を、サーバ600にリアルタイムに送信する。
As described with reference to FIG. 31 in the first embodiment, after the live performance starts, the user 5B (second user) moves his or her body. The processor 210B causes the avatar object 6B to perform the first performance in the second virtual space 2711B according to the movement of the user 5B. Processor 210B transmits avatar information including movement information of avatar object 6B when avatar object 6B performs the first performance to server 600 in real time.
ステップS10505において、プロセッサ210Aは、アバターオブジェクト6Bのアバター情報をサーバ600からリアルタイムに受信する。ステップS10506において、プロセッサ210Aは、受信したアバター情報に含まれる動き情報に基づいて、アバターオブジェクト6Bに第1パフォーマンスを実行させる。
At step S10505, the processor 210A receives the avatar information of the avatar object 6B from the server 600 in real time. At step S10506, the processor 210A causes the avatar object 6B to perform the first performance based on the motion information included in the received avatar information.
以上のように、プロセッサ210Aは、ユーザ5Aの会場選択に応じて、アバターオブジェクト6Aが第2仮想空間2711Aに入場したとき、会場料金を表す課金情報と、パフォーマンス料金を表す課金情報とをタグオブジェクト2733Aに登録する。このように、HMDシステム100は、アバターオブジェクト6Bのパフォーマンスと、該パフォーマンスを実行する会場とが考慮された、より適切な課金額を、ユーザ5Aに課金することができる。
As described above, when the avatar object 6A enters the second virtual space 2711A in accordance with the user 5A's selection of the venue, the processor 210A stores the billing information representing the venue fee and the performance fee as a tag object. 2733A. In this way, the HMD system 100 can charge the user 5A a more appropriate billing amount in consideration of the performance of the avatar object 6B and the venue where the performance is performed.
[会場料金の設定]
図107は、ある実施の形態に従う第1仮想空間2411Aおよび視界画像10717Aを示す図である。プロセッサ210Aは、UIパネル10750およびペンオブジェクト2453を生成し、第1仮想空間2411Aに配置する。図107に示す第1仮想空間2411Aは、図103に示す第1仮想空間2411Aとは異なるタイミング(例えば、別の日)に生成された第1仮想空間であるとする。つまり、図107は、図103の例とは別の日において、ユーザ5Aがライブを視聴するために会場の選択を行なっている例を示す図である。
[Venue fee setting]
FIG. 107 is a diagram showing first virtual space 2411A and view image 10717A according to one embodiment. Processor 210A generates UI panel 10750 and pen object 2453 and places them in first virtual space 2411A. Assume that the first virtual space 2411A shown in FIG. 107 is a first virtual space generated at a different timing (for example, on a different day) than the first virtual space 2411A shown in FIG. In other words, FIG. 107 is a diagram showing an example in which user 5A selects a venue for viewing a live performance on a day different from the example in FIG.
図107に示す例において、第1会場は、図103に示す第1会場と異なる。一方、第1会場で行われるパフォーマンス、および、該パフォーマンスを行うアバターオブジェクト6は、図103の例と同じであるとする。なお、第2会場、該第2会場で行われるパフォーマンス、および、該パフォーマンスを行うアバターオブジェクト6は、図103の例と同じであるとする。このため、UIパネル10750は、選択肢10751に含まれる会場料金(500円)が選択肢10351に含まれる会場料金(1000円)と異なる。
UIパネル10750は、この点を除き、図103に示すUIパネル10350と同様である。
In the example shown in FIG. 107, the first venue is different from the first venue shown in FIG. On the other hand, it is assumed that the performance performed at the first venue and the avatar object 6 performing the performance are the same as in the example of FIG. It is assumed that the second venue, the performance performed at the second venue, and the avatar object 6 performing the performance are the same as in the example of FIG. Therefore, on UI panel 10750 , the venue fee (500 yen) included in option 10751 is different from the venue fee (1000 yen) included in option 10351 .
UI panel 10750 is similar to UI panel 10350 shown in FIG. 103 except for this point.
図108は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像10817Aを示す図である。図108は、図107に示す第1仮想空間2411Aにおいて、ユーザ5Aが第1会場を選択し、第1会場、すなわち第2仮想空間2711Aに入場した後の状態を示す図である。
FIG. 108 is a diagram showing second virtual space 2711A and view image 10817A according to an embodiment. FIG. 108 is a diagram showing a state after the user 5A selects the first hall in the first virtual space 2411A shown in FIG. 107 and enters the first hall, that is, the second virtual space 2711A.
図108(A)に示す第2仮想空間2711Aは、図106(A)に示す第2仮想空間2711Aより狭い。換言すれば、図108(A)に示す第2仮想空間2711Aは、図106(A)に示す第2仮想空間2711Aに比べて収容人数が少ない。また、図108(A)に示す第2仮想空間2711Aに配置されたステージオブジェクト10832は、図106(A)に示す第2仮想空間2711Aに配置されたステージオブジェクト1532より狭い。換言すれば、図108(A)に示す第2仮想空間2711Aは、図106(A)に示す第2仮想空間2711Aに比べて設備が充実していない。
The second virtual space 2711A shown in FIG. 108(A) is narrower than the second virtual space 2711A shown in FIG. 106(A). In other words, the second virtual space 2711A shown in FIG. 108A has a smaller capacity than the second virtual space 2711A shown in FIG. 106A. Also, the stage object 10832 placed in the second virtual space 2711A shown in FIG. 108A is narrower than the stage object 1532 placed in the second virtual space 2711A shown in FIG. 106A. In other words, the second virtual space 2711A shown in FIG. 108A is less equipped than the second virtual space 2711A shown in FIG. 106A.
このため、図108(A)に示す第2仮想空間2711Aに入場するために課金される会場料金(500円)は、図106(A)に示す第2仮想空間2711Aに入場するために課金される会場料金(1000円)より安くなっている。このように、ある局面において、会場料金は、会場、すなわち第2仮想空間2711Aの属性に基づいて設定される。第2仮想空間2711Aの属性の一例としては、収容人数、設備の充実度合い、音質などが挙げられる。
Therefore, the venue fee (500 yen) charged for entering the second virtual space 2711A shown in FIG. 108A is charged for entering the second virtual space 2711A shown in FIG. 106A. It is cheaper than the venue fee (1000 yen). Thus, in one aspect, the venue fee is set based on the attributes of the venue, that is, the second virtual space 2711A. Examples of the attributes of the second virtual space 2711A include the number of people that can be accommodated, the level of equipment availability, and the sound quality.
プロセッサ210Aは、例えば、図108(A)に示す第2仮想空間2711Aに対応する視界画像10817Aを、図108(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像10817Aを視認することによって、第2仮想空間2711Aにアバターオブジェクト6Aが入場した結果、1500円が課金されたことを認識する。具体的には、ユーザ5Aは、会場料金として500円、パフォーマンス料金として1000円が課金されたことを認識する。
Processor 210A, for example, displays view image 10817A corresponding to second virtual space 2711A shown in FIG. 108(A) on monitor 130A as shown in FIG. 108(B). The user 5A recognizes that 1500 yen has been charged as a result of the avatar object 6A entering the second virtual space 2711A by visually recognizing the view image 10817A. Specifically, the user 5A recognizes that the venue fee of 500 yen and the performance fee of 1000 yen have been charged.
図109は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像10917Aを示す図である。図109は、アバターオブジェクト6Bが第2仮想空間2711Aに配置された後の状態を示す図である。なお、アバターオブジェクト6Bが第2仮想空間2711Aに配置された後、すなわちライブの開始後に、視聴者側のアバターオブジェクト6が第2仮想空間2711Aに入場することはできないものとする。
FIG. 109 is a diagram showing second virtual space 2711A and view image 10917A according to an embodiment. FIG. 109 is a diagram showing the state after the avatar object 6B has been placed in the second virtual space 2711A. Note that the avatar object 6 on the viewer side cannot enter the second virtual space 2711A after the avatar object 6B has been placed in the second virtual space 2711A, that is, after the live performance has started.
プロセッサ210Aは、第2仮想空間2711Aに配置された、アバターオブジェクト6A以外の視聴者側のアバターオブジェクト6(第3アバター、以下、「他のアバターオブジェクト6」)の数に基づいて、ユーザ5Aに課金する会場料金を設定してもよい。この例の場合、会場料金は、第1仮想空間2411Aにおける会場の選択の時点では確定していない。このため、第1仮想空間2411Aに配置されるUIパネルの選択肢は、会場料金の金額を含まない選択肢であってもよい。換言すれば、この例におけるUIパネルは、図24に示すUIパネル2450であってもよい。
The processor 210A sends the user 5A a A venue fee to be charged may be set. In this example, the venue fee is not fixed at the time of venue selection in the first virtual space 2411A. Therefore, the options of the UI panel arranged in the first virtual space 2411A may be options that do not include the venue fee amount. In other words, the UI panel in this example may be UI panel 2450 shown in FIG.
プロセッサ210Aは、アバターオブジェクト6Bが第2仮想空間2711Aに配置されると、他のアバターオブジェクト6の数を算出する。そして、プロセッサ210Aは、算出した数に応じて、アバターオブジェクト6Aに課金する会場料金を決定し、該会場料金を表す課金情報をタグオブジェクト2733Aに登録する。なお、プロセッサ210Aは、一例として、このタイミングで、パフォーマンス料金を表す課金情報もタグオブジェクト2733Aに登録してもよい。あるいは、プロセッサ210Aは、アバターオブジェクト6Aが第2仮想空間2711Aに入場したときに、パフォーマンス料金を表す課金情報をタグオブジェクト2733Aに登録してもよい。
Processor 210A calculates the number of other avatar objects 6 when avatar object 6B is placed in second virtual space 2711A. Processor 210A then determines the venue fee to be charged to avatar object 6A according to the calculated number, and registers charging information representing the venue fee in tag object 2733A. As an example, processor 210A may also register charging information representing the performance fee in tag object 2733A at this timing. Alternatively, processor 210A may register billing information representing the performance fee in tag object 2733A when avatar object 6A enters second virtual space 2711A.
図109(A)に示すように、第2仮想空間2711Aには、他のアバターオブジェクト6が3体配置されている。プロセッサ210Aは、この例において、会場料金を1000円に決定し、該会場料金を表す課金情報と、パフォーマンス料金(1000円)を表す課金情報をタグオブジェクト2733Aに登録する。
As shown in FIG. 109A, three other avatar objects 6 are arranged in the second virtual space 2711A. In this example, processor 210A determines the venue fee to be 1000 yen, and registers billing information representing the venue fee and billing information representing the performance fee (1000 yen) in tag object 2733A.
プロセッサ210Aは、例えば、図109(A)に示す第2仮想空間2711Aに対応する視界画像10917Aを、図109(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像10917Aを視認することによって、第2仮想空間2711Aにアバターオブジェクト6Aが入場した結果、会場料金とパフォーマンス料金の合計金額として2000円が課金されたことを認識する。
Processor 210A, for example, displays view image 10917A corresponding to second virtual space 2711A shown in FIG. 109(A) on monitor 130A as shown in FIG. 109(B). User 5A recognizes that 2000 yen has been charged as the total amount of venue fee and performance fee as a result of avatar object 6A entering second virtual space 2711A by visually recognizing view image 10917A.
図110は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像11017Aを示す図である。図110は、図109と同様の状態を示す図である。この例においても、アバターオブジェクト6Bが第2仮想空間2711Aに配置された後、すなわちライブの開始後に、視聴者側のアバターオブジェクト6が第2仮想空間2711Aに入場することはできないものとする。また、この例におけるアバターオブジェクト6Bのパフォーマンスは、図109の例と同一であるものとする。つまり、図110の例におけるパフォーマンス料金は、図109の例と同様に1000円であるとする。
FIG. 110 is a diagram showing second virtual space 2711A and view image 11017A according to an embodiment. FIG. 110 is a diagram showing a state similar to FIG. Also in this example, after the avatar object 6B is placed in the second virtual space 2711A, that is, after the live is started, the avatar object 6 on the viewer side cannot enter the second virtual space 2711A. Also, the performance of the avatar object 6B in this example shall be the same as in the example of FIG. In other words, assume that the performance fee in the example of FIG. 110 is 1000 yen, as in the example of FIG.
図110の例では、図110(A)に示すように、第2仮想空間2711Aに配置された、他のアバターオブジェクト6の数が5体であり、図109の例より多い。プロセッサ210Aは、この例において、会場料金を、図109の例より高い1500円に決定し、該会場料金を表す課金情報と、パフォーマンス料金(1000円)を表す課金情報をタグオブジェクト2733Aに登録する。プロセッサ210Aは、例えば、図110(A)に示す第2仮想空間2711Aに対応する視界画像11017Aを、図110(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像11017Aを視認することによって、第2仮想空間2711Aにアバターオブジェクト6Aが入場した結果、会場料金とパフォーマンス料金の合計金額として2500円が課金されたことを認識する。
In the example of FIG. 110, as shown in FIG. 110A, the number of other avatar objects 6 placed in the second virtual space 2711A is five, which is more than the example of FIG. In this example, processor 210A determines the venue fee to be 1,500 yen, which is higher than the example in FIG. 109, and registers charging information representing the venue fee and charging information representing the performance fee (1,000 yen) in tag object 2733A. . Processor 210A, for example, displays field-of-view image 11017A corresponding to second virtual space 2711A shown in FIG. 110(A) on monitor 130A as shown in FIG. 110(B). The user 5A recognizes, by visually recognizing the view image 11017A, that the avatar object 6A has entered the second virtual space 2711A and that 2500 yen has been charged as the total amount of the venue fee and the performance fee.
このように、プロセッサ210Aは、視聴者側のアバターオブジェクト6の数が多い、すなわち、人気のあるライブである場合、会場料金をより高く設定し、会場料金を適正なものとすることができる。
In this way, the processor 210A can set the venue fee higher and make the venue fee appropriate when the number of viewer-side avatar objects 6 is large, that is, when the live performance is popular.
プロセッサ210Aは、他のアバターオブジェクト6の数に代えて、他のアバターオブジェクト6が関連付けられるユーザ5(第3ユーザ、以下、「他のユーザ5」)の属性に基づいて、会場料金を設定してもよい。あるいは、プロセッサ210Aは、他のアバターオブジェクト6の数、および、他のユーザ5の属性に基づいて、会場料金を設定してもよい。該属性の一例としては、有名度、性別、職業、年収などが挙げられる。これらの情報は、例えば、仮想空間でのライブを視聴するサービスへ登録するときに入力されればよい。プロセッサ210Aは、例えば、有名人に関連付けられたアバターオブジェクト6が、視聴者側のアバターオブジェクト6として第2仮想空間2711Aに配置されている場合、会場料金をより高く設定してもよい。また例えば、プロセッサ210Aは、ユーザ5Aが男性である場合において、女性であるユーザ5に関連付けられた、他のアバターオブジェクト6の割合が所定の値以上である場合、会場料金をより高く設定してもよい。
Instead of the number of other avatar objects 6, the processor 210A sets the venue fee based on the attributes of the users 5 (third users, hereinafter referred to as "other users 5") with whom the other avatar objects 6 are associated. may Alternatively, processor 210A may set venue fees based on the number of other avatar objects 6 and attributes of other users 5 . Examples of such attributes include popularity, gender, occupation, and annual income. These pieces of information may be input, for example, when registering for a service for viewing live performances in virtual space. For example, the processor 210A may set the venue fee higher when the avatar object 6 associated with the celebrity is placed in the second virtual space 2711A as the avatar object 6 on the viewer's side. Also, for example, if the user 5A is male and the ratio of other avatar objects 6 associated with the female user 5 is greater than or equal to a predetermined value, the processor 210A sets the venue fee higher. good too.
また、プロセッサ210Aは、アバターオブジェクト6Aを第2仮想空間2711Aに入場させた時点で、既に第2仮想空間2711Aに配置されている他のアバターオブジェクト6に基づいて、会場料金を設定してもよい。詳細には、プロセッサ210Aは、該他のアバターオブジェクト6の数、および、該他のアバターオブジェクト6に関連付けられるユーザ5の属性の少なくとも一方に基づいて、会場料金を設定してもよい。この例の場合、プロセッサ210Aは、アバターオブジェクト6Aが第2仮想空間2711Aに入場したときに、会場料金を表す課金情報をタグオブジェクト2733Aに登録してもよい。
Further, the processor 210A may set the venue fee based on other avatar objects 6 already placed in the second virtual space 2711A at the time when the avatar object 6A enters the second virtual space 2711A. . Specifically, the processor 210A may set the venue fee based on the number of the other avatar objects 6 and/or attributes of the user 5 associated with the other avatar objects 6 . In this example, the processor 210A may register billing information representing the venue fee in the tag object 2733A when the avatar object 6A enters the second virtual space 2711A.
プロセッサ210Aは、ユーザ5Aが好む他のユーザ5の属性と、第2仮想空間2711Aに配置された他のユーザ5の属性との一致率に応じて、会場料金を設定してもよい。ユーザ5Aが好む他のユーザ5の属性は、ユーザ5Aが予め入力しておいてもよいし、プロセッサ210Aが、過去にユーザ5Aが視聴したライブにおける他のユーザ5の属性に基づいて決定してもよい。
The processor 210A may set the venue fee according to the matching rate between the attributes of the other users 5 preferred by the user 5A and the attributes of the other users 5 placed in the second virtual space 2711A. The attributes of other users 5 preferred by user 5A may be input in advance by user 5A, or determined by processor 210A based on the attributes of other users 5 in live performances that user 5A has viewed in the past. good too.
[会場選択の変形例]
会場料金およびパフォーマンス料金は、ライブを視聴した時間に応じて設定されてもよい。この例の場合、プロセッサ210Aは、ユーザ5Aがライブの視聴を終了した時点で、会場料金およびパフォーマンス料金の決済に関する処理を行えばよい。
[Variation of venue selection]
The venue fee and performance fee may be set according to the time of viewing the live performance. In this example, the processor 210A may perform processing related to payment of the venue fee and the performance fee when the user 5A finishes viewing the live performance.
会場料金は、さらに、第2仮想空間2711Aにおいて、アバターオブジェクト6Aが配置された位置に応じて設定されてもよい。一例として、プロセッサ210Aは、アバターオブジェクト6Bにより近い位置にアバターオブジェクト6Aを配置した場合、会場料金をより高く設定してもよい。また、プロセッサ210Aは、第2仮想空間2711Aにおけるアバターオブジェクト6Aの位置と、該位置にアバターオブジェクト6Aが存在した時間とに応じて、会場料金を設定してもよい。つまり、プロセッサ210Aは、アバターオブジェクト6Aが位置を移動する前後において、単位時間当たりの課金額を変更してもよい。
The venue fee may further be set according to the position where the avatar object 6A is arranged in the second virtual space 2711A. As an example, the processor 210A may set the venue fee higher if the avatar object 6A is positioned closer to the avatar object 6B. The processor 210A may also set the venue fee according to the position of the avatar object 6A in the second virtual space 2711A and the time the avatar object 6A existed at that position. In other words, the processor 210A may change the billing amount per unit time before and after the avatar object 6A moves its position.
プロセッサ210Aは、第1仮想空間2411Aにおいて、すなわち、ユーザ5Aに会場を選択させるときに、各会場の最も良い席からのプレビューをユーザ5Aに体験させてもよい。最も良い席とは、例えば、最前列の席であってもよい。
The processor 210A may allow the user 5A to experience a preview from the best seat of each venue in the first virtual space 2411A, ie, when having the user 5A select the venue. The best seat may be, for example, the front row seat.
[アバターオブジェクト6のシャッフル]
プロセッサ210Aは、一例として、ユーザ5Aの入力に応じて、課金に関する処理が実行された場合、アバターオブジェクト6Aおよび他のアバターオブジェクト6からなるアバター群から選択された複数のアバターオブジェクト6それぞれを、第2仮想空間2711Aの異なる位置に移動させる。ある局面において、プロセッサ210Aは、第2仮想空間2711Aにおいて、アバター群から選択された複数のアバターオブジェクト6の位置を入れ替える。以下、この入れ替えを「アバターシャッフル」と称する。
[Shuffle avatar object 6]
As an example, processor 210A selects each of a plurality of avatar objects 6 selected from an avatar group consisting of avatar object 6A and other avatar objects 6 in response to an input from user 5A, when processing relating to billing is executed. 2 to different positions in the virtual space 2711A. In one aspect, processor 210A swaps the positions of multiple avatar objects 6 selected from a group of avatars in second virtual space 2711A. Hereinafter, this replacement will be referred to as "avatar shuffle".
図111は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像11017Aを示す図である。プロセッサ210Aは、アバターシャッフルをユーザ5Aに案内するメッセージを、ライブ中にユーザ5Aに通知する。プロセッサ210Aは、例えば、タグオブジェクト2733Aにメッセージを表示する。メッセージは、アバターシャッフルを案内するテキストと、ユーザ5Aがアバターシャッフルを行うために必要な課金額とを含む。
FIG. 111 is a diagram showing second virtual space 2711A and view image 11017A according to an embodiment. The processor 210A notifies the user 5A of a message during the live to guide the user 5A to avatar shuffle. Processor 210A, for example, displays the message in tag object 2733A. The message includes a text guiding avatar shuffle and the billing amount required for user 5A to perform avatar shuffle.
メッセージがタグオブジェクト2733Aに表示された後、プロセッサ210Aは、ユーザ5Aの左手の動きに応じて、図111(A)に示すように、仮想左手1531LAを視界領域15A内に移動させる。プロセッサ210Aは、例えば、図111(A)に示す第2仮想空間2711Aに対応する視界画像11117Aを、図111(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像11117Aを視認することによって、タグオブジェクト2733Aに表示されるメッセージを確認する。これにより、ユーザ5Aは、新たに1000円の課金額を支払えば、アバターシャッフルを行なえることを認識する。
After the message is displayed on tag object 2733A, processor 210A moves virtual left hand 1531LA into viewing area 15A as shown in FIG. 111(A) in response to the movement of user's 5A left hand. Processor 210A, for example, displays view image 11117A corresponding to second virtual space 2711A shown in FIG. 111(A) on monitor 130A as shown in FIG. 111(B). User 5A confirms the message displayed on tag object 2733A by viewing view image 11117A. Thereby, the user 5A recognizes that the avatar shuffle can be performed by paying a new billing amount of 1000 yen.
ユーザ5Aは、タグオブジェクト2733Aに表示されたメッセージを確認した後、アバターシャッフルを行うための操作を行う。該操作は、実施形態1にて図34を参照して説明しているため、ここでは繰り返さない。プロセッサ210Aは、アバターシャッフルを案内するメッセージが表示されるタグオブジェクト2733Aが選択されたことに応じて、アバターシャッフルを行うためのユーザ5Aの操作を検出する。該操作を検出すると、プロセッサ210Aは、アバターシャッフルに対応する課金情報を、タグオブジェクト2733Aに登録し、アバターシャッフルを実行する。図111の例では、プロセッサ210Aは、アバターオブジェクト6Aが、仮想右手1531RAでタグオブジェクト2733Aを選択した場合、アバターシャッフルに必要な課金額(1000円)を表す課金情報を、タグオブジェクト2733Aに新たに登録する(第3課金に関する処理を実行する)。なお、登録された課金情報が表す課金額の決済は、実施形態1で説明した方法で行えばよい。
After confirming the message displayed on tag object 2733A, user 5A performs an operation for avatar shuffle. Since this operation has been described with reference to FIG. 34 in Embodiment 1, it will not be repeated here. Processor 210A detects user 5A's operation for performing avatar shuffle in response to selection of tag object 2733A displaying a message guiding avatar shuffle. Upon detecting the operation, processor 210A registers billing information corresponding to avatar shuffle in tag object 2733A and executes avatar shuffle. In the example of FIG. 111, when avatar object 6A selects tag object 2733A with virtual right hand 1531RA, processor 210A newly adds billing information representing the billing amount (1000 yen) required for avatar shuffle to tag object 2733A. Register (perform processing related to third billing). It should be noted that the settlement of the billing amount represented by the registered billing information may be performed by the method described in the first embodiment.
図112は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像11217Aを示す図である。プロセッサ210Aは、一例として、図112(A)に示すように、第2仮想空間2711Aに配置されている6体のアバターオブジェクト6の位置をランダムに入れ替える。アバターシャッフルが実行されたことにより、アバターオブジェクト6Aは、図111の例において最前列にいたアバターオブジェクト6の位置へ移動している。また、図111の例において、アバターオブジェクト6Aに最も近い位置にいたアバターオブジェクト6はアバターオブジェクト6Cである。一方、アバターシャッフルが実行されたことにより、アバターオブジェクト6Aに最も近い位置にいるアバターオブジェクト6は、図112(A)に示すようにアバターオブジェクト6Dとなっている。
FIG. 112 is a diagram showing second virtual space 2711A and view image 11217A according to one embodiment. As an example, the processor 210A randomly changes the positions of the six avatar objects 6 placed in the second virtual space 2711A, as shown in FIG. 112(A). Due to the avatar shuffle being executed, the avatar object 6A has moved to the position of the avatar object 6 in the front row in the example of FIG. Also, in the example of FIG. 111, the avatar object 6 closest to the avatar object 6A is the avatar object 6C. On the other hand, the avatar object 6 closest to the avatar object 6A has become the avatar object 6D as shown in FIG. 112(A) because the avatar shuffle has been executed.
プロセッサ210Aは、例えば、図112(A)に示す第2仮想空間2711Aに対応する視界画像11217Aを、図112(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像11217Aを視認することにより、アバターシャッフルによってアバターオブジェクト6Aが移動したことを認識する。
Processor 210A, for example, displays view image 11217A corresponding to second virtual space 2711A shown in FIG. 112(A) on monitor 130A as shown in FIG. 112(B). The user 5A recognizes that the avatar object 6A has moved by avatar shuffle by viewing the view image 11217A.
プロセッサ210Aは、アバターシャッフルを実行した場合、アバターシャッフル実行後の各アバターオブジェクト6の位置を示す情報を含むアバター情報を、サーバ600へ送信する。サーバ600は、同期処理により、受信したアバター情報を、各コンピュータ200へ送信する。これにより、ユーザ5B、5C、5Dなどの各ユーザ5に提供された仮想空間11においても、アバターシャッフルが実行される。
When processor 210A executes avatar shuffle, processor 210A transmits avatar information including information indicating the position of each avatar object 6 after execution of avatar shuffle to server 600 . The server 600 transmits the received avatar information to each computer 200 by synchronous processing. As a result, the avatar shuffle is performed also in the virtual space 11 provided to each user 5 such as the users 5B, 5C, and 5D.
図113は、ある実施の形態に従う第2仮想空間2711Aおよび視界画像11317Aを示す図である。課金情報が登録された後、プロセッサ210Aは、タグオブジェクト2733A上で課金情報を再び視覚化する。この処理の詳細については、実施形態1にて図35を参照して説明しているため、ここでは繰り返さない。プロセッサ210Aは、例えば、図113(A)に示す第2仮想空間2711Aに対応する視界画像11317Aを、図113(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像11317Aを視認することにより、アバターシャッフルを行うことによって現時点での合計課金額が2500円に増加したことを認識する。
FIG. 113 is a diagram showing second virtual space 2711A and view image 11317A according to one embodiment. After the billing information is registered, processor 210A re-visualizes the billing information on tag object 2733A. Details of this process have been described with reference to FIG. 35 in the first embodiment, and therefore will not be repeated here. Processor 210A, for example, displays view image 11317A corresponding to second virtual space 2711A shown in FIG. 113(A) on monitor 130A as shown in FIG. 113(B). User 5A recognizes that the current total billing amount has increased to 2500 yen by performing avatar shuffle by visually recognizing view image 11317A.
以上のように、プロセッサ210Aは、課金情報の登録に応じて、アバターシャッフルを実行する。これにより、アバターオブジェクト6Aに最も近い位置にいる他のアバターオブジェクト6が変更される。結果として、ユーザ5は、ライブ中にアバターシャッフルを実行することにより、多様な他のユーザ5とのコミュニケーションを実現することができる。
As described above, processor 210A performs avatar shuffling in accordance with registration of billing information. As a result, the other avatar object 6 closest to the avatar object 6A is changed. As a result, the user 5 can achieve communication with various other users 5 by executing avatar shuffle during the live.
[アバターシャッフルの変形例]
図114は、ある実施の形態に従う第2仮想空間4411Aおよび視界画像11417Aを示す図である。プロセッサ210Aは、第2仮想空間2711Aと同様に、アバターオブジェクト6A~6D、およびステージオブジェクト1532を第2仮想空間4411Aに配置する。第2仮想空間4411Aは、第1領域4451を含んでいる。第1領域4451は、第2仮想空間4411Aの一部分に相当する。プロセッサ210Aは、第1領域4451の外縁における一カ所に、ゲートオブジェクト4452を配置する。
[Modified example of avatar shuffle]
FIG. 114 is a diagram showing second virtual space 4411A and view image 11417A according to an embodiment. Processor 210A arranges avatar objects 6A-6D and stage object 1532 in second virtual space 4411A in the same manner as second virtual space 2711A. A second virtual space 4411A includes a first area 4451 . The first area 4451 corresponds to part of the second virtual space 4411A. The processor 210A arranges the gate object 4452 at one place on the outer edge of the first area 4451 .
図114では、アバターオブジェクト6A~6Cおよびステージオブジェクト1532は第1領域4451内に配置されている。アバターオブジェクト6Dは、第1領域4451外に配置されている。第1領域4451は、図示しない不透明の壁オブジェクトによって囲まれている。第1領域4451では、アバターオブジェクト6Bのライブが開催されている。第1領域4451内にいるアバターオブジェクト6は、アバターオブジェクト6Bによるパフォーマンスを視聴することができる。第1領域4451外にいるアバターオブジェクト6は、アバターオブジェクト6Bによるパフォーマンスを視聴することができない。つまり、図114の例の場合、アバターオブジェクト6Aおよび6Cは、アバターオブジェクト6Bによるパフォーマンスを視聴することができる。アバターオブジェクト6Dは、アバターオブジェクト6Bによるパフォーマンスを視聴することができない。
In FIG. 114, the avatar objects 6A-6C and the stage object 1532 are arranged within the first area 4451. In FIG. Avatar object 6D is placed outside first area 4451 . The first area 4451 is surrounded by non-illustrated opaque wall objects. A live performance of the avatar object 6B is being held in the first area 4451 . The avatar object 6 in the first area 4451 can watch the performance by the avatar object 6B. The avatar object 6 outside the first area 4451 cannot view the performance by the avatar object 6B. That is, in the case of the example of FIG. 114, avatar objects 6A and 6C can view the performance by avatar object 6B. Avatar object 6D cannot view the performance by avatar object 6B.
プロセッサ210Aは、例えば、図114(A)に示す第2仮想空間4411Aに対応する視界画像11417Aを、図114(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像11417Aを視認することにより、アバターオブジェクト6Cが第1領域4451内にいることを認識する。
Processor 210A, for example, displays field-of-view image 11417A corresponding to second virtual space 4411A shown in FIG. 114(A) on monitor 130A as shown in FIG. 114(B). User 5A recognizes that avatar object 6C is in first area 4451 by visually recognizing view image 11417A.
図115は、ある実施の形態に従う第2仮想空間4411Aおよび視界画像11517Aを示す図である。プロセッサ210Aは、一例として、ユーザ5Aの入力に応じて、課金に関する処理が実行された場合、アバターシャッフルを実行し、第1領域4451内に配置された他のアバターオブジェクト6を第1領域4451外に移動させるとともに、第1領域4451外に配置された他のアバターオブジェクト6を第1領域4451内に移動させてもよい。プロセッサ210Aは、例えば、アバターシャッフルを実行することにより、アバターオブジェクト6Cの位置とアバターオブジェクト6Dの位置とを入れ替える。これにより、図115(A)に示すように、アバターオブジェクト6Cが第1領域4451外へ移動し、アバターオブジェクト6Dが第1領域内へ移動する。
FIG. 115 is a diagram showing second virtual space 4411A and view image 11517A according to an embodiment. As an example, processor 210A executes avatar shuffle when processing related to billing is executed in response to user 5A's input, and moves other avatar objects 6 arranged in first area 4451 to outside first area 4451. , and another avatar object 6 placed outside the first area 4451 may be moved into the first area 4451 . Processor 210A swaps the position of avatar object 6C and the position of avatar object 6D, for example, by performing an avatar shuffle. As a result, as shown in FIG. 115A, the avatar object 6C moves out of the first area 4451 and the avatar object 6D moves into the first area.
プロセッサ210Aは、例えば、図115(A)に示す第2仮想空間4411Aに対応する視界画像11517Aを、図115(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像11517Aを視認することにより、アバターシャッフルによって、アバターオブジェクト6Dが、アバターオブジェクト6Cがいた位置に移動したことを認識する。そして、ユーザ5Aは、新たな他のユーザ5(ユーザ5D)とのコミュニケーションを実現することができる。
Processor 210A, for example, displays view image 11517A corresponding to second virtual space 4411A shown in FIG. 115(A) on monitor 130A as shown in FIG. 115(B). The user 5A recognizes that the avatar shuffle has moved the avatar object 6D to the position where the avatar object 6C was, by visually recognizing the view image 11517A. Then, the user 5A can realize communication with another new user 5 (user 5D).
なお、本変形例の場合、アバターシャッフルにより第1領域4451内から第1領域4451外へアバターオブジェクト6が移動する可能性があることを、ライブの開始前にユーザ5に通知しておくことが好ましい。また、プロセッサ210Aは、第1領域4451外にスクリーンオブジェクト4340(図43参照)を配置してもよい。すなわち、第1領域4451外は、第1領域4451内で行われているライブのパブリックビューイング会場であってもよい。
Note that, in the case of this modification, it is possible to notify the user 5 that the avatar object 6 may move from within the first area 4451 to outside the first area 4451 due to the avatar shuffle before starting the live. preferable. The processor 210A may also arrange the screen object 4340 (see FIG. 43) outside the first area 4451. FIG. In other words, the area outside the first area 4451 may be a public viewing venue for a live performance being held inside the first area 4451 .
また、プロセッサ210Aは、ユーザ5Bによる第1操作を検出した場合に、アバターシャッフルを可能としてもよい。詳細には、プロセッサ210Aは、コンピュータ200Bから、アバターシャッフルを許可する旨の通知を受信した場合、アバターシャッフルをユーザ5Aに案内するメッセージを、タグオブジェクト2733Aに表示する。このとき、プロセッサ210Aは、視界画像17Aに、アバターシャッフルが可能となったことを示す通知画像を含めてもよい。これにより、ユーザ5Aは、視界画像17Aを視認することによって、アバターシャッフルが可能となったことを認識することができる。
Also, the processor 210A may enable avatar shuffle when detecting the first operation by the user 5B. Specifically, when processor 210A receives a notification to the effect that avatar shuffle is permitted from computer 200B, processor 210A displays a message guiding user 5A to avatar shuffle on tag object 2733A. At this time, processor 210A may include, in view image 17A, a notification image indicating that avatar shuffle is now possible. Thereby, the user 5A can recognize that the avatar shuffle is enabled by visually recognizing the view image 17A.
また、プロセッサ210Aは、一例として、ユーザ5Aの入力に応じて、課金に関する処理が実行された場合、1体の他のアバターオブジェクト6を、アバターオブジェクト6Aに最も近い位置へ移動させてもよい。
Also, as an example, the processor 210A may move one other avatar object 6 to a position closest to the avatar object 6A when processing related to billing is executed according to an input from the user 5A.
ユーザ5Aによるアバターシャッフルに、ユーザ5Aに対する課金が不要であってもよい。
Avatar shuffling by user 5A may not require charging for user 5A.
プロセッサ210Aは、ユーザ5Aの入力に応じて、他のユーザ5が実行するアバターシャッフルの対象からアバターオブジェクト6Aを除外するための課金に関する処理を実行してもよい。
The processor 210A may execute a billing-related process for excluding the avatar object 6A from avatar shuffle targets executed by other users 5 in response to an input from the user 5A.
以上、本開示の実施形態について説明したが、本発明の技術的範囲は、本実施形態の説明によって限定的に解釈されるべきではない。本実施形態は一例であって、特許請求の範囲に記載された発明の範囲内において、様々な実施形態の変更が可能であることが当業者によって理解されるところである。本発明の技術的範囲は、特許請求の範囲に記載された発明の範囲およびその均等の範囲に基づいて定められるべきである。
Although the embodiments of the present disclosure have been described above, the technical scope of the present invention should not be construed to be limited by the description of the embodiments. It should be understood by those skilled in the art that this embodiment is merely an example, and that various modifications of the embodiment are possible within the scope of the invention described in the claims. The technical scope of the present invention should be determined based on the scope of the invention described in the claims and their equivalents.
〔付記事項〕
本発明の一側面に係る内容を列記すると以下の通りである。
[Additional notes]
The contents of one aspect of the present invention are listed below.
(項目1) プログラムを説明した。本開示のある局面によると、プログラムは、第1ユーザ(ユーザ5A)に仮想体験を提供するために、プロセッサ(プロセッサ210A)を備えたコンピュータ(コンピュータ200A)によって実行される。プログラムは、プロセッサに、仮想体験を第1ユーザに提供するための、第1領域を含む仮想空間(第2仮想空間2711A、4411A)を定義するステップ(S2601)と、第1ユーザに関連付けられる第1アバター(アバターオブジェクト6A)を第1領域に入場させるステップ(S2606)と、第2ユーザ(ユーザ5B)に関連付けられる第2アバター(アバターオブジェクト6B)を第1領域に配置するステップ(S2612)と、第2ユーザの動きに応じて、第2アバターにパフォーマンスを実行させるステップ(S10506)と、第1領域に応じた第1課金額に対する第1課金に関する処理を実行するステップ(S10501)と、パフォーマンスに応じた第2課金額に対する第2課金に関する処理を実行するステップ(S10502)と、を実行させる。
(Item 1) Explained the program. According to one aspect of the present disclosure, a program is executed by a computer (computer 200A) equipped with a processor (processor 210A) to provide a first user (user 5A) with a virtual experience. The program instructs the processor to define a virtual space (second virtual space 2711A, 4411A) including a first area for providing a virtual experience to the first user (S2601); a step of allowing one avatar (avatar object 6A) to enter the first area (S2606), and a step of placing a second avatar (avatar object 6B) associated with a second user (user 5B) in the first area (S2612); , the step of causing the second avatar to perform a performance according to the movement of the second user (S10506); a step (S10502) of executing a process related to the second billing for the second billing amount according to .
(項目2) (項目1)において、プログラムは、プロセッサに、第1領域を含む仮想空間を、第1ユーザに選択させるステップをさらに実行させる。
(Item 2) In (Item 1), the program causes the processor to further execute a step of causing the first user to select the virtual space including the first area.
(項目3) (項目1)または(項目2)において、プログラムは、プロセッサに、第1ユーザの頭部の姿勢と仮想空間における第1アバターの位置とに応じて、仮想空間における第1アバターからの視界(視界領域15A)を制御するステップ(S2608)と、第1アバターからの視界に対応する視界画像(視界画像17A)を定義するステップ(S2609)と、第1ユーザの頭部に関連付けられた画像表示装置(モニタ130A)に前記視界画像を出力するステップ(S2609)と、をさらに実行させる。
(Item 3) In (Item 1) or (Item 2), the program instructs the processor to move from the first avatar in the virtual space according to the posture of the head of the first user and the position of the first avatar in the virtual space. (S2608) of controlling the field of view (viewing area 15A) of the first avatar, defining a viewing image (viewing image 17A) corresponding to the field of view from the first avatar (S2609), and A step (S2609) of outputting the field-of-view image to the image display device (monitor 130A) is further executed.
(項目4) (項目1)~(項目3)のいずれかにおいて、第1課金額は、第1領域の属性に基づいて設定される。
(Item 4) In any of (Item 1) to (Item 3), the first billing amount is set based on the attribute of the first area.
(項目5) (項目1)~(項目4)のいずれかにおいて、プログラムは、プロセッサに、複数の第3ユーザ(ユーザ5C、5D)それぞれに関連付けられる第3アバター(アバターオブジェクト6C、6D)を仮想空間に配置するステップ(S2605)をさらに実行させる。
(Item 5) In any one of (Item 1) to (Item 4), the program causes the processor to create third avatars (avatar objects 6C and 6D) respectively associated with a plurality of third users (users 5C and 5D). The step of arranging in the virtual space (S2605) is further executed.
(項目6) (項目5)において、プログラムは、プロセッサに、第1領域に配置されている第3アバターの数、および、該第3アバターが関連付けられる第3ユーザの属性の少なくとも一方に基づいて、第1課金額を設定するステップをさらに実行させる。
(Item 6) In (Item 5), the program causes the processor to , to further execute the step of setting the first billing amount.
(項目7) (項目5)において、プログラムは、プロセッサに、第1アバターおよび複数の第3アバターからなるアバター群から選択された複数のアバターそれぞれを、仮想空間の異なる位置に移動させるステップをさらに実行させる。
(Item 7) In (Item 5), the program further causes the processor to move each of the plurality of avatars selected from the avatar group consisting of the first avatar and the plurality of third avatars to different positions in the virtual space. let it run.
(項目8) (項目7)において、プログラムは、プロセッサに、第1ユーザの入力に応じて、第3課金に関する処理を実行するステップをさらに実行させる。移動させるステップにおいて、第3課金に関する処理が実行された場合、選択された複数のアバターそれぞれを、仮想空間の異なる位置に移動させる。
(Item 8) In (Item 7), the program further causes the processor to execute a process relating to the third billing according to the first user's input. In the moving step, each of the plurality of selected avatars is moved to a different position in the virtual space when the third billing process is executed.
(項目9) (項目7)または(項目8)において、複数の第3アバターを仮想空間に配置するステップにおいて、複数の第3アバターを第1領域内に配置し、移動させるステップにおいて、選択された複数のアバターそれぞれを、第1領域内の異なる位置に移動させる。
(Item 9) In (Item 7) or (Item 8), in the step of arranging the plurality of third avatars in the virtual space, in the step of arranging and moving the plurality of third avatars in the first region, Each of the plurality of avatars is moved to a different position within the first area.
(項目10) (項目7)または(項目8)において、選択された複数のアバターは、第1領域(4451)内に配置された第3アバターと、第1領域外に配置された第3アバターとを含んでいる。移動させるステップにおいて、第1領域内に配置された第3アバターを第1領域外へ移動させるとともに、第1領域外に配置された第3アバターを第1領域内へ移動させる。
(Item 10) In (Item 7) or (Item 8), the plurality of selected avatars are the third avatar placed within the first area (4451) and the third avatar placed outside the first area. and In the moving step, the third avatar placed inside the first area is moved outside the first area, and the third avatar placed outside the first area is moved inside the first area.
(項目11) (項目7)~(項目10)のいずれかにおいて、移動させるステップにおいて、選択された複数のアバターの位置を入れ替える。
(Item 11) In any one of (Item 7) to (Item 10), in the moving step, the positions of the plurality of selected avatars are exchanged.
(項目12) (項目7)~(項目11)のいずれかにおいて、プログラムは、プロセッサに、第2ユーザによる第1操作を検出するステップをさらに実行させる。移動させるステップにおいて、第1操作が検出された場合、選択された複数のアバターそれぞれを、仮想空間の異なる位置に移動させることが可能である。
(Item 12) In any one of (Item 7) to (Item 11), the program further causes the processor to detect the first operation by the second user. In the moving step, when the first operation is detected, each of the plurality of selected avatars can be moved to different positions in the virtual space.
(項目13) 情報処理装置を説明した。本開示のある局面によると、情報処理装置(コンピュータ200A)は、第1ユーザ(ユーザ5A)に仮想体験を提供するために、情報処理装置によって実行されるプログラムを記憶する記憶部(ストレージ230A)と、プログラムを実行することにより、情報処理装置の動作を制御する制御部(プロセッサ210A)と、を備えている。制御部は、仮想体験を第1ユーザに提供するための、第1領域を含む仮想空間(第2仮想空間2711A、4411A)を定義し、第1ユーザに関連付けられる第1アバター(アバターオブジェクト6A)を第1領域に入場させ、第2ユーザ(ユーザ5B)に関連付けられる第2アバター(アバターオブジェクト6B)を第1領域に配置し、第2ユーザの動きに応じて、第2アバターにパフォーマンスを実行させ、第1領域に応じた第1課金額に対する第1課金に関する処理を実行し、パフォーマンスに応じた第2課金額に対する第2課金に関する処理を実行する。
(Item 13) The information processing apparatus has been described. According to one aspect of the present disclosure, the information processing device (computer 200A) stores a program executed by the information processing device (storage 230A) to provide a first user (user 5A) with a virtual experience. and a control unit (processor 210A) that controls the operation of the information processing apparatus by executing a program. The control unit defines a virtual space (second virtual space 2711A, 4411A) including a first area for providing a virtual experience to a first user, and a first avatar (avatar object 6A) associated with the first user. enters a first area, a second avatar (avatar object 6B) associated with a second user (user 5B) is placed in the first area, and the second avatar performs a performance according to the movement of the second user. Then, a process related to the first charging is executed for the first charging amount according to the first area, and a process related to the second charging is executed for the second charging amount according to the performance.
(項目14) プログラムを実行する方法を説明した。本開示のある局面によると、プログラムは、第1ユーザ(ユーザ5A)に仮想体験を提供するために、プロセッサ(プロセッサ210A)を備えたコンピュータ(コンピュータ200A)によって実行される。方法は、プロセッサが、仮想体験を第1ユーザに提供するための、第1領域を含む仮想空間(第2仮想空間2711A、4411A)を定義するステップ(S2601)と、第1ユーザに関連付けられる第1アバター(アバターオブジェクト6A)を第1領域に入場させるステップ(S2606)と、第2ユーザ(ユーザ5B)に関連付けられる第2アバター(アバターオブジェクト6B)を第1領域に配置するステップ(S2612)と、第2ユーザの動きに応じて、第2アバターにパフォーマンスを実行させるステップ(S10506)と、第1領域に応じた第1課金額に対する第1課金に関する処理を実行するステップ(S10501)と、パフォーマンスに応じた第2課金額に対する第2課金に関する処理を実行するステップ(S10502)と、を含む。
(Item 14) I explained how to run the program. According to one aspect of the present disclosure, a program is executed by a computer (computer 200A) equipped with a processor (processor 210A) to provide a first user (user 5A) with a virtual experience. The method includes the steps of a processor defining (S2601) a virtual space including a first region (second virtual space 2711A, 4411A) for providing a virtual experience to a first user; a step of allowing one avatar (avatar object 6A) to enter the first area (S2606), and a step of placing a second avatar (avatar object 6B) associated with a second user (user 5B) in the first area (S2612); , the step of causing the second avatar to perform a performance according to the movement of the second user (S10506); (S10502) of executing a process related to the second billing for the second billing amount according to .
上記実施形態においては、HMDによってユーザが没入する仮想空間(VR空間)を例示して説明したが、HMDとして、透過型のHMDを採用してもよい。この場合、透過型のHMDを介してユーザが視認する現実空間に仮想空間を構成する画像の一部を合成した視界画像を出力することにより、拡張現実(AR:Augmented Reality)空間または複合現実(MR:Mixed Reality)空間における仮想体験をユーザに提供してもよい。この場合、操作オブジェクトに代えて、ユーザの手の動きに基づいて、仮想空間内における対象オブジェクトへの作用を生じさせてもよい。具体的には、プロセッサは、現実空間におけるユーザの手の位置の座標情報を特定するとともに、仮想空間内における対象オブジェクトの位置を現実空間における座標情報との関係で定義してもよい。これにより、プロセッサは、現実空間におけるユーザの手と仮想空間における対象オブジェクトとの位置関係を把握し、ユーザの手と対象オブジェクトとの間で上述したコリジョン制御等に対応する処理を実行可能となる。その結果、ユーザの手の動きに基づいて対象オブジェクトに作用を与えることが可能となる。
In the above embodiments, the virtual space (VR space) in which the user is immersed by the HMD has been exemplified and explained, but a transmissive HMD may be employed as the HMD. In this case, by outputting a visual field image obtained by synthesizing a part of an image constituting a virtual space with a real space visually recognized by a user through a transmissive HMD, an augmented reality (AR) space or mixed reality ( A user may be provided with a virtual experience in MR (Mixed Reality) space. In this case, an action may be generated on the target object in the virtual space based on the movement of the user's hand instead of the operation object. Specifically, the processor may identify the coordinate information of the position of the user's hand in the real space and define the position of the target object in the virtual space in relation to the coordinate information in the real space. As a result, the processor can grasp the positional relationship between the user's hand in the real space and the target object in the virtual space, and execute processing corresponding to the above-described collision control or the like between the user's hand and the target object. . As a result, it is possible to give an effect to the target object based on the movement of the user's hand.