Computer-implemented method, program and computer for providing a virtual experience

By updating item states based on user movements and field of view, the method enhances virtual experience interaction and immersion, addressing the limitations of existing techniques.

JP7716532B2Active Publication Date: 2025-07-31COLOPL
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2024065402
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-04-15
Publication Date
2025-07-31
Estimated Expiration
2037-08-31

AI Technical Summary

Technical Problem

Existing virtual experience techniques do not adequately address the updating of item states in a virtual space, limiting the immersion and interaction capabilities for users.

Method used

A method that includes defining a virtual space, moving a virtual viewpoint and operation objects in response to user movements, and updating item states when they move outside the field of view, allowing for enhanced interaction and immersion.

Benefits of technology

Improves the virtual experience by enabling more dynamic and interactive item management within the virtual space, enhancing user engagement and immersion.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007716532000001
    Figure 0007716532000001
  • Figure 0007716532000002
    Figure 0007716532000002
  • Figure 0007716532000003
    Figure 0007716532000003
Patent Text Reader

Abstract

To improve virtual experience of a user.SOLUTION: A method executed by a computer to provide a user with virtual experience comprises the steps to: define a virtual space to provide the user with the virtual experience; move a virtual observing point in the virtual space in accordance with movement of a head of the user; move an operation object in the virtual space in accordance with the movement of a part of a body of the user; and update a state of an item used in the virtual space under a condition that the operation object is moved at least out of a field of vision from the virtual observing point.SELECTED DRAWING: Figure 13
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a method, program, and computer executed by a computer to provide a virtual experience.

Background Art

[0002] Patent Document 1 below discloses a technique for providing a user with a virtual experience as if the user himself / herself is fighting an enemy object in a virtual space by having the user operate a virtual hand and handling an item such as a sword object used in the virtual space with the virtual hand.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] However, the technique disclosed in Patent Document 1 does not disclose the idea of how to update the state of an item used in a virtual space. For this reason, there is room for improvement in the virtual experience virtually experienced by the user in the technique disclosed in Patent Document 1.

[0005] An object of the present disclosure is to provide a method, program, and computer executed by a computer to provide a virtual experience, which can improve the virtual experience of a user.

Means for Solving the Problems

[0006] According to one aspect shown by the present disclosure, a method executed by a computer to provide a virtual experience to a user, the method including: defining a virtual space for providing the virtual experience; moving a virtual viewpoint within the virtual space according to the movement of the user's head; moving an operation object within the virtual space according to the movement of a part of the user's body; and updating the state of an item used within the virtual space on the condition that at least the operation object has moved outside the range of the field of view from the virtual viewpoint.

Advantages of the Invention

[0007] According to the present disclosure, it is possible to provide a method, a program, and a computer executed by a computer to provide a virtual experience, which can improve the virtual experience of a user.

Brief Description of the Drawings

[0008] [Figure 1] FIG. 1 is a diagram schematically showing the configuration of an HMD system according to an embodiment. [Figure 2] FIG. 2 is a block diagram showing an example of the hardware configuration of a computer according to one aspect. [Figure 3] FIG. 3 is a diagram conceptually showing a uvw field-of-view coordinate system set in an HMD device according to an embodiment. [Figure 4] FIG. 4 is a diagram conceptually showing one aspect of expressing a virtual space according to an embodiment. [Figure 5] FIG. 5 is a diagram showing the head of a user wearing an HMD device from above according to an embodiment. [Figure 6] FIG. 6 is a diagram showing a YZ cross-section of a visual field area in a virtual space viewed from the X direction. [Figure 7] FIG. 7 is a diagram showing an XZ cross-section of a visual field area in a virtual space viewed from the Y direction. [Figure 8] FIG. 8 is a diagram showing the schematic configuration of a controller according to an embodiment. [Figure 9]FIG. 9 is a block diagram illustrating a modular configuration of a computer according to one embodiment. [Figure 10] FIG. 10 is a flowchart showing the process performed by the HMD system used by the user to provide the user with a virtual space. [Figure 11] Fig. 11(A) is a diagram showing an example of a user wearing an HMD device and holding a controller, and Fig. 11(B) is a diagram showing an example of a virtual camera, a left hand object, and a right hand object arranged in a virtual space in the state shown in Fig. 11(A). [Figure 12] FIG. 12 is a diagram showing an example of a field of view image that represents the virtual space shown in FIG. 11(B) in the field of view area of a virtual camera. [Figure 13] Fig. 13(A) is a diagram showing an example of a state in which a user has moved their right hand holding a controller to near their right shoulder, which is outside the user's field of vision. Fig. 13(B) is a diagram showing an example of a virtual camera, a left hand object, and a right hand object arranged in a virtual space in the state shown in Fig. 13(A). [Figure 14] FIG. 14 is a diagram showing an example of a field of view image that represents the virtual space shown in FIG. 13(B) in the field of view area of a virtual camera. [Figure 15] Fig. 15(A) is a diagram showing an example of a state in which a user moves their right hand holding a controller into their field of view while performing a selection operation. Fig. 15(B) is a diagram showing an example of a virtual camera, a left hand object, and a right hand object arranged in a virtual space in the state shown in Fig. 15(A). [Figure 16] FIG. 16 is a diagram showing an example of a field of view image that represents the virtual space shown in FIG. 15(B) in the field of view area of a virtual camera. [Figure 17] FIG. 17 is a flowchart showing an example of an update process for updating the state of an item in this embodiment. [Figure 18] FIG. 18 is a flowchart showing an example of the item effect activation process in this embodiment. [Figure 19]FIG. 19(A) is a diagram showing an example of a state in which the user has moved the right hand holding the controller out of the user's field of view. FIG. 19(B) is a diagram showing an example of a virtual camera, a left hand object, and a right hand object arranged in a virtual space in the state shown in FIG. 19(A). [Figure 20] FIG. 20 is a diagram showing an example of a view image representing the virtual space shown in FIG. 19(B) within the viewing area of the virtual camera. [Figure 21] FIG. 21 is a flowchart showing an example of an update process for updating the state of an item in the present embodiment. [Figure 22] FIG. 22 is a diagram showing an example of a UI board, a left hand object, and a right hand object used to associate an item with a first area arranged in a virtual space. [Figure 23] FIG. 23 is a diagram showing an example of a state in which a specific object is selected by a right hand object. [Figure 24] FIG. 24 is a diagram showing an example of a state in which a specific object is placed in a second area by a right hand object. [Figure 25] FIG. 25 is a diagram showing an example of a state in which a specific object is placed in a second area. [Figure 26] FIG. 26 is a flowchart showing an example of an update process for updating the state of an item in the present embodiment. [Embodiments for Carrying Out the Invention]

[0009] <Details of the Embodiment Shown in the Present Disclosure> Hereinafter, the details of the embodiment shown in the present disclosure will be described with reference to the drawings. In the following description, basically, the same reference numerals are assigned to the same components. For this reason, for the components that have been described (the components with the described reference numerals), the description will not be repeated in principle, except when necessary.

[0010] [Configuration of the HMD System] The configuration of an HMD (Head Mount Device) system 100 will be described with reference to Fig. 1. Fig. 1 is a diagram illustrating an outline of the configuration of an HMD system 100 according to an embodiment. In one aspect, the HMD system 100 is provided as a system for home use or a system for business use.

[0011] The HMD system 100 includes an HMD device 110, an HMD sensor 120, a controller 160, and a computer 200. The HMD device 110 includes a display 112, a camera 116, a microphone 118, and a gaze sensor 140. The controller 160 may include a motion sensor 130.

[0012] In one aspect, the computer 200 can be connected to the Internet or other network 19 and can communicate with a server 150 or other computer connected to the network 19. In another aspect, the HMD device 110 can include a sensor 114 instead of the HMD sensor 120.

[0013] The HMD device 110 is worn on the user's head and can provide the user with a virtual space during operation. More specifically, the HMD device 110 displays an image for the right eye and an image for the left eye on a display 112. When each eye of the user views the respective image, the user can recognize the images as three-dimensional images based on the parallax between the two eyes. The display 112 may be configured integrally with the HMD device 110 or may be separate.

[0014] The display 112 is realized as, for example, a non-transmissive display device. In one aspect, the display 112 is disposed on the main body of the HMD device 110 so as to be positioned in front of both eyes of the user. Therefore, when the user views the three-dimensional image displayed on the display 112, the user can immerse himself in the virtual space. In one embodiment, the virtual space includes, for example, images of a background, objects, and a menu that the user can select. In one embodiment, the display 112 can be realized as a liquid crystal display or an organic EL (Electro Luminescence) display provided in a so-called smartphone or other information display terminal.

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

[0016] The camera 116 acquires a face image of the user wearing the HMD device 110. The face image acquired by the camera 116 can be used to detect the user's expression by image analysis processing. The camera 116 may be, for example, an infrared camera built into the main body of the HMD device 110 to detect, for example, the movement of the pupils, the opening and closing of the eyelids, and the movement of the eyebrows. Alternatively, the camera 116 may be an external camera disposed outside the HMD device 110 as shown in FIG. 1 to detect the movement of the user's mouth, cheeks, jaw, and the like. Further, the camera 116 may be constituted by both the above-described infrared camera and the external camera.

[0017] The microphone 118 captures the voice uttered by the user. The voice captured by the microphone 118 can be used to detect the user's emotions through voice analysis processing. The voice can also be used to give voice instructions to the virtual space. The voice may also be sent to an HMD system used by another user via the network 19, the server 150, etc., and output from a speaker or the like connected to the HMD system. This allows conversation (chat) between users sharing the virtual space.

[0018] The HMD sensor 120 includes multiple light sources (not shown). Each light source is realized by, for example, an LED (Light Emitting Diode) that emits infrared light. The HMD sensor 120 has a position tracking function for detecting the movement of the HMD device 110. Using this function, the HMD sensor 120 detects the position and tilt of the HMD device 110 in real space.

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

[0020] In another aspect, the HMD device 110 may include a sensor 114 as a position detector instead of the HMD sensor 120. The HMD device 110 may use the sensor 114 to detect its own position and tilt. For example, if the sensor 114 is an angular velocity sensor, a geomagnetic sensor, an acceleration sensor, a gyro sensor, or the like, the HMD device 110 may use any of these sensors instead of the HMD sensor 120 to detect its own position and tilt. As an example, if the sensor 114 is an angular velocity sensor, the angular velocity sensor detects the angular velocity of the HMD device 110 around three axes in real space over time. The HMD device 110 calculates temporal changes in the angles of the HMD device 110 around the three axes based on the angular velocities, and further calculates the tilt of the HMD device 110 based on the temporal changes in the angles. The HMD device 110 may also include a transmissive display device. In this case, the transmissive display device may be temporarily configured as a non-transmissive display device by adjusting its transmittance. Furthermore, an element presenting real space may be included in the field of view image displayed on the display 112. For example, an image captured by a camera mounted on the HMD device 110 may be superimposed on a part of the field of view image, or the transmittance of a part of the transmissive display device may be set high so that real space can be viewed from a part of the field of view image.

[0021] The gaze sensor 140 detects the direction in which the gaze of the right and left eyes of the user 190 is directed (gaze direction). Detection of the direction is realized, for example, by a known eye tracking function. The gaze sensor 140 is realized by a sensor having the eye tracking function. In one aspect, 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 190 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 direction of the user 190 based on the detected rotation angles.

[0022] The server 150 may transmit a program to the computer 200 to provide a virtual space to the user.

[0023] In another aspect, server 150 may communicate with other computers 200 for providing virtual reality to HMD devices used by other users. For example, when multiple users play a participatory game in an amusement facility, each computer 200 communicates signals based on the actions of each user with the other computers 200, allowing multiple users to enjoy a common game in the same virtual space.

[0024] Controller 160 accepts input of commands from user 190 to computer 200. In one aspect, controller 160 is configured to be able to be held by user 190. In another aspect, controller 160 is configured to be able to be attached to the body or clothing of user 190. In another aspect, controller 160 may be configured to output at least one of vibration, sound, and light based on a signal sent from computer 200. In another aspect, controller 160 accepts operations given by user 190 to control the position, movement, etc. of objects placed in a space that provides virtual reality.

[0025] In certain situations, the motion sensor 130 is attached to the user's hand to detect the movement of the user's hand. For example, the motion sensor 130 detects the rotation speed, rotation number, etc. of the hand. The detected signal is sent to the computer 200. The motion sensor 130 is provided, for example, in the glove-type controller 160. In certain embodiments, for safety in the real space, it is desirable that the controller 160 be attached to something that is not easily detached by being worn on the hand of the user 190 like a glove. In another situation, a sensor not worn on the user 190 may detect the movement of the user 190's hand. For example, the signal of a camera that photographs the user 190 may be input to the computer 200 as a signal representing the operation of the user 190. The motion sensor 130 and the computer 200 are connected to each other by wire or wirelessly. In the case of wireless, the communication form is not particularly limited, and for example, Bluetooth (registered trademark) or other known communication methods are used.

[0026] [Hardware Configuration] Referring to FIG. 2, the computer 200 according to the present embodiment will be described. FIG. 2 is a block diagram showing an example of the hardware configuration of the computer 200 according to one aspect. The computer 200 mainly includes a processor 10, a memory 11, a storage 12, an input / output interface 13, and a communication interface 14. Each component is connected to the bus 15, respectively.

[0027] Based on the signal given to the computer 200 or based on the fact that a predetermined condition is satisfied, the processor 10 executes a series of instructions included in the program stored in the memory 11 or the storage 12. In certain situations, the processor 10 is realized as a CPU (Central Processing Unit), MPU (Micro Processor Unit), FPGA (Field-Programmable Gate Array), or other device.

[0028] The memory 11 temporarily stores programs and data. At least one of the programs and data is loaded from, for example, the storage 12. The data stored in the memory 11 includes data input to the computer 200 and data generated by the processor 10. In one aspect, the memory 11 is realized as a RAM (Random Access Memory) or other volatile memory.

[0029] The storage 12 permanently stores programs and data. The storage 12 is realized, for example, as a read-only memory (ROM), a hard disk drive, a flash memory, or other non-volatile storage device. The programs stored in the storage 12 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 12 includes data and objects for defining the virtual space.

[0030] In another aspect, storage 12 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 12 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, data, and the like.

[0031] In one embodiment, the input / output interface 13 communicates signals with the HMD device 110, the HMD sensor 120, or the motion sensor 130. In one aspect, the input / output interface 13 is realized using a terminal such as a Universal Serial Bus (USB) interface, a Digital Visual Interface (DVI), or a High-Definition Multimedia Interface (HDMI (registered trademark)). Note that the input / output interface 13 is not limited to the above.

[0032] In one embodiment, the input / output interface 13 may further communicate with the controller 160. For example, the input / output interface 13 receives an input of a signal output from the motion sensor 130. In another aspect, the input / output interface 13 sends an instruction output from the processor 10 to the controller 160. The instruction instructs the controller 160 to vibrate, output sound, emit light, etc. Upon receiving the instruction, the controller 160 executes one of the following in response to the instruction: vibration, sound output, or light emission.

[0033] The communication interface 14 is connected to a network 19 and communicates with other computers (e.g., a server 150) connected to the network 19. In one aspect, the communication interface 14 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 (Wireless Fidelity), Bluetooth (registered trademark), or NFC (Near Field Communication). Note that the communication interface 14 is not limited to the above.

[0034] In a certain situation, the processor 10 accesses the storage 12, loads one or more programs stored in the storage 12 into the memory 11, and executes a series of instructions included in the programs. The one or more programs may include an operating system of the computer 200, an application program for providing a virtual space, game software that can be executed in the virtual space using the controller 160, and the like. The processor 10 sends a signal for providing a virtual space to the HMD device 110 via the input / output interface 13. The HMD device 110 displays an image on the display 112 based on the signal.

[0035] The server 150 is connected to the control devices of each of the plurality of HMD systems 100 via the network 19.

[0036] In the example shown in FIG. 2, a configuration in which the computer 200 is provided outside the HMD device 110 is shown. However, in another situation, the computer 200 may be built into the HMD device 110. As an example, a portable information communication terminal (for example, a smartphone) including the display 112 may function as the computer 200.

[0037] Further, the computer 200 may be a configuration commonly used by the plurality of HMD devices 110. According to such a configuration, for example, the same virtual space can be provided to a plurality of users, so that each user can enjoy the same application as other users in the same virtual space. In such a case, the plurality of HMD systems 100 in the present embodiment may be directly connected to the computer 200 via the input / output interface 13. Also, each function of the server 150 in the present embodiment may be implemented in the computer 200.

[0038] In one embodiment, a global coordinate system is preset in the HMD system 100. The global 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. In this embodiment, the global coordinate system is one of the viewpoint coordinate systems. Therefore, the horizontal direction, the vertical direction (up-down direction), and the front-to-back direction in the global coordinate system are defined as the x-axis, y-axis, and z-axis, respectively. More specifically, in the global 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.

[0039] In one aspect, the HMD sensor 120 includes an infrared sensor. When the infrared sensor detects infrared rays emitted from each light source of the HMD device 110, the presence of the HMD device 110 is detected. The HMD sensor 120 further detects the position and tilt of the HMD device 110 in real space according to the movement of the user 190 wearing the HMD device 110, based on the values of each point (each coordinate value in the global coordinate system). More specifically, the HMD sensor 120 can detect temporal changes in the position and tilt of the HMD device 110 using each value detected over time.

[0040] The global coordinate system is parallel to the coordinate system of the real space. Therefore, each tilt of the HMD device 110 detected by the HMD sensor 120 corresponds to each tilt of the HMD device 110 around the three axes in the global coordinate system. The HMD sensor 120 sets a uvw field of view coordinate system for the HMD device 110 based on the tilt of the HMD device 110 in the global coordinate system. The uvw field of view coordinate system set for the HMD device 110 corresponds to a viewpoint coordinate system when a user 190 wearing the HMD device 110 views an object in a virtual space.

[0041] [uvw field of view coordinate system] Referring to FIG. 3, the uvw viewing coordinate system will be described. FIG. 3 is a diagram conceptually showing the uvw viewing coordinate system set in the HMD device 110 according to an embodiment. The HMD sensor 120 detects the position and orientation of the HMD device 110 in the global coordinate system when the HMD device 110 is activated. The processor 10 sets the uvw viewing coordinate system in the HMD device 110 based on the detected values.

[0042] As shown in FIG. 3, the HMD device 110 sets a three-dimensional uvw viewing coordinate system centered (at the origin) on the head of the user wearing the HMD device 110. More specifically, the HMD device 110 tilts the horizontal direction, vertical direction, and front-back direction (x-axis, y-axis, z-axis) that define the global coordinate system around each axis of the HMD device 110 by the inclination around each axis in the global coordinate system, and sets the three newly obtained directions as the pitch direction (u-axis), yaw direction (v-axis), and roll direction (w-axis) of the uvw viewing coordinate system in the HMD device 110.

[0043] In a certain situation, when the user 190 wearing the HMD device 110 stands upright and is looking straight ahead, the processor 10 sets a uvw viewing coordinate system parallel to the global coordinate system in the HMD device 110. In this case, the horizontal direction (x-axis), vertical direction (y-axis), and front-back direction (z-axis) in the global coordinate system coincide with the pitch direction (u-axis), yaw direction (v-axis), and roll direction (w-axis) of the uvw viewing coordinate system in the HMD device 110.

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

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

[0046] In one aspect, the HMD sensor 120 may identify the position of the HMD device 110 in real space as a relative position with respect to the HMD sensor 120 based on the light intensity of the infrared light acquired based on the output from the infrared sensor and the relative positional relationship between a plurality of points (for example, the distance between each point, etc.). Furthermore, the processor 10 may determine the origin of the uvw field of view coordinate system of the HMD device 110 in real space (global coordinate system) based on the identified relative position.

[0047] [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 a virtual space 2 according to an embodiment. The virtual space 2 has a spherical structure that covers the entire 360-degree area from the center 21. To avoid complicating the explanation, FIG. 4 illustrates only the upper half of the celestial sphere in the virtual space 2. Meshes are defined in the virtual space 2. The position of each mesh is defined in advance as a coordinate value in an XYZ coordinate system defined in the virtual space 2. The computer 200 associates each element (e.g., object, still image, video, etc.) that can be deployed (placed) in the virtual space 2 with a mesh corresponding to the deployment position (placement position) in the virtual space 2, thereby providing the user with a virtual space 2 in which virtual space elements that can be viewed by the user are deployed. The virtual space elements are elements deployed in the virtual space 2, and include, for example, various objects (e.g., objects that can be operated by the user, objects that operate based on a predetermined algorithm, and non-operational objects) and various images (e.g., background images, menu images selected by the user, photos, video images, etc.).

[0048] In a certain situation, an XYZ coordinate system with the center 21 as the origin is defined in the virtual space 2. The XYZ coordinate system is, for example, parallel to the global coordinate system. Because the XYZ coordinate system is a type of viewpoint 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 global coordinate system, the Y-axis (vertical direction) of the XYZ coordinate system is parallel to the y-axis of the global coordinate system, and the Z-axis (front-to-back direction) of the XYZ coordinate system is parallel to the z-axis of the global coordinate system.

[0049] When the HMD device 110 is started up, that is, in the initial state of the HMD device 110, the virtual camera 1 is placed at the center 21 of the virtual space 2. The virtual camera 1 moves in the virtual space 2 in conjunction with the movement of the HMD device 110 in the real space. As a result, changes in the position and orientation of the HMD device 110 in the real space are reproduced in the virtual space 2 in the same manner.

[0050] For the virtual camera 1, a uvw viewing coordinate system is defined in the same way as in the case of the HMD device 110. The uvw viewing coordinate system of the virtual camera 1 in the virtual space 2 is defined so as to be linked to the uvw viewing coordinate system of the HMD device 110 in the real space (global coordinate system). Therefore, when the inclination of the HMD device 110 changes, the inclination of the virtual camera 1 changes accordingly. Also, the virtual camera 1 may move in the virtual space 2 in conjunction with the movement of the user wearing the HMD device 110 in the real space, or may move according to the operation by the user 190 received by the controller 160.

[0051] Since the orientation of the virtual camera 1 is determined according to the position and inclination of the virtual camera 1, the line of sight (reference line of sight 5) that serves as a reference when the user views a virtual space element is determined according to the orientation of the virtual camera 1. However, the orientation of the virtual camera 1 may be determined according to the line of sight direction of the user 190 detected by the gaze sensor 140. The processor 10 of the computer 200 defines the viewing area 23 in the virtual space 2 based on the reference line of sight 5. The viewing area 23 corresponds to the field of view of the user wearing the HMD device 110 in the virtual space 2.

[0052] The line of sight direction of the user 190 detected by the gaze sensor 140 is the direction in the viewpoint coordinate system when the user 190 views an object. The uvw viewing coordinate system of the HMD device 110 is equal to the viewpoint coordinate system when the user 190 views the display 112. Also, the uvw viewing coordinate system of the virtual camera 1 is linked to the uvw viewing coordinate system of the HMD device 110. Therefore, the HMD system 100 according to a certain aspect can regard the line of sight direction of the user 190 detected by the gaze sensor 140 as the line of sight direction of the user in the uvw viewing coordinate system of the virtual camera 1.

[0053] [User's line of sight] With reference to FIG. 5, the determination of the user's line of sight direction will be described. FIG. 5 is a diagram showing the head of the user 190 wearing the HMD device 110 from above according to a certain embodiment.

[0054] In one aspect, the gaze sensor 140 detects the gaze of each of the right and left eyes of the user 190. In one aspect, when the user 190 is looking at something close, the gaze sensor 140 detects gazes R1 and L1. In another aspect, when the user 190 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 direction w is smaller than the angle formed by the gazes R1 and L1 with respect to the roll direction w. The gaze sensor 140 transmits the detection result to the computer 200.

[0055] 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 direction N0 of the user 190 based on the position of the identified gaze point N1. For example, the computer 200 detects the direction of a line passing through the gaze point N1 and the midpoint of a line connecting the right eye R and left eye L of the user 190 as the gaze direction N0. The gaze direction N0 is the direction in which the user 190 actually directs their gaze with both eyes. The gaze direction N0 also corresponds to the direction in which the user 190 actually directs their gaze relative to the field of view 23.

[0056] 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 2.

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

[0058] [Visibility area] Referring to FIGS. 6 and 7, the viewing area 23 will be described. FIG. 6 is a diagram showing a YZ cross-section of the viewing area 23 viewed from the X direction in the virtual space 2. FIG. 7 is a diagram showing an XZ cross-section of the viewing area 23 viewed from the Y direction in the virtual space 2.

[0059] As shown in FIG. 6, the viewing area 23 in the YZ cross-section includes the area 24. The area 24 is defined by the reference line of sight 5 of the virtual camera 1 and the YZ cross-section of the virtual space 2. The processor 10 defines a range including the polar angle α centered on the reference line of sight 5 in the virtual space 2 as the area 24.

[0060] As shown in FIG. 7, the viewing area 23 in the XZ cross-section includes the area 25. The area 25 is defined by the reference line of sight 5 and the XZ cross-section of the virtual space 2. The processor 10 defines a range including the azimuth angle β centered on the reference line of sight 5 in the virtual space 2 as the area 25.

[0061] In a certain aspect, the HMD system 100 provides the virtual space to the user 190 by displaying the view image on the display 112 based on the signal from the computer 200. The view image is an image representing the virtual space elements within the space corresponding to the viewing area 23 among the virtual space elements deployed in the virtual space 2. When the user 190 moves the HMD device 110 worn on the head, the virtual camera 1 also moves in conjunction with the movement. As a result, the position of the viewing area 23 in the virtual space 2 changes. Accordingly, the view image displayed on the display 112 is updated from an image representing the virtual space elements within the space corresponding to the viewing area 23 before the user 190 moves the HMD device 110 to an image representing the virtual space elements within the space corresponding to the viewing area 23 after the user 190 moves the HMD device 110. The user can visually recognize the desired direction in the virtual space 2.

[0062] The user 190 can visually recognize the virtual space elements deployed in the virtual space 2 without visually recognizing the real world while wearing the HMD device 110. Therefore, the HMD system 100 can give the user a high sense of immersion in the virtual space 2.

[0063] In a certain situation, the processor 10 can move the virtual camera 1 in the virtual space 2 in conjunction with the movement of the user 190 wearing the HMD device 110 in the real space. In this case, the processor 10 identifies an image area projected onto the display 112 of the HMD device 110 (i.e., the viewing area 23 in the virtual space 2) based on the position and orientation of the virtual camera 1 in the virtual space 2. That is, the virtual camera 1 defines the field of view of the user 190 in the virtual space 2.

[0064] According to an embodiment, it is desirable that the virtual camera 1 includes two virtual cameras, namely, a virtual camera for providing an image for the right eye and a virtual camera for providing an image for the left eye. Also, it is preferable that an appropriate parallax is set for the two virtual cameras so that the user 190 can recognize the three-dimensional virtual space 2. In the present embodiment, the technical idea according to the present disclosure is exemplified by assuming that the virtual camera 1 includes two virtual cameras and is configured such that the roll direction (w) generated by synthesizing the roll directions of the two virtual cameras is adapted to the roll direction (w) of the HMD device 110.

[0065] [Controller] Referring to FIG. 8, an example of the controller 160 will be described. FIG. 8 is a diagram showing a schematic configuration of the controller 160 according to an embodiment.

[0066] As shown in the state (A) of FIG. 8, in a certain situation, the controller 160 may include a right controller 160R and a left controller. The right controller 160R is operated by the right hand of the user 190. The left controller is operated by the left hand of the user 190. In a certain situation, the right controller 160R and the left controller are symmetrically configured as separate devices. Therefore, the user 190 can freely move the right hand holding the right controller 160R and the left hand holding the left controller respectively. In another situation, the controller 160 may be an integrated controller that accepts two-handed operations. Hereinafter, the right controller 160R will be described.

[0067] The right controller 160R includes a grip 30, a frame 31, and a top surface 32. The grip 30 is configured to be held by the right hand of the user 190. For example, the grip 30 can be held by the palm and three fingers (middle finger, ring finger, little finger) of the right hand of the user 190.

[0068] The grip 30 includes buttons 33, 34 and a motion sensor 130. The button 33 is disposed on the side surface of the grip 30 and accepts an operation by the middle finger of the right hand. The button 34 is disposed on the front surface of the grip 30 and accepts an operation by the index finger of the right hand. In a certain situation, the buttons 33, 34 are configured as trigger-type buttons. The motion sensor 130 is built into the housing of the grip 30. If the motion of the user 190 can be detected from around the user 190 by a camera or other device, the grip 30 may not be provided with the motion sensor 130.

[0069] The frame 31 includes a plurality of infrared LEDs 35 arranged along its circumferential direction. The infrared LEDs 35 emit infrared rays in accordance with the progress of the program using the controller 160 during the execution of the program. The infrared rays emitted from the infrared LEDs 35 can be used to detect the positions and postures (tilts, orientations) of the right controller 160R and the left controller, etc. In the example shown in FIG. 8, the infrared LEDs 35 arranged in two rows are shown, but the number of arrays is not limited to that shown in FIG. 8. An array of one row or three or more rows may be used. In the example shown in FIG. 8, since the controller 160 is a controller held by the user's hand, by detecting the position and posture (tilt, orientation) of the controller 160, the movement of the user's hand can be detected. Note that when the controller 160 can be attached to a part of the user 190's body or clothing, by detecting the position and posture (tilt, orientation) of the controller 160, the movement of a part of the user 190's body or clothing can be detected.

[0070] The top surface 32 includes buttons 36, 37 and an analog stick 38. The buttons 36, 37 are configured as push buttons. The buttons 36, 37 accept operations by the thumb of the user 190's right hand. The analog stick 38, in a certain aspect, accepts operations in any direction by 360 degrees from the initial position (neutral position). The operation includes, for example, an operation for moving an object arranged in the virtual space 2.

[0071] In a certain aspect, the right controller 160R and the left controller include a battery for driving the infrared LEDs 35 and other members. The battery includes, but is not limited to, a rechargeable type, a button type, a dry battery type, etc. In another aspect, the right controller 160R and the left controller can be connected to, for example, the USB interface of the computer 200. In this case, the right controller 160R and the left controller do not require a battery.

[0072] 8, for example, the yaw, roll, and pitch directions are defined for the right hand 810 of the user 190. When the user 190 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 axis of the yaw direction and the axis of the roll direction is defined as the pitch direction. [HMD device control device]

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

[0074] 9, computer 200 includes a main control module 220, a memory module 240, and a communication control module 250. Main control module 220 includes, as sub-modules, a virtual space control module 221, a virtual camera control module 222, an object control module 223, a collision determination module 224, a parameter control module 225, a field of view image generation module 226, and a display control module 227. However, main control module 220 does not need to include all of the above-mentioned modules, and may not include some of them.

[0075] In one embodiment, the main control module 220 is implemented by the processor 10. In another embodiment, multiple processors 10 may operate as the main control module 220. The memory module 240 is implemented by the memory 11 or the storage 12. The communication control module 250 is implemented by the communication interface 14.

[0076] The virtual space control module 221 controls the virtual space 2 provided to the user 190. In this embodiment, the virtual space control module 221 specifies the virtual space 2 in the HMD system 100 by identifying virtual space data representing the virtual space 2. Note that in this embodiment, an example will be described in which virtual space elements such as the virtual camera 1, various objects, and background images are arranged in the virtual space 2 by a module other than the virtual space control module 221, but this is not limiting and the virtual space control module 221 may also arrange the virtual space elements. Furthermore, the arrangement of the virtual space elements in the virtual space 2 may be performed for the entire virtual space 2, or may be limited to a field of view 23 determined by a virtual camera control module 222 described later.

[0077] The virtual camera control module 222 places the virtual camera 1 in the virtual space 2 and controls the operation of the virtual camera 1 in the virtual space 2. In this embodiment, the virtual camera control module 222 can control the behavior, orientation, etc. of the virtual camera 1 in the virtual space 2 based on the orientation of the head of the user wearing the HMD device 110, i.e., the movement of the HMD device 110. In other words, the field of view 23 of the virtual camera 1 is determined based on the orientation of the head of the user wearing the HMD device 110. However, the operation control of the virtual camera 1 is not limited to this. For example, it may be determined based on key operations on the controller 160 by the user.

[0078] The object control module 223 places an object in the virtual space 2 and controls the action of the object in the virtual space 2. The object may be any virtual object that can be placed in the virtual space 2. Examples of objects include, but are not limited to, a control object, a target object such as an item handled by the control object, an enemy character, and a background object.

[0079] The control object is an object associated with a user wearing the HMD device 110 and whose movement is controlled by the user. The control object may be, for example, a player character associated with the user wearing the HMD device 110, or an object constituting a part of the player character's body. The player character is an alter ego of the user wearing the HMD device 110 in the virtual space 2, and may also be referred to as an avatar. In this embodiment, the control object is a virtual hand associated with the hand of the user wearing the HMD device 110, i.e., a hand object constituting the hand of the player character. In this case, the object control module 223 operates the hand object based on the movement of the controller 160 held by the user in the hand or the key operation of the controller 160 by the user. However, the control object is not limited to a hand object. For example, the control object may be a finger object (virtual finger), a foot object, or a stick object corresponding to a stick used by the user, instead of a hand object. When the control object is a finger object, the control object particularly corresponds to the axis portion of the direction (axial direction) in which the finger points. In addition, when the operation object is an object that constitutes part of the body of the player character, it does not matter whether or not objects that constitute parts of the player character's body other than the operation object are placed.

[0080] The target object can be any object as long as it can be directly or indirectly operated (handled) by the operation object. Examples of the target object include items used in a virtual space. Examples of items include virtual goods used in the progress of a game. However, it does not matter whether the goods are tangible or intangible. For example, in an action game where an enemy character is attacked or attacked by an enemy character, examples of items include a weapon object for attacking an enemy character and an armor object for defending against an attack from an enemy character, but are not limited thereto. Examples of weapon objects include, but are not limited to, objects modeled after guns, swords, spears, axes, bows, and grenades. Examples of armor objects include, but are not limited to, objects modeled after shields and armors. Note that the weapon object and the armor object may activate their effects regardless of parameters such as contact with other objects, or may activate their effects by consuming associated parameters. For example, when the weapon object is a gun object modeled after a gun, the parameter associated with the gun object is the remaining number of bullet objects fired from the gun object. In this case, if there is a remaining number of bullet objects, the gun object consumes the bullet objects and fires the bullet objects.

[0081] An enemy character is an object that affects the player character. In an action game as described above, examples of enemy characters include objects that attack the player character or are attacked by the player character. The enemy character may be an NPC (Non Player Character) whose actions are controlled by a predetermined program, or an object controlled by another user. Background objects may include, for example, forests, mountains, and other landscapes arranged according to the progress of the game story, animals, etc. Note that the object control module 223 may control objects that do not operate by keeping them arranged at fixed positions.

[0082] The collision determination module 224 determines the collision between objects by determining the collision (contact) of the collision areas between objects. The collision determination module 224 can, for example, detect the timing when one object touches another object or the timing when it leaves the touching state. In this embodiment, the collision determination module 224 determines the collision between the operation object and various areas. Specifically, the collision determination module 224 determines the collision between the operation object and various areas by determining the collision (contact) between the collision area set for the operation object and various areas composed of the collision area.

[0083] The parameter control module 225 controls various parameters. As described above, when an item activates its efficacy by consuming parameters associated with it, the parameter control module 225 controls the remaining amount of the parameters when the efficacy of the item is activated.

[0084] The field of view image generation module 226 generates field of view image data to be displayed on the display 112 based on the field of view area 23 determined by the virtual camera control module 222. Specifically, the field of view image generation module 226 generates the field of view image data based on, for example, the field of view of the virtual camera 1 defined based on the movement of the virtual camera 1 and the virtual space data specified by the virtual space control module 221.

[0085] The display control module 227 causes the display 112 of the HMD device 110 to display a field of view image based on the field of view image data generated by the field of view image generation module 226. For example, the display control module 227 outputs the field of view image data generated by the field of view image generation module 226 to the HMD device 110, thereby causing the field of view image to be displayed on the display 112.

[0086] The memory module 240 holds data used for the computer 200 to provide the virtual space 2 to the user 190. In one aspect, the memory module 240 holds spatial information 241, object information 242, and user information 243. The spatial information 241 includes, for example, one or more templates defined to provide the virtual space 2. The object information 242 includes, for example, the content reproduced in the virtual space 2, information for arranging the objects used in the content, and other attribute information such as the drawing data of the player character and its size information. The content can include, for example, games, content representing a landscape similar to the real world, and the like. The user information 243 includes, for example, a program for causing the computer 200 to function as a control device of the HMD system 100, an application program for using each content held in the object information 242, and the like.

[0087] The data and programs stored in the memory module 240 are input by a user of the HMD device 110. Alternatively, the processor 10 downloads the programs or data from a computer (e.g., the server 150) operated by a business that provides the content, and stores the downloaded programs or data in the memory module 240.

[0088] The communication control module 250 can communicate with the server 150 and other information communication devices via the network 19 .

[0089] In one aspect, main control module 220 may be realized using, for example, Unity (registered trademark) provided by Unity Technologies, Inc. In another aspect, main control module 220 may be realized as a combination of circuit elements that realize each process.

[0090] Processing in the computer 200 is realized by hardware and software executed by the processor 10. Such software may be pre-stored on a hard disk or other memory module 240. Alternatively, 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 the server 150 or other computer via the communication control module 250, and then temporarily stored in the memory module 240. The software is read from the memory module 240 by the processor 10 and stored in RAM in the form of an executable program. The processor 10 executes the program.

[0091] The hardware that constitutes the computer 200 shown in FIG. 9 is common. Since the operation of the hardware of the computer 200 is well-known, a detailed explanation will not be repeated.

[0092] Note that the data recording medium is not limited to a CD-ROM, FD (Flexible Disk), or hard disk, and may also be a non-volatile data recording medium that fixedly carries a program, such as a magnetic tape, cassette tape, optical disk (MO (Magnetic Optical Disc) / MD (Mini Disc) / DVD (Digital Versatile Disc)), IC (Integrated Circuit) card (including a memory card), optical card, mask ROM, EPROM (Erasable Programmable Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), flash ROM, or other semiconductor memory.

[0093] The program referred to here includes not only a program directly executable by the processor 10, but also a program in source program form, a compressed program, an encrypted program, and the like.

[0094] [Control Structure] Referring to FIG. 10, the control structure of the computer 200 according to the present embodiment will be described. FIG. 10 is a flowchart showing the processing executed by the HMD system 100 used by the user 190 to provide the virtual space 2 to the user 190.

[0095] In step S1, the processor 10 of the computer 200, as the virtual space control module 221, identifies virtual space data and defines the virtual space 2. Further, the processor 10, as the object control module 223, arranges various objects in this virtual space 2. The virtual space control module 221 defines its operation to be controllable within the virtual space 2.

[0096] In step S2, the processor 10 initializes the virtual camera 1 as the virtual camera control module 222. For example, the processor 10 arranges the virtual camera 1 at a preset center point in the virtual space 2 in the work area of the memory, and directs the line of sight of the virtual camera 1 in the direction in which the user 190 is facing.

[0097] In step S3, the processor 10 generates view image data for displaying an initial view image as the view image generation module 226. The display control module 227 transmits (outputs) the generated view image data to the HMD device 110 via the communication control module 250.

[0098] In step S4, the display 112 of the HMD device 110 displays a view image based on the view image data received from the computer 200. The user 190 wearing the HMD device 110 can recognize the virtual space 2 when viewing the view image.

[0099] In step S5, the HMD sensor 120 detects the position and inclination of the HMD device 110 based on a plurality of infrared lights transmitted from the HMD device 110. The detection result is sent to the computer 200 as motion detection data.

[0100] In step S6, the processor 10 identifies the viewing direction of the user 190 wearing the HMD device 110 as the virtual camera control module 222 based on the position and inclination of the HMD device 110.

[0101] In step S7, the controller 160 detects the operation of the user 190 in the real space. For example, in a certain situation, the controller 160 detects that a button has been pressed by the user 190. In another situation, the controller 160 detects the movement of the user 190's hand. The signal indicating the detection content is sent to the computer 200.

[0102] In step S8, the processor 10, as the object control module 223, collision determination module 224, and parameter control module 225, reflects the movement detection data sent from the HMD sensor 120, the detection contents sent from the controller 160, and the control contents of various objects in the virtual space 2.

[0103] For example, the processor 10 functions as an object control module 223 to move an operation object in the virtual space 2 based on the motion detection data of the HMD device 110 and the detection contents of the controller 160. Also, for example, the processor 10 functions as a collision determination module 224 to perform collision determination of the collision area of each object. Also, for example, the processor 10 functions as a parameter control module 225 to control parameters associated with items.

[0104] In step S9, the processor 10, functioning as the field of view image generation module 226, generates field of view image data for displaying a field of view image based on the processing result in step S8. The display control module 227 outputs the generated field of view image data to the HMD device 110.

[0105] In step S10, the display 112 of the HMD device 110 updates the field of view image based on the received field of view image data, and displays the updated field of view image.

[0106] [Item status update method] Next, a method for updating the state of an item in this embodiment will be described. Fig. 11(A) is a diagram showing an example of a user 190 wearing an HMD device 110 and holding controllers 160L and 160R. Fig. 11(B) is a diagram showing an example of a virtual camera 1, a left hand object 400L, and a right hand object 400R arranged in a virtual space 2 in the state shown in Fig. 11(A). Fig. 12 is a diagram showing an example of a field of view image M that represents the virtual space 2 shown in Fig. 11(B) by the field of view area 23 of the virtual camera 1.

[0107] In this embodiment, the position and movement of the HMD device 110 in the real space are detected by position tracking and reflected in the position and movement of the virtual camera 1 in the virtual space 2. Similarly, the positions and movements of the controllers 160L and 160R in the real space are detected by position tracking and reflected in the positions and movements of the left hand object 400L and the right hand object 400R in the virtual space 2. Therefore, in this embodiment, the positional relationship of the left hand (controller 160L) and the right hand (controller 160R) with respect to the head (HMD device 110) of the user 190 is reflected in the virtual space 2 as the positional relationship of the left hand object 400L and the right hand object 400R with respect to the virtual camera 1. Therefore, according to this embodiment, the user 190 wearing the HMD device 110 can not only move the left hand object 400L and the right hand object 400R in the virtual space 2 based on the movement of his or her own left hand and right hand, but can also move the left hand object 400L and the right hand object 400R in the virtual space 2 as if they were the user 190's own virtual hands. As described above, according to this embodiment, the user 190 wearing the HMD device 110 can experience the virtual space 2 from a subjective viewpoint (first-person viewpoint), and can therefore enjoy a virtual experience as if the user 190 himself or herself were the player character 490. In other words, the user 190 can enjoy a virtual experience as if he or she were the player character 490 facing off against the enemy character 500. In this embodiment, of the objects constituting the body of the player character 490, a left hand object 400L and a right hand object 400R shown by solid lines in Fig. 11(B) are placed in the virtual space 2, but objects constituting other parts shown by dashed lines in Fig. 11(B) are not placed in the virtual space 2. In the following description, the left hand object 400L and the right hand object 400R may be collectively referred to simply as "hand objects 400".

[0108] In this embodiment, a first area is set in a specific part of the body of the player character 490. The first area is, for example, an area configured by a collision area, and is an area to which an item to be used by the hand object 400 can be associated. Examples of the item include, but are not limited to, a weapon object for attacking the enemy character 500 and an armor object for defending against attacks from the enemy character 500. The user 190 moves his / her hand (controller 160) to collide the collision area set for the hand object 400 with the first area, and performs a selection operation to select the item associated with the first area, thereby causing the hand object 400 to select the item associated with the first area. Examples of the selection operation include, but are not limited to, continuously pressing a trigger-type button such as button 33 or 34.

[0109] As described above, in this embodiment, the user 190 can enjoy a virtual experience as if he or she were the player character 490 facing off against the enemy character 500. Therefore, when attacking the enemy character 500, the user 190 brings the hand object 400 close to the first region associated with a weapon object and performs a selection operation, thereby causing the hand object 400 to select a weapon object, and then manipulates the selected weapon object with the hand object 400 to attack the enemy character 500. Similarly, when defending against an attack from the enemy character 500, the user 190 brings the hand object 400 close to the first region associated with an armor object and performs a selection operation, thereby causing the hand object 400 to select an armor object, and then manipulates the selected armor object with the hand object 400 to defend against the attack from the enemy character 500.

[0110] Here, in order to improve the virtual experience of the user 190, it is preferable to set the first region to a part of the body of the player character 490 where the player character 490 is expected to actually wear a weapon object or armor object. Furthermore, if the first region is positioned outside the range of the field of view 23 of the virtual camera 1 (player character 490), it is possible to omit the drawing of a graphic that makes it appear as if the player character 490 is wearing a weapon object or armor object, which is also preferable from the viewpoint of processing load. For this reason, in this embodiment, a case where the first region is set to each of the left shoulder, right shoulder, left hip, and right hip of the player character 490 will be described as an example, but the present invention is not limited to this. In this embodiment, the first region is a region whose relative position with respect to the virtual camera 1 is fixed and which is positioned outside the range of the field of view 23.

[0111] In the example shown in FIG. 11(B), a gun object is associated with a collision area CB, which is a first area set on the right shoulder of the player character 490. In the example shown in FIG. 11(B), the gun object is illustrated in the collision area CB to make it easier to understand that the gun object is associated with the collision area CB, but it is not necessary to visualize the gun object. Hereinafter, a method for selecting a gun object using the right hand object 400R will be specifically described with reference to FIGS. 13 to 16. FIG. 13(A) is a diagram showing an example of a state in which the user 190 moves his / her right hand, which is holding the controller 160R, to the vicinity of his / her right shoulder, which is outside the field of view of the user 190. FIG. 13(B) is a diagram showing an example of the virtual camera 1, left hand object 400L, and right hand object 400R arranged in the virtual space 2 in the state shown in FIG. 13(A). FIG. 14 is a diagram showing an example of a field of view image M representing the virtual space 2 shown in FIG. 13(B) by the field of view area 23 of the virtual camera 1. Fig. 15(A) is a diagram showing an example of a state in which user 190 has moved his / her right hand, which is holding controller 160R, into the field of view of user 190 while performing a selection operation. Fig. 15(B) is a diagram showing an example of virtual camera 1, left hand object 400L, and right hand object 400R arranged in virtual space 2 in the state shown in Fig. 15(A). Fig. 16 is a diagram showing an example of field of view image M that represents the virtual space 2 shown in Fig. 15(B) in field of view area 23 of virtual camera 1.

[0112] As shown in FIG. 13(A), the user 190 moves the right hand holding the controller 160R near his / her right shoulder. As a result, as shown in FIG. 13(B), the processor 10 moves the right hand object 400R near the right shoulder of the player character 490 located outside the viewing area 23 of the virtual camera 1. In this case, since the right hand object 400R is located outside the viewing area 23, as shown in FIG. 14, the right hand object 400R is not included in the viewing image M. Further, as the right hand object 400R moves, the processor 10 determines whether or not a first positional relationship is established between the right hand object 400R and a first area set on the right shoulder of the player character 490. Specifically, the processor 10 determines whether or not the collision area CA of the right hand object 400R and the collision area CB constituting the first area are in collision.

[0113] When the user 190 moves the right hand near the right shoulder, the user 190 performs the above-described selection operation. As shown in FIG. 13(B), when the collision area CA and the collision area CB are in collision, the processor 10 causes the right hand object 400R to select a gun object while the selection operation continues. As a result, the processor 10 updates, as the object control module 223, the state of the gun object from a non-selection state in which it is not selected by the right hand object 400R to a selection state in which it is selected by the right hand object 400R.

[0114] As shown in FIG. 15(A), the user 190 moves the right hand within his / her viewing range while continuing the selection operation. As a result, as shown in FIG. 15(B), the processor 10 moves the right hand object 400R within the viewing area 23. At this time, since the gun object 450 is in a selected state selected by the right hand object 400R, the gun object 450 is held by the right hand object 400R. Further, since the right hand object 400R and the gun object 450 are located within the viewing area 23, as shown in FIG. 16, the right hand object 400R and the gun object 450 are included in the viewing image M.

[0115] When the gun object 450 is in a selected state, the user 190 performs an effect activation operation to activate the gun object 450. An example of the effect activation operation is a firing operation to fire a bullet object from the gun object 450. By performing the firing operation, the bullet object can be fired from the gun object 450 to attack the enemy object 500. An example of the effect activation operation is, but is not limited to, an operation of pressing a push button such as button 36 or 37.

[0116] Furthermore, when the gun object 450 is in a selected state, if the selection operation by the user 190 is released, the selection of the gun object 450 by the right hand object 400R is released. For example, assume that the selection operation is a continuous press of a trigger-type button such as button 33 or 34. In this case, when the processor 10 detects that the press of the trigger-type button has been released, the processor 10, as the object control module 223, causes the right hand object 400R to release the gun object 450 and updates the state of the gun object from a selected state to a non-selected state.

[0117] FIG. 17 is a flowchart showing an example of an update process for updating the state of an item in this embodiment, and in detail shows an update process between the selected state and the non-selected state of an item.

[0118] In step S11, the processor 10, functioning as the object control module 223, detects the movement of the hand (controller 160) of the user 190, and moves the hand object 400 in the virtual space 2 in conjunction with the detected hand movement. At this time, the processor 10, functioning as the collision determination module 224, determines whether or not the collision area CA of the hand object 400 after the movement collides with another collision area.

[0119] In step S12, the processor 10, as the object control module 223, determines whether or not a selection operation has been performed by the user 190. If a selection operation has not been performed (No in step S12), the process returns to step S11. If a selection operation has been performed (Yes in step S12), the process proceeds to step S13.

[0120] In step S13, the processor 10, functioning as the object control module 223, checks whether the collision determination module 224 has determined that the collision area CA of the hand object 400 is colliding with the collision area CB that constitutes the first region. If the collision area CA and the collision area CB are not colliding (No in step S13), the process returns to step S11. If the collision area CA and the collision area CB are colliding (Yes in step S13), the process proceeds to step S14.

[0121] In step S14, the processor 10, functioning as the object control module 223, causes the hand object 400 to select an item associated with the first region. As a result, the item is held in the hand object 400. Furthermore, the processor 10, functioning as the object control module 223, updates the state of the item from a non-selected state to a selected state. However, if no item is associated with the first region, the processor 10 does not cause the hand object 400 to select an item.

[0122] In step S15, the processor 10, functioning as the object control module 223, detects the movement of the hand (controller 160) of the user 190, and moves the hand object 400 in the virtual space 2 in conjunction with the detected hand movement. At this time, the processor 10, functioning as the collision determination module 224, determines whether or not the collision area CA of the hand object 400 after the movement collides with another collision area.

[0123] In step S16, the processor 10, as the object control module 223, determines whether the selection operation by the user 190 has been cancelled. If the selection operation has not been cancelled (No in step S16), the process returns to step S15. If the selection operation has been cancelled (Yes in step S16), the process proceeds to step S17.

[0124] In step S17, the processor 10, as the object control module 223, cancels the selection of the item by the hand object 400. As a result, the item is released from the hand object 400. Further, the processor 10, as the object control module 223, updates the state of the item from the selected state to the non - selected state. After that, the process returns to step S11.

[0125] FIG. 18 is a flowchart showing an example of the effect activation process of an item in the present embodiment. Specifically, the flowchart shown in FIG. 18 is performed when the state of the item is the selected state and the item activates its effect by consuming the associated parameters.

[0126] In step S21, the processor 10, as the parameter control module 225, determines whether the user 190 has performed an effect activation operation. If the effect activation operation has not been performed (No in step S21), the process ends. If the effect activation operation has been performed (Yes in step S21), the process proceeds to step S22.

[0127] In step S22, the processor 10, as the parameter control module 225, checks whether the parameters associated with the selected item have the required amount remaining for activation. If the parameters of the required amount for activation do not remain (No in step S22), the process ends. If the parameters of the required amount for activation remain (Yes in step S22), the process proceeds to step S23. For example, if the item is the gun object 450 and the parameter associated with the gun object 450 is the remaining number of bullet objects fired from the gun object 450, and it is assumed that the gun object 450 fires a bullet object by consuming one bullet object. In this case, if the remaining number of bullet objects is 1 or more, it means that the parameters of the required amount for activation remain, and if the remaining number of bullet objects is 0, it means that the parameters of the required amount for activation do not remain.

[0128] In step S23, the processor 10, as the object control module 223, activates the selected item and, as the parameter control module 225, consumes the parameters of the required amount for activation. Specifically, the processor 10 subtracts the required amount for activation from the remaining amount of the parameter. For example, as described above, when the item is the gun object 450, one bullet object can be fired from the gun object 450 by consuming one bullet object.

[0129] Note that the flowchart shown in FIG. 18 is assumed to be executed when the item selected by the hand object 400 is located within the range of the visual field area 23, but it is not limited to this.

[0130] Next, with reference to FIGS. 19 to 20, a method for recovering parameters associated with an item will be described. In the present embodiment, a method is adopted in which the remaining amount of parameters associated with the item is recovered by moving the item selected by the hand object 400 outside the range of the viewing area 23 of the virtual camera 1. Here, a method for recovering the remaining number of bullet objects associated with the gun object 450 will be described as an example, but it is not limited thereto. FIG. 19(A) is a diagram showing an example of a state in which the right hand of the user 190 holding the controller 160R is moved outside the view of the user 190. FIG. 19(B) is a diagram showing an example of the virtual camera 1, the left hand object 400L, and the right hand object 400R arranged in the virtual space 2 in the state shown in FIG. 19(A). FIG. 20 is a diagram showing an example of a view image M representing the inside of the virtual space 2 shown in FIG. 19(B) by the viewing area 23 of the virtual camera 1.

[0131] As shown in FIG. 19(A), the user 190 moves the right hand holding the controller 160R out of his / her field of view in order to restore the remaining number of bullet objects associated with the gun object 450. As a result, as shown in FIG. 19(B), the processor 10 moves the right hand object 400R and the gun object 450 held by the right hand object 400R out of the range of the viewing area 23 of the virtual camera 1. In this case, since the right hand object 400R and the gun object 450 are located outside the range of the viewing area 23, as shown in FIG. 20, the right hand object 400R and the gun object 450 are not included in the viewing image M. Here, when the gun object 450 moves out of the range of the viewing area 23, the processor 10, as the parameter control module 225, restores the remaining number of bullet objects associated with the gun object 450. As a result, the processor 10, as the parameter control module 225, updates the state of the gun object 450 from the first state in which at least a part of the bullet objects is consumed to the second state in which the remaining amount of the bullet objects is larger than that in the first state. In the present embodiment, the case where the processor 10 restores the remaining number of bullet objects to the upper limit value is taken as an example for explanation, but it is not limited thereto. How much the remaining number of bullet objects is restored can be arbitrarily set, as long as it is at least larger than the remaining number of bullet objects when the gun object 450 moves out of the range of the viewing area 23. Thus, in the present embodiment, if the gun object 450 is moved out of the range of the viewing area 23, the remaining number of bullet objects associated with the gun object 450 is restored, so that the drawing of a graphic for reloading the bullet object into the gun object 450 can be omitted, and the processing load can be reduced. Note that the processor 10 may output, from a speaker or the like connected to the HMD system, a sound effect for notifying the user 190 that the bullet object has been reloaded into the gun object 450 at the timing of restoring the remaining number of bullet objects associated with the gun object 450.

[0132] FIG. 21 is a flowchart showing an example of an update process for updating the state of an item in the present embodiment. Specifically, it shows an update process from a first state in which parameters associated with the item are consumed to a second state in which the consumed parameters are restored. Note that the flowchart shown in FIG. 21 is performed when the state of the item is a selected state and the item is an item that activates its effect by consuming parameters associated with the item.

[0133] In step S31, as the object control module 223, the processor 10 detects the movement of the hand (controller 160) of the user 190, and moves the hand object 400 in the virtual space 2 in conjunction with the detected hand movement.

[0134] In step S32, as the parameter control module 225, the processor 10 determines whether or not the item selected by the hand object 400 is located within the range of the viewing area 23. If the item is not located within the range of the viewing area 23 (No in step S32), the process returns to step S31. If the item is located within the range of the viewing area 23 (Yes in step S32), the process proceeds to step S33.

[0135] In step S33, as the parameter control module 225, the processor 10 determines whether or not the remaining amount of the parameter associated with the item selected by the hand object 400 is full. If the remaining amount of the parameter is full (Yes in step S33), the process returns to step S31. If the remaining amount of the parameter is not full (No in step S33), the process proceeds to step S34.

[0136] In step S33, as the parameter control module 225, the processor 10 fills the remaining amount of the parameter associated with the item to full.

[0137] Next, a method for associating an item with a first area will be described with reference to Figures 22 to 25. In this embodiment, a method for associating an item with a first area using a specific object for identifying the item and a character model representing the player character 490 will be described as an example, but the method for associating an item with a first area is not limited to this.

[0138] FIG. 22 is a diagram illustrating an example of a UI board 300, a left hand object 400L, and a right hand object 400R that are arranged in the virtual space 2 and are used to associate an item with a first area. A character model 301 representing a player character 490 is drawn on the UI board 300. A second area 305 associated with the first area set at the right shoulder of the player character 490 is set at the right shoulder of the character model 301. A second area 306 associated with the first area set at the left shoulder of the player character 490 is set at the left shoulder of the character model 301. A second area 307 associated with the first area set at the right hip of the player character 490 is set at the right waist of the character model 301. A second area 308 associated with the first area set at the left hip of the player character 490 is set at the left waist of the character model 301. Additionally, specific objects 311 for identifying a shield object, specific objects 312 for identifying a sword object, and specific objects 313 for identifying a gun object are provided so as to be attachable to the UI board 300. The shield object, sword object, and gun object are all examples of items. The specific objects may be any objects that can identify items.

[0139] In this embodiment, a specific object is selected with the hand object 400 and placed in an arbitrary second region, thereby associating an item represented by the specific object placed in the second region with a first region associated with the second region. Hereinafter, with reference to FIGS. 23 to 25, a method of associating a gun object represented by the specific object 313 with a first region set on the right shoulder of the player character 490 associated with the second region 305 by placing the specific object 313 in the second region 305 will be specifically described. FIG. 23 is a diagram illustrating an example of a state in which the specific object 313 is selected with the right hand object 400R. FIG. 24 is a diagram illustrating an example of a state in which the specific object 313 is placed in the second region 305 with the right hand object 400R. FIG. 25 is a diagram illustrating an example of a state in which the specific object 313 is placed in the second region 305.

[0140] When the user 190 moves the right hand holding the controller 160R, the processor 10 moves the right hand object 400R near the specific object 313 as shown in FIG. 23. As the right hand object 400R moves, the processor 10 determines whether or not a collision area CA of the right hand object 400R collides with a collision area CC of the specific object 313. When the right hand object 400R moves near the specific object 313, the user 190 performs the above-described selection operation. If the collision area CA and the collision area CC collide with each other as shown in FIG. 23, the processor 10 causes the right hand object 400R to select the specific object 313 while the selection operation is continued.

[0141] While the user 190 continues the selection operation and moves the right hand, as shown in FIG. 24, the processor 10 moves the right hand object 400R and the specific object 313 selected by the right hand object 400R near the second area 305. As the right hand object 400R moves, the processor 10 determines whether a second positional relationship is established between the specific object 313 and the second area 305. Specifically, the processor 10 determines whether the collision area CC of the specific object 313 collides with the collision area CD of the second area 305. When the specific object 313 moves near the second area 305, the user 190 releases the selection operation. As shown in FIG. 24, when the collision area CC and the collision area CD collide, when the selection operation is released, the processor 10 places the specific object 313 in the second area 305 as shown in FIG. 25. Thereby, the processor 10 associates the gun object indicated by the specific object 313 with the first area set on the right shoulder of the player character 490 associated with the second area 305, and updates the state of the gun object from the unassociated state not associated with the first area to the associated state associated with the first area.

[0142] FIG. 26 is a flowchart showing an example of an update process for updating the state of an item in the present embodiment. Specifically, it shows an update process from an unassociated state in which the item is not associated with the first area to an associated state associated with the first area.

[0143] In step S41, the processor 10, as the object control module 223, detects the movement of the user 190's hand (controller 160), and moves the hand object 400 in the virtual space 2 in conjunction with the detected hand movement. At this time, the processor 10, as the collision determination module 224, determines whether the collision area CA of the hand object 400 after movement collides with other collision areas.

[0144] In step S42, the processor 10, as the object control module 223, determines whether a selection operation by the user 190 has been performed. If the selection operation has not been performed (No in step S42), the process returns to step S11. If the selection operation has been performed (Yes in step S42), the process proceeds to step S43.

[0145] In step S43, the processor 10, as the object control module 223, checks, using the collision determination module 224, whether it is determined that the collision area CA of the hand object 400 and the collision area CC of the specific object are in collision. If the collision area CA and the collision area CC are not in collision (No in step S43), the process returns to step S41. If the collision area CA and the collision area CC are in collision (Yes in step S43), the process proceeds to step S44.

[0146] In step S44, the processor 10, as the object control module 223, causes the specific object to be selected by the hand object 400. As a result, the specific object is held by the hand object 400.

[0147] In step S45, the processor 10, as the object control module 223, detects the movement of the hand (controller 160) of the user 190, and moves the hand object 400 in the virtual space 2 in conjunction with the detected hand movement. At this time, the processor 10, as the collision determination module 224, determines whether the collision area CA of the hand object 400 after the movement and the collision area CC of the specific object selected by the hand object 400 are in collision with other collision areas.

[0148] In step S46, the processor 10, as the object control module 223, determines whether the selection operation by the user 190 has been canceled. If the selection operation has not been canceled (No in step S46), the process returns to step S45. If the selection operation has been canceled (Yes in step S46), the process proceeds to step S47.

[0149] In step S47, as the object control module 223, the processor 10 checks, by the collision determination module 224, whether it is determined that the collision area CC of the specific object and the collision area CD of the second area are in collision. If the collision area CC and the collision area CD are not in collision (No in step S47), the process proceeds to step S48. If the collision area CC and the collision area CD are in collision (Yes in step S47), the process proceeds to step S49.

[0150] In step S48, as the object control module 223, the processor 10 releases the selection of the specific object by the hand object 400. As a result, the specific object is separated from the hand object 400. Then, the process returns to step S41.

[0151] In step S49, as the object control module 223, the processor 10 places the specific object selected by the hand object 400 in the second area. As a result, the specific object is separated from the hand object 400. Thereby, the processor 10 associates the item indicated by the specific object with the first area associated with the second area, and updates the state of the item from the unassociated state not associated with the first area to the associated state associated with the first area.

[0152] In this embodiment, it is assumed that the process shown in FIG. 26, the process shown in FIG. 17, the process shown in FIG. 18, and the process shown in FIG. 21 are different modes. The process of updating the state of the item shown in FIG. 26 from the unassociated state to the associated state is assumed to be executed in a mode other than the game play mode such as the lobby mode. The update process between the selected state and the unselected state of the item shown in FIG. 17, the item activation process shown in FIG. 18, and the update process of the parameters associated with the item shown in FIG. 21 are assumed to be executed in the game play mode, for example. However, it is not limited thereto.

[0153] Also, in this embodiment, the item selection process described with reference to FIG. 17 was described by taking as an example the condition that the hand object 400 is in the first region and the first positional relationship. However, the present invention is not limited to this, and the condition may be that the hand object 400 is located outside the range of the visual field region 23. In this way, by positioning the hand object 400 outside the range of the visual field region 23, an item can be selected for the hand object 400.

[0154] Also, in the description of each of the above embodiments, the virtual space (VR space) in which the user 190 immerses by the HMD device 110 was illustrated and described. However, as the HMD device 110, a transmissive HMD device may be employed. In this case, by outputting a visual field image so that a part of the image constituting the virtual space is superimposed as the visual field image on the real space that the user 190 visually recognizes through the transmissive HMD device, a virtual experience in an augmented reality (AR) space or a mixed reality (MR) space may be provided to the user 190. In this case, instead of the hand object of the player character, based on the movement of the controller, an action on a target object such as an item in the virtual space 2 may be caused. Specifically, the processor 10 may specify the coordinate information of the position of the controller in the real space and define the position of the target object in the virtual space 2 in relation to the coordinate information in the real space. Thereby, the processor 10 can grasp the positional relationship between the controller in the real space and the target object in the virtual space 2, and can execute processing corresponding to the above-described collision control and the like between the controller and the target object. As a result, it becomes possible to apply an action to the target object based on the movement of the controller.

[0155] As described above, embodiments of the present disclosure have been explained. However, the technical scope of the present invention should not be construed in a limited manner by the description of these embodiments. These embodiments are examples, and it is understood by those skilled in the art that various modifications of the embodiments are possible within the scope of the invention described in the claims. The technical scope of the present invention should be determined based on the scope of the invention described in the claims and its equivalent scope.

[0156] The subject matter disclosed herein is presented as items such as the following, for example. (Item 1) A method executed by a computer (e.g., computer 200) to provide a virtual experience to a user (e.g., user 190), defining a virtual space (e.g., virtual space 2) for providing the virtual experience (e.g., step S1 in FIG. 10), moving a virtual viewpoint (e.g., virtual camera 1) within the virtual space in response to movement of the user's head (e.g., step S6 in FIG. 10), moving an operation object (e.g., hand object 400) within the virtual space in response to movement of a part of the user's body (e.g., step S8 in FIG. 10), updating the state of an item used within the virtual space, at least on the condition that the operation object has moved outside the range of the field of view (e.g., field of view region 23) from the virtual viewpoint (e.g., step S14 in FIG. 17, step S34 in FIG. 21), A method comprising the above. (Item 2) In the step of updating (e.g., FIG. 17), when the state of the item is a non - selected state not selected by the operation object, at least on the condition that a first positional relationship is established between a first region whose relative position with respect to the virtual viewpoint is fixed and located outside the range of the field of view and the operation object, the method according to item 1, wherein the state of the item is updated to a selected state selected by the operation object. (Item 3) In the step of updating (for example, FIG. 17), when the item is associated with the first region and the state of the item is the non - selected state, at least on the condition that the first positional relationship is established between the first region and the operation object, the method according to item 2 of updating the state of the item to the selected state. (Item 4) In the step of updating (for example, FIG. 17), on the condition that the first positional relationship is established between the first region and the operation object and a selection operation for selecting the item is performed, the state of the item is updated to the selected state, and when the selection operation is cancelled, the state of the item is updated to the non - selected state, the method according to item 2 or 3. (Item 5) In the step of updating (for example, FIG. 26), when the state of the item is an unassociated state not associated with the first region and a specific object for specifying the item with the operation object is selected, at least on the condition that a second positional relationship is established between the second region associated with the first region and the operation object, the state of the item is updated to an associated state associated with the first region, the method according to item 3 or 4. (Item 6) The mode of updating the state of the item from the unassociated state to the associated state and the mode of updating the state of the item from the non - selected state to the selected state are different modes, the method according to item 5. (Item 7) The item (for example, gun object 450) activates its efficacy by consuming the parameters associated with the item. In the step of updating (for example, FIG. 21), when the item is selected with the operation object and the state of the item is a first state in which at least a part of the parameters associated with the item is consumed, when the operation object moves outside the field of view, the state of the item is updated to a second state in which the remaining amount of the parameters is more than that in the first state, the method according to item 1. (Item 8) A program for causing a computer to execute the method according to any one of Items 1 to 7. (Item 9) A computer for providing a virtual experience to a user, under the control of a processor included in the computer, defining a virtual space for providing the virtual experience; moving a virtual viewpoint within the virtual space according to the movement of the user's head; moving an operation object within the virtual space according to the movement of a part of the user's body; updating the state of an item used within the virtual space, at least on the condition that the operation object has moved outside the range of the field of view from the virtual viewpoint; and a computer in which the above is executed.

Explanation of Signs

[0157] 1... virtual camera, 2... virtual space, 5... reference line of sight, 10... processor, 11... memory, 1 2... storage, 13... input / output interface, 14... communication interface, 15... bus, 19... network, 21... center, 23... field of view area, 24, 25... area, 31... f rame, 32... ceiling surface, 33, 34, 36, 37... button, 35... infrared LED, 38... a nalog stick, 100... HMD system, 110... HMD device, 112... disp lay, 114... sensor, 116... camera, 118... microphone, 120... HMD sensor, 130 ... motion sensor, 140... gaze sensor, 150... server, 160... controller, 1 60R... right controller, 190... user, 200... computer, 220... main control mod ule, 221... virtual space control module, 222... virtual camera control module, 223 …Object control module, 224…Collision determination module, 225…Parameter ta control module, 226…Field of view image generation module, 227…Display control module, 2 40…Memory module, 241…Spatial information, 242…Object information, 243…User the information, 250…Communication control module, M…Field of view image

Claims

1. A computer, an operation means for moving an operation object in a virtual space in accordance with the movement of a part of the user's body, an association means for associating an item with a plurality of regions set for a player character associated with the user based on the operation of the user, control means for setting an item associated with a first region among the plurality of regions to a selected state in which the item is selected by the operation object on the condition that a first positional relationship is established between the first region and the operation object, A program for causing the computer to function as described above.

2. The association means associates the item with the first region by selecting a specific object for specifying the item and arranging the selected specific object in the first region. The program according to claim 1.

3. The control means enables the item to be selected by continuously pressing a trigger-type button of a controller held by the user, and when the pressing of the trigger-type button is released, changes from the selected state to a non-selected state in which the item is not selected by the operation object. The program according to claim 1.

4. The plurality of regions include at least four regions, namely, a first region, a second region, a third region, and a fourth region. The first region is set as the right shoulder part of the player character, the second region is set as the left shoulder part of the player character, the third region is set as the right waist part of the player character, and the fourth region is set as the left waist part of the player character. The program according to claim 1.

Citation Information

Patent Citations

  • Method for treating surface of propylene resin molding

    JP1984096138A

  • Control device and picture processor having its mounting body

    JP2003208263A

  • Game device, game program, game system, and game processing method

    JP2011239985A

  • Thumb Controller

    US20160054797A1

  • Signal generation and detector systems and methods for determining positions of fingers of a user

    WO2016109232A2