WO2024166715A1 - 情報処理システムおよびプログラム - Google Patents
情報処理システムおよびプログラム Download PDFInfo
- Publication number
- WO2024166715A1 WO2024166715A1 PCT/JP2024/002463 JP2024002463W WO2024166715A1 WO 2024166715 A1 WO2024166715 A1 WO 2024166715A1 JP 2024002463 W JP2024002463 W JP 2024002463W WO 2024166715 A1 WO2024166715 A1 WO 2024166715A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- user
- virtual
- space
- virtual space
- control unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/216—Input arrangements for video game devices characterised by their sensors, purposes or types using geographical information, e.g. location of the game device or player using GPS
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/33—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/65—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/837—Shooting of targets
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
Definitions
- the present invention relates to an information processing system and a program.
- Patent Document 1 Technologies that provide users with mixed reality (MR) spaces and virtual reality (VR) spaces have been known for some time (see, for example, Patent Document 1 and Patent Document 2).
- MR mixed reality
- VR virtual reality
- the present invention was made in consideration of the above circumstances, and aims to broaden the range of uses for virtual space.
- a first control means for providing a first view, the first view being a view of a virtual space, to a first user; an input receiving means for receiving an output of a detection means for detecting a movement of a second user as an input from the second user; a position information receiving means for receiving position information indicating a current position of the second user in real space; a correspondence relationship storage means for storing information indicating a correspondence relationship between positions in the real space and the virtual space,
- An information processing system is provided in which the first control means places an avatar of the second user at a position in the virtual space corresponding to the position of the second user indicated by the position information, and reflects the movement of the second user detected by the detection means in the avatar of the second user.
- the present invention makes it possible to broaden the range of uses for virtual space.
- FIG. 1 is a diagram illustrating a schematic configuration of an information processing system.
- FIG. 1 is a diagram showing a schematic configuration of a VR system.
- FIG. 1 is a diagram showing a schematic configuration of an MR system.
- FIG. 1 is a diagram conceptually illustrating a virtual space.
- 1 is a diagram showing a YZ cross section of a field of view in a virtual space as viewed from an X direction.
- 1 is a diagram showing an XZ cross section of a field of view in a virtual space as viewed from a Y direction.
- FIG. 2 is a diagram illustrating a schematic configuration of a controller.
- FIG. 2 is a diagram illustrating a mixed reality space and a virtual space.
- FIG. 2 is a diagram illustrating a functional configuration of the information processing system.
- 1A and 1B are diagrams illustrating a real object and a virtual object corresponding to the real object.
- 13 is a flowchart illustrating an example of a process executed by the VR system.
- 13 is a flowchart illustrating an example of a process executed by the MR system.
- 13 is a flowchart showing an example of a process for reflecting the behavior of an MR user in a virtual space.
- 13 is a flowchart illustrating an example of a process for reflecting the behavior of a VR user in a mixed reality space.
- 1A and 1B are diagrams for explaining how an event in a virtual space is reflected in a real space.
- 1A and 1B are diagrams for explaining how an event in a real space is reflected in a virtual space;
- the information processing system 100 of the present embodiment includes a VR (Virtual Reality) system 200, an MR (Mixed Reality) system 400, a server 600, and an external device 700.
- the VR system 200 is configured to be able to communicate with the server 600, the MR system 400, and the external device 700 via a network 2.
- the MR system 400 is configured to be able to communicate with the server 600, the VR system 200, and the external device 700 via the network 2.
- the number of MR systems 400 constituting the information processing system 100 is not limited to one, and may be multiple.
- the number of VR systems 200 constituting the information processing system 100 is not limited to one, and may be multiple.
- the network 2 may be composed of, for example, the Internet, a mobile communication system (e.g., 3G, 4G, 5G, LTE (Long Term Evolution), etc.), Wi-Fi (registered trademark), Bluetooth (registered trademark), other communication lines, or a combination of these.
- a mobile communication system e.g., 3G, 4G, 5G, LTE (Long Term Evolution), etc.
- Wi-Fi registered trademark
- Bluetooth registered trademark
- the VR system 200 includes a VR device 210, a computer 300, a detection device 260, a display 270, and a controller 280.
- the VR device 210 includes a display 211, a gaze sensor 212, a first camera 213, a second camera 214, a microphone 215, a speaker 216, and a sensor 217.
- a VR user a user who uses the VR device 210 is referred to as a VR user.
- the computer 300 can be connected to the Internet or other network 2, and can communicate with, for example, a server 600, a computer of the MR system 400, and other computers connected to the network 2. Examples of other computers include computers of other VR systems 200 and external devices 700.
- the VR device 210 is worn on the head of a VR user and can provide the VR user with a virtual space during operation.
- the VR device 210 can be, for example, a so-called head-mounted display equipped with a display, or a head-mounted device equipped with a smartphone or other terminal having a display.
- the VR device 210 displays, for example, an image for the right eye and an image for the left eye on the display 211. When each eye of the VR user views the respective image, the VR user can recognize the image as a three-dimensional image based on the parallax between the two eyes.
- the display 211 is realized, for example, as a non-transparent display device.
- the display 211 is disposed on the main body of the VR device 210 so as to be located, for example, in front of both eyes of the VR user. Therefore, when the VR user visually recognizes the three-dimensional image displayed on the display 211, he or she can become immersed in the virtual space.
- the display 211 may also be realized by a display provided on a so-called smartphone or other terminal.
- the detection device 260 detects the movement of a VR user who uses the VR device 210.
- the detection device 260 may have a position tracking function for detecting the movement of the VR device 210, thereby detecting the movement of the VR user.
- the detection device 260 may have, for example, a sensor that reads light (e.g., infrared light) from the VR device 210 as a sensor for detecting the movement of the VR user, and detect the position, inclination, etc. of the VR device 210 in real space.
- the VR device 210 may have multiple light sources not shown.
- each light source may be realized, for example, by an LED (Light Emitting Diode) that emits infrared light.
- the detection device 260 may also be realized by, for example, a camera.
- the detection device 260 may have an image sensor (for example, an image sensor that acquires an RGB image, an image sensor that acquires a black and white image, or a depth sensor, etc.) as a sensor for detecting the movement of the VR user.
- the movement of the VR user may be detected by a camera.
- the detection device 260 may be, for example, a depth camera equipped with a device that emits a predetermined light such as infrared light or a predetermined pattern of light, and an image sensor (for example, a depth sensor), and may detect the reflected light of the light emitted from the device by the image sensor, and may detect the position, posture, etc.
- the detection device 460 may also be equipped with such a depth camera and a camera that can acquire an RGB image, and may detect the position, posture, etc. of the VR user based on the output from these cameras.
- the detection device 260 may also be, for example, a stereo camera equipped with multiple image sensors, and may detect the position, posture, etc. of the VR user based on the output from the multiple image sensors. Note that detecting the position, posture, etc. of the VR user may be detecting the position, posture, etc. of the VR user's body, or may be detecting the position, tilt, etc. of the VR device 210.
- the VR system 200 may have one or more types of detection devices as the detection device 260, and may have a plurality of each type of detection device.
- the VR system 200 may not have the detection device 260.
- a part of the detection device 260 may be configured by the computer 300 or the like.
- analysis of the output from the image sensor e.g., image recognition, etc.
- the detection device 260 may have a sensor capable of detecting the position, inclination, etc. of the detection device 260 itself.
- the detection device 260 may have an angular velocity sensor (e.g., a three-axis angular velocity sensor), an acceleration sensor (e.g., a three-axis acceleration sensor), or a geomagnetic sensor (e.g., a three-axis geomagnetic sensor).
- the output from these sensors may be sent to the computer 300, etc., and may be used, for example, when a predetermined process is performed based on the output from an image sensor provided in the detection device 260.
- the VR device 210 may also include a sensor 217 instead of or in addition to the detection device 260 as a detection means for detecting the movement of the VR user.
- the VR device 210 may use the sensor 217 to detect the position and inclination of the VR device 210 itself.
- the sensor 217 may be, for example, an angular velocity sensor (e.g., a three-axis angular velocity sensor), an acceleration sensor (e.g., a three-axis acceleration sensor), or a geomagnetic sensor (e.g., a three-axis geomagnetic sensor).
- the VR device 210 may also have one or more types of sensors as the sensor 217, and may have multiple sensors of each type.
- the VR device 210 can detect the angular velocity around the three axes of the VR device 210 in real space over time. The VR device 210 can then calculate the change over time in the angles around the three axes of the VR device 210 based on each angular velocity, and can further calculate the inclination of the VR device 210 based on the change over time in the angles.
- the sensor 217 may be, for example, an image sensor.
- the position, posture, etc. of the VR user may be detected based on the output from the image sensor. In other words, the position, posture, etc. of the VR user may be detected based on information from a camera that is provided in the VR device 210 and captures the surroundings of the VR device 210. In other words, tracking of the VR device 210 may be performed by an outside-in method or an inside-out method.
- the gaze sensor 212 detects the direction in which the VR user's right and left eyes are looking. That is, the gaze sensor 212 detects the VR user's gaze (in other words, the movement of the eyes). The detection of the gaze direction is achieved, for example, by a known eye tracking function.
- the gaze sensor 212 is achieved by a sensor having the eye tracking function.
- the gaze sensor 212 may include a sensor for the right eye and a sensor for the left eye.
- the gaze sensor 212 may be, for example, a sensor that irradiates the VR user's right and left eyes with infrared light and detects the rotation angle of each eyeball by receiving reflected light from the cornea and iris in response to the irradiated light. In this case, the gaze sensor 212 can detect the VR user's gaze based on each detected rotation angle.
- the first camera 213 photographs the lower part of the VR user's face. More specifically, the first camera 213 photographs the VR user's nose, mouth, etc.
- the second camera 214 photographs the VR user's eyes, eyebrows, etc.
- the VR user side of the housing of the VR device 210 is defined as the inside of the VR device 210
- the opposite side of the housing of the VR device 210 from the VR user is defined as the outside of the VR device 210.
- the first camera 213 may be disposed outside the VR device 210
- the second camera 214 may be disposed inside the VR device 210.
- the images photographed by the first camera 213 and the second camera 214 are input to the computer 300.
- the first camera 213 and the second camera 214 may be realized as a single camera, and the face of the VR user may be photographed by this single camera.
- the speaker 216 which serves as a sound output means, converts the sound signal into sound and outputs it to the VR user. Note that the VR device 210 may include earphones instead of the speaker 216 as a sound output means.
- Display 270 displays an image similar to the image displayed on display 211. This allows users other than the VR user wearing VR device 210 to view the same image (in other words, a virtual space) as the VR user.
- the image displayed on display 270 does not need to be a three-dimensional image, and may be, for example, an image for the right eye or an image for the left eye displayed on VR device 210.
- Examples of display 270 include a liquid crystal display and an organic EL display.
- the controller 280 is connected to the computer 300 by wire or wirelessly.
- the controller 280 accepts input operations related to instructions from the VR user to the computer 300.
- the controller 280 also accepts input operations by the VR user to control the position and movement of a virtual object placed in a virtual space.
- the controller 280 may be configured to be held by the VR user, for example.
- the controller 280 may also be configured to be wearable, for example, on the body or a part of the clothing of the VR user.
- the controller 280 may be, for example, in the form of a glove.
- the controller 280 may also be configured to be able to output at least one of vibration, sound, and light based on a signal transmitted from the computer 300.
- the controller 280 may also have multiple light sources. Each light source may be realized, for example, by an LED that emits infrared light.
- the detection device 260 may then read the infrared light from the controller 280 and detect the position and inclination of the controller 280 in real space. In other words, the detection device 260 may have a position tracking function that detects the movement of the controller 280, thereby detecting the movement of the VR user.
- the VR system 200 does not necessarily have to include the controller 280.
- the information processing system 100 may also have a sensor 286 that detects the movement of the VR user.
- the sensor 286 may be, for example, an angular velocity sensor, an acceleration sensor, or a geomagnetic sensor.
- the sensor 286 may also be provided in the controller 280, for example (see FIG. 7).
- the information processing system 100 may have one or more types of sensors as the sensor 286, and may have multiple sensors of each type.
- the device including the sensor 286 (for example, the controller 280 or a specific camera) and the computer 300 may be connected to each other, for example, wirelessly.
- the information acquired by the sensor 286 may also be transmitted to the computer 300, for example, by wireless communication.
- the position and movement of the VR user may also be detected by the VR device 210 being equipped with a device for performing a specific wireless communication (for example, short-range wireless communication such as Wi-Fi communication, Bluetooth communication, or UWB (Ultra Wide Band) communication) and having the device perform wireless communication with surrounding devices to obtain position information of the VR device 210.
- a specific wireless communication for example, short-range wireless communication such as Wi-Fi communication, Bluetooth communication, or UWB (Ultra Wide Band) communication
- UWB Ultra Wide Band
- the position and movement of the VR user may also be detected using an external device 700 (and a device that tracks the movement of the VR user in cooperation with the device via short-range wireless communication or the like) that can track the movement of the VR user, such as a device worn by the VR user (for example, a wearable device such as a watch-type, wristband-type, ring-type, or clothing-type device, or an implantable device, etc.).
- a device worn by the VR user for example, a wearable device such as a watch-type, wristband-type, ring-type, or clothing-type device, or an implantable device, etc.
- These external devices 700 may also be used as the controller 280.
- the position and movement of the VR user may also be detected by a GPS sensor, etc.
- the computer 300 includes, as its main components, a processor 301, a memory 302, a storage 303, an input/output interface 304, and a communication interface 305.
- the components are connected to each other via a bus.
- the processor 301 controls the operation of the VR device 210.
- the processor 301 reads a program from the storage 303 and expands it in the memory 302.
- the processor 301 executes the expanded program.
- the processor 301 may be configured to include, for example, one or more of the following: a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), an MPU (Micro Processor Unit), and an FPGA (Field-Programmable Gate Array).
- Memory 302 is a main storage device. Memory 302 is composed of storage devices such as ROM (Read Only Memory) and RAM (Random Access Memory). Memory 302 provides a working area for processor 301 by temporarily storing programs and various data that processor 301 reads from storage 303. Memory 302 also temporarily stores various data generated while processor 301 is operating according to a program, various data input to computer 300, etc.
- ROM Read Only Memory
- RAM Random Access Memory
- Storage 303 is an auxiliary storage device.
- Storage 303 is composed of a storage device such as a flash memory or a HDD (Hard Disk Drive).
- Storage 303 stores programs for providing services in information processing system 100.
- Storage 303 also stores various data for providing services in information processing system 100.
- the data stored in storage 303 includes data for defining a virtual space and data related to virtual objects.
- storage 303 may be implemented as a removable storage device, such as a memory card. Also, instead of storage 303 built into computer 300, programs and data stored in an external storage device may be used.
- the input/output interface 304 is an interface through which the computer 300 accepts data input, and is also an interface through which the computer 300 outputs data.
- the input/output interface 304 can transmit or receive data between the VR device 210, the detection device 260, and the display 270. It may also transmit or receive data between the display 211, the gaze sensor 212, the first camera 213, the second camera 214, the microphone 215, the speaker 216, and the sensor 217 included in the VR device 210.
- the input/output interface 304 may transmit or receive data to and from the controller 280.
- the input/output interface 304 may receive input of signals output from the controller 280 and the sensor 286.
- the input/output interface 304 may also transmit commands output from the processor 301 to the controller 280.
- the commands may instruct the controller 280 to vibrate, output sound, emit light, or the like.
- the controller 280 Upon receiving the command, the controller 280 performs vibration, output sound, emit light, or the like in accordance with the command.
- each of the VR device 210, the detection device 260, the display 270, the controller 280, and the sensor 286 may be connected to the computer 300 via a wired or wireless connection.
- the communication interface 305 controls the sending and receiving of various data with other computers (e.g., the server 600, the computer 500, or other computers 300, etc.) via the network 2.
- other computers e.g., the server 600, the computer 500, or other computers 300, etc.
- the processor 301 accesses the storage 303, loads a program stored in the storage 303 into the memory 302, and executes a series of instructions contained in the program.
- the processor 301 also sends a signal to the VR device 210 via the input/output interface 304 to provide a virtual space.
- the computer 300 may be provided outside the VR device 210, or a part or the whole of the computer 300 may be built into the VR device 210.
- a portable terminal e.g., a smartphone
- the computer 300 may be provided for each VR device 210, or may be shared by the multiple VR devices 210.
- a real coordinate system which is a coordinate system in real space, is set in advance in the VR system 200.
- the real coordinate system has three reference directions (axes) that are parallel to the vertical direction in real space, the horizontal direction perpendicular to the vertical direction, and the front-rear direction perpendicular to both the vertical and horizontal directions.
- the position and tilt of the VR device 210 in real space can be detected by the detection device 260 and the sensor 217.
- the detected tilt of the VR device 210 corresponds to, for example, each tilt around the three axes of the VR device 210 in the real coordinate system.
- the computer 300 sets a uvw field of view coordinate system for the VR device 210 based on the tilt of the VR device 210 in the real coordinate system (see Figure 4).
- the uvw field of view coordinate system set for the VR device 210 corresponds to the viewpoint coordinate system when a VR user wearing the VR device 210 views an object in virtual space.
- the computer 300 sets a three-dimensional uvw field of view coordinate system with the head of the VR user wearing the VR device 210 as its center (origin). More specifically, the computer 300 tilts the horizontal, vertical, and front-to-rear directions that define the real coordinate system around each axis by the tilt of the VR device 210 around each axis in the real coordinate system, and sets the three newly obtained directions as the pitch axis (u-axis), yaw axis (v-axis), and roll axis (w-axis) of the uvw field of view coordinate system in the VR device 210.
- the processor 301 sets a field of view coordinate system in the VR device 210 that is parallel to the real coordinate system.
- the horizontal direction, vertical direction, and front-to-back directions in the real coordinate system coincide with the pitch axis (u-axis), yaw axis (v-axis), and roll axis (w-axis) of the field of view coordinate system in the VR device 210.
- the detection device 260 or the sensor 217 can detect the tilt of the VR device 210 in the set uvw field of view coordinate system based on the movement of the VR device 210.
- the detection device 260 or the sensor 217 detects the pitch angle, yaw angle, and roll angle of the VR device 210 in the uvw field of view coordinate system as the tilt of the VR device 210.
- the pitch angle represents the tilt angle of the VR device 210 around the pitch axis in the uvw field of view coordinate system.
- the yaw angle represents the tilt angle of the VR device 210 around the yaw axis in the uvw field of view coordinate system.
- the roll angle represents the tilt angle of the VR device 210 around the roll axis in the uvw field of view coordinate system.
- the computer 300 Based on the detected inclination of the VR device 210, the computer 300 sets the uvw field of view coordinate system of the VR device 210 after the VR device 210 moves in the VR device 210.
- the relationship between the VR device 210 and the uvw field of view coordinate system of the VR device 210 is always constant, regardless of the position and inclination of the VR device 210.
- the position and inclination of the VR device 210 change, the position and inclination of the uvw field of view coordinate system of the VR device 210 in the real coordinate system change in conjunction with the change in the position and inclination.
- the detection device 260 may identify the position of the VR device 210 in real space as a relative position with respect to the detection device 260.
- the processor 301 may also determine the origin of the uvw field of view coordinate system of the VR device 210 in real space (actual coordinate system) based on the identified relative position.
- FIG. 4 is a diagram conceptually showing one mode of expressing the 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.
- FIG. 4 in order to avoid complicating the description, the upper half of the celestial sphere in the virtual space 11 is illustrated.
- Each mesh is defined in the virtual space 11.
- the position of each mesh is defined in advance as a coordinate value in the XYZ coordinate system, which is a global coordinate system defined in the virtual space 11.
- the computer 300 associates each partial image constituting the panoramic image 13 (still image, video, etc.) that can be deployed in the virtual space 11 with each corresponding mesh in the virtual space 11.
- an XYZ coordinate system is defined with a specific point as the origin 12.
- the XYZ coordinate system is, for example, parallel to the real coordinate system.
- the horizontal direction, vertical direction (up-down direction), and front-to-back direction in the XYZ coordinate system are defined as the X-axis, Y-axis, and Z-axis, respectively. Therefore, the X-axis of the XYZ coordinate system is parallel to the horizontal direction of the real coordinate system, the Y-axis (vertical direction) of the XYZ coordinate system is parallel to the vertical direction of the real coordinate system, and the Z-axis (front-to-back direction) of the XYZ coordinate system is parallel to the front-to-back direction of the real coordinate system.
- the virtual camera 14 When the VR device 210 is started up, i.e., in the initial state of the VR device 210, the virtual camera 14 is placed at a predetermined position (e.g., the center) in the virtual space 11.
- the processor 301 also displays an image captured by the virtual camera 14 on the display 211 of the VR device 210.
- the virtual camera 14 moves within the virtual space 11 in conjunction with the movement of the VR device 210 in the real space. This allows changes in the tilt and position of the VR device 210 in the real space to be reproduced in the virtual space 11 in the same way.
- a uvw field of view coordinate system is defined for the virtual camera 14, as in the case of the VR device 210.
- the uvw field of view coordinate system of the virtual camera 14 in the virtual space 11 is defined so as to be linked to the uvw field of view coordinate system of the VR device 210 in real space (actual coordinate system). Therefore, when the inclination of the VR device 210 changes, the inclination of the virtual camera 14 also changes accordingly.
- the virtual camera 14 may move in the virtual space 11 in conjunction with the movement of the VR user in real space, but in this embodiment, it does not move in the virtual space 11 even if the VR user moves in real space.
- the processor 301 of the computer 300 determines the viewing area 15 in the virtual space 11 based on the position and inclination of the virtual camera 14.
- the viewing area 15 corresponds to the area of the virtual space 11 that is viewed by a VR user wearing the VR device 210.
- the position of the virtual camera 14 can be said to be the viewpoint of the VR user in the virtual space 11.
- the uvw field of view coordinate system of the VR device 210 is equal to the viewpoint coordinate system when the VR user views the display 211.
- the uvw field of view coordinate system of the virtual camera 14 is linked to the uvw field of view coordinate system of the VR device 210. Therefore, the line of sight of the VR user detected by the gaze sensor 212 can be regarded as the line of sight of the VR user in the uvw field of view coordinate system of the virtual camera 14.
- Fig. 5 is a diagram showing a YZ cross section of the field of view 15 in the virtual space 11 as viewed from the X direction.
- Fig. 6 is a diagram showing an XZ cross section of the field of view 15 in the virtual space 11 as viewed from the Y direction.
- the field of view 15 in the YZ cross section includes an area 18.
- the area 18 is defined by the position of the virtual camera 14, the reference line of sight 16, and the YZ cross section of the virtual space 11.
- the processor 301 defines the range including the polar angle ⁇ centered on the reference line of sight 16 in the virtual space as the area 18.
- the field of view 15 in the XZ cross section includes area 19.
- Area 19 is defined by the position of virtual camera 14, reference line of sight 16, and the XZ cross section of virtual space 11.
- Processor 301 defines a range including azimuth angle ⁇ centered on reference line of sight 16 in virtual space 11 as area 19.
- Polar angles ⁇ and ⁇ are determined according to the position of virtual camera 14 and the inclination (direction) of virtual camera 14.
- the VR system 200 provides the VR user with a field of view in the virtual space 11 by displaying a field of view image 17 on the display 211 based on a signal from the computer 300 (see FIG. 4).
- the field of view image 17 is an image that corresponds to the portion of the panoramic image 13 that corresponds to the field of view area 15.
- the VR user moves the VR device 210 worn on their head
- the virtual camera 14 also moves in conjunction with the movement.
- the position of the field of view area 15 in the virtual space 11 changes.
- the field of view image 17 displayed on the display 211 is updated to an image of the panoramic image 13 that is superimposed on the field of view area 15 in the direction in which the VR user is facing in the virtual space 11.
- the VR user can view the desired direction in the virtual space 11.
- the VR user While wearing the VR device 210, the VR user can only view the panoramic image 13 displayed in the virtual space 11, without being able to see the real world. Therefore, the information processing system 100 can give the VR user a highly immersive feeling in the virtual space 11.
- the virtual camera 14 may include two virtual cameras, i.e., a virtual camera for providing an image for the right eye and a virtual camera for providing an image for the left eye. In this case, an appropriate parallax is set for the two virtual cameras so that the VR user can recognize the three-dimensional virtual space 11.
- the virtual camera 14 may also be realized by a single 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 the single virtual camera.
- controller An example of the controller 280 will now be described with reference to FIG.
- the controller 280 may include a right controller 280R and a left controller (not shown).
- the right controller 280R is operated by the right hand of the VR user.
- the left controller is operated by the left hand of the VR user.
- the right controller 280R and the left controller are configured as separate devices. Therefore, the VR user can freely move both the right hand holding the right controller 280R and the left hand holding the left controller.
- the controller 280 may be an integrated controller that accepts operation from both hands. The right controller 280R will be described below.
- the right controller 280R includes a grip 281, a frame 282, a top surface 283, buttons 284 and 285, a sensor (e.g., a motion sensor) 286, an infrared LED 287, buttons 288 and 289, and an analog stick 290.
- the grip 281 is configured to be held by the right hand of a VR user.
- the grip 281 can be held by the palm and three fingers (middle finger, ring finger, and little finger) of the VR user's right hand.
- Button 284 is located on the side of grip 281 and is operable by the middle finger of the right hand.
- Button 285 is located on the front of grip 281 and is operable by the index finger of the right hand. Buttons 284 and 285 are also equipped with switches that detect the movement of the user pressing buttons 284 and 285. Buttons 284 and 285 may also be configured as trigger-type buttons.
- the sensor 286 is built into the housing of the grip 281.
- the sensor 286 detects the movement of the VR user. Specifically, the sensor 286 detects the movement of the VR user's hand. For example, the sensor 286 detects the rotation speed and number of rotations of the hand. Note that the controller 280 does not necessarily have to include the sensor 286.
- a number of infrared LEDs 287 are arranged along the circumferential direction of the frame 282.
- the infrared LEDs 287 emit infrared light in accordance with the progress of the program.
- the infrared light emitted from the infrared LEDs 287 can be used to detect the positions and attitudes (tilt, direction) of the right controller 280R and the left controller.
- the top surface 283 is equipped with buttons 288, 289 and an analog stick 290.
- the buttons 288, 289 are operated by the thumb of the VR user's right hand.
- the buttons 288, 289 are also equipped with switches that detect the movement of the user pressing the buttons 288, 289.
- the analog stick 290 is equipped with operations in any direction within 360 degrees from the initial position (neutral position). Such operations include, for example, operations for moving an object placed in the virtual space 11.
- the analog stick 290 is also equipped with a sensor that detects the movement of the user operating the analog stick 290.
- the controller 280 defines the yaw, roll, and pitch directions for, for example, the right hand of a VR user. Specifically, for example, when a VR user extends his or her thumb and index finger, the direction in which the thumb extends is defined as the yaw direction, the direction in which the index finger extends is defined as the roll direction, and the direction perpendicular to the plane defined by the axis of the yaw direction and the axis of the roll direction is defined as the pitch direction.
- the MR system 400 includes an MR device 410, a computer 500, a detection device 460, a display 470, and a controller 480.
- the MR device 410 includes a display 411, a gaze sensor 412, a camera 413, a microphone 415, a speaker 416, and a sensor 417.
- a user who uses the MR device 410 is referred to as an MR user 6.
- the computer 500 can be connected to the Internet or other network 2, and can communicate with, for example, a server 600, a computer of the VR system 200, and other computers connected to the network 2. Examples of other computers include computers of other MR systems 400 and external devices 700.
- the MR device 410 is worn on the head of the MR user 6 and can provide a mixed reality space to the MR user 6 during operation.
- the MR device 410 may be, for example, a glasses-type device equipped with a display (for example, so-called MR glasses).
- the MR device 410 may also be a contact lens-type device, etc.
- the display 411 is realized as, for example, a transmissive display device.
- the transmissive display 411 may temporarily function as a non-transmissive display device by adjusting its transmittance.
- the display 411 is disposed on the main body of the MR device 410 so as to be located, for example, in front of both eyes of the MR user 6. Therefore, the MR user 6 is provided with a display in which a virtual object displayed by the display 411 is superimposed on the real space seen through the transmissive display 411.
- the MR device 410 provides the MR user 6 with a view of a mixed reality space in which a virtual object is disposed in the real space.
- the MR device 410 allows the MR user 6 to simultaneously see a virtual object and an object existing in the real space (hereinafter referred to as a "real object").
- the detection device 460 detects the movement of the MR user 6 using the MR device 410.
- the detection device 460 may have a position tracking function for detecting the movement of the MR device 410, thereby detecting the movement of the MR user 6.
- the detection device 460 may have, for example, a sensor that reads light (e.g., infrared light) from the MR device 410 as a sensor for detecting the movement of the MR user 6, and detect the position, inclination, etc. of the MR device 410 in the mixed reality space.
- the MR device 410 may have multiple light sources not shown.
- each light source may be realized, for example, by an LED (Light Emitting Diode) that emits infrared light.
- the detection device 460 may also be realized by, for example, a camera.
- the detection device 460 may have an image sensor (e.g., an image sensor that acquires an RGB image, an image sensor that acquires a black and white image, or a depth sensor, etc.) as a sensor for detecting the movement of the MR user 6.
- an image sensor e.g., an image sensor that acquires an RGB image, an image sensor that acquires a black and white image, or a depth sensor, etc.
- the movement of the MR user 6 may be detected by a camera.
- the detection device 460 may be, for example, a depth camera equipped with a device that emits a predetermined light such as infrared light or a predetermined pattern of light, and an image sensor (e.g., a depth sensor), and may detect the reflected light of the light emitted from the device by the image sensor, and detect the position, posture, etc. of the MR user 6 based on the output from the image sensor.
- the detection device 460 may also be equipped with such a depth camera and a camera capable of acquiring an RGB image, and may detect the position, posture, etc. of the MR user 6 based on the output from these cameras.
- the detection device 460 may be, for example, a stereo camera equipped with multiple image sensors, and may detect the position, posture, etc.
- detection of the position, posture, etc. of the MR user 6 may be detection of the body position, posture, etc. of the MR user 6, or detection of the position, tilt, etc. of the MR device 410.
- the MR system 400 may have one or more types of detection devices as the detection device 460, and may have multiple detection devices of each type.
- the MR system 400 may have multiple cameras (in other words, multiple sensors), and the multiple cameras may function as the detection device 460.
- the MR system 400 is described as having three detection devices 460, and each detection device 460 is described as having a depth camera and a camera capable of acquiring RGB images.
- a part of the detection device 460 may be configured by the computer 500 or the like.
- analysis of the output from the image sensor e.g., image recognition, etc.
- the MR system 400 may not have the detection device 460.
- the detection device 460 may have a sensor capable of detecting the position, inclination, etc. of the detection device 460 itself.
- the detection device 460 may have an angular velocity sensor (e.g., a three-axis angular velocity sensor), an acceleration sensor (e.g., a three-axis acceleration sensor), or a geomagnetic sensor (e.g., a three-axis geomagnetic sensor).
- the output from these sensors may be sent to the computer 500 or the like, and may be used, for example, when a predetermined process is performed based on the output from an image sensor provided in the detection device 460.
- the MR device 410 of another MR user 6 may be used as the detection device 460.
- the MR device 410 may also include a sensor 417 instead of or in addition to the detection device 460 as a detection means for detecting the movement of the MR user 6.
- the MR device 410 may use the sensor 417 to detect the position and inclination of the MR device 410 itself.
- the sensor 417 may be, for example, an angular velocity sensor (e.g., a three-axis angular velocity sensor), an acceleration sensor (e.g., a three-axis acceleration sensor), or a geomagnetic sensor (e.g., a three-axis geomagnetic sensor).
- the MR device 410 may also include one or more types of sensors as the sensor 417, and may include multiple sensors of each type.
- the gaze sensor 412 detects the direction in which the right and left eyes of the MR user 6 are directed. That is, the gaze sensor 412 detects the gaze of the MR user 6 (in other words, the movement of the eyes).
- the detection of the gaze direction is realized, for example, by a known eye tracking function.
- the gaze sensor 412 is realized by a sensor having the eye tracking function.
- the gaze sensor 412 may include a sensor for the right eye and a sensor for the left eye.
- the gaze sensor 412 may be, for example, a sensor that irradiates the right and left eyes of the MR user 6 with infrared light and detects the rotation angle of each eyeball by receiving reflected light from the cornea and iris in response to the irradiated light. In this case, the gaze sensor 412 can detect the gaze of the MR user 6 based on each detected rotation angle.
- the camera 413 captures the surroundings (e.g., in front) of the MR user 6.
- the MR device 410 may be equipped with, for example, a depth camera and a camera capable of acquiring RGB images as the camera 413.
- the computer 500 may detect the shape of objects around the MR device 410 (in other words, the MR user 6) and the relative distance between the MR device 410 and the surrounding objects.
- the position and inclination of the MR device 410 may also be detected based on the output from the camera 413. In other words, tracking of the MR device 410 may be performed by an outside-in method or an inside-out method.
- the microphone 415 serving as a sound input means, converts the voice of the MR user 6 into a sound signal (in other words, an electrical signal) and outputs it to the computer 500.
- the speaker 416 serving as a sound output means, converts the sound signal into sound and outputs it to the MR user 6.
- the MR device 410 may include earphones instead of the speaker 416 as a sound output means.
- the display 470 displays, for example, an image similar to the image displayed on the display 411. This allows users other than the MR user 6 wearing the MR device 410 to view the same image as the MR user 6.
- the image displayed on the display 470 does not need to be a three-dimensional image, and may be, for example, an image for the right eye or an image for the left eye displayed by the MR device 410.
- Examples of the display 470 include a liquid crystal display and an organic EL display.
- the display 470 may display an image showing a view of the mixed reality space provided to the MR user 6 by the MR device 410.
- the controller 480 is connected to the computer 500 by wire or wirelessly.
- the controller 480 accepts input operations related to instructions from the MR user 6 to the computer 500.
- the controller 480 also accepts input operations by the MR user 6 to control the position and movement of a virtual object placed in the mixed reality space.
- the controller 480 may be configured to be held by the MR user 6, for example.
- the controller 480 may also be configured to be worn on the body or a part of the clothing of the MR user 6, for example.
- the controller 480 may also be configured to be able to output at least one of vibration, sound, and light based on a signal transmitted from the computer 500.
- the controller 480 may also have multiple light sources. Each light source may be realized, for example, by an LED that emits infrared light.
- the detection device 460 may then read the infrared light from the controller 480 and detect the position and inclination of the controller 480 within the mixed reality space. In other words, the detection device 460 may have a position tracking function that detects the movement of the controller 480, thereby detecting the movement of the MR user 6.
- the MR system 400 does not necessarily have to have the controller 480.
- the controller 480 may also have, for example, some or all of the components of the controller 280.
- the information processing system 100 may have a sensor 486 that detects the movement of the MR user 6.
- the sensor 486 may be, for example, an angular velocity sensor, an acceleration sensor, or a geomagnetic sensor.
- the sensor 486 may also be provided in the controller 480, for example.
- the information processing system 100 may have one or more types of sensors as the sensor 486, and may have multiple sensors of each type.
- the device including the sensor 486 (for example, the controller 480 or a specific camera) and the computer 500 may be connected to each other, for example, wirelessly.
- the information acquired by the sensor 486 may be transmitted to the computer 300, for example, by wireless communication.
- the position and movement of the MR user 6 may also be detected by the MR device 410 being equipped with a device that performs predetermined wireless communication (e.g., short-range wireless communication such as Wi-Fi communication, Bluetooth communication, or UWB communication) and having the device perform wireless communication with surrounding devices to obtain position information of the VR device 210.
- predetermined wireless communication e.g., short-range wireless communication such as Wi-Fi communication, Bluetooth communication, or UWB communication
- the position and movement of the MR user 6 may also be detected using an external device 700 (and a device that tracks the movement of the MR user 6 in cooperation with the device via short-range wireless communication or the like) that can track the movement of the MR user 6, such as a device worn by the MR user 6 (for example, a wearable device such as a watch-type, wristband-type, ring-type, or clothing-type device, or an implantable device, etc.).
- a device worn by the MR user 6 for example, a wearable device such as a watch-type, wristband-type, ring-type, or clothing-type device, or an implantable device, etc.
- These external devices 700 may also be used as the controller 480.
- the position and movement of the MR user 6 may also be detected by a GPS sensor or the like.
- the computer 500 includes, as its main components, a processor 501, a memory 502, a storage 503, an input/output interface 504, and a communication interface 505.
- the components are connected to each other via a bus.
- the processor 501 controls the operation of the MR device 410.
- the processor 501 reads a program from the storage 503 and expands it in the memory 502.
- the processor 501 executes the expanded program.
- the processor 501 may be configured to include, for example, one or more of the following: a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), an MPU (Micro Processor Unit), and an FPGA (Field-Programmable Gate Array).
- Memory 502 is a main storage device. Memory 502 is composed of storage devices such as ROM (Read Only Memory) and RAM (Random Access Memory). Memory 502 provides a working area for processor 501 by temporarily storing programs and various data that processor 501 reads from storage 503. Memory 502 also temporarily stores various data generated while processor 501 is operating according to a program, various data input to computer 500, etc.
- ROM Read Only Memory
- RAM Random Access Memory
- Storage 503 is an auxiliary storage device.
- Storage 503 is composed of a storage device such as a flash memory or a HDD (Hard Disk Drive).
- Storage 503 stores programs for providing services in information processing system 100.
- Storage 503 also stores various data for providing services in information processing system 100.
- Data stored in storage 503 includes data for defining a mixed reality space, data related to virtual objects, etc.
- storage 503 may be implemented as a removable storage device, such as a memory card. Also, instead of storage 503 built into computer 500, programs and data stored in an external storage device may be used.
- the input/output interface 504 is an interface through which the computer 500 accepts data input, and is also an interface through which the computer 500 outputs data.
- the input/output interface 504 can transmit or receive data between the MR device 410, the detection device 460, and the display 470.
- the input/output interface 504 may also transmit or receive data between the display 411, the gaze sensor 412, the camera 413, the microphone 415, the speaker 416, and the sensor 417 included in the MR device 410.
- the input/output interface 504 may transmit or receive data to and from the controller 480.
- the input/output interface 504 may receive input of signals output from the controller 480 and the sensor 486.
- the input/output interface 504 may also transmit commands output from the processor 501 to the controller 480.
- the commands may instruct the controller 480 to vibrate, output sound, emit light, or the like.
- the controller 480 Upon receiving the command, the controller 480 performs vibration, output sound, emit light, or the like in accordance with the command.
- the MR device 410, the detection device 460, the display 470, the controller 480, and the sensor 486 may each be connected to the computer 500 via a wired or wireless connection.
- the communication interface 505 controls the sending and receiving of various data with other computers (e.g., the server 600, the computer 300, or other computers 500, etc.) via the network 2.
- other computers e.g., the server 600, the computer 300, or other computers 500, etc.
- the processor 501 accesses the storage 503, loads a program stored in the storage 503 into the memory 502, and executes a series of instructions contained in the program.
- the processor 501 also sends a signal to the MR device 410 via the input/output interface 504 to provide a mixed reality space.
- the computer 500 may be provided outside the MR device 410, or a part or the whole of the computer 500 may be built into the MR device 410. Furthermore, when there are multiple MR devices 410, the computer 500 may be provided for each MR device 410, or may be used commonly for the multiple MR devices 410. Furthermore, in this case, a part of the computer 500 may be built into each of the multiple MR devices 410. In this embodiment, an example will be described in which multiple MR devices 410 are connected to the computer 500.
- the server 600 may transmit a program to the computer 300.
- the server 600 may also transmit a program to the computer 500.
- the server 600 also enables communication between the computer 300 and the computer 500.
- the server 600 also enables communication between the computer 300 and other computers 300.
- each computer 300 of the VR user may communicate with the other computers 300 via the server 600, thereby enabling multiple VR users to share experiences in the same virtual space.
- each computer 300 may communicate with the other computers 300 without going through the server 600.
- the server 600 includes a processor 601, a memory 602, a storage 603, an input/output interface 604, and a communication interface 605. Each component is connected to each other via a bus.
- Processor 601 controls the operation of the entire server 600.
- Processor 601 reads programs from storage 603 and expands them into memory 602.
- Processor 601 executes the expanded programs.
- Processor 601 may be configured to include one or more of the following, for example: a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), an MPU (Micro Processor Unit), and an FPGA (Field-Programmable Gate Array).
- a CPU Central Processing Unit
- GPU Graphics Processing Unit
- MPU Micro Processor Unit
- FPGA Field-Programmable Gate Array
- Memory 602 is a main storage device. Memory 602 is composed of storage devices such as ROM (Read Only Memory) and RAM (Random Access Memory). Memory 602 provides a working area for processor 601 by temporarily storing programs and various data that processor 601 reads from storage 603. Memory 602 also temporarily stores various data generated while processor 601 is operating according to a program, various data input to server 600, etc.
- ROM Read Only Memory
- RAM Random Access Memory
- Storage 603 is an auxiliary storage device.
- Storage 603 is composed of a storage device such as a flash memory or a HDD (Hard Disk Drive).
- Storage 603 stores programs for providing services in information processing system 100.
- Storage 603 also stores various data for providing services in information processing system 100.
- Data stored in storage 603 includes data for defining a virtual space, data for defining a mixed reality space, data related to virtual objects, etc.
- storage 603 may be implemented as a removable storage device, such as a memory card. Also, instead of storage 603 built into server 600, programs and data stored in an external storage device may be used.
- the input/output interface 604 is an interface through which the server 600 accepts data input, and is also an interface through which the server 600 outputs data.
- the input/output interface 604 can transmit or receive data between, for example, input devices such as a mouse or keyboard, and output devices such as a display.
- the communication interface 605 controls the sending and receiving of various data with other computers (e.g., computer 300, computer 500, etc.) via network 2.
- computers e.g., computer 300, computer 500, etc.
- the external device 700 may be any device capable of communicating with the computer 300, the computer 500, or the server 600.
- the external device 700 may be, for example, a device capable of communicating with the computer 300 via the network 2, or a device capable of communicating with the computer 300 via short-range wireless communication or a wired connection.
- the external device 700 may be, for example, a device capable of communicating with the computer 500 via the network 2, or a device capable of communicating with the computer 500 via short-range wireless communication or a wired connection.
- the external device 700 may be, for example, a device capable of communicating with the server 600 via the network 2. Examples of the external device 700 include, but are not limited to, smart devices, PCs (Personal Computers), and peripheral devices of the computers 300 and 500.
- the MR device 410 provides the MR user 6 with a view of a mixed reality space in which a virtual object is arranged in a real space, similar to a known MR device.
- the VR device 210 provides the VR user with a view of a virtual space, similar to a known VR device.
- the MR user 6 is capable of operating a virtual object in the mixed reality space.
- the VR user is capable of operating a virtual object in the virtual space.
- the movement of the VR user using the VR system 200 is reflected in a virtual object included in the view of the mixed reality space provided by the MR system 400.
- the movement of the MR user 6 using the MR system 400 is reflected in a virtual object included in the view of the virtual space provided by the VR system 200.
- the motion of the VR user and the like are reflected in the virtual objects in the virtual space and the mixed reality space in real time.
- the motion of the MR user 6 and the like are reflected in the virtual objects in the virtual space and the mixed reality space in real time.
- the configuration according to this embodiment is applied to a service (in other words, an application) that enables communication between an MR user 6 and a VR user.
- a service in other words, an application
- the configuration according to this embodiment is applied to a service that enables an MR user 6 in a conference room as a specific real space and a VR user in a location away from the conference room to hold a conference while simultaneously viewing an object such as a product mockup as a virtual object.
- the configuration according to this embodiment can also be applied to a system that enables a student to take school classes from home.
- the configuration according to this embodiment can also be applied to a system that enables a student to participate in a home party held at a specific home from another location.
- the application of the configuration according to this embodiment is not limited to these services.
- the configuration according to this embodiment is applied to a conference room in which a plurality of detection devices 460 are installed in advance at specific positions in the conference room as shown in FIG. 8.
- the configuration according to this embodiment is applied to a system that enables a student to participate in a home party held at a specific home from another location.
- the configuration according to this embodiment is applied to a conference room in which a plurality of detection devices 460 are installed in advance at specific positions in the conference room as shown in FIG.
- the configuration according to this embodiment is applied to a system that enables a student to participate in a home party held at a specific home from another location.
- the avatar object of the VR user is referred to as the VR avatar 25.
- the avatar object of the MR user 6 is referred to as the MR avatar 26.
- the avatar object of the MR user 6A is referred to as the MR avatar 26A
- the avatar object of the MR user 6B is referred to as the MR avatar 26B
- the avatar object of the MR user 6C is referred to as the MR avatar 26C.
- FIG. 8 is a schematic diagram showing the state of the real conference room 21 and the state of the virtual space 11 when MR users 6A, 6B, 6C and a VR user are using a service.
- the upper part of FIG. 8 shows the state of the real conference room 21, and the lower part of FIG. 8 shows the state of the virtual space 11. Note that in FIG.
- the VR avatar 25 is wearing the VR device 210, but this is for ease of explanation, and in reality, the VR avatar 25 does not need to wear the VR device 210 (virtual VR device 210). Also, in FIG. 8, the MR avatar 26 is not wearing an MR device 410 (virtual MR device 410), but the MR avatar 26 may be wearing an MR device 410.
- a desk 8 and the like are arranged in the conference room 21 as real objects.
- Three detection devices 460 are also arranged in the conference room 21.
- Three MR users 6A, 6B, and 6C are also present in the conference room 21.
- no VR users are present in the conference room 21.
- a VR avatar 25 and a mock-up virtual object 30 (hereinafter also referred to as a "virtual model 30") are displayed as virtual objects on the display 411 of the MR device 410 used by each of the MR users 6A, 6B, and 6C. That is, the MR device 410 displays the VR avatar 25 and the virtual model 30 in the real conference room 21 visible through the transparent display 411. Therefore, the MR users 6A, 6B, and 6C are provided with a view as if the VR avatar 25 and the virtual model 30, which do not actually exist in the conference room 21, exist in the conference room 21.
- the virtual space 11 that the VR user sees through the VR device 210 is modeled after the conference room 21, and includes a virtual object 31 of a desk 8 that exists in the real conference room 21.
- the virtual space 11 also contains MR avatars 26A, 26B, 26C of the MR users 6A, 6B, 6C, a virtual model 30, and the like. This provides the VR user with a view as if he or she were in the conference room 21 where the MR users 6A, 6B, 6C are located.
- the MR user 6 can see other MR users 6 and real objects that are actually present in the same place through the transparent display 411.
- the VR avatar 25 of the VR user that appears as a virtual object can be seen. Therefore, the MR user 6 can communicate with the VR user and other MR users 6 without losing the sense of being in the real world.
- the VR user is in a different place from the MR user 6 in the real world, and in such a case, the shape of the room where the VR user is and the place where the MR user 6 is often different.
- the VR user also uses the MR device 410 or the like to display the MR avatar 26 in the real space, there is a risk that the display will be unnatural.
- the VR user can enter the virtual space 11 and communicate with the MR user 6, so that such an unnatural feeling can be prevented.
- the virtual space 11 provided to the VR user mimics the location of the MR user 6, when the VR user or MR user 6 moves around or moves a virtual object in the virtual space 11 or real space, respectively, the movements of the avatar or virtual model 30 displayed to the other party become natural.
- the VR user or MR user 6 operates a virtual object such as the virtual model 30, it becomes easy for them to imagine how it will look to the other party, enabling smooth communication.
- each of the VR system 200, the MR system 400, and the server 600 may have at least some of the functions of the other devices.
- some or all of the functional blocks of the computer 300, the computer 500, and the server 600 in this embodiment may be provided by the computer 300, the computer 500, the server 600, or other devices.
- each of the devices such as the computer 300, the computer 500, and the server 600 does not have to be realized by an integrated device, and may be realized by, for example, multiple devices connected via a network, etc.
- the processor 301, processor 501, or processor 601 will be described as executing each process described below by executing a program stored in the information processing system 100.
- the processor 301 may be executed by a processor other than the processor 301.
- at least a part of the process described below and performed by the processor 501 may be executed by a processor other than the processor 501.
- at least a part of the process described below and performed by the processor 601 may be executed by a processor other than the processor 601.
- the computer that executes the program in this embodiment may be any computer including the computer 300, the computer 500, and the server 600, or may be realized by a combination of multiple devices.
- FIG. 9 is a block diagram showing the functional configuration of the information processing system 100.
- the computer 300 (in other words, the VR system 200) functions as a control unit 310 and a storage unit 311 through cooperation between the processor 301, memory 302, storage 303, input/output interface 304, and communication interface 305.
- the computer 500 (in other words, the MR system 400) functions as a control unit 510 and a storage unit 511 through cooperation between the processor 501, memory 502, storage 503, input/output interface 504, and communication interface 505.
- the server 600 functions as a control unit 610 and a storage unit 611 through cooperation between the processor 601, memory 602, storage 603, input/output interface 604, and communication interface 605.
- the control unit 510 of the MR system 400 includes a virtual space generation unit 810, a coordinate definition unit 812, an MR side input reception unit 816, a user information acquisition unit 818, an MR side object control unit 820, a display control unit 840, a sound control unit 845, and a communication control unit 850.
- the virtual space generating unit 810 generates a virtual space (in other words, virtual space data representing a virtual space) based on a predetermined real space.
- the virtual space generating unit 810 generates a virtual space that imitates a predetermined real space.
- the predetermined real space is a predetermined place that exists in the real world, and may be, for example, a specific room such as a conference room or a school classroom.
- the predetermined real space may also be, for example, a school or a specific building such as a house.
- the predetermined real space may also be, for example, a specific town. In other words, the predetermined real space does not have to be a space separated by walls or the like.
- simulating a predetermined real space means that the generated virtual space has a structure similar to the basic structure of the real space.
- a virtual space that imitates a real-world conference room can be one in which the shape of the virtual room as a virtual space (for example, the shape of the walls, floor, etc.) is approximately the same as the shape of the conference room in the real world, and virtual objects corresponding to real objects such as desks and chairs that exist in the conference room in the real world are arranged.
- virtual objects such as desks, chairs, walls, and floors do not need to be exact copies of the shapes of real objects, and may be simplified in shape, pattern, color, etc.
- real objects such as posters on the wall or small items placed on a desk or floor may exist that do not appear in the virtual world (real objects that do not have corresponding virtual objects).
- the specified real space is a specific conference room 21, and a virtual space 11 that mimics this specific conference room 21 is generated.
- a publicly known method can be used to generate a virtual space that imitates a real space, and the method is not particularly limited, but may be, for example, as follows. That is, the virtual space generation unit 810 generates the virtual space 11 based on information from a sensor that can detect the shapes and positions of real objects that constitute the real space, such as walls, floors, desks, and chairs. Specifically, the virtual space generation unit 810 may obtain three-dimensional information of the real space based on information from an image sensor (e.g., an image sensor that obtains RGB images, an image sensor that obtains black and white images, or a depth sensor) provided in the detection device 460 or the MR device 410, and generate the virtual space. In addition, the virtual space generation unit 810 may use information from, for example, an acceleration sensor, an angular velocity sensor, or a geomagnetic sensor to generate the virtual space 11.
- an acceleration sensor e.g., an angular velocity sensor, or a geomagnetic sensor
- the virtual space generation unit 810 stores data representing the generated virtual space 11 (hereinafter referred to as "virtual space data"), for example, in the storage unit 611, which serves as a virtual space data storage unit.
- the virtual space generation unit 810 may generate virtual space data representing the virtual space 11 in advance before the VR user or MR user 6 starts using the service. Also, the virtual space generation unit 810 may generate virtual space data representing the virtual space 11 in real time, for example, while the VR user or MR user 6 is using the service.
- the coordinate definition unit 812 defines the coordinates of the real space (in other words, the coordinates of the mixed reality space 21, hereinafter referred to as “mixed reality coordinates").
- the coordinate definition unit 812 also defines the coordinates of the virtual space 11 (hereinafter referred to as “virtual space coordinates").
- the mixed reality coordinates have three mutually orthogonal axes, for example, the x-axis, y-axis, and z-axis.
- the virtual space coordinates have three mutually orthogonal axes, for example, the x-axis, y-axis, and z-axis.
- the coordinate definition unit 812 defines (in other words, associates) each coordinate for each point of the virtual space 11 (in other words, the virtual conference room) that corresponds to (in other words, indicates the same point) each point of the real space (in other words, the real conference room 21) so that the mixed reality coordinates indicating each point of the real space and the virtual space coordinates indicating each point of the virtual space correspond one-to-one.
- the coordinate definition unit 812 defines the virtual space coordinates associated with the mixed reality coordinates.
- the coordinate definition unit 812 may associate the mixed reality coordinates with the virtual space coordinates based on, for example, a feature point of the conference room detected by the detection device 460 or the MR device 410.
- the coordinate definition unit 812 may associate the mixed reality coordinates with the virtual space coordinates, for example, based on the position of the detection device 460 or the position of a marker or the like that has been installed in advance in the conference room.
- the coordinate definition unit 812 also stores information about the correspondence between mixed reality coordinates and virtual space coordinates (in other words, the correspondence between each point in the real space and each point in the virtual space) in the storage unit 611, which functions as a correspondence storage unit.
- the method for defining mixed reality coordinates and virtual space coordinates can be any known method, and is not particularly limited.
- the timing for defining the mixed reality coordinates and the virtual space coordinates may be, for example, when the virtual space generating unit 810 generates a virtual space that imitates the real space, or when the MR device 410 starts displaying a virtual object.
- the generation of the virtual space and the definition of each coordinate may be performed in advance, for example, by a dedicated device serving as external device 700 capable of scanning real space with high accuracy, and the generated data may be stored in storage unit 611.
- the MR side input receiving unit 816 receives input from the MR user 6. In other words, the MR side input receiving unit 816 acquires input information from the MR user 6. Specifically, the MR side input receiving unit 816 receives the output of the detection device 460, the controller 480, the camera 413, the device worn by the MR user, the gaze sensor 412, the sensor 417, the sensor 486, and the image sensors provided in the detection device 460 and the MR device 410 as input from the MR user 6.
- the MR side input receiving unit 816 receives the output of the detection means (e.g., the detection device 460, the controller 480, the camera 413, the gaze sensor 412, the sensor 417, the sensor 486, and the image sensors provided in the detection device 460 and the MR device 410) that detects the movement of the MR user 6 as input from the MR user 6.
- the detection means e.g., the detection device 460, the controller 480, the camera 413, the gaze sensor 412, the sensor 417, the sensor 486, and the image sensors provided in the detection device 460 and the MR device 4
- these devices and sensors are intended to obtain information about the movements of the MR user 6, which is used to control virtual objects in the virtual space 11 and the mixed reality space 21, and the MR user 6 can input information to the MR system 400 to move the virtual objects, etc., by his or her own movements.
- the MR side input receiving unit 816 may receive, for example, output from the camera or camera 413 serving as the detection device 460 as input from the MR user 6. More specifically, the MR side input receiving unit 816 may receive, for example, position information indicating the position of the MR user 6 in the mixed reality space 21, detected by image recognition from an image captured by an image sensor provided in each of these cameras, as input from the MR user 6. In other words, the MR side input receiving unit 816 may receive, for example, output from a position detection means that detects the position of the MR user 6 in the mixed reality space 21 as input from the MR user 6.
- the position detection means may detect the position of the MR user 6 and acquire the position information based on, for example, positioning based on wireless communication (e.g., Wi-Fi communication, Bluetooth communication, or UWB communication) between the MR device 410 and a specific device of the MR system 400 (e.g., the detection device 460 or a beacon (not shown)), or positioning using a GPS (Global Positioning System) sensor provided in the MR device 410.
- the position information indicating the position of the MR user 6 can also be considered information regarding the movement of the MR user 6.
- the MR side input receiving unit 816 may also receive, as input from the MR user 6, information regarding the movement of the MR user 6 detected by image recognition from an image captured by a camera serving as the detection device 460 or an image sensor provided in the camera 413.
- the MR side input receiving unit 816 may receive, as input from the MR user 6, information regarding the hand movement of the MR user 6 detected by image recognition, or information regarding the inclination or facing direction of the MR user 6.
- the MR side input receiving unit 816 may also receive, as input from the MR user 6, information regarding the movements of the MR user 6 obtained using, for example, a device worn by the MR user 6 (for example, a wearable device such as a watch-type, wristband-type, ring-type, or clothing-type device, or an implantable device) capable of tracking the movements of the MR user 6 (and a device that tracks the movements of the MR user 6 in cooperation with the device via short-range wireless communication, etc.).
- a device worn by the MR user 6 for example, a wearable device such as a watch-type, wristband-type, ring-type, or clothing-type device, or an implantable device capable of tracking the movements of the MR user 6 (and a device that tracks the movements of the MR user 6 in cooperation with the device via short-range wireless communication, etc.
- the MR side input receiving unit 816 may also receive, for example, information indicating the operation of the MR user 6 detected by the controller 480 (in other words, information regarding the movement of the MR user 6) as input from the MR user 6.
- the MR side input receiving unit 816 may also receive output data (in other words, information regarding the movement of the MR user 6) regarding the inclination or direction of the MR device 410 from a sensor (e.g., an acceleration sensor, an angular velocity sensor, a geomagnetic sensor, etc.) provided in the detection device 460 or the MR device 410 as input from the MR user 6.
- a sensor e.g., an acceleration sensor, an angular velocity sensor, a geomagnetic sensor, etc.
- the user information acquisition unit 818 acquires information about the MR user 6 present in the mixed reality space 21. Specifically, for example, the user information acquisition unit 818 acquires identification information that enables each MR user 6A, 6B, 6C in the mixed reality space 21 to be identified (in other words, identification information that enables each MR device 410 to be identified). For example, the user information acquisition unit 818 may communicate with the MR device 410 worn by each user and acquire information about the user using the MR device 410 from the MR device 410 (for example, information about the account logged in to the MR device 410, etc.) as the identification information.
- the user information acquisition unit 818 may communicate with the MR device 410 worn by each user and acquire information specific to each MR device 410 that enables each MR device 410 to be identified from the MR device 410 as the identification information. Also, for example, the user information acquisition unit 818 may acquire the identification information by identifying the MR user 6 in the mixed reality space 21 by image recognition from an image captured by an image sensor provided in the detection device 460 or the MR device 410. The user information acquisition unit 818 also associates the information acquired by the MR side input acceptance unit 816 with the identification information. In other words, the user information acquisition unit 818 controls so that it is possible to know which MR user 6 the information belongs to when information about the movement of the MR user 6 is used in controlling a virtual object, which will be described later.
- the MR side object control unit 820 controls virtual objects in the mixed reality space 21.
- the MR-side object control unit 820 places virtual objects in the mixed reality space 21. Specifically, the MR-side object control unit 820 places, for example, the VR avatar 25 of the VR user, and objects that are given predetermined changes by at least one of the VR user and the MR user 6. In this embodiment, as shown in FIG. 8, the MR-side object control unit 820 places the VR avatar 25 and a mock-up virtual object 30 (hereinafter also referred to as the "virtual model 30") that can be moved by the VR user and the MR user 6 in the mixed reality space 21.
- a mock-up virtual object 30 hereinafter also referred to as the "virtual model 30"
- the MR-side object control unit 820 places a virtual object corresponding to the virtual object at a position in the mixed reality space 21 corresponding to the position where the virtual object in the virtual space 11 is placed, for example.
- the virtual object corresponding to the virtual object i.e., the virtual object in the mixed reality space 21 corresponding to the virtual object in the virtual space 11
- a virtual model 30 having the same form as the virtual model 30 in the virtual space 11 is placed in the mixed reality space 21.
- a VR avatar 25 having the same form as the VR avatar 25 in the virtual space 11 is placed in the mixed reality space 21.
- the placement of the VR avatar 25 in the mixed reality space 21 can also be described as follows. That is, the MR-side object control unit 820 can also be said to place the VR avatar 25 at a position in the mixed reality space 21 that corresponds to the position of the VR user in the virtual space 11.
- the position of the VR user in the virtual space 11 is, for example, the position of the VR avatar 25 in the virtual space 11.
- the VR user in content in which the VR user enters the virtual space 11 from a first-person perspective, there may be cases in which the VR user (the VR avatar 25) cannot be seen (specifically, only a part of the user's body, such as the hands, or even a part of the user cannot be seen), but even in such cases, the VR user in the virtual space 11 recognized by the computer 300 can be said to be the VR avatar 25, and the position of the VR user in the virtual space 11 recognized by the computer 300 can be said to be the position of the VR avatar 25 in the virtual space.
- the appearance (in other words, the form) of the VR avatar 25 may imitate the appearance of the VR user, but it does not have to imitate the appearance.
- the appearance of the VR avatar 25 may imitate the appearance of a specific animal.
- the VR avatar 25 placed in the virtual space 11 and the VR avatar 25 placed in the mixed reality space 21 may have different appearances. With this configuration, the VR user can display his/her avatar in the mixed reality space 21 while hiding the form of his/her avatar in the virtual space 11.
- the appearance of the VR avatar 25 placed in the virtual space 11 may be an appearance that is visible to the VR user operating the VR avatar 25, or an appearance that is visible to other VR users operating other VR avatars 25 in the virtual space 11 in which the VR avatar 25 exists.
- the MR-side object control unit 820 may also place a virtual object in the mixed reality space 21, for example, as follows:
- the MR-side object control unit 820 determines where in the mixed reality space 21 to place the VR avatar 25 based on position information indicating the position of the VR user (in other words, the VR avatar 25) in the virtual space 11. Specifically, for example, when the VR-side object control unit 920 described later places the VR avatar 25 in the virtual space 11, it transmits information regarding the position of the VR avatar 25 in the virtual space 11 (for example, the coordinate value of the virtual space coordinates) to the MR-side object control unit 820 via the server 600.
- the MR-side object control unit 820 places the VR avatar 25 at a position in the mixed reality space 21 corresponding to the position of the VR user in the virtual space 11 (for example, the position of the coordinate value of the mixed reality coordinates corresponding to the coordinate value of the virtual space coordinates).
- the VR avatar 25 is placed at the same position in the conference room in both the virtual space 11 and the mixed reality space 21.
- the MR side object control unit 820 may determine the position in the mixed reality space 21 to place the virtual object based on position information (e.g., position information transmitted by the VR side object control unit 920) indicating the position of the virtual object (e.g., the VR avatar 25 or the virtual model 30, etc.) in the virtual space corresponding to the virtual object.
- position information e.g., position information transmitted by the VR side object control unit 920
- the MR-side object control unit 820 may determine at what position in the mixed reality space 21 to place the virtual object based on information detected by a predetermined sensor of the MR system 400. Specifically, for example, a predetermined marker may be set up in advance in the real space, and the MR-side object control unit 820 may place the virtual model 30 as a virtual object at the position of the marker photographed by the image sensor provided in the detection device 460 or the MR device 410. Also, the MR-side object control unit 820 may place the virtual model 30 as a virtual object at a position indicated by the MR user 6.
- the instruction may be made by a predetermined gesture (for example, a gesture of pointing at the location where the virtual model 30 is to be placed), or may be made to place the marker, etc.
- the MR-side object control unit 820 may detect a flat surface in the mixed reality space 21 from an image captured by an image sensor provided in the detection device 460 or the MR device 410, and place the virtual model 30 on the flat surface.
- the MR-side object control unit 820 When arranging a virtual object in the mixed reality space 21, the MR-side object control unit 820 receives object data indicating the form of the virtual object, and arranges the virtual object based on the object data.
- the MR-side object control unit 820 may receive the object data, for example, from the control unit 610 of the server 600, or from the VR-side object control unit 920 of the VR system 200.
- the MR-side object control unit 820 may receive object data indicating the form of the VR avatar 25 from the control unit 610, and arrange the VR avatar 25 in the form indicated by the object data in the mixed reality space 21.
- the MR-side object control unit 820 may receive object data indicating the form of the VR avatar 25 from the VR-side object control unit 920, and arrange the VR avatar 25 in the form indicated by the object data in the mixed reality space 21.
- the display control unit 840 controls the image display on the display 411 of the MR device 410.
- the display control unit 840 generates an image for displaying a virtual object in the mixed reality space 21 placed by the MR side object control unit 820 at the position placed by the MR side object control unit 820.
- the display control unit 840 also causes the image to be displayed on the display 411. This provides the MR user 6 with a view of the mixed reality space in which the virtual object is placed at the desired position in the real space.
- the display control unit 840 also controls the image display on the display 470.
- the display control unit 840 causes the display 470 to display an image similar to the image displayed on the display 411.
- the display control unit 840 may also cause the display 470 to display an image showing a view of the mixed reality space provided by the MR device 410 to the MR user 6.
- the sound control unit 845 acquires sound data corresponding to the speech.
- the sound control unit 845 also transmits the acquired sound data to the computer 300, etc. via the network 2.
- the sound control unit 845 receives sound data from the computer 300 via the network 2, it outputs sound (speech) corresponding to the sound data from the speaker 416.
- the MR side input receiving unit 816 may also receive sound data related to the speech of the MR user 6 detected by the microphone 415 as input from the MR user 6.
- the communication control unit 850 can communicate with the server 600, the computer 300, and other information and communication devices via the network 2.
- the communication control unit 850 transmits, for example, information used by the server 600 or the computer 300 to the server 600 or the computer 300.
- the communication control unit 850 also receives, for example, information used by the computer 500 from the server 600 or the computer 300.
- the control unit 310 of the VR system 200 includes a VR input receiving unit 916, a VR object control unit 920, a virtual camera control unit 930, a display control unit 940, a sound control unit 945, and a communication control unit 950.
- the VR side input receiving unit 916 receives input from the VR user. In other words, the VR side input receiving unit 916 acquires input information from the VR user. Specifically, the VR side input receiving unit 916 receives outputs from the detection device 260, the controller 280, the first camera 213, the second camera 214, a wearable device worn by the VR user, the gaze sensor 212, the sensor 217, the sensor 286, and image sensors provided in the detection device 260 and the VR device 210 as input from the VR user.
- the VR-side input receiving unit 916 receives the output of detection means for detecting the movements of the VR user (e.g., the detection device 260, the controller 280, the first camera 213, the second camera 214, a wearable device worn by the VR user, the gaze sensor 212, the sensor 217, the sensor 286, and the image sensors provided in the detection device 260 and the VR device 210) as input from the VR user.
- these devices and sensors are for obtaining information about the movements of the VR user that is used to control virtual objects in the virtual space 11 and the mixed reality space 21, and the VR user can input information for moving the virtual objects, etc., to the VR system 200 through his or her own movements.
- the VR side input receiving unit 916 may receive, for example, output from a camera serving as the detection device 260 or a camera provided in the VR device 210 that captures the surroundings of the VR device 210 as input from the VR user. More specifically, the VR side input receiving unit 916 may receive, as input from the VR user, position information indicating the position of the VR user in real space, detected by image recognition from images captured by the image sensors provided in each of these cameras. In other words, the VR side input receiving unit 916 may receive, as input from the VR user, output from a position detection means that detects the position of the VR user in real space.
- the position detection means may detect the position of the VR user and acquire the position information based on, for example, positioning based on wireless communication (e.g., Wi-Fi communication, Bluetooth communication, or UWB communication) between the VR device 210 and a specific device of the VR system 200 (e.g., detection device 260 or a beacon (not shown)), or positioning using a GPS (Global Positioning System) sensor provided in the VR device 210.
- the position information indicating the position of the VR user can also be considered information regarding the movement of the VR user.
- the VR-side input receiving unit 916 may also receive, as input from the VR user, information about the VR user's movements detected by image recognition from images captured by an image sensor provided in a camera serving as the detection device 260 or a camera provided in the VR device 210 that captures the surroundings of the VR device 210.
- the VR-side input receiving unit 916 may receive, as input from the VR user, information about the VR user's hand movements detected by image recognition, or information about the VR user's inclination or facing direction.
- the VR side input receiving unit 916 may also receive, as input from a VR user, information regarding the user's movements obtained using, for example, a device worn by the VR user (for example, a wearable device such as a watch-type, wristband-type, ring-type, or clothing-type device, or an implantable device) that can track the movements of the VR user (and a device that tracks the movements of the MR user 6 in cooperation with the device via short-range wireless communication, etc.).
- a device worn by the VR user for example, a wearable device such as a watch-type, wristband-type, ring-type, or clothing-type device, or an implantable device
- a device worn by the VR user for example, a wearable device such as a watch-type, wristband-type, ring-type, or clothing-type device, or an implantable device that can track the movements of the VR user (and a device that tracks the movements of the MR user 6 in cooperation with the device via short-range wireless communication, etc.
- the VR-side input receiving unit 916 may also receive, for example, information indicating the VR user's operation detected by the controller 280 (in other words, information regarding the VR user's movements) as input from the VR user.
- the VR-side input receiving unit 916 may also receive output data (in other words, information regarding the VR user's movements) regarding the inclination or direction of the VR device 210 from a sensor (e.g., an acceleration sensor, an angular velocity sensor, a geomagnetic sensor, etc.) provided in the detection device 260 or the VR device 210 as input from the VR user.
- a sensor e.g., an acceleration sensor, an angular velocity sensor, a geomagnetic sensor, etc.
- the control unit 310 controls the virtual space 11.
- the control unit 310 acquires virtual space data representing the virtual space 11 stored in the storage unit 611, and defines the virtual space 11 to be provided to the VR user based on the virtual space data.
- the VR side object control unit 920 controls the virtual objects in the virtual space 11.
- the VR-side object control unit 920 places a virtual object in the virtual space 11 indicated by the virtual space data.
- the object data indicating the virtual object is stored, for example, in the storage unit 611 or the storage unit 311 as an object data storage unit.
- the VR-side object control unit 920 then uses the object data to place the virtual object in the virtual space 11.
- the VR-side object control unit 920 places, for example, in a virtual conference room, MR avatars 26A, 26B, 26C of MR users 6A, 6B, 6C, and virtual objects that are given predetermined changes by at least one of the VR user and MR user 6.
- the VR-side object control unit 920 places, in the virtual space 11, the VR avatar 25, the MR avatar 26, and a mock-up virtual object 30 (hereinafter also referred to as the "virtual model 30") that can be moved by the VR user and MR user 6.
- a virtual object 31 corresponding to a desk 8 as a real object is also placed in the virtual space 11.
- the VR-side object control unit 920 may place a VR avatar 25 of the other VR user in the virtual space 11.
- the VR avatar 25 of the other VR user can be operated by the other VR user.
- the VR-side object control unit 920 places the MR avatar 26 of the MR user 6 at a position in the virtual space 11 that corresponds to the position of the MR user 6 in the mixed reality space 21.
- the VR-side object control unit 920 places the MR avatars 26A, 26B, and 26C so that the positions of the MR users 6A, 6B, and 6C in the real conference room 21 are the same as the positions of the MR avatars 26A, 26B, and 26C in the virtual conference room.
- the appearance (in other words, the form) of the MR avatar 26 may imitate the appearance of the MR user 6, but it does not have to imitate it.
- the appearance of the MR avatar 26 may imitate the appearance of a specific animal.
- the VR-side object control unit 920 receives object data indicating the form of the virtual object, and places the virtual object based on the object data.
- the VR-side object control unit 920 may receive the object data from the control unit 610 of the server 600, or may receive it from the MR-side object control unit 820 of the MR system 400.
- the VR-side object control unit 920 may receive object data indicating the form of the MR avatar 26 from the control unit 610 or the MR-side object control unit 820, and place the MR avatar 26 in the form indicated by the object data in the virtual space 11.
- the appearance of the MR avatar 26 may be preset by the MR user 6, and when the MR avatar 26 is displayed on the VR device 210, it may be displayed with the appearance set by the MR user 6.
- the VR-side object control unit 920 may place the MR avatar 26 in the virtual space 11 (e.g., generated by the control unit 510) based on an image of the MR user 6 acquired by a specific camera such as the camera 413 or the camera serving as the detection device 460.
- the virtual camera control unit 930 places the virtual camera 14 in the virtual space 11.
- the virtual camera control unit 930 also controls the position of the virtual camera 14 in the virtual space 11 and the tilt (direction) of the virtual camera 14.
- the virtual camera control unit 930 places the virtual camera 14 at the eye position of the VR avatar 25 in the virtual space 11.
- the virtual camera control unit 930 links the position of the virtual camera 14 to the position of the VR avatar 25, and moves the virtual camera 14 in the virtual space 11 when the VR avatar 25 moves in the virtual space 11.
- the position of the virtual camera 14 does not have to be linked to the position of the VR avatar 25. For example, it may be possible to move the VR avatar 25 in the virtual space 11 while keeping the virtual camera 14 fixed in a predetermined position.
- the display control unit 940 controls the image display on the display 211 of the VR device 210.
- the display control unit 940 defines the field of view 15 according to the position and tilt of the virtual camera 14 (in other words, the tilt of the head of the VR user wearing the VR device 210).
- the display control unit 940 also generates a field of view image 17 to be displayed on the display 211 based on the defined field of view 15.
- the field of view image 17 generated by the display control unit 940 is output to the VR device 210.
- the display control unit 940 also controls the image display on the display 270.
- the display control unit 940 causes the display 270 to display an image similar to the image displayed on the display 211.
- the sound control unit 945 When the sound control unit 945 detects speech from the VR user using the microphone 215 from the VR device 210, it acquires sound data corresponding to the speech. The sound control unit 945 also transmits the acquired sound data to the computer 500 or other VR users' computers 300 via the network 2. When the sound control unit 945 receives sound data from the computer 500 or other users' computers 300 via the network 2, it outputs sound (speech) corresponding to the sound data from the speaker 216. This allows the VR user to communicate with the MR user 6, for example, by phone call.
- the VR side input receiving unit 916 may also accept sound data related to the VR user's speech detected by the microphone 215 as input from the VR user.
- the communication control unit 950 can communicate with the server 600, the computer 500, other VR users' computers 300, and other information and communication devices via the network 2.
- the communication control unit 950 transmits, for example, information used by the server 600, the computer 500, or other VR users' computers 300 to the server 600, the computer 500, or other VR users' computers 300.
- the communication control unit 850 also receives, for example, information used by the computer 300 from the server 600, the computer 500, or other VR users' computers 300.
- the virtual objects displayed by the MR device 410 and the virtual objects displayed by the VR device 210 are controlled based on input from the MR user 6 acquired by the MR side input receiving unit 816.
- the MR-side object control unit 820 applies a predetermined change to a virtual object in the mixed reality space 21, specifically the virtual model 30, based on input from the MR user 6 received by the MR-side input receiving unit 816.
- the predetermined change may be a change to move a virtual object in the mixed reality space 21, such as moving the virtual object, changing the inclination or direction of the virtual object, or changing the relative positional relationship between parts of the virtual object.
- the predetermined change may be a change to the color of the virtual object, a change to information displayed by the virtual object, or a change to the form of the virtual object.
- the MR-side object control unit 820 moves the virtual model 30 in the mixed reality space 21 based on, for example, information on the movement of the MR user 6 received by the MR-side input receiving unit 816. Specifically, for example, when a gesture of the MR user 6 carrying the virtual model 30 is detected by a detection means (for example, the detection device 460 or the camera 413, etc.) and the detection means outputs information related to the gesture, the MR-side input receiving unit 816 receives the output as an input from the MR user 6. Also, based on the input received by the MR-side input receiving unit 816, the MR-side object control unit 820 moves the virtual model 30 in the mixed reality space 21 according to the instruction from the MR user 6 by the gesture.
- a detection means for example, the detection device 460 or the camera 413, etc.
- the gesture of the MR user 6 that causes a predetermined change to the virtual model 30 as a virtual object does not have to be one that touches the virtual model 30 in the mixed reality space 21.
- the MR-side object control unit 820 may also make a predetermined change to a virtual object based on, for example, information about the operation of the MR user 6 on the controller 480 (in other words, information about the movement of the MR user 6) received by the MR-side input receiving unit 816.
- the MR-side object control unit 820 may also make a predetermined change to a virtual object based on, for example, sound data about the speech of the MR user 6 received by the MR-side input receiving unit 816.
- the VR-side object control unit 920 also applies predetermined changes to virtual objects in the virtual space 11 based on input from the MR user 6 received by the MR-side input receiving unit 816.
- the VR-side object control unit 920 applies changes to the virtual model 30 in the virtual space 11 similar to the changes applied to the virtual model 30 in the mixed reality space 21 based on, for example, input from the MR user 6 received by the MR-side input receiving unit 816. That is, for example, as described above, when the virtual model 30 in the mixed reality space 21 moves due to a gesture of the MR user 6 to carry the virtual model 30, the VR-side object control unit 920 moves the virtual model 30 in the virtual space 11 in the same manner.
- the method of imparting a change to the virtual model 30 in the virtual space similar to the change imparted to the virtual model 30 in the mixed reality space 21 is not particularly limited, but may be, for example, as follows. That is, for example, when the MR-side object control unit 820 moves the virtual model 30 (in other words, the virtual object) in the mixed reality space 21 based on an input from the MR user 6 (in other words, at a predetermined trigger), it may send information indicating the position and tilt of the virtual model 30 after the movement (in other words, information regarding the state of the virtual model 30) to the VR-side object control unit 920.
- the VR-side object control unit 920 may place the virtual model 30 at the position indicated by the information in the virtual space 11, or place the virtual model 30 at the tilt indicated by the information.
- the communication control unit 850 may send information based on the input from the MR user 6 (for example, information on the movement amount, movement trajectory, inclination, etc. of the virtual model 30 calculated (in other words, acquired) by the control unit 510 based on the input) to the communication control unit 950, and the VR-side object control unit 920 may move a virtual object such as the virtual model 30 based on the information.
- the VR-side object control unit 920 makes a predetermined change to the virtual object in the virtual space 11 based on the input from the MR user 6 accepted by the MR-side input acceptance unit 816, but "based on the input from the MR user 6" is not limited to the VR-side object control unit 920 itself receiving the input and controlling the virtual object, and may be any virtual object in the virtual space 11 that ultimately makes a predetermined change in response to the input.
- the VR-side object control unit 920 moves the MR avatar 26 in the virtual space 11 based on, for example, input from the MR user 6 received by the MR-side input receiving unit 816. Specifically, the VR-side object control unit 920 moves the MR avatar 26 based on, for example, information on the movement of the MR user 6 received by the MR-side input receiving unit 816. For example, the VR-side object control unit 920 moves the MR avatar 26 based on position information indicating the position of the MR user 6 in the mixed reality space 21 received by the MR-side input receiving unit 816 as input from the MR user 6.
- the VR-side object control unit 920 places the MR avatar 26 at a position in the virtual space 11 corresponding to the position of the MR user 6 in the mixed reality space 21 based on the position information, and when the MR user 6 moves in the mixed reality space 21, places the MR avatar 26 at a position in the virtual space 11 corresponding to the position after the movement.
- the VR-side object control unit 920 also moves the MR avatar 26 based on, for example, information on the movements of each part of the MR user 6's body (e.g., hand movements, head movements, eye movements, changes in facial expression, etc.) and information on the inclination and facing direction of the MR user 6, which are received by the MR-side input receiving unit 816 as input from the MR user 6. That is, the VR-side object control unit 920 reflects the movements of each part of the MR user 6's body (in other words, posture) and the inclination and facing direction of the MR user 6 in the MR avatar 26 in the virtual space 11 based on each of these pieces of information.
- the VR-side object control unit 920 controls the movement of the MR avatar 26 so that the movement of the MR avatar 26 in the virtual space 11 imitates the movement of the MR user 6 detected by a detection means for detecting the movement of the MR user 6.
- the VR-side object control unit 920 controls the movement of the MR avatar 26 so that the movement of at least part of the body (e.g., hands, feet, head, eyes, mouth, etc.) of the MR avatar 26 is linked to the movement of the MR user 6.
- the movement of the MR avatar 26 may be realized by the MR user 6 operating the controller 480 (e.g., operating an analog stick, button, etc.). That is, for example, the VR-side object control unit 920 may move a part of the body of the MR avatar 26 based on information indicating the MR user 6's operation on the controller 480 as input from the MR user 6.
- At least one of the position and movement of the MR avatar 26 in the virtual space 11 does not have to be linked to the position or movement of the MR user 6 in the mixed reality space 21. That is, for example, even if the MR user 6 moves in the mixed reality space 21, the MR avatar 26 in the virtual space 11 does not have to move in response to this. Also, for example, even if the MR user 6 moves his/her hand in the mixed reality space 21, the MR avatar 26 in the virtual space 11 does not have to make the same movement.
- the virtual objects displayed by the VR device 210 and the virtual objects displayed by the MR device 410 are controlled based on input from the VR user acquired by the VR-side input receiving unit 916.
- the VR-side object control unit 920 applies a predetermined change to a virtual object in the virtual space 11, specifically the virtual model 30, based on the input from the VR user received by the VR-side input receiving unit 916.
- the VR-side object control unit 920 makes a predetermined change to the virtual model 30 in the virtual space 11 based on, for example, information indicating the VR user's operation on the controller 280 (in other words, information regarding the VR user's movements) received by the VR-side input receiving unit 916. Specifically, for example, the VR-side object control unit 920 moves the virtual model 30 in the virtual space 11 according to instructions from the VR user via operations on the controller 280.
- the VR-side object control unit 920 may also make a predetermined change to a virtual object based on, for example, a gesture of the VR user detected by a detection means.
- the VR-side object control unit 920 may also make a predetermined change to a virtual object based on, for example, sound data related to the speech of the VR user received by the VR-side input receiving unit 916.
- the MR-side object control unit 820 also applies predetermined changes to virtual objects in the mixed reality space 21 based on input from the VR user received by the VR-side input receiving unit 916.
- the MR-side object control unit 820 applies changes to the virtual model 30 in the mixed reality space 21 similar to the changes applied to the virtual model 30 in the virtual space 11 based on, for example, input from the VR user received by the VR-side input receiving unit 916. That is, for example, as described above, when the virtual model 30 in the virtual space 11 moves due to the VR user's operation on the controller 280, the MR-side object control unit 820 moves the virtual model 30 in the mixed reality space 21 in the same manner.
- the method of imparting a change to the virtual model 30 in the mixed reality space 21 similar to the change imparted to the virtual model 30 in the virtual space 11 is not particularly limited, but may be, for example, as follows. That is, for example, when the VR-side object control unit 920 moves the virtual model 30 (in other words, the virtual object) in the virtual space 11 based on input from the VR user (in other words, at a predetermined trigger), it may send information indicating the position and tilt of the virtual model 30 after the movement (in other words, information regarding the state of the virtual model 30) to the MR-side object control unit 820.
- the MR-side object control unit 820 may place the virtual model 30 at the position indicated by the information in the mixed reality space 21, or place the virtual model 30 at the tilt indicated by the information.
- the communication control unit 950 may send information based on the input from the VR user (for example, information on the movement amount, movement trajectory, inclination, etc. of the virtual model 30 calculated (in other words, acquired) by the control unit 310 based on the input) to the communication control unit 850, and the MR-side object control unit 820 may move a virtual object such as the virtual model 30 based on the information.
- the MR-side object control unit 820 makes a predetermined change to a virtual object in the mixed reality space 21 based on the input from the VR user received by the VR-side input receiving unit 916, but "based on the input from the VR user" does not necessarily mean that the MR-side object control unit 820 itself receives the input and controls the virtual object, but may mean that the virtual object in the mixed reality space 21 ultimately makes a predetermined change in response to the input.
- the VR-side object control unit 920 also makes a predetermined change to the VR avatar 25 in the virtual space 11 based on input from the VR user received by the VR-side input receiving unit 916. Specifically, the VR-side object control unit 920 makes a predetermined change to the VR avatar 25 in the virtual space 11 based on, for example, information indicating the VR user's operation on the controller 280 (in other words, information regarding the VR user's movements) received by the VR-side input receiving unit 916. Specifically, for example, the VR-side object control unit 920 moves the VR avatar 25 in the virtual space 11 in accordance with instructions from the VR user via operation on the controller 280.
- the VR-side object control unit 920 also moves the VR avatar 25 based on, for example, information on the movements of each part of the VR user's body (e.g., hand movements, head movements, eye movements, changes in facial expression, etc.) and information on the VR user's inclination and facing direction, which the VR-side input receiving unit 916 receives as input from the VR user. That is, based on each of these pieces of information, the VR-side object control unit 920 reflects the movements of each part of the VR user's body (in other words, posture) and the VR user's inclination and facing direction in the VR avatar 25 in the virtual space 11.
- information on the movements of each part of the VR user's body e.g., hand movements, head movements, eye movements, changes in facial expression, etc.
- the VR-side input receiving unit 916 receives as input from the VR user. That is, based on each of these pieces of information, the VR-side object control unit 920 reflects the movements of each part of the VR user's body (in
- the VR-side object control unit 920 controls the movement of the VR avatar 25 so that the movement of the VR avatar 25 in the virtual space 11 imitates the movement of the VR user detected by a detection means for detecting the movement of the VR user.
- the VR-side object control unit 920 controls the movement of the VR avatar 25 so that the movement of at least part of the body (e.g., hands, feet, head, eyes, mouth, etc.) of the VR avatar 25 is linked to the movement of the VR user.
- the MR-side object control unit 820 also imparts to the VR avatar 25 in the mixed reality space 21 a change similar to the change imparted to the VR avatar 25 in the virtual space 11 based on, for example, input from the VR user received by the VR-side input receiving unit 916. That is, for example, as described above, when the VR avatar 25 in the virtual space 11 moves as a result of the VR user operating the controller 280, the MR-side object control unit 820 moves the VR avatar 25 in the mixed reality space 21 in the same manner.
- the method of imparting to the VR avatar 25 in the mixed reality space 21 a change similar to the change imparted to the VR avatar 25 in the virtual space 11 is not particularly limited, but may be the same as in the case of the virtual model 30 described above, for example.
- the position of the VR avatar 25 in the virtual space 11 and the position in the mixed reality space 21 may move in conjunction with the movement of the VR user in real space. That is, for example, the VR-side object control unit 920 may move the VR avatar 25 based on position information indicating the position of the VR user in real space as an input from the VR user.
- the movement of the VR avatar 25 in the virtual space 11 and a part of the VR avatar 25 in the mixed reality space 21 may be realized by an operation on the controller 280. That is, for example, the VR side object control unit 920 and the MR side object control unit 820 may move a part of the body of the VR avatar 25 based on information indicating the VR user's operation on the controller 280 as an input from the VR user.
- the results of actions taken on real objects that actually exist in the conference room 21, which is a specified real space can also be shared between the VR user and the MR user 6.
- the following describes an example of control over a real object on which a specific piece of writing can be made (e.g., a blackboard or whiteboard).
- a blackboard 35 is placed as a real object in the mixed reality space 21
- a virtual blackboard 36 is placed as a virtual object corresponding to the blackboard 35 in the virtual space 11 at a position corresponding to the blackboard 35.
- the action (in other words, the result of the action) taken by the MR user 6 on the blackboard 35 as a real object in the mixed reality space 21 is reflected on the blackboard 35 in the mixed reality space 21. Also, in this embodiment, the action is reflected on the virtual blackboard 36 in the virtual space 11.
- the MR user 6 can make predetermined entries on the blackboard 35.
- the MR user 6's writing action on the blackboard 35 is detected by a detection means for detecting the writing action (hereinafter referred to as the "MR side writing detection means"), and the output from the MR side writing detection means (in other words, information regarding the writing action) is received by the MR side input receiving unit 816 as an input from the MR user 6.
- the MR side writing detection means may be, for example, a detection means capable of detecting the movement of the MR user 6's hand.
- the MR side writing detection means may be, for example, a pen-type controller or the like as the controller 480.
- the MR side writing detection means may be, for example, a camera or the camera 413 as the detection device 460.
- the MR side writing detection means may be, for example, a device worn by the MR user 6.
- the MR-side entry detection means may be a sensor provided on the blackboard 35 (e.g., a touch sensor or a sensor that reads reflected infrared light from an infrared light emitting device provided on the blackboard 35).
- the blackboard 35 may be capable of communicating with the computer 500, and information regarding the writing action of the MR user 6 detected by the sensor provided on the blackboard 35 may be received by the MR-side input receiving unit 816 as input from the MR user 6.
- the writing action of the MR user 6 is reflected on the blackboard 35 in the mixed reality space 21.
- the blackboard 35 changes to a state displaying the writing content of the MR user 6 (for example, a picture of a moon, a picture of a heart, and the word "Sample” in FIG. 10(a)), as shown in FIG. 10(a).
- the blackboard 35 may be an electronic blackboard that electronically displays (in other words, reflects) the writing content of the MR user 6, and when the MR user 6 performs a writing action, it may change to a state displaying the writing content.
- the writing surface of the blackboard 35 itself may be a display, and the display may display the writing content.
- the blackboard 35 may also be equipped with a projector that projects an image onto the writing surface, and the projector may project the writing content onto the writing surface.
- the reflection of the user's behavior in the mixed reality space 21 (in other words, a change in the mixed reality space 21 seen through the MR device 410 due to the behavior of the MR user 6) may be realized by some change (for example, a change in the display content) occurring in the real object itself.
- the computer of the blackboard 35 may control the display based on the detection result of a sensor equipped in the blackboard, or the computer 500 may control the display based on the detection result of the MR side writing detection means. That is, for example, the control unit 510 of the computer 500 or the like may function as a control means (hereinafter referred to as "blackboard display control means") that controls the display of the blackboard 35 based on the input from the MR user 6 received by the MR side input receiving unit 816. Specifically, the blackboard display control means may control the image displayed by the display or projector of the blackboard 35 to be an image showing the written content based on the input from the MR user 6.
- the writing action of the MR user 6 on the blackboard 35 in the mixed reality space 21 may be reflected by the MR user 6 actually writing characters or pictures on the blackboard 35 with a writing implement such as chalk.
- the action of actually writing characters or pictures on the blackboard 35 with a writing implement may be detected by the MR-side writing detection means as the writing action of the MR user 6.
- the MR-side object control unit 820 may generate a virtual object (hereinafter referred to as "entry object 37") indicating the contents entered by the MR user 6, and place it at the position of the blackboard 35 in the mixed reality space 21 (see FIG. 10(a)).
- entity object 37 a virtual object
- the MR-side object control unit 820 may generate the entry object 37 based on the input from the MR user 6 received by the MR-side input receiving unit 816.
- the blackboard 35 is viewed through the MR device 410, the state in which the blackboard 35 displays the entry contents (in other words, the entry object 37) may be visually recognized.
- the reflection of the user's actions in the mixed reality space 21 may be realized by adding a predetermined virtual object to the real object.
- the VR-side object control unit 920 applies a predetermined change to the virtual object corresponding to the real object based on the input from the MR user 6 received by the MR-side input receiving unit 816. Specifically, as shown in FIG. 10(b), the VR-side object control unit 920 reflects the input from the MR user 6 on the virtual blackboard 36, and controls the virtual blackboard 36 to display the contents written by the MR user 6. In other words, the VR-side object control unit 920 reflects a change to a real object (e.g., the blackboard 35) in the mixed reality space 21 based on the behavior of the MR user 6 on a virtual object (e.g., the virtual blackboard 36) in the virtual space 11 corresponding to the real object.
- a real object e.g., the blackboard 35
- the VR side object control unit 920 may place the writing object 38 indicating the writing contents written by the MR user 6 at the position of the virtual blackboard 36 in the virtual space 11 (see FIG. 10B).
- the VR side object control unit 920 may control the virtual blackboard 36 to display the writing contents by changing the form of the virtual blackboard 36 itself.
- the virtual blackboard 36 may be a virtual object that displays an image displayed by the display or projector of the blackboard 35, and the VR side object control unit 920 may display the image on the virtual blackboard 36.
- the MR system 400 may be provided with a camera that captures the blackboard 35 in the mixed reality space 21, the virtual blackboard 36 may be a virtual object that displays an image captured by the camera, and the VR side object control unit 920 may display the image on the virtual blackboard 36.
- the action (in other words, the result of the action) taken by the VR user in the virtual space 11 on the virtual blackboard 36 serving as a virtual object is reflected on the virtual blackboard 36 in the virtual space 11. Furthermore, in this embodiment, the action is reflected on the blackboard 35 in the mixed reality space 21.
- the VR user is able to make predetermined entries on the virtual blackboard 36. Furthermore, the VR user's writing action on the virtual blackboard 36 is detected by a detection means for detecting the writing action (hereinafter referred to as "VR side writing detection means"), and the output from the VR side writing detection means is received by the VR side input receiving unit 916 as an input from the VR user.
- the VR side writing detection means may be, for example, a detection means capable of detecting the movement of the VR user's hands.
- the VR side writing detection means may be, for example, a controller 280 or the like.
- the VR side writing detection means may be a camera or the like serving as the detection device 260.
- the VR side writing detection means may be, for example, a device worn by the VR user.
- the writing action of the VR user is reflected on the blackboard 35 in the mixed reality space 21.
- the blackboard 35 changes to a state in which the contents written by the VR user are displayed.
- the input from the VR user received by the VR side input receiving unit 916 is reflected on the blackboard 35.
- the input from the VR user may be reflected on the blackboard 35, for example, as follows. That is, for example, the MR side object control unit 820 may place a writing object 37 indicating the contents written by the VR user at the position of the blackboard 35 in the mixed reality space 21.
- the blackboard display control means may control the image displayed by the display or projector of the blackboard 35 based on the input from the VR user so that it becomes an image indicating the contents written by the VR user.
- the MR-side object control unit 820 or the blackboard display control means can function as a reflection means that reflects input from a VR user received by the VR-side input receiving unit 916 in a real object in the mixed reality space 21.
- the VR user's writing action is also reflected on the virtual blackboard 36 in the virtual space 11.
- the VR-side object control unit 920 applies a predetermined change to the virtual blackboard 36 based on the input from the VR user received by the VR-side input receiving unit 916. More specifically, the VR-side object control unit 920 reflects the input from the VR user on the virtual blackboard 36, and controls the virtual blackboard 36 to a state in which the contents written by the VR user are displayed.
- the VR-side object control unit 920 may place an entry object 38 indicating the contents written by the VR user at the position of the virtual blackboard 36 in the virtual space 11. Also, the VR-side object control unit 920 may control the virtual blackboard 36 to display the contents written by the VR user, for example, by changing the form of the virtual blackboard 36 itself. Also, the virtual blackboard 36 may be a virtual object that displays an image displayed by the display or projector of the blackboard 35, and the VR-side object control unit 920 may display the image on the virtual blackboard 36.
- the MR system 400 may be provided with a camera that captures the blackboard 35 in the mixed reality space 21, the virtual blackboard 36 may be a virtual object that displays an image captured by the camera, and the VR-side object control unit 920 may display the image on the virtual blackboard 36.
- the input from the VR user received by the VR-side input receiving unit 916 may be reflected in a real object in the mixed reality space 21, thereby causing a change in the virtual blackboard 36 based on the input from the VR user.
- actions taken by the MR user 6 on real objects and actions taken by the VR user on virtual objects corresponding to the real objects are reflected in the mixed reality space 21 and the virtual space 11.
- the reflection of each action in the mixed reality space 21 or the virtual space 11 may be as follows:
- the pointed position (hereinafter referred to as the "pointed position") may also be known in the virtual space 11.
- the detection device 460 or the camera 413 of the MR system 400 may function as a pointed position detection means for detecting the pointed position.
- Information on the pointed position detected by the pointed position detection means may be received by the MR side input reception unit 816 as an input from the MR user 6.
- the VR side object control unit 920 may place a virtual object representing light from a laser pointer at a position in the virtual space 11 corresponding to the pointed position in the mixed reality space 21.
- the control unit 310 may control the display of the virtual space 11 in the VR device 210 so that the position in the virtual space 11 corresponding to the pointed position in the mixed reality space 21 is illuminated in a predetermined color representing light from a laser pointer.
- the pointed position may be known in the mixed reality space 21.
- the VR side object control unit 920 may place a virtual object representing light from the virtual laser pointer at the position pointed to by the operation of the VR user (in other words, the position pointed to by the virtual laser pointer).
- control unit 310 may control the display of the virtual space in the VR device 210 so that the position in the virtual space 11 pointed to by the operation of the virtual VR user is illuminated in a predetermined color representing light from the virtual laser pointer.
- control unit 510 or the like may control a position in the mixed reality space 21 corresponding to a designated position in the virtual space 11 (specifically, a designated position by the VR user) to be illuminated in a predetermined color representing light from a virtual laser pointer.
- the MR-side object control unit 820 may place a virtual object representing light from a virtual laser pointer at a position in the mixed reality space 21 corresponding to the designated position in the virtual space 11.
- the blackboard display control means may control, based on an input from the VR user, an image displayed by the display or projector of the blackboard 35 to be an image in which a position corresponding to the predetermined position on the virtual blackboard 36 is illuminated (i.e., an image indicating that a predetermined place is being pointed to by a laser pointer).
- the detection device 460, the MR device 410, or the like may be equipped with a device that emits laser light, and the control unit 510 may control the device in response to input from the VR user received by the VR-side input receiving unit 916 to direct the laser light at a position in the mixed reality space 21 that corresponds to the indicated position in the virtual space 11.
- the behavior of the MR user 6 or VR user may be reflected in the mixed reality space 21 and the virtual space 11 as follows. That is, for example, a device capable of inputting or outputting sound as a real object (e.g., an electronic piano) may be placed in the mixed reality space 21, and the behavior of the MR user 6 or VR user related to the device may be reflected in the mixed reality space 21 and the virtual space 11.
- a device capable of inputting or outputting sound as a real object e.g., an electronic piano
- the behavior of the MR user 6 or VR user related to the device may be reflected in the mixed reality space 21 and the virtual space 11.
- an electronic piano is placed as a real object in the mixed reality space 21
- a virtual electronic piano is placed as a virtual object corresponding to the electronic piano in the virtual space 11 at a position corresponding to the electronic piano.
- the electronic piano may be capable of communicating with the computer 500, for example.
- information about the operation for example, sound data corresponding to the operation
- the sound control unit 945 may output sound from the speaker 216 based on the information.
- a key of the electronic piano for example, the key of the note "C”
- a sound corresponding to the operated key for example, the note "C”
- the MR side input receiving unit 816 may receive an output (for example, sound data corresponding to the operation) from the electronic piano (in other words, a sensor that detects the operation on the key, etc.) as a detection means for detecting the operation of the MR user 6 as an input from the MR user 6, and the control unit 310 (for example, the sound control unit 945) may output a sound corresponding to the operation of the MR user 6 on the electronic piano from the speaker 216 based on the input.
- the sound control unit 945 may also control the direction from which the sound is emitted so that the sound corresponding to an operation on the electronic piano sounds as if it is being output from a virtual electronic piano in the virtual space 11.
- the VR user when the VR user operates the virtual electronic piano in the virtual space 11, information on the operation may be sent to the computer 500.
- the sound control unit 845 may output a sound from the speaker 416 based on the information.
- a key of the virtual electronic piano e.g., the key of the note "C”
- a sound corresponding to the operated key e.g., the note "C”
- the VR side input receiving unit 916 may receive an output from a detection means (e.g., the detection device 260 or the controller 280) that detects the operation of the VR user on the virtual electronic piano as an input from the VR user, and the control unit 510 (e.g., the sound control unit 845) may output a sound corresponding to the operation of the VR user on the virtual electronic piano from the speaker 416 based on the input.
- the control unit 510 may output a sound corresponding to the operation of the VR user on the virtual electronic piano from the speaker of the electronic piano.
- the sound corresponding to the operation may be output in the mixed reality space 21 by the speaker of the electronic piano or by the speaker 416. Also, when the VR user operates the virtual electronic piano, the sound corresponding to the operation may be output in the virtual space 11 by the speaker 216.
- step S101 the processor 301 of the computer 300 identifies the virtual space data and defines the virtual space 11.
- step S102 the processor 301 places the VR avatar 25 of the VR user in the virtual space 11.
- step S103 the processor 301 acquires position information indicating the position of the MR user 6 in the mixed reality space 21 from the processor 501 of the computer 500, which is connected to the computer 300 via the network 2 and controls the mixed reality space 21 corresponding to the virtual space 11.
- step S104 the processor 301 places the MR avatar 26 of the MR user 6 at a position in the virtual space 11 that corresponds to the position of the MR user 6 in the mixed reality space 21, based on the position information acquired in step S103.
- step S105 the processor 301 places the virtual model 30 as a virtual object in the virtual space 11.
- the processor 301 places the virtual model 30 at a position in the virtual space 11 that corresponds to the position of the virtual model 30 in the mixed reality space 21. Note that placing at a corresponding position may mean that the position in the mixed reality space 21 is determined first, or that the position in the virtual space 11 is determined first.
- step S106 the processor 301 accepts input from the VR user.
- the processor 301 accepts, for example, the output of a detection means that detects the movements of the VR user as input from the VR user.
- the processor 301 makes a predetermined change to the virtual object in the virtual space 11 based on the input from the VR user. Specifically, the processor 301 moves the VR avatar 25 or the virtual model 30 in the virtual space 11 based on, for example, the input from the VR user. For example, if the input is related to the VR avatar 25, the processor 301 moves the VR avatar 25. Also, for example, if the input is related to the virtual model 30, the processor 301 moves the virtual model 30. Also, the processor 301 transmits information related to the input from the VR user to the processor 501.
- step S108 the processor 301 acquires information regarding the input from the MR user 6 that was accepted by the processor 501.
- step S109 the processor 301 makes a predetermined change to the virtual object in the virtual space 11 based on the input from the MR user 6 acquired in step S108. Specifically, the processor 301 moves the MR avatar 26 or the virtual model 30 in the virtual space 11, for example, based on the input from the MR user 6. For example, if the input is related to the MR avatar 26, the processor 301 moves the MR avatar 26. Also, if the input is related to the virtual model 30, the processor 301 moves the virtual model 30.
- step S201 the processor 501 of the computer 500 defines the mixed reality space 21.
- step S202 the processor 501 detects the position of the MR user 6 in the mixed reality space 21.
- the processor 501 also transmits position information indicating the detected position of the MR user 6 to the processor 301 of the computer 300 that is connected to the computer 500 via the network 2 and that controls the virtual space 11 that corresponds to the mixed reality space 21.
- step S203 the processor 501 obtains position information indicating the position of the VR avatar 25 in the virtual space 11 from the processor 301.
- step S204 the processor 501 places the VR avatar 25 at a position in the mixed reality space 21 that corresponds to the position of the VR avatar 25 in the virtual space 11, based on the position information acquired in step S203. Note that placing at a corresponding position may mean that the position in the virtual space 11 is determined first, or that the position in the mixed reality space 21 is determined first.
- step S205 the processor 501 places the virtual model 30 as a virtual object in the mixed reality space 21.
- the processor 501 places the virtual model 30 at a position in the mixed reality space 21 that corresponds to the position of the virtual model 30 in the virtual space 11.
- step S206 the processor 501 accepts input from the MR user 6.
- the processor 501 accepts, for example, the output of a detection means that detects the movement of the MR user 6 as input from the MR user 6.
- step S207 the processor 501 applies a predetermined change to the virtual object in the mixed reality space 21 based on the input from the MR user 6. Specifically, the processor 501 moves the virtual model 30 in the mixed reality space 21, for example, based on the input from the MR user 6. The processor 501 also transmits information regarding the input from the MR user 6 to the processor 301.
- step S208 the processor 501 acquires information regarding the input from the VR user that was accepted by the processor 301.
- step S209 the processor 501 makes a predetermined change to the virtual object in the mixed reality space 21 based on the input from the VR user acquired in step S208. Specifically, the processor 501 moves the VR avatar 25 or the virtual model 30 in the mixed reality space 21 based on, for example, the input from the VR user. For example, if the input is related to the VR avatar 25, the processor 501 moves the VR avatar 25. Also, if the input is related to the virtual model 30, the processor 501 moves the virtual model 30.
- the processor 501 accepts input from the MR user 6. Specifically, the processor 501 accepts, as input from the MR user 6, the output of a detection means that detects the behavior of the MR user 6 with respect to a specific real object (e.g., the blackboard 35, a laser pointer, or an electronic piano, etc.).
- a detection means that detects the behavior of the MR user 6 with respect to a specific real object (e.g., the blackboard 35, a laser pointer, or an electronic piano, etc.).
- step S302 the processor 501 transmits information regarding the input from the MR user 6 received in step S301 to the processor 301 (in other words, the VR system 200).
- step S303 the processor 301, based on the information transmitted in step S302, applies a predetermined change to the virtual object corresponding to the specific real object on which the MR user 6 performed an action. For example, when the MR user 6 performs a writing action to write predetermined contents on the blackboard 35, the processor 301 changes the virtual blackboard 36 corresponding to the blackboard 35 to a state in which the predetermined contents are displayed.
- step S351 the processor 301 accepts input from the VR user. Specifically, the processor 301 accepts, as input from the VR user, the output of a detection means that detects the VR user's behavior with respect to a virtual object (e.g., a virtual blackboard 36 or a virtual electronic piano) that corresponds to a specific real object.
- a detection means that detects the VR user's behavior with respect to a virtual object (e.g., a virtual blackboard 36 or a virtual electronic piano) that corresponds to a specific real object.
- step S352 the processor 301 transmits information regarding the input from the VR user received in step S351 to the processor 501 (in other words, the MR system 400).
- step S353 the processor 501 reflects the action performed by the VR user on a virtual object corresponding to a specific real object, in the specific real object, based on the information transmitted in step S352. For example, when the VR user performs a writing action to write a specific entry on the virtual blackboard 36, the processor 501 changes the blackboard 35 to a state in which the specific entry is displayed.
- the information processing system 100 of the second embodiment may adopt the contents described in the first embodiment to the extent that no contradiction occurs.
- the information processing system 100 of the second embodiment may include a part or all of the configuration of the information processing system of the first embodiment.
- the description of the matters described in the first embodiment will be omitted or simplified.
- the following describes an example in which the information processing system 100 is applied to a service in which events taking place in the virtual space 11 are reflected in the mixed reality space 21.
- the following describes an information processing system 100 in which an MR user 6 who is at a position in the real space corresponding to a specific location (in front of store B in this case) in the virtual space 11 that mimics an actual place (in front of store A in this case) can experience an event (in front of a live music performance in this case) taking place at the specific location (in front of store B in this case) via the MR device 410 (here, the user can watch the live music performance).
- the coordinate definition unit 812 stores information about the correspondence between the coordinates measured by the GPS sensor (in other words, the position detection means) and the virtual space coordinates (in other words, the correspondence between points in the real space and points in the virtual space 11) in the storage unit 611, which serves as a correspondence storage unit.
- information indicating the correspondence between positions in the real space (in other words, the mixed reality space) and the virtual space 11 is stored in advance in the correspondence storage unit.
- the MR side input receiving unit 816 receives input from the position detection means.
- the position detection means acquires position information indicating the position of the MR user 6 using a GPS sensor provided in the MR device 410.
- the MR side input receiving unit 816 accepts input of position information indicating the current position of the MR user 6 in real space (e.g., position information acquired using a GPS sensor).
- the control unit 310 of the VR system 200 controls the execution of a predetermined event that is performed at a specific location in the virtual space 11.
- the predetermined event is a predetermined event (specifically, a live music concert).
- the VR-side object control unit 920 places an event-related object 50 as a virtual object related to the predetermined event at a specific location in the virtual space 11, as shown in FIG. 15. More specifically, the VR-side object control unit 920 places, for example, an object of a character appearing in a live music concert (hereinafter referred to as a "performing character") or an object of a stage for the live music concert as an event-related object 50 in front of a store B in the virtual space 11.
- performing character an object of a stage for the live music concert
- the VR-side object control unit 920 may place the event-related object 50 based on an instruction from a VR user (in other words, an input from the VR user received by the VR-side input receiving unit 916 (for example, an operation on the controller 280)).
- the VR-side object control unit 920 may also place the event-related object 50 based on an instruction from the operator of this service.
- the VR-side object control unit 920 also moves the event-related object 50 (e.g., a featured character) and controls the progress of the event (in other words, progresses the event).
- the VR-side object control unit 920 may move the featured character based on the VR user's instructions (in other words, input from the VR user received by the VR-side input receiving unit 916 (e.g., operation on the controller 280)).
- the movements of the featured characters may be prepared in advance, and the VR-side object control unit 920 may move the featured character by playing back the prepared data.
- the featured character may be a VR avatar 25 or a non-player character, etc.
- the VR system 200 (in other words, the control unit 310) provides a view related to a music live performance as a specified event to a VR user (in other words, a VR user controlling a character at a specific location) who is at a specific location (in other words, in front of virtual store B) in the virtual space 11 (in other words, virtual town A) in which the user can move around by controlling his or her own character (e.g., VR avatar 25).
- the VR user may be a different user from the user controlling the character appearing in the music live performance (in other words, for example, a spectator at the music live performance), or may be the same user (in other words, for example, a performer at the music live performance).
- the event-related objects 50 are provided with information (in other words, a tag) indicating that they are objects related to a specific event (in other words, a specific event).
- the event-related objects 50 are also provided with position information indicating the position of the event-related objects 50 in virtual space (in other words, coordinates).
- the position information of the event-related objects 50 may be provided individually to each event-related object 50, or may be provided collectively to the event, etc.
- the MR-side object control unit 820 places a virtual object corresponding to the event-related object 50 at a position in the mixed reality space 21 corresponding to the position at which the event-related object 50 is placed in the virtual space 11.
- the virtual object corresponding to the event-related object 50 i.e., the virtual object in the mixed reality space 21 corresponding to the event-related object 50 in the virtual space 11
- an event-related object 50 of the same form as the event-related object 50 in the virtual space 11 is placed in the mixed reality space 21.
- the MR-side object control unit 820 moves the event-related object 50 (e.g., a featured character) to progress the event being executed in the mixed reality space 21.
- the progress of the event by the MR-side object control unit 820 (specifically, control of moving the featured character, etc.) and the progress of the event by the VR-side object control unit 920 (specifically, control of moving the featured character, etc.) are linked. That is, the MR-side object control unit 820 reflects the event taking place in the virtual space 11 in the mixed reality space 21. In other words, in this embodiment, the event occurring in the virtual space 11 is also reflected in the mixed reality space 21 in real time.
- the MR-side object control unit 820 controls the event-related object 50 in the mixed reality space 21 to move in the same way as the event-related object 50 in the virtual space 11.
- "reflected in real time” here includes a case where there is a slight delay in the occurrence of the event (in other words, the progress of the event), and may be preceded by either the progress of the event in the virtual space 11 or the progress of the event in the mixed reality space 21.
- "reflected” here does not mean that the event-related object 50 in the mixed reality space 21 does not have to move in exactly the same way as the event-related object 50 in the virtual space 11. For example, some of the movements of the appearing characters in the virtual space 11 may not be reflected in the appearing characters displayed in the mixed reality space 21.
- the control unit 510 of the MR system 400 may provide the MR user 6 with a view that can be determined to be related to the same event as the view provided to the VR user.
- the live music concert takes place in front of store B in town A in mixed reality space 21. That is, the MR-side object control unit 820 places an event-related object 50 relating to a specific event taking place at a specific position in virtual space 11 at a position in mixed reality space 21 corresponding to the specific position, and moves the event-related object 50 so as to move in accordance with the movement in virtual space 11. Then, in accordance with position information input to the MR-side input receiving unit 816, the display control unit 840 causes the display 411 of the MR device 410 to display the event-related object 50 placed at the position in mixed reality space 21 indicated by the position information.
- the control unit 510 causes the display 411 to display an event-related object 50 relating to a live music performance taking place in front of the store B in the virtual space 11.
- This provides the MR user 6 with a view of the mixed reality space 21 in which the event-related object 50 is placed in front of the store B in the real space (in other words, a live music performance taking place in the virtual space 11 in front of the store B in the real space).
- the control unit 510 provides the MR user 6 with a view of the mixed reality space 21 reflecting an event taking place at the specific position in the virtual space 11.
- the control unit 510 may include a bonus granting unit that grants a bonus to the MR user 6 based on the MR user 6 visiting a location in real space that corresponds to the specific location.
- the bonus may be, for example, a virtual object (e.g., an item that a character can equip, etc.) that the user who has acquired the bonus can use in the game (in other words, in the service), an electronic ticket that can be exchanged for a real object in real space, or a specific point that the user owns in the service.
- based on visiting may mean directly determining whether or not the user has visited and granting the bonus, or may mean granting the bonus when a specific action that can be performed by visiting (e.g., starting or finishing watching a live music performance, or continuing for a specific period of time or more) is performed.
- a specific action that can be performed by visiting (e.g., starting or finishing watching a live music performance, or continuing for a specific period of time or more) is performed.
- a view of the mixed reality space 21 reflecting a specific event occurring at a specific position in the virtual space 11 is provided to the MR user 6, but the specific event is not limited to a live music performance.
- the specific event may be an event in which a character operated by a specific user (in other words, an event-related object 50 related to the specific event) moves.
- the VR system 200 provides a game in which a character can be moved in the virtual space 11 simulating town A.
- the VR-side object control unit 920 causes the character to perform a specific action (e.g., an action such as jumping or running) in the virtual space 11 simulating town A based on the instructions of the VR user as the specific user (in other words, input from the VR user received by the VR-side input receiving unit 916 (e.g., operation on the controller 280)). Further, the MR-side object control unit 820 places the character at a position in the mixed reality space 21 corresponding to the position where the character is placed in the virtual space 11, and causes the character to perform an action in the mixed reality space 21 similar to the action of the character in the virtual space 11.
- a specific action e.g., an action such as jumping or running
- the MR-side object control unit 820 places the character at a position in the mixed reality space 21 corresponding to the position where the character is placed in the virtual space 11, and causes the character to perform an action in the mixed reality space 21 similar to the action of the character in the virtual space 11.
- the control unit 510 reflects the movement of the character in the game (in other words, in the virtual space 11) moved by the specific user in the view of the mixed reality space 21 provided via the display 411 of the MR device 410.
- the virtual object operated by the specific user moves in the same manner in the view of the virtual space 11 provided to the specific user in the VR device 210 of the VR user as the specific user and the view of the mixed reality space 21 provided to the MR user 6 in the MR device 410 of the MR user 6 in the town A in the real space.
- This configuration makes it possible to replicate the movements of characters on the game screen in a real city, improving the entertainment value of the service.
- the MR user 6 who can receive a view of the mixed reality space 21 reflecting a specific event occurring at a specific position in the virtual space 11 may be limited.
- the storage unit 511 functions as a rights information storage unit that stores information regarding the right to receive the view (hereinafter referred to as "rights information"), and the control unit 510 may provide the view to the MR user 6 if the MR user 6 has the right, and may not provide the view to the MR user 6 if the MR user 6 does not have the right.
- the right may be granted to the MR user 6 by, for example, the MR user 6 paying a price (for example, a payment of cash, or consumption of the assets held by the MR user 6 (for example, virtual currency, etc.) within the service).
- the right to watch a live music performance may be available for purchase within the service.
- the rights information may store information regarding the presence or absence of tickets for a live music performance that can be purchased within the service, and the control unit 510 may control so that an MR user 6 who has the ticket can watch the live music performance, and an MR user 6 who does not have the ticket cannot watch the live music performance.
- the rights information may store information regarding the possession of an item (e.g., a ticket, etc.) related to the right to receive the view, and the control unit 510 may provide the view to the MR user 6 when the MR user 6 has the item.
- the right in other words, the item
- the item may be obtained by completing a specified mission within the service, etc.
- control unit 510 may provide the MR user 6 with a view of the mixed reality space 21 reflecting a predetermined event occurring at a specific position in the virtual space 11 and related to a VR user selected by the MR user 6 from among multiple users.
- the MR side input receiving unit 816 may receive an input by the MR user 6 related to an operation (e.g., an operation on the controller 480) for selecting which of the multiple users a predetermined event related to should be reflected, and the control unit 510 may reflect the predetermined event related to the VR user selected by the operation in the view provided to the MR user 6.
- the operation may be, for example, an operation by the MR user 6 to select a user from among his/her friends to receive the event reflection.
- the predetermined events related to all friends are reflected, and the operation may be an operation of registering another user as a friend, etc.
- the MR user 6 may be provided with a view of the mixed reality space 21 reflecting a predetermined event related to his/her friend.
- the operation may be an operation in which the MR user 6, such as a professional player, selects a user from among multiple players for which a predetermined event is to be reflected.
- the control unit 510 may reflect the movement of the character moved by the player in the game (in other words, in the virtual space 11) in the view of the mixed reality space 21 provided to the MR user 6.
- the MR user 6 may be provided with a view of the mixed reality space 21 reflecting a predetermined event related to a user associated with the MR user 6 among multiple users.
- control unit 510 may reflect the live show in the view of the mixed reality space 21 provided to the MR user 6. Note that, when there are multiple events related to a specific user, it may be possible to select a specific event related to the specific user as the event to be reflected.
- each user may be able to register other users (e.g., VR user or MR user 6) as friends.
- Each user can register other users as friends, for example, based on a predetermined operation on the controller 280, 480.
- Registering as a friend can also be said to be a user associating another user with himself/herself.
- Registering as a friend can also be said to be bookmarking a specific user other than himself/herself.
- Registering as a friend can also be said to be making information about a certain user (specifically, a friend) (e.g., information about the login state, etc.) easier to call up than information about other users (specifically, non-friends).
- a certain user registers another user as a friend, but the other user does not register the certain user as a friend. That is, there may be a state in which the certain user unilaterally follows the other user. There may also be a state in which the certain user and the other user follow each other. Note that there may not be a state in which one-sided following exists.
- a "friend" may refer only to other users with whom a reciprocal follow relationship is established from the perspective of a certain user, or may refer to other users with whom a one-sided follow relationship is established.
- the control unit 510 may also provide the MR user 6 with a view of the mixed reality space 21 reflecting a predetermined event taking place at a specific position in the virtual space 11 and having an attribute corresponding to the attribute set for the MR user 6.
- each MR user 6 may be assigned an attribute related to the user's hobbies and preferences, more specifically, an attribute such as "music lover” or "comedy lover” (or “like a specific entertainer”).
- the control unit 510 may, for example, reflect a predetermined event with the attribute "music” for an MR user 6 with the attribute "music lover", and not reflect a predetermined event with the attribute "music” for an MR user 6 without the attribute "music lover”.
- the control unit 510 may, for example, reflect a predetermined event with the attribute "comedy” for an MR user 6 with the attribute "comedy lover”, and not reflect a predetermined event with the attribute "comedy” for an MR user 6 without the attribute "comedy lover”.
- the attributes set for the MR users 6 may be set by each MR user 6 himself/herself (e.g., input of his/her own preferences via the controller 480), or may be set automatically by AI (Artificial Intelligence) (e.g., based on the user's actions within the service, etc.).
- the control unit 510 may reflect in the mixed reality space 21 a specific event selected by the MR user 6 among multiple events taking place in the virtual space 11 (for example, an event related to a specific user selected by the MR user 6, an event having an attribute corresponding to the MR user 6's own attribute set by the MR user 6, an event related to a ticket purchased by the MR user 6, etc.).
- the control unit 510 may not reflect in the mixed reality space 21 an event not selected by the MR user 6 among multiple events taking place in the virtual space 11. In this way, when an unselected event is not reflected in the mixed reality space 21, there may be an event that is reflected regardless of the user's selection.
- not reflecting an unselected event in the mixed reality space 21 means that there is at least one event that is reflected in the mixed reality space 21 if a selection is made, and is not reflected in the mixed reality space 21 if no selection is made.
- the selection of an event may be possible before the specific event selected by the MR user 6 occurs (in other words, starts), or may be possible after the specific event occurs (in other words, while it is taking place).
- the virtual space 11 in which an event takes place does not have to mimic the real space in which the event is reflected.
- an area corresponding to a plaza in front of store B in town A that actually exists may be prepared in the virtual space 11, and a specific event that takes place in that area may be reflected in the MR device 410 of an MR user 6 who is in that plaza in real space.
- the memory unit 611 serving as a correspondence storage unit may store, for example, information indicating the correspondence between that area and the plaza.
- the virtual space 11 in which real-space events are reflected, as described in the third embodiment does not have to mimic the real space.
- the virtual space 11 in which the event takes place may be one that imitates the topography of the real space in which the event is reflected, but may have a different landscape.
- the virtual space 11 may be one that imitates the topography of a town A that actually exists, but has a different streetscape.
- the virtual space 11 may be one that reproduces an area corresponding to town A in the past (for example, the Edo period), and points in the real space and points in the virtual space 11 may be associated so that each point in the reproduced area and each point in the current town A in the real space indicate the same place on the map (in other words, the same place with the same longitude and latitude).
- a specific event that takes place at a specific position in the reproduced area may be reflected in the MR device 410 of the MR user 6 that is at a position in the real space that corresponds to the specific position.
- the virtual space 11 in which the event in the real space is reflected may also be one that imitates the topography of the real space, but has a different landscape.
- the view of the mixed reality space 21 related to a specific event does not have to be provided by the MR device 410 that superimposes a virtual object on the real space seen through the transparent display 411, but may be provided by, for example, a smartphone that displays an image of the real space captured by a camera with a virtual object superimposed on it on the display 411.
- the view of the mixed reality space 21 may be provided by, for example, displaying the event-related object 50 on a transparent display, or by displaying an image of the real space captured with the event-related object 50 superimposed on it on the display.
- a specific system including a smartphone that displays an image of the real space captured with a virtual object superimposed on it on a display may have at least a part of the configuration of the MR system 400.
- the MR system 400 in this embodiment or other embodiments can be interpreted as the specific system (for example, a smartphone).
- the user of the specific system also corresponds to the MR user 6.
- the view of the virtual space 11 relating to a specified event does not have to be provided by a head-mounted display as the VR device 210, but may be provided, for example, by displaying an image of the virtual space 11 on a PC monitor or a television.
- a specified system including a PC or a game device, or these devices and a specified display may have at least a part of the configuration of the VR system 200.
- the VR system 200 in this embodiment or other embodiments can be interpreted as being the specified system.
- a user of the specified system also corresponds to a VR user.
- the information processing system 100 of the third embodiment may adopt the contents described in the first or second embodiment to the extent that no contradiction occurs.
- the information processing system 100 of the third embodiment may include a part or all of the configuration of the information processing system of the first embodiment.
- the information processing system 100 of the third embodiment may include a part or all of the configuration of the information processing system of the second embodiment.
- the matters described in the first or second embodiment will be omitted or simplified.
- the information processing system 100 may be configured to have both the configuration according to the second embodiment and the configuration according to the third embodiment, and to reflect an event taking place in the virtual space 11 in real space and to reflect an event taking place in the virtual space 11.
- the coordinate definition unit 812 stores information about the correspondence between the coordinates measured by the GPS sensor (in other words, the position detection means) and the virtual space coordinates (in other words, the correspondence between points in the real space and points in the virtual space 11) in the storage unit 611, which serves as a correspondence storage unit.
- information indicating the correspondence between positions in the real space (in other words, the mixed reality space) and the virtual space 11 is stored in advance in the correspondence storage unit.
- a detection device 460 is placed in front of store B as a specific location.
- the detection device 460 is a camera, and is configured to capture an image of the area in front of store B as a specific location in real space.
- multiple detection devices 460 may be placed in front of store B.
- the detection device 460 in this embodiment may not be intended to detect the movements of the MR user 6, but may simply be intended to capture images of a specific event.
- the MR system 400 may or may not include an MR device 410.
- the MR system 400 may include a detection device 460 and a computer 500.
- the computer 500 may be provided outside the detection device 460, or a part or the whole of the computer 500 may be built into the detection device 460.
- the MR system 400 in this embodiment or other embodiments can be interpreted as a camera serving as the detection device 460 installed in front of store B in this embodiment.
- the detection device 460 also includes a GPS sensor and is capable of acquiring location information indicating the location of the detection device 460.
- the MR side input acceptance unit 816 also accepts input of location information acquired using the GPS sensor. That is, the MR side input acceptance unit 816 accepts input of location information indicating a specific location.
- the location information acquired using the GPS sensor can also be considered as location information indicating the location where a specific event photographed by the detection device 460 is taking place.
- the location information acquired using the GPS sensor can also be considered as location information indicating the current location of the specific person.
- the control unit 310 reflects a predetermined event taking place at a specific location in real space in the virtual space 11.
- the predetermined event is a predetermined event (specifically, a live music concert).
- the control unit 310 performs control so that a live music concert taking place in front of store B in real town A also takes place in front of store B in the virtual space 11.
- the MR side input receiving unit 816 receives as input, for example, an image captured by an image sensor provided in a camera serving as the detection device 460.
- the image is an image of a live music performance serving as a specified event.
- the communication control unit 850 also sends the image and information indicating the specific position where the image was acquired to the communication control unit 950, and the control unit 310 displays the image at a position in the virtual space 11 corresponding to the specific position (i.e., in front of store B) based on this information, as shown in FIG. 16.
- the control unit 310 displays the image (i.e., an image of an event taking place at the specific position) on the display 211.
- a VR user in other words, a VR user operating a character at a specific position
- a virtual space 11 in other words, a virtual town A
- the control unit 310 provides the VR user with a view of the virtual space 11 reflecting an event taking place at the specific position in real space. This allows the VR user to share an experience with a person at the specific position in real space.
- information regarding the correspondence between the coordinates measured by the GPS sensor and the virtual space coordinates is stored in the correspondence storage unit as information indicating the correspondence between points in real space and points in virtual space 11.
- information regarding the correspondence between identification information that enables identification of detection device 460 installed at a specific position and coordinates indicating a position in virtual space 11 corresponding to the specific position may be stored as information indicating the correspondence between points in real space and points in virtual space 11, and a predetermined event may be reflected at a position in virtual space 11 corresponding to the specific position based on the information.
- the identification information that enables identification of detection device 460 may function as information indicating a specific position.
- the image related to the predetermined event that the control unit 310 causes to be displayed on the display 211 may be captured by the camera 413 of the MR device 410 worn by the predetermined MR user 6.
- the MR device 410 may function as the detection device 460 of this embodiment.
- the MR device 410 may be equipped with a GPS sensor for acquiring location information related to a specific location where the predetermined event is performed, and a camera for acquiring images related to the predetermined event.
- the MR user 6 wearing the MR device 410 may be a performer of a predetermined event as the predetermined event, or may be a spectator.
- the acquisition of location information and the acquisition of images related to the predetermined event may be performed by different MR devices 410 (in other words, MR devices 410 used by different users).
- a specific event taking place at a specific position in the real space may be reflected in the virtual space 11 as follows. That is, instead of displaying an image of the specific event as described above, the control unit 310 may cause an avatar of a person related to the specific event (here, a performer in a live music performance) to perform an action related to the specific event.
- the MR user 6 in the first embodiment may be read as the person, and the avatar of the person as the MR avatar 26 may be moved in the virtual space 11. That is, for example, the MR side input receiving unit 816 receives the output of a detection means that detects the movement of the person as an input from the person.
- the MR side input receiving unit 816 may receive information on the movement of the MR user 6 detected by image recognition from an image captured by an image sensor provided in a camera as the detection device 460 as an input from the person.
- the user information acquisition unit 818 acquires identification information that enables the person to be identified.
- the user information acquisition unit 818 may acquire the identification information by identifying the MR user 6 in the mixed reality space 21 by image recognition from an image captured by an image sensor included in the detection device 460.
- the VR-side object control unit 920 places the person's avatar (in other words, the MR avatar 26) at a position in the virtual space 11 corresponding to a specific position in the real space.
- the VR-side object control unit 920 moves the person's avatar in the virtual space 11 based on, for example, an input from the person accepted by the MR-side input acceptance unit 816. Specifically, the VR-side object control unit 920 moves the MR avatar 26 based on, for example, information on the movement of the MR user 6 accepted by the MR-side input acceptance unit 816. That is, the VR-side object control unit 920 controls the movement of the person's avatar in the virtual space 11 so that the movement of the person's avatar in the virtual space 11 imitates the movement of the person detected by a detection means for detecting the movement of the person in the real space. This allows a predetermined event taking place at a specific location in real space to be reflected in virtual space 11.
- a VR user in other words, a VR avatar 25
- a view of virtual space 11 reflecting an event taking place at that specific location in real space can be provided to the VR user based on an image of the predetermined event captured by a specific camera.
- a view of virtual space 11 in which a predetermined event is reproduced by an avatar of a person captured by a specific camera can be provided to the VR user.
- the detection of the movement of the person may be performed by the camera 413 of the MR device 410 worn by a specific MR user 6, or by the controller 480, a device worn by the MR user 6, the gaze sensor 412, the sensor 417, or the sensor 486.
- the MR user 6 wearing the MR device 410 may be a performer of a specific event as a specific event, or may be an audience member.
- the display 411 of the MR device 410 of an MR user 6 who is in front of store B as a specific location where the specified event is taking place may display the VR avatar 25 of the VR user watching the specified event in the virtual space 11.
- the control unit 510 of the MR device 410 may acquire information of the VR avatar 25 at a position in the virtual space 11 corresponding to the specific location via the communication control unit 850, and display the VR avatar 25 on the display 411.
- the control unit 510 may display an image of the VR avatar 25 at a position in the virtual space corresponding to the specific location on the display.
- a person in a place where a specific event is taking place in the real space can see the reaction of the VR user in the virtual space 11.
- the performers or spectators of the live performance as the MR user 6 can visually recognize the VR avatar 25 (in other words, the spectators in the virtual space 11) through the display 411 of the MR device 410.
- the performers or spectators of the live performance as the MR user 6 can visually grasp how many spectators have gathered, including the virtual space 11, and how each spectator is reacting.
- the MR device 410 on which the VR avatar 25 is displayed and the device that captures the specified event may be separate devices or may be the same device (specifically, the MR device 410 worn by a single MR user 6).
- the view of the mixed reality space 21 provided to the MR user 6 at a specific position where a specific event is occurring does not have to be provided by the MR device 410 that superimposes a virtual object (specifically, a VR avatar 25) on the real space seen through the transparent display 411, but may be provided by, for example, a smartphone that displays on a display an image in which a virtual object (specifically, a VR avatar 25) is superimposed on an image of the real space captured by a camera.
- the information processing system 100 can be configured to display, for example, a VR avatar 25 (e.g., an audience member's avatar) that is located in a position in the virtual space 11 that corresponds to the specific position on the display of the smartphone when a performer performs a specific live performance while taking a selfie using his or her smartphone at a specific position in the real space.
- the display of the smartphone or the like may display an image in which only the VR avatar 25 is displayed, or an image of the VR avatar 25 with the virtual space 11 (for example, an image of a position in the virtual space 11 corresponding to the specific position) as the background, rather than an image of the mixed reality space 21 in which the VR avatar 25 is superimposed on an image of the real space.
- the control unit 310 may include a reward granting unit that grants a reward to a VR user (in other words, the VR avatar 25) based on the VR user visiting a position in the virtual space 11 that corresponds to a specific position where a specific event is taking place.
- the reward may be, for example, a virtual object (e.g., an item that a character can equip, etc.) that the user who has acquired the reward can use in the game (in other words, in the service), an electronic ticket that can be exchanged for a real object in the real space, or a specific point that the user owns in the service.
- based on visiting may mean granting a reward by directly determining whether or not the user has visited, or may mean granting a reward when a specific action that can be performed by visiting (e.g., starting or finishing watching a live music performance, or continuing for a specific period of time or more) is performed.
- a specific action that can be performed by visiting (e.g., starting or finishing watching a live music performance, or continuing for a specific period of time or more) is performed.
- the storage unit 311 functions as a rights information storage unit that stores information regarding the right to receive the view (hereinafter referred to as "rights information"), and the control unit 310 may provide the view to the VR user if the VR user has the right, and may not provide the view to the VR user if the VR user does not have the right.
- the right may be granted to the VR user by, for example, the VR user paying a price (for example, a payment of cash, or consumption of the VR user's assets (for example, virtual currency, etc.) within the service).
- the right to watch a live music performance may be purchased within the service. More specifically, for example, information regarding the presence or absence of tickets for the live music performance that can be purchased within the service may be stored as the rights information, and the control unit 310 may control so that a VR user who has the ticket can watch the live music performance and a VR user who does not have the ticket cannot watch the live music performance. In other words, information regarding possession of an item (e.g., a ticket) related to the right to receive the view is stored as the rights information, and the control unit 310 may provide the view to a VR user if the VR user has the item. Note that the right (in other words, the item) may be obtained by completing a specified mission within the service, etc.
- the control unit 310 may also provide the VR user with a view of the virtual space 11 reflecting a predetermined event occurring at a specific position in real space and related to an MR user 6 selected by the VR user from among a plurality of users.
- the VR side input receiving unit 916 may receive an input by the VR user relating to an operation (e.g., an operation on the controller 280) for selecting which of a plurality of users a predetermined event related to should be reflected, and the control unit 310 may reflect the predetermined event related to the MR user 6 selected by the operation in the view provided to the VR user.
- the operation may be, for example, an operation by the VR user to select a user from among his/her friends to receive the event reflected.
- the predetermined events related to all friends may be reflected, and the operation may be an operation to register another user as a friend, etc.
- the VR user may be provided with a view of the virtual space 11 reflecting a predetermined event related to his/her friend.
- the VR user may be provided with a view of the virtual space 11 that reflects a specific event related to a user associated with the VR user among multiple users.
- the control unit 310 may reflect the live performance in the view of the virtual space 11 provided to the VR user. Note that, when there are multiple events related to a specific user, it may be possible to select a specific event related to the specific user as the event to be reflected.
- the control unit 310 may also provide the VR user with a view of the virtual space 11 reflecting a predetermined event occurring at a specific position in the real space and having an attribute corresponding to the attribute set for the VR user.
- each VR user may be assigned an attribute related to the user's hobbies and preferences, more specifically, an attribute such as "music lover” or "comedy lover” (or “like a specific entertainer”).
- the control unit 310 may, for example, reflect a predetermined event with the attribute "music” for a VR user with the attribute "music lover” and not reflect a predetermined event with the attribute "music” for a VR user without the attribute "music lover”.
- the control unit 310 may, for example, reflect a predetermined event with the attribute "comedy” for a VR user with the attribute "comedy lover” and not reflect a predetermined event with the attribute "comedy” for a VR user without the attribute "comedy lover”.
- the attributes set for a VR user may be set by each VR user themselves (e.g., by inputting their own preferences via the controller 280), or may be set automatically by AI (Artificial Intelligence) (e.g., based on the user's actions within the service, etc.).
- the control unit 310 may reflect in the virtual space 11 a specific event selected by the VR user among multiple events taking place in the real space (for example, an event related to a specific user selected by the VR user, an event having an attribute corresponding to the VR user's own attribute set by the VR user, an event related to a ticket purchased by the VR user, etc.). In other words, the control unit 310 may not reflect in the virtual space 11 an event not selected by the VR user among multiple events taking place in the real space. In this way, when an unselected event is not reflected in the virtual space 11, there may be an event that is reflected regardless of the user's selection.
- a specific event selected by the VR user among multiple events taking place in the real space for example, an event related to a specific user selected by the VR user, an event having an attribute corresponding to the VR user's own attribute set by the VR user, an event related to a ticket purchased by the VR user, etc.
- not reflecting an unselected event in the virtual space 11 means that there is at least one event that is reflected in the virtual space 11 if a selection is made, and is not reflected in the virtual space 11 if no selection is made. Note that the selection of an event may be made before the occurrence (in other words, start) of the specific event selected by the VR user, or may be made after the occurrence (in other words, while the specific event is taking place).
- the information processing system 100 of the second embodiment and the information processing system 100 of the third embodiment can also be applied to games that utilize both real space and virtual space.
- a specific example is shown below.
- the information processing system 100 may be applied to a game in which a character moving in the virtual space 11 is searched for in the real world (hereinafter, referred to as a "search game”).
- search game a game in which a character moving in the virtual space 11 is searched for in the real world.
- a virtual space 11 that imitates a theme park existing in the real world is prepared.
- the VR-side object control unit 920 moves a predetermined character (hereinafter, referred to as a "search target character”; in other words, a search target object) so as to move around in the virtual space 11.
- the search target character may be one that is operated by a VR user (in other words, one that moves based on the operation of the VR user), or one that moves without the operation of a user.
- the search target character may be a VR avatar 25 or a so-called non-player character.
- the appearance of the search target character may be, for example, the appearance of a character belonging to a theme park (for example, a character that symbolizes a theme park, etc.).
- the MR system 400 (in other words, the control unit 510) displays the search target character on the display 411 when the MR user 6 is in a position in real space that corresponds to the position in virtual space 11 where the search target character is located. In other words, the MR system 400 does not display the search target character on the display 411 when the MR user 6 is not in a position in real space that corresponds to the position in virtual space 11 where the search target character is located. In other words, this search game is a game in which the player searches for the search target character moving around in virtual space 11 in real space.
- the MR side input receiving unit 816 receives an input related to a specific operation by the MR user 6 in a situation where the MR user 6 is in a position in the real space corresponding to the position where the search target character exists in the virtual space 11 (in other words, a situation where the search target character is displayed on the display 411).
- the specific operation may be, for example, an operation of taking a photo of the search target character shown on the display 411 (in other words, an operation of storing an image).
- the specific operation here can also be an operation related to storing information indicating that the search target character has been found.
- the information indicating that the search target character has been found is a photo of the search target character, but it may also be a flag or the like that is set when the search target character is found.
- the information may be automatically stored without the intervention of a specific operation.
- the information indicating that the search target character has been found may be stored based on the MR user 6 visiting a position in the real space corresponding to the position where the search target character exists in the virtual space 11. That is, the control unit 510 stores information indicating that the operation target character has been discovered in the storage unit 511 based on the MR user 6 visiting that position in real space.
- the control unit 510 also grants a bonus to the MR user 6 based on the MR user's visit to the position in real space (in other words, when information indicating that the search target character has been discovered is stored).
- the bonus may be an item that can be used in the virtual space 11.
- the bonus may also be an electronic certificate or trophy indicating that the search target character has been discovered.
- the bonus may also be an electronic ticket that can be exchanged for a real object (e.g., merchandise of the search target character) in real space (e.g., at a real theme park).
- the VR user may be able to transmit information to the MR user 6 to assist in the search.
- the VR user may be the user who operates the search target character, or may be a user different from the user. Specifically, for example, the VR user operates his/her own VR avatar 25 in the virtual space 11 to search for the search target character in the virtual space 11 simulating a theme park.
- the VR side input receiving unit 916 also receives an input related to an operation (e.g., an operation on the controller 280) by the VR user to send sighting information of the search target character (e.g., information on the place where the sighting occurred; in other words, information that assists in the search) to the MR user 6.
- the control unit 510 also receives the sighting information via the communication control unit 850, and causes a predetermined output means to execute an output that assists in the search based on the sighting information. Specifically, for example, the control unit 510 causes the display 411 to display a display informing the user of the location in the virtual space 11 where the search target character has been sighted, and causes the speaker 416 to output a sound informing the user of the location where the search target character has been sighted.
- This configuration makes it possible for an MR user 6 who is actually at a theme park and a VR user who is not actually at the theme park (for example, at home) to cooperate with each other to enjoy a game.
- the information processing system 100 may be applied to a survival game in which a user playing in the virtual space 11 and a user playing in the real space can compete against each other.
- a venue where a user on the real space side plays and a virtual space 11 simulating the venue are prepared.
- the venue may be a so-called survival game field or a predetermined area such as a city.
- a user on the real space side wears an MR device 410
- a user on the virtual space 11 side wears a VR device 210.
- the control unit 310 of the VR system 200 controls the VR avatar 25 of the VR user based on the input from the VR user received by the VR side input receiving unit 916. Specifically, the control unit 310 moves the VR avatar 25 within the virtual space 11 based on the input from the VR user.
- control unit 310 of the VR system 200 receives input from the MR user 6 received by the MR side input receiving unit 816 via the communication control unit 950, and controls the MR avatar 26. Specifically, the control unit 310 moves the MR avatar 26 in the virtual space 11 based on position information (i.e., position information indicating the position of the MR user 6 in the real space) acquired by a GPS sensor (in other words, a position detection means) provided in the MR device 410. More specifically, the control unit 310 moves the MR avatar 26 so that the MR avatar 26 is located at a position in the virtual space 11 corresponding to the position of the MR user 6 in the venue on the real space side.
- position information i.e., position information indicating the position of the MR user 6 in the real space
- a GPS sensor in other words, a position detection means
- a display is provided that makes it appear as if the MR 6 user is present at a position in the virtual space 11 (in other words, within the venue) corresponding to the position of the MR user 6 in the mixed reality space 21.
- height information of the MR device 410 may be obtained via a sensor 417 of the MR device 410, etc.
- the control unit 510 of the MR system 400 also moves the VR avatar 25 so that the VR avatar 25 is located at a position in the mixed reality space 21 that corresponds to the position at which the VR avatar 25 is located in the virtual space 11. That is, on the display 411 of the MR device 410, a display is provided that makes it appear as if the VR user is present at a position in the mixed reality space 21 (in other words, within the venue) that corresponds to the position at which the VR user is located in the virtual space.
- the VR-side input receiving unit 916 also receives input related to an attack by a VR user against the MR user 6 (in other words, the MR avatar 26).
- the MR-side input receiving unit 816 also receives input related to an attack by the MR user 6 against a VR user (in other words, the VR avatar 25).
- an attack by the VR user or MR user 6 against an opponent may involve, for example, firing a gun at the opponent, and the input operation related to the attack may be performed via a gun-shaped controller 280, 480, etc.
- the control unit 310 also determines whether an attack by the VR user against the MR user 6 has hit the MR user 6. Specifically, the control unit 310 determines that an attack by the VR user has hit the MR user 6, for example, when the VR user performs an input operation while the gun held by the VR avatar 25 is pointed at the MR avatar 26 and a bullet fired from the gun hits the MR avatar 26 directly. The control unit 310 also determines whether an attack by the MR user 6 against the VR user has hit the VR user.
- the control unit 310 determines that an attack by the MR user 6 has hit the VR user, for example, when the MR user 6 performs an input operation while the gun held by the MR avatar 26 is pointed at the VR avatar 25 and a bullet fired from the gun hits the VR avatar 25 directly.
- the direction of the gun held by the MR avatar 26 is linked to the direction of the controller 480 held by the MR user 6, for example, and the aim of the gun of the MR avatar 26 is aligned with a position in the virtual space 11 corresponding to the position where the MR user 6 aims the controller 480 in the mixed reality space 21.
- control unit 310 determines that an attack by the MR user 6 hits the VR user when the MR user 6 performs an input operation while aiming the gun-shaped controller 480 at the VR avatar 25 in the mixed reality space 21.
- an attack by the VR user against the MR user 6 can be made similar to that of a normal shooting game.
- a part or all of the determination of an attack by the MR user 6 against the VR user or an attack by the VR user against the MR user 6 may be made by the control unit 510 or the control unit 610, etc.
- the determination unit that determines whether an MR user 6 has attacked a VR user may be realized by any of the control unit 310, the control unit 510, and the control unit 610.
- the survival game may also be capable of allowing the VR user and the MR user 6 to play cooperatively. That is, for example, in a survival game in which multiple teams (e.g., two teams) made up of multiple users can compete against each other, one of the multiple teams may be made up of only VR users (in other words, users on the virtual space 11 side), and the other team may be made up of only MR users 6 (in other words, users on the real space side). Also, one team may be capable of including both a VR user and an MR user 6.
- the information processing system 100 may be applied to an escape game (in other words, a puzzle-solving game) in which a user on the real space side and a user on the virtual space 11 side cooperate to play.
- an escape game in other words, a puzzle-solving game
- a venue where the user on the real space side plays and a virtual space 11 simulating the venue are prepared.
- the venue may be a specified area such as a city center, or may be a specific facility.
- the user on the real space side wears the MR device 410, and the user on the virtual space 11 side wears the VR device 210.
- a user wearing the MR device 410 and a user wearing the VR device 210 cooperate to accomplish a set mission.
- the MR device 410 and the VR device 210 display virtual objects related to the mission at corresponding positions.
- the virtual object may be, for example, an object related to the reception of an action performed by the VR user and the MR user 6 in cooperation.
- a predetermined action e.g., a hand-waving operation
- the VR user 6 performs a predetermined action (e.g., a hand-waving operation.
- the action may be the same as or different from the action performed by the VR user), the predetermined device may be started (in other words, the game (event) may progress), or the like.
- the virtual object may also be, for example, an item that can be acquired by at least one of the VR user or the MR user 6, such as a treasure chest.
- the virtual object may also be an object that includes information about solving the puzzle (for example, a sentence about the puzzle or hints for solving the puzzle).
- a second action related to the progress of the game by the MR user 6 or the VR user may be possible on the condition that one of the MR user 6 and the VR user has performed a first action related to the progress of the game.
- the first action is an action that can only be performed by the one user and cannot be performed by the other user.
- the second action is an action that can only be performed by the other user and cannot be performed by the one user.
- the VR system 200 may receive an input related to the second action by the VR user.
- the second action by the VR user may be an action that can be executed based on the MR user 6 visiting a specific place in the real space.
- the MR system 400 may accept an input related to the second action by the MR user 6.
- the second action by the MR user 6 may be an action that can be executed based on the VR user visiting a specific place in the virtual space 11.
- the VR device 210 may display a predetermined display related to the progress of the game (for example, a display of a hint related to solving a puzzle) on the display 211 only while the MR user 6 is pointing the camera of the smartphone as the MR device 410 at a specific place in the real space in the real space.
- the virtual space 11 may represent the past of the mixed reality space 21, and the VR system 200 may receive input related to a predetermined action (e.g., an action of placing an item at a specific position in the virtual space 11) as a first action by the VR user in the virtual space 11 (in other words, the past).
- a predetermined action e.g., an action of placing an item at a specific position in the virtual space 11
- the MR system 400 may receive input related to a predetermined action (e.g., an action of going to a position in the mixed reality space 21 corresponding to the specific position and finding the item) as a second action by the MR user 6 in the real space (in other words, the present), and may be configured to progress the game (in other words, an event) based on the input.
- a predetermined action e.g., an action of going to a position in the mixed reality space 21 corresponding to the specific position and finding the item
- the present invention is not limited to the above-described embodiment, and can be modified in various ways without departing from the spirit of the invention.
- the components can be freely combined, any component can be modified, or any component can be omitted.
- the process flow described in this specification is merely an example, and the order and configuration of each process can be different.
- a first control means e.g., a control unit 310) for providing a first view, which is a view of a virtual space, to a first user; an input receiving means (e.g., an MR side input receiving unit 816) that receives an output of a detection means that detects a movement of a second user as an input from the second user; A position information receiving unit (e.g., an MR side input receiving unit 816) that receives position information indicating a current position of the second user in real space; A correspondence relationship storage means (e.g., a storage unit 611) that stores information indicating a correspondence relationship between positions in the real space and the virtual space, The first control means places an avatar of the second user at a position in the virtual space corresponding to the position of the second user indicated by the position information, and reflects the movement of the second user detected by the detection means in the avatar of the second user.
- an input receiving means e.g., an MR side input receiving unit 816) that receives an output of a detection
- (Appendix 2) The information processing system according to claim 1, wherein the detection means is a wearable device or an implantable device.
- the device worn by the second user can detect the movements of the second user's hands and feet and reflect them in the avatar, so that the movements of the avatar can be faithfully reproduced to those of the second user, expanding the range of uses of the virtual space.
- a second control means (e.g., a control unit 510) for displaying an image of an avatar of the first user on a display of a predetermined device used by the second user,
- the second control means causes an image of the first user's avatar to be displayed on the display when the location information indicates that the second user is in a specific location and the first user's avatar is in a location in the virtual space corresponding to the specific location.
- a second user who is in a specific position in the real space can see an avatar of a first user who is in a position corresponding to the specific position in the virtual space, thereby expanding the range of uses of the virtual space.
- a first control means e.g., a control unit 310) for providing a first view, which is a view of a virtual space, to a first user; an input receiving means (e.g., an MR side input receiving unit 816) that receives an output of a detection means that detects a movement of a second user as an input from the second user; A position information receiving unit (e.g., an MR side input receiving unit 816) that receives position information indicating a current position of the second user in real space; a correspondence relationship storage unit (e.g., a storage unit 611) that stores information indicating a correspondence relationship between positions in the real space and the virtual space; and a program that causes a computer of an information processing system to function as the first control unit,
- the first control means is a program that places an avatar of the second user at a position in the virtual space corresponding to the position of the second user indicated by the position information, and reflects the movements of the second user detected by the detection means in the avatar of the second
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Radar, Positioning & Navigation (AREA)
- Computer Graphics (AREA)
- Environmental & Geological Engineering (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
情報処理システムは、仮想空間のビューである第1のビューを第1ユーザに提供する第1制御手段と、第2ユーザの動きを検出する検出手段の出力を、第2ユーザからの入力として受け付ける入力受付手段と、現実空間における第2ユーザの現在の位置を示す位置情報を受け付ける位置情報受付手段と、現実空間と仮想空間との位置の対応関係を示す情報を記憶する対応関係記憶手段と、を備え、第1制御手段は、位置情報の示す第2ユーザの位置に対応する仮想空間中の位置に第2ユーザのアバターを配置し、検出手段によって検出される第2ユーザの動きを第2ユーザのアバターに反映させる。
Description
本発明は、情報処理システムおよびプログラムに関する。
従来より、複合現実(MR:Mixed Reality)空間や仮想現実(VR:Virtual Reality)空間をユーザに提供する技術が知られている(例えば、特許文献1および特許文献2参照)。
ところで、従来より仮想空間の用途の幅を広げることが求められていた。
本発明は、前記事情に鑑みてなされたものであり、仮想空間の用途の幅を広げることを目的とする。
本開示に示す一実施形態によれば、
仮想空間のビューである第1のビューを第1ユーザに提供する第1制御手段と、
第2ユーザの動きを検出する検出手段の出力を、前記第2ユーザからの入力として受け付ける入力受付手段と、
現実空間における前記第2ユーザの現在の位置を示す位置情報を受け付ける位置情報受付手段と、
前記現実空間と前記仮想空間との位置の対応関係を示す情報を記憶する対応関係記憶手段と、を備え、
前記第1制御手段は、前記位置情報の示す前記第2ユーザの位置に対応する前記仮想空間中の位置に前記第2ユーザのアバターを配置し、前記検出手段によって検出される前記第2ユーザの動きを前記第2ユーザのアバターに反映させる
情報処理システムが提供される。
仮想空間のビューである第1のビューを第1ユーザに提供する第1制御手段と、
第2ユーザの動きを検出する検出手段の出力を、前記第2ユーザからの入力として受け付ける入力受付手段と、
現実空間における前記第2ユーザの現在の位置を示す位置情報を受け付ける位置情報受付手段と、
前記現実空間と前記仮想空間との位置の対応関係を示す情報を記憶する対応関係記憶手段と、を備え、
前記第1制御手段は、前記位置情報の示す前記第2ユーザの位置に対応する前記仮想空間中の位置に前記第2ユーザのアバターを配置し、前記検出手段によって検出される前記第2ユーザの動きを前記第2ユーザのアバターに反映させる
情報処理システムが提供される。
本発明によれば、仮想空間の用途の幅を広げることができる。
以下、図面を参照しながら本発明の実施の形態について説明する。
[第1の実施形態]
<情報処理システムの構成>
図1に示されるように、本実施形態の情報処理システム100は、VR(Virtual Reality)システム200と、MR(Mixed Reality)システム400と、サーバ600と、外部機器700と、を備えている。VRシステム200は、ネットワーク2を介してサーバ600、MRシステム400、および外部機器700と通信可能に構成される。また、MRシステム400は、ネットワーク2を介してサーバ600、VRシステム200、および外部機器700と通信可能に構成される。情報処理システム100を構成するMRシステム400の数は、1つに限られず、複数存在してもよい。また、情報処理システム100を構成するVRシステム200の数は、1つに限られず、複数存在してもよい。なお、本実施形態では、VRシステム200とMRシステム400とのネットワーク2を介した通信は、サーバ600を介して行われるが、サーバ600を介さずに行われてもよい。なお、ネットワーク2は、例えば、インターネット、移動通信システム(例えば、3G、4G、5G、LTE(Long Term Evolution)等)、Wi-Fi(登録商標)、Bluetooth(登録商標)、その他の通信回線、またはこれらの組み合わせ等のいずれによって構成されていてもよい。
<情報処理システムの構成>
図1に示されるように、本実施形態の情報処理システム100は、VR(Virtual Reality)システム200と、MR(Mixed Reality)システム400と、サーバ600と、外部機器700と、を備えている。VRシステム200は、ネットワーク2を介してサーバ600、MRシステム400、および外部機器700と通信可能に構成される。また、MRシステム400は、ネットワーク2を介してサーバ600、VRシステム200、および外部機器700と通信可能に構成される。情報処理システム100を構成するMRシステム400の数は、1つに限られず、複数存在してもよい。また、情報処理システム100を構成するVRシステム200の数は、1つに限られず、複数存在してもよい。なお、本実施形態では、VRシステム200とMRシステム400とのネットワーク2を介した通信は、サーバ600を介して行われるが、サーバ600を介さずに行われてもよい。なお、ネットワーク2は、例えば、インターネット、移動通信システム(例えば、3G、4G、5G、LTE(Long Term Evolution)等)、Wi-Fi(登録商標)、Bluetooth(登録商標)、その他の通信回線、またはこれらの組み合わせ等のいずれによって構成されていてもよい。
(VRシステムの構成)
図2に示されるように、VRシステム200は、VR装置210と、コンピュータ300と、検出装置260と、ディスプレイ270と、コントローラ280とを備える。VR装置210は、ディスプレイ211と、注視センサ212と、第1カメラ213と、第2カメラ214と、マイク215と、スピーカ216と、センサ217と、を備える。以下、VR装置210を使用するユーザを、VRユーザと呼ぶ。
図2に示されるように、VRシステム200は、VR装置210と、コンピュータ300と、検出装置260と、ディスプレイ270と、コントローラ280とを備える。VR装置210は、ディスプレイ211と、注視センサ212と、第1カメラ213と、第2カメラ214と、マイク215と、スピーカ216と、センサ217と、を備える。以下、VR装置210を使用するユーザを、VRユーザと呼ぶ。
コンピュータ300は、インターネットその他のネットワーク2に接続可能であり、例えば、ネットワーク2に接続されているサーバ600、MRシステム400のコンピュータ、およびその他のコンピュータと通信可能である。その他のコンピュータとしては、例えば、他のVRシステム200のコンピュータや外部機器700等が挙げられる。
VR装置210は、VRユーザの頭部に装着され、動作中に仮想空間をVRユーザに提供し得る。VR装置210は、例えば、ディスプレイを備える所謂ヘッドマウントディスプレイであってもよく、スマートフォンその他のディスプレイを有する端末が装着されたヘッドマウント機器等であってもよい。VR装置210は、例えば、右目用の画像および左目用の画像をディスプレイ211にそれぞれ表示する。VRユーザの各目がそれぞれの画像を視認すると、VRユーザは、両目の視差に基づき当該画像を3次元画像として認識し得る。
ディスプレイ211は、例えば、非透過型の表示装置として実現される。ディスプレイ211は、例えば、VRユーザの両目の前方に位置するようにVR装置210の本体に配置されている。したがって、VRユーザは、ディスプレイ211に表示される3次元画像を視認すると、仮想空間に没入することができる。なお、ディスプレイ211は、所謂スマートフォンその他の端末が備えるディスプレイ等によって実現されてもよい。
検出装置260は、VR装置210を使用するVRユーザの動きを検出する。検出装置260は、VR装置210の動きを検出するためのポジショントラッキング機能を有し、これによりVRユーザの動きを検出するものであってもよい。具体的には、検出装置260は、例えば、VRユーザの動きを検出するためのセンサとして、VR装置210からの光(例えば、赤外光)を読み取るセンサを有し、現実空間内におけるVR装置210の位置や傾き等を検出するものであってもよい。この場合に、VR装置210は、図示せぬ複数の光源を有していてもよい。また、各光源は例えば、赤外光を発するLED(Light Emitting Diode)により実現されてもよい。
また、検出装置260は、例えば、カメラにより実現されてもよい。具体的には、検出装置260は、VRユーザの動きを検出するためのセンサとして、イメージセンサ(例えば、RGB画像を取得するイメージセンサ、白黒画像を取得するイメージセンサ、またはデプスセンサ等)を有するものであってもよい。換言すると、VRユーザの動きは、カメラによって検出されてもよい。検出装置260は、例えば、赤外光や所定のパターンの光等の所定の光を放射する装置と、イメージセンサ(例えば、デプスセンサ)とを備えるデプスカメラ等であり、当該装置から放射された光の反射光を当該イメージセンサにより検出し、イメージセンサからの出力に基づいて、VRユーザの位置や姿勢等を検出するもの等であってもよい。また、検出装置460は、このようなデプスカメラとRGB画像が取得可能なカメラとを備えるものであり、これらのカメラからの出力に基づいて、VRユーザの位置や姿勢等を検出するもの等であってもよい。また、検出装置260は、例えば、複数のイメージセンサを備えるステレオカメラ等であり、複数のイメージセンサからの出力に基づいて、VRユーザの位置や姿勢等を検出するもの等であってもよい。なお、VRユーザの位置や姿勢等の検出とは、VRユーザの体の位置や姿勢等の検出であってもよく、VR装置210の位置や傾き等の検出であってもよい。
なお、VRシステム200は、検出装置260として、1または複数種類の検出装置を有していてもよく、各種類の検出装置を複数有していてもよい。また、VRシステム200は、検出装置260を有していなくてもよい。なお、検出装置260の一部がコンピュータ300等によって構成されてもよい。例えば、イメージセンサからの出力の解析(例
えば、画像認識等)は、コンピュータ300等で行われてもよい。
えば、画像認識等)は、コンピュータ300等で行われてもよい。
なお、検出装置260は、上述の各種センサ等に加え、検出装置260自身の位置や傾き等を検出可能なセンサを有していてもよい。具体的には、例えば、検出装置260は、角速度センサ(例えば、3軸角速度センサ)、加速度センサ(例えば、3軸加速度センサ)、または地磁気センサ(例えば、3軸地磁気センサ)等を有していてもよい。また、これらのセンサからの出力は、コンピュータ300等に送られ、例えば、検出装置260の備えるイメージセンサからの出力に基づいて所定の処理が行われる際等に使用されてもよい。
また、VR装置210は、VRユーザの動きを検出する検出手段として、検出装置260の代わりに、あるいは検出装置260に加えてセンサ217を備えてもよい。VR装置210は、センサ217を用いて、VR装置210自身の位置および傾きを検出し得る。センサ217は、例えば、角速度センサ(例えば、3軸角速度センサ)、加速度センサ(例えば、3軸加速度センサ)、または地磁気センサ(例えば、3軸地磁気センサ)等であってもよい。また、VR装置210は、センサ217として、1または複数種類のセンサを有していてもよく、各種類のセンサを複数有していてもよい。一例として、センサ217として角速度センサを用いた場合、VR装置210は、現実空間におけるVR装置210の3軸周りの角速度を経時的に検出できる。そして、VR装置210は、各角速度に基づいて、VR装置210の3軸周りの角度の時間的変化を算出し、さらに、角度の時間的変化に基づいて、VR装置210の傾きを算出すること等ができる。また、センサ217は、例えば、イメージセンサであってもよい。そして、当該イメージセンサからの出力に基づいて、VRユーザの位置や姿勢等を検出してもよい。換言すると、VRユーザの位置や姿勢等は、VR装置210の備えるVR装置210の周囲を撮影するカメラからの情報等に基づいて検出されてもよい。換言すると、VR装置210のトラッキングは、アウトサイドイン方式によって行われてもよく、インサイドアウト方式によって行われてもよい。
注視センサ212は、VRユーザの右目および左目の視線が向けられる方向を検出する。すなわち、注視センサ212は、VRユーザの視線(換言すると、目の動き)を検出する。視線の方向の検出は、例えば、公知のアイトラッキング機能によって実現される。注視センサ212は、当該アイトラッキング機能を有するセンサにより実現される。注視センサ212は、右目用のセンサおよび左目用のセンサを含んでいてもよい。注視センサ212は、例えば、VRユーザの右目および左目に赤外光を照射するとともに、照射光に対する角膜および虹彩からの反射光を受けることにより各眼球の回転角を検出するセンサであってもよい。この場合、注視センサ212は、検出した各回転角に基づいて、VRユーザの視線を検出することができる。
第1カメラ213は、VRユーザの顔の下部を撮影する。より具体的には、第1カメラ213は、VRユーザの鼻および口などを撮影する。第2カメラ214は、VRユーザの目および眉などを撮影する。ここで、VR装置210の筐体のVRユーザ側をVR装置210の内側、VR装置210の筐体のVRユーザとは逆側をVR装置210の外側と定義する。第1カメラ213は、VR装置210の外側に配置され、第2カメラ214は、VR装置210の内側に配置されてもよい。第1カメラ213および第2カメラ214により撮影された画像は、コンピュータ300に入力される。なお、第1カメラ213と第2カメラ214とを1台のカメラとして実現し、この1台のカメラでVRユーザの顔を撮影してもよい。
音入力手段としてのマイク215は、VRユーザの声を音信号(換言すると、電気信号)に変換してコンピュータ300に出力する。音出力手段としてのスピーカ216は、音信号を音に変換してVRユーザに出力する。なお、VR装置210は、音出力手段としてスピーカ216に代えてイヤホンを含んでいてもよい。
ディスプレイ270は、ディスプレイ211に表示されている画像と同様の画像を表示する。これにより、VR装置210を装着しているVRユーザ以外のユーザにも当該VRユーザと同様の画像(換言すると仮想空間)を視聴させることができる。ディスプレイ270に表示される画像は、3次元画像である必要はなく、例えば、VR装置210で表示される右目用の画像や左目用の画像であってもよい。ディスプレイ270としては、例えば、液晶ディスプレイや有機ELディスプレイなどが挙げられる。
コントローラ280は、有線または無線によりコンピュータ300に接続されている。コントローラ280は、VRユーザからコンピュータ300への指示に係る入力操作を受け付ける。また、コントローラ280は、仮想空間に配置される仮想オブジェクトの位置や動きを制御するためのVRユーザによる入力操作を受け付ける。コントローラ280は、例えば、VRユーザによって把持可能に構成されてもよい。また、コントローラ280は、例えば、VRユーザの身体あるいは衣類の一部に装着可能に構成されてもよい。具体的には、コントローラ280は、例えば、手袋型等であってもよい。また、コントローラ280は、コンピュータ300から送信される信号に基づいて、振動、音、光のうちの少なくともいずれかを出力可能に構成されてもよい。
また、コントローラ280は、複数の光源を有していてもよい。各光源は例えば、赤外光を発するLEDにより実現されてもよい。そして、検出装置260は、コントローラ280からの赤外光を読み取り、現実空間内におけるコントローラ280の位置および傾き等を検出してもよい。換言すると、検出装置260は、コントローラ280の動きを検出するポジショントラッキング機能を有し、これによりVRユーザの動きを検出するものであってもよい。
なお、VRシステム200は、コントローラ280を有していなくてもよい。
また、情報処理システム100は、VRユーザの動きを検出するセンサ286を有していてもよい。センサ286は、例えば、角速度センサ、加速度センサ、または地磁気センサであってもよい。また、センサ286は、例えば、コントローラ280に設けられていてもよい(図7参照)。なお、情報処理システム100は、センサ286として、1または複数種類のセンサを有していてもよく、各種類のセンサを複数有していてもよい。また、センサ286を備える装置(例えば、コントローラ280や所定のカメラ等)と、コンピュータ300とは、例えば、無線により互いに接続されてもよい。そして、センサ286により取得された情報は、例えば、無線通信によりコンピュータ300に送信されてもよい。
また、VRユーザの位置や動きは、VR装置210が、所定の無線通信(例えば、Wi-Fi通信、Bluetooth通信、またはUWB(Ultra Wide Band)通信などの近距離無線通信)を行う装置を備え、当該装置と周囲の機器とが無線通信を行いVR装置210の位置情報を取得することにより検出されてもよい。
また、VRユーザの位置や動きは、VRユーザが身につけるデバイス等(例えば、時計型、リストバンド型、指輪型、もしくは衣服型等のウェアラブルデバイス、または体内埋め込み型のデバイス等)の、VRユーザの動きをトラッキング可能とする外部機器700(および当該機器と近距離無線通信等により連携してVRユーザの動きをトラッキングする機器)を用いて検出されてもよい。また、これらの外部機器700をコントローラ280として使用してもよい。また、VRユーザの位置や動きは、GPSセンサ等によって検出されてもよい。
(コンピュータ300の構成)
図2に示されるように、コンピュータ300は、主たる構成要素として、プロセッサ301と、メモリ302と、ストレージ303と、入出力インターフェース304と、通信インターフェース305とを備える。各構成要素は、それぞれ、バスによって互いに接続されている。
図2に示されるように、コンピュータ300は、主たる構成要素として、プロセッサ301と、メモリ302と、ストレージ303と、入出力インターフェース304と、通信インターフェース305とを備える。各構成要素は、それぞれ、バスによって互いに接続されている。
プロセッサ301は、VR装置210の動作を制御する。プロセッサ301は、ストレージ303からプログラムを読み出し、メモリ302に展開する。プロセッサ301は、展開したプログラムを実行する。プロセッサ301は、例えば、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、MPU(Micro Processor Unit)、およびFPGA(Field-Programmable Gate Array)等のうちの1種類以上を含んで構成され得る。
メモリ302は、主記憶装置である。メモリ302は、例えば、ROM(Read Only Memory)およびRAM(Random Access Memory)等の記憶装置により構成される。メモリ302は、プロセッサ301がストレージ303から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ301に作業領域を提供する。メモリ302は、プロセッサ301がプログラムに従って動作している間に生成した各種データやコンピュータ300に入力された各種データ等も一時的に記憶する。
ストレージ303は、補助記憶装置である。ストレージ303は、例えば、フラッシュメモリまたはHDD(Hard Disk Drive)等の記憶装置により構成される。ストレージ303には、情報処理システム100においてサービスを提供するためのプログラムが格納される。また、ストレージ303には、情報処理システム100においてサービスを提供するための各種データが格納される。ストレージ303に格納されるデータには、仮想空間を規定するためのデータおよび仮想オブジェクトに関するデータ等が含まれる。
なお、ストレージ303は、メモリカードのように着脱可能な記憶装置として実現されてもよい。また、コンピュータ300に内蔵されたストレージ303の代わりに、外部の記憶装置に保存されているプログラムおよびデータが使用される構成であってもよい。
入出力インターフェース304は、コンピュータ300がデータの入力を受け付けるためのインターフェースであるとともに、コンピュータ300がデータを出力するためのインターフェースである。入出力インターフェース304は、VR装置210、検出装置260、およびディスプレイ270との間でデータの送信または受信をし得る。また、VR装置210に含まれるディスプレイ211、注視センサ212、第1カメラ213、第2カメラ214、マイク215、スピーカ216、およびセンサ217との間でデータの送信または受信をしてもよい。
なお、入出力インターフェース304は、コントローラ280との間でデータの送信または受信をしてもよい。例えば、入出力インターフェース304は、コントローラ280およびセンサ286から出力された信号の入力を受けてもよい。また、入出力インターフェース304は、プロセッサ301から出力された命令を、コントローラ280に送信してもよい。当該命令は、振動、音出力、発光等をコントローラ280に指示するものであってもよい。コントローラ280は、当該命令を受信すると、命令に応じて、振動、音出力または発光等を行う。
なお、VR装置210、検出装置260、ディスプレイ270、コントローラ280、およびセンサ286のそれぞれとコンピュータ300とは、有線接続されてもよく、無線接続されてもよい。
通信インターフェース305は、他のコンピュータ(例えば、サーバ600、コンピュータ500、または他のコンピュータ300等)とのネットワーク2を介した各種データの送受信を制御する。
プロセッサ301は、ストレージ303にアクセスし、ストレージ303に格納されているプログラムをメモリ302に展開し、当該プログラムに含まれる一連の命令を実行する。また、プロセッサ301は、入出力インターフェース304を介して、仮想空間を提供するための信号をVR装置210に送る。
なお、コンピュータ300はVR装置210の外部に設けられていてもよく、コンピュータ300の一部または全体がVR装置210に内蔵されてもよい。また、ディスプレイ211を含む携帯型の端末(例えば、スマートフォン)がコンピュータ300の少なくとも一部として機能してもよい。なお、VR装置210が複数存在する場合に、コンピュータ300は、各VR装置210に対して設けられていてもよく、複数のVR装置210に対して共通して用いられてもよい。
(座標系)
VRシステム200では、現実空間における座標系である実座標系が予め設定されている。実座標系は、現実空間における鉛直方向、鉛直方向に直交する水平方向、並びに、鉛直方向および水平方向の双方に直交する前後方向にそれぞれ平行な、3つの基準方向(軸)を有する。
VRシステム200では、現実空間における座標系である実座標系が予め設定されている。実座標系は、現実空間における鉛直方向、鉛直方向に直交する水平方向、並びに、鉛直方向および水平方向の双方に直交する前後方向にそれぞれ平行な、3つの基準方向(軸)を有する。
現実空間内におけるVR装置210の位置や傾きは、検出装置260やセンサ217によって検出できる。検出されるVR装置210の傾きは、例えば、実座標系におけるVR装置210の3軸周りの各傾きに相当する。コンピュータ300は、実座標系におけるVR装置210の傾きに基づき、uvw視野座標系をVR装置210に設定する(図4参照)。VR装置210に設定されるuvw視野座標系は、VR装置210を装着したVRユーザが仮想空間において物体を見る際の視点座標系に対応する。
ここで、uvw視野座標系について説明する。コンピュータ300は、VR装置210を装着したVRユーザの頭部を中心(原点)とした3次元のuvw視野座標系を設定する。より具体的には、コンピュータ300は、実座標系を規定する水平方向、鉛直方向、および前後方向を、実座標系内においてVR装置210の各軸周りの傾きだけ各軸周りにそれぞれ傾けることによって新たに得られる3つの方向を、VR装置210におけるuvw視野座標系のピッチ軸(u軸)、ヨー軸(v軸)、およびロール軸(w軸)として設定する。
例えば、VR装置210を装着したVRユーザが直立し、かつ、正面を視認している場合、プロセッサ301は、実座標系に平行な視野座標系をVR装置210に設定する。この場合、実座標系における水平方向、鉛直方向、および前後方向は、VR装置210における視野座標系のピッチ軸(u軸)、ヨー軸(v軸)、およびロール軸(w軸)に一致する。
uvw視野座標系がVR装置210に設定された後、検出装置260またはセンサ217は、VR装置210の動きに基づいて、設定されたuvw視野座標系におけるVR装置210の傾きを検出できる。この場合、検出装置260またはセンサ217は、VR装置210の傾きとして、uvw視野座標系におけるVR装置210のピッチ角、ヨー角、およびロール角をそれぞれ検出する。ピッチ角は、uvw視野座標系におけるピッチ軸周りのVR装置210の傾き角度を表す。ヨー角は、uvw視野座標系におけるヨー軸周りのVR装置210の傾き角度を表す。ロール角は、uvw視野座標系におけるロール軸周りのVR装置210の傾き角度を表す。
コンピュータ300は、検出されたVR装置210の傾きに基づいて、VR装置210が動いた後のVR装置210におけるuvw視野座標系を、VR装置210に設定する。VR装置210と、VR装置210のuvw視野座標系との関係は、VR装置210の位置および傾きに関わらず、常に一定である。VR装置210の位置および傾きが変わると、当該位置および傾きの変化に連動して、実座標系におけるVR装置210のuvw視野座標系の位置および傾きが変化する。
なお、検出装置260は、VR装置210の現実空間内における位置を、検出装置260に対する相対位置として特定してもよい。また、プロセッサ301は、特定された相対位置に基づいて、現実空間内(実座標系)におけるVR装置210のuvw視野座標系の原点を決定してもよい。
(仮想空間)
図4を参照して、仮想空間についてさらに説明する。図4は、ある実施の形態に従う仮想空間11を表現する一態様を概念的に表す図である。仮想空間11は、中心12の360度方向の全体を覆う全天球状の構造を有する。図4では、説明を複雑にしないために、仮想空間11のうちの上半分の天球が例示されている。仮想空間11では各メッシュが規定される。各メッシュの位置は、仮想空間11に規定されるグローバル座標系であるXYZ座標系における座標値として予め規定されている。コンピュータ300は、仮想空間11に展開可能なパノラマ画像13(静止画、動画等)を構成する各部分画像を、仮想空間11において対応する各メッシュにそれぞれ対応付ける。
図4を参照して、仮想空間についてさらに説明する。図4は、ある実施の形態に従う仮想空間11を表現する一態様を概念的に表す図である。仮想空間11は、中心12の360度方向の全体を覆う全天球状の構造を有する。図4では、説明を複雑にしないために、仮想空間11のうちの上半分の天球が例示されている。仮想空間11では各メッシュが規定される。各メッシュの位置は、仮想空間11に規定されるグローバル座標系であるXYZ座標系における座標値として予め規定されている。コンピュータ300は、仮想空間11に展開可能なパノラマ画像13(静止画、動画等)を構成する各部分画像を、仮想空間11において対応する各メッシュにそれぞれ対応付ける。
仮想空間11では、所定の点を原点12とするXYZ座標系が規定される。XYZ座標系は、例えば、実座標系に平行である。XYZ座標系における水平方向、鉛直方向(上下方向)、および前後方向は、それぞれX軸、Y軸、Z軸として規定される。したがって、XYZ座標系のX軸が実座標系の水平方向と平行であり、XYZ座標系のY軸(鉛直方向)が実座標系の鉛直方向と平行であり、XYZ座標系のZ軸(前後方向)が実座標系の前後方向と平行である。
VR装置210の起動時、すなわちVR装置210の初期状態においては、仮想カメラ14が、仮想空間11の所定の位置(例えば、中心)に配置される。また、プロセッサ301は、仮想カメラ14が撮影する画像をVR装置210のディスプレイ211に表示する。仮想カメラ14は、現実空間におけるVR装置210の動きに連動して、仮想空間11内で動く。これにより、現実空間におけるVR装置210の傾きや位置の変化が、仮想空間11において同様に再現され得る。
仮想カメラ14には、VR装置210の場合と同様に、uvw視野座標系が規定される。仮想空間11における仮想カメラ14のuvw視野座標系は、現実空間(実座標系)におけるVR装置210のuvw視野座標系に連動するように規定されている。したがって、VR装置210の傾きが変化すると、それに応じて、仮想カメラ14の傾きも変化する。なお、仮想カメラ14は、VRユーザの現実空間における移動に連動して、仮想空間11において移動してもよいが、本実施形態では、VRユーザが現実空間において移動しても、仮想空間11では移動しないようになっている。
コンピュータ300のプロセッサ301は、仮想カメラ14の位置と傾きとに基づいて、仮想空間11における視界領域15を規定する。視界領域15は、仮想空間11のうち、VR装置210を装着したVRユーザが視認する領域に対応する。つまり、仮想カメラ14の位置は、仮想空間11におけるVRユーザの視点といえる。
VR装置210のuvw視野座標系は、VRユーザがディスプレイ211を視認する際の視点座標系に等しい。仮想カメラ14のuvw視野座標系は、VR装置210のuvw視野座標系に連動している。したがって、注視センサ212によって検出されたVRユーザの視線を、仮想カメラ14のuvw視野座標系におけるVRユーザの視線とみなすことができる。
(視界領域)
図5および図6を参照して、視界領域15について説明する。図5は、仮想空間11において視界領域15をX方向から見たYZ断面を表す図である。図6は、仮想空間11において視界領域15をY方向から見たXZ断面を表す図である。
図5および図6を参照して、視界領域15について説明する。図5は、仮想空間11において視界領域15をX方向から見たYZ断面を表す図である。図6は、仮想空間11において視界領域15をY方向から見たXZ断面を表す図である。
図5に示されるように、YZ断面における視界領域15は、領域18を含む。領域18は、仮想カメラ14の位置と基準視線16と仮想空間11のYZ断面とによって定義される。プロセッサ301は、仮想空間における基準視線16を中心として極角αを含む範囲を、領域18として定義する。
図6に示されるように、XZ断面における視界領域15は、領域19を含む。領域19は、仮想カメラ14の位置と基準視線16と仮想空間11のXZ断面とによって定義される。プロセッサ301は、仮想空間11における基準視線16を中心とした方位角βを含む範囲を、領域19として定義する。極角αおよびβは、仮想カメラ14の位置と仮想カメラ14の傾き(向き)とに応じて定まる。
VRシステム200は、コンピュータ300からの信号に基づいて、視界画像17をディスプレイ211に表示させることにより、VRユーザに仮想空間11における視界を提供する(図4参照)。視界画像17は、パノラマ画像13のうち視界領域15に対応する部分に相当する画像である。VRユーザが、頭に装着したVR装置210を動かすと、その動きに連動して仮想カメラ14も動く。その結果、仮想空間11における視界領域15の位置が変化する。これにより、ディスプレイ211に表示される視界画像17は、パノラマ画像13のうち、仮想空間11においてVRユーザが向いた方向の視界領域15に重畳する画像に更新される。VRユーザは、仮想空間11における所望の方向を視認することができる。
VRユーザは、VR装置210を装着している間、現実世界を視認することなく、仮想空間11に展開されるパノラマ画像13のみを視認できる。そのため、情報処理システム100は、仮想空間11への高い没入感覚をVRユーザに与えることができる。
なお、仮想カメラ14は、2つの仮想カメラ、すなわち、右目用の画像を提供するための仮想カメラと、左目用の画像を提供するための仮想カメラとを含み得る。この場合、VRユーザが3次元の仮想空間11を認識できるように、適切な視差が、2つの仮想カメラに設定される。なお、仮想カメラ14を1つの仮想カメラにより実現してもよい。この場合、1つの仮想カメラにより得られた画像から、右目用の画像と左目用の画像とを生成するようにしてもよい。
(コントローラ)
図7を参照して、コントローラ280の一例について説明する。
図7を参照して、コントローラ280の一例について説明する。
図7に示されるように、コントローラ280は、右コントローラ280Rと図示せぬ左コントローラとを含み得る。この場合に、右コントローラ280Rは、VRユーザの右手で操作される。左コントローラは、VRユーザの左手で操作される。ある局面において、右コントローラ280Rと左コントローラとは、別個の装置として構成される。したがって、VRユーザは、右コントローラ280Rを把持した右手と、左コントローラを把持した左手とをそれぞれ自由に動かすことができる。別の局面において、コントローラ280は両手の操作を受け付ける一体型のコントローラであってもよい。以下、右コントローラ280Rについて説明する。
右コントローラ280Rは、グリップ281と、フレーム282と、天面283と、ボタン284,285と、センサ(例えば、モーションセンサ)286と、赤外光LED287と、ボタン288,289と、アナログスティック290とを備える。グリップ281は、VRユーザの右手によって把持されるように構成されている。たとえば、グリップ281は、VRユーザの右手の掌と3本の指(中指、薬指、小指)とによって保持され得る。
ボタン284は、グリップ281の側面に配置され、右手の中指による操作を受け付ける。ボタン285は、グリップ281の前面に配置され、右手の人差し指による操作を受け付ける。また、ボタン284,285は、ボタン284,285を押下するユーザの動きを検出するスイッチを備えている。なお、ボタン284,285は、トリガー式のボタンとして構成されてもよい。
センサ286は、グリップ281の筐体に内蔵されている。また、センサ286は、VRユーザの動きを検出する。具体的には、センサ286は、VRユーザの手の動きを検出する。例えば、センサ286は、手の回転速度、回転数等を検出する。なお、コントローラ280は、センサ286を備えなくてもよい。
フレーム282には、その円周方向に沿って複数の赤外光LED287が配置されている。赤外光LED287は、コントローラ280を使用するプログラムの実行中に、当該プログラムの進行に合わせて赤外光を発光する。赤外光LED287から発せられた赤外光は、右コントローラ280Rと左コントローラとの各位置や姿勢(傾き、向き)を検出するために使用され得る。
天面283は、ボタン288,289と、アナログスティック290とを備える。ボタン288,289は、VRユーザの右手の親指による操作を受け付ける。また、ボタン288,289は、ボタン288,289を押下するユーザの動きを検出するスイッチを備えている。アナログスティック290は、初期位置(ニュートラルの位置)から360度任意の方向への操作を受け付ける。当該操作は、たとえば、仮想空間11に配置されるオブジェクトを移動させるための操作を含む。また、アナログスティック290は、アナログスティック290を操作するユーザの動きを検出するセンサを備えている。
コントローラ280が検出したVRユーザの入力操作(換言すると、VRユーザの動き)に関する情報は、コンピュータ300に送られる。
図7に示されるように、コントローラ280には、例えば、VRユーザの右手に対して、ヨー、ロール、ピッチの各方向が規定される。具体的には、例えば、VRユーザが親指と人差し指とを伸ばした場合に、親指の伸びる方向がヨー方向、人差し指の伸びる方向がロール方向、ヨー方向の軸およびロール方向の軸によって規定される平面に垂直な方向がピッチ方向として規定される。
(MRシステムの構成)
図3に示されるように、MRシステム400は、MR装置410と、コンピュータ500と、検出装置460と、ディスプレイ470と、コントローラ480とを備える。MR装置410は、ディスプレイ411と、注視センサ412と、カメラ413と、マイク415と、スピーカ416と、センサ417とを備える。以下、MR装置410を使用するユーザを、MRユーザ6と呼ぶ。
図3に示されるように、MRシステム400は、MR装置410と、コンピュータ500と、検出装置460と、ディスプレイ470と、コントローラ480とを備える。MR装置410は、ディスプレイ411と、注視センサ412と、カメラ413と、マイク415と、スピーカ416と、センサ417とを備える。以下、MR装置410を使用するユーザを、MRユーザ6と呼ぶ。
コンピュータ500は、インターネットその他のネットワーク2に接続可能であり、例えば、ネットワーク2に接続されているサーバ600、VRシステム200のコンピュータ、およびその他のコンピュータと通信可能である。その他のコンピュータとしては、例えば、他のMRシステム400のコンピュータや外部機器700等が挙げられる。
MR装置410は、MRユーザ6の頭部に装着され、動作中に複合現実空間をMRユーザ6に提供し得る。MR装置410は、例えば、ディスプレイを備えるメガネ型の装置(例えば、所謂MRグラス)であってもよい。また、MR装置410は、コンタクトレンズ型の装置等であってもよい。
ディスプレイ411は、例えば、透過型の表示装置として実現される。なお、透過型のディスプレイ411は、その透過率を調整することにより、一時的に非透過型の表示装置として機能するものであってもよい。ディスプレイ411は、例えば、MRユーザ6の両目の前方に位置するようにMR装置410の本体に配置されている。したがって、MRユーザ6には、透過型のディスプレイ411を介して見える現実空間に、ディスプレイ411が表示する仮想オブジェクトが重畳された表示が提供される。すなわち、MR装置410は、現実空間に仮想オブジェクトが配置された複合現実空間のビューをMRユーザ6に提供する。換言すると、MRユーザ6は、MR装置410により、仮想オブジェクトと、現実空間に存在するオブジェクト(以下、「現実オブジェクト」という。)とを同時に見ることができる。
検出装置460は、MR装置410を使用するMRユーザ6の動きを検出する。検出装置460は、MR装置410の動きを検出するためのポジショントラッキング機能を有し、これによりMRユーザ6の動きを検出するものであってもよい。具体的には、検出装置460は、例えば、MRユーザ6の動きを検出するためのセンサとして、MR装置410からの光(例えば、赤外光)を読み取るセンサを有し、複合現実空間内におけるMR装置410の位置や傾き等を検出するものであってもよい。この場合に、MR装置410は、図示せぬ複数の光源を有していてもよい。また、各光源は例えば、赤外光を発するLED(Light Emitting Diode)により実現されてもよい。
また、検出装置460は、例えば、カメラにより実現されてもよい。具体的には、検出装置460は、MRユーザ6の動きを検出するためのセンサとして、イメージセンサ(例えば、RGB画像を取得するイメージセンサ、白黒画像を取得するイメージセンサ、またはデプスセンサ等)を有するものであってもよい。換言すると、MRユーザ6の動きは、カメラによって検出されてもよい。検出装置460は、例えば、赤外光や所定のパターンの光等の所定の光を放射する装置と、イメージセンサ(例えば、デプスセンサ)とを備えるデプスカメラ等であり、当該装置から放射された光の反射光を当該イメージセンサにより検出し、イメージセンサからの出力に基づいて、MRユーザ6の位置や姿勢等を検出するもの等であってもよい。また、検出装置460は、このようなデプスカメラとRGB画像が取得可能なカメラとを備えるものであり、これらのカメラからの出力に基づいて、MRユーザ6の位置や姿勢等を検出するもの等であってもよい。また、検出装置460は、例えば、複数のイメージセンサを備えるステレオカメラ等であり、複数のイメージセンサからの出力に基づいて、MRユーザ6の位置や姿勢等を検出するもの等であってもよい。なお、MRユーザ6の位置や姿勢等の検出とは、MRユーザ6の体の位置や姿勢等の検出であってもよく、MR装置410の位置や傾き等の検出であってもよい。
なお、MRシステム400は、検出装置460として、1または複数種類の検出装置を有していてもよく、各種類の検出装置を複数有していてもよい。例えば、MRシステム400は、複数のカメラ(換言すると、複数のセンサ)を備え、当該複数のカメラが検出装置460として機能してもよい。本実施形態では、MRシステム400は、3台の検出装置460を備え、各検出装置460が、デプスカメラとRGB画像が取得可能なカメラとを備えるものとして説明する。なお、検出装置460の一部がコンピュータ500等によって構成されてもよい。例えば、イメージセンサからの出力の解析(例えば、画像認識等)は、コンピュータ500等で行われてもよい。なお、MRシステム400は、検出装置460を有していなくてもよい。
なお、検出装置460は、上述の各種センサ等に加え、検出装置460自身の位置や傾き等を検出可能なセンサを有していてもよい。具体的には、例えば、検出装置460は、角速度センサ(例えば、3軸角速度センサ)、加速度センサ(例えば、3軸加速度センサ)、または地磁気センサ(例えば、3軸地磁気センサ)等を有していてもよい。また、これらのセンサからの出力は、コンピュータ500等に送られ、例えば、検出装置460の備えるイメージセンサからの出力に基づいて所定の処理が行われる際等に使用されてもよい。
また、後述するMR装置410の構成から理解されるように、他のMRユーザ6のMR装置410が、検出装置460として用いられてもよい。
また、MR装置410は、MRユーザ6の動きを検出する検出手段として、検出装置460の代わりに、あるいは検出装置460に加えてセンサ417を備えてもよい。MR装置410は、センサ417を用いて、MR装置410自身の位置および傾きを検出し得る。センサ417は、例えば、角速度センサ(例えば、3軸角速度センサ)、加速度センサ(例えば、3軸加速度センサ)、または地磁気センサ(例えば、3軸地磁気センサ)等であってもよい。また、MR装置410は、センサ417として、1または複数種類のセンサを有していてもよく、各種類のセンサを複数有していてもよい。
注視センサ412は、MRユーザ6の右目および左目の視線が向けられる方向を検出する。すなわち、注視センサ412は、MRユーザ6の視線(換言すると、目の動き)を検出する。視線の方向の検出は、例えば、公知のアイトラッキング機能によって実現される。注視センサ412は、当該アイトラッキング機能を有するセンサにより実現される。注視センサ412は、右目用のセンサおよび左目用のセンサを含んでいてもよい。注視センサ412は、例えば、MRユーザ6の右目および左目に赤外光を照射するとともに、照射光に対する角膜および虹彩からの反射光を受けることにより各眼球の回転角を検出するセンサであってもよい。この場合、注視センサ412は、検出した各回転角に基づいて、MRユーザ6の視線を検出することができる。
カメラ413は、MRユーザ6の周囲(例えば、前方)を撮影する。MR装置410は、例えば、カメラ413として、デプスカメラと、RGB画像が取得可能なカメラとを備えていてもよい。そして、カメラ413からの出力に基づいて、コンピュータ500が、MR装置410(換言するとMRユーザ6)の周囲のオブジェクトの形状や、MR装置410と周囲のオブジェクトとの相対的な距離等を検出してもよい。また、MR装置410の位置や傾きは、カメラ413からの出力に基づいて検出されてもよい。換言すると、MR装置410のトラッキングは、アウトサイドイン方式によって行われてもよく、インサイドアウト方式によって行われてもよい。
音入力手段としてのマイク415は、MRユーザ6の声を音信号(換言すると、電気信号)に変換してコンピュータ500に出力する。音出力手段としてのスピーカ416は、音信号を音に変換してMRユーザ6に出力する。なお、MR装置410は、音出力手段としてスピーカ416に代えてイヤホンを含んでいてもよい。
ディスプレイ470は、例えば、ディスプレイ411に表示されている画像と同様の画像を表示する。これにより、MR装置410を装着しているMRユーザ6以外のユーザにも当該MRユーザ6と同様の画像を視聴させることができる。ディスプレイ470に表示される画像は、3次元画像である必要はなく、例えば、MR装置410で表示される右目用の画像や左目用の画像であってもよい。ディスプレイ470としては、例えば、液晶ディスプレイや有機ELディスプレイなどが挙げられる。なお、ディスプレイ470は、MR装置410がMRユーザ6に提供する複合現実空間のビューを示す画像を表示してもよい。
コントローラ480は、有線または無線によりコンピュータ500に接続されている。コントローラ480は、MRユーザ6からコンピュータ500への指示に係る入力操作を受け付ける。また、コントローラ480は、複合現実空間に配置される仮想オブジェクトの位置や動きを制御するためのMRユーザ6による入力操作を受け付ける。コントローラ480は、例えば、MRユーザ6によって把持可能に構成されてもよい。また、コントローラ480は、例えば、MRユーザ6の身体あるいは衣類の一部に装着可能に構成されてもよい。また、コントローラ480は、コンピュータ500から送信される信号に基づいて、振動、音、光のうちの少なくともいずれかを出力可能に構成されてもよい。
また、コントローラ480は、複数の光源を有していてもよい。各光源は例えば、赤外光を発するLEDにより実現されてもよい。そして、検出装置460は、コントローラ480からの赤外光を読み取り、複合現実空間内におけるコントローラ480の位置および傾き等を検出してもよい。換言すると、検出装置460は、コントローラ480の動きを検出するポジショントラッキング機能を有し、これによりMRユーザ6の動きを検出するものであってもよい。
なお、MRシステム400は、コントローラ480を有していなくてもよい。また、コントローラ480は、例えば、コントローラ280の備える構成の一部または全部を有していてもよい。
なお、情報処理システム100は、MRユーザ6の動きを検出するセンサ486を有していてもよい。センサ486は、例えば、角速度センサ、加速度センサ、または地磁気センサであってもよい。また、センサ486は、例えば、コントローラ480に設けられていてもよい。なお、情報処理システム100は、センサ486として、1または複数種類のセンサを有していてもよく、各種類のセンサを複数有していてもよい。また、センサ486を備える装置(例えば、コントローラ480や所定のカメラ等)と、コンピュータ500とは、例えば、無線により互いに接続されてもよい。そして、センサ486により取得された情報は、例えば、無線通信によりコンピュータ300に送信されてもよい。
また、MRユーザ6の位置や動きは、MR装置410が、所定の無線通信(例えば、Wi-Fi通信、Bluetooth通信、またはUWB通信などの近距離無線通信)を行う装置を備え、当該装置と周囲の機器とが無線通信を行いVR装置210の位置情報を取得することにより検出されてもよい。
また、MRユーザ6の位置や動きは、MRユーザ6が身につけるデバイス等(例えば、時計型、リストバンド型、指輪型、もしくは衣服型等のウェアラブルデバイス、または体内埋め込み型のデバイス等)の、MRユーザ6の動きをトラッキング可能とする外部機器700(および当該機器と近距離無線通信等により連携してMRユーザ6の動きをトラッキングする機器)を用いて検出されてもよい。また、これらの外部機器700をコントローラ480として使用してもよい。また、MRユーザ6の位置や動きは、GPSセンサ等によって検出されてもよい。
(コンピュータ500の構成)
図3に示されるように、コンピュータ500は、主たる構成要素として、プロセッサ501と、メモリ502と、ストレージ503と、入出力インターフェース504と、通信インターフェース505とを備える。各構成要素は、それぞれ、バスによって互いに接続されている。
図3に示されるように、コンピュータ500は、主たる構成要素として、プロセッサ501と、メモリ502と、ストレージ503と、入出力インターフェース504と、通信インターフェース505とを備える。各構成要素は、それぞれ、バスによって互いに接続されている。
プロセッサ501は、MR装置410の動作を制御する。プロセッサ501は、ストレージ503からプログラムを読み出し、メモリ502に展開する。プロセッサ501は、展開したプログラムを実行する。プロセッサ501は、例えば、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、MPU(Micro Processor Unit)、およびFPGA(Field-Programmable Gate Array)等のうちの1種類以上を含んで構成され得る。
メモリ502は、主記憶装置である。メモリ502は、例えば、ROM(Read Only Memory)およびRAM(Random Access Memory)等の記憶装置により構成される。メモリ502は、プロセッサ501がストレージ503から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ501に作業領域を提供する。メモリ502は、プロセッサ501がプログラムに従って動作している間に生成した各種データやコンピュータ500に入力された各種データ等も一時的に記憶する。
ストレージ503は、補助記憶装置である。ストレージ503は、例えば、フラッシュメモリまたはHDD(Hard Disk Drive)等の記憶装置により構成される。ストレージ503には、情報処理システム100においてサービスを提供するためのプログラムが格納される。また、ストレージ503には、情報処理システム100においてサービスを提供するための各種データが格納される。ストレージ503に格納されるデータには、複合現実空間を規定するためのデータおよび仮想オブジェクトに関するデータ等が含まれる。
なお、ストレージ503は、メモリカードのように着脱可能な記憶装置として実現されてもよい。また、コンピュータ500に内蔵されたストレージ503の代わりに、外部の記憶装置に保存されているプログラムおよびデータが使用される構成であってもよい。
入出力インターフェース504は、コンピュータ500がデータの入力を受け付けるためのインターフェースであるとともに、コンピュータ500がデータを出力するためのインターフェースである。入出力インターフェース504は、MR装置410、検出装置460、およびディスプレイ470との間でデータの送信または受信をし得る。また、入出力インターフェース504は、MR装置410に含まれるディスプレイ411、注視センサ412、カメラ413、マイク415、スピーカ416、およびセンサ417との間でデータの送信または受信をしてもよい。
なお、入出力インターフェース504は、コントローラ480との間でデータの送信または受信をしてもよい。例えば、入出力インターフェース504は、コントローラ480およびセンサ486から出力された信号の入力を受けてもよい。また、入出力インターフェース504は、プロセッサ501から出力された命令を、コントローラ480に送信してもよい。当該命令は、振動、音出力、発光等をコントローラ480に指示するものであってもよい。コントローラ480は、当該命令を受信すると、命令に応じて、振動、音出力または発光等を行う。
なお、MR装置410、検出装置460、ディスプレイ470、コントローラ480、およびセンサ486のそれぞれとコンピュータ500とは、有線接続されてもよく、無線接続されてもよい。
通信インターフェース505は、他のコンピュータ(例えば、サーバ600、コンピュータ300、または他のコンピュータ500等)とのネットワーク2を介した各種データの送受信を制御する。
プロセッサ501は、ストレージ503にアクセスし、ストレージ503に格納されているプログラムをメモリ502に展開し、当該プログラムに含まれる一連の命令を実行する。また、プロセッサ501は、入出力インターフェース504を介して、複合現実空間を提供するための信号をMR装置410に送る。
なお、コンピュータ500は、MR装置410の外部に設けられていてもよく、コンピュータ500の一部または全体がMR装置410に内蔵されてもよい。また、MR装置410が複数存在する場合に、コンピュータ500は、各MR装置410に対して設けられていてもよく、複数のMR装置410に対して共通して用いられてもよい。また、この場合に、コンピュータ500の一部が複数のMR装置410のそれぞれに内蔵されるなどしてもよい。本実施形態では、コンピュータ500に複数のMR装置410が接続される場合を例に説明する。
現実空間(換言すると、複合現実空間)内におけるMR装置410の位置や傾きを取得する方法は周知であり、また、前述のVR装置210における方法と同様の方法により検出できるため説明を省略する。
(サーバの構成)
サーバ600は、コンピュータ300にプログラムを送信し得る。また、サーバ600は、コンピュータ500にプログラムを送信し得る。また、サーバ600は、コンピュータ300とコンピュータ500との通信を可能とする。また、サーバ600は、コンピュータ300と他のコンピュータ300との通信を可能とする。例えば、情報処理システム100が、複数のVRユーザが参加可能なサービスを提供する場合、VRユーザの各コンピュータ300は、サーバ600を介して他のコンピュータ300と通信し、これにより同じ仮想空間において複数のVRユーザが体験を共有することが可能となっていてもよい。なお、各コンピュータ300は、サーバ600を介さずに他のコンピュータ300と通信するようにしてもよい。
サーバ600は、コンピュータ300にプログラムを送信し得る。また、サーバ600は、コンピュータ500にプログラムを送信し得る。また、サーバ600は、コンピュータ300とコンピュータ500との通信を可能とする。また、サーバ600は、コンピュータ300と他のコンピュータ300との通信を可能とする。例えば、情報処理システム100が、複数のVRユーザが参加可能なサービスを提供する場合、VRユーザの各コンピュータ300は、サーバ600を介して他のコンピュータ300と通信し、これにより同じ仮想空間において複数のVRユーザが体験を共有することが可能となっていてもよい。なお、各コンピュータ300は、サーバ600を介さずに他のコンピュータ300と通信するようにしてもよい。
図1に示されるように、サーバ600は、プロセッサ601と、メモリ602と、ストレージ603と、入出力インターフェース604と、通信インターフェース605とを備える。各構成要素は、それぞれ、バスによって互いに接続されている。
プロセッサ601は、サーバ600全体の動作を制御する。プロセッサ601は、ストレージ603からプログラムを読み出し、メモリ602に展開する。プロセッサ601は、展開したプログラムを実行する。プロセッサ601は、例えば、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、MPU(Micro Processor Unit)、およびFPGA(Field-Programmable Gate Array)等のうちの1種類以上を含んで構成され得る。
メモリ602は、主記憶装置である。メモリ602は、例えば、ROM(Read Only Memory)およびRAM(Random Access Memory)等の記憶装置により構成される。メモリ602は、プロセッサ601がストレージ603から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ601に作業領域を提供する。メモリ602は、プロセッサ601がプログラムに従って動作している間に生成した各種データやサーバ600に入力された各種データ等も一時的に記憶する。
ストレージ603は、補助記憶装置である。ストレージ603は、例えば、フラッシュメモリまたはHDD(Hard Disk Drive)等の記憶装置により構成される。ストレージ603には、情報処理システム100においてサービスを提供するためのプログラムが格納される。また、ストレージ603には、情報処理システム100においてサービスを提供するための各種データが格納される。ストレージ603に格納されるデータには、仮想空間を規定するためのデータ、複合現実空間を規定するためのデータ、および仮想オブジェクトに関するデータ等が含まれる。
なお、ストレージ603は、メモリカードのように着脱可能な記憶装置として実現されてもよい。また、サーバ600に内蔵されたストレージ603の代わりに、外部の記憶装置に保存されているプログラムおよびデータが使用される構成であってもよい。
入出力インターフェース604は、サーバ600がデータの入力を受け付けるためのインターフェースであるとともに、サーバ600がデータを出力するためのインターフェースである。入出力インターフェース604は、例えば、マウス、キーボード等の入力機器や、ディスプレイ等の出力機器との間でデータの送信または受信をし得る。
通信インターフェース605は、他のコンピュータ(例えば、コンピュータ300、およびコンピュータ500等)とのネットワーク2を介した各種データの送受信を制御する。
外部機器700は、コンピュータ300、コンピュータ500、またはサーバ600と通信可能な機器であればどのような機器であってもよい。外部機器700は、例えば、ネットワーク2を介してコンピュータ300と通信可能な機器であってもよく、近距離無線通信や有線接続によりコンピュータ300と通信可能な機器であってもよい。また、外部機器700は、例えば、ネットワーク2を介してコンピュータ500と通信可能な機器であってもよく、近距離無線通信や有線接続によりコンピュータ500と通信可能な機器であってもよい。また、外部機器700は、例えば、ネットワーク2を介してサーバ600と通信可能な機器であってもよい。外部機器700としては、例えば、スマートデバイス、PC(Personal Computer)、およびコンピュータ300やコンピュータ500の周辺機器などが挙げられるが、これらに限定されるものではない。
<情報処理システムの制御>
本実施形態のMRシステム400では、MR装置410は、周知のMR装置と同様、現実空間に仮想オブジェクトが配置された複合現実空間のビューをMRユーザ6に提供する。また、本実施形態のVRシステム200では、VR装置210は、周知のVR装置と同様、仮想空間のビューをVRユーザに提供する。また、本実施形態のMRシステム400では、MRユーザ6は、複合現実空間中の仮想オブジェクトを操作することが可能となっている。また、本実施形態のVRシステム200では、VRユーザは、仮想空間中の仮想オブジェクトを操作することが可能となっている。加えて、本実施形態の情報処理システム100では、VRシステム200を使用するVRユーザの動き等が、MRシステム400の提供する複合現実空間のビューに含まれる仮想オブジェクトに反映されるようになっている。また、本実施形態の情報処理システム100では、MRシステム400を使用するMRユーザ6の動き等が、VRシステム200の提供する仮想空間のビューに含まれる仮想オブジェクトに反映されるようになっている。なお、本実施形態では、VRユーザの動き等の仮想空間および複合現実空間の仮想オブジェクトへの反映はリアルタイムで行われる。また、本実施形態では、MRユーザ6の動き等の仮想空間および複合現実空間の仮想オブジェクトへの反映はリアルタイムで行われる。
本実施形態のMRシステム400では、MR装置410は、周知のMR装置と同様、現実空間に仮想オブジェクトが配置された複合現実空間のビューをMRユーザ6に提供する。また、本実施形態のVRシステム200では、VR装置210は、周知のVR装置と同様、仮想空間のビューをVRユーザに提供する。また、本実施形態のMRシステム400では、MRユーザ6は、複合現実空間中の仮想オブジェクトを操作することが可能となっている。また、本実施形態のVRシステム200では、VRユーザは、仮想空間中の仮想オブジェクトを操作することが可能となっている。加えて、本実施形態の情報処理システム100では、VRシステム200を使用するVRユーザの動き等が、MRシステム400の提供する複合現実空間のビューに含まれる仮想オブジェクトに反映されるようになっている。また、本実施形態の情報処理システム100では、MRシステム400を使用するMRユーザ6の動き等が、VRシステム200の提供する仮想空間のビューに含まれる仮想オブジェクトに反映されるようになっている。なお、本実施形態では、VRユーザの動き等の仮想空間および複合現実空間の仮想オブジェクトへの反映はリアルタイムで行われる。また、本実施形態では、MRユーザ6の動き等の仮想空間および複合現実空間の仮想オブジェクトへの反映はリアルタイムで行われる。
以下では、本実施形態に係る構成が、MRユーザ6とVRユーザとの間でのコミュニケーションを可能とするサービス(換言すると、アプリケーション)に適用される場合を例に説明する。具体的には、所定の現実空間としての会議室にいるMRユーザ6と、当該会議室と離れた場所にいるVRユーザとが、仮想オブジェクトとしての製品のモックアップ等のオブジェクトを同時に見ながら会議を行うこと等を可能とするサービスに本実施形態に係る構成が適用される場合を例に説明する。なお、本実施形態に係る構成は、例えば、学校の授業を自宅から受けることを可能とするシステム等に適用することもできる。また、本実施形態に係る構成は、特定の家で行われるホームパーティに他の場所から参加することを可能とするシステム等に適用することもできる。なお、本実施形態に係る構成の適用先は、これらのサービスに限られない。また、以下では、図8に示されるように、会議室には、複数の検出装置460が会議室中の所定の位置に予め設置されているものとして説明する。また、会議室には、MRユーザ6としてMRユーザ6A、MRユーザ6B、およびMRユーザ6Cの3名が存在するものとして説明する。なお、以下では、VRユーザのアバターオブジェクトをVRアバター25と呼ぶ。また、MRユーザ6のアバターオブジェクトをMRアバター26と呼ぶ。具体的には、MRユーザ6AのアバターオブジェクトをMRアバター26Aと呼び、MRユーザ6BのアバターオブジェクトをMRアバター26Bと呼び、MRユーザ6CのアバターオブジェクトをMRアバター26Cと呼ぶ。
図8を参照しながら、現実の会議室21(換言すると、複合現実空間21)にいるMRユーザ6A,6B,6Cに提供される視界と、VR装置210を介してこの会議室21を模した仮想空間11に入り込むVRユーザに提供される視界とについて説明する。図8は、MRユーザ6A,6B,6CとVRユーザとが、サービスを利用しているときの現実の会議室21の状態と、仮想空間11の状態とを表す模式図である。図8の上側部分には、現実の会議室21の状態が示され、図8の下側部分には、仮想空間11の状態が示されている。なお、図8においては、VRアバター25がVR装置210を装着しているが、これは説明を分かりやすくするためのものであり、実際にはVRアバター25は、VR装置210(仮想的なVR装置210)を装着していなくてもよい。また、図8においては、MRアバター26がMR装置410(仮想的なMR装置410)を装着していないが、MRアバター26が、MR装置410を装着していてもよい。
図8に示されるように、会議室21には、現実オブジェクトとしての机8等が配置されている。また、会議室21には、3台の検出装置460が配置されている。また、会議室21には、3名のMRユーザ6A,6B,6Cが存在する。一方、会議室21には、VRユーザは存在しない。ここで、MRユーザ6A,6B,6Cのそれぞれが使用するMR装置410のディスプレイ411には、仮想オブジェクトとして、VRアバター25と、モックアップの仮想オブジェクト30(以下、「仮想模型30」ともいう。)とが表示される。すなわち、MR装置410では、透過型のディスプレイ411を介して見える現実の会議室21に、VRアバター25や仮想模型30が現れた表示がされる。このため、MRユーザ6A,6B,6Cには、実際には会議室21に存在しないVRアバター25や仮想模型30があたかも会議室21に存在するかのような視界が提供される。
また、VRユーザがVR装置210を介して見る仮想空間11は、会議室21を模したものであり、現実の会議室21に存在する机8の仮想オブジェクト31等を含んでいる。また、当該仮想空間11には、MRユーザ6A,6B,6CのMRアバター26A,26B,26Cや、仮想模型30等が配置される。このため、VRユーザには、あたかもMRユーザ6A,6B,6Cがいる会議室21に自身がいるかのような視界が提供される。
このように、本実施形態の情報処理システム100では、MRユーザ6は、透過型のディスプレイ411を介して、実際に同じ場所に存在する他のMRユーザ6や現実オブジェクトが視認できる。また、その上で、MRユーザ6の視点では、仮想オブジェクトとして現れるVRユーザのVRアバター25が視認できる。このため、MRユーザ6は、現実世界にいる感覚を損なうことなく、VRユーザや他のMRユーザ6等とコミュニケーションを図ることができる。また、VRユーザは、現実世界においてMRユーザ6と異なる場所におり、このような場合、VRユーザのいる場所とMRユーザ6のいる場所とでは、部屋の形状等が異なる場合が多い。このため、VRユーザ側においても、MR装置410等を使用して現実空間にMRアバター26を表示させることとすると、違和感のある表示になってしまうおそれがある。本実施形態では、VRユーザは、仮想空間11に入り込み、MRユーザ6等とコミュニケーションを取ることができるので、このような違和感が生じることを防止できる。また、VRユーザに提供される仮想空間11は、MRユーザ6のいる場所を模したものであるため、VRユーザやMRユーザ6がそれぞれ仮想空間11または現実空間で動き回る場合や仮想オブジェクトを動かす場合に、相手方に対して表示されるアバターや仮想模型30等の動きが自然なものとなる。また、VRユーザやMRユーザ6は仮想模型30等の仮想オブジェクトを操作する場合に、相手方にどのように見えるのか等をイメージすることが容易となり、円滑なコミュニケーションを図ることが可能となる。
以下、図9を参照しながら、情報処理システム100の機能的構成について説明する。なお、図9に示す機能的構成は一例にすぎない。VRシステム200、MRシステム400、およびサーバ600のそれぞれは、他の装置が備える機能の少なくとも一部を備えていてもよい。換言すると、本実施形態においてコンピュータ300、コンピュータ500、およびサーバ600のそれぞれが備える機能ブロックの一部または全部を、コンピュータ300、コンピュータ500、サーバ600、またはその他の装置が備えていてもよい。また、コンピュータ300、コンピュータ500、およびサーバ600等の各装置は、一体の機器により実現されるものでなくてもよく、例えば、ネットワーク等を介して接続される複数の機器によって実現されてもよい。
また、本実施形態では、プロセッサ301、プロセッサ501、またはプロセッサ601が、情報処理システム100に記憶されているプログラムを実行することによって、後述する各処理を行うものとして説明する。ただし、後述する処理であってプロセッサ301が行う処理のうちの少なくとも一部を、プロセッサ301とは別のプロセッサが実行するようにしてもよい。また、後述する処理であってプロセッサ501が行う処理のうちの少なくとも一部を、プロセッサ501とは別のプロセッサが実行するようにしてもよい。また、後述する処理であってプロセッサ601が行う処理のうちの少なくとも一部を、プロセッサ601とは別のプロセッサが実行するようにしてもよい。換言すると、本実施形態においてプログラムを実行するコンピュータは、コンピュータ300、コンピュータ500、およびサーバ600を含むいずれのコンピュータであってもよく、また、複数の装置の組み合わせにより実現されてもよい。
図9は、情報処理システム100の機能的構成を示すブロック図である。図9に示されるように、コンピュータ300(換言すると、VRシステム200)は、プロセッサ301、メモリ302、ストレージ303、入出力インターフェース304、および通信インターフェース305の協働によって、制御部310および記憶部311として機能する。また、コンピュータ500(換言すると、MRシステム400)は、プロセッサ501、メモリ502、ストレージ503、入出力インターフェース504、および通信インターフェース505の協働によって、制御部510および記憶部511として機能する。また、サーバ600は、プロセッサ601、メモリ602、ストレージ603、入出力インターフェース604、および通信インターフェース605の協働によって、制御部610および記憶部611として機能する。
MRシステム400の制御部510は、仮想空間生成部810と、座標定義部812と、MR側入力受付部816と、ユーザ情報取得部818と、MR側オブジェクト制御部820と、表示制御部840と、音制御部845と、通信制御部850と、を備える。
仮想空間生成部810は、所定の現実空間に基づいて仮想空間(換言すると、仮想空間を表す仮想空間データ)を生成する。換言すると、仮想空間生成部810は、所定の現実空間を模した仮想空間を生成する。ここで、所定の現実空間とは、現実世界に存在する所定の場所であり、例えば、会議室、または学校の教室のような特定の部屋等であってもよい。また、所定の現実空間とは、例えば、学校、または家のような特定の建物等であってもよい。また、所定の現実空間とは、例えば、特定の町等であってもよい。換言すると、所定の現実空間とは、壁等によって仕切られた空間でなくてもよい。また、所定の現実空間を模したとは、生成される仮想空間が、現実空間の基本的な構造と同様の構造を有するものであればよい。具体的には、例えば、現実世界の会議室を模した仮想空間は、仮想空間としての仮想の部屋の形状(例えば、壁や床等の形状等)が現実世界の会議室の形状と略一致したものであって、現実世界の会議室に存在する机や椅子等の現実オブジェクトに対応する仮想オブジェクトが配置されたもの等とすることができる。このとき、机、椅子、壁、床等の仮想オブジェクトは、現実オブジェクトの形態を精密にコピーしたものでなくてもよく、例えば、形状、模様、または色彩等が簡略化されたものであってもよい。また、例えば、壁に貼られたポスターあるいは机や床等に置かれた小物等、現実オブジェクトには、仮想世界に表れないオブジェクト(対応する仮想オブジェクトが存在しない現実オブジェクト)が存在してもよい。
本実施形態では、前述のように、所定の現実空間は、特定の会議室21であり、当該特定の会議室21を模した仮想空間11が生成されるものとして説明する。
現実空間を模した仮想空間を生成する方法については、公知の方法が利用でき、また特に限定されるものではないが、例えば以下のようにしてもよい。すなわち、仮想空間生成部810は、例えば、現実空間を構成する壁、床、机、椅子等の現実オブジェクトの形状や位置等を検出可能なセンサからの情報に基づいて仮想空間11を生成する。具体的には、仮想空間生成部810は、例えば、検出装置460またはMR装置410が備えるイメージセンサ(例えば、RGB画像を取得するイメージセンサ、白黒画像を取得するイメージセンサ、またはデプスセンサ等)からの情報に基づいて現実空間の3次元情報を取得し、仮想空間を生成してもよい。また、仮想空間生成部810は、仮想空間11の生成に、例えば、加速度センサ、角速度センサ、または地磁気センサ等の情報を用いてもよい。
仮想空間生成部810は、生成した仮想空間11を示すデータ(以下、「仮想空間データ」という。)を、例えば、仮想空間データ記憶部としての記憶部611に記憶させる。
なお、仮想空間生成部810は、VRユーザやMRユーザ6がサービスの利用を開始するよりも前に、事前に仮想空間11を示す仮想空間データを生成してもよい。また、仮想空間生成部810は、例えば、VRユーザやMRユーザ6がサービスを利用している最中にリアルタイムで仮想空間11を示す仮想空間データを生成してもよい。
座標定義部812は、現実空間の座標(換言すると、複合現実空間21の座標。以下、「複合現実座標」という。)を定義する。また、座標定義部812は、仮想空間11の座標(以下、「仮想空間座標」という。)を定義する。
複合現実座標は、例えば、x軸、y軸、z軸の互いに直交する3軸を有する。仮想空間座標は、例えば、X軸、Y軸、Z軸の互いに直交する3軸を有する。座標定義部812は、現実空間(換言すると、現実の会議室21)の各地点に対応する(換言すると、同じ地点を示す)仮想空間11(換言すると、仮想の会議室)の各地点について、現実空間の各地点を示す複合現実座標と、仮想空間の各地点を示す仮想空間座標とが一対一で対応したものとなるように、各座標を定義する(換言すると対応付ける)。座標定義部812は、例えば、仮想空間生成部810が現実空間を模した仮想空間を生成する際に、複合現実座標と対応付けられた仮想空間座標を定義する。このとき、座標定義部812は、例えば、検出装置460またはMR装置410等によって検出される会議室の特徴点を基準として複合現実座標と仮想空間座標とを対応付けてもよい。また、座標定義部812は、例えば、検出装置460の位置あるいは会議室中に予め設置したマーカー等の位置を基準として複合現実座標と仮想空間座標とを対応付けてもよい。
また、座標定義部812は、複合現実座標と仮想空間座標との対応関係(換言すると、現実空間の各地点と、仮想空間の各地点との対応関係)に関する情報を、対応関係記憶部としての記憶部611に記憶させる。
なお、複合現実座標や仮想空間座標を定義する方法としては、公知の方法が利用でき、また特に限定されるものではない。
なお、複合現実座標を定義するタイミングや、仮想空間座標を定義するタイミング(換言すると、複合現実座標と仮想空間座標とを対応付けるタイミング)は、例えば、仮想空間生成部810が現実空間を模した仮想空間を生成するとき等であってもよく、MR装置410での仮想オブジェクトの表示開始のタイミング等であってもよい。
なお、仮想空間の生成や、各座標の定義等は、例えば、現実空間を高精度にスキャン可能な外部機器700としての専用の装置が予め行い、生成されたデータを記憶部611に記憶しておくこととしてもよい。
MR側入力受付部816は、MRユーザ6からの入力を受け付ける。換言すると、MR側入力受付部816は、MRユーザ6からの入力情報を取得する。具体的には、MR側入力受付部816は、検出装置460、コントローラ480、カメラ413、MRユーザが身につけるデバイス、注視センサ412、センサ417、センサ486、および検出装置460やMR装置410が備えるイメージセンサ等の出力を、MRユーザ6からの入力として受け付ける。換言すると、MR側入力受付部816は、MRユーザ6の動きを検出する検出手段(例えば、検出装置460、コントローラ480、カメラ413、注視センサ412、センサ417、センサ486、および検出装置460やMR装置410が備えるイメージセンサ等)の出力を、MRユーザ6からの入力として受け付ける。これらの装置やセンサは、後述するように、仮想空間11や複合現実空間21の仮想オブジェクト等を制御するために使用されるMRユーザ6の動きに関する情報等を取得するためのものであり、MRユーザ6は自身の動きによって、MRシステム400に対して当該仮想オブジェクト等を動かしたりするための情報を入力することが可能となっている。
具体的には、MR側入力受付部816は、例えば、検出装置460としてのカメラまたはカメラ413からの出力を、MRユーザ6からの入力として受け付けてもよい。より具体的には、MR側入力受付部816は、例えば、これらの各カメラが備えるイメージセンサによって撮影される画像から画像認識によって検出される、複合現実空間21中のMRユーザ6の位置を示す位置情報を、MRユーザ6からの入力として受け付けてもよい。換言すると、MR側入力受付部816は、複合現実空間21中のMRユーザ6の位置を検出する位置検出手段からの出力をMRユーザ6からの入力として受け付けてもよい。なお、当該位置検出手段は、例えば、MR装置410とMRシステム400の所定の装置(例えば、検出装置460やビーコン(図示せず)等)との間での無線通信(例えば、Wi-Fi通信、Bluetooth通信、またはUWB通信)に基づく測位、あるいはMR装置410の備えるGPS(Global Positioning System)センサを用いた測位等に基づいて、MRユーザ6の位置を検出し、当該位置情報を取得するもの等であってもよい。なお、MRユーザ6の位置を示す位置情報は、MRユーザ6の動きに関する情報ともいえる。
また、MR側入力受付部816は、例えば、検出装置460としてのカメラまたはカメラ413が備えるイメージセンサによって撮影される画像から画像認識によって検出されるMRユーザ6の動きに関する情報を、MRユーザ6からの入力として受け付けてもよい。例えば、MR側入力受付部816は、画像認識によって検出されるMRユーザ6の手の動きに関する情報や、MRユーザ6の傾きや向いている方向に関する情報を、MRユーザ6からの入力として受け付けてもよい。
また、MR側入力受付部816は、例えば、MRユーザ6が身につけるデバイス等(例えば、時計型、リストバンド型、指輪型、もしくは衣服型等のウェアラブルデバイス、または体内埋め込み型のデバイス等)の、MRユーザ6の動きをトラッキング可能とする機器(および当該機器と近距離無線通信等により連携してMRユーザ6の動きをトラッキングする機器)を用いて取得されるMRユーザ6の動きに関する情報を、MRユーザ6からの入力として受け付けてもよい。
また、MR側入力受付部816は、例えば、コントローラ480により検出されるMRユーザ6の操作を示す情報(換言すると、MRユーザ6の動きに関する情報)を、MRユーザ6からの入力として受け付けてもよい。
また、MR側入力受付部816は、例えば、検出装置460またはMR装置410の備えるセンサ(例えば、加速度センサ、角速度センサ、地磁気センサ等)からの、MR装置410の傾きや向いている方向に関する出力データ(換言すると、MRユーザ6の動きに関する情報)をMRユーザ6からの入力として受け付けてもよい。
ユーザ情報取得部818は、複合現実空間21中に存在するMRユーザ6に関する情報を取得する。具体的には、例えば、ユーザ情報取得部818は、複合現実空間21中の各MRユーザ6A,6B,6Cを識別可能とする識別情報(換言すると、各MR装置410を識別可能とする識別情報)を取得する。例えば、ユーザ情報取得部818は、各ユーザが身につけているMR装置410と通信を行い、MR装置410からMR装置410を使用しているユーザの情報(例えば、MR装置410にログインしているアカウントの情報等)を、当該識別情報として取得してもよい。また、例えば、ユーザ情報取得部818は、各ユーザが身につけているMR装置410と通信を行い、MR装置410から各MR装置410を識別可能とする各MR装置410固有の情報を、当該識別情報として取得してもよい。また、例えば、ユーザ情報取得部818は、検出装置460またはMR装置410が備えるイメージセンサによって撮影される画像から画像認識によって複合現実空間21中のMRユーザ6を識別することで、当該識別情報を取得してもよい。また、ユーザ情報取得部818は、MR側入力受付部816が取得する情報を、当該識別情報に関連付ける。換言すると、ユーザ情報取得部818は、MRユーザ6の動きに関する情報等が、後述する仮想オブジェクトの制御等において使用される際に、どのMRユーザ6の情報か把握可能となるように制御する。
MR側オブジェクト制御部820は、複合現実空間21中の仮想オブジェクトを制御する。
MR側オブジェクト制御部820は、複合現実空間21に、仮想オブジェクトを配置する。具体的には、MR側オブジェクト制御部820は、例えば、VRユーザのVRアバター25や、VRユーザまたはMRユーザ6の少なくとも一方によって所定の変化が与えられるオブジェクト等を配置する。本実施形態では、MR側オブジェクト制御部820は、図8に示されるように、VRアバター25と、VRユーザおよびMRユーザ6によって動かされたりするモックアップの仮想オブジェクト30(以下、「仮想模型30」ともいう。)とを、複合現実空間21に配置する。
MR側オブジェクト制御部820は、例えば、仮想空間11中における仮想オブジェクトが配置される位置に対応する複合現実空間21中の位置に、当該仮想オブジェクトに対応する仮想オブジェクトを配置する。ここで、当該仮想オブジェクトに対応する仮想オブジェクト、すなわち仮想空間11中の仮想オブジェクトに対応する複合現実空間21中の仮想オブジェクトとは、例えば、仮想空間11中の仮想オブジェクトと同じ形態を有するもの(換言すると、同じ物体を示すもの)であってもよく、異なる形態を有するものであってもよい。本実施形態では、複合現実空間21には、仮想空間11中の仮想模型30と同じ形態の仮想模型30が配置される。また、複合現実空間21には、仮想空間11中のVRアバター25と同じ形態のVRアバター25が配置される。
なお、複合現実空間21へのVRアバター25の配置については、以下のようにもいえる。すなわち、MR側オブジェクト制御部820は、仮想空間11中のVRユーザの位置に対応する複合現実空間21中の位置に、当該VRアバター25を配置するともいえる。ここで、仮想空間11中におけるVRユーザの位置とは、例えば、仮想空間11中のVRアバター25の位置である。なお、VRユーザが、一人称視点で仮想空間11に入り込むコンテンツにおいては、自身(VRアバター25)の姿を視認できない場合(具体的には、手などの一部しか視認できない場合や、一部すら視認できない場合)もあり得るが、このような場合についても、コンピュータ300が認識する仮想空間11中のVRユーザはVRアバター25といえ、コンピュータ300が認識する仮想空間11中のVRユーザの位置は仮想空間中のVRアバター25の位置といえる。
なお、VRアバター25の外見(換言すると、形態)は、VRユーザの外見を模したものでもよいが、模したものでなくてもよい。例えば、VRアバター25の外見は、所定の動物の外見を模したもの等であってもよい。また、仮想空間11中に配置されるVRアバター25と、複合現実空間21中に配置されるVRアバター25とは、外見が異なっていてもよい。このような構成によれば、VRユーザは、仮想空間11中の自身のアバターの形態を隠したまま複合現実空間21中に自身のアバターを表示させること等ができる。なお、ここで仮想空間11中に配置されるVRアバター25の外見とは、当該VRアバター25を操作するVRユーザに視認される外見であってもよく、当該VRアバター25が存在する仮想空間11に存在する、他のVRアバター25を操作する他のVRユーザに視認される外見等であってもよい。
また、MR側オブジェクト制御部820は、例えば、以下のようにして仮想オブジェクトを複合現実空間21中に配置してもよい。
すなわち、例えば、VRアバター25を配置する場合に、MR側オブジェクト制御部820は、仮想空間11中のVRユーザ(換言すると、VRアバター25)の位置を示す位置情報に基づいて、複合現実空間21中のどの位置に配置するかを決定する。具体的には、例えば、後述するVR側オブジェクト制御部920は、仮想空間11中にVRアバター25を配置すると、仮想空間11中のVRアバター25の位置(例えば、仮想空間座標の座標値)に関する情報を、サーバ600を介してMR側オブジェクト制御部820に送信する。そして、MR側オブジェクト制御部820は、当該情報に基づいて、仮想空間11中のVRユーザの位置に対応する複合現実空間21中の位置(例えば、前記仮想空間座標の座標値に対応する複合現実座標の座標値の位置)に、VRアバター25を配置する。これにより、VRアバター25が、仮想空間11と複合現実空間21とで、会議室中の同じ位置に配置されることとなる。
換言すると、仮想オブジェクト(例えば、VRアバター25または仮想模型30等)を複合現実空間21中に配置する場合に、MR側オブジェクト制御部820は、当該仮想オブジェクトに対応する仮想空間中の仮想オブジェクト(例えば、VRアバター25または仮想模型30等)の位置を示す位置情報(例えば、VR側オブジェクト制御部920が送信する位置情報)に基づいて、複合現実空間21中のどの位置に配置するかを決定してもよい。
また、例えば、仮想オブジェクトを複合現実空間21中に配置する場合に、MR側オブジェクト制御部820は、MRシステム400の所定のセンサが検出した情報に基づいて、複合現実空間21中のどの位置に配置するかを決定してもよい。具体的には、例えば、現実空間中に所定のマーカーを予め設置しておき、MR側オブジェクト制御部820は、検出装置460またはMR装置410が備えるイメージセンサによって撮影される当該マーカーの位置に、仮想オブジェクトとしての仮想模型30を配置するなどしてもよい。また、MR側オブジェクト制御部820は、MRユーザ6が指示した位置に、仮想オブジェクトとしての仮想模型30を配置するなどしてもよい。当該指示は、所定のジェスチャー等(例えば、仮想模型30を配置する地点を指差すジェスチャーなど)により行われるものであってもよく、前記マーカを配置するもの等であってもよい。また、MR側オブジェクト制御部820は、検出装置460またはMR装置410が備えるイメージセンサによって撮影される画像等から複合現実空間21中の平坦面を検出し、当該平坦面上に仮想模型30を配置するなどしてもよい。
なお、MR側オブジェクト制御部820は、仮想オブジェクトを複合現実空間21中に配置する場合に、仮想オブジェクトの形態を示すオブジェクトデータを受信し、当該オブジェクトデータに基づいて仮想オブジェクトを配置する。ここで、MR側オブジェクト制御部820は、オブジェクトデータを、例えば、サーバ600の制御部610から受信してもよく、VRシステム200のVR側オブジェクト制御部920から受信してもよい。具体的には、MR側オブジェクト制御部820は、VRアバター25を複合現実空間21中に配置する際に、VRアバター25の形態を示すオブジェクトデータを制御部610から受け取り、当該オブジェクトデータの示す形態のVRアバター25を複合現実空間21に配置してもよい。また、MR側オブジェクト制御部820は、VRアバター25を複合現実空間21中に配置する際に、VRアバター25の形態を示すオブジェクトデータをVR側オブジェクト制御部920から受け取り、当該オブジェクトデータの示す形態のVRアバター25を複合現実空間21に配置してもよい。
表示制御部840は、MR装置410のディスプレイ411における画像表示を制御する。表示制御部840は、MR側オブジェクト制御部820が配置した複合現実空間21中の仮想オブジェクトを、MR側オブジェクト制御部820が配置した位置に表示させるための画像を生成する。また、表示制御部840は、当該画像をディスプレイ411に表示させる。これにより、現実空間の所望の位置に仮想オブジェクトが配置された複合現実空間のビューがMRユーザ6に提供される。
また、表示制御部840は、ディスプレイ470における画像表示を制御する。表示制御部840は、例えば、ディスプレイ411に表示されている画像と同様の画像をディスプレイ470に表示させる。なお、表示制御部840は、MR装置410がMRユーザ6に提供する複合現実空間のビューを示す画像をディスプレイ470に表示させてもよい。
音制御部845は、MR装置410のマイク415によって、MRユーザ6の発話が検出されると、当該発話に対応する音データを取得する。また、音制御部845は、取得した音データを、ネットワーク2を介してコンピュータ300等に送信する。また、音制御部845は、ネットワーク2を介してコンピュータ300から音データを受信すると、当該音データに対応する音(発話)をスピーカ416から出力する。これにより、MRユーザ6は、例えば、VRユーザと通話によるコミュニケーションを行うことが可能となっている。なお、MR側入力受付部816は、マイク415が検出したMRユーザ6の発話に関する音データを、MRユーザ6からの入力として受け付けてもよい。
通信制御部850は、ネットワーク2を介して、サーバ600、コンピュータ300その他の情報通信装置と通信し得る。通信制御部850は、例えば、サーバ600またはコンピュータ300に、サーバ600またはコンピュータ300で使用される情報を送信する。また、通信制御部850は、例えば、サーバ600またはコンピュータ300から、コンピュータ500で使用される情報を受信する。
VRシステム200の制御部310は、VR側入力受付部916と、VR側オブジェクト制御部920と、仮想カメラ制御部930と、表示制御部940と、音制御部945と、通信制御部950と、を備える。
VR側入力受付部916は、VRユーザからの入力を受け付ける。換言すると、VR側入力受付部916は、VRユーザからの入力情報を取得する。具体的には、VR側入力受付部916は、検出装置260、コントローラ280、第1カメラ213、第2カメラ214、VRユーザが身につけるウェアラブルデバイス、注視センサ212、センサ217、センサ286、および検出装置260やVR装置210が備えるイメージセンサ等の出力を、VRユーザからの入力として受け付ける。換言すると、VR側入力受付部916は、VRユーザの動きを検出する検出手段(例えば、検出装置260、コントローラ280、第1カメラ213、第2カメラ214、VRユーザが身につけるウェアラブルデバイス、注視センサ212、センサ217、センサ286、および検出装置260やVR装置210が備えるイメージセンサ等)の出力を、VRユーザからの入力として受け付ける。これらの装置やセンサは、後述するように、仮想空間11や複合現実空間21の仮想オブジェクト等を制御するために使用されるVRユーザの動きに関する情報等を取得するためのものであり、VRユーザは自身の動きによって、VRシステム200に対して当該仮想オブジェクト等を動かしたりするための情報を入力することが可能となっている。
具体的には、VR側入力受付部916は、例えば、検出装置260としてのカメラまたはVR装置210の備えるVR装置210の周囲を撮影するカメラからの出力を、VRユーザからの入力として受け付けてもよい。より具体的には、VR側入力受付部916は、これらの各カメラが備えるイメージセンサによって撮影される画像から画像認識によって検出される、現実空間におけるVRユーザの位置を示す位置情報を、VRユーザからの入力として受け付けてもよい。換言すると、VR側入力受付部916は、VRユーザの現実空間における位置を検出する位置検出手段からの出力をVRユーザからの入力として受け付けてもよい。なお、当該位置検出手段は、例えば、VR装置210とVRシステム200の所定の装置(例えば、検出装置260やビーコン(図示せず)等)との間での無線通信(例えば、Wi-Fi通信、Bluetooth通信、またはUWB通信)に基づく測位、あるいはVR装置210の備えるGPS(Global Positioning System)センサを用いた測位等に基づいて、VRユーザの位置を検出し、当該位置情報を取得するもの等であってもよい。なお、VRユーザの位置を示す位置情報は、VRユーザの動きに関する情報ともいえる。
また、VR側入力受付部916は、例えば、検出装置260としてのカメラまたはVR装置210の備えるVR装置210の周囲を撮影するカメラが備えるイメージセンサによって撮影される画像から画像認識によって検出されるVRユーザの動きに関する情報を、VRユーザからの入力として受け付けてもよい。例えば、VR側入力受付部916は、画像認識によって検出されるVRユーザの手の動きに関する情報や、VRユーザの傾きや向いている方向に関する情報を、VRユーザからの入力として受け付けてもよい。
また、VR側入力受付部916は、例えば、VRユーザが身につけるデバイス等(例えば、時計型、リストバンド型、指輪型、もしくは衣服型等のウェアラブルデバイス、または体内埋め込み型のデバイス等)の、VRユーザの動きをトラッキング可能とする機器(および当該機器と近距離無線通信等により連携してMRユーザ6の動きをトラッキングする機器)を用いて取得されるユーザの動きに関する情報を、VRユーザからの入力として受け付けてもよい。
また、VR側入力受付部916は、例えば、コントローラ280により検出されるVRユーザの操作を示す情報(換言すると、VRユーザの動きに関する情報)を、VRユーザからの入力として受け付けてもよい。
また、VR側入力受付部916は、例えば、検出装置260またはVR装置210の備えるセンサ(例えば、加速度センサ、角速度センサ、地磁気センサ等)からの、VR装置210の傾きや向いている方向に関する出力データ(換言すると、VRユーザの動きに関する情報)をVRユーザからの入力として受け付けてもよい。
制御部310は、仮想空間11を制御する。制御部310は、記憶部611に記憶された仮想空間11を示す仮想空間データを取得し、当該仮想空間データに基づいてVRユーザに提供する仮想空間11を定義する。
VR側オブジェクト制御部920は、仮想空間11中の仮想オブジェクトを制御する。
VR側オブジェクト制御部920は、仮想空間データの示す仮想空間11に、仮想オブジェクトを配置する。仮想オブジェクトを示すオブジェクトデータは、例えば、オブジェクトデータ記憶部としての記憶部611または記憶部311に記憶されている。そして、VR側オブジェクト制御部920は、当該オブジェクトデータを用いて、仮想空間11に仮想オブジェクトを配置する。
具体的には、VR側オブジェクト制御部920は、例えば、仮想的な会議室内に、MRユーザ6A,6B,6CのMRアバター26A,26B,26Cや、VRユーザまたはMRユーザ6の少なくとも一方によって所定の変化が与えられる仮想オブジェクト等を配置する。本実施形態では、VR側オブジェクト制御部920は、VRアバター25と、MRアバター26と、VRユーザおよびMRユーザ6によって動かされたりするモックアップの仮想オブジェクト30(以下、「仮想模型30」ともいう。)とを、仮想空間11に配置する。なお、仮想空間11には、現実オブジェクトとしての机8に対応する仮想オブジェクト31等も配置される。
なお、例えば、VRユーザの使用するVRシステム200(換言すると、コンピュータ300)に、ネットワーク2を介して他のVRユーザが使用するVRシステム200(換言すると、コンピュータ300)が接続される場合、VR側オブジェクト制御部920は、仮想空間11に、当該他のVRユーザのVRアバター25を配置してもよい。他のVRユーザのVRアバター25は、当該他のVRユーザによって操作され得る。
VR側オブジェクト制御部920は、例えば、複合現実空間21中のMRユーザ6の位置に対応する仮想空間11中の位置に当該MRユーザ6のMRアバター26を配置する。すなわち、VR側オブジェクト制御部920は、現実の会議室21におけるMRユーザ6A,6B,6Cのそれぞれが存在する位置と、仮想の会議室におけるMRアバター26A,26B,26Cのそれぞれが存在する位置とが同じ位置となるように、MRアバター26A,26B,26Cを配置する。
なお、MRアバター26の外見(換言すると、形態)は、MRユーザ6の外見を模したものでもよいが、模したものでなくてもよい。例えば、MRアバター26の外見は、所定の動物の外見を模したもの等であってもよい。VR側オブジェクト制御部920は、仮想オブジェクトを複合現実空間21中に配置する場合に、仮想オブジェクトの形態を示すオブジェクトデータを受信し、当該オブジェクトデータに基づいて仮想オブジェクトを配置する。ここで、VR側オブジェクト制御部920は、オブジェクトデータをサーバ600の制御部610から受信してもよく、MRシステム400のMR側オブジェクト制御部820から受信してもよい。具体的には、例えば、VR側オブジェクト制御部920は、MRアバター26を仮想空間11中に配置する際に、MRアバター26の形態を示すオブジェクトデータを制御部610またはMR側オブジェクト制御部820から受け取り、当該オブジェクトデータの示す形態のMRアバター26を仮想空間11に配置してもよい。なお、MRアバター26の外見は、MRユーザ6が予め設定しておくことが可能となっており、VR装置210でMRアバター26が表示される際に、MRユーザ6が設定した外見で表示がされるようになっていてもよい。また、MRアバター26の外見が、MRユーザ6の外見を模したものである場合、VR側オブジェクト制御部920は、検出装置460としてのカメラやカメラ413等の所定のカメラによって取得されるMRユーザ6の画像に基づいて生成される(例えば、制御部510が生成する)MRアバター26を、仮想空間11に配置するなどしてもよい。
仮想カメラ制御部930は、仮想空間11に仮想カメラ14を配置する。また、仮想カメラ制御部930は、仮想空間11における仮想カメラ14の位置と、仮想カメラ14の傾き(向き)とを制御する。なお、本実施形態では、仮想カメラ制御部930は、仮想カメラ14を仮想空間11におけるVRアバター25の目の位置に配置する。換言すると、仮想カメラ制御部930は、仮想カメラ14の位置をVRアバター25の位置と連動させ、仮想空間11内においてVRアバター25が移動すると、仮想空間11内で仮想カメラ14を移動させる。なお、仮想カメラ14の位置は、VRアバター25の位置と連動するものでなくてもよい。例えば、仮想カメラ14を所定の位置に固定したまま、仮想空間11内でVRアバター25を移動させること等が可能となっていてもよい。
表示制御部940は、VR装置210のディスプレイ211における画像表示を制御する。表示制御部940は、仮想カメラ14の位置と傾き(換言すると、VR装置210を装着したVRユーザの頭の傾き)に応じて、視界領域15を規定する。また、表示制御部940は、規定した視界領域15に基づいて、ディスプレイ211に表示される視界画像17を生成する。表示制御部940により生成された視界画像17は、VR装置210に出力される。
また、表示制御部940は、ディスプレイ270における画像表示を制御する。表示制御部940は、例えば、ディスプレイ211に表示されている画像と同様の画像をディスプレイ270に表示させる。
音制御部945は、VR装置210から、VRユーザのマイク215を用いた発話を検出すると、当該発話に対応する音データを取得する。また、音制御部945は、取得した音データを、ネットワーク2を介してコンピュータ500や他のVRユーザのコンピュータ300等に送信する。また、音制御部945は、ネットワーク2を介してコンピュータ500や他のユーザのコンピュータ300から音データを受信すると、当該音データに対応する音(発話)をスピーカ216から出力する。これにより、VRユーザは、例えば、MRユーザ6と通話によるコミュニケーションを行うことが可能となっている。なお、VR側入力受付部916は、マイク215が検出したVRユーザの発話に関する音データを、VRユーザからの入力として受け付けてもよい。
通信制御部950は、ネットワーク2を介して、サーバ600、コンピュータ500、他のVRユーザのコンピュータ300その他の情報通信装置と通信し得る。通信制御部950は、例えば、サーバ600、コンピュータ500、または他のVRユーザのコンピュータ300に、サーバ600、コンピュータ500、または他のVRユーザのコンピュータ300で使用される情報を送信する。また、通信制御部850は、例えば、サーバ600、コンピュータ500、または他のVRユーザのコンピュータ300から、コンピュータ300で使用される情報を受信する。
(複合現実空間と仮想空間との融合)
本実施形態では、MR側入力受付部816が取得したMRユーザ6からの入力に基づいて、MR装置410が表示する仮想オブジェクトと、VR装置210が表示する仮想オブジェクトとが制御されるようになっている。
本実施形態では、MR側入力受付部816が取得したMRユーザ6からの入力に基づいて、MR装置410が表示する仮想オブジェクトと、VR装置210が表示する仮想オブジェクトとが制御されるようになっている。
具体的には、MR側オブジェクト制御部820は、MR側入力受付部816が受け付けたMRユーザ6からの入力に基づいて、複合現実空間21中の仮想オブジェクト、具体的には仮想模型30に所定の変化を与える。ここで、所定の変化とは、仮想オブジェクトを移動させたり、仮想オブジェクトの傾きや向いている方向等を変化させたり、仮想オブジェクトのパーツ同士の相対的な位置関係を変化させたりするなど、複合現実空間21中の仮想オブジェクトを動かすものであってもよい。また、所定の変化とは、仮想オブジェクトの色を変化させたり、仮想オブジェクトが表示する情報等を変化させたり、仮想オブジェクトの形態を変化させたりするものであってもよい。
より具体的には、MR側オブジェクト制御部820は、例えば、MR側入力受付部816が受け付けた、MRユーザ6の動きに関する情報に基づいて、複合現実空間21中の仮想模型30を動かす。具体的には、例えば、検出手段(例えば、検出装置460またはカメラ413等)によって、MRユーザ6が仮想模型30を持って運ぶジェスチャーが検出され、検出手段が当該ジェスチャーに関する出力をすると、MR側入力受付部816は、当該出力をMRユーザ6からの入力として受け付ける。また、MR側オブジェクト制御部820は、MR側入力受付部816が受け付けた当該入力に基づいて、当該ジェスチャーによるMRユーザ6からの指示に従い、仮想模型30を複合現実空間21中で移動させる。なお、仮想オブジェクトとしての仮想模型30に所定の変化を与えるMRユーザ6のジェスチャーは、複合現実空間21中で仮想模型30に触れるものでなくてもよい。例えば、仮想模型30に向けて手をかざし、手を横に振るジェスチャーによって仮想オブジェクトを回転させること等が可能となっていてもよい。
また、MR側オブジェクト制御部820は、例えば、MR側入力受付部816が受け付けた、コントローラ480に対するMRユーザ6の操作に関する情報(換言すると、MRユーザ6の動きに関する情報)に基づいて、仮想オブジェクトに所定の変化を与えるなどしてもよい。また、MR側オブジェクト制御部820は、例えば、MR側入力受付部816が受け付けた、MRユーザ6の発話に関する音データに基づいて、仮想オブジェクトに所定の変化を与えるなどしてもよい。
また、VR側オブジェクト制御部920は、MR側入力受付部816が受け付けたMRユーザ6からの入力に基づいて、仮想空間11中の仮想オブジェクトに所定の変化を与える。
具体的には、VR側オブジェクト制御部920は、例えば、MR側入力受付部816が受け付けたMRユーザ6からの入力に基づいて複合現実空間21中の仮想模型30に与えられる変化と同様の変化を、仮想空間11中の仮想模型30に与える。すなわち、例えば、前述のように、MRユーザ6の仮想模型30を持って運ぶジェスチャーによって、複合現実空間21中の仮想模型30が移動すると、VR側オブジェクト制御部920は、仮想空間11中の仮想模型30を、同じように移動させる。
なお、複合現実空間21中の仮想模型30に与えられる変化と同様の変化を仮想空間中の仮想模型30に与える方法については、特に限定されるものではないが、例えば以下のようにしてもよい。すなわち、例えば、MR側オブジェクト制御部820は、MRユーザ6からの入力に基づいて複合現実空間21中の仮想模型30(換言すると、仮想オブジェクト)を動かすと(換言すると、所定契機で)、VR側オブジェクト制御部920に対して、動かした後の仮想模型30の位置や傾きを示す情報(換言すると、仮想模型30の状態に関する情報)を送ってもよい。そして、VR側オブジェクト制御部920は、仮想空間11中の当該情報によって示される位置に仮想模型30を配置したり、当該情報によって示される傾きで仮想模型30を配置したりしてもよい。また、例えば、通信制御部850が、MRユーザ6からの入力に基づく情報(例えば、制御部510が当該入力に基づいて算出(換言すると、取得)する仮想模型30の移動量や移動軌跡や傾き等に関する情報)を通信制御部950に対して送り、VR側オブジェクト制御部920は、当該情報に基づいて、仮想模型30等の仮想オブジェクトを動かす等してもよい。すなわち、本実施形態では、VR側オブジェクト制御部920は、MR側入力受付部816が受け付けたMRユーザ6からの入力に基づいて、仮想空間11中の仮想オブジェクトに所定の変化を与えるが、「MRユーザ6からの入力に基づいて」とは、VR側オブジェクト制御部920自体が当該入力を受け取って仮想オブジェクトを制御するものに限られず、仮想空間11中の仮想オブジェクトが結果として当該入力に応じて所定の変化をするものであればよい。
また、VR側オブジェクト制御部920は、例えば、MR側入力受付部816が受け付けたMRユーザ6からの入力に基づいて、仮想空間11中のMRアバター26を動かす。具体的には、VR側オブジェクト制御部920は、例えば、MR側入力受付部816が受け付けた、MRユーザ6の動きに関する情報に基づいて、MRアバター26を動かす。例えば、VR側オブジェクト制御部920は、MR側入力受付部816が、MRユーザ6からの入力として受け付ける、複合現実空間21中のMRユーザ6の位置を示す位置情報に基づいて、MRアバター26を動かす。すなわち、VR側オブジェクト制御部920は、当該位置情報に基づいて、複合現実空間21中のMRユーザ6の位置に対応する仮想空間11中の位置にMRアバター26を配置し、MRユーザ6が複合現実空間21中で移動すると、移動後の位置に対応する仮想空間11中の位置にMRアバター26を配置する。
また、VR側オブジェクト制御部920は、例えば、MR側入力受付部816が、MRユーザ6からの入力として受け付ける、MRユーザ6の体の各部位の動き(例えば、手の動きや、頭の動きや、目の動きや、表情の変化等)に関する情報や、MRユーザ6の傾きや向いている方向に関する情報に基づいて、MRアバター26を動かす。すなわち、VR側オブジェクト制御部920は、これらの各情報に基づいて、MRユーザ6の体の各部位の動き(換言すると、姿勢)や、MRユーザ6の傾きや向いている方向を、仮想空間11中のMRアバター26に反映させる。すなわち、本実施形態では、VR側オブジェクト制御部920は、仮想空間11中のMRアバター26の動きが、MRユーザ6の動きを検出する検出手段が検出するMRユーザ6の動きを模したものとなるように、MRアバター26の動きを制御する。換言すると、VR側オブジェクト制御部920は、少なくとも体の一部(例えば、手、足、頭、目、口等)について、MRアバター26の動きが、MRユーザ6の動きに連動したものとなるように、MRアバター26の動きを制御する。
なお、MRアバター26の動きの少なくとも一部が、コントローラ480に対するMRユーザ6の操作(例えば、アナログスティックやボタン等に対する操作)により実現されてもよい。すなわち、例えば、VR側オブジェクト制御部920は、MRユーザ6からの入力としての、コントローラ480に対するMRユーザ6の操作を示す情報に基づいて、MRアバター26の体の一部を動かす等してもよい。
なお、仮想空間11中のMRアバター26は、仮想空間11中における位置あるいは動きの少なくとも一方が、複合現実空間21中のMRユーザ6の位置あるいは動きに連動したものでなくてもよい。すなわち、例えば、複合現実空間21中においてMRユーザ6が移動しても、仮想空間11中のMRアバター26がこれに応じた移動をしないものであってもよい。また、例えば、複合現実空間21中においてMRユーザ6が手を動かしたりしても、仮想空間11中のMRアバター26がこれと同じ動きをしないものであってもよい。
また、本実施形態では、VR側入力受付部916が取得したVRユーザからの入力に基づいて、VR装置210が表示する仮想オブジェクトと、MR装置410が表示する仮想オブジェクトとが制御されるようになっている。
具体的には、VR側オブジェクト制御部920は、VR側入力受付部916が受け付けたVRユーザからの入力に基づいて、仮想空間11中の仮想オブジェクト、具体的には仮想模型30に所定の変化を与える。
より具体的には、VR側オブジェクト制御部920は、例えば、VR側入力受付部916が受け付けた、コントローラ280に対するVRユーザの操作を示す情報(換言すると、VRユーザの動きに関する情報)に基づいて、仮想空間11中の仮想模型30に所定の変化を与える。具体的には、例えば、VR側オブジェクト制御部920は、コントローラ280に対する操作によるVRユーザからの指示に従い、仮想模型30を仮想空間11中で移動させる。
また、VR側オブジェクト制御部920は、例えば、検出手段によって検出されるVRユーザのジェスチャー等に基づいて、仮想オブジェクトに所定の変化を与えるなどしてもよい。また、VR側オブジェクト制御部920は、例えば、VR側入力受付部916が受け付けた、VRユーザの発話に関する音データに基づいて、仮想オブジェクトに所定の変化を与えるなどしてもよい。
また、MR側オブジェクト制御部820は、VR側入力受付部916が受け付けたVRユーザからの入力に基づいて、複合現実空間21中の仮想オブジェクトに所定の変化を与える。
具体的には、MR側オブジェクト制御部820は、例えば、VR側入力受付部916が受け付けたVRユーザからの入力に基づいて仮想空間11中の仮想模型30に与えられる変化と同様の変化を、複合現実空間21中の仮想模型30に与える。すなわち、例えば、前述のように、VRユーザのコントローラ280に対する操作によって、仮想空間11中の仮想模型30が移動すると、MR側オブジェクト制御部820は、複合現実空間21中の仮想模型30を、同じように移動させる。
なお、仮想空間11中の仮想模型30に与えられる変化と同様の変化を複合現実空間21中の仮想模型30に与える方法については、特に限定されるものではないが、例えば以下のようにしてもよい。すなわち、例えば、VR側オブジェクト制御部920は、VRユーザからの入力に基づいて仮想空間11中の仮想模型30(換言すると、仮想オブジェクト)を動かすと(換言すると、所定契機で)、MR側オブジェクト制御部820に対して、動かした後の仮想模型30の位置や傾きを示す情報(換言すると、仮想模型30の状態に関する情報)を送ってもよい。そして、MR側オブジェクト制御部820は、複合現実空間21中の当該情報によって示される位置に仮想模型30を配置したり、当該情報によって示される傾きで仮想模型30を配置したりしてもよい。また、例えば、通信制御部950が、VRユーザからの入力に基づく情報(例えば、制御部310が当該入力に基づいて算出(換言すると、取得)する仮想模型30の移動量や移動軌跡や傾き等に関する情報)を通信制御部850に対して送り、MR側オブジェクト制御部820は、当該情報に基づいて、仮想模型30等の仮想オブジェクトを動かしたりしてもよい。すなわち、本実施形態では、MR側オブジェクト制御部820は、VR側入力受付部916が受け付けたVRユーザからの入力に基づいて、複合現実空間21中の仮想オブジェクトに所定の変化を与えるが、「VRユーザからの入力に基づいて」とは、MR側オブジェクト制御部820自体が当該入力を受け取って仮想オブジェクトを制御するものに限られず、複合現実空間21中の仮想オブジェクトが結果として当該入力に応じて所定の変化をするものであればよい。
また、VR側オブジェクト制御部920は、VR側入力受付部916が受け付けたVRユーザからの入力に基づいて、仮想空間11中のVRアバター25に所定の変化を与える。具体的には、VR側オブジェクト制御部920は、例えば、VR側入力受付部916が受け付けた、コントローラ280に対するVRユーザの操作を示す情報(換言すると、VRユーザの動きに関する情報)に基づいて、仮想空間11中のVRアバター25に所定の変化を与える。具体的には、例えば、VR側オブジェクト制御部920は、コントローラ280に対する操作によるVRユーザからの指示に従い、VRアバター25を仮想空間11中で移動させる。
また、VR側オブジェクト制御部920は、例えば、VR側入力受付部916が、VRユーザからの入力として受け付ける、VRユーザの体の各部位の動き(例えば、手の動きや、頭の動きや、目の動きや、表情の変化等)に関する情報や、VRユーザの傾きや向いている方向に関する情報に基づいて、VRアバター25を動かす。すなわち、VR側オブジェクト制御部920は、これらの各情報に基づいて、VRユーザの体の各部位の動き(換言すると、姿勢)や、VRユーザの傾きや向いている方向を、仮想空間11中のVRアバター25に反映させる。すなわち、本実施形態では、VR側オブジェクト制御部920は、仮想空間11中のVRアバター25の動きが、VRユーザの動きを検出する検出手段が検出するVRユーザの動きを模したものとなるように、VRアバター25の動きを制御する。換言すると、VR側オブジェクト制御部920は、少なくとも体の一部(例えば、手、足、頭、目、口等)について、VRアバター25の動きが、VRユーザの動きに連動したものとなるように、VRアバター25の動きを制御する。
また、MR側オブジェクト制御部820は、例えば、VR側入力受付部916が受け付けたVRユーザからの入力に基づいて仮想空間11中のVRアバター25に与えられる変化と同様の変化を、複合現実空間21中のVRアバター25に与える。すなわち、例えば、前述のように、VRユーザのコントローラ280に対する操作によって、仮想空間11中のVRアバター25が移動すると、MR側オブジェクト制御部820は、複合現実空間21中のVRアバター25を、同じように移動させる。なお、仮想空間11中のVRアバター25に与えられる変化と同様の変化を複合現実空間21中のVRアバター25に与える方法については、特に限定されるものではないが、例えば前述の仮想模型30の場合と同様にすることができる。
なお、VRアバター25の仮想空間11中における位置および複合現実空間21中における位置が、現実空間におけるVRユーザの移動に伴い移動してもよい。すなわち、例えば、VR側オブジェクト制御部920は、VRユーザからの入力としての、現実空間におけるVRユーザの位置を示す位置情報に基づいて、VRアバター25を移動させてもよい。
また、仮想空間11中のVRアバター25および複合現実空間21中のVRアバター25の一部の動きがコントローラ280に対する操作によって実現されてもよい。すなわち、例えば、VR側オブジェクト制御部920およびMR側オブジェクト制御部820は、VRユーザからの入力としての、コントローラ280に対するVRユーザの操作を示す情報に基づいて、VRアバター25の体の一部を動かす等してもよい。
本実施形態では、所定の現実空間としての会議室21に実際に存在する現実オブジェクトに対する行動の結果についても、VRユーザとMRユーザ6との間で共有することが可能となっている。この点について、以下では、現実オブジェクトとしての所定の記入が可能なオブジェクト(例えば、黒板やホワイトボード等)についての制御を例に説明する。図8に示されるように、複合現実空間21には、現実オブジェクトとしての黒板35が配置されており、仮想空間11には、黒板35に対応する位置に、黒板35に対応する仮想オブジェクトとしての仮想黒板36が配置されているものとする。
本実施形態では、複合現実空間21においてMRユーザ6が現実オブジェクトとしての黒板35に対して行った行動(換言すると、行動の結果)が、複合現実空間21の黒板35に反映されるようになっている。また、本実施形態では、当該行動が、仮想空間11の仮想黒板36に反映されるようになっている。
複合現実空間21においては、MRユーザ6は、黒板35に対して所定の記入を行うことが可能となっている。また、MRユーザ6による黒板35に対する記入動作は、当該記入動作を検出する検出手段(以下、「MR側記入検出手段」という。)によって検出され、MR側記入検出手段からの出力(換言すると、記入動作に関する情報)がMRユーザ6からの入力としてMR側入力受付部816に受け付けられるようになっている。MR側記入検出手段は、例えば、MRユーザ6の手の動きを検出可能な検出手段であってもよい。具体的には、MR側記入検出手段は、例えば、コントローラ480としてのペン型のコントローラ等であってもよい。また、MR側記入検出手段は、検出装置460としてのカメラや、カメラ413等であってもよい。また、MR側記入検出手段は、MRユーザ6が身につけるデバイス等であってもよい。また、MR側記入検出手段は、黒板35が備えるセンサ(例えば、タッチセンサや、黒板35の備える赤外光を発する装置からの赤外光の反射光を読み取るセンサ等)であってもよい。換言すると、黒板35は、コンピュータ500と通信可能となっており、黒板35の備えるセンサによって検出されたMRユーザ6の記入動作に関する情報が、MRユーザ6からの入力としてMR側入力受付部816に受け付けられるようになっていてもよい。
複合現実空間21の黒板35には、MRユーザ6の記入動作が反映される。換言すると、MRユーザ6が記入動作を行うと、黒板35は、図10(a)に示されるように、MRユーザ6の記入した記入内容(例えば、図10(a)における、月の絵、ハートの絵、および「Sample」の文字)を表示する状態に変化する。例えば、黒板35は、MRユーザ6の記入した記入内容を電子的に表示する(換言すると、反映する)電子黒板となっており、MRユーザ6が記入動作を行うと、記入内容を表示する状態に変化するようになっていてもよい。具体的には、例えば、黒板35の記入面自体がディスプレイとなっており、当該ディスプレイが記入内容を表示してもよい。また、黒板35が、記入面に画像を投影するプロジェクタを備え、当該プロジェクタが記入面に記入内容を映し出してもよい。換言すると、複合現実空間21へのユーザの行動の反映(換言すると、MRユーザ6の行動に起因するMR装置410を介して見られる複合現実空間21の変化)は、現実オブジェクト自体に何らかの変化(例えば、表示内容の変化)が起こることにより実現されてもよい。なお、記入内容を電子的に表示する場合に、黒板35のコンピュータが、黒板の備えるセンサの検出結果に基づいて当該表示を制御してもよく、コンピュータ500が、MR側記入検出手段の検出結果に基づいて当該表示を制御してもよい。すなわち、例えば、コンピュータ500の制御部510等が、MR側入力受付部816が受け付けたMRユーザ6からの入力に基づいて黒板35の表示を制御する制御手段(以下、「黒板表示制御手段」という。)として機能してもよい。具体的には、黒板表示制御手段は、MRユーザ6からの入力に基づいて、黒板35のディスプレイまたはプロジェクタが表示する画像が、記入内容を示す画像となるように制御してもよい。なお、複合現実空間21の黒板35へのMRユーザ6の記入動作の反映は、MRユーザ6がチョーク等の筆記具によって実際に黒板35に文字や絵を記入することにより行われてもよい。換言すると、筆記具によって実際に黒板35に文字や絵を記入する動作が、MRユーザ6の記入動作としてMR側記入検出手段によって検出されてもよい。
また、例えば、MR側オブジェクト制御部820は、MRユーザ6の記入した記入内容を示す仮想オブジェクト(以下、「記入オブジェクト37」という。)を生成し、複合現実空間21の黒板35の位置に配置してもよい(図10(a)参照)。具体的には、MR側オブジェクト制御部820は、MR側入力受付部816が受け付けたMRユーザ6からの入力に基づいて、記入オブジェクト37を生成してもよい。そして、MR装置410を介して黒板35を見た場合に、黒板35が記入内容(換言すると、記入オブジェクト37)を表示する状態が視認されるようになっていてもよい。換言すると、複合現実空間21へのユーザの行動の反映(換言すると、MRユーザ6の行動に起因するMR装置410を介して見られる複合現実空間21の変化)は、現実オブジェクトに対して所定の仮想オブジェクトが付加されることにより実現されてもよい。
また、VR側オブジェクト制御部920は、MR側入力受付部816が受け付けたMRユーザ6からの入力に基づいて、現実オブジェクトに対応する仮想オブジェクトに所定の変化を与える。具体的には、VR側オブジェクト制御部920は、図10(b)に示されるように、MRユーザ6からの入力を仮想黒板36に反映させ、仮想黒板36がMRユーザ6の記入した記入内容を表示する状態となるように制御する。換言すると、VR側オブジェクト制御部920は、MRユーザ6の行動に基づく複合現実空間21中の現実オブジェクト(例えば、黒板35)に関する変化を、当該現実オブジェクトに対応する仮想空間11中の仮想オブジェクト(例えば、仮想黒板36)に反映させる。具体的には、例えば、MRユーザ6の記入動作に関する情報が、MR側入力受付部816に入力されると、VR側オブジェクト制御部920は、MRユーザ6の記入した記入内容を示す記入オブジェクト38を、仮想空間11の仮想黒板36の位置に配置することとしてもよい(図10(b)参照)。また、VR側オブジェクト制御部920は、例えば、仮想黒板36自体の形態を変化させることにより、仮想黒板36が記入内容を表示する状態となるように制御してもよい。また、仮想黒板36が、黒板35のディスプレイまたはプロジェクタ等が表示している画像を表示する仮想オブジェクトとなっており、VR側オブジェクト制御部920は、当該画像を仮想黒板36に表示させるようになっていてもよい。また、複合現実空間21の黒板35を撮影するカメラをMRシステム400が備え、仮想黒板36は、当該カメラにより撮影される画像を表示する仮想オブジェクトとなっており、VR側オブジェクト制御部920は、当該画像を仮想黒板36に表示させるようになっていてもよい。
また、本実施形態では、仮想空間11においてVRユーザが仮想オブジェクトとしての仮想黒板36に対して行った行動(換言すると、行動の結果)が、仮想空間11の仮想黒板36に反映されるようになっている。また、本実施形態では、当該行動が、複合現実空間21の黒板35に反映されるようになっている。
仮想空間11においては、VRユーザは、仮想黒板36に対して所定の記入を行うことが可能となっている。また、VRユーザによる仮想黒板36に対する記入動作は、当該記入動作を検出する検出手段(以下、「VR側記入検出手段」という。)によって検出され、VR側記入検出手段からの出力がVRユーザからの入力としてVR側入力受付部916に受け付けられるようになっている。VR側記入検出手段は、例えば、VRユーザの手の動きを検出可能な検出手段であってもよい。具体的には、VR側記入検出手段は、例えば、コントローラ280等であってもよい。また、VR側記入検出手段は、検出装置260としてのカメラ等であってもよい。また、VR側記入検出手段は、VRユーザが身につけるデバイス等であってもよい。
複合現実空間21の黒板35には、VRユーザの記入動作が反映される。換言すると、VRユーザが記入動作を行うと、黒板35は、VRユーザの記入した記入内容を表示する状態に変化する。さらに換言すると、黒板35には、VR側入力受付部916が受け付けたVRユーザからの入力が反映される。黒板35へのVRユーザからの入力の反映は、例えば、以下のように行ってもよい。すなわち、例えば、MR側オブジェクト制御部820は、VRユーザの記入した記入内容を示す記入オブジェクト37を、複合現実空間21の黒板35の位置に配置してもよい。また、前記黒板表示制御手段が、VRユーザからの入力に基づいて、黒板35のディスプレイまたはプロジェクタが表示する画像が、VRユーザの記入した記入内容を示す画像となるように制御してもよい。すなわち、MR側オブジェクト制御部820または黒板表示制御手段は、VR側入力受付部916が受け付けたVRユーザからの入力を、複合現実空間21中の現実オブジェクトに反映させる反映手段として機能し得る。
また、仮想空間11の仮想黒板36にも、VRユーザの記入動作が反映される。換言すると、VRユーザが記入動作を行うと、仮想黒板36は、VRユーザの記入した記入内容を表示する状態に変化する。さらに換言すると、仮想黒板36には、VR側入力受付部916が受け付けたVRユーザからの入力が反映される。具体的には、VR側オブジェクト制御部920は、VR側入力受付部916が受け付けたVRユーザからの入力に基づいて、仮想黒板36に所定の変化を与える。より具体的には、VR側オブジェクト制御部920は、VRユーザからの入力を仮想黒板36に反映させ、仮想黒板36がVRユーザの記入した記入内容を表示する状態となるように制御する。具体的には、例えば、VRユーザの記入動作に関する情報が、VR側入力受付部916に入力されると、VR側オブジェクト制御部920は、VRユーザの記入した記入内容を示す記入オブジェクト38を、仮想空間11の仮想黒板36の位置に配置することとしてもよい。また、VR側オブジェクト制御部920は、例えば、仮想黒板36自体の形態を変化させることにより、仮想黒板36が記入内容を表示する状態となるように制御してもよい。また、仮想黒板36が、黒板35のディスプレイまたはプロジェクタ等が表示している画像を表示する仮想オブジェクトとなっており、VR側オブジェクト制御部920は、当該画像を仮想黒板36に表示させるようになっていてもよい。また、複合現実空間21の黒板35を撮影するカメラをMRシステム400が備え、仮想黒板36は、当該カメラにより撮影される画像を表示する仮想オブジェクトとなっており、VR側オブジェクト制御部920は、当該画像を仮想黒板36に表示させるようになっていてもよい。換言すると、VR側入力受付部916が受け付けたVRユーザからの入力が、複合現実空間21中の現実オブジェクトに反映され、これにより、VRユーザからの入力に基づく仮想黒板36の変化が起こるようになっていてもよい。
以上のように、本実施形態では、MRユーザ6が現実オブジェクトに対して行った行動、および、VRユーザが当該現実オブジェクトに対応する仮想オブジェクトに対して行った行動が、複合現実空間21および仮想空間11に反映されるようになっている。このような、各行動の複合現実空間21または仮想空間11への反映は、以下のようなものであってもよい。
すなわち、例えば、MRユーザ6が、複合現実空間21において、レーザポインタ等の所定のポインタで任意の位置を指し示すと、仮想空間11においても指し示された位置(以下、「指示位置」という。)がわかるようになっていてもよい。具体的には、例えば、複合現実空間21では、MRシステム400の検出装置460やカメラ413等が、指示位置を検出する指示位置検出手段として機能してもよい。そして、指示位置検出手段によって検出された指示位置に関する情報が、MRユーザ6からの入力としてMR側入力受付部816に受け付けられるようになっていてもよい。また、VR側オブジェクト制御部920は、複合現実空間21中の指示位置に対応する仮想空間11中の位置に、レーザポインタからの光を示す仮想オブジェクトを配置するなどしてもよい。換言すると、制御部310は、VR装置210における仮想空間11の表示において、複合現実空間21中の指示位置に対応する仮想空間11中の位置が、レーザポインタからの光を表す所定の色で光るように制御してもよい。
また、例えば、VRユーザが、仮想空間11において、仮想的なレーザポインタ等の所定のポインタで任意の位置を指し示すと、複合現実空間21においても指示位置がわかるようになっていてもよい。具体的には、例えば、仮想的なレーザポインタを操作するためのコントローラ280に対するVRユーザの操作に関する情報(換言すると、VRユーザの動きに関する情報)がVR側入力受付部916に入力されると、VR側オブジェクト制御部920は、VRユーザの操作によって指示される位置(換言すると、仮想的なレーザポインタによって指示される位置)に、仮想的なレーザポインタからの光を示す仮想オブジェクトを配置するなどしてもよい。換言すると、制御部310は、VR装置210における仮想空間の表示において、仮想的なVRユーザの操作によって指示される仮想空間11中の位置が、仮想的なレーザポインタからの光を表す所定の色で光るように制御してもよい。また、制御部510等は、仮想空間11中の指示位置(具体的には、VRユーザによる指示位置)に対応する複合現実空間21中の位置が、仮想的なレーザポインタからの光を表す所定の色で光るように制御してもよい。具体的には、MR側オブジェクト制御部820は、仮想空間11中の指示位置に対応する複合現実空間21中の位置に、仮想的なレーザポインタからの光を示す仮想オブジェクトを配置するなどしてもよい。また、例えば、VRユーザによる指示位置が、仮想黒板36上の所定の位置である場合に、前記黒板表示制御手段が、VRユーザからの入力に基づいて、黒板35のディスプレイまたはプロジェクタが表示する画像が、仮想黒板36上の当該所定の位置に対応する位置が光る画像(すなわち、レーザポインタによって所定箇所が指し示されていることを示す画像)となるように制御してもよい。また、例えば、検出装置460やMR装置410等がレーザ光を放射する装置を備え、制御部510が、VR側入力受付部916が受け付けたVRユーザからの入力に応じて、当該装置を制御して仮想空間11中の指示位置に対応する複合現実空間21中の位置にレーザ光を当てるようにしてもよい。
また、MRユーザ6またはVRユーザの行動の複合現実空間21および仮想空間11への反映は、以下のようなものであってもよい。すなわち、例えば、複合現実空間21には、現実オブジェクトとしての音の入力または出力が可能な装置(例えば、電子ピアノ)が配置されており、当該装置に関するMRユーザ6またはVRユーザの行動が、複合現実空間21および仮想空間11へ反映されるようになっていてもよい。以下では、複合現実空間21には、現実オブジェクトとしての電子ピアノが配置されており、仮想空間11には、当該電子ピアノに対応する位置に、当該電子ピアノに対応する仮想オブジェクトとしての仮想電子ピアノが配置されているものとする。
電子ピアノは、例えば、コンピュータ500と通信可能となっていてもよい。そして、複合現実空間21において、MRユーザ6が電子ピアノを操作すると、当該操作に関する情報(例えば、当該操作に対応する音データ)が、コンピュータ500を介してコンピュータ300に送られるなどしてもよい。そして、音制御部945は、当該情報に基づいてスピーカ216から音を出力するなどしてもよい。これにより、例えば、MRユーザ6が電子ピアノの鍵(例えば、「ド」の音の鍵)を操作すると、スピーカ216から操作された鍵に対応する音(例えば、「ド」の音)が出力されるようになっていてもよい。換言すると、MR側入力受付部816は、MRユーザ6の操作を検出する検出手段としての電子ピアノ(換言すると、鍵に対する操作を検出するセンサ等)からの出力(例えば、操作に応じた音データ)をMRユーザ6からの入力として受け付け、制御部310(例えば、音制御部945)は、当該入力に基づいて、MRユーザ6の電子ピアノに対する操作に対応する音をスピーカ216に出力させるようになっていてもよい。また、音制御部945は、電子ピアノに対する操作に対応する音が、仮想空間11中の仮想電子ピアノから出力されているように聞こえるよう、音の発せられる方向を制御してもよい。
また、仮想空間11において、VRユーザが仮想電子ピアノを操作すると、当該操作に関する情報が、コンピュータ500に送られるなどしてもよい。そして、音制御部845は、当該情報に基づいてスピーカ416から音を出力するなどしてもよい。これにより、例えば、VRユーザが仮想電子ピアノの鍵(例えば、「ド」の音の鍵)を操作すると、スピーカ416から操作された鍵に対応する音(例えば、「ド」の音)が出力されるようになっていてもよい。換言すると、VR側入力受付部916は、仮想電子ピアノに対するVRユーザの操作を検出する検出手段(例えば、検出装置260またはコントローラ280)からの出力をVRユーザからの入力として受け付け、制御部510(例えば、音制御部845)は、当該入力に基づいて、VRユーザの仮想電子ピアノに対する操作に対応する音をスピーカ416に出力させるようになっていてもよい。なお、制御部510は、VRユーザの仮想電子ピアノに対する操作に対応する音を電子ピアノのスピーカに出力させるようになっていてもよい。
なお、MRユーザ6が、電子ピアノを操作した際の、当該操作に対応する音の複合現実空間21における出力は、電子ピアノのスピーカが行ってもよく、スピーカ416が行ってもよい。また、VRユーザが、仮想電子ピアノを操作した際の、当該操作に対応する音の仮想空間11における出力は、スピーカ216が行ってもよい。
<情報処理システムの実行する処理>
次に図11~図14を参照しながら、情報処理システム100が実行する処理の流れについて説明する。
次に図11~図14を参照しながら、情報処理システム100が実行する処理の流れについて説明する。
VRシステム200の実行する処理の一例について、図11を参照しながら説明する。
ステップS101において、コンピュータ300のプロセッサ301は、仮想空間データを特定し、仮想空間11を定義する。
ステップS102において、プロセッサ301は、仮想空間11に、VRユーザのVRアバター25を配置する。
ステップS103において、プロセッサ301は、ネットワーク2を介してコンピュータ300と接続されるコンピュータ500であって、当該仮想空間11と対応する複合現実空間21を制御するコンピュータ500のプロセッサ501から、複合現実空間21中のMRユーザ6の位置を示す位置情報を取得する。
ステップS104において、プロセッサ301は、ステップS103で取得した位置情報に基づいて、複合現実空間21中のMRユーザ6の位置に対応する仮想空間11中の位置に、MRユーザ6のMRアバター26を配置する。
ステップS105において、プロセッサ301は、仮想空間11に仮想オブジェクトとしての仮想模型30を配置する。プロセッサ301は、複合現実空間21中の仮想模型30の位置と対応する仮想空間11中の位置に仮想模型30を配置する。なお、対応する位置に配置するとは、複合現実空間21中の位置が先行して決まるものであってもよく、仮想空間11中の位置が先行して決まるものであってもよい。
ステップS106において、プロセッサ301は、VRユーザからの入力を受け付ける。具体的には、プロセッサ301は、例えば、VRユーザの動きを検出する検出手段の出力をVRユーザからの入力として受け付ける。
ステップS107において、プロセッサ301は、VRユーザからの入力に基づいて仮想空間11中の仮想オブジェクトに所定の変化を与える。具体的には、プロセッサ301は、例えば、VRユーザからの入力に基づいて、仮想空間11中のVRアバター25または仮想模型30を動かす。例えば、当該入力がVRアバター25に関するものであった場合、プロセッサ301は、VRアバター25を動かす。また、例えば、当該入力が仮想模型30に関するものであった場合、プロセッサ301は、仮想模型30を動かす。また、プロセッサ301は、VRユーザからの入力に関する情報を、プロセッサ501に送信する。
ステップS108において、プロセッサ301は、プロセッサ501が受け付けたMRユーザ6からの入力に関する情報を取得する。
ステップS109において、プロセッサ301は、ステップS108で取得したMRユーザ6からの入力に基づいて、仮想空間11中の仮想オブジェクトに所定の変化を与える。具体的には、プロセッサ301は、例えば、MRユーザ6からの入力に基づいて、仮想空間11中のMRアバター26または仮想模型30を動かす。例えば、当該入力がMRアバター26に関するものであった場合、プロセッサ301は、MRアバター26を動かす。また、当該入力が仮想模型30に関するものであった場合、プロセッサ301は、仮想模型30を動かす。
次に、MRシステム400の実行する処理の一例について、図12を参照しながら説明する。
ステップS201において、コンピュータ500のプロセッサ501は、複合現実空間21を定義する。
ステップS202において、プロセッサ501は、複合現実空間21内のMRユーザ6の位置を検出する。また、プロセッサ501は、検出したMRユーザ6の位置を示す位置情報を、ネットワーク2を介してコンピュータ500と接続されるコンピュータ300であって、当該複合現実空間21と対応する仮想空間11を制御するコンピュータ300のプロセッサ301に送信する。
ステップS203において、プロセッサ501は、プロセッサ301から、仮想空間11中のVRアバター25の位置を示す位置情報を取得する。
ステップS204において、プロセッサ501は、ステップS203で取得した位置情報に基づいて、仮想空間11中のVRアバター25の位置に対応する複合現実空間21中の位置に、VRアバター25を配置する。なお、対応する位置に配置するとは、仮想空間11中の位置が先行して決まるものであってもよく、複合現実空間21中の位置が先行して決まるものであってもよい。
ステップS205において、プロセッサ501は、複合現実空間21に仮想オブジェクトとしての仮想模型30を配置する。プロセッサ501は、仮想空間11中の仮想模型30の位置と対応する複合現実空間21中の位置に仮想模型30を配置する。
ステップS206において、プロセッサ501は、MRユーザ6からの入力を受け付ける。具体的には、プロセッサ501は、例えば、MRユーザ6の動きを検出する検出手段の出力をMRユーザ6からの入力として受け付ける。
ステップS207において、プロセッサ501は、MRユーザ6からの入力に基づいて、複合現実空間21中の仮想オブジェクトに所定の変化を与える。具体的には、プロセッサ501は、例えば、MRユーザ6からの入力に基づいて、複合現実空間21中の仮想模型30を動かす。また、プロセッサ501は、MRユーザ6からの入力に関する情報を、プロセッサ301に送信する。
ステップS208において、プロセッサ501は、プロセッサ301が受け付けたVRユーザからの入力に関する情報を取得する。
ステップS209において、プロセッサ501は、ステップS208で取得したVRユーザからの入力に基づいて、複合現実空間21中の仮想オブジェクトに所定の変化を与える。具体的には、プロセッサ501は、例えば、VRユーザからの入力に基づいて、複合現実空間21中のVRアバター25または仮想模型30を動かす。例えば、当該入力がVRアバター25に関するものであった場合、プロセッサ501は、VRアバター25を動かす。また、当該入力が仮想模型30に関するものであった場合、プロセッサ501は、仮想模型30を動かす。
次に、MRユーザ6の行動を仮想空間11に反映させる処理の一例について、図13を参照しながら説明する。
ステップS301において、プロセッサ501は、MRユーザ6からの入力を受け付ける。具体的には、プロセッサ501は、例えば、特定の現実オブジェクト(例えば、黒板35、レーザポインタまたは電子ピアノ等)に対するMRユーザ6の行動を検出する検出手段の出力をMRユーザ6からの入力として受け付ける。
ステップS302において、プロセッサ501は、ステップS301で受け付けたMRユーザ6からの入力に関する情報を、プロセッサ301(換言すると、VRシステム200)に送信する。
ステップS303において、プロセッサ301は、ステップS302で送信された情報に基づいて、MRユーザ6が行動を行った特定の現実オブジェクトに対応する仮想オブジェクトに所定の変化を与える。例えば、MRユーザ6が、黒板35に所定の記入内容を記入する記入動作を行った場合、プロセッサ301は、黒板35に対応する仮想黒板36を当該所定の記入内容を表示する状態に変化させる。
次に、VRユーザの行動を複合現実空間21に反映させる処理の一例について、図14を参照しながら説明する。
ステップS351において、プロセッサ301は、VRユーザからの入力を受け付ける。具体的には、プロセッサ301は、例えば、特定の現実オブジェクトに対応する仮想オブジェクト(例えば、仮想黒板36または仮想電子ピアノ等)に対するVRユーザの行動を検出する検出手段の出力をVRユーザからの入力として受け付ける。
ステップS352において、プロセッサ301は、ステップS351で受け付けたVRユーザからの入力に関する情報を、プロセッサ501(換言すると、MRシステム400)に送信する。
ステップS353において、プロセッサ501は、ステップS352で送信された情報に基づいて、特定の現実オブジェクトに対応する仮想オブジェクトに対してVRユーザが行った行動を、当該特定の現実オブジェクトに反映させる。例えば、VRユーザが、仮想黒板36に所定の記入内容を記入する記入動作を行った場合、プロセッサ501は、黒板35を当該所定の記入内容を表示する状態に変化させる。
[第2の実施形態]
次に、本発明の第2の実施形態について説明する。第2の実施形態の情報処理システム100は、第1の実施形態で説明した内容を矛盾の生じない範囲で採用し得る。例えば、第2の実施形態の情報処理システム100は、第1の実施形態の情報処理システムの構成の一部または全部を含み得る。以下では、第1の実施形態において説明した事項については、説明を省略ないし簡略化する。
次に、本発明の第2の実施形態について説明する。第2の実施形態の情報処理システム100は、第1の実施形態で説明した内容を矛盾の生じない範囲で採用し得る。例えば、第2の実施形態の情報処理システム100は、第1の実施形態の情報処理システムの構成の一部または全部を含み得る。以下では、第1の実施形態において説明した事項については、説明を省略ないし簡略化する。
以下では、情報処理システム100が、仮想空間11で行われている事象が複合現実空間21に反映されるサービスに適用される場合を例に説明する。具体的には、以下では、現実に存在する場所(一例として、以下では「街A」とする。)を模した仮想空間11中における特定の位置(一例として、以下では街Aに実在する「店Bの前」(換言すると、店Bを模した仮想オブジェクトの前)とする。)で行われている事象(一例として、以下では「音楽ライブ」とする。)を、当該特定の位置に対応する現実空間中の位置(ここでは、店Bの前)にいるMRユーザ6がMR装置410を介して体験可能(ここでは、音楽ライブの視聴が可能)な情報処理システム100について説明する。
座標定義部812は、GPSセンサ(換言すると、位置検出手段)によって測定される座標と、仮想空間座標との対応関係(換言すると、現実空間中の地点と仮想空間11中の地点との対応関係)に関する情報を対応関係記憶部としての記憶部611に記憶させる。換言すると、本実施形態では、現実空間(換言すると、複合現実空間)と仮想空間11との位置の対応関係を示す情報が、対応関係記憶部に予め記憶されている。
MR側入力受付部816は、位置検出手段からの入力を受け付ける。位置検出手段は、MR装置410の備えるGPSセンサを用いてMRユーザ6の位置を示す位置情報を取得する。すなわち、MR側入力受付部816は、現実空間におけるMRユーザ6の現在の位置を示す位置情報(例えば、GPSセンサを用いて取得される位置情報)の入力を受け付ける。
VRシステム200の制御部310は、仮想空間11中の特定の位置で行われる所定の事象の実行を制御する。本実施形態では、当該所定の事象は、所定のイベント(具体的には、音楽ライブ)となっている。具体的には、VR側オブジェクト制御部920は、図15に示すように、仮想空間11中の特定の位置に、所定の事象に関連する仮想オブジェクトとしての事象関連オブジェクト50を配置する。より具体的には、VR側オブジェクト制御部920は、例えば、仮想空間11中の店Bの前に、事象関連オブジェクト50としての、音楽ライブに出演するキャラクタのオブジェクト(以下、「出演キャラクタ」という。)や、音楽ライブのステージのオブジェクト等を配置する。なお、VR側オブジェクト制御部920は、VRユーザの指示(換言すると、VR側入力受付部916が受け付けるVRユーザからの入力(例えば、コントローラ280に対する操作))に基づいて事象関連オブジェクト50を配置してもよい。また、VR側オブジェクト制御部920は、本サービスの運営者の指示に基づいて事象関連オブジェクト50を配置してもよい。
また、VR側オブジェクト制御部920は、事象関連オブジェクト50(例えば、出演キャラクタ)を動かし、事象の進行を制御する(換言すると、イベントを進行させる)。なお、VR側オブジェクト制御部920は、VRユーザの指示(換言すると、VR側入力受付部916が受け付けるVRユーザからの入力(例えば、コントローラ280に対する操作))に基づいて出演キャラクタを動かすなどしてもよい。また、出演キャラクタの動き等については予め用意されており、VR側オブジェクト制御部920は、予め用意されたデータを再生することにより出演キャラクタを動かすなどしてもよい。換言すると、出演キャラクタは、VRアバター25であってもよく、ノンプレイヤキャラクタ等であってもよい。
すなわち、本実施形態の情報処理システム100では、VRシステム200(換言すると、制御部310)は、自身のキャラクタ(例えば、VRアバター25)を操作して動き回ることが可能な仮想空間11(換言すると、仮想の街A)中において特定の位置(換言すると、仮想の店Bの前)にいるVRユーザ(換言すると、特定の位置にいるキャラクタを操作するVRユーザ)に対して、所定の事象としての音楽ライブに係るビューを提供する。ここで、当該VRユーザは、音楽ライブの出演キャラクタを操作するユーザと異なるユーザ(換言すると、例えば、当該音楽ライブの観客等)であってもよく、同一のユーザ(換言すると、例えば、当該音楽ライブの演者等)であってもよい。
事象関連オブジェクト50には、所定の事象(換言すると、所定のイベント)に関連するオブジェクトであることを示す情報(換言すると、タグ)が付されている。また、事象関連オブジェクト50には、事象関連オブジェクト50の仮想空間中の位置(換言すると、座標)を示す位置情報が付されている。なお、事象関連オブジェクト50の位置情報は、各事象関連オブジェクト50に対して個別に付与されるものであってもよく、イベントに対してまとめて付与されるもの等であってもよい。
MR側オブジェクト制御部820は、図15に示すように、仮想空間11中における事象関連オブジェクト50が配置される位置に対応する複合現実空間21中の位置に、当該事象関連オブジェクト50に対応する仮想オブジェクトを配置する。ここで、当該事象関連オブジェクト50に対応する仮想オブジェクト、すなわち仮想空間11中の事象関連オブジェクト50に対応する複合現実空間21中の仮想オブジェクトとは、例えば、仮想空間11中の事象関連オブジェクト50と同じ形態を有するもの(換言すると、同じ物体を示すもの)であってもよく、異なる形態を有するものであってもよい。本実施形態では、複合現実空間21には、仮想空間11中の事象関連オブジェクト50と同じ形態の事象関連オブジェクト50(具体的には、音楽ライブの出演キャラクタや音楽ライブのステージ等)が配置される。
また、MR側オブジェクト制御部820は、事象関連オブジェクト50(例えば、出演キャラクタ)を動かし、複合現実空間21において実行されるイベントを進行する。ここで、MR側オブジェクト制御部820によるイベントの進行(具体的には、出演キャラクタを動かす制御等)と、VR側オブジェクト制御部920によるイベントの進行(具体的には、出演キャラクタを動かす制御等)とは、連動している。すなわち、MR側オブジェクト制御部820は、仮想空間11中で行われているイベントを複合現実空間21に反映させる。換言すると、本実施形態では、仮想空間11で起きている事象が、複合現実空間21にもリアルタイムで反映される。具体的には、MR側オブジェクト制御部820は、複合現実空間21中の事象関連オブジェクト50が、仮想空間11中の事象関連オブジェクト50と同じ動きをするように制御する。なお、ここで「リアルタイムで反映」とは、事象の発生(換言すると、イベントの進行)に若干のずれがある場合を含み、また、仮想空間11中の事象と複合現実空間21中の事象とのどちらの進行が先行するものであってもよい。また、ここで「反映」とは、複合現実空間21中の事象関連オブジェクト50が、仮想空間11中の事象関連オブジェクト50と全く同じ動きをするものでなくてもよい。例えば、仮想空間11における出演キャラクタの動きのうち、複合現実空間21において表示される出演キャラクタには反映されない動きがあってもよい。換言すると、MRシステム400の制御部510は、VRユーザに提供されるビューと同一の事象に係るものであると判別できるビューをMRユーザ6に提供するものとしてもよい。
本実施形態では、仮想空間11中の街Aの店Bの前において音楽ライブが行われる場合に、複合現実空間21中の街Aの店Bの前で当該音楽ライブが行われる。すなわち、MR側オブジェクト制御部820は、仮想空間11中の特定の位置で行われている所定の事象に係る事象関連オブジェクト50を、当該特定の位置に対応する複合現実空間21中の位置に配置するとともに、当該事象関連オブジェクト50を、仮想空間11中の動きに対応した動きをするように動かす。そして、表示制御部840は、MR側入力受付部816に入力される位置情報に応じて、当該位置情報の示す複合現実空間21中の位置に配置された事象関連オブジェクト50をMR装置410のディスプレイ411に表示させる。具体的には、GPSセンサを用いて取得される位置情報(具体的には、MRユーザ6の位置を示す位置情報)の入力を受け付けるMR側入力受付部816に、MRユーザ6が現実空間において店Bの前にいることを示す位置情報が入力される場合に、制御部510は、ディスプレイ411に、仮想空間11中の店Bの前で行われている音楽ライブに係る事象関連オブジェクト50を表示させる。これにより、現実空間の店Bの前に事象関連オブジェクト50が配置された(換言すると、現実空間の店Bの前で仮想空間11で行われる音楽ライブが実行される)複合現実空間21のビューがMRユーザ6に提供される。すなわち、制御部510は、当該位置情報がMRユーザ6が仮想空間11中の特定の位置に対応する現実空間中の位置にいることを示すときに、仮想空間11中の当該特定の位置で行われている事象が反映された複合現実空間21のビューをMRユーザ6に提供する。
なお、制御部510は、MRユーザ6が、現実空間において、当該特定の位置に対応する位置を訪れたことに基づいて、MRユーザ6に特典を付与する特典付与部を備えていてもよい。特典は、例えば、特典を獲得したユーザがゲーム内(換言すると、サービス内)で使用可能な仮想オブジェクト(例えば、キャラクタが装備可能なアイテム等)であってもよく、現実空間中において現実の物体と交換可能な電子的チケット等であってもよく、サービス内においてユーザが所有する所定のポイント等であってもよい。また、「訪れたことに基づいて」とは、訪れたか否かを直接的に判定して特典を付与するものであってもよく、訪れることで実行可能な特定の行動(例えば、音楽ライブの視聴を開始した、終了した、あるいは所定時間以上行った、など)が行われた場合に特典を付与するもの等であってもよい。このような構成によれば、MRユーザ6に対して、現実空間において、特定の位置に対応する位置を訪れる動機付けを与えることができる。
このように、本実施形態においては、仮想空間11中の特定の位置で起きている所定の事象が反映された複合現実空間21のビューがMRユーザ6に提供されるが、所定の事象は音楽ライブに限らない。例えば、所定の事象は、特定のユーザが操作するキャラクタ(換言すると、所定の事象に関連する事象関連オブジェクト50)が動く事象であってもよい。具体的には、例えば、VRシステム200が、街Aを模した仮想空間11中でキャラクタを動かすことができるゲームを提供するものとする。この場合に、VR側オブジェクト制御部920は、当該特定のユーザとしてのVRユーザの指示(換言すると、VR側入力受付部916が受け付けるVRユーザからの入力(例えば、コントローラ280に対する操作))に基づいて、街Aを模した仮想空間11中でキャラクタに所定のアクション(例えば、跳躍や走行等のアクション)を実行させる。また、MR側オブジェクト制御部820は、仮想空間11中における当該キャラクタが配置される位置に対応する複合現実空間21中の位置に、当該キャラクタを配置するとともに、仮想空間11中での当該キャラクタのアクションと同様のアクションを複合現実空間21中で実行させる。すなわち、この場合、例えば、街Aを模した仮想空間11上でキャラクタを動かすゲームを当該特定のユーザとしてのVRユーザがプレイしているときに、MRユーザ6が現実空間において街Aを訪れると、制御部510が、当該特定のユーザによって動かされているゲーム中(換言すると、仮想空間11上)でのキャラクタの動きをMR装置410のディスプレイ411を介して提供される複合現実空間21のビューに反映させる。すなわち、本例においては、当該特定のユーザとしてのVRユーザのVR装置210において当該特定のユーザに提供される仮想空間11のビューと、現実空間において街AにいるMRユーザ6のMR装置410において当該MRユーザ6に提供される複合現実空間21のビューとで、当該特定のユーザにより操作される仮想オブジェクトが同様の動きをする。このような構成によれば、ゲーム画面上におけるキャラクタの動きを、現実の街において再現することなどが可能となり、サービスの興趣性を向上させることができる。
なお、仮想空間11中の特定の位置で起きている所定の事象が反映された複合現実空間21のビューの提供を受けられるMRユーザ6が限定されていてもよい。具体的には、記憶部511は、当該ビューの提供を受ける権利に関する情報(以下、「権利情報」という。)を記憶する権利情報記憶部として機能し、制御部510は、MRユーザ6が当該権利を有する場合に当該ビューをMRユーザ6に提供し、当該権利を有しない場合に当該ビューをMRユーザ6に提供しないこととしてもよい。また、当該権利は、例えば、MRユーザ6が対価を払うこと(例えば、現金の支払い、あるいはサービス内でのMRユーザ6の保有資産(例えば、仮想通貨等)の消費等)によりMRユーザ6に付与されるものであってもよい。具体的には、例えば、サービス内において、音楽ライブの視聴に係る権利を購入可能となっていてもよい。より具体的には、例えば、権利情報として、サービス内で購入可能な音楽ライブのチケットの有無に関する情報が記憶され、制御部510は、当該チケットを有するMRユーザ6が音楽ライブの視聴をすることができ、当該チケットを有しないMRユーザ6が音楽ライブの視聴をすることができないように制御してもよい。換言すると、権利情報として、当該ビューの提供を受ける権利に係るアイテム(例えば、チケット等)の保有に関する情報が記憶され、制御部510は、MRユーザ6が当該アイテムを有している場合に、当該ビューをMRユーザ6に提供してもよい。なお、当該権利(換言すると、当該アイテム)は、サービス内における所定のミッションの達成等により得られるようにしてもよい。
また、制御部510は、仮想空間11中の特定の位置で起きている所定の事象であって、MRユーザ6が複数のユーザの中から選択したVRユーザに関連する所定の事象が反映された複合現実空間21のビューを当該MRユーザ6に提供してもよい。換言すると、MR側入力受付部816は、MRユーザ6による、複数のユーザのうちのいずれのユーザに関連する所定の事象を反映させるか選択する操作(例えば、コントローラ480に対する操作)に係る入力を受け付け、制御部510は、当該操作により選択されたVRユーザに関連する所定の事象を当該MRユーザ6に提供されるビューに反映させてもよい。当該操作は、例えば、MRユーザ6が、自身のフレンドの中から、事象の反映を受けるユーザを選択する操作であってもよい。また、全てのフレンドに関連する所定の事象が反映されるようになっており、当該操作は、他のユーザをフレンドとして登録する操作等であってもよい。換言すると、本実施形態のサービスでは、MRユーザ6は、自身のフレンドに関連する所定の事象が反映された複合現実空間21のビューの提供を受けることができるようになっていてもよい。また、例えば、当該操作は、複数のプレイヤの中から、プロのプレイヤ等のMRユーザ6が所定の事象の反映を受けたいユーザを選択する操作であってもよい。すなわち、例えば、制御部510は、MRユーザ6が選択したプレイヤ(換言すると、特定のVRユーザ)が街Aを模した仮想空間11中でキャラクタを動かす前述のゲームをプレイしている場合に、当該プレイヤによって動かされているゲーム中(換言すると、仮想空間11上)でのキャラクタの動きを当該MRユーザ6に提供される複合現実空間21のビューに反映させるなどしてもよい。換言すると、MRユーザ6は、複数のユーザのうちの自身に関連付けられたユーザに関連する所定の事象が反映された複合現実空間21のビューの提供を受けることができるようになっていてもよい。また、例えば、制御部510は、MRユーザ6が選択した芸能人が仮想空間11中でライブを行っている場合に、当該ライブを当該MRユーザ6に提供される複合現実空間21のビューに反映させるなどしてもよい。なお、特定のユーザに関連する事象が複数ある場合に、当該特定のユーザに関連する特定の事象を、反映を受ける事象として選択することが可能となっていてもよい。
なお、このように、本実施形態のサービスでは、各ユーザ(例えば、MRユーザ6やVRユーザ)は、他のユーザ(例えば、VRユーザやMRユーザ6)をフレンドとして登録することができるようになっていてもよい。各ユーザは、例えば、コントローラ280,480に対する所定の操作に基づいて、自分以外の他のユーザをフレンドとして登録することができる。また、フレンドとして登録とは、あるユーザが、他のユーザを自分に関連付けることともいえる。また、フレンドとして登録とは、自分以外の特定のユーザを、ブックマークすることともいえる。フレンドとして登録とは、あるユーザ(具体的には、フレンド)に関する情報(例えば、ログイン状態に関する情報等)を他のユーザ(具体的には、非フレンド)に関する情報に比べて呼び出しやすい状態にしておくことともいえる。なお、あるユーザが他のユーザをフレンドとして登録しているが、当該他のユーザが当該あるユーザをフレンドとして登録していない状態が存在してもよい。すなわち、当該あるユーザが当該他のユーザを一方的にフォローしている状態が存在してもよい。また、当該あるユーザと当該他のユーザとが相互にフォローしている状態が存在してもよい。なお、一方的にフォローしている状態が存在しないこととしてもよい。換言すると、本実施形態において「フレンド」とは、あるユーザから見たときの、相互的なフォロー関係が成立している他のユーザのみを指すこととしてもよく、一方的なフォロー関係が成立している他のユーザを指すこととしてもよい。
また、制御部510は、仮想空間11中の特定の位置で行われている所定の事象であって、MRユーザ6に設定された属性に対応する属性を有する所定の事象が反映された複合現実空間21のビューを当該MR6ユーザに提供してもよい。具体的には、例えば、各MRユーザ6にはユーザの趣味、嗜好に係る属性、より具体的には「音楽好き」や「お笑い好き」(あるいは「特定の芸能人が好き」)等の属性が付されるようになっていてもよい。そして、制御部510は、例えば、「音楽好き」という属性が付されたMRユーザ6に対しては、「音楽」という属性が付された所定の事象を反映させ、「音楽好き」という属性が付されていないMRユーザ6に対しては、「音楽」という属性が付された所定の事象を反映させないようにしてもよい。また、制御部510は、例えば、「お笑い好き」という属性が付されたMRユーザ6に対しては、「お笑い」という属性が付された所定の事象を反映させ、「お笑い好き」という属性が付されていないMRユーザ6に対しては、「お笑い」という属性が付された所定の事象を反映させないようにしてもよい。なお、MRユーザ6に設定される属性は、各MRユーザ6が自身で設定すること(例えば、コントローラ480を介しての自身の好みの入力等)が可能となっていてもよく、AI(Artificial Intelligence)によって自動的に(例えば、サービス内でのユーザの行動等に応じて)設定されるなどしてもよい。
以上のように、制御部510は、仮想空間11中で行われる複数の事象のうち、MRユーザ6が選択した特定の事象(例えば、MRユーザ6が選択した特定のユーザに関連する事象や、MRユーザ6が設定した自身の属性に対応する属性を有する事象や、MRユーザ6が購入したチケットに係る事象等)を、複合現実空間21に反映させてもよい。換言すると、制御部510は、仮想空間11中で行われる複数の事象のうち、MRユーザ6が選択していない事象を、複合現実空間21に反映させなくてもよい。このように、選択していない事象を複合現実空間21に反映させない場合に、ユーザの選択に関わらず反映される事象が存在してもよい。換言すると、「選択していない事象を複合現実空間21に反映させない」とは、選択がされている場合に複合現実空間21への反映がされる事象であって、選択がされていない場合に複合現実空間21への反映がされない事象が少なくとも1つ存在すればよい。なお、事象の選択は、MRユーザ6が選択する特定の事象が発生(換言すると、開始)する前に行うことが可能となっていてもよく、当該特定の事象が発生した後(換言すると、行われている最中)に行うことが可能となっていてもよい。
なお、事象が行われる仮想空間11は、当該事象が反映される現実空間を模したものでなくてもよい。例えば、現実に存在する街Aの店Bの前の広場に対応した領域を仮想空間11内に用意し、当該領域で行われる所定の事象を、現実空間において当該広場にいるMRユーザ6のMR装置410に反映させてもよい。この場合、対応関係記憶部としての記憶部611には、例えば、当該領域と当該広場との対応関係を示す情報を記憶させることができる。なお、第3の実施の形態で説明される、現実空間の事象が反映される仮想空間11についても同様に、現実空間を模したものでなくてもよい。
また、事象が行われる仮想空間11は、当該事象が反映される現実空間の地形を模したものであって、景観の異なるものであってもよい。例えば、本実施形態において、仮想空間11を、現実に存在する街Aの地形を模したものであって、街並みの異なるものとしてもよい。具体的には、仮想空間11を、過去(例えば、江戸時代)の街Aに対応する地域を再現したものとし、再現した当該地域の各地点と、現実空間の現在の街Aの各地点とが地図上の同じ場所(換言すると、同じ経緯度の場所)を指すように現実空間中の地点と仮想空間11中の地点とを対応付けてもよい。そして、再現した当該地域の特定の位置で行われる所定の事象を、現実空間において当該特定の位置に対応する位置にいるMRユーザ6のMR装置410に反映させてもよい。なお、第3の実施の形態で説明される、現実空間の事象が反映される仮想空間11についても同様に、現実空間の地形を模したものであって、景観の異なるものであってもよい。
なお、所定の事象に関する複合現実空間21のビューは、透過型のディスプレイ411を介して見える現実空間に仮想オブジェクトを重畳させるMR装置410により提供されるものでなくてもよく、例えば、カメラにより撮影される現実空間の画像に仮想オブジェクトを重畳させた画像をディスプレイ411に表示させるスマートフォン等により提供されてもよい。換言すると、複合現実空間21のビューの提供は、例えば、透過型のディスプレイに事象関連オブジェクト50を表示させることにより行われてもよく、現実空間を撮影した画像に事象関連オブジェクト50を重畳させた画像をディスプレイに表示させることにより行われてもよい。さらに換言すると、現実空間を撮影した画像に仮想オブジェクトを重畳させた画像をディスプレイに表示させるスマートフォン等を含んで構成される所定のシステムが、MRシステム400の構成の少なくとも一部を有していてもよい。換言すると、本実施形態あるいは他の実施形態におけるMRシステム400は、当該所定のシステム(例えば、スマートフォン等)であるものとして読み替えることが可能である。また、本明細書においては、当該所定のシステムのユーザもMRユーザ6に該当する。
また、所定の事象に関する仮想空間11のビューは、VR装置210としてのヘッドマウントディスプレイにより提供されるものでなくてもよく、例えば、PCモニタやテレビ等に、仮想空間11の画像を表示させることにより提供されてもよい。換言すると、PCやゲーム装置、あるいはこれらの装置と所定のディスプレイとを含んで構成される所定のシステムが、VRシステム200の構成の少なくとも一部を有していてもよい。換言すると、本実施形態あるいは他の実施形態におけるVRシステム200は、当該所定のシステムであるものとして読み替えることが可能である。また、本明細書においては、当該所定のシステムのユーザもVRユーザに該当する。
[第3の実施形態]
次に、本発明の第3の実施形態について説明する。第3の実施形態の情報処理システム100は、第1の実施形態または第2の実施形態で説明した内容を矛盾の生じない範囲で採用し得る。例えば、第3の実施形態の情報処理システム100は、第1の実施形態の情報処理システムの構成の一部または全部を含み得る。また、第3の実施形態の情報処理システム100は、第2の実施形態の情報処理システムの構成の一部または全部を含み得る。以下では、第1の実施形態または第2の実施形態において説明した事項については、説明を省略ないし簡略化する。
次に、本発明の第3の実施形態について説明する。第3の実施形態の情報処理システム100は、第1の実施形態または第2の実施形態で説明した内容を矛盾の生じない範囲で採用し得る。例えば、第3の実施形態の情報処理システム100は、第1の実施形態の情報処理システムの構成の一部または全部を含み得る。また、第3の実施形態の情報処理システム100は、第2の実施形態の情報処理システムの構成の一部または全部を含み得る。以下では、第1の実施形態または第2の実施形態において説明した事項については、説明を省略ないし簡略化する。
以下では、情報処理システム100が、現実空間で行われている事象が仮想空間11に反映されるサービスに適用される場合を例に説明する。具体的には、以下では、現実空間の所定の場所(一例として、以下では「街A」とする。)の特定の位置(一例として、以下では街Aの「店Bの前」)で行われている事象(一例として、以下では「音楽ライブ」とする。)を、当該所定の場所を模した仮想空間11中における当該特定の位置に対応する位置(ここでは、店Bの前(換言すると、店Bを模した仮想オブジェクトの前)とする。)で行う場合について説明する。すなわち、第2の実施形態においては、仮想空間11において行われている事象が現実空間に反映されるのに対し、第3の実施形態においては、現実空間において行われている事象が仮想空間11に反映される。なお、情報処理システム100が、第2の実施形態に係る構成と第3の実施形態に係る構成との両方を備え、仮想空間11において行われている事象が現実空間に反映されるとともに、現実空間において行われている事象が仮想空間11に反映されるように構成してもよい。
座標定義部812は、GPSセンサ(換言すると、位置検出手段)によって測定される座標と、仮想空間座標との対応関係(換言すると、現実空間中の地点と仮想空間11中の地点との対応関係)に関する情報を対応関係記憶部としての記憶部611に記憶させる。換言すると、本実施形態では、現実空間(換言すると、複合現実空間)と仮想空間11との位置の対応関係を示す情報が、対応関係記憶部に予め記憶されている。
本実施形態では、図16に示すように、特定の位置としての店Bの前には、検出装置460が配置されている。また、検出装置460は、カメラであり、現実空間における特定の位置としての店Bの前を撮影するようになっている。なお、店Bの前には複数の検出装置460(換言すると、カメラ)が配置されていてもよい。また、本実施形態における検出装置460(換言すると、カメラ)は、MRユーザ6の動きを検出するためのものではなく、単に所定の事象についての撮影を行うためのものであってもよい。
なお、本実施形態において、MRシステム400は、MR装置410を備えていてもよく、備えていなくてもよい。例えば、MRシステム400は、検出装置460とコンピュータ500とを備えていてもよい。また、コンピュータ500は、検出装置460の外部に設けられていてもよく、コンピュータ500の一部または全体が検出装置460に内蔵されてもよい。換言すると、本実施形態あるいは他の実施形態におけるMRシステム400は、本実施形態における店Bの前に設置された検出装置460としてのカメラであるものとして読み替えることが可能である。
また、検出装置460は、GPSセンサを備え、検出装置460の位置を示す位置情報を取得可能となっている。また、MR側入力受付部816は、当該GPSセンサを用いて取得される位置情報の入力を受け付ける。すなわち、MR側入力受付部816は、特定の位置を示す位置情報の入力を受け付ける。なお、当該GPSセンサを用いて取得される位置情報は、検出装置460によって撮影される所定の事象が行われている位置を示す位置情報ともいえる。また、検出装置460がMRユーザ6等の所定の人物を撮影する場合(換言すると、当該所定の人物の動きを検出する場合)、当該GPSセンサを用いて取得される位置情報は、当該所定の人物の現在の位置を示す位置情報ともいえる。
制御部310は、現実空間中の特定の位置で行われる所定の事象を仮想空間11に反映させる。本実施形態では、当該所定の事象は、所定のイベント(具体的には、音楽ライブ)となっている。すなわち、制御部310は、現実の街Aの店Bの前で行われている音楽ライブが仮想空間11中の店Bの前でも行われるように制御する。
具体的には、MR側入力受付部816(換言すると、制御部510)は、例えば、検出装置460としてのカメラが備えるイメージセンサによって撮影される画像を入力として受け付ける。ここでは、当該画像は、所定の事象としての音楽ライブを撮影した画像となっている。また、通信制御部850は、当該画像およびこの画像が取得された位置としての特定の位置を示す情報を通信制御部950に対して送り、制御部310は、図16に示すように、これらの情報に基づいて、当該画像を仮想空間11中の当該特定の位置に対応する位置(すなわち、店Bの前)に表示させる。換言すると、制御部310は、VRユーザ(換言すると、VRアバター25)が仮想空間11中において現実空間中の特定の位置に対応する位置にいる場合に、ディスプレイ211に当該画像(すなわち、当該特定の位置で行われている事象の画像)を表示させる。これにより、自身のキャラクタを操作して動き回ることが可能な仮想空間11(換言すると、仮想の街A)中において、当該特定の位置に対応する位置(換言すると、仮想の店Bの前)にいるVRユーザ(換言すると、特定の位置にいるキャラクタを操作するVRユーザ)に対して、現実空間の当該特定の位置で行われている事象に係るビューを提供することができる。すなわち、制御部310は、現実空間中の特定の位置に対応する仮想空間11中の位置にVRユーザ(換言すると、VRアバター25)がいる場合に、所定のカメラにより撮影された所定の事象に関する画像に基づいて、現実空間中の当該特定の位置で行われている事象が反映された仮想空間11のビューをVRユーザに提供する。これにより、当該VRユーザは、現実空間において当該特定の位置にいる人と体験を共有することが可能となる。なお、本実施形態では、GPSセンサによって測定される座標と、仮想空間座標との対応関係に関する情報が、現実空間中の地点と仮想空間11中の地点との対応関係を示す情報として対応関係記憶部に記憶されているが、例えば、特定の位置に設置された検出装置460を識別可能とする識別情報と、当該特定の位置に対応する仮想空間11中の位置を示す座標との対応関係に関する情報が、現実空間中の地点と仮想空間11中の地点との対応関係を示す情報として記憶されており、当該情報に基づいて特定の位置に対応する仮想空間11中の位置での所定の事象の反映が行われる等してもよい。すなわち、検出装置460を識別可能とする識別情報が、特定の位置を示す情報として機能してもよい。
なお、制御部310がディスプレイ211に表示させる所定の事象に係る画像は、所定のMRユーザ6が装着するMR装置410のカメラ413によって撮影されてもよい。換言すると、MR装置410が本実施形態の検出装置460として機能してもよい。さらに換言すると、所定の事象が行われる特定の位置に係る位置情報を取得するためのGPSセンサや、所定の事象に係る画像を取得するためのカメラは、MR装置410が備えるものであってもよい。また、この場合に、MR装置410を装着するMRユーザ6は、所定の事象としての所定のイベントの出演者等であってもよく、観客等であってもよい。また、位置情報の取得と所定の事象に係る画像の取得とが異なるMR装置410(換言すると、異なるユーザの使用するMR装置410)によって行われてもよい。
なお、現実空間の特定の位置で行われる所定の事象の仮想空間11への反映は、以下のように行われてもよい。すなわち、制御部310は、上述したように所定の事象を撮影した画像を表示させるのではなく、所定の事象に関する人物(ここでは、音楽ライブの出演者)のアバターに所定の事象に関する動作を行わせてもよい。具体的には、第1の実施の形態におけるMRユーザ6を当該人物と読み替え、MRアバター26としての当該人物のアバターを仮想空間11上で動かしてもよい。すなわち、例えば、MR側入力受付部816は、当該人物の動きを検出する検出手段の出力を、当該人物からの入力として受け付ける。具体的には、例えば、MR側入力受付部816は、検出装置460としてのカメラが備えるイメージセンサによって撮影される画像から画像認識によって検出されるMRユーザ6の動きに関する情報を、当該人物からの入力として受け付けてもよい。また、ユーザ情報取得部818は、当該人物を識別可能とする識別情報を取得する。具体的には、ユーザ情報取得部818は、検出装置460が備えるイメージセンサによって撮影される画像から画像認識によって複合現実空間21中のMRユーザ6を識別することで、当該識別情報を取得してもよい。そして、VR側オブジェクト制御部920は、現実空間中の特定の位置に対応する仮想空間11中の位置に当該人物のアバター(換言すると、MRアバター26)を配置する。また、VR側オブジェクト制御部920は、例えば、MR側入力受付部816が受け付けた当該人物からの入力に基づいて、仮想空間11中の当該人物のアバターを動かす。具体的には、VR側オブジェクト制御部920は、例えば、MR側入力受付部816が受け付けた、MRユーザ6の動きに関する情報に基づいて、MRアバター26を動かす。すなわち、VR側オブジェクト制御部920は、仮想空間11中の当該人物のアバターの動きが、現実空間中の当該人物の動きを検出する検出手段が検出する当該人物の動きを模したものとなるように、当該人物のアバターの動きを制御する。そして、これにより、現実空間の特定の位置で行われる所定の事象が仮想空間11に反映されてもよい。このような構成によっても、現実空間中の特定の位置に対応する仮想空間11中の位置にVRユーザ(換言すると、VRアバター25)がいる場合に、所定のカメラにより撮影された所定の事象に関する画像に基づいて、現実空間中の当該特定の位置で行われている事象が反映された仮想空間11のビューをVRユーザに提供することができる。具体的には、所定のカメラにより撮影された人物のアバターによって所定の事象が再現される仮想空間11のビューをVRユーザに提供することができる。
なお、当該人物の動きの検出は、所定のMRユーザ6が装着するMR装置410のカメラ413によって行われてもよく、コントローラ480、MRユーザ6が身につけるデバイス、注視センサ412、センサ417、またはセンサ486等によって行われてもよい。また、MR装置410を装着するMRユーザ6は、所定の事象としての所定のイベントの出演者等であってもよく、観客等であってもよい。なお、所定のカメラが備えるイメージセンサによって撮影される画像から画像認識によって人物の動きを検出して仮想空間11中のアバターに反映させる場合に、カメラに映る複数の人物のうち演者(換言すると、画像認識あるいはユーザの動きをトラッキング可能とする特定の機器の装着の有無等に基づいて識別される特定の人物)に対応するアバターのみが仮想空間11中に現れるように(特定の人物以外の人物のアバターは現れないように)してもよく、カメラに映る全ての人物についてリアルタイムでアバター(換言すると、3Dモデル)を作成し全ての人物のアバターが仮想空間11中に現れるようにしてもよい。
なお、所定の事象が行われている特定の位置としての店Bの前にいるMRユーザ6(例えば、当該所定の事象の出演者または観客)のMR装置410のディスプレイ411には、仮想空間11において当該所定の事象を見るVRユーザのVRアバター25が表示されてもよい。例えば、MR装置410の制御部510は、当該MR装置410のMR側入力受付部816にMRユーザ6が特定の位置にいることを示す位置情報が入力されると、当該特定の位置に対応する仮想空間11中の位置にいるVRアバター25の情報を通信制御部850を介して取得し、当該VRアバター25をディスプレイ411に表示させてもよい。すなわち、制御部510は、MR側入力受付部816に入力される位置情報がMRユーザ6が前記特定の位置にいることを示すときに、当該特定の位置に対応する仮想空間中の位置にいるVRアバター25の画像を前記ディスプレイに表示させてもよい。このような構成によれば、現実空間において所定の事象が行われている場所にいる人物が、仮想空間11におけるVRユーザの反応を見ることができる。具体的には、例えば、現実空間において所定のライブ(例えば、音楽ライブやお笑いライブ等)が行われている場合に、MRユーザ6としてのライブの出演者あるいは観客は、MR装置410のディスプレイ411を介してVRアバター25(換言すると、仮想空間11における観客)を視認することが可能となる。このため、MRユーザ6としてのライブの出演者あるいは観客は、仮想空間11も含めてどのぐらいの観客が集まっているかや、各観客がどのような反応をしているか等を視覚的に捉えることが可能となる。また、例えば、友人関係にあるVRユーザとMRユーザ6とが一緒に所定のイベントを視聴すること等が可能となる。
この場合に、VRアバター25が表示されるMR装置410と、所定の事象を撮影する装置(例えば、店Bの前に設置されたカメラあるいはMR装置410)とは、別々の装置であってもよく、同じ装置(具体的には、ある1人のMRユーザ6が装着するMR装置410)であってもよい。
なお、所定の事象が起きている特定の位置にいるMRユーザ6に提供される複合現実空間21のビューは、透過型のディスプレイ411を介して見える現実空間に仮想オブジェクト(具体的には、VRアバター25)を重畳させるMR装置410により提供されるものでなくてもよく、例えば、カメラにより撮影される現実空間の画像に仮想オブジェクト(具体的には、VRアバター25)を重畳させた画像をディスプレイに表示させるスマートフォン等により提供されてもよい。すなわち、本実施形態に係る情報処理システム100は、例えば、演者が現実空間における特定の位置で自身のスマートフォンを使用して自撮り撮影しながら所定のライブを行う場合に、当該スマートフォンのディスプレイに、当該特定の位置に対応する仮想空間11中の位置にいるVRアバター25(例えば、観客のアバター)を表示させるように構成すること等もできる。なお、この場合に、スマートフォン等のディスプレイには、現実空間の画像にVRアバター25が重畳された複合現実空間21の画像ではなく、VRアバター25のみが表示される画像や、背景を仮想空間11(例えば、当該特定の位置に対応する仮想空間11中の位置の画像)としたVRアバター25の画像等が表示されてもよい。
なお、制御部310は、VRユーザ(換言すると、VRアバター25)が、仮想空間11において、所定の事象が行われている特定の位置に対応する位置を訪れたことに基づいて、VRユーザに特典を付与する特典付与部を備えていてもよい。特典は、例えば、特典を獲得したユーザがゲーム内(換言すると、サービス内)で使用可能な仮想オブジェクト(例えば、キャラクタが装備可能なアイテム等)であってもよく、現実空間中において現実の物体と交換可能な電子的チケット等であってもよく、サービス内においてユーザが所有する所定のポイント等であってもよい。また、「訪れたことに基づいて」とは、訪れたか否かを直接的に判定して特典を付与するものであってもよく、訪れることで実行可能な特定の行動(例えば、音楽ライブの視聴を開始した、終了した、あるいは所定時間以上行った。)が行われた場合に特典を付与するもの等であってもよい。このような構成によれば、VRユーザに対して、仮想空間11において、特定の位置に対応する位置を訪れる動機付けを与えることができる。
なお、現実空間中の特定の位置で起きている所定の事象が反映された仮想空間11のビューの提供を受けられるVRユーザが限定されていてもよい。具体的には、記憶部311は、当該ビューの提供を受ける権利に関する情報(以下、「権利情報」という。)を記憶する権利情報記憶部として機能し、制御部310は、VRユーザが当該権利を有する場合に当該ビューをVRユーザに提供し、当該権利を有しない場合に当該ビューをVRユーザに提供しないこととしてもよい。また、当該権利は、例えば、VRユーザが対価を払うこと(例えば、現金の支払い、あるいはサービス内でのVRユーザの保有資産(例えば、仮想通貨等)の消費等)によりVRユーザに付与されるものであってもよい。具体的には、例えば、サービス内において、音楽ライブの視聴に係る権利を購入可能となっていてもよい。より具体的には、例えば、権利情報として、サービス内で購入可能な音楽ライブのチケットの有無に関する情報が記憶され、制御部310は、当該チケットを有するVRユーザが音楽ライブの視聴をすることができ、当該チケットを有しないVRユーザが音楽ライブの視聴をすることができないように制御してもよい。換言すると、権利情報として、当該ビューの提供を受ける権利に係るアイテム(例えば、チケット等)の保有に関する情報が記憶され、制御部310は、VRユーザが当該アイテムを有している場合に、当該ビューをVRユーザに提供してもよい。なお、当該権利(換言すると、当該アイテム)は、サービス内における所定のミッションの達成等により得られるようにしてもよい。
また、制御部310は、現実空間中の特定の位置で起きている所定の事象であって、VRユーザが複数のユーザの中から選択したMRユーザ6に関連する所定の事象が反映された仮想空間11のビューを当該VRユーザに提供してもよい。換言すると、VR側入力受付部916は、VRユーザによる、複数のユーザのうちのいずれのユーザに関連する所定の事象を反映させるか選択する操作(例えば、コントローラ280に対する操作)に係る入力を受け付け、制御部310は、当該操作により選択されたMRユーザ6に関連する所定の事象を当該VRユーザに提供されるビューに反映させてもよい。当該操作は、例えば、VRユーザが、自身のフレンドの中から、事象の反映を受けるユーザを選択する操作であってもよい。また、全てのフレンドに関連する所定の事象が反映されるようになっており、当該操作は、他のユーザをフレンドとして登録する操作等であってもよい。換言すると、本実施形態のサービスでは、VRユーザは、自身のフレンドに関連する所定の事象が反映された仮想空間11のビューの提供を受けることができるようになっていてもよい。換言すると、VRユーザは、複数のユーザのうちの自身に関連付けられたユーザに関連する所定の事象が反映された仮想空間11のビューの提供を受けることができるようになっていてもよい。また、例えば、制御部310は、VRユーザが選択した芸能人が現実空間中でライブを行っている場合に、当該ライブを当該VRユーザに提供される仮想空間11のビューに反映させるなどしてもよい。なお、特定のユーザに関連する事象が複数ある場合に、当該特定のユーザに関連する特定の事象を、反映を受ける事象として選択することが可能となっていてもよい。
また、制御部310は、現実空間中の特定の位置で行われている所定の事象であって、VRユーザに設定された属性に対応する属性を有する所定の事象が反映された仮想空間11のビューを当該VRユーザに提供してもよい。具体的には、例えば、各VRユーザにはユーザの趣味、嗜好に係る属性、より具体的には「音楽好き」や「お笑い好き」(あるいは「特定の芸能人が好き」)等の属性が付されるようになっていてもよい。そして、制御部310は、例えば、「音楽好き」という属性が付されたVRユーザに対しては、「音楽」という属性が付された所定の事象を反映させ、「音楽好き」という属性が付されていないVRユーザに対しては、「音楽」という属性が付された所定の事象を反映させないようにしてもよい。また、制御部310は、例えば、「お笑い好き」という属性が付されたVRユーザに対しては、「お笑い」という属性が付された所定の事象を反映させ、「お笑い好き」という属性が付されていないVRユーザに対しては、「お笑い」という属性が付された所定の事象を反映させないようにしてもよい。なお、VRユーザに設定される属性は、各VRユーザが自身で設定すること(例えば、コントローラ280を介しての自身の好みの入力等)が可能となっていてもよく、AI(Artificial Intelligence)によって自動的に(例えば、サービス内でのユーザの行動等に応じて)設定されるなどしてもよい。
以上のように、制御部310は、現実空間中で行われる複数の事象のうち、VRユーザが選択した特定の事象(例えば、VRユーザが選択した特定のユーザに関連する事象や、VRユーザが設定した自身の属性に対応する属性を有する事象や、VRユーザが購入したチケットに係る事象等)を、仮想空間11に反映させてもよい。換言すると、制御部310は、現実空間中で行われる複数の事象のうち、VRユーザが選択していない事象を、仮想空間11に反映させなくてもよい。このように、選択していない事象を仮想空間11に反映させない場合に、ユーザの選択に関わらず反映される事象が存在してもよい。換言すると、「選択していない事象を仮想空間11に反映させない」とは、選択がされている場合に仮想空間11への反映がされる事象であって、選択がされていない場合に仮想空間11への反映がされない事象が少なくとも1つ存在すればよい。なお、事象の選択は、VRユーザが選択する特定の事象が発生(換言すると、開始)する前に行うことが可能となっていてもよく、当該特定の事象が発生した後(換言すると、行われている最中)に行うことが可能となっていてもよい。
なお、第2の実施形態の情報処理システム100や、第3の実施の形態の情報処理システム100は、現実空間と仮想空間との双方を利用して行うゲームに適用することもできる。以下に具体例を示す。
(探索ゲーム)
例えば、情報処理システム100を、仮想空間11内を移動するキャラクタを現実世界で探すゲーム(以下、「探索ゲーム」という。)に適用してもよい。具体的には、例えば、まず、現実世界に存在するテーマパークを模した仮想空間11(換言すると、テーマパークに対応する仮想空間11)を用意する。また、VR側オブジェクト制御部920は、仮想空間11内を動き回るように所定のキャラクタ(以下、「探索対象キャラクタ」という。換言すると、探索対象オブジェクト。)を移動させる。探索対象キャラクタは、VRユーザによって操作されるもの(換言すると、VRユーザの操作に基づいて移動するもの)であってもよく、ユーザの操作を介さずに移動するものであってもよい。換言すると、探索対象キャラクタは、VRアバター25であってもよく、いわゆるノンプレイヤキャラクタであってもよい。また、探索対象キャラクタの外見は、例えば、テーマパークに属するキャラクタ(例えば、テーマパークを象徴するキャラクタ等)の外見等であってもよい。
例えば、情報処理システム100を、仮想空間11内を移動するキャラクタを現実世界で探すゲーム(以下、「探索ゲーム」という。)に適用してもよい。具体的には、例えば、まず、現実世界に存在するテーマパークを模した仮想空間11(換言すると、テーマパークに対応する仮想空間11)を用意する。また、VR側オブジェクト制御部920は、仮想空間11内を動き回るように所定のキャラクタ(以下、「探索対象キャラクタ」という。換言すると、探索対象オブジェクト。)を移動させる。探索対象キャラクタは、VRユーザによって操作されるもの(換言すると、VRユーザの操作に基づいて移動するもの)であってもよく、ユーザの操作を介さずに移動するものであってもよい。換言すると、探索対象キャラクタは、VRアバター25であってもよく、いわゆるノンプレイヤキャラクタであってもよい。また、探索対象キャラクタの外見は、例えば、テーマパークに属するキャラクタ(例えば、テーマパークを象徴するキャラクタ等)の外見等であってもよい。
MRシステム400(換言すると、制御部510)は、仮想空間11中において探索対象キャラクタが存在する位置に対応する現実空間中の位置にMRユーザ6がいる場合に、ディスプレイ411に探索対象キャラクタを表示させる。換言すると、MRシステム400は、仮想空間11中において探索対象キャラクタが存在する位置に対応する現実空間中の位置にMRユーザ6がいない場合には、ディスプレイ411に探索対象キャラクタを表示させない。すなわち、本探索ゲームは、仮想空間11中を動き回る探索対象キャラクタを、現実空間中で探し回るゲームとなっている。
また、MR側入力受付部816は、仮想空間11中において探索対象キャラクタが存在する位置に対応する現実空間中の位置にMRユーザ6がいる状況(換言すると、ディスプレイ411に探索対象キャラクタが表示されている状況)において、MRユーザ6による特定の操作に係る入力を受け付ける。当該特定の操作は、例えば、ディスプレイ411に映る探索対象キャラクタの写真を撮る操作(換言すると、画像を記憶する操作)であってもよい。換言すると、ここでの特定の操作とは、探索対象キャラクタを発見したことを示す情報の記憶に係る操作ともいえる。なお、ここでは、探索対象キャラクタを発見したことを示す情報は、探索対象キャラクタの写真となっているが、探索対象キャラクタを見つけることで立つフラグ等であってもよい。また、当該情報は、特定の操作を介さずに自動的に記憶されるものであってもよい。換言すると、探索対象キャラクタを発見したことを示す情報は、仮想空間11中において探索対象キャラクタが存在する位置に対応する現実空間中の位置にMRユーザ6が訪れたことに基づいて記憶されるものであればよい。すなわち、制御部510は、現実空間中の当該位置にMRユーザ6が訪れたことに基づいて、操作対象キャラクタを発見したことを示す情報を記憶部511に記憶させる。
また、制御部510は、現実空間中の当該位置にMRユーザ6が訪れたことに基づいて(換言すると、探索対象キャラクタを発見したことを示す情報が記憶されると)、MRユーザに特典を付与する。当該特典は、仮想空間11中において利用可能なアイテム等であってもよい。また、当該特典は、探索対象キャラクタを発見したことを示す電子的な証明書やトロフィー等であってもよい。また、当該特典は、現実空間中において(例えば、現実のテーマパークで)現実の物体(例えば、探索対象キャラクタのグッズ等)と交換可能な電子的チケット等であってもよい。
また、本探索ゲームでは、VRユーザからMRユーザ6に対して、捜索を手助けする情報を送信可能となっていてもよい。なお、当該VRユーザは、捜索対象キャラクタを操作するユーザであってもよく、当該ユーザとは異なるユーザであってもよい。具体的には、例えば、当該VRユーザは、仮想空間11中において自身のVRアバター25を操作し、テーマパークを模した仮想空間11内で捜索対象キャラクタを捜索するようにする。また、VR側入力受付部916は、当該VRユーザによる、捜索対象キャラクタの目撃情報(例えば、目撃した場所に関する情報。換言すると、捜索を手助けする情報。)をMRユーザ6に対して送る操作(例えば、コントローラ280に対する操作)に係る入力を受け付ける。また、制御部510は、当該目撃情報を通信制御部850を介して受け取り、当該目撃情報に基づいて、捜索の手助けとなる出力を所定の出力手段に実行させる。具体的には、例えば、制御部510は、仮想空間11において捜索対象キャラクタが目撃された箇所を知らせる表示をディスプレイ411に表示させたり、捜索対象キャラクタが目撃された箇所を知らせる音をスピーカ416に出力させたりする。このような構成によれば、実際にテーマパークに行っているMRユーザ6と、実際にはテーマパークにいない(例えば、自宅等にいる)VRユーザとで協力してゲームを楽しむこと等が可能となる。
(サバイバルゲーム)
また、例えば、情報処理システム100を、仮想空間11内でプレイをするユーザと現実空間内でプレイするユーザとで対戦することが可能なサバイバルゲームに適用してもよい。具体的には、例えば、まず、現実空間側のユーザがプレイをする会場と、当該会場を模した仮想空間11(換言すると、会場を模した仮想空間11)を用意する。なお、当該会場は、いわゆるサバゲ―フィールドであってもよく、街中等の所定の領域であってもよい。また、現実空間側のユーザはMR装置410を装着し、仮想空間11側のユーザはVR装置210を装着する。
また、例えば、情報処理システム100を、仮想空間11内でプレイをするユーザと現実空間内でプレイするユーザとで対戦することが可能なサバイバルゲームに適用してもよい。具体的には、例えば、まず、現実空間側のユーザがプレイをする会場と、当該会場を模した仮想空間11(換言すると、会場を模した仮想空間11)を用意する。なお、当該会場は、いわゆるサバゲ―フィールドであってもよく、街中等の所定の領域であってもよい。また、現実空間側のユーザはMR装置410を装着し、仮想空間11側のユーザはVR装置210を装着する。
VRシステム200の制御部310は、VR側入力受付部916が受け付けたVRユーザからの入力に基づいて、当該VRユーザのVRアバター25を制御する。具体的には、制御部310は、VRユーザからの入力に基づいてVRアバター25を仮想空間11中で移動させる。
また、VRシステム200の制御部310は、MR側入力受付部816が受け付けたMRユーザ6からの入力を通信制御部950を介して受信し、MRアバター26を制御する。具体的には、制御部310は、MR装置410の備えるGPSセンサ(換言すると、位置検出手段)によって取得される位置情報(すなわち、現実空間におけるMRユーザ6の位置を示す位置情報)に基づいて、MRアバター26を仮想空間11中で移動させる。より具体的には、制御部310は、現実空間側の会場におけるMRユーザ6がいる位置に対応する仮想空間11中の位置にMRアバター26が位置するようにMRアバター26を移動させる。すなわち、VR装置210のディスプレイ211においては、複合現実空間21中におけるMRユーザ6がいる位置に対応する仮想空間11中(換言すると、会場内)の位置に、MR6ユーザが存在しているように見える表示が提供される。なお、MRユーザ6の位置をより正確に取得するために、MR装置410のセンサ417等を介してMR装置410の高さ情報等を取得してもよい。
また、MRシステム400の制御部510は、仮想空間11中におけるVRアバター25が配置される位置に対応する複合現実空間21中の位置に、VRアバター25が位置するようにVRアバター25を移動させる。すなわち、MR装置410のディスプレイ411においては、仮想空間中におけるVRユーザがいる位置に対応する複合現実空間21中(換言すると、会場内)の位置に、VRユーザが存在しているように見える表示が提供される。
また、VR側入力受付部916は、VRユーザによる、MRユーザ6(換言すると、MRアバター26)に対する攻撃に係る入力を受け付ける。また、MR側入力受付部816は、MRユーザ6による、VRユーザ(換言すると、VRアバター25)に対する攻撃に係る入力を受け付ける。なお、これらのVRユーザまたはMRユーザ6による、相手方への攻撃は、例えば、相手方に対して銃を撃つものであってもよく、当該攻撃に係る入力操作は、銃の形のコントローラ280,480等を介して行われるようになっていてもよい。
また、制御部310は、VRユーザによるMRユーザ6に対する攻撃がMRユーザ6に当たったか否かを判定する。具体的には、制御部310は、例えば、VRアバター25の持つ銃がMRアバター26に向けられた状態でVRユーザによる入力操作がされ、当該銃から放たれた弾がMRアバター26に直撃した場合に、VRユーザによる攻撃がMRユーザ6に当たったと判定する。また、制御部310は、MRユーザ6によるVRユーザに対する攻撃がVRユーザに当たったか否かを判定する。具体的には、制御部310は、例えば、MRアバター26の持つ銃がVRアバター25に向けられた状態でMRユーザ6による入力操作がされ、当該銃から放たれた弾がVRアバター25に直撃した場合に、MRユーザ6による攻撃がVRユーザに当たったと判定する。ここで、MRアバター26の持つ銃の向く方向は、例えば、MRユーザ6の持つコントローラ480の向きと連動しており、MRアバター26の銃の照準は、MRユーザ6が複合現実空間21中においてコントローラ480の照準を合わせている位置と対応する仮想空間11中の位置に合わせられるようになっている。すなわち、制御部310は、MRユーザ6が複合現実空間21中において銃の形のコントローラ480でVRアバター25に対して照準を合わせた状態で入力操作を行った場合に、MRユーザ6による攻撃がVRユーザに当たったと判定する。なお、VRユーザによるMRユーザ6に対する攻撃については、通常のシューティングゲームと同様とすることができる。なお、MRユーザ6によるVRユーザへの攻撃あるいはVRユーザによるMRユーザ6への攻撃についての判定の一部あるいは全部が、制御部510または制御部610等によって行われてもよい。換言すると、MRユーザ6によるVRユーザへの攻撃についての判定を行う判定部や、VRユーザによるMRユーザ6への攻撃についての判定を行う判定部は、制御部310、制御部510および制御部610のいずれによって実現されてもよい。
なお、ここでは、VRユーザとMRユーザ6とが敵として戦う場合を例に説明したが、当該サバイバルゲーム(換言すると、対戦ゲーム)では、VRユーザとMRユーザ6とが協力してプレイすることが可能となっていてもよい。すなわち、例えば、複数のユーザで構成される複数のチーム(例えば、2つのチーム)で対戦することが可能なサバイバルゲームとした場合に、当該複数のチームのうちの1のチームがVRユーザ(換言すると、仮想空間11側のユーザ)のみで構成され、他の1のチームがMRユーザ6(換言すると、現実空間側のユーザ)のみで構成されてもよい。また、1のチームにVRユーザとMRユーザ6との両方が含まれ得るようになっていてもよい。
(脱出ゲーム)
また、例えば、情報処理システム100を、現実空間側のユーザと仮想空間11側のユーザとが協力してプレイする脱出ゲーム(換言すると、謎解きゲーム)に適用してもよい。具体的には、例えば、まず、現実空間側のユーザがプレイをする会場と、当該会場を模した仮想空間11(換言すると、会場を模した仮想空間11)を用意する。なお、当該会場は、街中等の所定の領域であってもよく、特定の施設等であってもよい。また、現実空間側のユーザはMR装置410を装着し、仮想空間11側のユーザはVR装置210を装着する。
また、例えば、情報処理システム100を、現実空間側のユーザと仮想空間11側のユーザとが協力してプレイする脱出ゲーム(換言すると、謎解きゲーム)に適用してもよい。具体的には、例えば、まず、現実空間側のユーザがプレイをする会場と、当該会場を模した仮想空間11(換言すると、会場を模した仮想空間11)を用意する。なお、当該会場は、街中等の所定の領域であってもよく、特定の施設等であってもよい。また、現実空間側のユーザはMR装置410を装着し、仮想空間11側のユーザはVR装置210を装着する。
MR装置410を装着したユーザとVR装置210を装着したユーザとは、設定されたミッションを協力して達成する。具体的には、MR装置410とVR装置210とは、それぞれ対応する位置にミッションに係る仮想オブジェクトを表示させる。当該仮想オブジェクトは、例えば、VRユーザとMRユーザ6とが協力して行うアクションの受付に係るオブジェクトであってもよい。具体的には、VRユーザがVR装置210に表示される当該仮想オブジェクトとしての所定の装置に対して所定のアクション(例えば、手をかざす操作)を行い、MRユーザ6がMR装置410に表示される当該仮想オブジェクトとしての所定の装置に対して所定のアクション(例えば、手をかざす操作。なお、当該アクションはVRユーザが行うアクションと同様であってもよく、異なっていてもよい。)を行うと、当該所定の装置が起動する(換言すると、ゲーム(イベント)が進行する)等のようになっていてもよい。また、当該仮想オブジェクトは、例えば、宝箱等のVRユーザまたはMRユーザ6の少なくとも一方が取得可能なアイテムに関するものであってもよい。また、当該仮想オブジェクトは、謎解きに関する記載を含む(例えば、謎についての文章や、謎解きのヒントなどが記された)オブジェクト等であってもよい。
また、このような情報処理システム100を用いて実行されるゲームであって、MRユーザ6とVRユーザとが協力してプレイするゲーム等において、MRユーザ6とVRユーザとの一方がゲームの進行に係る第1の行動を行ったことを条件として、他方によるゲームの進行に係る第2の行動が可能となるようにしてもよい。この場合に、例えば、第1の行動は、当該一方のユーザしか行うことができず、当該他方のユーザが行うことはできない行動とする。また、例えば、第2の行動は、当該他方のユーザしか行うことができず、当該一方のユーザが行うことはできない行動とする。具体的には、例えば、MRシステム400(換言すると、制御部510)が、MRユーザ6が現実空間において特定の場所を訪れたことを検出すると(例えば、当該特定の場所を訪れたことを示すGPS情報がMR側入力受付部816に入力されると)、VRシステム200(換言すると、制御部310)が、VRユーザによる第2の行動に係る入力を受け付けるなどしていてもよい。換言すると、VRユーザによる第2の行動は、MRユーザ6が現実空間において特定の場所を訪れたことに基づいて実行可能となる行動であってもよい。また、例えば、VRシステム200(換言すると、制御部310)が、VRユーザが仮想空間11において特定の場所を訪れたことを検出すると、MRシステム400(換言すると、制御部510)が、MRユーザ6による第2の行動に係る入力を受け付けるなどしてもよい。換言すると、MRユーザ6による第2の行動は、VRユーザが仮想空間11において特定の場所を訪れたことに基づいて実行可能となる行動であってもよい。また、例えば、MRユーザ6が現実空間においてMR装置410としてのスマートフォンのカメラを現実空間の特定の場所に向けている間だけVR装置210がゲームの進行に係る所定の表示(例えば、謎解きに係るヒントの表示など)をディスプレイ211に表示させるなどしてもよい。また、仮想空間11を複合現実空間21の過去を表すものとし、VRシステム200は仮想空間11(換言すると、過去)でのVRユーザによる第1の行動としての所定の行動(例えば、仮想空間11中の特定の位置にアイテムを配置する行動)に係る入力を受け付けてもよい。そして、仮想空間11(換言すると、過去)でVRユーザが第1の行動を行うと、MRシステム400は現実空間(換言すると、現在)でのMRユーザ6による第2の行動としての所定の行動(例えば、当該特定の位置に対応する複合現実空間21中の位置に行き、当該アイテムを発見する行動)に係る入力を受け付け、当該入力に基づいてゲーム(換言すると、イベント)を進行させることが可能となるように構成してもよい。
なお、本発明は、上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変形して実施できる。本発明はその発明の範囲内において、各構成要素の自由な組み合わせ、任意の構成要素の変形、または任意の構成要素の省略等が可能である。また、本明細書において説明した処理の流れはあくまで一例であり、各処理の順序や構成は異なるものであってもよい。
<付記>
以上の実施形態で説明した事項は、以下の付記のようにも記載され得る。
以上の実施形態で説明した事項は、以下の付記のようにも記載され得る。
(付記1)
仮想空間のビューである第1のビューを第1ユーザに提供する第1制御手段(例えば、制御部310)と、
第2ユーザの動きを検出する検出手段の出力を、前記第2ユーザからの入力として受け付ける入力受付手段(例えば、MR側入力受付部816)と、
現実空間における前記第2ユーザの現在の位置を示す位置情報を受け付ける位置情報受付手段(例えば、MR側入力受付部816)と、
前記現実空間と前記仮想空間との位置の対応関係を示す情報を記憶する対応関係記憶手段(例えば、記憶部611)と、を備え、
前記第1制御手段は、前記位置情報の示す前記第2ユーザの位置に対応する前記仮想空間中の位置に前記第2ユーザのアバターを配置し、前記検出手段によって検出される前記第2ユーザの動きを前記第2ユーザのアバターに反映させる
情報処理システム。
このような構成によれば、第2ユーザの動きが反映されるアバターを、現実空間における第2ユーザの位置に対応する仮想空間中の位置に配置することが可能となる。したがって、アバターに第2ユーザの動きを反映させるだけでなく、仮想空間におけるアバターの位置を、現実空間における第2ユーザの位置を反映させたものとすることができる。したがって、仮想空間の用途の幅が広がる。
仮想空間のビューである第1のビューを第1ユーザに提供する第1制御手段(例えば、制御部310)と、
第2ユーザの動きを検出する検出手段の出力を、前記第2ユーザからの入力として受け付ける入力受付手段(例えば、MR側入力受付部816)と、
現実空間における前記第2ユーザの現在の位置を示す位置情報を受け付ける位置情報受付手段(例えば、MR側入力受付部816)と、
前記現実空間と前記仮想空間との位置の対応関係を示す情報を記憶する対応関係記憶手段(例えば、記憶部611)と、を備え、
前記第1制御手段は、前記位置情報の示す前記第2ユーザの位置に対応する前記仮想空間中の位置に前記第2ユーザのアバターを配置し、前記検出手段によって検出される前記第2ユーザの動きを前記第2ユーザのアバターに反映させる
情報処理システム。
このような構成によれば、第2ユーザの動きが反映されるアバターを、現実空間における第2ユーザの位置に対応する仮想空間中の位置に配置することが可能となる。したがって、アバターに第2ユーザの動きを反映させるだけでなく、仮想空間におけるアバターの位置を、現実空間における第2ユーザの位置を反映させたものとすることができる。したがって、仮想空間の用途の幅が広がる。
(付記2)
前記検出手段は、ウェアラブルデバイスまたは体内埋め込み型のデバイスである
付記1に記載の情報処理システム。
このような構成によれば、第2ユーザが身につけるデバイスによって第2ユーザの手や足の動きなどを検出し、アバターに反映させることができる。したがって、アバターの動きを第2ユーザの動きを忠実に再現したもの等にすることができ、仮想空間の用途の幅が広がる。
前記検出手段は、ウェアラブルデバイスまたは体内埋め込み型のデバイスである
付記1に記載の情報処理システム。
このような構成によれば、第2ユーザが身につけるデバイスによって第2ユーザの手や足の動きなどを検出し、アバターに反映させることができる。したがって、アバターの動きを第2ユーザの動きを忠実に再現したもの等にすることができ、仮想空間の用途の幅が広がる。
(付記3)
前記位置情報は、GPSを用いて取得される
付記2に記載の情報処理システム。
このような構成によれば、第2ユーザの動きはウェアラブルデバイスによって検出され、位置情報は第2ユーザの地球上(地球全体)における位置を検出可能なGPSを用いて取得されることとなる。したがって、現実空間を自由に動き回る第2ユーザの動きを仮想空間上のアバターに反映させることが可能となり、仮想空間の用途の幅が広がる。
前記位置情報は、GPSを用いて取得される
付記2に記載の情報処理システム。
このような構成によれば、第2ユーザの動きはウェアラブルデバイスによって検出され、位置情報は第2ユーザの地球上(地球全体)における位置を検出可能なGPSを用いて取得されることとなる。したがって、現実空間を自由に動き回る第2ユーザの動きを仮想空間上のアバターに反映させることが可能となり、仮想空間の用途の幅が広がる。
(付記4)
前記第1ユーザのアバターの画像を、前記第2ユーザが使用する所定の装置のディスプレイに表示させる第2制御手段(例えば、制御部510)を備え、
前記第2制御手段は、前記位置情報が前記第2ユーザが特定の位置にいることを示し、前記特定の位置に対応する前記仮想空間中の位置に前記第1ユーザのアバターがいるときに、前記第1ユーザのアバターの画像を前記ディスプレイに表示させる
付記1~3のいずれか1つに記載の情報処理システム。
このような構成によれば、現実空間において特定の位置にいる第2ユーザが、仮想空間中の当該特定の位置に対応する位置にいる第1ユーザのアバターを見ることができるようになる。したがって、仮想空間の用途の幅が広がる。
前記第1ユーザのアバターの画像を、前記第2ユーザが使用する所定の装置のディスプレイに表示させる第2制御手段(例えば、制御部510)を備え、
前記第2制御手段は、前記位置情報が前記第2ユーザが特定の位置にいることを示し、前記特定の位置に対応する前記仮想空間中の位置に前記第1ユーザのアバターがいるときに、前記第1ユーザのアバターの画像を前記ディスプレイに表示させる
付記1~3のいずれか1つに記載の情報処理システム。
このような構成によれば、現実空間において特定の位置にいる第2ユーザが、仮想空間中の当該特定の位置に対応する位置にいる第1ユーザのアバターを見ることができるようになる。したがって、仮想空間の用途の幅が広がる。
(付記5)
仮想空間のビューである第1のビューを第1ユーザに提供する第1制御手段(例えば、制御部310)と、
第2ユーザの動きを検出する検出手段の出力を、前記第2ユーザからの入力として受け付ける入力受付手段(例えば、MR側入力受付部816)と、
現実空間における前記第2ユーザの現在の位置を示す位置情報を受け付ける位置情報受付手段(例えば、MR側入力受付部816)と、
前記現実空間と前記仮想空間との位置の対応関係を示す情報を記憶する対応関係記憶手段(例えば、記憶部611)と、を備える情報処理システムのコンピュータを、前記第1制御手段として機能させるプログラムであって、
前記第1制御手段は、前記位置情報の示す前記第2ユーザの位置に対応する前記仮想空間中の位置に前記第2ユーザのアバターを配置し、前記検出手段によって検出される前記第2ユーザの動きを前記第2ユーザのアバターに反映させる
プログラム。
このような構成によれば、付記1に記載の情報処理システムと同様の作用効果を奏することができる。
仮想空間のビューである第1のビューを第1ユーザに提供する第1制御手段(例えば、制御部310)と、
第2ユーザの動きを検出する検出手段の出力を、前記第2ユーザからの入力として受け付ける入力受付手段(例えば、MR側入力受付部816)と、
現実空間における前記第2ユーザの現在の位置を示す位置情報を受け付ける位置情報受付手段(例えば、MR側入力受付部816)と、
前記現実空間と前記仮想空間との位置の対応関係を示す情報を記憶する対応関係記憶手段(例えば、記憶部611)と、を備える情報処理システムのコンピュータを、前記第1制御手段として機能させるプログラムであって、
前記第1制御手段は、前記位置情報の示す前記第2ユーザの位置に対応する前記仮想空間中の位置に前記第2ユーザのアバターを配置し、前記検出手段によって検出される前記第2ユーザの動きを前記第2ユーザのアバターに反映させる
プログラム。
このような構成によれば、付記1に記載の情報処理システムと同様の作用効果を奏することができる。
11 仮想空間、21 複合現実空間、25 VRアバター、26 MRアバター、30 仮想模型、35 黒板、36 仮想黒板、50 事象関連オブジェクト、100 情報処理システム、200 VRシステム、210 VR装置、211 ディスプレイ、212 注視センサ、213 第1カメラ、214 第2カメラ、215 マイク、216 スピーカ、217 センサ、260 検出装置、270 ディスプレイ、280 コントローラ、286 センサ、300 コンピュータ、301 プロセッサ、302 メモリ、303 ストレージ、304 入出力インターフェース、305 通信インターフェース、310 制御部、311 記憶部、400 MRシステム、410 MR装置、411 ディスプレイ、412 注視センサ、413 カメラ、415 マイク、416 スピーカ、417 センサ、460 検出装置、470 ディスプレイ、480 コントローラ、486 センサ、500 コンピュータ、501 プロセッサ、502 メモリ、503 ストレージ、504 入出力インターフェース、505 通信インターフェース、510 制御部、511 記憶部、600 サーバ、601 プロセッサ、602 メモリ、603 ストレージ、604 入出力インターフェース、605 通信インターフェース、610 制御部、611 記憶部、700 外部機器、810 仮想空間生成部、812 座標定義部、816 MR側入力受付部、818 ユーザ情報取得部、820 MR側オブジェクト制御部、840 表示制御部、845 音制御部、850 通信制御部、916 VR側入力受付部、920 VR側オブジェクト制御部、930 仮想カメラ制御部、940 表示制御部、945 音制御部、950 通信制御部
Claims (5)
- 仮想空間のビューである第1のビューを第1ユーザに提供する第1制御手段と、
第2ユーザの動きを検出する検出手段の出力を、前記第2ユーザからの入力として受け付ける入力受付手段と、
現実空間における前記第2ユーザの現在の位置を示す位置情報を受け付ける位置情報受付手段と、
前記現実空間と前記仮想空間との位置の対応関係を示す情報を記憶する対応関係記憶手段と、を備え、
前記第1制御手段は、前記位置情報の示す前記第2ユーザの位置に対応する前記仮想空間中の位置に前記第2ユーザのアバターを配置し、前記検出手段によって検出される前記第2ユーザの動きを前記第2ユーザのアバターに反映させる
情報処理システム。 - 前記検出手段は、ウェアラブルデバイスまたは体内埋め込み型のデバイスである
請求項1に記載の情報処理システム。 - 前記位置情報は、GPSを用いて取得される
請求項2に記載の情報処理システム。 - 前記第1ユーザのアバターの画像を、前記第2ユーザが使用する所定の装置のディスプレイに表示させる第2制御手段を備え、
前記第2制御手段は、前記位置情報が前記第2ユーザが特定の位置にいることを示し、前記特定の位置に対応する前記仮想空間中の位置に前記第1ユーザのアバターがいるときに、前記第1ユーザのアバターの画像を前記ディスプレイに表示させる
請求項1~3のいずれか1項に記載の情報処理システム。 - 仮想空間のビューである第1のビューを第1ユーザに提供する第1制御手段と、
第2ユーザの動きを検出する検出手段の出力を、前記第2ユーザからの入力として受け付ける入力受付手段と、
現実空間における前記第2ユーザの現在の位置を示す位置情報を受け付ける位置情報受付手段と、
前記現実空間と前記仮想空間との位置の対応関係を示す情報を記憶する対応関係記憶手段と、を備える情報処理システムのコンピュータを、前記第1制御手段として機能させるプログラムであって、
前記第1制御手段は、前記位置情報の示す前記第2ユーザの位置に対応する前記仮想空間中の位置に前記第2ユーザのアバターを配置し、前記検出手段によって検出される前記第2ユーザの動きを前記第2ユーザのアバターに反映させる
プログラム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2023-018930 | 2023-02-10 | ||
| JP2023018930A JP7412617B1 (ja) | 2023-02-10 | 2023-02-10 | 情報処理システムおよびプログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2024166715A1 true WO2024166715A1 (ja) | 2024-08-15 |
Family
ID=89451980
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2024/002463 Ceased WO2024166715A1 (ja) | 2023-02-10 | 2024-01-26 | 情報処理システムおよびプログラム |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP7412617B1 (ja) |
| WO (1) | WO2024166715A1 (ja) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2020126455A (ja) * | 2019-02-05 | 2020-08-20 | 凸版印刷株式会社 | 空間情報管理装置 |
| JP2021175043A (ja) * | 2020-04-22 | 2021-11-01 | セイコーエプソン株式会社 | 頭部装着型表示装置、音声画像出力システム、及び、音声画像出力方法 |
| JP2021189695A (ja) * | 2020-05-28 | 2021-12-13 | 株式会社Spacial | 方法、プログラム、情報処理装置 |
| WO2021261346A1 (ja) * | 2020-06-23 | 2021-12-30 | 株式会社ソニー・インタラクティブエンタテインメント | 情報処理装置、方法、プログラム及び情報処理システム |
-
2023
- 2023-02-10 JP JP2023018930A patent/JP7412617B1/ja active Active
-
2024
- 2024-01-26 WO PCT/JP2024/002463 patent/WO2024166715A1/ja not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2020126455A (ja) * | 2019-02-05 | 2020-08-20 | 凸版印刷株式会社 | 空間情報管理装置 |
| JP2021175043A (ja) * | 2020-04-22 | 2021-11-01 | セイコーエプソン株式会社 | 頭部装着型表示装置、音声画像出力システム、及び、音声画像出力方法 |
| JP2021189695A (ja) * | 2020-05-28 | 2021-12-13 | 株式会社Spacial | 方法、プログラム、情報処理装置 |
| WO2021261346A1 (ja) * | 2020-06-23 | 2021-12-30 | 株式会社ソニー・インタラクティブエンタテインメント | 情報処理装置、方法、プログラム及び情報処理システム |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2024113768A (ja) | 2024-08-23 |
| JP7412617B1 (ja) | 2024-01-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6276882B1 (ja) | 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるためのプログラム | |
| US20240013502A1 (en) | Storage medium, method, and information processing apparatus | |
| JP6306442B2 (ja) | プログラム及びゲームシステム | |
| JP2022549853A (ja) | 共有空間内の個々の視認 | |
| CN109643161A (zh) | 动态进入和离开由不同hmd用户浏览的虚拟现实环境 | |
| CN107656615A (zh) | 大量同时远程数字呈现世界 | |
| JP6785325B2 (ja) | ゲームプログラム、方法、および情報処理装置 | |
| JP2018124665A (ja) | 情報処理方法、コンピュータ、および当該情報処理方法をコンピュータに実行させるためのプログラム | |
| JP2020107123A (ja) | プログラム、情報処理装置、および方法 | |
| JP2009070076A (ja) | プログラム、情報記憶媒体及び画像生成装置 | |
| JP6622832B2 (ja) | プログラム及びゲームシステム | |
| JP6826626B2 (ja) | 視聴プログラム、視聴方法、および視聴端末 | |
| JP6722316B1 (ja) | 配信プログラム、配信方法、コンピュータ、および視聴端末 | |
| JP2019032844A (ja) | 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるためのプログラム | |
| JP2019168962A (ja) | プログラム、情報処理装置、及び情報処理方法 | |
| JP2018195287A (ja) | 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるためのプログラム | |
| JP2020179184A (ja) | ゲームプログラム、方法、および情報処理装置 | |
| JP6718933B2 (ja) | プログラム、情報処理装置、および方法 | |
| JP5479503B2 (ja) | プログラム、情報記憶媒体及び画像生成装置 | |
| JP2018190196A (ja) | 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるためのプログラム | |
| JP7354466B1 (ja) | 情報処理システムおよびプログラム | |
| JP7412613B1 (ja) | 情報処理システムおよびプログラム | |
| JP7412617B1 (ja) | 情報処理システムおよびプログラム | |
| JP2019049987A (ja) | 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるためのプログラム | |
| JP2018190397A (ja) | 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるためのプログラム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 24753159 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |