Program and information processing system

The HMD system enhances metaverse services by recommending content based on user behavior, improving user engagement and entertainment value.

JP7759458B2Active Publication Date: 2025-10-23COLOPL
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2024148245
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-08-30
Publication Date
2025-10-23
Estimated Expiration
2042-09-27

AI Technical Summary

Technical Problem

There is a demand for metaverse services to be more entertaining.

Method used

A system that recommends predetermined things within the metaverse to a user based on their behavior history, using a Head-Mounted Device (HMD) system with sensors and cameras to track user interactions and provide personalized content.

Benefits of technology

Improves user engagement and interest in metaverse services by offering personalized recommendations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007759458000001
    Figure 0007759458000001
  • Figure 0007759458000002
    Figure 0007759458000002
  • Figure 0007759458000003
    Figure 0007759458000003
Patent Text Reader

Abstract

To increase interest in a service.SOLUTION: A program causes a computer to function as recommendation means which determines and recommends a place to be recommended to a user in a metaverse. The recommendation means determines a specific place in the metaverse as a place to be recommended to the user on the basis of a frequency with which other users having a specific relationship with the user in the metaverse has used the specific place in the metaverse, and recommends the specific place to the user.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a program and an information processing system. [Background technology]

[0002] BACKGROUND ART Conventionally, there have been known services that provide a virtual space (in other words, a metaverse) in which users can interact with each other (see, for example, Patent Document 1). [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2011-216073 Summary of the Invention [Problem to be solved by the invention]

[0004] However, there is a demand for such services to be more entertaining.

[0005] The present invention has been made in view of the above circumstances, and aims to improve the interest of services. [Means for solving the problem]

[0006] According to one embodiment shown in the present disclosure, Computer, The system functions as a recommendation means for recommending predetermined things within the metaverse to a user based on the user's behavior history within the metaverse. Programs are offered. [Effects of the Invention]

[0007] According to the present invention, it is possible to improve the interest of a service. [Brief explanation of the drawings]

[0008] [Figure 1] FIG. 1 is a diagram illustrating an outline of the configuration of an HMD system according to an embodiment. [Figure 2] FIG. 1 is a block diagram illustrating an example of a hardware configuration of a computer according to an embodiment. [Figure 3] FIG. 1 is a diagram conceptually illustrating a uvw field of view coordinate system set in an HMD according to an embodiment. [Figure 4] FIG. 1 is a diagram conceptually illustrating one mode of representing a virtual space according to an embodiment. [Figure 5] 1 is a top view of a user's head wearing an HMD according to an embodiment. FIG. [Figure 6] 10 is a diagram showing a YZ cross section of a field of view in a virtual space as viewed from the X direction. [Figure 7] 10 is a diagram showing an XZ cross section of a field of view in a virtual space as viewed from the Y direction. [Figure 8(A)] FIG. 2 is a diagram illustrating a schematic configuration of a controller according to an embodiment. [Figure 8(B)] FIG. 10 illustrates an example of yaw, roll, and pitch directions defined relative to a user's right hand according to one embodiment. [Figure 9] FIG. 2 is a block diagram illustrating an example of a hardware configuration of a server according to an embodiment. [Figure 10] FIG. 1 is a block diagram illustrating a modular configuration of a computer according to an embodiment. [Figure 11] 1 is a sequence chart showing a process executed in an HMD set according to an embodiment. [Figure 12(A)] FIG. 1 is a schematic diagram showing a situation in which each HMD provides a virtual space to a user in a network. [Figure 12(B)] FIG. 13 is a diagram showing a field of view image of a user 5A in FIG. 12(A). [Figure 13] 1 is a sequence chart showing processing executed in an HMD system according to an embodiment. [Figure 14]FIG. 2 is a block diagram illustrating a detailed configuration of modules in a computer according to an embodiment. [Figure 15] FIG. 2 is a block diagram illustrating a modular configuration of a server according to an embodiment. [Figure 16] FIG. 10 is a diagram illustrating attributes set for a user according to an embodiment. [Figure 17] FIG. 10 is a diagram illustrating a display that provides a predetermined recommendation to a user according to an embodiment. [Figure 18] FIG. 10 is a diagram illustrating a display that provides a predetermined recommendation to a user according to an embodiment. [Figure 19] 10 is a sequence chart illustrating an example of a process for recommending other users based on a behavior history in the metaverse according to an embodiment. [Figure 20] 10 is a sequence chart illustrating an example of a process for recommending content in the metaverse based on a behavior history in the metaverse according to an embodiment. [Figure 21] 10 is a sequence chart illustrating an example of a process for making recommendations regarding things in the metaverse based on a behavior history in the real world according to an embodiment. [Figure 22] 10 is a sequence chart illustrating an example of a process for making recommendations regarding real-world objects based on a behavior history in the metaverse according to an embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0009] Hereinafter, embodiments of this technical idea will be described in detail with reference to the drawings. In the following description, the same components are denoted by the same reference numerals. Their names and functions are also the same. Therefore, detailed descriptions thereof will not be repeated. In one or more embodiments shown in this disclosure, elements included in each embodiment can be combined with each other, and the combined result also forms part of the embodiment shown in this disclosure.

[0010] [HMD system configuration] The configuration of an HMD (Head-Mounted Device) system 100 will be described with reference to Fig. 1. Fig. 1 is a diagram showing an outline of the configuration of the HMD system 100 according to the present embodiment. The HMD system 100 is provided as a system for home use or a system for business use. The HMD system 100 provides predetermined services to the user.

[0011] The HMD system 100 includes a server 600, HMD sets 110A, 110B, 110C, and 110D, an external device 700, and a network 2. Each of the HMD sets 110A, 110B, 110C, and 110D is configured to be able to communicate with the server 600 and the external device 700 via the network 2. Hereinafter, the HMD sets 110A, 110B, 110C, and 110D will be collectively referred to as the HMD set 110. The number of HMD sets 110 constituting the HMD system 100 is not limited to four, and may be three or less, or five or more. The HMD set 110 includes an HMD 120, a computer 200, an HMD sensor 410, a display 430, and a controller 300. The HMD 120 includes a monitor 130, a gaze sensor 140, a first camera 150, a second camera 160, a microphone 170, and a speaker 180. The controller 300 may include a motion sensor 420.

[0012] In one aspect, the computer 200 can be connected to the Internet or other network 2, and can communicate with a server 600 or other computers connected to the network 2. Examples of other computers include computers of other HMD sets 110 and external devices 700. In another aspect, the HMD 120 can include a sensor 190 instead of the HMD sensor 410.

[0013] The HMD 120 is worn on the head of the user 5 and can provide a virtual space to the user 5 during operation. More specifically, the HMD 120 displays an image for the right eye and an image for the left eye on the monitor 130. When each eye of the user 5 views the respective image, the user 5 can recognize the image as a three-dimensional image based on the parallax between the two eyes. The HMD 120 can include both a so-called head-mounted display equipped with a monitor and a head-mounted device to which a smartphone or other terminal equipped with a monitor can be attached.

[0014] Monitor 130 is realized, for example, as a non-transmissive display device. In one aspect, monitor 130 is disposed on the main body of HMD 120 so as to be positioned in front of both eyes of user 5. Therefore, when user 5 views the three-dimensional image displayed on monitor 130, user 5 can be immersed in the virtual space. In one aspect, the virtual space includes, for example, a background, objects that user 5 can operate, and images of menus that user 5 can select. In another aspect, monitor 130 can be realized as a liquid crystal monitor or organic EL (Electro Luminescence) monitor provided in a so-called smartphone or other information display terminal.

[0015] In another aspect, the monitor 130 may be realized as a transmissive display device. In this case, the HMD 120 may be an open type such as a pair of glasses, rather than a closed type that covers the eyes of the user 5 as shown in FIG. 1 . The transmissive monitor 130 may be temporarily configured as a non-transmissive display device by adjusting its transmittance. The monitor 130 may include a configuration that simultaneously displays a portion of an image that constitutes a virtual space and the real space. For example, the monitor 130 may display an image of the real space captured by a camera mounted on the HMD 120, or may make the real space visible by setting the transmittance of a portion of the monitor 130 high.

[0016] In one aspect, monitor 130 may include a sub-monitor for displaying an image for the right eye and a sub-monitor for displaying an image for the left eye. In another aspect, monitor 130 may be configured to display an image for the right eye and an image for the left eye as a single image. In this case, monitor 130 includes a high-speed shutter. The high-speed shutter operates to alternately display an image for the right eye and an image for the left eye so that the image is recognized by only one of the eyes.

[0017] In one aspect, the HMD 120 includes a plurality of light sources (not shown). Each light source is realized, for example, by an LED (Light Emitting Diode) that emits infrared rays. The HMD sensor 410 has a position tracking function for detecting the movement of the HMD 120. More specifically, the HMD sensor 410 reads a plurality of infrared rays emitted by the HMD 120 and detects the position and tilt of the HMD 120 in real space.

[0018] In another aspect, the HMD sensor 410 may be realized by a camera. In this case, the HMD sensor 410 can detect the position and tilt of the HMD 120 by performing image analysis processing using image information of the HMD 120 output from the camera.

[0019] In another aspect, the HMD 120 may include the sensor 190 as a position detector instead of or in addition to the HMD sensor 410. The HMD 120 may use the sensor 190 to detect the position and tilt of the HMD 120 itself. For example, if the sensor 190 is an angular velocity sensor, a geomagnetic sensor, or an acceleration sensor, the HMD 120 may use any of these sensors instead of the HMD sensor 410 to detect the position and tilt of the HMD 120 itself. As an example, if the sensor 190 is an angular velocity sensor, the angular velocity sensor detects the angular velocity of the HMD 120 around three axes in real space over time. The HMD 120 calculates changes over time in the angles of the HMD 120 around the three axes based on the angular velocities, and further calculates the tilt of the HMD 120 based on the changes over time in the angles.

[0020] The gaze sensor 140 detects the direction in which the right and left eyes of the user 5 are looking. In other words, the gaze sensor 140 detects the gaze of the user 5. The detection of the gaze direction is achieved, for example, by a known eye tracking function. The gaze sensor 140 is achieved by a sensor having the eye tracking function. In certain aspects, the gaze sensor 140 preferably includes a sensor for the right eye and a sensor for the left eye. The gaze sensor 140 may be, for example, a sensor that irradiates the right and left eyes of the user 5 with infrared light and detects the rotation angle of each eyeball by receiving light reflected from the cornea and iris of the irradiated light. The gaze sensor 140 can detect the gaze of the user 5 based on the detected rotation angles.

[0021] The first camera 150 captures the lower part of the face of the user 5. More specifically, the first camera 150 captures the nose, mouth, and the like of the user 5. The second camera 160 captures the eyes, eyebrows, and the like of the user 5. The housing of the HMD 120 on the user 5 side is defined as the inside of the HMD 120, and the housing of the HMD 120 on the opposite side from the user 5 is defined as the outside of the HMD 120. In one aspect, the first camera 150 may be disposed outside the HMD 120, and the second camera 160 may be disposed inside the HMD 120. Images generated by the first camera 150 and the second camera 160 may be input to the computer 200. In another aspect, the first camera 150 and the second camera 160 may be implemented as a single camera, and the face of the user 5 may be captured by this single camera.

[0022] The microphone 170 converts speech of the user 5 into an audio signal (electrical signal) and outputs it to the computer 200. The speaker 180 converts the audio signal into sound and outputs it to the user 5. In another aspect, the HMD 120 may include earphones instead of the speaker 180.

[0023] Controller 300 is connected to computer 200 via a wire or wirelessly. Controller 300 accepts input of commands from user 5 to computer 200. In one aspect, controller 300 is configured to be able to be held by user 5. In another aspect, controller 300 is configured to be able to be attached to the body or a part of clothing of user 5. In yet another aspect, controller 300 may be configured to output at least one of vibration, sound, and light based on a signal transmitted from computer 200. In yet another aspect, controller 300 accepts operations from user 5 to control the position and movement of an object placed in a virtual space.

[0024] In one aspect, the controller 300 includes multiple light sources. Each light source is realized, for example, by an LED that emits infrared light. The HMD sensor 410 has a position tracking function. In this case, the HMD sensor 410 reads multiple infrared rays emitted by the controller 300 and detects the position and tilt of the controller 300 in real space. In another aspect, the HMD sensor 410 may be realized by a camera. In this case, the HMD sensor 410 can detect the position and tilt of the controller 300 by performing image analysis processing using image information of the controller 300 output from the camera.

[0025] In one aspect, the motion sensor 420 is attached to the hand of the user 5 and detects the movement of the user 5's hand. For example, the motion sensor 420 detects the rotation speed, number of rotations, etc. of the hand. The detected signal is sent to the computer 200. The motion sensor 420 is provided, for example, in the controller 300. In one aspect, the motion sensor 420 is provided, for example, in the controller 300 configured to be held by the user 5. In another aspect, for safety in real space, the controller 300 is attached to something that is worn on the hand of the user 5, such as a glove, so that it will not easily fly away. In yet another aspect, a sensor not worn by the user 5 may detect the movement of the user 5's hand. For example, a signal from a camera capturing an image of the user 5 may be input to the computer 200 as a signal representing the movement of the user 5. The motion sensor 420 and the computer 200 are connected to each other wirelessly, for example. In the case of wireless communication, the communication format is not particularly limited, and for example, Bluetooth (registered trademark) or other known communication methods may be used.

[0026] The display 430 displays an image similar to the image displayed on the monitor 130. This allows users other than the user 5 wearing the HMD 120 to view the same image as the user 5. The image displayed on the display 430 does not need to be a three-dimensional image, and may be an image for the right eye or an image for the left eye. Examples of the display 430 include a liquid crystal display and an organic EL monitor.

[0027] The server 600 may transmit a program to the computer 200. In another aspect, the server 600 may communicate with other computers 200 to provide virtual reality to the HMDs 120 used by other users. For example, in an amusement facility, when multiple users play a participatory game, each computer 200 communicates a signal based on the actions of each user with the other computers 200 via the server 600, allowing multiple users to enjoy a common game in the same virtual space. Each computer 200 may also communicate a signal based on the actions of each user with the other computers 200 without going through the server 600.

[0028] The external device 700 may be any device that can communicate with the computer 200. The external device 700 may be, for example, a device that can communicate with the computer 200 via the network 2, or a device that can communicate directly with the computer 200 via short-range wireless communication or a wired connection. The external device 700 may also be, for example, a device that can communicate 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 computer 200.

[0029] [Computer hardware configuration] A computer 200 according to this embodiment will be described with reference to Fig. 2. Fig. 2 is a block diagram showing an example of the hardware configuration of computer 200 according to this embodiment. Computer 200 includes, as main components, a processor 210, a memory 220, a storage 230, an input / output interface 240, and a communication interface 250. Each component is connected to a bus 260.

[0030] Processor 210 executes a series of instructions included in a program stored in memory 220 or storage 230 based on a signal provided to computer 200 or based on the establishment of a predetermined condition. In one aspect, processor 210 is realized as a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor unit (MPU), a field-programmable gate array (FPGA), or other device.

[0031] Memory 220 temporarily stores programs and data. Programs are loaded from storage 230, for example. Data includes data input to computer 200 and data generated by processor 210. In one aspect, memory 220 is realized as RAM (Random Access Memory) or other volatile memory.

[0032] The storage 230 permanently stores programs and data. The storage 230 is realized, for example, as a ROM (Read-Only Memory), a hard disk drive, a flash memory, or other non-volatile storage device. The programs stored in the storage 230 include a program for providing a virtual space in the HMD system 100, a simulation program, a game program, a user authentication program, and a program for realizing communication with other computers 200. The data stored in the storage 230 includes data and objects for defining the virtual space.

[0033] In another aspect, storage 230 may be realized as a removable storage device such as a memory card. In yet another aspect, a configuration may be used in which programs and data stored in an external storage device are used instead of storage 230 built into computer 200. With such a configuration, for example, in a situation where multiple HMD systems 100 are used, such as an amusement facility, it becomes possible to collectively update programs and data.

[0034] The input / output interface 240 communicates signals between the HMD 120, the HMD sensor 410, the motion sensor 420, and the display 430. The monitor 130, the gaze sensor 140, the first camera 150, the second camera 160, the microphone 170, and the speaker 180 included in the HMD 120 can communicate with the computer 200 via the input / output interface 240 of the HMD 120. In one aspect, the input / output interface 240 is realized using a terminal such as a Universal Serial Bus (USB), a Digital Visual Interface (DVI), or a High-Definition Multimedia Interface (HDMI®). The input / output interface 240 is not limited to those described above.

[0035] In one aspect, the input / output interface 240 may further communicate with the controller 300. For example, the input / output interface 240 receives input of signals output from the controller 300 and the motion sensor 420. In another aspect, the input / output interface 240 sends instructions output from the processor 210 to the controller 300. The instructions instruct the controller 300 to vibrate, output sound, emit light, etc. Upon receiving the instructions, the controller 300 executes one of the following in response to the instructions: vibration, sound output, or light emission.

[0036] Communication interface 250 is connected to network 2 and communicates with other computers (e.g., server 600) connected to network 2. In one aspect, communication interface 250 is realized as, for example, a wired communication interface such as a local area network (LAN), or a wireless communication interface such as Wi-Fi (registered trademark), Bluetooth (registered trademark), or near field communication (NFC). Communication interface 250 is not limited to the above.

[0037] In one aspect, the processor 210 accesses the storage 230, loads one or more programs stored in the storage 230 into the memory 220, and executes a series of instructions included in the programs. The one or more programs may include an operating system for the computer 200, an application program for providing a virtual space, game software executable in the virtual space, etc. The processor 210 sends a signal for providing the virtual space to the HMD 120 via the input / output interface 240. The HMD 120 displays an image on the monitor 130 based on the signal.

[0038] 2 shows a configuration in which the computer 200 is provided outside the HMD 120, but in another aspect, the computer 200 may be built into the HMD 120. As an example, a portable information communication terminal (e.g., a smartphone) including the monitor 130 may function as the computer 200.

[0039] The computer 200 may be configured to be shared by multiple HMDs 120. With such a configuration, for example, the same virtual space can be provided to multiple users, allowing each user to enjoy the same application as other users in the same virtual space.

[0040] In one embodiment, a real coordinate system, which is a coordinate system in real space, is set in advance in the HMD system 100. The real coordinate system has three reference directions (axes) parallel to the vertical direction in real space, the horizontal direction perpendicular to the vertical direction, and the front-to-back direction perpendicular to both the vertical and horizontal directions. The horizontal direction, vertical direction (up-down direction), and front-to-back direction in the real coordinate system are defined as the x-axis, y-axis, and z-axis, respectively. More specifically, in the real coordinate system, the x-axis is parallel to the horizontal direction in real space. The y-axis is parallel to the vertical direction in real space. The z-axis is parallel to the front-to-back direction in real space.

[0041] In one aspect, the HMD sensor 410 includes an infrared sensor. When the infrared sensor detects infrared rays emitted from each light source of the HMD 120, it detects the presence of the HMD 120. The HMD sensor 410 further detects the position and tilt (orientation) of the HMD 120 in real space in accordance with the movement of the user 5 wearing the HMD 120, based on the values ​​of each point (each coordinate value in the real coordinate system). More specifically, the HMD sensor 410 can detect changes over time in the position and tilt of the HMD 120 using each value detected over time.

[0042] Each tilt of the HMD 120 detected by the HMD sensor 410 corresponds to each tilt around the three axes of the HMD 120 in the real coordinate system. The HMD sensor 410 sets a uvw field of view coordinate system for the HMD 120 based on the tilt of the HMD 120 in the real coordinate system. The uvw field of view coordinate system set for the HMD 120 corresponds to a viewpoint coordinate system when the user 5 wearing the HMD 120 views an object in a virtual space.

[0043] [uvw field of view coordinate system] The uvw field of view coordinate system will be described with reference to Fig. 3. Fig. 3 is a conceptual diagram showing the uvw field of view coordinate system set in the HMD 120 according to an embodiment. The HMD sensor 410 detects the position and tilt of the HMD 120 in the real coordinate system when the HMD 120 is started up. The processor 210 sets the uvw field of view coordinate system in the HMD 120 based on the detected values.

[0044] 3, the HMD 120 sets a three-dimensional uvw field of view coordinate system with the head of the user 5 wearing the HMD 120 as its center (origin). More specifically, the HMD 120 tilts the horizontal, vertical, and front-to-back directions (x-axis, y-axis, z-axis) that define the real coordinate system around each axis by the tilt of the HMD 120 around each axis in the real coordinate system, and sets these three 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 HMD 120.

[0045] In a certain situation, when the user 5 wearing the HMD 120 stands upright and looks straight ahead, the processor 210 sets a uvw field of view coordinate system parallel to the real coordinate system in the HMD 120. In this case, the horizontal direction (x-axis), vertical direction (y-axis), and front-to-back direction (z-axis) in the real coordinate system coincide with the pitch axis (u-axis), yaw axis (v-axis), and roll axis (w-axis) of the uvw field of view coordinate system in the HMD 120.

[0046] After the uvw field of view coordinate system is set in the HMD 120, the HMD sensor 410 can detect the tilt of the HMD 120 in the set uvw field of view coordinate system based on the movement of the HMD 120. In this case, the HMD sensor 410 detects the pitch angle (θu), yaw angle (θv), and roll angle (θw) of the HMD 120 in the uvw field of view coordinate system as the tilt of the HMD 120. The pitch angle (θu) represents the tilt angle of the HMD 120 around the pitch axis in the uvw field of view coordinate system. The yaw angle (θv) represents the tilt angle of the HMD 120 around the yaw axis in the uvw field of view coordinate system. The roll angle (θw) represents the tilt angle of the HMD 120 around the roll axis in the uvw field of view coordinate system.

[0047] The HMD sensor 410 sets, in the HMD 120, a uvw field of view coordinate system for the HMD 120 after the HMD 120 has moved, based on the detected tilt of the HMD 120. The relationship between the HMD 120 and the uvw field of view coordinate system of the HMD 120 is always constant, regardless of the position and tilt of the HMD 120. When the position and tilt of the HMD 120 change, the position and tilt of the uvw field of view coordinate system of the HMD 120 in the real coordinate system change in conjunction with the change in the position and tilt.

[0048] In one aspect, the HMD sensor 410 may identify the position of the HMD 120 in real space as a relative position with respect to the HMD sensor 410 based on the light intensity of the infrared light acquired based on the output from the infrared sensor and the relative positional relationship between multiple points (e.g., the distance between each point, etc.). The processor 210 may determine the origin of the uvw field of view coordinate system of the HMD 120 in real space (actual coordinate system) based on the identified relative position.

[0049] [Virtual Space] The virtual space will be further described with reference to FIG. 4. FIG. 4 is a conceptual diagram illustrating one manner of expressing virtual space 11 according to an embodiment. Virtual space 11 has a spherical structure that covers the entire 360-degree area from center 12. To avoid complicating the explanation, FIG. 4 illustrates only the upper half of the celestial sphere in virtual space 11. Meshes are defined in virtual space 11. The position of each mesh is defined in advance as a coordinate value in an XYZ coordinate system, which is a global coordinate system defined in virtual space 11. Computer 200 associates each partial image that constitutes panoramic image 13 (still image, video, etc.) that can be deployed in virtual space 11 with a corresponding mesh in virtual space 11.

[0050] In a certain aspect, an XYZ coordinate system is defined in virtual space 11 with center 12 as the origin. 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 (horizontal direction) of the XYZ coordinate system is parallel to the x-axis of the real coordinate system, the Y-axis (vertical direction) of the XYZ coordinate system is parallel to the y-axis of the real coordinate system, and the Z-axis (front-to-back direction) of the XYZ coordinate system is parallel to the z-axis of the real coordinate system.

[0051] When the HMD 120 is started up, i.e., in the initial state of the HMD 120, the virtual camera 14 is placed at the center 12 of the virtual space 11. In a certain stage, the processor 210 displays an image captured by the virtual camera 14 on the monitor 130 of the HMD 120. The virtual camera 14 moves in the virtual space 11 in conjunction with the movement of the HMD 120 in the real space. This allows changes in the position and tilt of the HMD 120 in the real space to be reproduced in the virtual space 11 in the same manner.

[0052] A uvw field of view coordinate system is defined for the virtual camera 14, as in the case of the HMD 120. 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 HMD 120 in the real space (actual coordinate system). Therefore, when the tilt of the HMD 120 changes, the tilt of the virtual camera 14 also changes accordingly. The virtual camera 14 can also move in the virtual space 11 in conjunction with the movement in the real space of the user 5 wearing the HMD 120.

[0053] Processor 210 of computer 200 defines field of view 15 in virtual space 11 based on the position and tilt (reference line of sight 16) of virtual camera 14. Field of view 15 corresponds to the area of ​​virtual space 11 that is visible to user 5 wearing HMD 120. In other words, the position of virtual camera 14 can be said to be the viewpoint of user 5 in virtual space 11.

[0054] The line of sight of the user 5 detected by the gaze sensor 140 is the direction in the viewpoint coordinate system when the user 5 views an object. The uvw field of view coordinate system of the HMD 120 is equal to the viewpoint coordinate system when the user 5 views the monitor 130. The uvw field of view coordinate system of the virtual camera 14 is linked to the uvw field of view coordinate system of the HMD 120. Therefore, in a certain aspect, the HMD system 100 can regard the line of sight of the user 5 detected by the gaze sensor 140 as the line of sight of the user 5 in the uvw field of view coordinate system of the virtual camera 14.

[0055] [User's gaze] Determining the line of sight of user 5 will be described with reference to Fig. 5. Fig. 5 is a diagram showing the head of user 5 wearing HMD 120 according to an embodiment from above.

[0056] In one aspect, the gaze sensor 140 detects the gaze of each of the right and left eyes of the user 5. In one aspect, when the user 5 is looking at something close, the gaze sensor 140 detects gazes R1 and L1. In another aspect, when the user 5 is looking at something far away, the gaze sensor 140 detects gazes R2 and L2. In this case, the angle formed by the gazes R2 and L2 with respect to the roll axis w is smaller than the angle formed by the gazes R1 and L1 with respect to the roll axis w. The gaze sensor 140 transmits the detection result to the computer 200.

[0057] When the computer 200 receives the detection values ​​of the lines of sight R1 and L1 from the gaze sensor 140 as the gaze detection result, it identifies the gaze point N1, which is the intersection of the lines of sight R1 and L1, based on the detection values. On the other hand, when the computer 200 receives the detection values ​​of the lines of sight R2 and L2 from the gaze sensor 140, it identifies the intersection of the lines of sight R2 and L2 as the gaze point. The computer 200 identifies the gaze N0 of the user 5 based on the position of the identified gaze point N1. For example, the computer 200 detects the direction of the line passing through the midpoint of the line connecting the right eye R and left eye L of the user 5 and the gaze point N1 as the gaze N0. The gaze N0 is the direction in which the user 5 actually looks with both eyes. The gaze N0 corresponds to the direction in which the user 5 actually looks with respect to the field of view 15.

[0058] In another aspect, the HMD system 100 may include a television broadcast receiving tuner. With this configuration, the HMD system 100 can display television programs in the virtual space 11.

[0059] In yet another aspect, the HMD system 100 may be provided with a communication circuit for connecting to the Internet or a telephone function for connecting to a telephone line.

[0060] [Visibility area] The field of view 15 will be described with reference to Figures 6 and 7. Figure 6 is a diagram illustrating a YZ cross section of the field of view 15 in virtual space 11 as viewed from the X direction. Figure 7 is a diagram illustrating an XZ cross section of the field of view 15 in virtual space 11 as viewed from the Y direction.

[0061] 6, 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 210 defines the range including the polar angle α centered on the reference line of sight 16 in the virtual space as the area 18.

[0062] 7, the field of view 15 in the XZ cross section includes an area 19. The area 19 is defined by the position of the virtual camera 14, the reference line of sight 16, and the XZ cross section of the virtual space 11. The processor 210 defines a range including an azimuth angle β centered on the reference line of sight 16 in the virtual space 11 as the area 19. The polar angles α and β are determined according to the position of the virtual camera 14 and the tilt (orientation) of the virtual camera 14.

[0063] In one aspect, the HMD system 100 provides the user 5 with a field of view in the virtual space 11 by displaying a field of view image 17 on the monitor 130 based on a signal from the computer 200. The field of view image 17 is an image corresponding to a portion of the panoramic image 13 that corresponds to the field of view area 15. When the user 5 moves the HMD 120 worn on his / her head, the virtual camera 14 also moves in conjunction with the movement. As a result, the position of the field of view 15 in the virtual space 11 changes. As a result, the field of view image 17 displayed on the monitor 130 is updated to an image of the panoramic image 13 that is superimposed on the field of view 15 in the direction in which the user 5 is facing in the virtual space 11. The user 5 can view a desired direction in the virtual space 11.

[0064] In this way, the tilt of virtual camera 14 corresponds to the line of sight (reference line of sight 16) of user 5 in virtual space 11, and the position at which virtual camera 14 is placed corresponds to the viewpoint of user 5 in virtual space 11. Therefore, by changing the position or tilt of virtual camera 14, the image displayed on monitor 130 is updated and the field of view of user 5 is moved.

[0065] While wearing the HMD 120, the user 5 can view only the panoramic image 13 unfolded in the virtual space 11 without viewing the real world. Therefore, the HMD system 100 can give the user 5 a highly immersive feeling in the virtual space 11.

[0066] In one aspect, processor 210 may move virtual camera 14 in virtual space 11 in conjunction with movement in real space of user 5 wearing HMD 120. In this case, processor 210 identifies the image area (field of view 15) to be projected onto monitor 130 of HMD 120 based on the position and tilt of virtual camera 14 in virtual space 11.

[0067] In one aspect, 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. An appropriate parallax is set for the two virtual cameras so that user 5 can recognize three-dimensional virtual space 11. In another aspect, virtual camera 14 may be implemented using 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 acquired by the single virtual camera. In this embodiment, the technical concept of the present disclosure is illustrated assuming that virtual camera 14 includes two virtual cameras and is configured such that a roll axis (w) generated by combining the roll axes of the two virtual cameras is adapted to the roll axis (w) of HMD 120.

[0068] [controller] An example of the controller 300 will be described with reference to Fig. 8. Fig. 8 is a diagram illustrating a schematic configuration of the controller 300 according to an embodiment.

[0069] As shown in FIG. 8, in one aspect, the controller 300 may include a right controller 300R and a left controller (not shown). The right controller 300R is operated with the right hand of the user 5. The left controller is operated with the left hand of the user 5. In one aspect, the right controller 300R and the left controller are configured symmetrically as separate devices. Therefore, the user 5 can freely move both the right hand holding the right controller 300R and the left hand holding the left controller. In another aspect, the controller 300 may be an integrated controller that can be operated with both hands. The right controller 300R will be described below.

[0070] The right controller 300R includes a grip 310, a frame 320, and a top surface 330. The grip 310 is configured to be held by the right hand of the user 5. For example, the grip 310 can be held by the palm and three fingers (middle finger, ring finger, and little finger) of the right hand of the user 5.

[0071] Grip 310 includes buttons 340 and 350 and a motion sensor 420. Button 340 is located on the side of grip 310 and is operated by the middle finger of the right hand. Button 350 is located on the front of grip 310 and is operated by the index finger of the right hand. In some aspects, buttons 340 and 350 are configured as trigger-type buttons. Motion sensor 420 is built into the housing of grip 310. If the movements of user 5 can be detected from around user 5 by a camera or other device, grip 310 does not need to include motion sensor 420.

[0072] The frame 320 includes multiple infrared LEDs 360 arranged along its circumference. The infrared LEDs 360 emit infrared light in accordance with the progress of a program that uses the controller 300 while the program is being executed. The infrared light emitted from the infrared LEDs 360 can be used to detect the positions and attitudes (tilt, direction) of the right controller 300R and the left controller. In the example shown in FIG. 8, the infrared LEDs 360 are arranged in two rows, but the number of rows is not limited to that shown in FIG. 8. An arrangement in one row or three or more rows may also be used.

[0073] The top surface 330 includes buttons 370, 380 and an analog stick 390. The buttons 370, 380 are configured as push buttons. The buttons 370, 380 are operated by the thumb of the right hand of the user 5. In a certain situation, the analog stick 390 is operated 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.

[0074] In one aspect, the right controller 300R and the left controller include batteries for powering the infrared LED 360 and other components. The batteries may be, but are not limited to, rechargeable, button-type, or dry cell batteries. In another aspect, the right controller 300R and the left controller may be connected to, for example, a USB interface of the computer 200. In this case, the right controller 300R and the left controller do not require batteries.

[0075] 8, for example, the yaw, roll, and pitch directions are defined for the right hand of user 5. When user 5 extends his 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 yaw direction axis and the roll direction axis is defined as the pitch direction.

[0076] [Server hardware configuration] Server 600 according to this embodiment will be described with reference to Fig. 9. Fig. 9 is a block diagram showing an example of a hardware configuration of server 600 according to an embodiment. Server 600 includes, as main components, a processor 610, a memory 620, a storage 630, an input / output interface 640, and a communication interface 650. Each component is connected to a bus 660.

[0077] The processor 610 executes a series of instructions included in a program stored in the memory 620 or the storage 630 based on a signal provided to the server 600 or based on the establishment of a predetermined condition. In one aspect, the processor 610 is implemented as a CPU, a GPU, an MPU, an FPGA, or other device.

[0078] The memory 620 temporarily stores programs and data. The programs are loaded from, for example, the storage 630. The data includes data input to the server 600 and data generated by the processor 610. In one aspect, the memory 620 is implemented as a RAM or other volatile memory.

[0079] The storage 630 permanently stores programs and data. The storage 630 is realized, for example, as a ROM, a hard disk drive, a flash memory, or other non-volatile storage device. The programs stored in the storage 630 may include a program for providing a virtual space in the HMD system 100, a simulation program, a game program, a user authentication program, and a program for realizing communication with the computer 200. The data stored in the storage 630 may include data and objects for defining the virtual space.

[0080] In another aspect, storage 630 may be realized as a removable storage device such as a memory card. In yet another aspect, a configuration may be used in which programs and data stored in an external storage device are used instead of storage 630 built into server 600. With such a configuration, for example, in a situation where multiple HMD systems 100 are used, such as an amusement facility, it becomes possible to collectively update programs and data.

[0081] The input / output interface 640 communicates signals with input / output devices. In one aspect, the input / output interface 640 is implemented using a terminal such as a USB, DVI, HDMI, etc. The input / output interface 640 is not limited to the above.

[0082] The communication interface 650 is connected to the network 2 and communicates with the computer 200 connected to the network 2. In one aspect, the communication interface 650 is realized as, for example, a wired communication interface such as a LAN, or a wireless communication interface such as Wi-Fi, Bluetooth, NFC, etc. The communication interface 650 is not limited to the above.

[0083] In one aspect, the processor 610 accesses the storage 630, loads one or more programs stored in the storage 630 into the memory 620, and executes a series of instructions included in the programs. The one or more programs may include an operating system for the server 600, an application program for providing a virtual space, game software executable in the virtual space, etc. The processor 610 may send a signal for providing the virtual space to the computer 200 via the input / output interface 640.

[0084] [HMD control device] The control device of the HMD 120 will be described with reference to Fig. 10. In one embodiment, the control device is realized by a computer 200 having a known configuration. Fig. 10 is a block diagram showing the modular configuration of the computer 200 according to one embodiment.

[0085] 10 , the computer 200 includes a control module 510, a rendering module 520, a memory module 530, and a communication control module 540. In one aspect, the control module 510 and the rendering module 520 are implemented by the processor 210. In another aspect, multiple processors 210 may operate as the control module 510 and the rendering module 520. The memory module 530 is implemented by the memory 220 or the storage 230. The communication control module 540 is implemented by the communication interface 250.

[0086] The control module 510 controls the virtual space 11 provided to the user 5. The control module 510 defines the virtual space 11 in the HMD system 100 using virtual space data representing the virtual space 11. The virtual space data is stored in, for example, the memory module 530. The control module 510 may generate the virtual space data or obtain the virtual space data from the server 600 or the like.

[0087] The control module 510 places the object in the virtual space 11 using object data representing the object. The object data is stored in, for example, the memory module 530. The control module 510 may generate the object data or obtain the object data from the server 600 or the like. The object may include, for example, an avatar object representing the user 5, a character object, an operation object such as a virtual hand operated by the controller 300, landscapes including forests, mountains, and the like, cityscapes, animals, and the like that are placed according to the progress of the game story.

[0088] Control module 510 places an avatar object of user 5 of another computer 200 connected via network 2 in virtual space 11. In one aspect, control module 510 places an avatar object of user 5 in virtual space 11. In another aspect, control module 510 places an avatar object that resembles user 5 in virtual space 11 based on an image including user 5. In another aspect, control module 510 places an avatar object that has been selected by user 5 from multiple types of avatar objects (e.g., objects that resemble animals or deformed human objects) in virtual space 11.

[0089] The control module 510 determines the tilt of the HMD 120 based on the output of the HMD sensor 410. In another aspect, the control module 510 determines the tilt of the HMD 120 based on the output of the sensor 190 functioning as a motion sensor. The control module 510 detects the organs (e.g., mouth, eyes, eyebrows) that make up the face of the user 5 from the images of the face of the user 5 generated by the first camera 150 and the second camera 160. The control module 510 detects the movement (shape) of each detected organ.

[0090] The control module 510 detects the line of sight of the user 5 in the virtual space 11 based on a signal from the gaze sensor 140. The control module 510 detects a viewpoint position (coordinate value in the XYZ coordinate system) where the detected line of sight of the user 5 intersects with the celestial sphere of the virtual space 11. More specifically, the control module 510 detects the viewpoint position based on the line of sight of the user 5 defined in the uvw coordinate system and the position and inclination of the virtual camera 14. The control module 510 transmits the detected viewpoint position to the server 600. In another aspect, the control module 510 may be configured to transmit gaze information representing the line of sight of the user 5 to the server 600. In such a case, the server 600 may calculate the viewpoint position based on the gaze information received.

[0091] The control module 510 reflects the movement of the HMD 120 detected by the HMD sensor 410 in the avatar object. For example, the control module 510 detects tilting of the HMD 120 and tilts and positions the avatar object. The control module 510 reflects the detected movement of the facial organs in the face of the avatar object placed in the virtual space 11. The control module 510 receives gaze information of another user 5 from the server 600 and reflects the gaze information in the gaze of the avatar object of the other user 5. In some aspects, the control module 510 reflects the movement of the controller 300 in the avatar object or the operation object. In this case, the controller 300 may include a motion sensor, an acceleration sensor, or multiple light-emitting elements (e.g., infrared LEDs) for detecting the movement of the controller 300. The movement of the controller 300 may also include the movement of the analog stick 390, the movement of the buttons 370 and 380, etc. The control module 510 may then move the avatar object within the virtual space 11 based on, for example, the movement of the analog stick 390 (in other words, the user's operation on the analog stick 390).

[0092] The control module 510 places a control object in the virtual space 11 for receiving operations by the user 5 in the virtual space 11. The user 5 operates the control object to, for example, operate an object placed in the virtual space 11. In one aspect, the control object may include, for example, a hand object that is a virtual hand corresponding to the hand of the user 5. In one aspect, the control module 510 moves the hand object in the virtual space 11 in conjunction with the movement of the hand of the user 5 in the real space based on the output of the motion sensor 420. In one aspect, the control object may correspond to the hand portion of an avatar object.

[0093] The control module 510 detects a collision when each of the objects placed in the virtual space 11 collides with another object. The control module 510 can, for example, detect the timing when the collision area of ​​one object comes into contact with the collision area of ​​another object, and when this detection is made, perform a predetermined process. The control module 510 can detect the timing when two objects are no longer in contact with each other, and when this detection is made, perform a predetermined process. The control module 510 can detect when two objects are in contact with each other. For example, when a control object comes into contact with another object, the control module 510 detects this contact and performs a predetermined process.

[0094] In one aspect, the control module 510 controls image display on the monitor 130 of the HMD 120. For example, the control module 510 places a virtual camera 14 in the virtual space 11. The control module 510 controls the position of the virtual camera 14 in the virtual space 11 and the tilt (orientation) of the virtual camera 14. The control module 510 defines a field of view 15 according to the tilt of the head of the user 5 wearing the HMD 120 and the position of the virtual camera 14. The rendering module 520 generates a field of view image 17 to be displayed on the monitor 130 based on the determined field of view 15. The field of view image 17 generated by the rendering module 520 is output to the HMD 120 by the communication control module 540.

[0095] When the control module 510 detects an utterance made by the user 5 using the microphone 170 from the HMD 120, it identifies the computer 200 to which audio data corresponding to the utterance is to be sent. The audio data is sent to the computer 200 identified by the control module 510. When the control module 510 receives audio data from another user's computer 200 via the network 2, it outputs audio (utterance) corresponding to the audio data from the speaker 180.

[0096] The memory module 530 stores data used by the computer 200 to provide the virtual space 11 to the user 5. In one aspect, the memory module 530 stores space information, object information, and user information.

[0097] The space information includes one or more templates defined to provide the virtual space 11 .

[0098] The object information includes a plurality of panoramic images 13 that constitute the virtual space 11, and object data for placing objects in the virtual space 11. The panoramic images 13 may include still images and moving images. The panoramic images 13 may include images of unreal spaces and images of real spaces. Examples of images of unreal spaces include images generated by computer graphics.

[0099] The user information holds a user ID that identifies the user 5. The user ID may be, for example, an IP (Internet Protocol) address or a MAC (Media Access Control) address set in the computer 200 used by the user. In another aspect, the user ID may be set by the user. The user information includes a program for causing the computer 200 to function as a control device for the HMD system 100. The user information also includes information managed for each service account (in other words, for each user ID).

[0100] The data and programs stored in memory module 530 are input by user 5 of HMD 120. Alternatively, processor 210 downloads programs or data from a computer (e.g., server 600) operated by a business that provides the content, and stores the downloaded programs or data in memory module 530.

[0101] The communication control module 540 can communicate with the server 600 and other information communication devices via the network 2.

[0102] In one aspect, the control module 510 and the rendering module 520 may be realized using, for example, Unity (registered trademark) provided by Unity Technologies, Inc. In another aspect, the control module 510 and the rendering module 520 may be realized as a combination of circuit elements that realize each process.

[0103] Processing in computer 200 is realized by hardware and software executed by processor 210. Such software may be pre-stored on a hard disk or other memory module 530. Software may be stored on a CD-ROM or other computer-readable nonvolatile data recording medium and distributed as a program product. Alternatively, the software may be provided as a downloadable program product by an information provider connected to the Internet or other network. Such software is read from the data recording medium by an optical disk drive or other data reading device, or downloaded from server 600 or other computer via communication control module 540, and then temporarily stored in memory module 530. The software is read from memory module 530 by processor 210 and stored in RAM in the form of an executable program. Processor 210 executes the program.

[0104] [HMD system control structure] The control structure of the HMD set 110 will be described with reference to Fig. 11. Fig. 11 is a sequence chart showing part of the processing executed in the HMD set 110 according to an embodiment.

[0105] As shown in FIG. 11, in step S1110, the processor 210 of the computer 200, acting as the control module 510, identifies virtual space data and defines the virtual space 11.

[0106] In step S1120, processor 210 initializes virtual camera 14. For example, processor 210 places virtual camera 14 at a predefined center 12 in virtual space 11 in a work area of ​​memory, and directs the line of sight of virtual camera 14 in the direction in which user 5 is facing.

[0107] In step S1130, processor 210, functioning as rendering module 520, generates field of view image data for displaying an initial field of view image. The generated field of view image data is output to HMD 120 by communication control module 540.

[0108] In step S1132, the monitor 130 of the HMD 120 displays a field of view image based on the field of view image data received from the computer 200. The user 5 wearing the HMD 120 can recognize the virtual space 11 by viewing the field of view image.

[0109] In step S1134, the HMD sensor 410 detects the position and tilt of the HMD 120 based on the multiple infrared lights emitted from the HMD 120. The detection result is output to the computer 200 as motion detection data.

[0110] In step S1140, the processor 210 identifies the viewing direction of the user 5 wearing the HMD 120 based on the position and tilt included in the motion detection data of the HMD 120.

[0111] In step S1150, the processor 210 executes the application program and creates an object in the virtual space 11 based on the instructions included in the application program. Place the

[0112] In step S1160, controller 300 detects an operation by user 5 and outputs detection data representing the detected operation to computer 200. In another aspect, the operation by user 5 may be detected based on an image from a camera arranged around user 5.

[0113] In step S1170, processor 210 detects an operation of controller 300 by user 5 based on the detection data acquired from controller 300.

[0114] In step S1180, the processor 210 generates field of view image data based on the operation of the controller 300 by the user 5. The generated field of view image data is output to the HMD 120 by the communication control module 540.

[0115] In step S1190, HMD 120 updates the field of view image based on the received field of view image data, and displays the updated field of view image on monitor 130.

[0116] [Avatar Object] Avatar objects according to this embodiment will be described with reference to FIGS. 12(A) and 12(B). Hereinafter, figures will be used to explain avatar objects of each user 5 of HMD sets 110A and 110B. Hereinafter, the user of HMD set 110A will be referred to as user 5A, the user of HMD set 110B as user 5B, the user of HMD set 110C as user 5C, and the user of HMD set 110D as user 5D. A is added to the reference symbol of each component related to HMD set 110A, B is added to the reference symbol of each component related to HMD set 110B, C is added to the reference symbol of each component related to HMD set 110C, and D is added to the reference symbol of each component related to HMD set 110D. For example, HMD 120A is included in HMD set 110A.

[0117] FIG. 12(A) is a schematic diagram illustrating a situation in which each HMD 120 provides a virtual space 11 to a user 5 in a network 2. Computers 200A to 200D provide virtual spaces 11A to 11D to users 5A to 5D, respectively, via HMDs 120A to 120D. In the example illustrated in FIG. 12(A), virtual space 11A and virtual space 11B are configured using the same data. In other words, computer 200A and computer 200B share the same virtual space. In virtual space 11A and virtual space 11B, there exist an avatar object 6A of user 5A and an avatar object 6B of user 5B. Although avatar object 6A in virtual space 11A and avatar object 6B in virtual space 11B are shown wearing HMDs 120, this is for ease of explanation; in reality, these objects do not wear HMDs 120.

[0118] In one aspect, the processor 210A may position a virtual camera 14A that captures a field of view image 17A of the user 5A at the eye position of the avatar object 6A.

[0119] 12(B) is a diagram showing a field of view image 17A of user 5A in FIG. 12(A). Field of view image 17A is an image displayed on monitor 130A of HMD 120A. This field of view image 17A is an image generated by virtual camera 14A. An avatar object 6B of user 5B is displayed in field of view image 17A. Although not specifically shown, avatar object 6A of user 5A is also displayed in the field of view image of user 5B.

[0120] 12(B), user 5A can communicate with user 5B through the virtual space 11A. More specifically, the voice of user 5A acquired by microphone 170A is transmitted to HMD 120B of user 5B via server 600 and output from speaker 180B provided in HMD 120B. The voice of user 5B is transmitted to HMD 120A of user 5A via server 600 and output from speaker 180A provided in HMD 120A.

[0121] The actions of user 5B (the movements of HMD 120B and controller 300B) are reflected in avatar object 6B placed in virtual space 11A by processor 210A. As a result, avatar object 6B, which is operated and moved by user 5B, is visible to user 5A.

[0122] Fig. 13 is a sequence chart showing a part of the processing executed in the HMD system 100 according to the present embodiment. Although the HMD set 110D is not shown in Fig. 13, the HMD set 110D operates in the same manner as the HMD sets 110A, 110B, and 110C. In the following description, A will be added to the reference symbol of each component related to the HMD set 110A, B will be added to the reference symbol of each component related to the HMD set 110B, C will be added to the reference symbol of each component related to the HMD set 110C, and D will be added to the reference symbol of each component related to the HMD set 110D.

[0123] In step S1310A, the processor 210A in the HMD set 110A acquires avatar information for determining the movement of the avatar object 6A in the virtual space 11A. This avatar information includes information about the avatar, such as movement information, face tracking data, and audio data. The movement information includes information indicating temporal changes in the position and tilt of the HMD 120A, information indicating hand movements of the user 5A detected by the motion sensor 420A, and information indicating user operations detected by the controller 300. The face tracking data includes data identifying the position and size of each facial feature of the user 5A. The face tracking data includes data indicating the movement of each organ constituting the user 5A's face and gaze data. The audio data includes data indicating the voice of the user 5A acquired by the microphone 170A of the HMD 120A. The avatar information may include information identifying the avatar object 6A or the user 5A associated with the avatar object 6A, and information identifying the virtual space 11A in which the avatar object 6A exists. Examples of information for identifying the avatar object 6A and the user 5A include a user ID. Examples of information for identifying the virtual space 11A in which the avatar object 6A exists include a room ID. The processor 210A transmits the avatar information acquired as described above to the server 600 via the network 2.

[0124] In step S1310B, similar to the processing in step S1310A, processor 210B in HMD set 110B obtains avatar information for determining the movement of avatar object 6B in virtual space 11B and transmits it to server 600. Similarly, in step S1310C, processor 210C in HMD set 110C obtains avatar information for determining the movement of avatar object 6C in virtual space 11C and transmits it to server 600.

[0125] In step S1320, the server 600 temporarily stores the avatar information received from each of the HMD sets 110A, 110B, and 110C. The server 600 integrates the avatar information of all users (users 5A to 5C in this example) associated with the common virtual space 11 based on the user ID, room ID, and the like included in each piece of avatar information. The server 600 then transmits the integrated avatar information to all users associated with the virtual space 11 at a predetermined timing. This executes a synchronization process. This synchronization process allows the HMD sets 110A, 110B, and 110C to share each other's avatar information at approximately the same time.

[0126] Subsequently, each of the HMD sets 110A to 110C executes the processes of steps S1330A to S1330C based on the avatar information transmitted to each of the HMD sets 110A to 110C from the server 600. The process of step S1330A corresponds to the process of step S1180 in FIG.

[0127] In step S1330A, the processor 210A in the HMD set 110A updates the information on the avatar objects 6B and 6C of the other users 5B and 5C in the virtual space 11A. Specifically, the processor 210A updates the position, orientation, etc. of the avatar object 6B in the virtual space 11A based on the movement information included in the avatar information transmitted from the HMD set 110B. For example, the processor 210A updates the information (position, orientation, etc.) of the avatar object 6B included in the object information stored in the memory module 530. Similarly, the processor 210A updates the information (position, orientation, etc.) of the avatar object 6C in the virtual space 11A based on the movement information included in the avatar information transmitted from the HMD set 110C.

[0128] In step S1330B, processor 210B in HMD set 110B updates information on avatar objects 6A and 6C of users 5A and 5C in virtual space 11B, similar to the processing in step S1330A. Similarly, in step S1330C, processor 210C in HMD set 110C updates information on avatar objects 6A and 6B of users 5A and 5B in virtual space 11C.

[0129] [Module detailed configuration] The modular configuration of computer 200 will be described in detail with reference to Fig. 14. Fig. 14 is a block diagram showing the detailed modular configuration of computer 200 according to an embodiment.

[0130] 14, the control module 510 includes a virtual camera control module 1421, a field of view determination module 1422, a reference gaze identification module 1423, a facial organ detection module 1424, a movement detection module 1425, a virtual space definition module 1426, a virtual object generation module 1427, an operation object control module 1428, and an avatar control module 1429. The rendering module 520 includes a field of view image generation module 1438.

[0131] The virtual camera control module 1421 places the virtual camera 14 in the virtual space 11. The virtual camera control module 1421 controls the placement position and orientation (tilt) of the virtual camera 14 in the virtual space 11. The field of view area determination module 1422 defines the field of view 15 according to the orientation of the head of the user wearing the HMD 120 and the placement position of the virtual camera 14. The field of view image generation module 1438 generates the field of view image 17 to be displayed on the monitor 130 based on the determined field of view 15.

[0132] The reference gaze identification module 1423 identifies the gaze of the user 5 based on a signal from the gaze sensor 140. The face organ detection module 1424 detects organs (e.g., mouth, eyes, eyebrows) that make up the face of the user 5 from the images of the user's 5's face generated by the first camera 150 and the second camera 160. The movement detection module 1425 detects the movement (shape) of each organ detected by the face organ detection module 1424.

[0133] The virtual space definition module 1426 defines the virtual space 11 in the HMD system 100 by generating virtual space data that represents the virtual space 11 .

[0134] The virtual object generation module 1427 generates objects to be placed in the virtual space 11. The objects may include, for example, landscapes including forests, mountains, and the like, animals, and the like that are placed according to the progress of the game story.

[0135] The operation object control module 1428 places an operation object in the virtual space 11 for receiving an operation by the user in the virtual space 11. The user operates the operation object to, for example, operate an object placed in the virtual space 11. In one aspect, the operation object may include, for example, a hand object corresponding to the hand of the user wearing the HMD 120. In another aspect, the operation object may correspond to the hand portion of an avatar object described below.

[0136] Avatar control module 1429 generates data for placing avatar objects 6 of users of other computers 200 connected via network 2 in virtual space 11. In one aspect, avatar control module 1429 generates data for placing avatar objects 6 of user 5 in virtual space 11. In one aspect, avatar control module 1429 generates avatar objects 6 that resemble user 5 based on an image including user 5. In another aspect, avatar control module 1429 generates data for placing avatar objects 6 selected by user 5 from multiple types of avatar objects 6 (for example, objects that resemble animals or deformed human objects) in virtual space 11.

[0137] The avatar control module 1429 reflects the movement of the HMD 120 detected by the HMD sensor 410 in the avatar object 6. For example, the avatar control module 1429 detects tilting of the HMD 120 and generates data for tilting and positioning the avatar object 6. In one aspect, the avatar control module 1429 reflects the movement of the controller 300 in the avatar object 6. In another aspect, the avatar control module 1429 reflects the movement of the facial organs detected by the movement detection module 1425 in the face of the avatar object 6 placed in the virtual space 11. In other words, the avatar control module 1429 reflects the facial movement of the user 5A in the avatar object 6. In this way, the avatar object 6 is controlled (in other words, moved) by the movement detected by the HMD sensor 410, the controller 300, or the movement detection module 1425.

[0138] The rendering module 520 displays the avatar object 6 on the monitor 130 of the HMD 120 in the display format set by the avatar control module 1429 .

[0139] [Server module configuration] The module configuration of server 600 will be described with reference to FIG. 15. FIG. 15 is a block diagram showing the module configuration of server 600 according to an embodiment. As shown in FIG. 15, server 600 includes a control module 1610, a memory module 1630, and a communication control module 1640. In one aspect, control module 1610 is implemented by processor 610. Memory module 1630 is implemented by memory 620 or storage 630. Communication control module 1640 is implemented by communication interface 650.

[0140] The control module 1610 includes a recommendation module 1731 , an attribute setting module 1732 , a behavior history acquisition module 1733 , an access control module 1734 , and a cooperation management module 1741 .

[0141] Memory module 1630 stores data used by computer 200 to provide virtual space 11 to user 5. In one aspect, memory module 1630 stores space information, object information, and user information. The space information, object information, and user information of memory module 1630 may include the space information, object information, and user information of memory module 530 described above, respectively. Therefore, a description thereof will be omitted here.

[0142] The communication control module 1640 receives various types of information and various requests from each HMD set 110. As an example, the information that the communication control module 1640 receives from each HMD set 110 may include space information, object information, user information, and avatar information. The communication control module 1640 transmits various types of information and various requests to each HMD set 110. As an example, the information that the communication control module 1640 transmits to each HMD set 110 may include space information, object information, user information, and avatar information.

[0143] The processing in server 600 is realized by hardware and software executed by processor 610. Such software may be pre-stored on a hard disk or other memory module 1630. The software may be stored on a CD-ROM or other computer-readable non-volatile data recording medium and distributed as a program product. Alternatively, the software may be provided as a downloadable program product by an information provider connected to the Internet or other network. Such software is read from the data recording medium by an optical disk drive or other data reading device, or downloaded from a predetermined computer via communication control module 1640, and then temporarily stored in memory module 1630. The software is read from memory module 1630 by processor 610 and stored in RAM in the form of an executable program. Processor 610 executes the program.

[0144] The above-described module configurations of computer 200 and server 600 are merely examples. Each device of computer 200 and server 600 may include at least some of the modules (in other words, functions) included in the other device. Furthermore, each device such as computer 200 and 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 or the like.

[0145] In addition, in this embodiment, the processor 210 of the computer 200 or the processor 610 of the server 600 will be described as performing the above-mentioned or later-described processes by executing a program stored in the HMD system 100. However, at least a portion of the above-mentioned or later-described processes performed by the processor 210 may be performed by a processor other than the processor 210. Also, at least a portion of the above-mentioned or later-described processes performed by the processor 610 may be performed by a processor other than the processor 610. In other words, the computer that executes the program in this embodiment may be either the computer 200 or the server 600, or may be realized by a combination of multiple devices.

[0146] The HMD system 100 of this embodiment makes recommendations to the user 5 based on the behavioral history. The HMD system 100 of this embodiment provides a metaverse as a virtual space 11 in which users 5 can interact with each other via avatar objects 6. Hereinafter, the virtual space 11 will be referred to as the metaverse. Also, below, the avatar objects 6 placed in the virtual space 11 may be simply referred to as avatars. Note that the avatars can be considered users in the metaverse.

[0147] The metaverse may or may not include locations that are based on (e.g., imitations of) locations (e.g., areas or facilities) that actually exist in the real world (in other words, real space). In this embodiment, the metaverse will be described as including virtual Shibuya, virtual Harajuku, and virtual Akihabara that respectively imitate Shibuya, Harajuku, and Akihabara in the real world.

[0148] [Recommendations about things in the metaverse based on behavioral history within the metaverse] The recommendation module 1731 makes recommendations regarding predetermined things in the metaverse based on the behavioral history of the user 5 in the metaverse. Specifically, for example, the recommendation module 1731 determines things to recommend based on the behavioral history of the user 5 in the metaverse, and transmits information about the recommended things (hereinafter referred to as "recommended information") to the recommendation information presentation module 1721. The recommendation information presentation module 1721 is provided, for example, in the control module 510 of the computer 200 of the user 5. Upon receiving the recommendation information, the recommendation information presentation module 1721 displays the information about the recommended things on the monitor 130.

[0149] The recommendation module 1731 makes predetermined recommendations regarding friendships in the metaverse, for example, based on the behavioral history of the user 5. Specifically, the recommendation module 1731, for example, recommends to the user 5 other users 5 who are likely to be compatible with the user 5 (in other words, avatars of the other users 5) as recommendations regarding friendships. More specifically, the recommendation module 1731 recommends to the user 5 other users 5 who are likely to become friends with the user 5. In this case, the recommendation module 1731, for example, determines other users 5 to recommend to the user 5 (hereinafter referred to as "recommended users") from among multiple users 5, and transmits recommendation information indicating the recommended users to the recommendation information presentation module 1721 of the computer 200 of the user 5. Furthermore, upon receiving the recommendation information, the recommendation information presentation module 1721 displays a display related to the recommendation of the recommended users to the user 5 on the monitor 130. The display related to the recommendation may include, for example, a display of the username of the recommended user, a display related to accepting contact with the recommended user, a display indicating the location of the recommended user, etc. In other words, while the display related to the recommendation is displayed, an operation by user 5 to contact the recommended user (for example, an operation by controller 300, etc.) may be accepted. Note that here, a display related to accepting a contact with the recommended user includes, for example, a display related to accepting a request to register the recommended user as a friend. In other words, while the display related to the recommendation is displayed, an operation to request registration as a friend of the recommended user may be accepted.

[0150] Furthermore, as a recommendation regarding friendships, the recommendation module 1731 may recommend to the user 5, for example, a group that is likely to be compatible with the user 5 (in other words, a group that is likely to include other users 5 who are compatible with the user 5), rather than recommending another specific user 5 to the user 5. In this case, the recommendation module 1731 determines a group to recommend to the user 5, for example, based on the user 5's behavioral history, and transmits recommendation information indicating the recommended group to the recommendation information presentation module 1721 of the user 5's computer 200. Furthermore, upon receiving the recommendation information, the recommendation information presentation module 1721 displays a display related to the recommendation of the group to the user 5 on the monitor 130. The display related to the recommendation may include, for example, a display of the group name of the recommended group, a display related to accepting contact for the group (e.g., user 5 representing the group), a display showing the location of the group's base, etc. Note that here, a display related to accepting contact for the group includes, for example, a display related to accepting an application to join the group, etc.

[0151] Furthermore, the recommendation module 1731 makes a predetermined recommendation regarding content in the metaverse based on, for example, the behavioral history of the user 5. Specifically, for example, the recommendation module 1731 may recommend a predetermined location (for example, a region or facility) in the metaverse to the user 5 as a content-related recommendation. For example, the recommendation module 1731 may also recommend a predetermined service in the metaverse to the user 5 as a content-related recommendation.

[0152] The behavioral history of each user 5 in the metaverse is stored in the virtual space history storage unit 1751 provided in the memory module 1630 of the server 600. Note that the behavioral history in the metaverse may be stored in the virtual space history storage unit 1751 by the control module 1610 (in other words, the virtual space history acquisition means) each time the user 5 performs various actions in the metaverse. An example of the behavioral history in the metaverse stored in the virtual space history storage unit 1751 is shown below.

[0153] The behavioral history may be related to, for example, the outfit (in other words, appearance) of the avatar. Specifically, the behavioral history may include, for example, information regarding the number of times the avatar's outfit (for example, clothing accessories (e.g., clothes, hats, accessories, footwear, etc.) or hairstyle, etc.) has been changed. The behavioral history may also include, for example, information regarding the number of clothing accessories (e.g., total number or number of types, etc.) that the avatar has acquired (in other words, possesses).

[0154] The behavioral history may also be related to communication between users. Specifically, the behavioral history may include, for example, information about the person with whom a conversation was held, or information about the number or frequency of conversations with a specific person. The behavioral history may also include information about the person with whom a specific content was used together, or information about the number or frequency of content used together with a specific person. Here, using content together may mean, for example, playing a specific game together in the metaverse (e.g., playing together or against each other), participating in a specific event together in the metaverse, or being at a specific location in the metaverse at the same time. In other words, the behavioral history may include information based on communication between users in the metaverse (e.g., information about conversations, sharing content together, etc.).

[0155] The behavioral history may also include information regarding the distance traveled within the metaverse. The behavioral history may also include information regarding the number of times or frequency that each user has accessed (in other words, logged in to) the metaverse. The behavioral history may also include information regarding places visited within the metaverse, information regarding the time of visiting a specific place, etc. In other words, the behavioral history may include information based on movement within the metaverse (for example, information regarding the distance traveled, places visited by movement, etc.).

[0156] The behavior history in the metaverse can also be said to be information about operations performed by the user 5. Specifically, the behavior history in the metaverse can also be said to be information about operations performed by the user 5 on the avatar object 6.

[0157] Recommendations to user 5 regarding predetermined things in the metaverse based on their behavioral history in the metaverse may be made, for example, as follows. That is, attributes (hereinafter referred to as "virtual space attributes") may be set for each user 5 based on their behavioral history in the metaverse, and recommendation module 1731 may make recommendations based on the virtual space attributes. In this case, attribute setting module 1732 may set the virtual space attributes of user 5 based on, for example, the behavioral history of user 5 in the metaverse, and store the virtual space attributes of user 5 in user attribute storage unit 1752 included in memory module 1630. Furthermore, recommendation module 1731 may make recommendations to user 5 based on the virtual space attributes set for user 5, for example.

[0158] It should be noted that a plurality of attributes within the virtual space may be assigned to one user 5, or only one attribute within the virtual space may be assigned to one user 5.

[0159] The attributes in the virtual space indicate the characteristics and properties of the user 5 in the metaverse. Here, as an example, a case will be described in which attributes in the virtual space such as "active," "otaku," "fashionable," "gourmet," and "inactive" are set for the user 5, but the types of attributes in the virtual space are not limited to these.

[0160] 16, the attribute setting module 1732 may determine that user 5 is "active" and assign an in-virtual space attribute of "active" to user 5 based on, for example, whether the user's behavior history indicates that the distance traveled in the metaverse is equal to or greater than a predetermined threshold (in other words, a predetermined level), whether the number or frequency of logins is equal to or greater than a predetermined threshold, whether the number or frequency of conversations with other users in the metaverse is equal to or greater than a predetermined threshold, whether the number of users with whom user 5 conversed in the metaverse, the number of users with whom user 5 used predetermined content in the metaverse, the number of users registered as friends, etc. are equal to or greater than a predetermined threshold. Note that the conversations may be exchanges of text messages, voice calls, etc.

[0161] Furthermore, the attribute setting module 1732 may determine that user 5 is an "otaku" and assign the virtual space attribute of "otaku" to user 5, for example, based on the fact that the distance traveled within the metaverse, as indicated by the user's behavioral history, is less than a predetermined threshold, the people with whom the user converses within the metaverse are almost fixed, or the number or frequency of use of two-dimensional content such as anime, manga, and games is greater than a predetermined threshold.

[0162] In addition, the attribute setting module 1732 may determine that user 5 is "fashionable" and assign the virtual space attribute of "fashionable" to user 5, for example, based on whether the number or frequency of outfit changes in the metaverse, as indicated by user 5's behavioral history, is above a predetermined threshold, or the number of clothing items acquired (e.g., total number or number of types) is above a predetermined threshold.

[0163] In addition, the attribute setting module 1732 may determine that user 5 is a "gourmet" based on, for example, whether the number or frequency of use of cooking-related content in the metaverse, as indicated by user 5's behavioral history, is above a predetermined threshold, and assign the virtual space attribute of "gourmet" to user 5.

[0164] In addition, the attribute setting module 1732 may determine that user 5 is "inactive" based on, for example, whether the distance traveled within the metaverse as indicated by user 5's behavioral history is less than a predetermined threshold, or whether the number or frequency of logins is less than a predetermined threshold, and assign an in-virtual space attribute of "inactive" to user 5.

[0165] In addition, when setting an attribute based on some distance, number, frequency, etc. (in other words, when setting an attribute based on whether a certain parameter is above or below a predetermined level), the distance, number, frequency, etc. may be, for example, the total distance, total number, frequency, etc. within a predetermined period, or the average distance, average number, average frequency, etc. within the predetermined period. Furthermore, the predetermined period may be the period from when user 5 first accesses the metaverse to the time the attribute is determined, or may be within several days, within several months, or the period until the number of logins reaches a predetermined number. Furthermore, for example, setting a predetermined attribute based on a certain parameter being above a predetermined threshold is not particularly limited in terms of internal processing, as long as the predetermined attribute is assigned when the certain parameter is above the predetermined threshold.

[0166] Note that the condition for assigning a predetermined attribute to the user 5 may be one condition or multiple conditions. When multiple conditions are assigned, the attribute of the user 5 may be determined based on one of the multiple conditions being satisfied, or may be determined based on multiple or all of the multiple conditions being satisfied. In this embodiment, a value for each attribute in the virtual space (hereinafter referred to as an "attribute value") is set for each condition, such as "a certain parameter being equal to or greater than a predetermined threshold value." When a certain condition is satisfied, the attribute setting module 1732 assigns the attribute value set for that condition to the user. The attribute setting module 1732 then sets the attribute in the virtual space based on the cumulative value of the attribute values. In other words, an attribute in the virtual space is set for each action that user 5 can perform in the metaverse (in other words, each condition that can be achieved), and the attribute setting module 1732 assigns user 5 the attribute value of the attribute in the virtual space set for the action performed by user 5. When the cumulative value of the attribute value of a certain attribute in the virtual space reaches a predetermined value, the certain attribute in the virtual space may be set for user 5. Specifically, for example, when user 5's travel distance in the metaverse exceeds a predetermined threshold or when user 5's login frequency exceeds a predetermined threshold, the cumulative value of the attribute value of the attribute in the virtual space "active" increases. Furthermore, when user 5's travel distance in the metaverse exceeds a predetermined threshold, the cumulative value of the attribute value of the attribute in the virtual space "otaku" decreases. Furthermore, for example, when user 5 changes his or her outfit frequently in the metaverse exceeds a predetermined threshold, the cumulative value of the attribute value of the attribute in the virtual space "fashionable" increases. Then, for example, when the cumulative value of the attribute value of the attribute "active" in the virtual space reaches a predetermined value, the attribute setting module 1732 sets the attribute "active" in the virtual space for the user 5.

[0167] Furthermore, each piece of content in the metaverse has one or more virtual space attributes, and the attribute setting module 1732 may assign to the user 5 an attribute value of the virtual space attribute of the content used (in other words, accessed) by the user 5, depending on the virtual space attribute of the content used by the user 5. Then, when the attribute value of a specific virtual space attribute (specifically, the cumulative value of the attribute value) reaches a threshold, the attribute setting module 1732 may set the specific virtual space attribute to the user 5. In such a case, too, an attribute is set in the virtual space for each action that the user 5 may perform in the metaverse (for example, use of content to which a virtual space attribute is set), and the attribute setting module 1732 may assign to the user 5 an attribute value related to the virtual space attribute set for the action performed by the user 5. In other words, some content in the metaverse has an attribute set, and the attribute setting module 1732 may set a certain attribute to the user 5 based on the user 5's use of content to which a certain attribute is set. The attribute setting module 1732 may assign to the user 5 the attribute value of the virtual space attribute set for the content used each time the user 5 uses the content, or may assign to the user 5 the attribute value of the specific virtual space attribute when the number of times or frequency of use of the content to which a specific virtual space attribute is set is equal to or exceeds a predetermined threshold. The setting information for the virtual space attribute related to the content in the metaverse may be stored in advance in the memory module 1630 of the server 600, for example.

[0168] For example, there may be a plurality of locations in the metaverse that are assigned in-virtual space attributes, and the attribute setting module 1732 may assign to the user 5 the attribute values ​​of the in-virtual space attributes that are assigned to the locations that the user 5 has visited (in other words, used). In other words, the attribute setting module 1732 may assign to the user 5 the attribute values ​​according to the locations that the user 5 has visited. Specifically, for example, there may be a plurality of areas in the metaverse that are assigned in-virtual space attributes (specifically, for example, "virtual Shibuya" and "virtual Harajuku" that are assigned the in-virtual space attribute of "stylish," and "virtual Akihabara" that is assigned the in-virtual space attribute of "otaku"), and the attribute setting module 1732 may assign to the user 5 the attribute value of the in-virtual space attribute that is assigned to the area based on the user 5 having visited a certain area in the metaverse. Furthermore, for example, there may be multiple facilities in the metaverse that are assigned virtual space attributes (specifically, for example, a commercial facility that is assigned the virtual space attribute of "stylish," and a game center and a mahjong parlor that are assigned the virtual space attribute of "otaku"), and the attribute setting module 1732 may assign to user 5 the attribute value of the virtual space attribute assigned to a facility based on user 5's visit to that facility in the metaverse.

[0169] Furthermore, for example, a plurality of entertainments (e.g., games) each having an in-virtual space attribute attached thereto may be provided in the metaverse, and the attribute setting module 1732 may assign to the user 5 an attribute value of the entertainment used by the user 5. For example, the metaverse may provide entertainment such as mahjong, which has an in-virtual space attribute of "otaku," karaoke, which has an in-virtual space attribute of "active," and audiovisual content, each having an in-virtual space attribute attached thereto, and the attribute setting module 1732 may assign to the user 5 an attribute value of the in-virtual space attribute attached to the entertainment based on the user 5 having used (in other words, experienced) a certain entertainment in the metaverse.

[0170] Furthermore, for example, multiple events (e.g., music concerts, festivals, sporting events, etc.) with virtual space attributes are prepared within the metaverse, and the attribute setting module 1732 may assign to user 5 the attribute value of the virtual space attribute attached to an event based on user 5's participation (in other words, use) in that event.

[0171] For example, the recommendation module 1731 recommends to a user 5 other users 5 (in other words, avatars of the other users 5) who have been set with an in-virtual space attribute corresponding to the in-virtual space attribute set for the user 5. Specifically, for example, the recommendation module 1731 may perform the following process. That is, for example, as shown in FIG. 16 , the recommendation module 1731 may recommend other users who have been set with an in-virtual space attribute of “active” or “stylish” to a user who has been set with an in-virtual space attribute of “active.” Also, for example, the recommendation module 1731 may recommend other users who have been set with an in-virtual space attribute of “otaku” or “inactive” to a user who has been set with an in-virtual space attribute of “stylish.” Also, for example, the recommendation module 1731 may recommend other users who have been set with an in-virtual space attribute of “stylish” or “active” to a user who has been set with an in-virtual space attribute of “stylish.” Furthermore, for example, the recommendation module 1731 may recommend other users who have set the virtual space attribute "gourmet" to a user who has set the virtual space attribute "gourmet." Furthermore, for example, the recommendation module 1731 may recommend other users who have set the virtual space attribute "inactive" or "otaku" to a user who has set the virtual space attribute "inactive."

[0172] Furthermore, the recommendation module 1731 may recommend to a user 5, for example, content according to the in-virtual-space attribute set for the user. Specifically, for example, content in the metaverse may be prepared with a recommendation target attribute set, indicating which attribute the content is recommended to for the user 5, and the recommendation module 1731 may recommend to the user 5 content with a recommendation target attribute set corresponding to the in-virtual-space attribute set for the user 5. That is, for example, content in the metaverse may include content with recommendation target attributes such as "active," "otaku," "fashionable," "gourmet," and "inactive" set as recommendation target attributes, and the content may be recommended to a user 5 with a virtual-space attribute set that matches the recommendation target attribute set for the content. More specifically, for example, the recommendation module 1731 may recommend content with a recommendation target attribute set as "active" to a user with a virtual-space attribute set as "active." Note that setting information on the recommendation target attributes for content in the metaverse may be stored in advance in, for example, the memory module 1630 of the server 600. Furthermore, attributes within the virtual space set for each piece of content may be used as recommendation target attributes.

[0173] Furthermore, the recommendation module 1731 may, for example, recommend to the user 5 other users 5 who have a specific relationship with the user 5 in the metaverse and things in the metaverse that have a specific association. Here, the other users 5 who have a specific relationship with the user 5 may, for example, be other users 5 who have interactions with the user 5. The other users 5 who have interactions with the user 5 may, for example, be other users 5 who have had conversations with the user 5, other users 5 who have used content together, or other users 5 who are friends of the user 5. The other users 5 who have a specific relationship may, for example, be other users 5 who have interacted with the user 5 many times (for example, the total number of interactions is equal to or greater than a predetermined threshold, or the number of interactions within a predetermined period is equal to or greater than a predetermined threshold (i.e., the frequency of interactions is high)). The other users 5 who have a high frequency of interactions may, for example, be other users 5 with whom the user 5 has many conversations or other users 5 with whom the user 5 frequently uses content together. Furthermore, other users 5 having a specific relationship with user 5 may be, for example, other users 5 who have a common (e.g., the same) virtual space attribute or a real-world attribute, which will be described later, with user 5. Furthermore, things in the metaverse that have a specific relationship with other users 5 may be, for example, content in the metaverse (e.g., a frequently visited facility or a frequently used game) that is frequently used by the other user 5 (e.g., the total number of uses is greater than or equal to a predetermined threshold or the number of uses within a predetermined period is greater than or equal to a predetermined threshold (i.e., high frequency of use)), or users 5 (e.g., friends, etc.) who interact with the other user 5. In other words, the recommendation module 1731 may recommend to user 5 favorite content, etc., of the other user 5. The frequently used content of the other user 5 may be determined based on the behavioral history of the other user 5 in the metaverse (e.g., from the number of uses of each content indicated by the behavioral history). Furthermore, regarding the number of interactions or the number of uses, a high number may mean, for example, that the number of interactions or the number of uses is relatively high among that user 5, or that the number of interactions or the number of uses is higher than a predetermined number.In other words, when it is said to be above a predetermined threshold, the predetermined threshold may be fixed or may vary (for example, may vary depending on the number of interactions with each of multiple other users 5, the number of times each of multiple contents is used, etc.).

[0174] The attributes within the virtual space may be more specific. For example, the attributes within the virtual space may classify users 5 according to their hobbies and preferences. The attribute setting module 1732 may also set the attributes within the virtual space of users 5 according to their usage history of content within the metaverse. For example, if each user can set background music within the metaverse, the attribute setting module 1732 may assign attributes such as "classical music lover," "rock music lover," "pop music lover," and "anime song lover" to users 5 according to the type of background music they frequently use. The attribute setting module 1732 may also assign an attribute of "movie lover" to users 5 who frequently watch movies within the metaverse, or an attribute of "mahjong lover" to users 5 who frequently play mahjong within the metaverse. The attribute setting module 1732 may also assign an attribute of "visited virtual Shibuya" to users 5 who have visited virtual Shibuya within the metaverse. Furthermore, the attribute setting module 1732 may assign an attribute of "fan of a particular idol" to a user 5 who frequently uses content of the particular idol in the metaverse. Furthermore, the attribute setting module 1732 may assign an attribute in the virtual space such as "street style," "fashion style," "natural style," or "rock style" to the user 5, for example, depending on the type of outfit that the user 5 sets for their avatar in the metaverse (for example, the number of times or frequency that a particular type of outfit is worn).

[0175] In this embodiment, the attribute setting module 1732 sets attributes in the virtual space for user 5 based on the behavioral history of user 5 in the metaverse, and the recommendation module 1731 makes recommendations regarding specific things in the metaverse based on the attributes in the virtual space. However, the recommendation module 1731 may also make recommendations based on the behavioral history without setting attributes in the virtual space by the attribute setting module 1732.

[0176] The recommendation module 1731 may, for example, recommend other users who have the same behavioral history among multiple behavioral histories. Furthermore, the recommendation module 1731 may, for example, recommend to the user 5 other users who have a common content usage history. For example, when the behavioral history of the user 5 and the behavioral history of the other user 5 indicate that multiple pieces of content that the user 5 and the other user 5 have used overlap, the recommendation module 1731 may recommend the other user 5 to the user 5. In other words, the recommendation module 1731 may recommend to the user 5 other users 5 who have characteristics in common with the user 5, such as other users 5 who have corresponding attributes or other users 5 who have common behavioral histories.

[0177] [Recommendations for things in the metaverse based on real-world behavioral history] Instead of or in addition to making recommendations about specific things in the metaverse based on user 5's behavioral history within the metaverse, recommendation module 1731 may make recommendations about specific things in the metaverse based on user 5's behavioral history in the real world (in other words, outside the metaverse).

[0178] Recommendations to user 5 regarding predetermined things in the Metaverse based on their behavioral history in the real world may be performed, for example, as follows. That is, attributes (hereinafter referred to as "real-world attributes") may be set for each user 5 based on their behavioral history in the real world, and recommendation module 1731 may make recommendations based on the real-world attributes. In this case, attribute setting module 1732, for example, sets real-world attributes for user 5 based on the user 5's behavioral history in the real world, and stores the real-world attributes of user 5 in user attribute storage unit 1752 included in memory module 1630. Furthermore, recommendation module 1731 makes recommendations to user 5, for example, according to the real-world attributes set for user 5.

[0179] It should be noted that a single user 5 may be assigned multiple real-world attributes, or a single user 5 may be assigned only one real-world attribute.

[0180] Real-world attributes indicate the characteristics and properties of user 5 in the real world. Here, as an example, a case will be described in which real-world attributes such as "active," "otaku," "fashionable," "gourmet," and "inactive" are set for user 5, but the types of real-world attributes are not limited to these. Furthermore, real-world attributes may also be more granular, as in the case of virtual space attributes. Note that the types of attributes included in virtual space attributes and real-world attributes may differ. In other words, virtual space attributes and real-world attributes may be classified differently.

[0181] For example, as shown in FIG. 16, the attribute setting module 1732 may determine that user 5 is "active" and assign the real-world attribute of "active" to user 5 based on the following: the distance traveled in the real world is greater than or equal to a predetermined threshold, the calories burned in the real world are greater than or equal to a predetermined threshold, the number or frequency of exercise in the real world is greater than or equal to a predetermined threshold, the number or frequency of posts on a social networking service (SNS) is greater than or equal to a predetermined threshold, the number or frequency of conversations with other users in a predetermined application outside the metaverse is greater than or equal to a predetermined threshold, or the number of users with whom user 5 has conversations in a predetermined application outside the metaverse is greater than or equal to a predetermined threshold, etc.

[0182] In addition, the attribute setting module 1732 may determine that user 5 is an "otaku" based on, for example, the fact that the distance traveled in the real world as indicated by the user 5's behavioral history is less than a predetermined threshold, and assign the real-world attribute of "otaku" to user 5.

[0183] Furthermore, the attribute setting module 1732 may determine that the user 5 is “stylish” based on, for example, whether the number or frequency of selfie photos posted on the SNS is equal to or exceeds a predetermined threshold, or whether the number or frequency of reactions (so-called “likes” or the like) to fashion-related posts on the SNS is equal to or exceeds a predetermined threshold, as indicated by the user 5's behavioral history, and may assign the real-world attribute of “stylish” to the user 5. Note that the attribute setting module 1732 may set the real-world attribute of the user 5 to “street style,” “fashion style,” “natural style,” “rock style,” or the like, depending on the user's tendency in the types of outfits they wear in the real world (for example, the number or frequency of wearing a particular type of outfit), which is detected by, for example, performing image recognition on photos or the like that feature the user 5 in the user 5's posts or the like on the SNS.

[0184] Furthermore, the attribute setting module 1732 may determine that user 5 is a "gourmet" and assign the real-world attribute of "gourmet" to user 5, for example, based on whether the number or frequency of posts about eating on SNS shown in user 5's behavioral history is above a predetermined threshold, whether the number or frequency of reactions to posts about eating and drinking on SNS is above a predetermined threshold, or whether the number or frequency of visits to high-end restaurants is above a predetermined threshold.

[0185] Furthermore, the attribute setting module 1732 may determine that user 5 is “inactive” and assign the real-world attribute of “inactive” to user 5, for example, based on the fact that the distance traveled in the real world indicated by the user 5’s behavioral history is less than a predetermined threshold, the calories burned in the real world is less than a predetermined threshold, or the number or frequency of exercise in the real world is less than a predetermined threshold.

[0186] When setting the real-world attributes of user 5 based on the above-mentioned conditions, the attribute setting module 1732 may assign values ​​for each real-world attribute (hereinafter referred to as "attribute values") to user 5 according to the actions taken by user 5, and set the real-world attributes based on the accumulated values, as in the case of attributes in virtual space.

[0187] Furthermore, real-world attributes may be set in advance for real-world things (e.g., places, services, objects, etc.), and the attribute setting module 1732 may assign to the user 5 an attribute value of the real-world attribute of the place, service, or object used by the user 5, depending on the real-world attributes of the place, service, or object used by the user 5. Then, when the attribute value of a specific real-world attribute (specifically, the cumulative value of the attribute value) reaches a threshold, the specific real-world attribute may be set for the user 5. In other words, some real-world things have attributes set, and the attribute setting module 1732 may set a certain attribute for the user 5 based on the user 5's use of a real-world thing for which a certain attribute has been set. Note that setting information for real-world attributes related to real-world things may be stored in advance in, for example, the memory module 1630 of the server 600.

[0188] For example, a real-world attribute may be set for a specific location in the real world, and the attribute setting module 1732 may assign to the user 5 the attribute value of the real-world attribute assigned to a location visited by the user 5. Specifically, for example, there are a plurality of areas in the real world to which real-world attributes are set (specifically, for example, "Shibuya" and "Harajuku" to which the real-world attribute of "stylish" is assigned, and "Akihabara" to which the real-world attribute of "otaku" is assigned), and the attribute setting module 1732 may assign to the user 5 the attribute value of the real-world attribute set for a certain area in the real world, based on the user 5 having visited that area. Furthermore, for example, the real world may include a plurality of facilities with real-world attributes set (specifically, for example, a commercial facility with the real-world attribute "stylish," a game center and mahjong parlor with the real-world attribute "otaku," and a restaurant with the real-world attribute "gourmet"), and the attribute setting module 1732 may assign to user 5 the attribute value of the real-world attribute set for that facility based on user 5's visit to that facility in the real world.

[0189] Also, for example, real-world attributes are set for specific events in the real world (e.g., music concerts, festivals, sporting events, etc.), and the attribute setting module 1732 may assign user 5 an attribute value of the real-world attribute of that event based on user 5's participation in an event in the real world.

[0190] For example, the recommendation module 1731 recommends to a user 5 other users 5 (in other words, avatars of other users 5) who have set attributes in the virtual space that correspond to the attributes in the real world that have been set for the user 5. Specifically, for example, the recommendation module 1731 may perform the following process. That is, for example, as shown in FIG. 16 , the recommendation module 1731 may recommend other users 5 who have set attributes in the virtual space of “active” or “fashionable” to a user 5 who has set an attribute in the real world of “active.” Also, for example, the recommendation module 1731 may recommend other users 5 who have set attributes in the virtual space of “fashionable” or “inactive” to a user 5 who has set an attribute in the real world of “fashionable.” Also, for example, the recommendation module 1731 may recommend other users 5 who have set attributes in the virtual space of “fashionable” or “active” to a user 5 who has set an attribute in the real world of “fashionable.” Furthermore, for example, the recommendation module 1731 may recommend other users 5 to whom the attribute in the virtual space is set as "gourmet" to a user 5 to whom the attribute in the real world is set as "gourmet." Furthermore, for example, the recommendation module 1731 may recommend other users 5 to whom the attribute in the virtual space is set as "inactive" or "otaku" to a user 5 to whom the attribute in the real world is set as "inactive."

[0191] Furthermore, recommendation module 1731 may recommend to user 5, for example, content in the metaverse that corresponds to a real-world attribute set for user 5. Specifically, for example, content in the metaverse may have a recommendation target attribute set, indicating which attribute user 5 the content is recommended to, and recommendation module 1731 may recommend to user 5 content that has a recommendation target attribute set corresponding to the real-world attribute set for user 5. That is, for example, content in the metaverse may have recommendation target attributes such as "active," "otaku," "stylish," "gourmet," and "inactive," and the content may be recommended to user 5 that has a real-world attribute set that matches the recommendation target attribute set for the content. More specifically, for example, recommendation module 1731 may recommend content that has a recommendation target attribute of "active" set for a user that has a real-world attribute set of "active."

[0192] In the present embodiment, the attribute setting module 1732 sets real-world attributes for the user 5 based on the behavioral history of the user 5 in the real world, and the recommendation module 1731 recommends predetermined things in the metaverse to the user 5 based on the real-world attributes. However, the recommendation module 1731 may make recommendations based on the behavioral history without setting real-world attributes by the attribute setting module 1732. Specifically, for example, if a place corresponding to a predetermined place in the real world exists in the metaverse (for example, a specific facility in virtual Shibuya that imitates a specific facility in real Shibuya), and the behavioral history of the user 5 in the real world indicates that the user 5 frequently visits the predetermined place (in other words, if the behavioral history itself indicates an attribute of the user 5 that the user frequently visits the predetermined place; in other words, if the predetermined place is frequently used), the recommendation module 1731 may recommend to the user 5 a place in the metaverse that corresponds to the predetermined place.

[0193] Furthermore, recommendations regarding predetermined things in the metaverse based on the behavioral history of user 5 in the real world may be as follows: That is, for example, the behavioral history may be a history of searches by user 5 using user device 700 (for example, searches using a predetermined web browser, etc.) described below, or a history of purchases of products, etc. (for example, purchase history on a predetermined e-commerce site, etc.). Then, for example, when the behavioral history of user 5 in the real world indicates, for example, a search for music concerts or a purchase of a musical instrument on a predetermined e-commerce site, the recommendation module 1731 may recommend a music concert in the metaverse.

[0194] The behavioral history may also be a history of credit card usage, etc. Then, for example, when the history of credit card usage as the behavioral history of user 5 in the real world indicates that user 5 has purchased home appliances, the recommendation module 1731 may recommend a home appliance retail store in the metaverse.

[0195] [Recommendations for real-world objects based on behavioral history in the metaverse] Instead of or in addition to recommendations regarding specific things in the metaverse based on user 5's behavioral history in the metaverse or recommendations regarding specific things in the metaverse based on user 5's behavioral history in the real world, recommendation module 1731 may make recommendations regarding specific things in the real world based on user 5's behavioral history in the metaverse.

[0196] Recommending predetermined things in the real world to users 5 based on their behavioral history in the metaverse may be performed, for example, as follows: That is, attributes in the virtual space are set for each user 5 by the attribute setting module 1732, and the recommendation module 1731 may make recommendations regarding predetermined things in the real world based on the attributes in the virtual space.

[0197] The recommendation module 1731 recommends to the user 5, for example, real-world things (e.g., places, services, objects, etc.) that correspond to the virtual space attributes set for the user 5. Specifically, for example, among real-world things, things are prepared with recommendation target attributes set that indicate which attribute the thing is recommended to, and the recommendation module 1731 may recommend to the user 5 things with recommendation target attributes set that correspond to the virtual space attributes set for the user 5. That is, for example, among real-world things, there are things with recommendation target attributes such as "active," "otaku," "fashionable," "gourmet," and "inactive," and the thing may be recommended to the user 5 with a virtual space attribute that matches the recommendation target attribute set for the thing. More specifically, for example, the recommendation module 1731 may recommend real-world services, facilities, etc. with a recommendation target attribute of "active" to a user with a virtual space attribute set to "active." Note that information indicating the recommendation target attributes of each real-world object may be stored in advance in the memory module 1630 of the server 600, for example.

[0198] Furthermore, the metaverse may contain a plurality of pieces of content that are associated with (in other words, related to) real-world objects, and the recommendation module 1731 may recommend an object associated with a particular piece of content based on user 5's access to the particular piece of content associated with the real-world object. Information indicating the correspondence between real-world objects and content in the metaverse may be stored in advance in, for example, the memory module 1630 of the server 600. Here, the content associated with the real-world object may be, for example, a place in the metaverse that is based on (e.g., a simulation of) a place (e.g., a region or facility) that actually exists in the real world. Specifically, for example, if a virtual facility based on a particular real-world facility exists in a virtual town based on a particular real-world town, the recommendation module 1731 may recommend the particular facility to user 5 based on user 5's visit to the virtual facility in the metaverse.

[0199] Furthermore, content associated with things in the real world may be, for example, an event in the metaverse that is similar to an event that actually exists in the real world. Specifically, for example, if a music concert similar to a specific music concert held in the real world (for example, a concert with a similar musical genre or a concert featuring the same artist) is held in the metaverse, recommendation module 1731 may recommend the specific music concert held in the real world to user 5 based on user 5's participation in the music concert in the metaverse (for example, actual participation or reservation for participation, etc.).

[0200] Also, for example, if a service corresponding to a particular real-world service is available within the metaverse, recommendation module 1731 may recommend the particular real-world service to user 5 based on user 5's use of the service within the metaverse.

[0201] Note that real-world entities and content in the metaverse may or may not correspond one-to-one. In other words, multiple contents in the metaverse may correspond to one real-world entity, or one content in the metaverse may correspond to multiple real-world entities. For example, there may be multiple casinos in the metaverse, and the multiple casinos may correspond to one casino in the real world. Also, there may be one casino in the metaverse, and the single casino may correspond to multiple casinos in the real world.

[0202] Note that recommendations regarding specific real-world objects based on the behavioral history of user 5 in the metaverse may be as follows. That is, for example, the behavioral history may be a history of shopping in the metaverse. Then, for example, when the behavioral history of user 5 in the metaverse indicates the purchase of a specific product that can be used in the metaverse (e.g., clothing worn by an avatar or furniture for a house in the metaverse), recommendation module 1731 may recommend real-world products related to the specific product. More specifically, for example, recommendation module 1731 may change real-world products displayed as products recommended to user 5 on the website of a real-world store associated with a specific store, depending on the product that user 5 purchased at the specific store in the metaverse.

[0203] Furthermore, the recommendation module 1731 may recommend an action in the real world (for example, a recommended action) based on the behavioral history of the user 5 in the metaverse. Specifically, the recommendation module 1731 may recommend exercising in the real world based on the fact that the user 5 has moved little in the metaverse (for example, the distance moved is less than a threshold). The recommendation module 1731 may also recommend reviewing lifestyle habits in the real world based on the behavioral history of the user 5 in the metaverse. With this configuration, it is possible to provide useful advice for the user 5's life in the real world based on the characteristics of the user 5 that appear in the behavioral history in the metaverse.

[0204] Furthermore, the recommendation module 1731 may recommend to the user 5, for example, real-world things that have a specific relationship with another user who has a specific relationship with the user 5 in the metaverse. The real-world things that have a specific relationship with the other user 5 may be, for example, real-world things that the other user 5 uses frequently (e.g., a facility that the other user 5 visits frequently or a service that the other user 5 uses frequently). The real-world things that the other user 5 uses frequently may be determined based on the behavioral history of the other user 5 in the real world (e.g., from the number of times each facility or service is used as indicated by the behavioral history). The real-world things that have a specific relationship with the other user 5 may be, for example, real-world things that correspond to content in the metaverse that the other user 5 uses frequently. The other users 5 who have a specific relationship are as described above. With this configuration, for example, if another user 5 who has a specific relationship with the user 5 in the metaverse (e.g., frequently interacts with the other user 5) frequently participates in a specific live event in the metaverse, it is possible to recommend to the user 5 a real-world live event that corresponds to the specific live event. Therefore, it will be possible to extend relationships that exist only within the metaverse to the real world.

[0205] In the Metaverse, a user 5 may be able to visually recognize at least one of his or her own attributes in the virtual space or the real world. In addition, in the Metaverse, a user 5 may be able to visually recognize at least one of the attributes in the virtual space or the real world of another user 5. Specifically, for example, the avatar control module 1429 may reflect the attributes of the user 5 in the avatar object 6 and control the avatar object 6 to be displayed on the monitor 130 in a display mode reflecting the attributes. Here, reflecting the attributes in the avatar object 6 may involve changing the skin (e.g., clothing) of the avatar object 6 in accordance with the attributes. Reflecting the attributes in the avatar object 6 may also involve adding a display (e.g., an icon) indicating the attributes around (e.g., above) the avatar object 6. In other words, reflecting the attributes in the avatar object 6 may involve setting the display mode of the avatar object 6 to a display mode in which an object (e.g., clothing, icon, etc.) corresponding to the attributes is added to the avatar object 6. Furthermore, the attributes may be displayed (e.g., indicated by characters, symbols, etc.) on a screen (such as a so-called profile screen) that displays a list of information about the user 5. For example, if there is a gap (in other words, a specific difference) between the attributes in the virtual space set for a certain user 5 and the attributes in the real world, a display indicating the existence of the gap may be displayed. Specifically, the display mode of the avatar object 6 may be changed to a display mode indicating the existence of the gap (e.g., a display mode in which an icon indicating the existence of the gap is displayed above the head of the avatar object 6), or a display indicating the existence of the gap may be displayed on a profile screen, etc. Each user 5 may be able to set whether or not to visually inform other users 5 of the attributes or gaps. For example, when reflecting attributes to the avatar object 6, the reflection may be performed automatically or based on an operation of the user 5.For example, the recommendation module 1731 may recommend a skin (e.g., clothing) for the avatar object 6 according to the attributes of the user 5 (in other words, behavioral history), and when the user 5 performs an operation to change to the recommended skin, the skin of the avatar object 6 may change to the recommended one.

[0206] In this embodiment, the attributes of user 5 that are set based on the behavioral history in the metaverse (i.e., attributes in the virtual space) and the attributes of user 5 that are set based on the behavioral history in the real world (i.e., attributes in the real world) are managed separately. However, the attributes that are set based on the behavioral history in the metaverse and the attributes that are set based on the behavioral history in the real world do not have to be distinguished. In other words, the attributes in the virtual space and the attributes in the real world in this embodiment may both be read simply as "attributes."

[0207] The behavioral history of the user 5 in the real world may be acquired, for example, as follows. That is, for example, the control module 1610 of the server 600 may include a behavioral history acquisition module 1733. Furthermore, the behavioral history acquisition module 1733 may acquire information about the behavioral history of the user 5 in the real world from, for example, a device carried by the user 5 as the external device 700 (hereinafter referred to as the "user device 700"), and may store the behavioral history of the user 5 in the real world in the real-world history storage unit 1753 included in the memory module 1630 based on the information. Here, the device carried by the user 5 may be, for example, a smartphone, a feature phone, a PDA (Personal Digital Assistant), a tablet computer, a personal computer, or the like, or may be a device worn by the user 5 (for example, a wearable device such as a watch, wristband, ring, clothing, glasses, or contact lens, or an implantable device).

[0208] The behavioral history acquisition module 1733 may acquire, as behavioral history, information about the distance traveled by the user 5, information about places visited by the user 5, and information about services used by the user 5, based on location information indicating the location of the user 5 acquired by the user device 700 via GPS or predetermined wireless communication (e.g., short-range wireless communication such as Wi-Fi communication, Bluetooth communication, or UWB (Ultra Wide Band) communication). The behavioral history acquisition module 1733 may also acquire, for example, information about actions taken by the user 5 on an SNS (e.g., information about images posted, information about the date and time of posting, information indicating the content of the post, information about posts to which the user reacted, etc.) from the user device 700, and based on the information, acquire, as behavioral history, information about places visited by the user 5, information about services used by the user 5, and information about clothing worn by the user 5. The behavioral history acquisition module 1733 may also acquire, for example, a history of searches by the user 5 on a web browser, a history of purchases of products, etc., from the user device 700, as behavioral history. In addition, the behavioral history acquisition module 1733 may acquire these histories as behavioral history from a predetermined server that stores history regarding the use of a predetermined application on the user device 700, or a predetermined server that stores history regarding the use of user 5's credit card, etc.

[0209] The behavioral history acquisition module 1733 may also acquire a behavioral history based on, for example, information related to biometric information acquired by the user device 700. Here, the biometric information may be, for example, data such as heart rate, blood pressure, body temperature, blood oxygen level, exhaled air, sweat rate, number of steps, electrocardiogram, or electroencephalogram measured by a device worn by the user 5. The user device 700 or the behavioral history acquisition module 1733 may also acquire information obtained by analyzing the biometric information (hereinafter referred to as "analysis result information"). Here, the analysis result information may be, for example, information indicating that the user is exercising (or has just exercised), information indicating the amount of sleep, or information indicating a full stomach, which are obtained by analyzing the biometric information. The behavioral history acquisition module 1733 may also acquire, as the behavioral history, information related to the number or frequency of exercises performed by the user 5, information related to the calories burned by the user 5, or information related to the amount of sleep by the user 5, based on the biometric information and branch result information.

[0210] The behavioral history acquisition module 1733 may acquire the behavioral history based on information manually input by the user 5 into the user device 700 or the like. For example, the behavioral history may be acquired based on information input by the user 5 into a healthcare application or a household accounting application of the user device 700. In other words, the behavioral history may be acquired in real time in accordance with the behavior of the user 5, or may be acquired by the user 5 manually inputting predetermined information after performing the behavior.

[0211] The control module 1610 includes a collaboration management module 1741 that manages information regarding collaboration with the user device 700 of each user 5. The collaboration management module 1741 (in other words, collaboration information registration means) registers information regarding collaboration with the user device 700 used by the user 5 based on an operation of the user 5 (for example, an operation by the controller 300 or an operation on the user device 700). Here, the information regarding collaboration with the user device 700 may be information indicating the user device 700 used by the user 5 (for example, a wearable device, etc.). In other words, the information regarding collaboration with the user device 700 may be information indicating the user device 700 that the user 5 has permitted to collaborate with. The information regarding collaboration with the user device 700 may also be information regarding collaboration between an application in the user device 700 (for example, an application that acquires biometric information, an SNS application, etc.) and an application that provides the metaverse. In other words, the information regarding the collaboration with the user device 700 may be information indicating applications in the user device 700 that the user 5 has authorized to collaborate (in other words, applications that can be used on the user device 700). In other words, the information regarding the collaboration with the user device 700 can also be said to be information regarding permission to acquire information regarding the user 5's behavioral history in the real world via the user device 700. The collaboration management module 1741 stores the information regarding the collaboration with the user device 700 in the memory module 1630 based on an operation by the user 5. Furthermore, when the collaboration management module 1741 registers the information regarding the collaboration with the user device 700, the behavior history acquisition module 1733 becomes able to acquire the behavioral history of the user 5 based on the information acquired by the user device 700. In other words, when the information regarding the collaboration with the user device 700 is registered, for example, an application providing a metaverse becomes able to acquire information from an application in the user device 700.Furthermore, the cooperation management module 1741 (in other words, notification means) notifies a user 5 who has not registered information regarding cooperation with the user device 700 to prompt the user 5 to register information regarding cooperation with the user device 700. Specifically, for example, the cooperation management module 1741 notifies the user 5 that by permitting cooperation with the user device 700, predetermined recommendations will be made. More specifically, for example, the cooperation management module 1741 transmits information indicating that information regarding cooperation with the user device 700 has not been registered to the control module 510 of the computer 200 of the user 5. Furthermore, upon receiving the information, the control module 510 displays on the monitor 130 a display notifying the user 5 that cooperation with the user device 700 has not been established, or a display notifying the user 5 that by permitting cooperation with the user device 700, recommendations regarding predetermined things in the metaverse will be made based on the user's behavior history in the real world.

[0212] Whether or not to cause the behavior history acquisition module 1733 to acquire a behavior history (in other words, whether or not to permit it) may be settable (in other words, switchable between ON and OFF) based on an operation by the user 5. For example, the behavior history acquisition module 1733 may determine whether or not to acquire a behavior history based on setting information (specifically, setting information regarding whether or not to acquire a behavior history) set by an operation by the user 5 (for example, an operation by the controller 300 on a predetermined setting screen). Furthermore, whether or not to acquire a behavior history may be settable for each behavior history acquisition path. Specifically, for example, a setting may be possible such that acquisition of a behavior history from the user device 700 is permitted while acquisition of a history related to credit card usage is not permitted. In other words, it may be settable for each user from which of a plurality of media (for example, the user device 700, a credit card, etc.) the behavior history acquisition module 1733 is permitted to acquire a behavior history. Furthermore, whether or not to have recommendation module 1731 make various recommendations based on various behavioral histories (in other words, whether or not to permit such recommendations) may be settable (in other words, switchable between ON and OFF) based on an operation by user 5. For example, recommendation module 1731 may determine whether or not to make a recommendation based on setting information (specifically, setting information regarding whether or not to make a recommendation) set by an operation by user 5 (for example, an operation by controller 300 on a predetermined setting screen). Furthermore, whether or not to make a recommendation may be settable for each thing to be recommended. With such a configuration, for example, in a configuration in which recommendations regarding things in the metaverse are made based on behavioral histories in the real world, it becomes possible to switch ON / OFF for recommendations regarding things in the metaverse, thereby preventing actions in the real world from being revealed by the recommended things.

[0213] The display provided to user 5 when recommendation module 1731 makes various recommendations may be, for example, as follows: That is, for example, when recommendation module 1731 determines a thing in the metaverse or the real world to be recommended to user 5 based on the behavioral history of user 5 in the metaverse or the real world, recommendation module 1731 outputs recommendation information indicating the thing and transmits it to recommendation information presentation module 1721. Furthermore, based on the recommendation information from recommendation module 1731, recommendation information presentation module 1721 displays on monitor 130 a display recommending the thing (hereinafter referred to as "recommendation display 30").

[0214] An example of the recommendation display 30 is shown in FIG. 17. FIG. 17 shows a display example in which content and other users 5 in the metaverse are recommended based on behavioral history in the real world. As shown in FIG. 17, the recommendation information presentation module 1721 may cause the monitor 130 to display the recommendation display 30, including a display of the name of the recommended content, etc. Also, as shown in FIG. 17, the recommendation information presentation module 1721 may cause the monitor 130 to display the recommendation display 30, including a display of the name in the metaverse of the other user 5 being recommended (in other words, the name of the avatar of the other user 5), in other words, the identification information (e.g., username) of the other user 5, etc. Note that the recommendation display 30 related to the recommendation of the other user 5 may include, for example, a display related to the receipt of contact for the other user 5 or a display indicating the location of the other user in the metaverse. Also, the recommendation display recommending content in the metaverse may include, for example, a display indicating the location of a location related to the content (e.g., the location of a facility as the content, or the location of a place where a service as the content is available, etc.). Note that the recommendation display 30 when recommending content or other users in the metaverse based on the behavioral history in the metaverse may also be as shown in Fig. 17. Note that the recommendation display 30 may be displayed over the entire display area of ​​the monitor 130, or may be displayed in a part of the display area.

[0215] Another example of a recommendation display is shown in Figure 18. Figure 18 shows a display example when recommending real-world objects based on a behavioral history in the metaverse. Note that recommendation display 30 when recommending content in the metaverse or other users based on a behavioral history in the metaverse or a behavioral history in the real world may also be as shown in Figure 18.

[0216] As shown in FIG. 18 , the recommendation display 30 may include a display of the name of the recommended thing. The recommendation display 30 may also include a display explaining the recommended thing (e.g., a display of an explanatory text). The recommendation display 30 may also include a display regarding the price of the recommended thing (e.g., the price of the recommended thing or the price of the recommended service). The recommendation display 30 may also include a display indicating the location of a place related to the recommended thing. Here, the display indicating the location may be, for example, a display using text such as an address, or a display using a map. The recommendation display 30 may also include a display related to accepting a reservation for the recommended thing. In other words, while the recommendation display 30 is displayed, an operation by the user 5 related to making a reservation for the recommended thing (e.g., an operation using the controller 300 or an operation using eye gaze) may be accepted. The recommendation display 30 may also include a display related to accepting an operation to set the location related to the recommended thing as an actual destination in the real world. In other words, while the recommendation display 30 is displayed, the user 5 may receive an operation (e.g., an operation using the controller 300 or an operation using eye gaze) to set a location related to the recommended object as a destination to be actually traveled to in the real world. The recommendation display 30 may also include a display for accepting addition of the recommended object to a predetermined list. In other words, while the recommendation display 30 is displayed, the user 5 may receive an operation (e.g., an operation using the controller 300 or an operation using eye gaze) to add the recommended object to a predetermined list. Here, the predetermined list may be, for example, a list for registering candidate locations to be visited in the future, a list for registering a location to be visited now, or a list for registering items to be purchased. The predetermined list may be viewable using a predetermined application on the user device 700. While the recommendation display 30 is displayed, if an operation is performed to set a location related to the recommended object as a destination to be actually traveled to in the real world, the location may be set as a destination in a navigation application of the user device 700.These various settings can be realized using known technologies such as technologies for linking an application for accessing the metaverse with other applications or websites.

[0217] Furthermore, when the recommendation module 1731 determines a thing in the metaverse or the real world to be recommended to the user 5 based on the behavioral history of the user 5 in the metaverse or the real world, the recommendation module 1731 may output recommendation information indicating the thing and transmit it to the user device 700. Then, the computer of the user device 700 may display a recommendation display 30 recommending the thing on a monitor of the user device 700 based on the recommendation information from the recommendation module 1731. In other words, information regarding the thing in the real world recommended to the user 5 by the recommendation module 1731 may be presented to the user 5 on the user device 700 (for example, a smartphone or a wearable device), or may be presented to the user 5 in the metaverse. Furthermore, when the recommendation information is sent to the user device 700, the recommendation information may be registered in a predetermined application of the user device 700 by performing a predetermined operation on the user device 700. Specifically, for example, when recommendation information is sent, a recommendation display 30 is displayed on the user device 700, and an operation related to making a reservation for the recommended thing, an operation related to setting a location related to the recommended thing as a destination to actually travel to in the real world, or an operation related to adding the recommended thing to a predetermined list is accepted. Based on each operation, the recommendation information may be registered in an application (e.g., a calendar application) that manages the date and time of a reservation or the date and time to travel to the destination, an application that manages the predetermined list, a navigation application, or the like. Furthermore, when recommendation information recommending a predetermined thing in the real world is sent to the user device 700, the user device 700 may store the recommendation information and send a predetermined notification to the user 5 when the user 5 approaches the predetermined thing (in other words, when the user 5 is located within a predetermined range from the predetermined thing). Here, the predetermined notification may be, for example, a notification notifying the user that the user is approaching the predetermined thing, a notification notifying the user that the user has arrived at the predetermined thing, a notification notifying the user that detailed information about the predetermined thing has been provided, or the like.Whether or not the user 5 has approached the predetermined thing may be determined based on, for example, location information indicating the location of the user 5 acquired by the user device 700 using GPS or the like. Furthermore, when the user 5 actually visits a location related to the recommended thing, the user device 700 may detect that the user 5 has visited the location and transmit information notifying the user 5 of the visit to the server 600. Then, the control module 1610 may grant the user 5 a predetermined reward (for example, a reward that can be used in the metaverse or a reward that can be used in the real world) based on the information (in other words, based on the user 5 having taken an action in accordance with the recommendation).

[0218] The timing of making a recommendation to user 5 is not particularly limited, and can be, for example, as follows: That is, the recommendation may be made when user 5 performs an operation to request a recommendation (for example, an operation to request the display of recommendation display 30) on a menu screen displaying multiple menu items (in other words, a user interface displayed on monitor 130). Note that the timing of making a recommendation here refers to the timing when information related to the recommendation is provided to user 5 (for example, the timing when recommendation display 30 is displayed to user 5), but may also refer to the timing when recommendation module 1731 decides on the thing to be recommended.

[0219] Furthermore, the recommendation may be made when the behavioral history of the user 5 is accumulated and a subject to be recommended to the user 5 can be identified (in other words, when the amount of behavioral history that allows the recommendation module 1731 to make a recommendation is accumulated). Specifically, the behavioral history of the user 5 may be accumulated, and the recommendation may be made every time a subject to be recommended to the user 5 is newly extracted.

[0220] Furthermore, the recommendation may be made when the user 5 accesses the metaverse. That is, for example, the recommendation may be made when the user 5 puts on the HMD 120 and launches an application for accessing the metaverse. Specifically, for example, the recommendation may be made after the application for accessing the metaverse is launched and before the user 5 is able to operate the avatar object 6. As an example, the recommendation may be made on a screen (e.g., a so-called home screen) on which settings related to the metaverse space are configured. With this configuration, for example, when recommending things in the metaverse based on the user 5's behavioral history in the real world, the following effects can be obtained. That is, when the user 5 accesses the metaverse for the first time in a while, the user 5 is shown in a clear manner that the actions he or she took in the real world will be utilized in the metaverse space. This gives the user 5 a sense of connection with the metaverse even during periods when he or she has not been active in the metaverse, thereby eliminating psychological barriers to re-accessing the metaverse. Furthermore, when recommending things in the metaverse based on the user 5's behavioral history in the real world, the recommendation may be made when the user first accesses the metaverse. In this case, for example, the recommendation may be made after the user 5 has been given some explanation about the operation method (in other words, during or after the tutorial). With this configuration, it is possible to present what the user 5 should do first when starting activities in the metaverse, in accordance with the characteristics of the user 5.

[0221] Furthermore, the recommendation may be made when user 5 accesses predetermined content in the metaverse. For example, when recommending a real-world thing corresponding to predetermined content in the metaverse or when recommending a thing in the metaverse corresponding to predetermined content in the metaverse, the recommendation may be made when user 5 accesses the predetermined content. For example, as shown in FIG. 18 , if a virtual facility based on a specific real-world facility exists in a virtual town based on a specific real-world town, when user 5 visits the virtual facility in the metaverse (specifically, for example, when user 5 visits a place where the virtual facility is visible or when user 5 enters the virtual facility), recommendation module 1731 may recommend the specific real-world facility to user 5. Note that when making a recommendation to user 5 using the display shown in FIG. 18 or the like, the recommendation may be, for example, as follows. That is, recommendation module 1731 and / or recommended information presentation module 1721 may recommend different things to user 5 based on where user 5 is located in the metaverse. Furthermore, the recommendation module 1731 and / or the recommendation information presentation module 1721 may vary the things recommended to the user 5 based on where the user 5 is looking in the metaverse. That is, for example, when the user 5 is in a virtual town based on a specific real-world town, the recommendation information presentation module 1721 may cause the monitor 130 to display a recommendation display 30 recommending a real facility corresponding to a virtual facility in the virtual town. In other words, the recommendation module 1731 may recommend a predetermined thing in the real world or the metaverse based on the current location of the user 5 in the metaverse (in other words, a predetermined thing according to the current location). Furthermore, for example, when the user 5 is looking at a first virtual facility 31, the recommendation information presentation module 1721 may cause the monitor 130 to display a recommendation display 30 recommending a real facility corresponding to the first virtual facility 31. In addition, for example, when the user 5 is looking at a second virtual facility 32, the recommendation information presentation module 1721 may cause the monitor 130 to display a recommendation display 30 recommending a real facility corresponding to the second virtual facility 32.In other words, recommendation module 1731 may recommend a predetermined thing in the real world or the metaverse based on the location where user 5 is looking in the metaverse (in other words, a predetermined thing according to the location where user 5 is looking). Note that the location where user 5 is looking (in other words, which facility user 5 is looking at, etc.) may be determined, for example, based on field of view image 17, or may be determined based on the line of sight of user 5 identified based on a signal from gaze sensor 140. Specifically, for example, the range shown in field of view image 17 may be determined as the location where user 5 is looking, or a predetermined range based on the point where user 5's line of sight is directed may be determined as the location where user 5 is looking.

[0222] The recommendation may also be made when the user 5 exits the metaverse. That is, for example, the recommendation may be made at the timing when the user 5 performs an operation to log out of the metaverse (for example, an operation by the controller 300).

[0223] Furthermore, the control module 1610 of this embodiment includes an access control module 1734 that controls whether or not access is permitted to specific content within the metaverse. When the recommendation module 1731 recommends specific content to the user 5, the access control module 1734 enables the user 5 to access the specific content. Specifically, for example, the metaverse may include a location (e.g., an area or facility) that the user 5 cannot enter unless recommended. In this case, the access control module 1734 may enable the user 5 to enter (i.e., access) the location based on the recommendation of the location to the user 5 by the recommendation module 1731. Also, for example, the metaverse may include a service that the user 5 cannot use unless recommended. In this case, the access control module 1734 may enable the user 5 to use (i.e., access) the service based on the recommendation of the service to the user 5 by the recommendation module 1731. Also, for example, the metaverse may include an item that the user 5 cannot acquire (e.g., purchase) unless recommended. In this case, the access control module 1734 may enable the user 5 to acquire (i.e., access) the item based on, for example, the recommendation module 1731's recommendation of the item to the user 5. In this way, enabling access to the recommended item based on the recommendation can increase motivation and a sense of purpose for activities in the metaverse or in the real world.

[0224] Furthermore, the spaces to which access is controlled by the access control module 1734 may include spaces that can be accessed only by users 5 with specific attributes. In other words, the access control module 1734 may permit access to a specific space in the metaverse when the user 5 has a specific attribute. With this configuration, it is possible to prepare a space in the metaverse where similar users 5 gather.

[0225] Next, the flow of processing executed by the HMD system 100 will be described with reference to FIGS.

[0226] [Processing related to recommendations regarding things in the metaverse based on behavioral history within the metaverse] An example of a process for making recommendations regarding things in the metaverse based on a behavior history in the metaverse will be described with reference to Figures 19 and 20. Note that the description here will be made taking as an example a case where a recommendation is made to user 5A.

[0227] First, an example of a process for recommending other users based on their behavioral history in the metaverse will be described with reference to FIG.

[0228] In step S101, the attribute setting module 1732 determines the attribute in the virtual space of the user 5A based on the behavior history of the user 5A in the metaverse stored in the virtual space history storage unit 1751.

[0229] Next, in step S102, the recommendation module 1731 determines other users 5 to recommend to user 5A based on the attributes in the virtual space of user 5A. Specifically, the recommendation module 1731 extracts other users 5 having attributes in the virtual space that correspond to the attributes in the virtual space of user 5A from among multiple users 5 who use the metaverse, and determines them as other users 5 to recommend to user 5A. Here, as an example, it is assumed that user 5C is determined as the other user 5 to recommend to user 5A. Note that the recommendation module 1731 may preferentially extract other users 5 with highly relevant attributes (e.g., users 5 with a large number of corresponding attributes, etc.). Furthermore, the recommendation module 1731 may preferentially extract other users 5 with a high relevance to the location of user 5 in the metaverse indicated by the behavioral history in the metaverse (e.g., other users 5 who are currently nearby, other users 5 with a similar range of behavior, other users 5 who often visit the same place, etc.). In addition, the recommendation module 1731 may preferentially extract other users 5 who are highly relevant to the user 5's location in the real world as indicated by the user's behavioral history in the real world (for example, other users 5 who are currently in a nearby location, other users 5 who have a similar range of behavior, other users 5 who often visit the same places, etc.).

[0230] Next, in step S103, the recommendation module 1731 transmits recommendation information about another user 5C to be recommended to the user 5A to the recommendation information presentation module 1721A. In other words, the recommendation module 1731 outputs recommendation information for displaying a recommendation display 30 recommending another user 5C to the user 5A.

[0231] Next, in step S104, the recommendation information presentation module 1721A causes the monitor 130A to display, based on the recommendation information transmitted from the recommendation module 1731, a recommendation display 30 that recommends another user 5C to the user 5A.

[0232] Next, an example of a process for recommending content in the metaverse based on a behavior history in the metaverse will be described with reference to FIG.

[0233] In step S151, the attribute setting module 1732 determines the attribute in the virtual space of the user 5A based on the behavior history of the user 5A in the metaverse stored in the virtual space history storage unit 1751.

[0234] Next, in step S152, the recommendation module 1731 determines content in the metaverse to recommend to user 5A based on the attributes of user 5A in the virtual space. Specifically, the recommendation module 1731 extracts content having recommendation target attributes that correspond to the attributes of user 5A in the virtual space from among multiple contents in the metaverse, and determines the content as content to recommend to user 5A. Note that the recommendation module 1731 may preferentially extract content that is highly relevant to the location of user 5A in the metaverse indicated by the behavior history in the metaverse (for example, content close to the current location or content that exists within the user 5A's range of activity). The recommendation module 1731 may also preferentially extract content that is highly relevant to the location of user 5A in the real world indicated by the behavior history in the real world (for example, content that corresponds to a real-world location close to the current location or content that corresponds to a real-world location that exists within the user 5A's range of activity).

[0235] Next, in step S153, the recommendation module 1731 transmits recommendation information related to content to be recommended to the user 5A to the recommendation information presentation module 1721A. In other words, the recommendation module 1731 outputs recommendation information for displaying a recommendation display 30 that recommends predetermined content to the user 5A.

[0236] Next, in step S154, the recommendation information presentation module 1721A displays, on the monitor 130A, a recommendation display 30 that recommends predetermined content to the user 5A, based on the recommendation information transmitted from the recommendation module 1731.

[0237] [Processing related to recommending things in the metaverse based on real-world behavioral history] An example of a process for making recommendations regarding things in the metaverse based on behavioral history in the real world will be described with reference to Fig. 21. Note that the description here will be made taking as an example a case where recommendations are made to user 5A.

[0238] In step S201, the behavioral history acquisition module 1733 acquires the behavioral history of the user 5A in the real world based on information about the behavior of the user 5A in the real world. Here, the information about the behavior of the user 5A in the real world may be, for example, biometric information acquired by the user device 700 or analysis result information obtained by analyzing the biometric information. Furthermore, the information about the behavior of the user 5A in the real world may be, for example, information about the actions of the user 5A on an SNS. Furthermore, the information about the behavior of the user 5A in the real world may be, for example, location information indicating the location of the user 5A in the real world. Such information about the behavior of the user 5A in the real world is acquired by, for example, the user device 700 and sent to the control module 1610. Note that information about the actions of the user 5A on the SNS may be sent to the control module 1610 from a server or the like that provides the SNS. Note that actions on the SNS include posting on the SNS and reacting (such as a so-called like) to posts made by others.

[0239] Next, in step S202, the attribute setting module 1732 determines the real-world attribute of the user 5A based on the action history of the user 5A in the real world.

[0240] Next, in step S203, the recommendation module 1731 determines a thing in the metaverse to recommend to user 5A based on the real-world attributes of user 5A. Specifically, the recommendation module 1731 extracts content having recommendation target attributes that correspond to the real-world attributes of user 5A from multiple contents in the metaverse, and determines the content to recommend to user 5A. Note that the recommendation module 1731 may preferentially extract content that is highly relevant to the location of user 5A in the real world indicated by the behavior history in the real world (e.g., content corresponding to a real-world location close to the current location or content corresponding to a real-world location within the user 5A's range of activity). The recommendation module 1731 may also preferentially extract content that is highly relevant to the location of user 5A in the metaverse indicated by the behavior history in the metaverse (e.g., content close to the current location or content within the user 5A's range of activity).

[0241] Next, in step S204, the recommendation module 1731 transmits recommendation information related to a thing (for example, content) to be recommended to the user 5A to the recommendation information presentation module 1721A. In other words, the recommendation module 1731 outputs recommendation information for displaying a recommendation display 30 that recommends a predetermined thing in the metaverse to the user 5A.

[0242] Next, in step S205, the recommendation information presentation module 1721A displays, on the monitor 130A, a recommendation display 30 that recommends a predetermined thing (for example, a predetermined content) to the user 5A based on the recommendation information transmitted from the recommendation module 1731.

[0243] [Processing related to recommendations for real-world objects based on behavioral history within the metaverse] An example of a process for making recommendations regarding real-world objects based on a behavior history in the metaverse will be described with reference to Fig. 22. Note that the description here will be made taking as an example a case where recommendations are made to user 5A.

[0244] In step S301, the recommendation module 1731 identifies a real-world thing corresponding to content in the metaverse accessed by the user 5A. Then, the recommendation module 1731 determines the identified thing as a thing to recommend to the user 5A. Specifically, the recommendation module 1731 identifies content accessed by the user 5A based on the behavioral history of the user 5A, and determines a real-world thing corresponding to the content accessed by the user 5A based on information indicating the correspondence between real-world things and content in the metaverse stored in the memory module 1630. Here, as an example, it is assumed that a specific facility in the real world is determined as a thing to recommend to the user 5A based on the user 5A's access to a virtual facility based on the specific facility in the real world. Note that the recommendation module 1731 may, for example, determine the specific facility as a thing to recommend when the user 5A accesses the virtual facility in the metaverse. Furthermore, the recommendation module 1731 may, for example, determine as the thing to recommend, from among a plurality of contents that the user 5A has accessed (specifically, a plurality of contents to which corresponding real-world things are set), a real-world thing corresponding to content that has been used frequently by the user 5A (for example, the total number of times used is greater than or equal to a predetermined threshold or the number of times used within a predetermined period is greater than or equal to a predetermined threshold (i.e., high frequency of use)) at the time of displaying the recommendation display 30 to the user 5A.

[0245] Next, in step S302, the recommendation module 1731 transmits recommendation information related to a specific facility in the real world to be recommended to the user 5A to the recommendation information presentation module 1721A. In other words, the recommendation module 1731 outputs recommendation information for displaying a recommendation display 30 recommending a specific facility in the real world to the user 5A. Note that the recommendation module 1731 may transmit recommendation information related to a real-world object to be recommended to the user 5A to the user device 700 of the user 5A.

[0246] Next, in step S303, the recommendation information presentation module 1721A displays, on the monitor 130A, a recommendation display 30 that recommends a specific facility in the real world to the user 5A based on the recommendation information transmitted from the recommendation module 1731.

[0247] The present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the spirit of the present invention. Within the scope of the present invention, the components can be freely combined, any component can be modified, or any component can be omitted. Furthermore, the processing flow described in this specification is merely an example, and the order and configuration of each process may be different.

[0248] [Note] The matters described in the above embodiment can also be described as follows:

[0249] (Appendix 1) Computer, The module 1731 functions as a recommendation module (e.g., recommendation module 1731) that recommends predetermined things in the metaverse to a user based on the user's behavior history in the metaverse. program. This configuration makes it possible to recommend other users and content that suit each user based on the characteristics of the user as revealed in the user's behavior, thereby broadening the scope of user activities within the metaverse and improving the interest of the service.

[0250] (Appendix 2) The recommendation means recommends to the user other users who have characteristics in common with the user based on the user's behavior history in the metaverse and the behavior history of other users in the metaverse. The program described in Appendix 1. This configuration allows users to be introduced to other users who share common characteristics, thereby helping to expand friendships within the metaverse and increasing the interest of the service.

[0251] (Appendix 3) The recommendation means recommends content in the metaverse to the user. The program described in Appendix 1. This configuration makes it possible to introduce content that is suited to each user, thereby broadening the scope of user activities within the metaverse and increasing the interest of the service.

[0252] (Appendix 4) The recommendation means makes recommendations to the user regarding things in the metaverse that have a specific association with other users who interact with the user in the metaverse. The program described in Appendix 1. Things that have a specific relationship with other users who interact with the user are likely to interest the user. With this configuration, it is possible to recommend to the user things that are likely to interest the user. It is also possible to create opportunities to deepen interactions with the other users. This can therefore improve the interest of the service.

[0253] (Appendix 5) The recommendation means recommends to the user content in the metaverse that has been used by other users who have interactions with the user a predetermined threshold or more. The program described in Appendix 4. This configuration allows the user to be recommended content that is popular with other users with whom the user interacts, thereby broadening the scope of user activities within the metaverse and increasing the interest of the service.

[0254] (Appendix 6) The computer is further caused to function as an attribute setting means (for example, an attribute setting module 1732) that sets attributes to the user according to the user's behavior history, The recommendation means recommends to the user other users corresponding to the set attribute. The program described in Appendix 1. This configuration allows users to be classified into attributes based on their behavioral history, and to recommend other users with matching attributes or compatible attributes to the user, etc. This can broaden the range of user activities within the metaverse and improve the interest of the service.

[0255] (Appendix 7) The computer is further caused to function as an attribute setting means (for example, an attribute setting module 1732) that sets attributes to the user according to the user's behavior history, The recommendation means recommends content in the metaverse according to the attribute to the user. The program described in Appendix 1. This configuration allows users to be classified into attributes based on their behavioral history and to recommend content that matches their attributes to them, thereby broadening the scope of user activities within the metaverse and increasing the interest of the service.

[0256] (Appendix 8) The computer is further configured to function as an access control means (e.g., an access control module 1734) that controls whether or not access is permitted to specific content within the metaverse; The access control means enables the user to access the specific content based on the recommendation of the specific content to the user by the recommendation means. 10. The program of claim 3, 5, or 7. This configuration makes it possible to provide content that can be accessed through recommendations, thereby increasing motivation and a sense of purpose for activities within the metaverse, and thus improving the interest of the service.

[0257] (Appendix 9) The user's behavior history includes information based on at least one of communication between the user and other users in the metaverse and movement of the user in the metaverse. A program according to any one of appendices 1 to 7. With this configuration, it is possible to make recommendations based on the characteristics of a user that are manifested in the user's communication with or movement with other users within the metaverse.

[0258] (Appendix 10) A recommendation means (e.g., a recommendation module 1731) is provided to recommend predetermined things in the metaverse to a user based on the user's behavior history in the metaverse. Information processing system. According to this configuration, the same effects as those of the program described in Supplementary Note 1 can be achieved. [Explanation of symbols]

[0259] 5 User, 6 Avatar object, 11 Virtual space, 100 HMD system, 110 HMD set, 120 HMD, 130 Monitor, 200 Computer, 210 Processor, 220 Memory, 230 Storage, 240 Input / output interface, 250 Communication interface, 300 Controller, 410 HMD sensor, 420 Motion sensor, 510 Control module, 520 Rendering module, 530 Memory module, 540 Communication control module, 600 Server, 610 Processor, 620 Memory, 630 Storage, 640 Input / output interface, 650 Communication interface, 700 External device, 1421 Virtual camera control module, 1422 Viewing area determination module, 1423 Reference gaze identification module, 1424 Face organ detection module, 1425 Motion detection module, 1426 Virtual space definition module, 1427 Virtual object generation module, 1428 Operation object control module, 1429 avatar control module, 1438 field of view image generation module, 1610 control module, 1630 memory module, 1640 communication control module, 1721 recommendation information presentation module, 1731 recommendation module, 1732 attribute setting module, 1733 behavior history acquisition module, 1734 access control module, 1741 collaboration management module, 1751 virtual space history storage unit, 1752 user attribute storage unit, 1753 real world history storage unit

Claims

1. Computer, The system functions as a recommendation means for recommending a specific place to a user based on information about the use of a specific place in the metaverse by other users who have a specific relationship with the user; The other user is a user whose conversation with the certain user or use of content in the metaverse satisfies a predetermined condition. program.

2. Computer, attribute setting means for setting attributes indicating the characteristics or properties of a certain user to the certain user based on the user's behavior history in the metaverse; and functioning as a recommendation means for recommending a specific place to a certain user based on information about the use of the specific place in the metaverse by another user to whom an attribute corresponding to the attribute set for the certain user is set. program.

3. A recommendation means for recommending a specific place to a user based on information about a specific place in the metaverse that another user having a specific relationship with the user has used, The other user is a user whose conversation with the certain user or use of content in the metaverse satisfies a predetermined condition. Information processing system.

4. An attribute setting means for setting attributes indicating the characteristics or properties of a certain user to the certain user based on the user's behavior history in the metaverse; and a recommendation means for recommending a specific place to the certain user based on information about a specific place in the metaverse that has been used by another user to whom an attribute corresponding to the attribute set for the certain user has been set. Information processing system.

Citation Information

Patent Citations

  • Foam stabilizer for plastic foam preparation

    JP1979078767A

  • Waveform measuring method

    JP1988030089A

  • Content recommendation system and terminal therefor

    JP2003271636A

  • Information management device

    JP2011216073A